<?xml version="1.0" encoding="UTF-8" ?>
<definitions
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
>
   <task-return-type type-id-ref="vim.Task"/>
   <doc-templates>
      <common-fault 
      type-id-ref="vmodl.RuntimeFault"
      >
         <fault-description-html>
            <![CDATA[Thrown if any type of runtime fault is 
  thrown that is not covered by the other faults; for example, a 
  communication error.]]>
         </fault-description-html>
      </common-fault>
   </doc-templates>
   <version-types>
      <version-type name="vmodl.query.version.version4"
         type-id="vmodl.query.version.version4"
         vmodl-name="vmodl.query.version.version4"
         display-name="vSphere API 5.0"
         service-namespace="vim25"
      >
         <compatible-version-id>vmodl.query.version.version3</compatible-version-id>
         <compatible-version-id>vmodl.version.version2</compatible-version-id>
      </version-type>
      <version-type name="vmodl.query.version.version3"
         type-id="vmodl.query.version.version3"
         vmodl-name="vmodl.query.version.version3"
         display-name="vSphere API 4.1"
         service-namespace="vim25"
      >
         <compatible-version-id>vmodl.query.version.version2</compatible-version-id>
      </version-type>
      <version-type name="vmodl.query.version.version2"
         type-id="vmodl.query.version.version2"
         vmodl-name="vmodl.query.version.version2"
         display-name="vSphere API 4.0"
         service-namespace="vim25"
      >
         <compatible-version-id>vmodl.query.version.version1</compatible-version-id>
         <compatible-version-id>vmodl.version.version1</compatible-version-id>
      </version-type>
      <version-type name="vmodl.query.version.version1"
         type-id="vmodl.query.version.version1"
         vmodl-name="vmodl.query.version.version1"
         service-namespace="vim25"
      >
         <compatible-version-id>vmodl.version.version0</compatible-version-id>
      </version-type>
      <version-type name="vim25"
         type-id="vim.version.pr1429825"
         vmodl-name="vim.version.pr1429825"
         version-id="f1EBD5"
         display-name="vim pr1429825 version"
         service-namespace="vim25"
      >
         <compatible-version-id>vim.version.stable</compatible-version-id>
      </version-type>
      <version-type name="vim25"
         type-id="vim.version.version8"
         vmodl-name="vim.version.version8"
         version-id="5.1"
         display-name="vSphere API 5.1"
         service-namespace="vim25"
      >
         <compatible-version-id>vim.version.version7</compatible-version-id>
      </version-type>
      <version-type name="vim25"
         type-id="vim.version.version9"
         vmodl-name="vim.version.version9"
         version-id="5.5"
         display-name="vSphere API 5.5"
         service-namespace="vim25"
      >
         <compatible-version-id>vim.version.version8</compatible-version-id>
      </version-type>
      <version-type name="vim25"
         type-id="vim.version.version6"
         vmodl-name="vim.version.version6"
         version-id="4.1"
         display-name="vSphere API 4.1"
         service-namespace="vim25"
      >
         <compatible-version-id>vim.version.version5</compatible-version-id>
         <compatible-version-id>vmodl.query.version.version3</compatible-version-id>
      </version-type>
      <version-type name="vim25"
         type-id="vim.version.version7"
         vmodl-name="vim.version.version7"
         version-id="5.0"
         display-name="vSphere API 5.0"
         service-namespace="vim25"
      >
         <compatible-version-id>vim.version.version6</compatible-version-id>
         <compatible-version-id>vmodl.query.version.version4</compatible-version-id>
         <compatible-version-id>vmodl.reflect.version.version1</compatible-version-id>
      </version-type>
      <version-type name="vim25"
         type-id="vim.version.DiskGroupVMC"
         vmodl-name="vim.version.DiskGroupVMC"
         version-id="fCC441"
         display-name="vim DiskGroupVMC version"
         service-namespace="vim25"
      >
         <compatible-version-id>vim.version.stable</compatible-version-id>
      </version-type>
      <version-type name="vim2"
         type-id="vim.version.version1"
         vmodl-name="vim.version.version1"
         version-id="2.0"
         service-namespace="vim25"
      >
         <compatible-version-id>vmodl.query.version.version1</compatible-version-id>
      </version-type>
      <version-type name="vim25"
         type-id="vim.version.version4"
         vmodl-name="vim.version.version4"
         version-id="2.5u2server"
         display-name="vSphere API 4.0"
         service-namespace="vim25"
      >
         <compatible-version-id>vim.version.version3</compatible-version-id>
      </version-type>
      <version-type name="vim25"
         type-id="vim.version.version5"
         vmodl-name="vim.version.version5"
         version-id="4.0"
         display-name="vSphere API 4.0"
         service-namespace="vim25"
      >
         <compatible-version-id>vim.version.version4</compatible-version-id>
         <compatible-version-id>vmodl.query.version.version2</compatible-version-id>
      </version-type>
      <version-type name="vim25"
         type-id="vim.version.version2"
         vmodl-name="vim.version.version2"
         version-id="2.5"
         display-name="VI API 2.5"
         service-namespace="vim25"
      >
         <compatible-version-id>vim.version.version1</compatible-version-id>
      </version-type>
      <version-type name="vim25"
         type-id="vim.version.version3"
         vmodl-name="vim.version.version3"
         version-id="2.5u2"
         display-name="VI API 2.5u2"
         service-namespace="vim25"
      >
         <compatible-version-id>vim.version.version2</compatible-version-id>
      </version-type>
      <version-type name="vim25"
         type-id="vim.version.vmConnectionControl"
         vmodl-name="vim.version.vmConnectionControl"
         version-id="fF04CE"
         display-name="vim vmConnectionControl version"
         service-namespace="vim25"
      >
         <compatible-version-id>vim.version.stable</compatible-version-id>
      </version-type>
      <version-type name="vim25"
         type-id="vim.version.VSAN_DPRP"
         vmodl-name="vim.version.VSAN_DPRP"
         version-id="f3EFD4"
         display-name="vim VSAN_DPRP version"
         service-namespace="vim25"
      >
         <compatible-version-id>vim.version.stable</compatible-version-id>
      </version-type>
      <version-type name="vim25"
         type-id="vim.version.EVCGfx"
         vmodl-name="vim.version.EVCGfx"
         version-id="fB71FF"
         display-name="vim EVCGfx version"
         service-namespace="vim25"
      >
         <compatible-version-id>vim.version.stable</compatible-version-id>
      </version-type>
      <version-type name="vim25"
         type-id="vim.version.vdcs"
         vmodl-name="vim.version.vdcs"
         version-id="fB9DE1"
         display-name="vim vdcs version"
         service-namespace="vim25"
      >
         <compatible-version-id>vim.version.stable</compatible-version-id>
      </version-type>
      <version-type name="vmodl.version.version0"
         type-id="vmodl.version.version0"
         vmodl-name="vmodl.version.version0"
         service-namespace="vim25"
      >
      </version-type>
      <version-type name="vmodl.version.version1"
         type-id="vmodl.version.version1"
         vmodl-name="vmodl.version.version1"
         display-name="vSphere API 4.0"
         service-namespace="vim25"
      >
         <compatible-version-id>vmodl.version.version0</compatible-version-id>
      </version-type>
      <version-type name="vmodl.version.version2"
         type-id="vmodl.version.version2"
         vmodl-name="vmodl.version.version2"
         display-name="vSphere API 5.0"
         service-namespace="vim25"
      >
         <compatible-version-id>vmodl.version.version1</compatible-version-id>
      </version-type>
      <version-type name="vim25"
         type-id="vim.version.v6_9_1"
         vmodl-name="vim.version.v6_9_1"
         version-id="6.9.1"
         display-name="vSphere API 6.9.1"
         service-namespace="vim25"
      >
         <compatible-version-id>vim.version.v6_8_7</compatible-version-id>
      </version-type>
      <version-type name="vim25"
         type-id="vim.version.fourKnStorageSupport"
         vmodl-name="vim.version.fourKnStorageSupport"
         version-id="f07F1D"
         display-name="vim fourKnStorageSupport version"
         service-namespace="vim25"
      >
         <compatible-version-id>vim.version.stable</compatible-version-id>
      </version-type>
      <version-type name="vim25"
         type-id="vim.version.FastUpgrade"
         vmodl-name="vim.version.FastUpgrade"
         version-id="f5E714"
         display-name="vim FastUpgrade version"
         service-namespace="vim25"
      >
         <compatible-version-id>vim.version.stable</compatible-version-id>
      </version-type>
      <version-type name="vim25"
         type-id="vim.version.EdrsMaintenanceMode"
         vmodl-name="vim.version.EdrsMaintenanceMode"
         version-id="f92CF3"
         display-name="vim EdrsMaintenanceMode version"
         service-namespace="vim25"
      >
         <compatible-version-id>vim.version.stable</compatible-version-id>
      </version-type>
      <version-type name="vim25"
         type-id="vim.version.BAUHAUS_HOSTSYNC"
         vmodl-name="vim.version.BAUHAUS_HOSTSYNC"
         version-id="f6E38B"
         display-name="vim BAUHAUS_HOSTSYNC version"
         service-namespace="vim25"
      >
         <compatible-version-id>vim.version.stable</compatible-version-id>
      </version-type>
      <version-type name="vim25"
         type-id="vim.version.resetportstatistics"
         vmodl-name="vim.version.resetportstatistics"
         version-id="f5A31C"
         display-name="vim resetportstatistics version"
         service-namespace="vim25"
      >
         <compatible-version-id>vim.version.stable</compatible-version-id>
      </version-type>
      <version-type name="vim25"
         type-id="vim.version.StatsRegistry"
         vmodl-name="vim.version.StatsRegistry"
         version-id="f1D0D0"
         display-name="vim StatsRegistry version"
         service-namespace="vim25"
      >
         <compatible-version-id>vim.version.stable</compatible-version-id>
      </version-type>
      <version-type name="vim25"
         type-id="vim.version.hostVendorSpecificStatus"
         vmodl-name="vim.version.hostVendorSpecificStatus"
         version-id="f4EE95"
         display-name="vim hostVendorSpecificStatus version"
         service-namespace="vim25"
      >
         <compatible-version-id>vim.version.stable</compatible-version-id>
      </version-type>
      <version-type name="vim25"
         type-id="vim.version.hostAccessManager"
         vmodl-name="vim.version.hostAccessManager"
         version-id="f58BA0"
         display-name="vim hostAccessManager version"
         service-namespace="vim25"
      >
         <compatible-version-id>vim.version.stable</compatible-version-id>
      </version-type>
      <version-type name="vim25"
         type-id="vim.version.ocmSupportedForReconfigure"
         vmodl-name="vim.version.ocmSupportedForReconfigure"
         version-id="fF17C9"
         display-name="vim ocmSupportedForReconfigure version"
         service-namespace="vim25"
      >
         <compatible-version-id>vim.version.stable</compatible-version-id>
      </version-type>
      <version-type name="vim25"
         type-id="vim.version.v6_8_7"
         vmodl-name="vim.version.v6_8_7"
         version-id="6.8.7"
         display-name="vSphere API 6.8.7"
         service-namespace="vim25"
      >
         <compatible-version-id>vim.version.version15</compatible-version-id>
      </version-type>
      <version-type name="reflect"
         type-id="vmodl.reflect.version.version1"
         vmodl-name="vmodl.reflect.version.version1"
         version-id="1.0"
         service-namespace="reflect"
      >
         <compatible-version-id>vmodl.version.version2</compatible-version-id>
      </version-type>
      <version-type name="reflect"
         type-id="vmodl.reflect.version.version2"
         vmodl-name="vmodl.reflect.version.version2"
         version-id="2.0"
         service-namespace="reflect"
      >
         <compatible-version-id>vmodl.reflect.version.version1</compatible-version-id>
      </version-type>
      <version-type name="vim25"
         type-id="vim.version.VQAT"
         vmodl-name="vim.version.VQAT"
         version-id="fD67EC"
         display-name="vim VQAT version"
         service-namespace="vim25"
      >
         <compatible-version-id>vim.version.stable</compatible-version-id>
      </version-type>
      <version-type name="vim25"
         type-id="vim.version.VmcDropNfcCnx"
         vmodl-name="vim.version.VmcDropNfcCnx"
         version-id="fB9BB8"
         display-name="vim VmcDropNfcCnx version"
         service-namespace="vim25"
      >
         <compatible-version-id>vim.version.stable</compatible-version-id>
      </version-type>
      <version-type name="vim25"
         type-id="vim.version.VCDP_NestedFilters"
         vmodl-name="vim.version.VCDP_NestedFilters"
         version-id="f5606E"
         display-name="vim VCDP_NestedFilters version"
         service-namespace="vim25"
      >
         <compatible-version-id>vim.version.stable</compatible-version-id>
      </version-type>
      <version-type name="vim25"
         type-id="vim.version.Tools_Update_Health"
         vmodl-name="vim.version.Tools_Update_Health"
         version-id="f17EEF"
         display-name="vim Tools_Update_Health version"
         service-namespace="vim25"
      >
         <compatible-version-id>vim.version.stable</compatible-version-id>
      </version-type>
      <version-type name="vim25"
         type-id="vim.version.nativeSnapshot"
         vmodl-name="vim.version.nativeSnapshot"
         version-id="fACC83"
         display-name="vim nativeSnapshot version"
         service-namespace="vim25"
      >
         <compatible-version-id>vim.version.stable</compatible-version-id>
      </version-type>
      <version-type name="vim25"
         type-id="vim.version.Tools_TimeSync_Allow"
         vmodl-name="vim.version.Tools_TimeSync_Allow"
         version-id="f6C236"
         display-name="vim Tools_TimeSync_Allow version"
         service-namespace="vim25"
      >
         <compatible-version-id>vim.version.stable</compatible-version-id>
      </version-type>
      <version-type name="vim25"
         type-id="vim.version.hostProfiles"
         vmodl-name="vim.version.hostProfiles"
         version-id="fBE17B"
         display-name="vim hostProfiles version"
         service-namespace="vim25"
      >
         <compatible-version-id>vim.version.stable</compatible-version-id>
      </version-type>
      <version-type name="vim25"
         type-id="vim.version.GraphicsDRS"
         vmodl-name="vim.version.GraphicsDRS"
         version-id="f56C73"
         display-name="vim GraphicsDRS version"
         service-namespace="vim25"
      >
         <compatible-version-id>vim.version.stable</compatible-version-id>
      </version-type>
      <version-type name="vim25"
         type-id="vim.version.stable"
         vmodl-name="vim.version.stable"
         version-id="s55741"
         display-name="vim stable version"
         service-namespace="vim25"
      >
         <compatible-version-id>vim.version.v7_0</compatible-version-id>
      </version-type>
      <version-type name="vim25"
         type-id="vim.version.BAUHAUS_CLUSTER_STORE"
         vmodl-name="vim.version.BAUHAUS_CLUSTER_STORE"
         version-id="f06E40"
         display-name="vim BAUHAUS_CLUSTER_STORE version"
         service-namespace="vim25"
      >
         <compatible-version-id>vim.version.stable</compatible-version-id>
      </version-type>
      <version-type name="vim25"
         type-id="vim.version.VsanAwareDrsV1"
         vmodl-name="vim.version.VsanAwareDrsV1"
         version-id="f72D9C"
         display-name="vim VsanAwareDrsV1 version"
         service-namespace="vim25"
      >
         <compatible-version-id>vim.version.stable</compatible-version-id>
      </version-type>
      <version-type name="vim25"
         type-id="vim.version.hwh"
         vmodl-name="vim.version.hwh"
         version-id="f1AEAA"
         display-name="vim hwh version"
         service-namespace="vim25"
      >
         <compatible-version-id>vim.version.stable</compatible-version-id>
      </version-type>
      <version-type name="vim25"
         type-id="vim.version.version13"
         vmodl-name="vim.version.version13"
         version-id="6.7.1"
         display-name="vSphere API 6.7.1"
         service-namespace="vim25"
      >
         <compatible-version-id>vim.version.version12</compatible-version-id>
      </version-type>
      <version-type name="vim25"
         type-id="vim.version.version14"
         vmodl-name="vim.version.version14"
         version-id="6.7.2"
         display-name="vSphere API 6.7.2"
         service-namespace="vim25"
      >
         <compatible-version-id>vim.version.version13</compatible-version-id>
      </version-type>
      <version-type name="vim25"
         type-id="vim.version.version15"
         vmodl-name="vim.version.version15"
         version-id="6.7.3"
         display-name="vSphere API 6.7.3"
         service-namespace="vim25"
      >
         <compatible-version-id>vim.version.version14</compatible-version-id>
      </version-type>
      <version-type name="vim25"
         type-id="vim.version.DRS_LB_REASONCODE"
         vmodl-name="vim.version.DRS_LB_REASONCODE"
         version-id="fFB6A7"
         display-name="vim DRS_LB_REASONCODE version"
         service-namespace="vim25"
      >
         <compatible-version-id>vim.version.stable</compatible-version-id>
      </version-type>
      <version-type name="vim25"
         type-id="vim.version.gosCrashRemediation"
         vmodl-name="vim.version.gosCrashRemediation"
         version-id="f53016"
         display-name="vim gosCrashRemediation version"
         service-namespace="vim25"
      >
         <compatible-version-id>vim.version.stable</compatible-version-id>
      </version-type>
      <version-type name="vim25"
         type-id="vim.version.unstable"
         vmodl-name="vim.version.unstable"
         version-id="uBAA76"
         display-name="vim unstable version"
         service-namespace="vim25"
      >
         <compatible-version-id>vim.version.stable</compatible-version-id>
         <compatible-version-id>vim.version.BAUHAUS_CLUSTER_STORE</compatible-version-id>
         <compatible-version-id>vim.version.BAUHAUS_HOSTSYNC</compatible-version-id>
         <compatible-version-id>vim.version.CL_OVF_Deploy_Optimization</compatible-version-id>
         <compatible-version-id>vim.version.DRS_LB_REASONCODE</compatible-version-id>
         <compatible-version-id>vim.version.DiskGroupVMC</compatible-version-id>
         <compatible-version-id>vim.version.DistEsxClusterStoreManager</compatible-version-id>
         <compatible-version-id>vim.version.EVCGfx</compatible-version-id>
         <compatible-version-id>vim.version.EdrsMaintenanceMode</compatible-version-id>
         <compatible-version-id>vim.version.EventsOrdering</compatible-version-id>
         <compatible-version-id>vim.version.FT_DRS_METRO_CLUSTER</compatible-version-id>
         <compatible-version-id>vim.version.FT_ENCRYPTION</compatible-version-id>
         <compatible-version-id>vim.version.FT_VBS_SUPPORT</compatible-version-id>
         <compatible-version-id>vim.version.FastUpgrade</compatible-version-id>
         <compatible-version-id>vim.version.GraphicsDRS</compatible-version-id>
         <compatible-version-id>vim.version.PMemV2</compatible-version-id>
         <compatible-version-id>vim.version.ProvisioningEventRefresh</compatible-version-id>
         <compatible-version-id>vim.version.StatsRegistry</compatible-version-id>
         <compatible-version-id>vim.version.Tools_TimeSync_Allow</compatible-version-id>
         <compatible-version-id>vim.version.Tools_Update_Health</compatible-version-id>
         <compatible-version-id>vim.version.VCDP_NestedFilters</compatible-version-id>
         <compatible-version-id>vim.version.VCDP_QueryComparableValue</compatible-version-id>
         <compatible-version-id>vim.version.VCDP_RelationshipQuery</compatible-version-id>
         <compatible-version-id>vim.version.VCSOF_173</compatible-version-id>
         <compatible-version-id>vim.version.VQAT</compatible-version-id>
         <compatible-version-id>vim.version.VSAN_DPRP</compatible-version-id>
         <compatible-version-id>vim.version.VmcDropNfcCnx</compatible-version-id>
         <compatible-version-id>vim.version.VmcExternalStorageSupport</compatible-version-id>
         <compatible-version-id>vim.version.VsanAwareDrsV1</compatible-version-id>
         <compatible-version-id>vim.version.bmcInfo</compatible-version-id>
         <compatible-version-id>vim.version.cpu_autoCoresPerSocket</compatible-version-id>
         <compatible-version-id>vim.version.dnd</compatible-version-id>
         <compatible-version-id>vim.version.fourKnStorageSupport</compatible-version-id>
         <compatible-version-id>vim.version.gosCrashRemediation</compatible-version-id>
         <compatible-version-id>vim.version.hostAccessManager</compatible-version-id>
         <compatible-version-id>vim.version.hostCertificateManagement</compatible-version-id>
         <compatible-version-id>vim.version.hostProfiles</compatible-version-id>
         <compatible-version-id>vim.version.hostVendorSpecificStatus</compatible-version-id>
         <compatible-version-id>vim.version.hwh</compatible-version-id>
         <compatible-version-id>vim.version.hwh2_0</compatible-version-id>
         <compatible-version-id>vim.version.nativeSnapshot</compatible-version-id>
         <compatible-version-id>vim.version.ocmSupportedForReconfigure</compatible-version-id>
         <compatible-version-id>vim.version.pciDeviceExt</compatible-version-id>
         <compatible-version-id>vim.version.pr1429825</compatible-version-id>
         <compatible-version-id>vim.version.pr1803450</compatible-version-id>
         <compatible-version-id>vim.version.resetportstatistics</compatible-version-id>
         <compatible-version-id>vim.version.toolsOffHost</compatible-version-id>
         <compatible-version-id>vim.version.vdcs</compatible-version-id>
         <compatible-version-id>vim.version.vmConnectionControl</compatible-version-id>
         <compatible-version-id>vim.version.vmMisc</compatible-version-id>
      </version-type>
      <version-type name="vim25"
         type-id="vim.version.FT_ENCRYPTION"
         vmodl-name="vim.version.FT_ENCRYPTION"
         version-id="fC0D67"
         display-name="vim FT_ENCRYPTION version"
         service-namespace="vim25"
      >
         <compatible-version-id>vim.version.stable</compatible-version-id>
      </version-type>
      <version-type name="vim25"
         type-id="vim.version.bmcInfo"
         vmodl-name="vim.version.bmcInfo"
         version-id="f2C7AF"
         display-name="vim bmcInfo version"
         service-namespace="vim25"
      >
         <compatible-version-id>vim.version.stable</compatible-version-id>
      </version-type>
      <version-type name="vim25"
         type-id="vim.version.FT_DRS_METRO_CLUSTER"
         vmodl-name="vim.version.FT_DRS_METRO_CLUSTER"
         version-id="fCFB3B"
         display-name="vim FT_DRS_METRO_CLUSTER version"
         service-namespace="vim25"
      >
         <compatible-version-id>vim.version.stable</compatible-version-id>
      </version-type>
      <version-type name="vim25"
         type-id="vim.version.disabled"
         vmodl-name="vim.version.disabled"
         display-name="vim disabled version"
         service-namespace="vim25"
      >
         <compatible-version-id>vim.version.unstable</compatible-version-id>
      </version-type>
      <version-type name="vim25"
         type-id="vim.version.VCSOF_173"
         vmodl-name="vim.version.VCSOF_173"
         version-id="f07C7C"
         display-name="vim VCSOF_173 version"
         service-namespace="vim25"
      >
         <compatible-version-id>vim.version.stable</compatible-version-id>
      </version-type>
      <version-type name="vim25"
         type-id="vim.version.VCDP_RelationshipQuery"
         vmodl-name="vim.version.VCDP_RelationshipQuery"
         version-id="f1FD8C"
         display-name="vim VCDP_RelationshipQuery version"
         service-namespace="vim25"
      >
         <compatible-version-id>vim.version.stable</compatible-version-id>
      </version-type>
      <version-type name="vim25"
         type-id="vim.version.version10"
         vmodl-name="vim.version.version10"
         version-id="6.0"
         display-name="vSphere API 6.0"
         service-namespace="vim25"
      >
         <compatible-version-id>vim.version.version9</compatible-version-id>
         <compatible-version-id>vmodl.reflect.version.version2</compatible-version-id>
      </version-type>
      <version-type name="vim25"
         type-id="vim.version.version11"
         vmodl-name="vim.version.version11"
         version-id="6.5"
         display-name="vSphere API 6.5"
         service-namespace="vim25"
      >
         <compatible-version-id>vim.version.version10</compatible-version-id>
      </version-type>
      <version-type name="vim25"
         type-id="vim.version.version12"
         vmodl-name="vim.version.version12"
         version-id="6.7"
         display-name="vSphere API 6.7"
         service-namespace="vim25"
      >
         <compatible-version-id>vim.version.version11</compatible-version-id>
      </version-type>
      <version-type name="vim25"
         type-id="vim.version.pciDeviceExt"
         vmodl-name="vim.version.pciDeviceExt"
         version-id="f2D6FD"
         display-name="vim pciDeviceExt version"
         service-namespace="vim25"
      >
         <compatible-version-id>vim.version.stable</compatible-version-id>
      </version-type>
      <version-type name="vim25"
         type-id="vim.version.CL_OVF_Deploy_Optimization"
         vmodl-name="vim.version.CL_OVF_Deploy_Optimization"
         version-id="f0FDEE"
         display-name="vim CL_OVF_Deploy_Optimization version"
         service-namespace="vim25"
      >
         <compatible-version-id>vim.version.stable</compatible-version-id>
      </version-type>
      <version-type name="vim25"
         type-id="vim.version.toolsOffHost"
         vmodl-name="vim.version.toolsOffHost"
         version-id="fD9D07"
         display-name="vim toolsOffHost version"
         service-namespace="vim25"
      >
         <compatible-version-id>vim.version.stable</compatible-version-id>
      </version-type>
      <version-type name="vim25"
         type-id="vim.version.hostCertificateManagement"
         vmodl-name="vim.version.hostCertificateManagement"
         version-id="fA5F33"
         display-name="vim hostCertificateManagement version"
         service-namespace="vim25"
      >
         <compatible-version-id>vim.version.stable</compatible-version-id>
      </version-type>
      <version-type name="vim25"
         type-id="vim.version.vmMisc"
         vmodl-name="vim.version.vmMisc"
         version-id="f596F5"
         display-name="vim vmMisc version"
         service-namespace="vim25"
      >
         <compatible-version-id>vim.version.stable</compatible-version-id>
      </version-type>
      <version-type name="vim25"
         type-id="vim.version.VmcExternalStorageSupport"
         vmodl-name="vim.version.VmcExternalStorageSupport"
         version-id="fBEAD3"
         display-name="vim VmcExternalStorageSupport version"
         service-namespace="vim25"
      >
         <compatible-version-id>vim.version.stable</compatible-version-id>
      </version-type>
      <version-type name="vim25"
         type-id="vim.version.ProvisioningEventRefresh"
         vmodl-name="vim.version.ProvisioningEventRefresh"
         version-id="fF7003"
         display-name="vim ProvisioningEventRefresh version"
         service-namespace="vim25"
      >
         <compatible-version-id>vim.version.stable</compatible-version-id>
      </version-type>
      <version-type name="vim25"
         type-id="vim.version.cpu_autoCoresPerSocket"
         vmodl-name="vim.version.cpu_autoCoresPerSocket"
         version-id="fFCE93"
         display-name="vim cpu_autoCoresPerSocket version"
         service-namespace="vim25"
      >
         <compatible-version-id>vim.version.stable</compatible-version-id>
      </version-type>
      <version-type name="vim25"
         type-id="vim.version.pr1803450"
         vmodl-name="vim.version.pr1803450"
         version-id="fB6F30"
         display-name="vim pr1803450 version"
         service-namespace="vim25"
      >
         <compatible-version-id>vim.version.stable</compatible-version-id>
      </version-type>
      <version-type name="vim25"
         type-id="vim.version.VCDP_QueryComparableValue"
         vmodl-name="vim.version.VCDP_QueryComparableValue"
         version-id="f35561"
         display-name="vim VCDP_QueryComparableValue version"
         service-namespace="vim25"
      >
         <compatible-version-id>vim.version.stable</compatible-version-id>
      </version-type>
      <version-type name="vim25"
         type-id="vim.version.FT_VBS_SUPPORT"
         vmodl-name="vim.version.FT_VBS_SUPPORT"
         version-id="f12764"
         display-name="vim FT_VBS_SUPPORT version"
         service-namespace="vim25"
      >
         <compatible-version-id>vim.version.stable</compatible-version-id>
      </version-type>
      <version-type name="vim25"
         type-id="vim.version.dnd"
         vmodl-name="vim.version.dnd"
         version-id="f64FCF"
         display-name="vim dnd version"
         service-namespace="vim25"
      >
         <compatible-version-id>vim.version.stable</compatible-version-id>
      </version-type>
      <version-type name="vim25"
         type-id="vim.version.hwh2_0"
         vmodl-name="vim.version.hwh2_0"
         version-id="f205BB"
         display-name="vim hwh2_0 version"
         service-namespace="vim25"
      >
         <compatible-version-id>vim.version.stable</compatible-version-id>
      </version-type>
      <version-type name="vim25"
         type-id="vim.version.EventsOrdering"
         vmodl-name="vim.version.EventsOrdering"
         version-id="f01C8C"
         display-name="vim EventsOrdering version"
         service-namespace="vim25"
      >
         <compatible-version-id>vim.version.stable</compatible-version-id>
      </version-type>
      <version-type name="vim25"
         type-id="vim.version.DistEsxClusterStoreManager"
         vmodl-name="vim.version.DistEsxClusterStoreManager"
         version-id="f828A9"
         display-name="vim DistEsxClusterStoreManager version"
         service-namespace="vim25"
      >
         <compatible-version-id>vim.version.stable</compatible-version-id>
      </version-type>
      <version-type name="vim25"
         type-id="vim.version.PMemV2"
         vmodl-name="vim.version.PMemV2"
         version-id="f0BA49"
         display-name="vim PMemV2 version"
         service-namespace="vim25"
      >
         <compatible-version-id>vim.version.stable</compatible-version-id>
      </version-type>
      <version-type name="vim25"
         type-id="vim.version.v7_0"
         vmodl-name="vim.version.v7_0"
         version-id="7.0.0.0"
         display-name="vSphere API 7.0"
         service-namespace="vim25"
      >
         <compatible-version-id>vim.version.v6_9_1</compatible-version-id>
      </version-type>
   </version-types>
     <built-ins>
<built-in name="void" vmodl-name="void" type-id="void" />
<built-in name="xsd:boolean" vmodl-name="BOOLEAN" type-id="BOOLEAN" />
<built-in name="xsd:byte" vmodl-name="BYTE" type-id="BYTE" />
<built-in name="xsd:int" vmodl-name="INT" type-id="INT" />
<built-in name="xsd:long" vmodl-name="LONG" type-id="LONG" />
<built-in name="xsd:short" vmodl-name="SHORT" type-id="SHORT" />
<built-in name="xsd:double" vmodl-name="DOUBLE" type-id="DOUBLE" />
<built-in name="xsd:float" vmodl-name="FLOAT" type-id="FLOAT" />
<built-in name="xsd:string" vmodl-name="java.lang.String" type-id="java.lang.String" />
<built-in name="xsd:anyType" vmodl-name="vmodl.Any" type-id="vmodl.Any" />
<built-in name="xsd:string" vmodl-name="vmodl.TypeName" type-id="vmodl.TypeName" />
<built-in name="xsd:dateTime" vmodl-name="vmodl.DateTime" type-id="vmodl.DateTime" />
<built-in name="xsd:string" vmodl-name="vmodl.PropertyPath" type-id="vmodl.PropertyPath" />
<built-in name="xsd:string" vmodl-name="vmodl.MethodName" type-id="vmodl.MethodName" />
<built-in name="tns:ManagedObjectReference" vmodl-name="vmodl.ManagedObject" type-id="vmodl.ManagedObject" />
<built-in name="xsd:anyURI" vmodl-name="vmodl.URI" type-id="vmodl.URI" />
<built-in name="xsd:base64Binary" vmodl-name="vmodl.Binary" type-id="vmodl.Binary" />
</built-ins>

   <needed-array-types>
      <needed-array-type arrayNameBase="KeyValue" name="KeyValue" type="tns:KeyValue" type-id-ref="vim.KeyValue"/>
      <needed-array-type arrayNameBase="ClusterDasVmConfigInfo" name="ClusterDasVmConfigInfo" type="tns:ClusterDasVmConfigInfo" type-id-ref="vim.cluster.DasVmConfigInfo"/>
      <needed-array-type arrayNameBase="GuestFileInfo" name="GuestFileInfo" type="tns:GuestFileInfo" type-id-ref="vim.vm.guest.FileManager.FileInfo"/>
      <needed-array-type arrayNameBase="PropertyChange" name="PropertyChange" type="tns:PropertyChange" type-id-ref="vmodl.query.PropertyCollector.Change"/>
      <needed-array-type arrayNameBase="HostSystemSwapConfigurationSystemSwapOption" name="HostSystemSwapConfigurationSystemSwapOption" type="tns:HostSystemSwapConfigurationSystemSwapOption" type-id-ref="vim.host.SystemSwapConfiguration.SystemSwapOption"/>
      <needed-array-type arrayNameBase="HostNvmeTopologyInterface" name="HostNvmeTopologyInterface" type="tns:HostNvmeTopologyInterface" type-id-ref="vim.host.NvmeTopology.Interface"/>
      <needed-array-type arrayNameBase="VMwareVspanSession" name="VMwareVspanSession" type="tns:VMwareVspanSession" type-id-ref="vim.dvs.VmwareDistributedVirtualSwitch.VspanSession"/>
      <needed-array-type arrayNameBase="VirtualMachineVFlashModuleInfo" name="VirtualMachineVFlashModuleInfo" type="tns:VirtualMachineVFlashModuleInfo" type-id-ref="vim.vm.VFlashModuleInfo"/>
      <needed-array-type arrayNameBase="ClusterComputeResourceDVSSetting" name="ClusterComputeResourceDVSSetting" type="tns:ClusterComputeResourceDVSSetting" type-id-ref="vim.ClusterComputeResource.DVSSetting"/>
      <needed-array-type arrayNameBase="VirtualMachineLegacyNetworkSwitchInfo" name="VirtualMachineLegacyNetworkSwitchInfo" type="tns:VirtualMachineLegacyNetworkSwitchInfo" type-id-ref="vim.vm.LegacyNetworkSwitchInfo"/>
      <needed-array-type arrayNameBase="NetIpRouteConfigSpecIpRouteSpec" name="NetIpRouteConfigSpecIpRouteSpec" type="tns:NetIpRouteConfigSpecIpRouteSpec" type-id-ref="vim.net.IpRouteConfigSpec.IpRouteSpec"/>
      <needed-array-type arrayNameBase="VirtualMachineVcpuConfig" name="VirtualMachineVcpuConfig" type="tns:VirtualMachineVcpuConfig" type-id-ref="vim.vm.VcpuConfig"/>
      <needed-array-type arrayNameBase="CustomizationSpecInfo" name="CustomizationSpecInfo" type="tns:CustomizationSpecInfo" type-id-ref="vim.CustomizationSpecInfo"/>
      <needed-array-type arrayNameBase="MethodFault" name="MethodFault" type="tns:MethodFault" type-id-ref="vmodl.MethodFault"/>
      <needed-array-type arrayNameBase="VirtualMachinePciSharedGpuPassthroughInfo" name="VirtualMachinePciSharedGpuPassthroughInfo" type="tns:VirtualMachinePciSharedGpuPassthroughInfo" type-id-ref="vim.vm.PciSharedGpuPassthroughInfo"/>
      <needed-array-type arrayNameBase="EventArgDesc" name="EventArgDesc" type="tns:EventArgDesc" type-id-ref="vim.event.EventDescription.EventArgDesc"/>
      <needed-array-type arrayNameBase="ClusterComputeResourceDvsProfileDVPortgroupSpecToServiceMapping" name="ClusterComputeResourceDvsProfileDVPortgroupSpecToServiceMapping" type="tns:ClusterComputeResourceDvsProfileDVPortgroupSpecToServiceMapping" type-id-ref="vim.ClusterComputeResource.DvsProfile.DVPortgroupSpecToServiceMapping"/>
      <needed-array-type arrayNameBase="ClusterGroupSpec" name="ClusterGroupSpec" type="tns:ClusterGroupSpec" type-id-ref="vim.cluster.GroupSpec"/>
      <needed-array-type arrayNameBase="OvfNetworkMapping" name="OvfNetworkMapping" type="tns:OvfNetworkMapping" type-id-ref="vim.OvfManager.NetworkMapping"/>
      <needed-array-type arrayNameBase="PhysicalNic" name="PhysicalNic" type="tns:PhysicalNic" type-id-ref="vim.host.PhysicalNic"/>
      <needed-array-type arrayNameBase="HostDateTimeSystemTimeZone" name="HostDateTimeSystemTimeZone" type="tns:HostDateTimeSystemTimeZone" type-id-ref="vim.host.DateTimeSystem.TimeZone"/>
      <needed-array-type arrayNameBase="HostInternetScsiHbaIscsiIpv6Address" name="HostInternetScsiHbaIscsiIpv6Address" type="tns:HostInternetScsiHbaIscsiIpv6Address" type-id-ref="vim.host.InternetScsiHba.IscsiIpv6Address"/>
      <needed-array-type arrayNameBase="UserGroupProfile" name="UserGroupProfile" type="tns:UserGroupProfile" type-id-ref="vim.profile.host.UserGroupProfile"/>
      <needed-array-type arrayNameBase="NsxHostVNicProfile" name="NsxHostVNicProfile" type="tns:NsxHostVNicProfile" type-id-ref="vim.profile.host.NsxHostVNicProfile"/>
      <needed-array-type arrayNameBase="PhysicalNicConfig" name="PhysicalNicConfig" type="tns:PhysicalNicConfig" type-id-ref="vim.host.PhysicalNic.Config"/>
      <needed-array-type arrayNameBase="HostFileSystemMountInfo" name="HostFileSystemMountInfo" type="tns:HostFileSystemMountInfo" type-id-ref="vim.host.FileSystemMountInfo"/>
      <needed-array-type arrayNameBase="HostNatServicePortForwardSpec" name="HostNatServicePortForwardSpec" type="tns:HostNatServicePortForwardSpec" type-id-ref="vim.host.NatService.PortForwardSpecification"/>
      <needed-array-type arrayNameBase="ScsiLun" name="ScsiLun" type="tns:ScsiLun" type-id-ref="vim.host.ScsiLun"/>
      <needed-array-type arrayNameBase="VirtualMachineFileLayoutExDiskLayout" name="VirtualMachineFileLayoutExDiskLayout" type="tns:VirtualMachineFileLayoutExDiskLayout" type-id-ref="vim.vm.FileLayoutEx.DiskLayout"/>
      <needed-array-type arrayNameBase="PnicUplinkProfile" name="PnicUplinkProfile" type="tns:PnicUplinkProfile" type-id-ref="vim.profile.host.PnicUplinkProfile"/>
      <needed-array-type arrayNameBase="VAppProductInfo" name="VAppProductInfo" type="tns:VAppProductInfo" type-id-ref="vim.vApp.ProductInfo"/>
      <needed-array-type arrayNameBase="ComputeResourceHostSPBMLicenseInfo" name="ComputeResourceHostSPBMLicenseInfo" type="tns:ComputeResourceHostSPBMLicenseInfo" type-id-ref="vim.ComputeResource.HostSPBMLicenseInfo"/>
      <needed-array-type arrayNameBase="VirtualAppLinkInfo" name="VirtualAppLinkInfo" type="tns:VirtualAppLinkInfo" type-id-ref="vim.VirtualApp.LinkInfo"/>
      <needed-array-type arrayNameBase="NetIpRouteConfigInfoIpRoute" name="NetIpRouteConfigInfoIpRoute" type="tns:NetIpRouteConfigInfoIpRoute" type-id-ref="vim.net.IpRouteConfigInfo.IpRoute"/>
      <needed-array-type arrayNameBase="ProfileMetadataProfileOperationMessage" name="ProfileMetadataProfileOperationMessage" type="tns:ProfileMetadataProfileOperationMessage" type-id-ref="vim.profile.ProfileMetadata.ProfileOperationMessage"/>
      <needed-array-type arrayNameBase="VirtualDeviceConfigSpec" name="VirtualDeviceConfigSpec" type="tns:VirtualDeviceConfigSpec" type-id-ref="vim.vm.device.VirtualDeviceSpec"/>
      <needed-array-type arrayNameBase="StoragePerformanceSummary" name="StoragePerformanceSummary" type="tns:StoragePerformanceSummary" type-id-ref="vim.StorageResourceManager.StoragePerformanceSummary"/>
      <needed-array-type arrayNameBase="CustomFieldValue" name="CustomFieldValue" type="tns:CustomFieldValue" type-id-ref="vim.CustomFieldsManager.Value"/>
      <needed-array-type arrayNameBase="AutoStartPowerInfo" name="AutoStartPowerInfo" type="tns:AutoStartPowerInfo" type-id-ref="vim.host.AutoStartManager.AutoPowerInfo"/>
      <needed-array-type arrayNameBase="VirtualDisk" name="VirtualDisk" type="tns:VirtualDisk" type-id-ref="vim.vm.device.VirtualDisk"/>
      <needed-array-type arrayNameBase="ClusterRuleInfo" name="ClusterRuleInfo" type="tns:ClusterRuleInfo" type-id-ref="vim.cluster.RuleInfo"/>
      <needed-array-type arrayNameBase="CryptoKeyPlain" name="CryptoKeyPlain" type="tns:CryptoKeyPlain" type-id-ref="vim.encryption.CryptoKeyPlain"/>
      <needed-array-type arrayNameBase="DiagnosticManagerBundleInfo" name="DiagnosticManagerBundleInfo" type="tns:DiagnosticManagerBundleInfo" type-id-ref="vim.DiagnosticManager.BundleInfo"/>
      <needed-array-type arrayNameBase="HostStorageSystemScsiLunResult" name="HostStorageSystemScsiLunResult" type="tns:HostStorageSystemScsiLunResult" type-id-ref="vim.host.StorageSystem.ScsiLunResult"/>
      <needed-array-type arrayNameBase="OvfNetworkInfo" name="OvfNetworkInfo" type="tns:OvfNetworkInfo" type-id-ref="vim.OvfManager.NetworkInfo"/>
      <needed-array-type arrayNameBase="DasHeartbeatDatastoreInfo" name="DasHeartbeatDatastoreInfo" type="tns:DasHeartbeatDatastoreInfo" type-id-ref="vim.cluster.DasAdvancedRuntimeInfo.HeartbeatDatastoreInfo"/>
      <needed-array-type arrayNameBase="HostStorageOperationalInfo" name="HostStorageOperationalInfo" type="tns:HostStorageOperationalInfo" type-id-ref="vim.host.HardwareStatusInfo.StorageStatusInfo.OperationalInfo"/>
      <needed-array-type arrayNameBase="HostDatastoreSystemDatastoreResult" name="HostDatastoreSystemDatastoreResult" type="tns:HostDatastoreSystemDatastoreResult" type-id-ref="vim.host.DatastoreSystem.DatastoreResult"/>
      <needed-array-type arrayNameBase="HostUnresolvedVmfsResolutionSpec" name="HostUnresolvedVmfsResolutionSpec" type="tns:HostUnresolvedVmfsResolutionSpec" type-id-ref="vim.host.UnresolvedVmfsResolutionSpec"/>
      <needed-array-type arrayNameBase="VirtualMachineCpuIdInfoSpec" name="VirtualMachineCpuIdInfoSpec" type="tns:VirtualMachineCpuIdInfoSpec" type-id-ref="vim.vm.ConfigSpec.CpuIdInfoSpec"/>
      <needed-array-type arrayNameBase="GuestRegValueSpec" name="GuestRegValueSpec" type="tns:GuestRegValueSpec" type-id-ref="vim.vm.guest.WindowsRegistryManager.RegistryValue"/>
      <needed-array-type arrayNameBase="PhysicalNicLinkInfo" name="PhysicalNicLinkInfo" type="tns:PhysicalNicLinkInfo" type-id-ref="vim.host.PhysicalNic.LinkSpeedDuplex"/>
      <needed-array-type arrayNameBase="VsanHostConfigInfoNetworkInfoPortConfig" name="VsanHostConfigInfoNetworkInfoPortConfig" type="tns:VsanHostConfigInfoNetworkInfoPortConfig" type-id-ref="vim.vsan.host.ConfigInfo.NetworkInfo.PortConfig"/>
      <needed-array-type arrayNameBase="ProfileMetadataProfileSortSpec" name="ProfileMetadataProfileSortSpec" type="tns:ProfileMetadataProfileSortSpec" type-id-ref="vim.profile.ProfileMetadata.ProfileSortSpec"/>
      <needed-array-type arrayNameBase="NvdimmGuid" name="NvdimmGuid" type="tns:NvdimmGuid" type-id-ref="vim.host.NvdimmSystem.Guid"/>
      <needed-array-type arrayNameBase="HostIpConfigIpV6Address" name="HostIpConfigIpV6Address" type="tns:HostIpConfigIpV6Address" type-id-ref="vim.host.IpConfig.IpV6Address"/>
      <needed-array-type arrayNameBase="LicenseFeatureInfo" name="LicenseFeatureInfo" type="tns:LicenseFeatureInfo" type-id-ref="vim.LicenseManager.FeatureInfo"/>
      <needed-array-type arrayNameBase="HostIpRouteEntry" name="HostIpRouteEntry" type="tns:HostIpRouteEntry" type-id-ref="vim.host.IpRouteEntry"/>
      <needed-array-type arrayNameBase="HostDiskConfigurationResult" name="HostDiskConfigurationResult" type="tns:HostDiskConfigurationResult" type-id-ref="vim.host.DiskConfigurationResult"/>
      <needed-array-type arrayNameBase="VirtualMachineFileLayoutExFileInfo" name="VirtualMachineFileLayoutExFileInfo" type="tns:VirtualMachineFileLayoutExFileInfo" type-id-ref="vim.vm.FileLayoutEx.FileInfo"/>
      <needed-array-type arrayNameBase="HostVFlashManagerVFlashCacheConfigInfoVFlashModuleConfigOption" name="HostVFlashManagerVFlashCacheConfigInfoVFlashModuleConfigOption" type="tns:HostVFlashManagerVFlashCacheConfigInfoVFlashModuleConfigOption" type-id-ref="vim.host.VFlashManager.VFlashCacheConfigInfo.VFlashModuleConfigOption"/>
      <needed-array-type arrayNameBase="VmEventArgument" name="VmEventArgument" type="tns:VmEventArgument" type-id-ref="vim.event.VmEventArgument"/>
      <needed-array-type arrayNameBase="HostOpaqueSwitch" name="HostOpaqueSwitch" type="tns:HostOpaqueSwitch" type-id-ref="vim.host.OpaqueSwitch"/>
      <needed-array-type arrayNameBase="VirtualNicManagerNetConfig" name="VirtualNicManagerNetConfig" type="tns:VirtualNicManagerNetConfig" type-id-ref="vim.host.VirtualNicManager.NetConfig"/>
      <needed-array-type arrayNameBase="VirtualMachineDeviceRuntimeInfo" name="VirtualMachineDeviceRuntimeInfo" type="tns:VirtualMachineDeviceRuntimeInfo" type-id-ref="vim.vm.DeviceRuntimeInfo"/>
      <needed-array-type arrayNameBase="ApplyProfile" name="ApplyProfile" type="tns:ApplyProfile" type-id-ref="vim.profile.ApplyProfile"/>
      <needed-array-type arrayNameBase="HostPortGroupPort" name="HostPortGroupPort" type="tns:HostPortGroupPort" type-id-ref="vim.host.PortGroup.Port"/>
      <needed-array-type arrayNameBase="VirtualPCIPassthroughAllowedDevice" name="VirtualPCIPassthroughAllowedDevice" type="tns:VirtualPCIPassthroughAllowedDevice" type-id-ref="vim.vm.device.VirtualPCIPassthrough.AllowedDevice"/>
      <needed-array-type arrayNameBase="UserPrivilegeResult" name="UserPrivilegeResult" type="tns:UserPrivilegeResult" type-id-ref="vim.AuthorizationManager.UserPrivilegeResult"/>
      <needed-array-type arrayNameBase="GuestAliases" name="GuestAliases" type="tns:GuestAliases" type-id-ref="vim.vm.guest.AliasManager.GuestAliases"/>
      <needed-array-type arrayNameBase="DiagnosticManagerLogDescriptor" name="DiagnosticManagerLogDescriptor" type="tns:DiagnosticManagerLogDescriptor" type-id-ref="vim.DiagnosticManager.LogDescriptor"/>
      <needed-array-type arrayNameBase="HostTpmEventLogEntry" name="HostTpmEventLogEntry" type="tns:HostTpmEventLogEntry" type-id-ref="vim.host.TpmEventLogEntry"/>
      <needed-array-type arrayNameBase="HostNumaNode" name="HostNumaNode" type="tns:HostNumaNode" type-id-ref="vim.host.NumaNode"/>
      <needed-array-type arrayNameBase="RetrieveVStorageObjSpec" name="RetrieveVStorageObjSpec" type="tns:RetrieveVStorageObjSpec" type-id-ref="vim.vslm.vcenter.RetrieveVStorageObjSpec"/>
      <needed-array-type arrayNameBase="VsanPolicySatisfiability" name="VsanPolicySatisfiability" type="tns:VsanPolicySatisfiability" type-id-ref="vim.host.VsanInternalSystem.PolicySatisfiability"/>
      <needed-array-type arrayNameBase="ComplianceFailure" name="ComplianceFailure" type="tns:ComplianceFailure" type-id-ref="vim.profile.ComplianceResult.ComplianceFailure"/>
      <needed-array-type arrayNameBase="CryptoManagerKmipServerStatus" name="CryptoManagerKmipServerStatus" type="tns:CryptoManagerKmipServerStatus" type-id-ref="vim.encryption.CryptoManagerKmip.ServerStatus"/>
      <needed-array-type arrayNameBase="FirewallProfileRulesetProfile" name="FirewallProfileRulesetProfile" type="tns:FirewallProfileRulesetProfile" type-id-ref="vim.profile.host.FirewallProfile.RulesetProfile"/>
      <needed-array-type arrayNameBase="VirtualDiskRuleSpec" name="VirtualDiskRuleSpec" type="tns:VirtualDiskRuleSpec" type-id-ref="vim.storageDrs.VirtualDiskRuleSpec"/>
      <needed-array-type arrayNameBase="VirtualMachineFeatureRequirement" name="VirtualMachineFeatureRequirement" type="tns:VirtualMachineFeatureRequirement" type-id-ref="vim.vm.FeatureRequirement"/>
      <needed-array-type arrayNameBase="VStorageObjectAssociations" name="VStorageObjectAssociations" type="tns:VStorageObjectAssociations" type-id-ref="vim.vslm.vcenter.VStorageObjectAssociations"/>
      <needed-array-type arrayNameBase="GuestAuthAliasInfo" name="GuestAuthAliasInfo" type="tns:GuestAuthAliasInfo" type-id-ref="vim.vm.guest.AliasManager.GuestAuthAliasInfo"/>
      <needed-array-type arrayNameBase="IpPool" name="IpPool" type="tns:IpPool" type-id-ref="vim.vApp.IpPool"/>
      <needed-array-type arrayNameBase="ElementDescription" name="ElementDescription" type="tns:ElementDescription" type-id-ref="vim.ElementDescription"/>
      <needed-array-type arrayNameBase="NvdimmNamespaceInfo" name="NvdimmNamespaceInfo" type="tns:NvdimmNamespaceInfo" type-id-ref="vim.host.NvdimmSystem.NamespaceInfo"/>
      <needed-array-type arrayNameBase="IpPoolManagerIpAllocation" name="IpPoolManagerIpAllocation" type="tns:IpPoolManagerIpAllocation" type-id-ref="vim.IpPoolManager.IpAllocation"/>
      <needed-array-type arrayNameBase="HostNvmeDiscoveryLogEntry" name="HostNvmeDiscoveryLogEntry" type="tns:HostNvmeDiscoveryLogEntry" type-id-ref="vim.host.NvmeDiscoveryLog.Entry"/>
      <needed-array-type arrayNameBase="PermissionProfile" name="PermissionProfile" type="tns:PermissionProfile" type-id-ref="vim.profile.host.PermissionProfile"/>
      <needed-array-type arrayNameBase="DistributedVirtualSwitchInfo" name="DistributedVirtualSwitchInfo" type="tns:DistributedVirtualSwitchInfo" type-id-ref="vim.dvs.DistributedVirtualSwitchInfo"/>
      <needed-array-type arrayNameBase="HostSriovDevicePoolInfo" name="HostSriovDevicePoolInfo" type="tns:HostSriovDevicePoolInfo" type-id-ref="vim.host.SriovDevicePoolInfo"/>
      <needed-array-type arrayNameBase="HostPatchManagerStatus" name="HostPatchManagerStatus" type="tns:HostPatchManagerStatus" type-id-ref="vim.host.PatchManager.Status"/>
      <needed-array-type arrayNameBase="FolderNewHostSpec" name="FolderNewHostSpec" type="tns:FolderNewHostSpec" type-id-ref="vim.Folder.NewHostSpec"/>
      <needed-array-type arrayNameBase="LicenseAssignmentManagerLicenseAssignment" name="LicenseAssignmentManagerLicenseAssignment" type="tns:LicenseAssignmentManagerLicenseAssignment" type-id-ref="vim.LicenseAssignmentManager.LicenseAssignment"/>
      <needed-array-type arrayNameBase="VirtualMachineMetadataManagerVmMetadataResult" name="VirtualMachineMetadataManagerVmMetadataResult" type="tns:VirtualMachineMetadataManagerVmMetadataResult" type-id-ref="vim.vm.MetadataManager.VmMetadataResult"/>
      <needed-array-type arrayNameBase="CryptoKeyId" name="CryptoKeyId" type="tns:CryptoKeyId" type-id-ref="vim.encryption.CryptoKeyId"/>
      <needed-array-type arrayNameBase="VVolVmConfigFileUpdateResultFailedVmConfigFileInfo" name="VVolVmConfigFileUpdateResultFailedVmConfigFileInfo" type="tns:VVolVmConfigFileUpdateResultFailedVmConfigFileInfo" type-id-ref="vim.VVolVmConfigFileUpdateResult.FailedVmConfigFileInfo"/>
      <needed-array-type arrayNameBase="Extension" name="Extension" type="tns:Extension" type-id-ref="vim.Extension"/>
      <needed-array-type arrayNameBase="HostLowLevelProvisioningManagerFileDeleteResult" name="HostLowLevelProvisioningManagerFileDeleteResult" type="tns:HostLowLevelProvisioningManagerFileDeleteResult" type-id-ref="vim.host.LowLevelProvisioningManager.FileDeleteResult"/>
      <needed-array-type arrayNameBase="AlarmAction" name="AlarmAction" type="tns:AlarmAction" type-id-ref="vim.alarm.AlarmAction"/>
      <needed-array-type arrayNameBase="UserSession" name="UserSession" type="tns:UserSession" type-id-ref="vim.UserSession"/>
      <needed-array-type arrayNameBase="EVCMode" name="EVCMode" type="tns:EVCMode" type-id-ref="vim.EVCMode"/>
      <needed-array-type arrayNameBase="HostLowLevelProvisioningManagerFileReserveSpec" name="HostLowLevelProvisioningManagerFileReserveSpec" type="tns:HostLowLevelProvisioningManagerFileReserveSpec" type-id-ref="vim.host.LowLevelProvisioningManager.FileReserveSpec"/>
      <needed-array-type arrayNameBase="HostInternetScsiHbaStaticTarget" name="HostInternetScsiHbaStaticTarget" type="tns:HostInternetScsiHbaStaticTarget" type-id-ref="vim.host.InternetScsiHba.StaticTarget"/>
      <needed-array-type arrayNameBase="VsanPolicyChangeBatch" name="VsanPolicyChangeBatch" type="tns:VsanPolicyChangeBatch" type-id-ref="vim.host.VsanInternalSystem.PolicyChangeBatch"/>
      <needed-array-type arrayNameBase="VStorageObjectSnapshotInfoVStorageObjectSnapshot" name="VStorageObjectSnapshotInfoVStorageObjectSnapshot" type="tns:VStorageObjectSnapshotInfoVStorageObjectSnapshot" type-id-ref="vim.vslm.VStorageObjectSnapshotInfo.VStorageObjectSnapshot"/>
      <needed-array-type arrayNameBase="ClusterFailoverHostAdmissionControlInfoHostStatus" name="ClusterFailoverHostAdmissionControlInfoHostStatus" type="tns:ClusterFailoverHostAdmissionControlInfoHostStatus" type-id-ref="vim.cluster.FailoverHostAdmissionControlInfo.HostStatus"/>
      <needed-array-type arrayNameBase="GuestRegKeyRecordSpec" name="GuestRegKeyRecordSpec" type="tns:GuestRegKeyRecordSpec" type-id-ref="vim.vm.guest.WindowsRegistryManager.RegistryKeyRecord"/>
      <needed-array-type arrayNameBase="LicenseAvailabilityInfo" name="LicenseAvailabilityInfo" type="tns:LicenseAvailabilityInfo" type-id-ref="vim.LicenseManager.AvailabilityInfo"/>
      <needed-array-type arrayNameBase="GuestMappedAliases" name="GuestMappedAliases" type="tns:GuestMappedAliases" type-id-ref="vim.vm.guest.AliasManager.GuestMappedAliases"/>
      <needed-array-type arrayNameBase="DVSNetworkResourcePool" name="DVSNetworkResourcePool" type="tns:DVSNetworkResourcePool" type-id-ref="vim.dvs.NetworkResourcePool"/>
      <needed-array-type arrayNameBase="VirtualMachineIdeDiskDevicePartitionInfo" name="VirtualMachineIdeDiskDevicePartitionInfo" type="tns:VirtualMachineIdeDiskDevicePartitionInfo" type-id-ref="vim.vm.IdeDiskDeviceInfo.PartitionInfo"/>
      <needed-array-type arrayNameBase="VirtualMachineSummary" name="VirtualMachineSummary" type="tns:VirtualMachineSummary" type-id-ref="vim.vm.Summary"/>
      <needed-array-type arrayNameBase="PrivilegeAvailability" name="PrivilegeAvailability" type="tns:PrivilegeAvailability" type-id-ref="vim.AuthorizationManager.PrivilegeAvailability"/>
      <needed-array-type arrayNameBase="HostVsanInternalSystemVsanObjectOperationResult" name="HostVsanInternalSystemVsanObjectOperationResult" type="tns:HostVsanInternalSystemVsanObjectOperationResult" type-id-ref="vim.host.VsanInternalSystem.VsanObjectOperationResult"/>
      <needed-array-type arrayNameBase="ExtensionTaskTypeInfo" name="ExtensionTaskTypeInfo" type="tns:ExtensionTaskTypeInfo" type-id-ref="vim.Extension.TaskTypeInfo"/>
      <needed-array-type arrayNameBase="LicenseManagerLicenseInfo" name="LicenseManagerLicenseInfo" type="tns:LicenseManagerLicenseInfo" type-id-ref="vim.LicenseManager.LicenseInfo"/>
      <needed-array-type arrayNameBase="DistributedVirtualSwitchManagerCompatibilityResult" name="DistributedVirtualSwitchManagerCompatibilityResult" type="tns:DistributedVirtualSwitchManagerCompatibilityResult" type-id-ref="vim.dvs.DistributedVirtualSwitchManager.CompatibilityResult"/>
      <needed-array-type arrayNameBase="HostProfileManagerHostToConfigSpecMap" name="HostProfileManagerHostToConfigSpecMap" type="tns:HostProfileManagerHostToConfigSpecMap" type-id-ref="vim.profile.host.ProfileManager.HostToConfigSpecMap"/>
      <needed-array-type arrayNameBase="DvsNetworkRuleQualifier" name="DvsNetworkRuleQualifier" type="tns:DvsNetworkRuleQualifier" type-id-ref="vim.dvs.TrafficRule.Qualifier"/>
      <needed-array-type arrayNameBase="DatastoreVVolContainerFailoverPair" name="DatastoreVVolContainerFailoverPair" type="tns:DatastoreVVolContainerFailoverPair" type-id-ref="vim.Datastore.VVolContainerFailoverPair"/>
      <needed-array-type arrayNameBase="NumericRange" name="NumericRange" type="tns:NumericRange" type-id-ref="vim.NumericRange"/>
      <needed-array-type arrayNameBase="PhysicalNicHintInfo" name="PhysicalNicHintInfo" type="tns:PhysicalNicHintInfo" type-id-ref="vim.host.PhysicalNic.NetworkHint"/>
      <needed-array-type arrayNameBase="MethodActionArgument" name="MethodActionArgument" type="tns:MethodActionArgument" type-id-ref="vim.action.MethodActionArgument"/>
      <needed-array-type arrayNameBase="DistributedVirtualPortgroupInfo" name="DistributedVirtualPortgroupInfo" type="tns:DistributedVirtualPortgroupInfo" type-id-ref="vim.dvs.DistributedVirtualPortgroupInfo"/>
      <needed-array-type arrayNameBase="HostNvmeController" name="HostNvmeController" type="tns:HostNvmeController" type-id-ref="vim.host.NvmeController"/>
      <needed-array-type arrayNameBase="GuestAuthSubject" name="GuestAuthSubject" type="tns:GuestAuthSubject" type-id-ref="vim.vm.guest.AliasManager.GuestAuthSubject"/>
      <needed-array-type arrayNameBase="VAppEntityConfigInfo" name="VAppEntityConfigInfo" type="tns:VAppEntityConfigInfo" type-id-ref="vim.vApp.EntityConfigInfo"/>
      <needed-array-type arrayNameBase="ClusterVmOrchestrationSpec" name="ClusterVmOrchestrationSpec" type="tns:ClusterVmOrchestrationSpec" type-id-ref="vim.cluster.VmOrchestrationSpec"/>
      <needed-array-type arrayNameBase="ID" name="ID" type="tns:ID" type-id-ref="vim.vslm.ID"/>
      <needed-array-type arrayNameBase="CustomizationIpV6Generator" name="CustomizationIpV6Generator" type="tns:CustomizationIpV6Generator" type-id-ref="vim.vm.customization.IpV6Generator"/>
      <needed-array-type arrayNameBase="ScsiLunDurableName" name="ScsiLunDurableName" type="tns:ScsiLunDurableName" type-id-ref="vim.host.ScsiLun.DurableName"/>
      <needed-array-type arrayNameBase="ClusterIoFilterInfo" name="ClusterIoFilterInfo" type="tns:ClusterIoFilterInfo" type-id-ref="vim.IoFilterManager.ClusterIoFilterInfo"/>
      <needed-array-type arrayNameBase="ClusterDrsFaultsFaultsByVm" name="ClusterDrsFaultsFaultsByVm" type="tns:ClusterDrsFaultsFaultsByVm" type-id-ref="vim.cluster.DrsFaults.FaultsByVm"/>
      <needed-array-type arrayNameBase="ProfileParameterMetadataParameterRelationMetadata" name="ProfileParameterMetadataParameterRelationMetadata" type="tns:ProfileParameterMetadataParameterRelationMetadata" type-id-ref="vim.profile.ParameterMetadata.ParameterRelationMetadata"/>
      <needed-array-type arrayNameBase="VAppProductSpec" name="VAppProductSpec" type="tns:VAppProductSpec" type-id-ref="vim.vApp.ProductSpec"/>
      <needed-array-type arrayNameBase="ConflictingConfigurationConfig" name="ConflictingConfigurationConfig" type="tns:ConflictingConfigurationConfig" type-id-ref="vim.fault.ConflictingConfiguration.Config"/>
      <needed-array-type arrayNameBase="IoFilterHostIssue" name="IoFilterHostIssue" type="tns:IoFilterHostIssue" type-id-ref="vim.IoFilterManager.QueryIssueResult.HostIssue"/>
      <needed-array-type arrayNameBase="HostDhcpServiceConfig" name="HostDhcpServiceConfig" type="tns:HostDhcpServiceConfig" type-id-ref="vim.host.DhcpService.Config"/>
      <needed-array-type arrayNameBase="ClusterNotAttemptedVmInfo" name="ClusterNotAttemptedVmInfo" type="tns:ClusterNotAttemptedVmInfo" type-id-ref="vim.cluster.NotAttemptedVmInfo"/>
      <needed-array-type arrayNameBase="HostPlugStoreTopologyPlugin" name="HostPlugStoreTopologyPlugin" type="tns:HostPlugStoreTopologyPlugin" type-id-ref="vim.host.PlugStoreTopology.Plugin"/>
      <needed-array-type arrayNameBase="Relation" name="Relation" type="tns:Relation" type-id-ref="vim.host.SoftwarePackage.Relation"/>
      <needed-array-type arrayNameBase="ComplianceResult" name="ComplianceResult" type="tns:ComplianceResult" type-id-ref="vim.profile.ComplianceResult"/>
      <needed-array-type arrayNameBase="StorageDrsVmConfigSpec" name="StorageDrsVmConfigSpec" type="tns:StorageDrsVmConfigSpec" type-id-ref="vim.storageDrs.VmConfigSpec"/>
      <needed-array-type arrayNameBase="HostOpaqueNetworkInfo" name="HostOpaqueNetworkInfo" type="tns:HostOpaqueNetworkInfo" type-id-ref="vim.host.OpaqueNetworkInfo"/>
      <needed-array-type arrayNameBase="HostNasVolumeConfig" name="HostNasVolumeConfig" type="tns:HostNasVolumeConfig" type-id-ref="vim.host.NasVolume.Config"/>
      <needed-array-type arrayNameBase="ApplyHostProfileConfigurationSpec" name="ApplyHostProfileConfigurationSpec" type="tns:ApplyHostProfileConfigurationSpec" type-id-ref="vim.profile.host.ProfileManager.ApplyHostConfigSpec"/>
      <needed-array-type arrayNameBase="ClusterHostRecommendation" name="ClusterHostRecommendation" type="tns:ClusterHostRecommendation" type-id-ref="vim.cluster.HostRecommendation"/>
      <needed-array-type arrayNameBase="LicenseReservationInfo" name="LicenseReservationInfo" type="tns:LicenseReservationInfo" type-id-ref="vim.LicenseManager.ReservationInfo"/>
      <needed-array-type arrayNameBase="HostScsiDiskPartition" name="HostScsiDiskPartition" type="tns:HostScsiDiskPartition" type-id-ref="vim.host.ScsiDisk.Partition"/>
      <needed-array-type arrayNameBase="ComplianceFailureComplianceFailureValues" name="ComplianceFailureComplianceFailureValues" type="tns:ComplianceFailureComplianceFailureValues" type-id-ref="vim.profile.ComplianceResult.ComplianceFailure.ComplianceFailureValues"/>
      <needed-array-type arrayNameBase="VsanHostMembershipInfo" name="VsanHostMembershipInfo" type="tns:VsanHostMembershipInfo" type-id-ref="vim.vsan.host.MembershipInfo"/>
      <needed-array-type arrayNameBase="VirtualMachineDisplayTopology" name="VirtualMachineDisplayTopology" type="tns:VirtualMachineDisplayTopology" type-id-ref="vim.VirtualMachine.DisplayTopology"/>
      <needed-array-type arrayNameBase="KernelModuleInfo" name="KernelModuleInfo" type="tns:KernelModuleInfo" type-id-ref="vim.host.KernelModuleSystem.ModuleInfo"/>
      <needed-array-type arrayNameBase="DvsOutOfSyncHostArgument" name="DvsOutOfSyncHostArgument" type="tns:DvsOutOfSyncHostArgument" type-id-ref="vim.event.DvsOutOfSyncHostArgument"/>
      <needed-array-type arrayNameBase="IpPoolAssociation" name="IpPoolAssociation" type="tns:IpPoolAssociation" type-id-ref="vim.vApp.IpPool.Association"/>
      <needed-array-type arrayNameBase="HostServiceConfig" name="HostServiceConfig" type="tns:HostServiceConfig" type-id-ref="vim.host.ServiceConfig"/>
      <needed-array-type arrayNameBase="NvdimmNamespaceDetails" name="NvdimmNamespaceDetails" type="tns:NvdimmNamespaceDetails" type-id-ref="vim.host.NvdimmSystem.NamespaceDetails"/>
      <needed-array-type arrayNameBase="OptionProfile" name="OptionProfile" type="tns:OptionProfile" type-id-ref="vim.profile.host.OptionProfile"/>
      <needed-array-type arrayNameBase="ProfileMetadata" name="ProfileMetadata" type="tns:ProfileMetadata" type-id-ref="vim.profile.ProfileMetadata"/>
      <needed-array-type arrayNameBase="VAppCloneSpecResourceMap" name="VAppCloneSpecResourceMap" type="tns:VAppCloneSpecResourceMap" type-id-ref="vim.vApp.CloneSpec.ResourceMap"/>
      <needed-array-type arrayNameBase="TaskInfo" name="TaskInfo" type="tns:TaskInfo" type-id-ref="vim.TaskInfo"/>
      <needed-array-type arrayNameBase="HostMultipathInfoPath" name="HostMultipathInfoPath" type="tns:HostMultipathInfoPath" type-id-ref="vim.host.MultipathInfo.Path"/>
      <needed-array-type arrayNameBase="GuestOsDescriptor" name="GuestOsDescriptor" type="tns:GuestOsDescriptor" type-id-ref="vim.vm.GuestOsDescriptor"/>
      <needed-array-type arrayNameBase="CheckResult" name="CheckResult" type="tns:CheckResult" type-id-ref="vim.vm.check.Result"/>
      <needed-array-type arrayNameBase="VmfsDatastoreOption" name="VmfsDatastoreOption" type="tns:VmfsDatastoreOption" type-id-ref="vim.host.VmfsDatastoreOption"/>
      <needed-array-type arrayNameBase="VirtualDevice" name="VirtualDevice" type="tns:VirtualDevice" type-id-ref="vim.vm.device.VirtualDevice"/>
      <needed-array-type arrayNameBase="HostService" name="HostService" type="tns:HostService" type-id-ref="vim.host.Service"/>
      <needed-array-type arrayNameBase="VmPodConfigForPlacement" name="VmPodConfigForPlacement" type="tns:VmPodConfigForPlacement" type-id-ref="vim.storageDrs.PodSelectionSpec.VmPodConfig"/>
      <needed-array-type arrayNameBase="ExtSolutionManagerInfoTabInfo" name="ExtSolutionManagerInfoTabInfo" type="tns:ExtSolutionManagerInfoTabInfo" type-id-ref="vim.ext.SolutionManagerInfo.TabInfo"/>
      <needed-array-type arrayNameBase="ClusterDpmHostConfigSpec" name="ClusterDpmHostConfigSpec" type="tns:ClusterDpmHostConfigSpec" type-id-ref="vim.cluster.DpmHostConfigSpec"/>
      <needed-array-type arrayNameBase="HostFirewallRuleset" name="HostFirewallRuleset" type="tns:HostFirewallRuleset" type-id-ref="vim.host.Ruleset"/>
      <needed-array-type arrayNameBase="HostPathSelectionPolicyOption" name="HostPathSelectionPolicyOption" type="tns:HostPathSelectionPolicyOption" type-id-ref="vim.host.PathSelectionPolicyOption"/>
      <needed-array-type arrayNameBase="ClusterRecommendation" name="ClusterRecommendation" type="tns:ClusterRecommendation" type-id-ref="vim.cluster.Recommendation"/>
      <needed-array-type arrayNameBase="HostDiagnosticPartitionCreateOption" name="HostDiagnosticPartitionCreateOption" type="tns:HostDiagnosticPartitionCreateOption" type-id-ref="vim.host.DiagnosticPartition.CreateOption"/>
      <needed-array-type arrayNameBase="VirtualSwitchProfile" name="VirtualSwitchProfile" type="tns:VirtualSwitchProfile" type-id-ref="vim.profile.host.VirtualSwitchProfile"/>
      <needed-array-type arrayNameBase="HostSharedGpuCapabilities" name="HostSharedGpuCapabilities" type="tns:HostSharedGpuCapabilities" type-id-ref="vim.host.SharedGpuCapabilities"/>
      <needed-array-type arrayNameBase="HostCpuIdInfo" name="HostCpuIdInfo" type="tns:HostCpuIdInfo" type-id-ref="vim.host.CpuIdInfo"/>
      <needed-array-type arrayNameBase="ScheduledTaskDetail" name="ScheduledTaskDetail" type="tns:ScheduledTaskDetail" type-id-ref="vim.scheduler.ScheduledTaskDescription.SchedulerDetail"/>
      <needed-array-type arrayNameBase="NvdimmDimmInfo" name="NvdimmDimmInfo" type="tns:NvdimmDimmInfo" type-id-ref="vim.host.NvdimmSystem.DimmInfo"/>
      <needed-array-type arrayNameBase="HostStorageElementInfo" name="HostStorageElementInfo" type="tns:HostStorageElementInfo" type-id-ref="vim.host.HardwareStatusInfo.StorageStatusInfo"/>
      <needed-array-type arrayNameBase="VirtualMachineMetadataManagerVmMetadataInput" name="VirtualMachineMetadataManagerVmMetadataInput" type="tns:VirtualMachineMetadataManagerVmMetadataInput" type-id-ref="vim.vm.MetadataManager.VmMetadataInput"/>
      <needed-array-type arrayNameBase="HostNetworkConfigNetStackSpec" name="HostNetworkConfigNetStackSpec" type="tns:HostNetworkConfigNetStackSpec" type-id-ref="vim.host.NetworkConfig.NetStackSpec"/>
      <needed-array-type arrayNameBase="HostPortGroupProfile" name="HostPortGroupProfile" type="tns:HostPortGroupProfile" type-id-ref="vim.profile.host.HostPortGroupProfile"/>
      <needed-array-type arrayNameBase="VASAStorageArray" name="VASAStorageArray" type="tns:VASAStorageArray" type-id-ref="vim.VasaStorageArray"/>
      <needed-array-type arrayNameBase="HostRuntimeInfoNetStackInstanceRuntimeInfo" name="HostRuntimeInfoNetStackInstanceRuntimeInfo" type="tns:HostRuntimeInfoNetStackInstanceRuntimeInfo" type-id-ref="vim.host.RuntimeInfo.NetStackInstanceRuntimeInfo"/>
      <needed-array-type arrayNameBase="PerfCounterInfo" name="PerfCounterInfo" type="tns:PerfCounterInfo" type-id-ref="vim.PerformanceManager.CounterInfo"/>
      <needed-array-type arrayNameBase="HostConnectSpec" name="HostConnectSpec" type="tns:HostConnectSpec" type-id-ref="vim.host.ConnectSpec"/>
      <needed-array-type arrayNameBase="ProfileUpdateFailedUpdateFailure" name="ProfileUpdateFailedUpdateFailure" type="tns:ProfileUpdateFailedUpdateFailure" type-id-ref="vim.fault.ProfileUpdateFailed.UpdateFailure"/>
      <needed-array-type arrayNameBase="HostFeatureCapability" name="HostFeatureCapability" type="tns:HostFeatureCapability" type-id-ref="vim.host.FeatureCapability"/>
      <needed-array-type arrayNameBase="ExtensionResourceInfo" name="ExtensionResourceInfo" type="tns:ExtensionResourceInfo" type-id-ref="vim.Extension.ResourceInfo"/>
      <needed-array-type arrayNameBase="VmPortGroupProfile" name="VmPortGroupProfile" type="tns:VmPortGroupProfile" type-id-ref="vim.profile.host.VmPortGroupProfile"/>
      <needed-array-type arrayNameBase="HostLowLevelProvisioningManagerFileReserveResult" name="HostLowLevelProvisioningManagerFileReserveResult" type="tns:HostLowLevelProvisioningManagerFileReserveResult" type-id-ref="vim.host.LowLevelProvisioningManager.FileReserveResult"/>
      <needed-array-type arrayNameBase="DVSHealthCheckConfig" name="DVSHealthCheckConfig" type="tns:DVSHealthCheckConfig" type-id-ref="vim.DistributedVirtualSwitch.HealthCheckConfig"/>
      <needed-array-type arrayNameBase="ExtendedEventPair" name="ExtendedEventPair" type="tns:ExtendedEventPair" type-id-ref="vim.event.ExtendedEvent.Pair"/>
      <needed-array-type arrayNameBase="PerfEntityMetricBase" name="PerfEntityMetricBase" type="tns:PerfEntityMetricBase" type-id-ref="vim.PerformanceManager.EntityMetricBase"/>
      <needed-array-type arrayNameBase="VirtualMachineProfileSpec" name="VirtualMachineProfileSpec" type="tns:VirtualMachineProfileSpec" type-id-ref="vim.vm.ProfileSpec"/>
      <needed-array-type arrayNameBase="ProfileParameterMetadata" name="ProfileParameterMetadata" type="tns:ProfileParameterMetadata" type-id-ref="vim.profile.ParameterMetadata"/>
      <needed-array-type arrayNameBase="HostVmfsRescanResult" name="HostVmfsRescanResult" type="tns:HostVmfsRescanResult" type-id-ref="vim.host.VmfsRescanResult"/>
      <needed-array-type arrayNameBase="Tag" name="Tag" type="tns:Tag" type-id-ref="vim.Tag"/>
      <needed-array-type arrayNameBase="HostOpaqueSwitchPhysicalNicZone" name="HostOpaqueSwitchPhysicalNicZone" type="tns:HostOpaqueSwitchPhysicalNicZone" type-id-ref="vim.host.OpaqueSwitch.PhysicalNicZone"/>
      <needed-array-type arrayNameBase="HostIpRouteOp" name="HostIpRouteOp" type="tns:HostIpRouteOp" type-id-ref="vim.host.IpRouteOp"/>
      <needed-array-type arrayNameBase="HostVirtualNicConfig" name="HostVirtualNicConfig" type="tns:HostVirtualNicConfig" type-id-ref="vim.host.VirtualNic.Config"/>
      <needed-array-type arrayNameBase="NvdimmRegionInfo" name="NvdimmRegionInfo" type="tns:NvdimmRegionInfo" type-id-ref="vim.host.NvdimmSystem.RegionInfo"/>
      <needed-array-type arrayNameBase="DVPortConfigSpec" name="DVPortConfigSpec" type="tns:DVPortConfigSpec" type-id-ref="vim.dvs.DistributedVirtualPort.ConfigSpec"/>
      <needed-array-type arrayNameBase="VimVasaProviderInfo" name="VimVasaProviderInfo" type="tns:VimVasaProviderInfo" type-id-ref="vim.VimVasaProviderInfo"/>
      <needed-array-type arrayNameBase="VirtualMachineCdromInfo" name="VirtualMachineCdromInfo" type="tns:VirtualMachineCdromInfo" type-id-ref="vim.vm.CdromInfo"/>
      <needed-array-type arrayNameBase="ClusterDrsMigration" name="ClusterDrsMigration" type="tns:ClusterDrsMigration" type-id-ref="vim.cluster.DrsMigration"/>
      <needed-array-type arrayNameBase="ObjectSpec" name="ObjectSpec" type="tns:ObjectSpec" type-id-ref="vmodl.query.PropertyCollector.ObjectSpec"/>
      <needed-array-type arrayNameBase="DvsVmVnicResourcePoolConfigSpec" name="DvsVmVnicResourcePoolConfigSpec" type="tns:DvsVmVnicResourcePoolConfigSpec" type-id-ref="vim.dvs.VmVnicNetworkResourcePool.ConfigSpec"/>
      <needed-array-type arrayNameBase="HostConnectInfoNetworkInfo" name="HostConnectInfoNetworkInfo" type="tns:HostConnectInfoNetworkInfo" type-id-ref="vim.host.ConnectInfo.NetworkInfo"/>
      <needed-array-type arrayNameBase="GuestStackInfo" name="GuestStackInfo" type="tns:GuestStackInfo" type-id-ref="vim.vm.GuestInfo.StackInfo"/>
      <needed-array-type arrayNameBase="HostNetStackInstance" name="HostNetStackInstance" type="tns:HostNetStackInstance" type-id-ref="vim.host.NetStackInstance"/>
      <needed-array-type arrayNameBase="VirtualMachineScsiPassthroughInfo" name="VirtualMachineScsiPassthroughInfo" type="tns:VirtualMachineScsiPassthroughInfo" type-id-ref="vim.vm.ScsiPassthroughInfo"/>
      <needed-array-type arrayNameBase="HostStorageSystemDiskLocatorLedResult" name="HostStorageSystemDiskLocatorLedResult" type="tns:HostStorageSystemDiskLocatorLedResult" type-id-ref="vim.host.StorageSystem.DiskLocatorLedResult"/>
      <needed-array-type arrayNameBase="ProfilePolicy" name="ProfilePolicy" type="tns:ProfilePolicy" type-id-ref="vim.profile.Policy"/>
      <needed-array-type arrayNameBase="PhysicalNicIpHint" name="PhysicalNicIpHint" type="tns:PhysicalNicIpHint" type-id-ref="vim.host.PhysicalNic.NetworkHint.IpNetwork"/>
      <needed-array-type arrayNameBase="HostFirewallConfigRuleSetConfig" name="HostFirewallConfigRuleSetConfig" type="tns:HostFirewallConfigRuleSetConfig" type-id-ref="vim.host.FirewallConfig.RuleSetConfig"/>
      <needed-array-type arrayNameBase="ClusterVmOrchestrationInfo" name="ClusterVmOrchestrationInfo" type="tns:ClusterVmOrchestrationInfo" type-id-ref="vim.cluster.VmOrchestrationInfo"/>
      <needed-array-type arrayNameBase="HostVsanInternalSystemDeleteVsanObjectsResult" name="HostVsanInternalSystemDeleteVsanObjectsResult" type="tns:HostVsanInternalSystemDeleteVsanObjectsResult" type-id-ref="vim.host.VsanInternalSystem.DeleteVsanObjectsResult"/>
      <needed-array-type arrayNameBase="HostPlugStoreTopologyTarget" name="HostPlugStoreTopologyTarget" type="tns:HostPlugStoreTopologyTarget" type-id-ref="vim.host.PlugStoreTopology.Target"/>
      <needed-array-type arrayNameBase="GuestNicInfo" name="GuestNicInfo" type="tns:GuestNicInfo" type-id-ref="vim.vm.GuestInfo.NicInfo"/>
      <needed-array-type arrayNameBase="HttpNfcLeaseManifestEntry" name="HttpNfcLeaseManifestEntry" type="tns:HttpNfcLeaseManifestEntry" type-id-ref="vim.HttpNfcLease.ManifestEntry"/>
      <needed-array-type arrayNameBase="OvfFile" name="OvfFile" type="tns:OvfFile" type-id-ref="vim.OvfManager.OvfFile"/>
      <needed-array-type arrayNameBase="VirtualMachinePropertyRelation" name="VirtualMachinePropertyRelation" type="tns:VirtualMachinePropertyRelation" type-id-ref="vim.vm.PropertyRelation"/>
      <needed-array-type arrayNameBase="HostVirtualNicManagerNicTypeSelection" name="HostVirtualNicManagerNicTypeSelection" type="tns:HostVirtualNicManagerNicTypeSelection" type-id-ref="vim.host.VirtualNicManager.NicTypeSelection"/>
      <needed-array-type arrayNameBase="HostVirtualSwitchConfig" name="HostVirtualSwitchConfig" type="tns:HostVirtualSwitchConfig" type-id-ref="vim.host.VirtualSwitch.Config"/>
      <needed-array-type arrayNameBase="HostPowerPolicy" name="HostPowerPolicy" type="tns:HostPowerPolicy" type-id-ref="vim.host.PowerSystem.PowerPolicy"/>
      <needed-array-type arrayNameBase="HostHostBusAdapter" name="HostHostBusAdapter" type="tns:HostHostBusAdapter" type-id-ref="vim.host.HostBusAdapter"/>
      <needed-array-type arrayNameBase="KeyAnyValue" name="KeyAnyValue" type="tns:KeyAnyValue" type-id-ref="vmodl.KeyAnyValue"/>
      <needed-array-type arrayNameBase="VsanUpgradeSystemUpgradeHistoryItem" name="VsanUpgradeSystemUpgradeHistoryItem" type="tns:VsanUpgradeSystemUpgradeHistoryItem" type-id-ref="vim.VsanUpgradeSystem.UpgradeHistoryItem"/>
      <needed-array-type arrayNameBase="HostFeatureVersionInfo" name="HostFeatureVersionInfo" type="tns:HostFeatureVersionInfo" type-id-ref="vim.host.FeatureVersionInfo"/>
      <needed-array-type arrayNameBase="ProfileDescriptionSection" name="ProfileDescriptionSection" type="tns:ProfileDescriptionSection" type-id-ref="vim.profile.Profile.Description.Section"/>
      <needed-array-type arrayNameBase="HostPciPassthruConfig" name="HostPciPassthruConfig" type="tns:HostPciPassthruConfig" type-id-ref="vim.host.PciPassthruConfig"/>
      <needed-array-type arrayNameBase="CustomizationAdapterMapping" name="CustomizationAdapterMapping" type="tns:CustomizationAdapterMapping" type-id-ref="vim.vm.customization.AdapterMapping"/>
      <needed-array-type arrayNameBase="HostLowLevelProvisioningManagerFileDeleteSpec" name="HostLowLevelProvisioningManagerFileDeleteSpec" type="tns:HostLowLevelProvisioningManagerFileDeleteSpec" type-id-ref="vim.host.LowLevelProvisioningManager.FileDeleteSpec"/>
      <needed-array-type arrayNameBase="OpaqueNetworkTargetInfo" name="OpaqueNetworkTargetInfo" type="tns:OpaqueNetworkTargetInfo" type-id-ref="vim.vm.OpaqueNetworkInfo"/>
      <needed-array-type arrayNameBase="GuestProcessInfo" name="GuestProcessInfo" type="tns:GuestProcessInfo" type-id-ref="vim.vm.guest.ProcessManager.ProcessInfo"/>
      <needed-array-type arrayNameBase="VirtualMachineProfileDetailsDiskProfileDetails" name="VirtualMachineProfileDetailsDiskProfileDetails" type="tns:VirtualMachineProfileDetailsDiskProfileDetails" type-id-ref="vim.vm.ProfileDetails.DiskProfileDetails"/>
      <needed-array-type arrayNameBase="HostVirtualSwitch" name="HostVirtualSwitch" type="tns:HostVirtualSwitch" type-id-ref="vim.host.VirtualSwitch"/>
      <needed-array-type arrayNameBase="ClusterEVCManagerCheckResult" name="ClusterEVCManagerCheckResult" type="tns:ClusterEVCManagerCheckResult" type-id-ref="vim.cluster.EVCManager.CheckResult"/>
      <needed-array-type arrayNameBase="UserSearchResult" name="UserSearchResult" type="tns:UserSearchResult" type-id-ref="vim.UserSearchResult"/>
      <needed-array-type arrayNameBase="OvfResourceMap" name="OvfResourceMap" type="tns:OvfResourceMap" type-id-ref="vim.OvfManager.ResourceMap"/>
      <needed-array-type arrayNameBase="Event" name="Event" type="tns:Event" type-id-ref="vim.event.Event"/>
      <needed-array-type arrayNameBase="HostMemberRuntimeInfo" name="HostMemberRuntimeInfo" type="tns:HostMemberRuntimeInfo" type-id-ref="vim.dvs.HostMember.RuntimeInfo"/>
      <needed-array-type arrayNameBase="HostProfilesEntityCustomizations" name="HostProfilesEntityCustomizations" type="tns:HostProfilesEntityCustomizations" type-id-ref="vim.profile.host.ProfileManager.EntityCustomizations"/>
      <needed-array-type arrayNameBase="DistributedVirtualSwitchKeyedOpaqueBlob" name="DistributedVirtualSwitchKeyedOpaqueBlob" type="tns:DistributedVirtualSwitchKeyedOpaqueBlob" type-id-ref="vim.dvs.KeyedOpaqueBlob"/>
      <needed-array-type arrayNameBase="HostNumericSensorInfo" name="HostNumericSensorInfo" type="tns:HostNumericSensorInfo" type-id-ref="vim.host.NumericSensorInfo"/>
      <needed-array-type arrayNameBase="VMwareDvsLacpGroupConfig" name="VMwareDvsLacpGroupConfig" type="tns:VMwareDvsLacpGroupConfig" type-id-ref="vim.dvs.VmwareDistributedVirtualSwitch.LacpGroupConfig"/>
      <needed-array-type arrayNameBase="HostIoFilterInfo" name="HostIoFilterInfo" type="tns:HostIoFilterInfo" type-id-ref="vim.IoFilterManager.HostIoFilterInfo"/>
      <needed-array-type arrayNameBase="HealthUpdate" name="HealthUpdate" type="tns:HealthUpdate" type-id-ref="vim.HealthUpdate"/>
      <needed-array-type arrayNameBase="DynamicProperty" name="DynamicProperty" type="tns:DynamicProperty" type-id-ref="vmodl.DynamicProperty"/>
      <needed-array-type arrayNameBase="VsanHostDiskMapping" name="VsanHostDiskMapping" type="tns:VsanHostDiskMapping" type-id-ref="vim.vsan.host.DiskMapping"/>
      <needed-array-type arrayNameBase="ClusterComputeResourceDVSSettingDVPortgroupToServiceMapping" name="ClusterComputeResourceDVSSettingDVPortgroupToServiceMapping" type="tns:ClusterComputeResourceDVSSettingDVPortgroupToServiceMapping" type-id-ref="vim.ClusterComputeResource.DVSSetting.DVPortgroupToServiceMapping"/>
      <needed-array-type arrayNameBase="HostScsiTopologyLun" name="HostScsiTopologyLun" type="tns:HostScsiTopologyLun" type-id-ref="vim.host.ScsiTopology.Lun"/>
      <needed-array-type arrayNameBase="PerfMetricSeriesCSV" name="PerfMetricSeriesCSV" type="tns:PerfMetricSeriesCSV" type-id-ref="vim.PerformanceManager.MetricSeriesCSV"/>
      <needed-array-type arrayNameBase="VirtualMachineNetworkInfo" name="VirtualMachineNetworkInfo" type="tns:VirtualMachineNetworkInfo" type-id-ref="vim.vm.NetworkInfo"/>
      <needed-array-type arrayNameBase="HostMultipathStateInfoPath" name="HostMultipathStateInfoPath" type="tns:HostMultipathStateInfoPath" type-id-ref="vim.host.MultipathStateInfo.Path"/>
      <needed-array-type arrayNameBase="DvsVmVnicNetworkResourcePoolRuntimeInfo" name="DvsVmVnicNetworkResourcePoolRuntimeInfo" type="tns:DvsVmVnicNetworkResourcePoolRuntimeInfo" type-id-ref="vim.dvs.VmVnicNetworkResourcePool.RuntimeInfo"/>
      <needed-array-type arrayNameBase="HostDiskPartitionInfo" name="HostDiskPartitionInfo" type="tns:HostDiskPartitionInfo" type-id-ref="vim.host.DiskPartitionInfo"/>
      <needed-array-type arrayNameBase="Permission" name="Permission" type="tns:Permission" type-id-ref="vim.AuthorizationManager.Permission"/>
      <needed-array-type arrayNameBase="PerfSampleInfo" name="PerfSampleInfo" type="tns:PerfSampleInfo" type-id-ref="vim.PerformanceManager.SampleInfo"/>
      <needed-array-type arrayNameBase="HostStorageSystemVmfsVolumeResult" name="HostStorageSystemVmfsVolumeResult" type="tns:HostStorageSystemVmfsVolumeResult" type-id-ref="vim.host.StorageSystem.VmfsVolumeResult"/>
      <needed-array-type arrayNameBase="VMwareDVSVspanConfigSpec" name="VMwareDVSVspanConfigSpec" type="tns:VMwareDVSVspanConfigSpec" type-id-ref="vim.dvs.VmwareDistributedVirtualSwitch.VspanConfigSpec"/>
      <needed-array-type arrayNameBase="OptionValue" name="OptionValue" type="tns:OptionValue" type-id-ref="vim.option.OptionValue"/>
      <needed-array-type arrayNameBase="HostDiskPartitionAttributes" name="HostDiskPartitionAttributes" type="tns:HostDiskPartitionAttributes" type-id-ref="vim.host.DiskPartitionInfo.Partition"/>
      <needed-array-type arrayNameBase="SelectionSpec" name="SelectionSpec" type="tns:SelectionSpec" type-id-ref="vmodl.query.PropertyCollector.SelectionSpec"/>
      <needed-array-type arrayNameBase="HttpNfcLeaseDeviceUrl" name="HttpNfcLeaseDeviceUrl" type="tns:HttpNfcLeaseDeviceUrl" type-id-ref="vim.HttpNfcLease.DeviceUrl"/>
      <needed-array-type arrayNameBase="PodDiskLocator" name="PodDiskLocator" type="tns:PodDiskLocator" type-id-ref="vim.storageDrs.PodSelectionSpec.DiskLocator"/>
      <needed-array-type arrayNameBase="HostPatchManagerStatusPrerequisitePatch" name="HostPatchManagerStatusPrerequisitePatch" type="tns:HostPatchManagerStatusPrerequisitePatch" type-id-ref="vim.host.PatchManager.Status.PrerequisitePatch"/>
      <needed-array-type arrayNameBase="HostVsanInternalSystemCmmdsQuery" name="HostVsanInternalSystemCmmdsQuery" type="tns:HostVsanInternalSystemCmmdsQuery" type-id-ref="vim.host.VsanInternalSystem.CmmdsQuery"/>
      <needed-array-type arrayNameBase="DatastoreHostMount" name="DatastoreHostMount" type="tns:DatastoreHostMount" type-id-ref="vim.Datastore.HostMount"/>
      <needed-array-type arrayNameBase="NetIpStackInfoNetToMedia" name="NetIpStackInfoNetToMedia" type="tns:NetIpStackInfoNetToMedia" type-id-ref="vim.net.IpStackInfo.NetToMedia"/>
      <needed-array-type arrayNameBase="HostPciDevice" name="HostPciDevice" type="tns:HostPciDevice" type-id-ref="vim.host.PciDevice"/>
      <needed-array-type arrayNameBase="VAppPropertySpec" name="VAppPropertySpec" type="tns:VAppPropertySpec" type-id-ref="vim.vApp.PropertySpec"/>
      <needed-array-type arrayNameBase="HostEventArgument" name="HostEventArgument" type="tns:HostEventArgument" type-id-ref="vim.event.HostEventArgument"/>
      <needed-array-type arrayNameBase="VirtualMachineFileLayoutExSnapshotLayout" name="VirtualMachineFileLayoutExSnapshotLayout" type="tns:VirtualMachineFileLayoutExSnapshotLayout" type-id-ref="vim.vm.FileLayoutEx.SnapshotLayout"/>
      <needed-array-type arrayNameBase="AuthorizationPrivilege" name="AuthorizationPrivilege" type="tns:AuthorizationPrivilege" type-id-ref="vim.AuthorizationManager.Privilege"/>
      <needed-array-type arrayNameBase="FaultToleranceDiskSpec" name="FaultToleranceDiskSpec" type="tns:FaultToleranceDiskSpec" type-id-ref="vim.vm.FaultToleranceVMConfigSpec.FaultToleranceDiskSpec"/>
      <needed-array-type arrayNameBase="VirtualMachineVMCIDeviceFilterSpec" name="VirtualMachineVMCIDeviceFilterSpec" type="tns:VirtualMachineVMCIDeviceFilterSpec" type-id-ref="vim.vm.device.VirtualVMCIDevice.FilterSpec"/>
      <needed-array-type arrayNameBase="DistributedVirtualSwitchProductSpec" name="DistributedVirtualSwitchProductSpec" type="tns:DistributedVirtualSwitchProductSpec" type-id-ref="vim.dvs.ProductSpec"/>
      <needed-array-type arrayNameBase="VsanHostDiskResult" name="VsanHostDiskResult" type="tns:VsanHostDiskResult" type-id-ref="vim.vsan.host.DiskResult"/>
      <needed-array-type arrayNameBase="ClusterComputeResourceHostConfigurationInput" name="ClusterComputeResourceHostConfigurationInput" type="tns:ClusterComputeResourceHostConfigurationInput" type-id-ref="vim.ClusterComputeResource.HostConfigurationInput"/>
      <needed-array-type arrayNameBase="DistributedVirtualSwitchHostMemberPnicSpec" name="DistributedVirtualSwitchHostMemberPnicSpec" type="tns:DistributedVirtualSwitchHostMemberPnicSpec" type-id-ref="vim.dvs.HostMember.PnicSpec"/>
      <needed-array-type arrayNameBase="HostStorageArrayTypePolicyOption" name="HostStorageArrayTypePolicyOption" type="tns:HostStorageArrayTypePolicyOption" type-id-ref="vim.host.StorageArrayTypePolicyOption"/>
      <needed-array-type arrayNameBase="VirtualMachinePrecisionClockInfo" name="VirtualMachinePrecisionClockInfo" type="tns:VirtualMachinePrecisionClockInfo" type-id-ref="vim.vm.PrecisionClockInfo"/>
      <needed-array-type arrayNameBase="PerfInterval" name="PerfInterval" type="tns:PerfInterval" type-id-ref="vim.HistoricalInterval"/>
      <needed-array-type arrayNameBase="ApplyHostProfileConfigurationResult" name="ApplyHostProfileConfigurationResult" type="tns:ApplyHostProfileConfigurationResult" type-id-ref="vim.profile.host.ProfileManager.ApplyHostConfigResult"/>
      <needed-array-type arrayNameBase="HostVmciAccessManagerAccessSpec" name="HostVmciAccessManagerAccessSpec" type="tns:HostVmciAccessManagerAccessSpec" type-id-ref="vim.host.VmciAccessManager.AccessSpec"/>
      <needed-array-type arrayNameBase="VirtualDeviceOption" name="VirtualDeviceOption" type="tns:VirtualDeviceOption" type-id-ref="vim.vm.device.VirtualDeviceOption"/>
      <needed-array-type arrayNameBase="VsanUpgradeSystemNetworkPartitionInfo" name="VsanUpgradeSystemNetworkPartitionInfo" type="tns:VsanUpgradeSystemNetworkPartitionInfo" type-id-ref="vim.VsanUpgradeSystem.NetworkPartitionInfo"/>
      <needed-array-type arrayNameBase="AnswerFileStatusError" name="AnswerFileStatusError" type="tns:AnswerFileStatusError" type-id-ref="vim.profile.host.AnswerFileStatusResult.AnswerFileStatusError"/>
      <needed-array-type arrayNameBase="ClusterActionHistory" name="ClusterActionHistory" type="tns:ClusterActionHistory" type-id-ref="vim.cluster.ActionHistory"/>
      <needed-array-type arrayNameBase="VirtualMachineIdeDiskDeviceInfo" name="VirtualMachineIdeDiskDeviceInfo" type="tns:VirtualMachineIdeDiskDeviceInfo" type-id-ref="vim.vm.IdeDiskDeviceInfo"/>
      <needed-array-type arrayNameBase="VchaNodeRuntimeInfo" name="VchaNodeRuntimeInfo" type="tns:VchaNodeRuntimeInfo" type-id-ref="vim.vcha.FailoverClusterManager.VchaNodeRuntimeInfo"/>
      <needed-array-type arrayNameBase="HostFirewallRule" name="HostFirewallRule" type="tns:HostFirewallRule" type-id-ref="vim.host.Ruleset.Rule"/>
      <needed-array-type arrayNameBase="CryptoKeyResult" name="CryptoKeyResult" type="tns:CryptoKeyResult" type-id-ref="vim.encryption.CryptoKeyResult"/>
      <needed-array-type arrayNameBase="VsanUpgradeSystemPreflightCheckIssue" name="VsanUpgradeSystemPreflightCheckIssue" type="tns:VsanUpgradeSystemPreflightCheckIssue" type-id-ref="vim.VsanUpgradeSystem.PreflightCheckIssue"/>
      <needed-array-type arrayNameBase="DVPortgroupConfigSpec" name="DVPortgroupConfigSpec" type="tns:DVPortgroupConfigSpec" type-id-ref="vim.dvs.DistributedVirtualPortgroup.ConfigSpec"/>
      <needed-array-type arrayNameBase="ExtensionClientInfo" name="ExtensionClientInfo" type="tns:ExtensionClientInfo" type-id-ref="vim.Extension.ClientInfo"/>
      <needed-array-type arrayNameBase="DistributedVirtualSwitchManagerHostDvsFilterSpec" name="DistributedVirtualSwitchManagerHostDvsFilterSpec" type="tns:DistributedVirtualSwitchManagerHostDvsFilterSpec" type-id-ref="vim.dvs.DistributedVirtualSwitchManager.HostDvsFilterSpec"/>
      <needed-array-type arrayNameBase="ExtManagedEntityInfo" name="ExtManagedEntityInfo" type="tns:ExtManagedEntityInfo" type-id-ref="vim.ext.ManagedEntityInfo"/>
      <needed-array-type arrayNameBase="HostInternetScsiHbaParamValue" name="HostInternetScsiHbaParamValue" type="tns:HostInternetScsiHbaParamValue" type-id-ref="vim.host.InternetScsiHba.ParamValue"/>
      <needed-array-type arrayNameBase="PhysicalNicProfile" name="PhysicalNicProfile" type="tns:PhysicalNicProfile" type-id-ref="vim.profile.host.PhysicalNicProfile"/>
      <needed-array-type arrayNameBase="ChangesInfoEventArgument" name="ChangesInfoEventArgument" type="tns:ChangesInfoEventArgument" type-id-ref="vim.event.ChangesInfoEventArgument"/>
      <needed-array-type arrayNameBase="DvsTrafficRule" name="DvsTrafficRule" type="tns:DvsTrafficRule" type-id-ref="vim.dvs.TrafficRule"/>
      <needed-array-type arrayNameBase="VirtualMachineFileLayoutSnapshotLayout" name="VirtualMachineFileLayoutSnapshotLayout" type="tns:VirtualMachineFileLayoutSnapshotLayout" type-id-ref="vim.vm.FileLayout.SnapshotLayout"/>
      <needed-array-type arrayNameBase="ReplicationInfoDiskSettings" name="ReplicationInfoDiskSettings" type="tns:ReplicationInfoDiskSettings" type-id-ref="vim.vm.ReplicationConfigSpec.DiskSettings"/>
      <needed-array-type arrayNameBase="VAppOvfSectionSpec" name="VAppOvfSectionSpec" type="tns:VAppOvfSectionSpec" type-id-ref="vim.vApp.OvfSectionSpec"/>
      <needed-array-type arrayNameBase="HealthUpdateInfo" name="HealthUpdateInfo" type="tns:HealthUpdateInfo" type-id-ref="vim.HealthUpdateInfo"/>
      <needed-array-type arrayNameBase="HostActiveDirectory" name="HostActiveDirectory" type="tns:HostActiveDirectory" type-id-ref="vim.host.ActiveDirectorySpec"/>
      <needed-array-type arrayNameBase="EventAlarmExpressionComparison" name="EventAlarmExpressionComparison" type="tns:EventAlarmExpressionComparison" type-id-ref="vim.alarm.EventAlarmExpression.Comparison"/>
      <needed-array-type arrayNameBase="ResourceConfigSpec" name="ResourceConfigSpec" type="tns:ResourceConfigSpec" type-id-ref="vim.ResourceConfigSpec"/>
      <needed-array-type arrayNameBase="TypeDescription" name="TypeDescription" type="tns:TypeDescription" type-id-ref="vim.TypeDescription"/>
      <needed-array-type arrayNameBase="DvsServiceConsoleVNicProfile" name="DvsServiceConsoleVNicProfile" type="tns:DvsServiceConsoleVNicProfile" type-id-ref="vim.profile.host.DvsServiceConsoleVNicProfile"/>
      <needed-array-type arrayNameBase="OvfOptionInfo" name="OvfOptionInfo" type="tns:OvfOptionInfo" type-id-ref="vim.OvfManager.OvfOptionInfo"/>
      <needed-array-type arrayNameBase="VirtualMachineConfigInfoDatastoreUrlPair" name="VirtualMachineConfigInfoDatastoreUrlPair" type="tns:VirtualMachineConfigInfoDatastoreUrlPair" type-id-ref="vim.vm.ConfigInfo.DatastoreUrlPair"/>
      <needed-array-type arrayNameBase="HostDhcpService" name="HostDhcpService" type="tns:HostDhcpService" type-id-ref="vim.host.DhcpService"/>
      <needed-array-type arrayNameBase="IscsiDependencyEntity" name="IscsiDependencyEntity" type="tns:IscsiDependencyEntity" type-id-ref="vim.host.IscsiManager.IscsiDependencyEntity"/>
      <needed-array-type arrayNameBase="HostProxySwitchHostLagConfig" name="HostProxySwitchHostLagConfig" type="tns:HostProxySwitchHostLagConfig" type-id-ref="vim.host.HostProxySwitch.HostLagConfig"/>
      <needed-array-type arrayNameBase="VStorageObjectAssociationsVmDiskAssociations" name="VStorageObjectAssociationsVmDiskAssociations" type="tns:VStorageObjectAssociationsVmDiskAssociations" type-id-ref="vim.vslm.vcenter.VStorageObjectAssociations.VmDiskAssociations"/>
      <needed-array-type arrayNameBase="VirtualDiskId" name="VirtualDiskId" type="tns:VirtualDiskId" type-id-ref="vim.vm.device.VirtualDiskId"/>
      <needed-array-type arrayNameBase="HttpNfcLeaseHostInfo" name="HttpNfcLeaseHostInfo" type="tns:HttpNfcLeaseHostInfo" type-id-ref="vim.HttpNfcLease.HostInfo"/>
      <needed-array-type arrayNameBase="VirtualMachineFloppyInfo" name="VirtualMachineFloppyInfo" type="tns:VirtualMachineFloppyInfo" type-id-ref="vim.vm.FloppyInfo"/>
      <needed-array-type arrayNameBase="NetIpConfigSpecIpAddressSpec" name="NetIpConfigSpecIpAddressSpec" type="tns:NetIpConfigSpecIpAddressSpec" type-id-ref="vim.net.IpConfigSpec.IpAddressSpec"/>
      <needed-array-type arrayNameBase="CryptoManagerKmipClusterStatus" name="CryptoManagerKmipClusterStatus" type="tns:CryptoManagerKmipClusterStatus" type-id-ref="vim.encryption.CryptoManagerKmip.ClusterStatus"/>
      <needed-array-type arrayNameBase="AlarmTriggeringActionTransitionSpec" name="AlarmTriggeringActionTransitionSpec" type="tns:AlarmTriggeringActionTransitionSpec" type-id-ref="vim.alarm.AlarmTriggeringAction.TransitionSpec"/>
      <needed-array-type arrayNameBase="OvfConsumerOstNode" name="OvfConsumerOstNode" type="tns:OvfConsumerOstNode" type-id-ref="vim.OvfConsumer.OstNode"/>
      <needed-array-type arrayNameBase="HostDatastoreBrowserSearchResults" name="HostDatastoreBrowserSearchResults" type="tns:HostDatastoreBrowserSearchResults" type-id-ref="vim.host.DatastoreBrowser.SearchResults"/>
      <needed-array-type arrayNameBase="HostAssignableHardwareConfigAttributeOverride" name="HostAssignableHardwareConfigAttributeOverride" type="tns:HostAssignableHardwareConfigAttributeOverride" type-id-ref="vim.host.AssignableHardwareConfig.AttributeOverride"/>
      <needed-array-type arrayNameBase="GuestInfoNamespaceGenerationInfo" name="GuestInfoNamespaceGenerationInfo" type="tns:GuestInfoNamespaceGenerationInfo" type-id-ref="vim.vm.GuestInfo.NamespaceGenerationInfo"/>
      <needed-array-type arrayNameBase="HostNvmeNamespace" name="HostNvmeNamespace" type="tns:HostNvmeNamespace" type-id-ref="vim.host.NvmeNamespace"/>
      <needed-array-type arrayNameBase="vslmInfrastructureObjectPolicy" name="vslmInfrastructureObjectPolicy" type="tns:vslmInfrastructureObjectPolicy" type-id-ref="vim.vslm.InfrastructureObjectPolicy"/>
      <needed-array-type arrayNameBase="PropertyFilterUpdate" name="PropertyFilterUpdate" type="tns:PropertyFilterUpdate" type-id-ref="vmodl.query.PropertyCollector.FilterUpdate"/>
      <needed-array-type arrayNameBase="HostSystemIdentificationInfo" name="HostSystemIdentificationInfo" type="tns:HostSystemIdentificationInfo" type-id-ref="vim.host.SystemIdentificationInfo"/>
      <needed-array-type arrayNameBase="HostGraphicsInfo" name="HostGraphicsInfo" type="tns:HostGraphicsInfo" type-id-ref="vim.host.GraphicsInfo"/>
      <needed-array-type arrayNameBase="ClusterRuleSpec" name="ClusterRuleSpec" type="tns:ClusterRuleSpec" type-id-ref="vim.cluster.RuleSpec"/>
      <needed-array-type arrayNameBase="VsanNewPolicyBatch" name="VsanNewPolicyBatch" type="tns:VsanNewPolicyBatch" type-id-ref="vim.host.VsanInternalSystem.NewPolicyBatch"/>
      <needed-array-type arrayNameBase="VmfsConfigOption" name="VmfsConfigOption" type="tns:VmfsConfigOption" type-id-ref="vim.host.VmfsVolume.ConfigOption"/>
      <needed-array-type arrayNameBase="DvsFilterConfig" name="DvsFilterConfig" type="tns:DvsFilterConfig" type-id-ref="vim.dvs.DistributedVirtualPort.FilterConfig"/>
      <needed-array-type arrayNameBase="DistributedVirtualPortgroupProblem" name="DistributedVirtualPortgroupProblem" type="tns:DistributedVirtualPortgroupProblem" type-id-ref="vim.dvs.DistributedVirtualPortgroup.Problem"/>
      <needed-array-type arrayNameBase="VirtualMachineDatastoreVolumeOption" name="VirtualMachineDatastoreVolumeOption" type="tns:VirtualMachineDatastoreVolumeOption" type-id-ref="vim.vm.DatastoreOption.FileSystemVolumeOption"/>
      <needed-array-type arrayNameBase="VirtualMachineParallelInfo" name="VirtualMachineParallelInfo" type="tns:VirtualMachineParallelInfo" type-id-ref="vim.vm.ParallelInfo"/>
      <needed-array-type arrayNameBase="HostVsanInternalSystemVsanPhysicalDiskDiagnosticsResult" name="HostVsanInternalSystemVsanPhysicalDiskDiagnosticsResult" type="tns:HostVsanInternalSystemVsanPhysicalDiskDiagnosticsResult" type-id-ref="vim.host.VsanInternalSystem.VsanPhysicalDiskDiagnosticsResult"/>
      <needed-array-type arrayNameBase="VirtualMachineScsiDiskDeviceInfo" name="VirtualMachineScsiDiskDeviceInfo" type="tns:VirtualMachineScsiDiskDeviceInfo" type-id-ref="vim.vm.ScsiDiskDeviceInfo"/>
      <needed-array-type arrayNameBase="ObjectContent" name="ObjectContent" type="tns:ObjectContent" type-id-ref="vmodl.query.PropertyCollector.ObjectContent"/>
      <needed-array-type arrayNameBase="HostPlugStoreTopologyPath" name="HostPlugStoreTopologyPath" type="tns:HostPlugStoreTopologyPath" type-id-ref="vim.host.PlugStoreTopology.Path"/>
      <needed-array-type arrayNameBase="ScsiLunDescriptor" name="ScsiLunDescriptor" type="tns:ScsiLunDescriptor" type-id-ref="vim.host.ScsiLun.Descriptor"/>
      <needed-array-type arrayNameBase="DvsHostInfrastructureTrafficResource" name="DvsHostInfrastructureTrafficResource" type="tns:DvsHostInfrastructureTrafficResource" type-id-ref="vim.DistributedVirtualSwitch.HostInfrastructureTrafficResource"/>
      <needed-array-type arrayNameBase="ClusterDasFailoverLevelAdvancedRuntimeInfoVmSlots" name="ClusterDasFailoverLevelAdvancedRuntimeInfoVmSlots" type="tns:ClusterDasFailoverLevelAdvancedRuntimeInfoVmSlots" type-id-ref="vim.cluster.DasFailoverLevelAdvancedRuntimeInfo.VmSlots"/>
      <needed-array-type arrayNameBase="HbrManagerVmReplicationCapability" name="HbrManagerVmReplicationCapability" type="tns:HbrManagerVmReplicationCapability" type-id-ref="vim.HbrManager.VmReplicationCapability"/>
      <needed-array-type arrayNameBase="NasStorageProfile" name="NasStorageProfile" type="tns:NasStorageProfile" type-id-ref="vim.profile.host.NasStorageProfile"/>
      <needed-array-type arrayNameBase="DatacenterMismatchArgument" name="DatacenterMismatchArgument" type="tns:DatacenterMismatchArgument" type-id-ref="vim.fault.DatacenterMismatch.Argument"/>
      <needed-array-type arrayNameBase="VirtualMachineFileLayoutDiskLayout" name="VirtualMachineFileLayoutDiskLayout" type="tns:VirtualMachineFileLayoutDiskLayout" type-id-ref="vim.vm.FileLayout.DiskLayout"/>
      <needed-array-type arrayNameBase="VAppPropertyInfo" name="VAppPropertyInfo" type="tns:VAppPropertyInfo" type-id-ref="vim.vApp.PropertyInfo"/>
      <needed-array-type arrayNameBase="SoftwarePackage" name="SoftwarePackage" type="tns:SoftwarePackage" type-id-ref="vim.host.SoftwarePackage"/>
      <needed-array-type arrayNameBase="GuestInfoVirtualDiskMapping" name="GuestInfoVirtualDiskMapping" type="tns:GuestInfoVirtualDiskMapping" type-id-ref="vim.vm.GuestInfo.VirtualDiskMapping"/>
      <needed-array-type arrayNameBase="NetIpConfigInfoIpAddress" name="NetIpConfigInfoIpAddress" type="tns:NetIpConfigInfoIpAddress" type-id-ref="vim.net.IpConfigInfo.IpAddress"/>
      <needed-array-type arrayNameBase="VirtualMachineDatastoreInfo" name="VirtualMachineDatastoreInfo" type="tns:VirtualMachineDatastoreInfo" type-id-ref="vim.vm.DatastoreInfo"/>
      <needed-array-type arrayNameBase="OvfFileItem" name="OvfFileItem" type="tns:OvfFileItem" type-id-ref="vim.OvfManager.FileItem"/>
      <needed-array-type arrayNameBase="DVSVmVnicNetworkResourcePool" name="DVSVmVnicNetworkResourcePool" type="tns:DVSVmVnicNetworkResourcePool" type-id-ref="vim.dvs.VmVnicNetworkResourcePool"/>
      <needed-array-type arrayNameBase="HostProxySwitchConfig" name="HostProxySwitchConfig" type="tns:HostProxySwitchConfig" type-id-ref="vim.host.HostProxySwitch.Config"/>
      <needed-array-type arrayNameBase="AnswerFileUpdateFailure" name="AnswerFileUpdateFailure" type="tns:AnswerFileUpdateFailure" type-id-ref="vim.fault.AnswerFileUpdateFailed.UpdateFailure"/>
      <needed-array-type arrayNameBase="KmipClusterInfo" name="KmipClusterInfo" type="tns:KmipClusterInfo" type-id-ref="vim.encryption.KmipClusterInfo"/>
      <needed-array-type arrayNameBase="HostProfileManagerCompositionResultResultElement" name="HostProfileManagerCompositionResultResultElement" type="tns:HostProfileManagerCompositionResultResultElement" type-id-ref="vim.profile.host.ProfileManager.CompositionResult.ResultElement"/>
      <needed-array-type arrayNameBase="HostVirtualNic" name="HostVirtualNic" type="tns:HostVirtualNic" type-id-ref="vim.host.VirtualNic"/>
      <needed-array-type arrayNameBase="PerformanceManagerCounterLevelMapping" name="PerformanceManagerCounterLevelMapping" type="tns:PerformanceManagerCounterLevelMapping" type-id-ref="vim.PerformanceManager.CounterLevelMapping"/>
      <needed-array-type arrayNameBase="ClusterComputeResourceHostVmkNicInfo" name="ClusterComputeResourceHostVmkNicInfo" type="tns:ClusterComputeResourceHostVmkNicInfo" type-id-ref="vim.ClusterComputeResource.HostVmkNicInfo"/>
      <needed-array-type arrayNameBase="StorageDrsPlacementRankVmSpec" name="StorageDrsPlacementRankVmSpec" type="tns:StorageDrsPlacementRankVmSpec" type-id-ref="vim.storageDrs.PlacementRankVmSpec"/>
      <needed-array-type arrayNameBase="DiskChangeExtent" name="DiskChangeExtent" type="tns:DiskChangeExtent" type-id-ref="vim.VirtualMachine.DiskChangeInfo.DiskChangeExtent"/>
      <needed-array-type arrayNameBase="VirtualMachineSerialInfo" name="VirtualMachineSerialInfo" type="tns:VirtualMachineSerialInfo" type-id-ref="vim.vm.SerialInfo"/>
      <needed-array-type arrayNameBase="VsanHostRuntimeInfoDiskIssue" name="VsanHostRuntimeInfoDiskIssue" type="tns:VsanHostRuntimeInfoDiskIssue" type-id-ref="vim.vsan.host.VsanRuntimeInfo.DiskIssue"/>
      <needed-array-type arrayNameBase="VMwareDvsLacpGroupSpec" name="VMwareDvsLacpGroupSpec" type="tns:VMwareDvsLacpGroupSpec" type-id-ref="vim.dvs.VmwareDistributedVirtualSwitch.LacpGroupSpec"/>
      <needed-array-type arrayNameBase="HostPnicNetworkResourceInfo" name="HostPnicNetworkResourceInfo" type="tns:HostPnicNetworkResourceInfo" type-id-ref="vim.host.RuntimeInfo.PnicNetworkResourceInfo"/>
      <needed-array-type arrayNameBase="ProfileExpressionMetadata" name="ProfileExpressionMetadata" type="tns:ProfileExpressionMetadata" type-id-ref="vim.profile.ExpressionMetadata"/>
      <needed-array-type arrayNameBase="ClusterAttemptedVmInfo" name="ClusterAttemptedVmInfo" type="tns:ClusterAttemptedVmInfo" type-id-ref="vim.cluster.AttemptedVmInfo"/>
      <needed-array-type arrayNameBase="HostLowLevelProvisioningManagerSnapshotLayoutSpec" name="HostLowLevelProvisioningManagerSnapshotLayoutSpec" type="tns:HostLowLevelProvisioningManagerSnapshotLayoutSpec" type-id-ref="vim.host.LowLevelProvisioningManager.SnapshotLayoutSpec"/>
      <needed-array-type arrayNameBase="ClusterDrsFaults" name="ClusterDrsFaults" type="tns:ClusterDrsFaults" type-id-ref="vim.cluster.DrsFaults"/>
      <needed-array-type arrayNameBase="VirtualMachinePciPassthroughInfo" name="VirtualMachinePciPassthroughInfo" type="tns:VirtualMachinePciPassthroughInfo" type-id-ref="vim.vm.PciPassthroughInfo"/>
      <needed-array-type arrayNameBase="HostNatService" name="HostNatService" type="tns:HostNatService" type-id-ref="vim.host.NatService"/>
      <needed-array-type arrayNameBase="HostMultipathInfoLogicalUnit" name="HostMultipathInfoLogicalUnit" type="tns:HostMultipathInfoLogicalUnit" type-id-ref="vim.host.MultipathInfo.LogicalUnit"/>
      <needed-array-type arrayNameBase="HostGraphicsConfigDeviceType" name="HostGraphicsConfigDeviceType" type="tns:HostGraphicsConfigDeviceType" type-id-ref="vim.host.GraphicsConfig.DeviceType"/>
      <needed-array-type arrayNameBase="PerfMetricId" name="PerfMetricId" type="tns:PerfMetricId" type-id-ref="vim.PerformanceManager.MetricId"/>
      <needed-array-type arrayNameBase="SystemEventInfo" name="SystemEventInfo" type="tns:SystemEventInfo" type-id-ref="vim.host.SystemEventInfo"/>
      <needed-array-type arrayNameBase="ClusterDrsRecommendation" name="ClusterDrsRecommendation" type="tns:ClusterDrsRecommendation" type-id-ref="vim.cluster.DrsRecommendation"/>
      <needed-array-type arrayNameBase="ClusterDrsVmConfigInfo" name="ClusterDrsVmConfigInfo" type="tns:ClusterDrsVmConfigInfo" type-id-ref="vim.cluster.DrsVmConfigInfo"/>
      <needed-array-type arrayNameBase="HostRdmaDevice" name="HostRdmaDevice" type="tns:HostRdmaDevice" type-id-ref="vim.host.RdmaDevice"/>
      <needed-array-type arrayNameBase="HostUnresolvedVmfsResolutionResult" name="HostUnresolvedVmfsResolutionResult" type="tns:HostUnresolvedVmfsResolutionResult" type-id-ref="vim.host.UnresolvedVmfsResolutionResult"/>
      <needed-array-type arrayNameBase="DatastoreMountPathDatastorePair" name="DatastoreMountPathDatastorePair" type="tns:DatastoreMountPathDatastorePair" type-id-ref="vim.Datastore.MountPathDatastorePair"/>
      <needed-array-type arrayNameBase="HostSnmpDestination" name="HostSnmpDestination" type="tns:HostSnmpDestination" type-id-ref="vim.host.SnmpSystem.SnmpConfigSpec.Destination"/>
      <needed-array-type arrayNameBase="LocalizableMessage" name="LocalizableMessage" type="tns:LocalizableMessage" type-id-ref="vmodl.LocalizableMessage"/>
      <needed-array-type arrayNameBase="AuthorizationRole" name="AuthorizationRole" type="tns:AuthorizationRole" type-id-ref="vim.AuthorizationManager.Role"/>
      <needed-array-type arrayNameBase="DistributedVirtualSwitchHostMemberConfigSpec" name="DistributedVirtualSwitchHostMemberConfigSpec" type="tns:DistributedVirtualSwitchHostMemberConfigSpec" type-id-ref="vim.dvs.HostMember.ConfigSpec"/>
      <needed-array-type arrayNameBase="DvsProfile" name="DvsProfile" type="tns:DvsProfile" type-id-ref="vim.profile.host.DvsProfile"/>
      <needed-array-type arrayNameBase="HostPlacedVirtualNicIdentifier" name="HostPlacedVirtualNicIdentifier" type="tns:HostPlacedVirtualNicIdentifier" type-id-ref="vim.host.RuntimeInfo.PlacedVirtualNicIdentifier"/>
      <needed-array-type arrayNameBase="DistributedVirtualSwitchHostMember" name="DistributedVirtualSwitchHostMember" type="tns:DistributedVirtualSwitchHostMember" type-id-ref="vim.dvs.HostMember"/>
      <needed-array-type arrayNameBase="HostDiskMappingPartitionOption" name="HostDiskMappingPartitionOption" type="tns:HostDiskMappingPartitionOption" type-id-ref="vim.vm.device.HostDiskMappingOption.PartitionOption"/>
      <needed-array-type arrayNameBase="EntityPrivilege" name="EntityPrivilege" type="tns:EntityPrivilege" type-id-ref="vim.AuthorizationManager.EntityPrivilege"/>
      <needed-array-type arrayNameBase="VsanHostConfigInfo" name="VsanHostConfigInfo" type="tns:VsanHostConfigInfo" type-id-ref="vim.vsan.host.ConfigInfo"/>
      <needed-array-type arrayNameBase="VirtualMachineConfigOptionDescriptor" name="VirtualMachineConfigOptionDescriptor" type="tns:VirtualMachineConfigOptionDescriptor" type-id-ref="vim.vm.ConfigOptionDescriptor"/>
      <needed-array-type arrayNameBase="HostProfileManagerCompositionValidationResultResultElement" name="HostProfileManagerCompositionValidationResultResultElement" type="tns:HostProfileManagerCompositionValidationResultResultElement" type-id-ref="vim.profile.host.ProfileManager.CompositionValidationResult.ResultElement"/>
      <needed-array-type arrayNameBase="VMwareDVSPvlanMapEntry" name="VMwareDVSPvlanMapEntry" type="tns:VMwareDVSPvlanMapEntry" type-id-ref="vim.dvs.VmwareDistributedVirtualSwitch.PvlanMapEntry"/>
      <needed-array-type arrayNameBase="ClusterDasAamNodeState" name="ClusterDasAamNodeState" type="tns:ClusterDasAamNodeState" type-id-ref="vim.cluster.DasAamNodeState"/>
      <needed-array-type arrayNameBase="VAppCloneSpecNetworkMappingPair" name="VAppCloneSpecNetworkMappingPair" type="tns:VAppCloneSpecNetworkMappingPair" type-id-ref="vim.vApp.CloneSpec.NetworkMappingPair"/>
      <needed-array-type arrayNameBase="HostProtocolEndpoint" name="HostProtocolEndpoint" type="tns:HostProtocolEndpoint" type-id-ref="vim.host.ProtocolEndpoint"/>
      <needed-array-type arrayNameBase="StorageRequirement" name="StorageRequirement" type="tns:StorageRequirement" type-id-ref="vim.VirtualMachine.StorageRequirement"/>
      <needed-array-type arrayNameBase="HostSslThumbprintInfo" name="HostSslThumbprintInfo" type="tns:HostSslThumbprintInfo" type-id-ref="vim.host.SslThumbprintInfo"/>
      <needed-array-type arrayNameBase="KmipServerInfo" name="KmipServerInfo" type="tns:KmipServerInfo" type-id-ref="vim.encryption.KmipServerInfo"/>
      <needed-array-type arrayNameBase="HostTpmDigestInfo" name="HostTpmDigestInfo" type="tns:HostTpmDigestInfo" type-id-ref="vim.host.TpmDigestInfo"/>
      <needed-array-type arrayNameBase="ClusterComputeResourceDvsProfile" name="ClusterComputeResourceDvsProfile" type="tns:ClusterComputeResourceDvsProfile" type-id-ref="vim.ClusterComputeResource.DvsProfile"/>
      <needed-array-type arrayNameBase="DatacenterBasicConnectInfo" name="DatacenterBasicConnectInfo" type="tns:DatacenterBasicConnectInfo" type-id-ref="vim.Datacenter.BasicConnectInfo"/>
      <needed-array-type arrayNameBase="PhysicalNicNameHint" name="PhysicalNicNameHint" type="tns:PhysicalNicNameHint" type-id-ref="vim.host.PhysicalNic.NetworkHint.NamedNetwork"/>
      <needed-array-type arrayNameBase="ProfilePolicyMetadata" name="ProfilePolicyMetadata" type="tns:ProfilePolicyMetadata" type-id-ref="vim.profile.PolicyMetadata"/>
      <needed-array-type arrayNameBase="HostAssignableHardwareBinding" name="HostAssignableHardwareBinding" type="tns:HostAssignableHardwareBinding" type-id-ref="vim.host.AssignableHardwareBinding"/>
      <needed-array-type arrayNameBase="UserProfile" name="UserProfile" type="tns:UserProfile" type-id-ref="vim.profile.host.UserProfile"/>
      <needed-array-type arrayNameBase="HostFeatureMask" name="HostFeatureMask" type="tns:HostFeatureMask" type-id-ref="vim.host.FeatureMask"/>
      <needed-array-type arrayNameBase="HostCacheConfigurationInfo" name="HostCacheConfigurationInfo" type="tns:HostCacheConfigurationInfo" type-id-ref="vim.host.CacheConfigurationManager.CacheConfigurationInfo"/>
      <needed-array-type arrayNameBase="MultipleCertificatesVerifyFaultThumbprintData" name="MultipleCertificatesVerifyFaultThumbprintData" type="tns:MultipleCertificatesVerifyFaultThumbprintData" type-id-ref="vim.fault.MultipleCertificatesVerifyFault.ThumbprintData"/>
      <needed-array-type arrayNameBase="ExtensionServerInfo" name="ExtensionServerInfo" type="tns:ExtensionServerInfo" type-id-ref="vim.Extension.ServerInfo"/>
      <needed-array-type arrayNameBase="ProfileDeferredPolicyOptionParameter" name="ProfileDeferredPolicyOptionParameter" type="tns:ProfileDeferredPolicyOptionParameter" type-id-ref="vim.profile.DeferredPolicyOptionParameter"/>
      <needed-array-type arrayNameBase="HostUnresolvedVmfsExtent" name="HostUnresolvedVmfsExtent" type="tns:HostUnresolvedVmfsExtent" type-id-ref="vim.host.UnresolvedVmfsExtent"/>
      <needed-array-type arrayNameBase="ClusterComputeResourceValidationResultBase" name="ClusterComputeResourceValidationResultBase" type="tns:ClusterComputeResourceValidationResultBase" type-id-ref="vim.ClusterComputeResource.ValidationResultBase"/>
      <needed-array-type arrayNameBase="LocalizationManagerMessageCatalog" name="LocalizationManagerMessageCatalog" type="tns:LocalizationManagerMessageCatalog" type-id-ref="vim.LocalizationManager.MessageCatalog"/>
      <needed-array-type arrayNameBase="ServiceConsolePortGroupProfile" name="ServiceConsolePortGroupProfile" type="tns:ServiceConsolePortGroupProfile" type-id-ref="vim.profile.host.ServiceConsolePortGroupProfile"/>
      <needed-array-type arrayNameBase="VirtualMachineFileLayoutExDiskUnit" name="VirtualMachineFileLayoutExDiskUnit" type="tns:VirtualMachineFileLayoutExDiskUnit" type-id-ref="vim.vm.FileLayoutEx.DiskUnit"/>
      <needed-array-type arrayNameBase="UpdateVirtualMachineFilesResultFailedVmFileInfo" name="UpdateVirtualMachineFilesResultFailedVmFileInfo" type="tns:UpdateVirtualMachineFilesResultFailedVmFileInfo" type-id-ref="vim.UpdateVirtualMachineFilesResult.FailedVmFileInfo"/>
      <needed-array-type arrayNameBase="IscsiPortInfo" name="IscsiPortInfo" type="tns:IscsiPortInfo" type-id-ref="vim.host.IscsiManager.IscsiPortInfo"/>
      <needed-array-type arrayNameBase="DvsHostVNicProfile" name="DvsHostVNicProfile" type="tns:DvsHostVNicProfile" type-id-ref="vim.profile.host.DvsHostVNicProfile"/>
      <needed-array-type arrayNameBase="PerfMetricSeries" name="PerfMetricSeries" type="tns:PerfMetricSeries" type-id-ref="vim.PerformanceManager.MetricSeries"/>
      <needed-array-type arrayNameBase="ClusterGroupInfo" name="ClusterGroupInfo" type="tns:ClusterGroupInfo" type-id-ref="vim.cluster.GroupInfo"/>
      <needed-array-type arrayNameBase="VsanHostDiskMapResult" name="VsanHostDiskMapResult" type="tns:VsanHostDiskMapResult" type-id-ref="vim.vsan.host.DiskMapResult"/>
      <needed-array-type arrayNameBase="HostMemberHealthCheckResult" name="HostMemberHealthCheckResult" type="tns:HostMemberHealthCheckResult" type-id-ref="vim.dvs.HostMember.HealthCheckResult"/>
      <needed-array-type arrayNameBase="HostPortGroupConfig" name="HostPortGroupConfig" type="tns:HostPortGroupConfig" type-id-ref="vim.host.PortGroup.Config"/>
      <needed-array-type arrayNameBase="HostScsiTopologyTarget" name="HostScsiTopologyTarget" type="tns:HostScsiTopologyTarget" type-id-ref="vim.host.ScsiTopology.Target"/>
      <needed-array-type arrayNameBase="MissingObject" name="MissingObject" type="tns:MissingObject" type-id-ref="vmodl.query.PropertyCollector.MissingObject"/>
      <needed-array-type arrayNameBase="PlacementAffinityRule" name="PlacementAffinityRule" type="tns:PlacementAffinityRule" type-id-ref="vim.storageDrs.PlacementAffinityRule"/>
      <needed-array-type arrayNameBase="ClusterAction" name="ClusterAction" type="tns:ClusterAction" type-id-ref="vim.cluster.Action"/>
      <needed-array-type arrayNameBase="HostCpuPackage" name="HostCpuPackage" type="tns:HostCpuPackage" type-id-ref="vim.host.CpuPackage"/>
      <needed-array-type arrayNameBase="FcoeConfigVlanRange" name="FcoeConfigVlanRange" type="tns:FcoeConfigVlanRange" type-id-ref="vim.host.FcoeConfig.VlanRange"/>
      <needed-array-type arrayNameBase="VirtualMachineUsageOnDatastore" name="VirtualMachineUsageOnDatastore" type="tns:VirtualMachineUsageOnDatastore" type-id-ref="vim.vm.StorageInfo.UsageOnDatastore"/>
      <needed-array-type arrayNameBase="OvfDeploymentOption" name="OvfDeploymentOption" type="tns:OvfDeploymentOption" type-id-ref="vim.OvfManager.DeploymentOption"/>
      <needed-array-type arrayNameBase="ProfilePolicyOptionMetadata" name="ProfilePolicyOptionMetadata" type="tns:ProfilePolicyOptionMetadata" type-id-ref="vim.profile.PolicyOptionMetadata"/>
      <needed-array-type arrayNameBase="ExtensionFaultTypeInfo" name="ExtensionFaultTypeInfo" type="tns:ExtensionFaultTypeInfo" type-id-ref="vim.Extension.FaultTypeInfo"/>
      <needed-array-type arrayNameBase="DistributedVirtualSwitchHostProductSpec" name="DistributedVirtualSwitchHostProductSpec" type="tns:DistributedVirtualSwitchHostProductSpec" type-id-ref="vim.dvs.HostProductSpec"/>
      <needed-array-type arrayNameBase="ExtensionPrivilegeInfo" name="ExtensionPrivilegeInfo" type="tns:ExtensionPrivilegeInfo" type-id-ref="vim.Extension.PrivilegeInfo"/>
      <needed-array-type arrayNameBase="HttpNfcLeaseSourceFile" name="HttpNfcLeaseSourceFile" type="tns:HttpNfcLeaseSourceFile" type-id-ref="vim.HttpNfcLease.SourceFile"/>
      <needed-array-type arrayNameBase="HostFirewallRulesetIpNetwork" name="HostFirewallRulesetIpNetwork" type="tns:HostFirewallRulesetIpNetwork" type-id-ref="vim.host.Ruleset.IpNetwork"/>
      <needed-array-type arrayNameBase="ClusterDasFailoverLevelAdvancedRuntimeInfoHostSlots" name="ClusterDasFailoverLevelAdvancedRuntimeInfoHostSlots" type="tns:ClusterDasFailoverLevelAdvancedRuntimeInfoHostSlots" type-id-ref="vim.cluster.DasFailoverLevelAdvancedRuntimeInfo.HostSlots"/>
      <needed-array-type arrayNameBase="HostHardwareElementInfo" name="HostHardwareElementInfo" type="tns:HostHardwareElementInfo" type-id-ref="vim.host.HardwareStatusInfo.HardwareElementInfo"/>
      <needed-array-type arrayNameBase="HostPortGroup" name="HostPortGroup" type="tns:HostPortGroup" type-id-ref="vim.host.PortGroup"/>
      <needed-array-type arrayNameBase="FolderFailedHostResult" name="FolderFailedHostResult" type="tns:FolderFailedHostResult" type-id-ref="vim.Folder.FailedHostResult"/>
      <needed-array-type arrayNameBase="HostProxySwitch" name="HostProxySwitch" type="tns:HostProxySwitch" type-id-ref="vim.host.HostProxySwitch"/>
      <needed-array-type arrayNameBase="ProfilePropertyPath" name="ProfilePropertyPath" type="tns:ProfilePropertyPath" type-id-ref="vim.profile.ProfilePropertyPath"/>
      <needed-array-type arrayNameBase="ServiceProfile" name="ServiceProfile" type="tns:ServiceProfile" type-id-ref="vim.profile.host.ServiceProfile"/>
      <needed-array-type arrayNameBase="VirtualMachineUsbInfo" name="VirtualMachineUsbInfo" type="tns:VirtualMachineUsbInfo" type-id-ref="vim.vm.UsbInfo"/>
      <needed-array-type arrayNameBase="NvdimmInterleaveSetInfo" name="NvdimmInterleaveSetInfo" type="tns:NvdimmInterleaveSetInfo" type-id-ref="vim.host.NvdimmSystem.InterleaveSetInfo"/>
      <needed-array-type arrayNameBase="VirtualMachineBootOptionsBootableDevice" name="VirtualMachineBootOptionsBootableDevice" type="tns:VirtualMachineBootOptionsBootableDevice" type-id-ref="vim.vm.BootOptions.BootableDevice"/>
      <needed-array-type arrayNameBase="HostScsiTopologyInterface" name="HostScsiTopologyInterface" type="tns:HostScsiTopologyInterface" type-id-ref="vim.host.ScsiTopology.Interface"/>
      <needed-array-type arrayNameBase="OvfConsumerOvfSection" name="OvfConsumerOvfSection" type="tns:OvfConsumerOvfSection" type-id-ref="vim.OvfConsumer.OvfSection"/>
      <needed-array-type arrayNameBase="VirtualDeviceBackingOption" name="VirtualDeviceBackingOption" type="tns:VirtualDeviceBackingOption" type-id-ref="vim.vm.device.VirtualDeviceOption.BackingOption"/>
      <needed-array-type arrayNameBase="ClusterDpmHostConfigInfo" name="ClusterDpmHostConfigInfo" type="tns:ClusterDpmHostConfigInfo" type-id-ref="vim.cluster.DpmHostConfigInfo"/>
      <needed-array-type arrayNameBase="DvsApplyOperationFaultFaultOnObject" name="DvsApplyOperationFaultFaultOnObject" type="tns:DvsApplyOperationFaultFaultOnObject" type-id-ref="vim.fault.DvsApplyOperationFault.FaultOnObject"/>
      <needed-array-type arrayNameBase="EnumDescription" name="EnumDescription" type="tns:EnumDescription" type-id-ref="vim.EnumDescription"/>
      <needed-array-type arrayNameBase="DvsVnicAllocatedResource" name="DvsVnicAllocatedResource" type="tns:DvsVnicAllocatedResource" type-id-ref="vim.dvs.VmVnicNetworkResourcePool.VnicAllocatedResource"/>
      <needed-array-type arrayNameBase="DistributedVirtualPort" name="DistributedVirtualPort" type="tns:DistributedVirtualPort" type-id-ref="vim.dvs.DistributedVirtualPort"/>
      <needed-array-type arrayNameBase="FaultsByVM" name="FaultsByVM" type="tns:FaultsByVM" type-id-ref="vim.FaultsByVM"/>
      <needed-array-type arrayNameBase="HostSubSpecification" name="HostSubSpecification" type="tns:HostSubSpecification" type-id-ref="vim.profile.host.HostSubSpecification"/>
      <needed-array-type arrayNameBase="ClusterDasVmConfigSpec" name="ClusterDasVmConfigSpec" type="tns:ClusterDasVmConfigSpec" type-id-ref="vim.cluster.DasVmConfigSpec"/>
      <needed-array-type arrayNameBase="ClusterDrsVmConfigSpec" name="ClusterDrsVmConfigSpec" type="tns:ClusterDrsVmConfigSpec" type-id-ref="vim.cluster.DrsVmConfigSpec"/>
      <needed-array-type arrayNameBase="AlarmExpression" name="AlarmExpression" type="tns:AlarmExpression" type-id-ref="vim.alarm.AlarmExpression"/>
      <needed-array-type arrayNameBase="HostAccessControlEntry" name="HostAccessControlEntry" type="tns:HostAccessControlEntry" type-id-ref="vim.host.HostAccessManager.AccessEntry"/>
      <needed-array-type arrayNameBase="HostDatastoreConnectInfo" name="HostDatastoreConnectInfo" type="tns:HostDatastoreConnectInfo" type-id-ref="vim.host.ConnectInfo.DatastoreInfo"/>
      <needed-array-type arrayNameBase="HostBootDevice" name="HostBootDevice" type="tns:HostBootDevice" type-id-ref="vim.host.BootDeviceSystem.BootDevice"/>
      <needed-array-type arrayNameBase="ProfileApplyProfileProperty" name="ProfileApplyProfileProperty" type="tns:ProfileApplyProfileProperty" type-id-ref="vim.profile.ApplyProfileProperty"/>
      <needed-array-type arrayNameBase="HostDiagnosticPartition" name="HostDiagnosticPartition" type="tns:HostDiagnosticPartition" type-id-ref="vim.host.DiagnosticPartition"/>
      <needed-array-type arrayNameBase="HostSystemResourceInfo" name="HostSystemResourceInfo" type="tns:HostSystemResourceInfo" type-id-ref="vim.host.SystemResourceInfo"/>
      <needed-array-type arrayNameBase="PropertySpec" name="PropertySpec" type="tns:PropertySpec" type-id-ref="vmodl.query.PropertyCollector.PropertySpec"/>
      <needed-array-type arrayNameBase="UsbScanCodeSpecKeyEvent" name="UsbScanCodeSpecKeyEvent" type="tns:UsbScanCodeSpecKeyEvent" type-id-ref="vim.vm.UsbScanCodeSpec.KeyEvent"/>
      <needed-array-type arrayNameBase="EntityBackupConfig" name="EntityBackupConfig" type="tns:EntityBackupConfig" type-id-ref="vim.dvs.EntityBackup.Config"/>
      <needed-array-type arrayNameBase="HttpNfcLeaseDatastoreLeaseInfo" name="HttpNfcLeaseDatastoreLeaseInfo" type="tns:HttpNfcLeaseDatastoreLeaseInfo" type-id-ref="vim.HttpNfcLease.DatastoreLeaseInfo"/>
      <needed-array-type arrayNameBase="ProfileExpression" name="ProfileExpression" type="tns:ProfileExpression" type-id-ref="vim.profile.Expression"/>
      <needed-array-type arrayNameBase="DVSNetworkResourcePoolConfigSpec" name="DVSNetworkResourcePoolConfigSpec" type="tns:DVSNetworkResourcePoolConfigSpec" type-id-ref="vim.dvs.NetworkResourcePool.ConfigSpec"/>
      <needed-array-type arrayNameBase="StorageDrsOptionSpec" name="StorageDrsOptionSpec" type="tns:StorageDrsOptionSpec" type-id-ref="vim.storageDrs.OptionSpec"/>
      <needed-array-type arrayNameBase="VirtualMachineSnapshotTree" name="VirtualMachineSnapshotTree" type="tns:VirtualMachineSnapshotTree" type-id-ref="vim.vm.SnapshotTree"/>
      <needed-array-type arrayNameBase="CryptoManagerKmipCryptoKeyStatus" name="CryptoManagerKmipCryptoKeyStatus" type="tns:CryptoManagerKmipCryptoKeyStatus" type-id-ref="vim.encryption.CryptoManagerKmip.CryptoKeyStatus"/>
      <needed-array-type arrayNameBase="StorageDrsVmConfigInfo" name="StorageDrsVmConfigInfo" type="tns:StorageDrsVmConfigInfo" type-id-ref="vim.storageDrs.VmConfigInfo"/>
      <needed-array-type arrayNameBase="StaticRouteProfile" name="StaticRouteProfile" type="tns:StaticRouteProfile" type-id-ref="vim.profile.host.StaticRouteProfile"/>
      <needed-array-type arrayNameBase="ProfileProfileStructureProperty" name="ProfileProfileStructureProperty" type="tns:ProfileProfileStructureProperty" type-id-ref="vim.profile.ProfileStructureProperty"/>
      <needed-array-type arrayNameBase="PolicyOption" name="PolicyOption" type="tns:PolicyOption" type-id-ref="vim.profile.PolicyOption"/>
      <needed-array-type arrayNameBase="VVolHostPE" name="VVolHostPE" type="tns:VVolHostPE" type-id-ref="vim.host.VvolVolume.HostProtocolEndpoint"/>
      <needed-array-type arrayNameBase="VirtualMachineMessage" name="VirtualMachineMessage" type="tns:VirtualMachineMessage" type-id-ref="vim.vm.Message"/>
      <needed-array-type arrayNameBase="ServiceManagerServiceInfo" name="ServiceManagerServiceInfo" type="tns:ServiceManagerServiceInfo" type-id-ref="vim.ServiceManager.ServiceInfo"/>
      <needed-array-type arrayNameBase="ImportOperationBulkFaultFaultOnImport" name="ImportOperationBulkFaultFaultOnImport" type="tns:ImportOperationBulkFaultFaultOnImport" type-id-ref="vim.fault.ImportOperationBulkFault.FaultOnImport"/>
      <needed-array-type arrayNameBase="StructuredCustomizations" name="StructuredCustomizations" type="tns:StructuredCustomizations" type-id-ref="vim.profile.host.ProfileManager.StructuredCustomizations"/>
      <needed-array-type arrayNameBase="EventDescriptionEventDetail" name="EventDescriptionEventDetail" type="tns:EventDescriptionEventDetail" type-id-ref="vim.event.EventDescription.EventDetail"/>
      <needed-array-type arrayNameBase="NetStackInstanceProfile" name="NetStackInstanceProfile" type="tns:NetStackInstanceProfile" type-id-ref="vim.profile.host.NetStackInstanceProfile"/>
      <needed-array-type arrayNameBase="ServiceLocator" name="ServiceLocator" type="tns:ServiceLocator" type-id-ref="vim.ServiceLocator"/>
      <needed-array-type arrayNameBase="HostAuthenticationStoreInfo" name="HostAuthenticationStoreInfo" type="tns:HostAuthenticationStoreInfo" type-id-ref="vim.host.AuthenticationStoreInfo"/>
      <needed-array-type arrayNameBase="HostUnresolvedVmfsVolume" name="HostUnresolvedVmfsVolume" type="tns:HostUnresolvedVmfsVolume" type-id-ref="vim.host.UnresolvedVmfsVolume"/>
      <needed-array-type arrayNameBase="VirtualDiskDeltaDiskFormatsSupported" name="VirtualDiskDeltaDiskFormatsSupported" type="tns:VirtualDiskDeltaDiskFormatsSupported" type-id-ref="vim.vm.device.VirtualDiskOption.DeltaDiskFormatsSupported"/>
      <needed-array-type arrayNameBase="GuestDiskInfo" name="GuestDiskInfo" type="tns:GuestDiskInfo" type-id-ref="vim.vm.GuestInfo.DiskInfo"/>
      <needed-array-type arrayNameBase="VnicPortArgument" name="VnicPortArgument" type="tns:VnicPortArgument" type-id-ref="vim.event.VnicPortArgument"/>
      <needed-array-type arrayNameBase="HostPlugStoreTopologyAdapter" name="HostPlugStoreTopologyAdapter" type="tns:HostPlugStoreTopologyAdapter" type-id-ref="vim.host.PlugStoreTopology.Adapter"/>
      <needed-array-type arrayNameBase="AlarmState" name="AlarmState" type="tns:AlarmState" type-id-ref="vim.alarm.AlarmState"/>
      <needed-array-type arrayNameBase="DvsOperationBulkFaultFaultOnHost" name="DvsOperationBulkFaultFaultOnHost" type="tns:DvsOperationBulkFaultFaultOnHost" type-id-ref="vim.fault.DvsOperationBulkFault.FaultOnHost"/>
      <needed-array-type arrayNameBase="VirtualMachineRelocateSpecDiskLocator" name="VirtualMachineRelocateSpecDiskLocator" type="tns:VirtualMachineRelocateSpecDiskLocator" type-id-ref="vim.vm.RelocateSpec.DiskLocator"/>
      <needed-array-type arrayNameBase="SelectionSet" name="SelectionSet" type="tns:SelectionSet" type-id-ref="vim.SelectionSet"/>
      <needed-array-type arrayNameBase="VsanHostDiskMapInfo" name="VsanHostDiskMapInfo" type="tns:VsanHostDiskMapInfo" type-id-ref="vim.vsan.host.DiskMapInfo"/>
      <needed-array-type arrayNameBase="OptionDef" name="OptionDef" type="tns:OptionDef" type-id-ref="vim.option.OptionDef"/>
      <needed-array-type arrayNameBase="VirtualMachineDynamicPassthroughInfo" name="VirtualMachineDynamicPassthroughInfo" type="tns:VirtualMachineDynamicPassthroughInfo" type-id-ref="vim.vm.DynamicPassthroughInfo"/>
      <needed-array-type arrayNameBase="VMwareDVSPvlanConfigSpec" name="VMwareDVSPvlanConfigSpec" type="tns:VMwareDVSPvlanConfigSpec" type-id-ref="vim.dvs.VmwareDistributedVirtualSwitch.PvlanConfigSpec"/>
      <needed-array-type arrayNameBase="VirtualMachineConfigSpec" name="VirtualMachineConfigSpec" type="tns:VirtualMachineConfigSpec" type-id-ref="vim.vm.ConfigSpec"/>
      <needed-array-type arrayNameBase="DistributedVirtualSwitchHostMemberTransportZoneInfo" name="DistributedVirtualSwitchHostMemberTransportZoneInfo" type="tns:DistributedVirtualSwitchHostMemberTransportZoneInfo" type-id-ref="vim.dvs.HostMember.TransportZoneInfo"/>
      <needed-array-type arrayNameBase="AnswerFileStatusResult" name="AnswerFileStatusResult" type="tns:AnswerFileStatusResult" type-id-ref="vim.profile.host.AnswerFileStatusResult"/>
      <needed-array-type arrayNameBase="ProductComponentInfo" name="ProductComponentInfo" type="tns:ProductComponentInfo" type-id-ref="vim.ServiceInstance.ProductComponentInfo"/>
      <needed-array-type arrayNameBase="HostNatServiceConfig" name="HostNatServiceConfig" type="tns:HostNatServiceConfig" type-id-ref="vim.host.NatService.Config"/>
      <needed-array-type arrayNameBase="NetIpStackInfoDefaultRouter" name="NetIpStackInfoDefaultRouter" type="tns:NetIpStackInfoDefaultRouter" type-id-ref="vim.net.IpStackInfo.DefaultRouter"/>
      <needed-array-type arrayNameBase="HostVMotionCompatibility" name="HostVMotionCompatibility" type="tns:HostVMotionCompatibility" type-id-ref="vim.ServiceInstance.HostVMotionCompatibility"/>
      <needed-array-type arrayNameBase="HostInternetScsiHbaSendTarget" name="HostInternetScsiHbaSendTarget" type="tns:HostInternetScsiHbaSendTarget" type-id-ref="vim.host.InternetScsiHba.SendTarget"/>
      <needed-array-type arrayNameBase="VimVasaProviderStatePerArray" name="VimVasaProviderStatePerArray" type="tns:VimVasaProviderStatePerArray" type-id-ref="vim.VimVasaProvider.StatePerArray"/>
      <needed-array-type arrayNameBase="CustomFieldDef" name="CustomFieldDef" type="tns:CustomFieldDef" type-id-ref="vim.CustomFieldsManager.FieldDef"/>
      <needed-array-type arrayNameBase="VAppOvfSectionInfo" name="VAppOvfSectionInfo" type="tns:VAppOvfSectionInfo" type-id-ref="vim.vApp.OvfSectionInfo"/>
      <needed-array-type arrayNameBase="PlacementSpec" name="PlacementSpec" type="tns:PlacementSpec" type-id-ref="vim.cluster.PlacementSpec"/>
      <needed-array-type arrayNameBase="HostScsiDisk" name="HostScsiDisk" type="tns:HostScsiDisk" type-id-ref="vim.host.ScsiDisk"/>
      <needed-array-type arrayNameBase="FileInfo" name="FileInfo" type="tns:FileInfo" type-id-ref="vim.host.DatastoreBrowser.FileInfo"/>
      <needed-array-type arrayNameBase="ComplianceLocator" name="ComplianceLocator" type="tns:ComplianceLocator" type-id-ref="vim.profile.ComplianceLocator"/>
      <needed-array-type arrayNameBase="HostLowLevelProvisioningManagerDiskLayoutSpec" name="HostLowLevelProvisioningManagerDiskLayoutSpec" type="tns:HostLowLevelProvisioningManagerDiskLayoutSpec" type-id-ref="vim.host.LowLevelProvisioningManager.DiskLayoutSpec"/>
      <needed-array-type arrayNameBase="ExtensionEventTypeInfo" name="ExtensionEventTypeInfo" type="tns:ExtensionEventTypeInfo" type-id-ref="vim.Extension.EventTypeInfo"/>
      <needed-array-type arrayNameBase="VslmTagEntry" name="VslmTagEntry" type="tns:VslmTagEntry" type-id-ref="vim.vslm.TagEntry"/>
      <needed-array-type arrayNameBase="HostPlugStoreTopologyDevice" name="HostPlugStoreTopologyDevice" type="tns:HostPlugStoreTopologyDevice" type-id-ref="vim.host.PlugStoreTopology.Device"/>
      <needed-array-type arrayNameBase="FileQuery" name="FileQuery" type="tns:FileQuery" type-id-ref="vim.host.DatastoreBrowser.Query"/>
      <needed-array-type arrayNameBase="PerfQuerySpec" name="PerfQuerySpec" type="tns:PerfQuerySpec" type-id-ref="vim.PerformanceManager.QuerySpec"/>
      <needed-array-type arrayNameBase="HostPciPassthruInfo" name="HostPciPassthruInfo" type="tns:HostPciPassthruInfo" type-id-ref="vim.host.PciPassthruInfo"/>
      <needed-array-type arrayNameBase="MissingProperty" name="MissingProperty" type="tns:MissingProperty" type-id-ref="vmodl.query.PropertyCollector.MissingProperty"/>
      <needed-array-type arrayNameBase="HostAccountSpec" name="HostAccountSpec" type="tns:HostAccountSpec" type-id-ref="vim.host.LocalAccountManager.AccountSpecification"/>
      <needed-array-type arrayNameBase="FaultsByHost" name="FaultsByHost" type="tns:FaultsByHost" type-id-ref="vim.FaultsByHost"/>
      <needed-array-type arrayNameBase="ImportSpec" name="ImportSpec" type="tns:ImportSpec" type-id-ref="vim.ImportSpec"/>
      <needed-array-type arrayNameBase="VirtualMachineSoundInfo" name="VirtualMachineSoundInfo" type="tns:VirtualMachineSoundInfo" type-id-ref="vim.vm.SoundInfo"/>
      <needed-array-type arrayNameBase="ExtensionManagerIpAllocationUsage" name="ExtensionManagerIpAllocationUsage" type="tns:ExtensionManagerIpAllocationUsage" type-id-ref="vim.ExtensionManager.IpAllocationUsage"/>
      <needed-array-type arrayNameBase="ObjectUpdate" name="ObjectUpdate" type="tns:ObjectUpdate" type-id-ref="vmodl.query.PropertyCollector.ObjectUpdate"/>
      <needed-array-type arrayNameBase="HostDiskPartitionBlockRange" name="HostDiskPartitionBlockRange" type="tns:HostDiskPartitionBlockRange" type-id-ref="vim.host.DiskPartitionInfo.BlockRange"/>
      <needed-array-type arrayNameBase="VirtualMachineSriovInfo" name="VirtualMachineSriovInfo" type="tns:VirtualMachineSriovInfo" type-id-ref="vim.vm.SriovInfo"/>
      <needed-array-type arrayNameBase="ProfileExecuteError" name="ProfileExecuteError" type="tns:ProfileExecuteError" type-id-ref="vim.profile.host.ExecuteResult.ExecuteError"/>
      <needed-array-type arrayNameBase="PropertyFilterSpec" name="PropertyFilterSpec" type="tns:PropertyFilterSpec" type-id-ref="vmodl.query.PropertyCollector.FilterSpec"/>
      <needed-array-type arrayNameBase="ManagedEntityStatus" name="ManagedEntityStatus" type="tns:ManagedEntityStatus" type-id-ref="vim.ManagedEntity.Status"/>
      <needed-array-type arrayNameBase="VirtualSCSISharing" name="VirtualSCSISharing" type="tns:VirtualSCSISharing" type-id-ref="vim.vm.device.VirtualSCSIController.Sharing"/>
      <needed-array-type arrayNameBase="TaskInfoState" name="TaskInfoState" type="tns:TaskInfoState" type-id-ref="vim.TaskInfo.State"/>
      <needed-array-type arrayNameBase="Boolean" name="boolean" type="xsd:boolean"/>
      <needed-array-type arrayNameBase="Byte" name="byte" type="xsd:byte"/>
      <needed-array-type arrayNameBase="Short" name="short" type="xsd:short"/>
      <needed-array-type arrayNameBase="Int" name="int" type="xsd:int"/>
      <needed-array-type arrayNameBase="Long" name="long" type="xsd:long"/>
      <needed-array-type arrayNameBase="Double" name="double" type="xsd:double"/>
      <needed-array-type arrayNameBase="AnyType" name="anytype" type="xsd:anyType"/>
      <needed-array-type arrayNameBase="AnyURI" name="anyURI" type="xsd:anyURI"/>
      <needed-array-type arrayNameBase="Base64Binary" name="base64Binary" type="xsd:base64Binary"/>
      <needed-array-type arrayNameBase="ManagedObjectReference" name="ManagedObjectReference" type="tns:ManagedObjectReference"/>
      <needed-array-type arrayNameBase="String" name="string" type="xsd:string"/>
   </needed-array-types>
   <enums>
   <enum name="ProfileParameterMetadataRelationType"
      type-id="vim.profile.ParameterMetadata.RelationType"
      vmodl-name="vim.profile.ParameterMetadata.RelationType"
      enclosing-type-id-ref="vim.profile.ParameterMetadata"
      version-id-ref="vim.version.version12"
      >
      <description-html>
         <![CDATA[The relation type to be supported.]]>
      </description-html>
   <value name="dynamic_relation" vmodl-name="dynamic_relation">
   </value>
   <value name="extensible_relation" vmodl-name="extensible_relation">
   </value>
   <value name="localizable_relation" vmodl-name="localizable_relation">
   </value>
   <value name="static_relation" vmodl-name="static_relation">
   </value>
   <value name="validation_relation" vmodl-name="validation_relation">
   </value>
   </enum>
   <enum name="HostTpmAttestationInfoAcceptanceStatus"
      type-id="vim.host.TpmAttestationInfo.AcceptanceStatus"
      vmodl-name="vim.host.TpmAttestationInfo.AcceptanceStatus"
      enclosing-type-id-ref="vim.host.TpmAttestationInfo"
      version-id-ref="vim.version.version12"
      >
      <description-html>
         <![CDATA[Status constants of TPM attestation.]]>
      </description-html>
   <value name="notAccepted" vmodl-name="notAccepted">
   </value>
   <value name="accepted" vmodl-name="accepted">
   </value>
   </enum>
   <enum name="VchaNodeRole"
      type-id="vim.vcha.FailoverClusterManager.VchaNodeRole"
      vmodl-name="vim.vcha.FailoverClusterManager.VchaNodeRole"
      enclosing-type-id-ref="vim.vcha.FailoverClusterManager"
      version-id-ref="vim.version.version11"
      >
   <value name="active" vmodl-name="active">
   </value>
   <value name="passive" vmodl-name="passive">
   </value>
   <value name="witness" vmodl-name="witness">
   </value>
   </enum>
   <enum name="CannotEnableVmcpForClusterReason"
      type-id="vim.fault.CannotEnableVmcpForCluster.Reason"
      vmodl-name="vim.fault.CannotEnableVmcpForCluster.Reason"
      enclosing-type-id-ref="vim.fault.CannotEnableVmcpForCluster"
      version-id-ref="vim.version.version10"
      >
   <value name="APDTimeoutDisabled" vmodl-name="APDTimeoutDisabled">
   </value>
   </enum>
   <enum name="VirtualMachineVideoCardUse3dRenderer"
      type-id="vim.vm.device.VirtualVideoCard.Use3dRenderer"
      vmodl-name="vim.vm.device.VirtualVideoCard.Use3dRenderer"
      enclosing-type-id-ref="vim.vm.device.VirtualVideoCard"
      version-id-ref="vim.version.version8"
      >
      <description-html>
         <![CDATA[Set of possible values for <a href="vim.vm.device.VirtualVideoCard.html#use3dRenderer">use3dRenderer</a>.]]>
      </description-html>
   <value name="automatic" vmodl-name="automatic">
   </value>
   <value name="software" vmodl-name="software">
   </value>
   <value name="hardware" vmodl-name="hardware">
   </value>
   </enum>
   <enum name="VirtualMachineGuestOsIdentifier"
      type-id="vim.vm.GuestOsDescriptor.GuestOsIdentifier"
      vmodl-name="vim.vm.GuestOsDescriptor.GuestOsIdentifier"
      enclosing-type-id-ref="vim.vm.GuestOsDescriptor"
      version-id-ref="vim.version.version1"
      >
      <description-html>
         <![CDATA[Guest operating system identifier.]]>
      </description-html>
   <value name="dosGuest" vmodl-name="dosGuest">
   </value>
   <value name="win31Guest" vmodl-name="win31Guest">
   </value>
   <value name="win95Guest" vmodl-name="win95Guest">
   </value>
   <value name="win98Guest" vmodl-name="win98Guest">
   </value>
   <value name="winMeGuest" vmodl-name="winMeGuest">
   </value>
   <value name="winNTGuest" vmodl-name="winNTGuest">
   </value>
   <value name="win2000ProGuest" vmodl-name="win2000ProGuest">
   </value>
   <value name="win2000ServGuest" vmodl-name="win2000ServGuest">
   </value>
   <value name="win2000AdvServGuest" vmodl-name="win2000AdvServGuest">
   </value>
   <value name="winXPHomeGuest" vmodl-name="winXPHomeGuest">
   </value>
   <value name="winXPProGuest" vmodl-name="winXPProGuest">
   </value>
   <value name="winXPPro64Guest" vmodl-name="winXPPro64Guest">
   </value>
   <value name="winNetWebGuest" vmodl-name="winNetWebGuest">
   </value>
   <value name="winNetStandardGuest" vmodl-name="winNetStandardGuest">
   </value>
   <value name="winNetEnterpriseGuest" vmodl-name="winNetEnterpriseGuest">
   </value>
   <value name="winNetDatacenterGuest" vmodl-name="winNetDatacenterGuest" version-id-ref="winNetDatacenterGuest">
   </value>
   <value name="winNetBusinessGuest" vmodl-name="winNetBusinessGuest">
   </value>
   <value name="winNetStandard64Guest" vmodl-name="winNetStandard64Guest">
   </value>
   <value name="winNetEnterprise64Guest" vmodl-name="winNetEnterprise64Guest">
   </value>
   <value name="winLonghornGuest" vmodl-name="winLonghornGuest" version-id-ref="winLonghornGuest">
   </value>
   <value name="winLonghorn64Guest" vmodl-name="winLonghorn64Guest" version-id-ref="winLonghorn64Guest">
   </value>
   <value name="winNetDatacenter64Guest" vmodl-name="winNetDatacenter64Guest" version-id-ref="winNetDatacenter64Guest">
   </value>
   <value name="winVistaGuest" vmodl-name="winVistaGuest">
   </value>
   <value name="winVista64Guest" vmodl-name="winVista64Guest">
   </value>
   <value name="windows7Guest" vmodl-name="windows7Guest" version-id-ref="windows7Guest">
   </value>
   <value name="windows7_64Guest" vmodl-name="windows7_64Guest" version-id-ref="windows7_64Guest">
   </value>
   <value name="windows7Server64Guest" vmodl-name="windows7Server64Guest" version-id-ref="windows7Server64Guest">
   </value>
   <value name="windows8Guest" vmodl-name="windows8Guest" version-id-ref="windows8Guest">
   </value>
   <value name="windows8_64Guest" vmodl-name="windows8_64Guest" version-id-ref="windows8_64Guest">
   </value>
   <value name="windows8Server64Guest" vmodl-name="windows8Server64Guest" version-id-ref="windows8Server64Guest">
   </value>
   <value name="windows9Guest" vmodl-name="windows9Guest" version-id-ref="windows9Guest">
   </value>
   <value name="windows9_64Guest" vmodl-name="windows9_64Guest" version-id-ref="windows9_64Guest">
   </value>
   <value name="windows9Server64Guest" vmodl-name="windows9Server64Guest" version-id-ref="windows9Server64Guest">
   </value>
   <value name="windowsHyperVGuest" vmodl-name="windowsHyperVGuest" version-id-ref="windowsHyperVGuest">
   </value>
   <value name="windows2019srv_64Guest" vmodl-name="windows2019srv_64Guest" version-id-ref="windows2019srv_64Guest">
   </value>
   <value name="freebsdGuest" vmodl-name="freebsdGuest">
   </value>
   <value name="freebsd64Guest" vmodl-name="freebsd64Guest">
   </value>
   <value name="freebsd11Guest" vmodl-name="freebsd11Guest" version-id-ref="freebsd11Guest">
   </value>
   <value name="freebsd11_64Guest" vmodl-name="freebsd11_64Guest" version-id-ref="freebsd11_64Guest">
   </value>
   <value name="freebsd12Guest" vmodl-name="freebsd12Guest" version-id-ref="freebsd12Guest">
   </value>
   <value name="freebsd12_64Guest" vmodl-name="freebsd12_64Guest" version-id-ref="freebsd12_64Guest">
   </value>
   <value name="redhatGuest" vmodl-name="redhatGuest">
   </value>
   <value name="rhel2Guest" vmodl-name="rhel2Guest">
   </value>
   <value name="rhel3Guest" vmodl-name="rhel3Guest">
   </value>
   <value name="rhel3_64Guest" vmodl-name="rhel3_64Guest">
   </value>
   <value name="rhel4Guest" vmodl-name="rhel4Guest">
   </value>
   <value name="rhel4_64Guest" vmodl-name="rhel4_64Guest">
   </value>
   <value name="rhel5Guest" vmodl-name="rhel5Guest" version-id-ref="rhel5Guest">
   </value>
   <value name="rhel5_64Guest" vmodl-name="rhel5_64Guest" version-id-ref="rhel5_64Guest">
   </value>
   <value name="rhel6Guest" vmodl-name="rhel6Guest" version-id-ref="rhel6Guest">
   </value>
   <value name="rhel6_64Guest" vmodl-name="rhel6_64Guest" version-id-ref="rhel6_64Guest">
   </value>
   <value name="rhel7Guest" vmodl-name="rhel7Guest" version-id-ref="rhel7Guest">
   </value>
   <value name="rhel7_64Guest" vmodl-name="rhel7_64Guest" version-id-ref="rhel7_64Guest">
   </value>
   <value name="rhel8_64Guest" vmodl-name="rhel8_64Guest" version-id-ref="rhel8_64Guest">
   </value>
   <value name="centosGuest" vmodl-name="centosGuest" version-id-ref="centosGuest">
   </value>
   <value name="centos64Guest" vmodl-name="centos64Guest" version-id-ref="centos64Guest">
   </value>
   <value name="centos6Guest" vmodl-name="centos6Guest" version-id-ref="centos6Guest">
   </value>
   <value name="centos6_64Guest" vmodl-name="centos6_64Guest" version-id-ref="centos6_64Guest">
   </value>
   <value name="centos7Guest" vmodl-name="centos7Guest" version-id-ref="centos7Guest">
   </value>
   <value name="centos7_64Guest" vmodl-name="centos7_64Guest" version-id-ref="centos7_64Guest">
   </value>
   <value name="centos8_64Guest" vmodl-name="centos8_64Guest" version-id-ref="centos8_64Guest">
   </value>
   <value name="oracleLinuxGuest" vmodl-name="oracleLinuxGuest" version-id-ref="oracleLinuxGuest">
   </value>
   <value name="oracleLinux64Guest" vmodl-name="oracleLinux64Guest" version-id-ref="oracleLinux64Guest">
   </value>
   <value name="oracleLinux6Guest" vmodl-name="oracleLinux6Guest" version-id-ref="oracleLinux6Guest">
   </value>
   <value name="oracleLinux6_64Guest" vmodl-name="oracleLinux6_64Guest" version-id-ref="oracleLinux6_64Guest">
   </value>
   <value name="oracleLinux7Guest" vmodl-name="oracleLinux7Guest" version-id-ref="oracleLinux7Guest">
   </value>
   <value name="oracleLinux7_64Guest" vmodl-name="oracleLinux7_64Guest" version-id-ref="oracleLinux7_64Guest">
   </value>
   <value name="oracleLinux8_64Guest" vmodl-name="oracleLinux8_64Guest" version-id-ref="oracleLinux8_64Guest">
   </value>
   <value name="suseGuest" vmodl-name="suseGuest">
   </value>
   <value name="suse64Guest" vmodl-name="suse64Guest">
   </value>
   <value name="slesGuest" vmodl-name="slesGuest">
   </value>
   <value name="sles64Guest" vmodl-name="sles64Guest">
   </value>
   <value name="sles10Guest" vmodl-name="sles10Guest" version-id-ref="sles10Guest">
   </value>
   <value name="sles10_64Guest" vmodl-name="sles10_64Guest" version-id-ref="sles10_64Guest">
   </value>
   <value name="sles11Guest" vmodl-name="sles11Guest" version-id-ref="sles11Guest">
   </value>
   <value name="sles11_64Guest" vmodl-name="sles11_64Guest" version-id-ref="sles11_64Guest">
   </value>
   <value name="sles12Guest" vmodl-name="sles12Guest" version-id-ref="sles12Guest">
   </value>
   <value name="sles12_64Guest" vmodl-name="sles12_64Guest" version-id-ref="sles12_64Guest">
   </value>
   <value name="sles15_64Guest" vmodl-name="sles15_64Guest" version-id-ref="sles15_64Guest">
   </value>
   <value name="nld9Guest" vmodl-name="nld9Guest">
   </value>
   <value name="oesGuest" vmodl-name="oesGuest">
   </value>
   <value name="sjdsGuest" vmodl-name="sjdsGuest">
   </value>
   <value name="mandrakeGuest" vmodl-name="mandrakeGuest" version-id-ref="mandrakeGuest">
   </value>
   <value name="mandrivaGuest" vmodl-name="mandrivaGuest" version-id-ref="mandrivaGuest">
   </value>
   <value name="mandriva64Guest" vmodl-name="mandriva64Guest" version-id-ref="mandriva64Guest">
   </value>
   <value name="turboLinuxGuest" vmodl-name="turboLinuxGuest">
   </value>
   <value name="turboLinux64Guest" vmodl-name="turboLinux64Guest" version-id-ref="turboLinux64Guest">
   </value>
   <value name="ubuntuGuest" vmodl-name="ubuntuGuest">
   </value>
   <value name="ubuntu64Guest" vmodl-name="ubuntu64Guest">
   </value>
   <value name="debian4Guest" vmodl-name="debian4Guest" version-id-ref="debian4Guest">
   </value>
   <value name="debian4_64Guest" vmodl-name="debian4_64Guest" version-id-ref="debian4_64Guest">
   </value>
   <value name="debian5Guest" vmodl-name="debian5Guest" version-id-ref="debian5Guest">
   </value>
   <value name="debian5_64Guest" vmodl-name="debian5_64Guest" version-id-ref="debian5_64Guest">
   </value>
   <value name="debian6Guest" vmodl-name="debian6Guest" version-id-ref="debian6Guest">
   </value>
   <value name="debian6_64Guest" vmodl-name="debian6_64Guest" version-id-ref="debian6_64Guest">
   </value>
   <value name="debian7Guest" vmodl-name="debian7Guest" version-id-ref="debian7Guest">
   </value>
   <value name="debian7_64Guest" vmodl-name="debian7_64Guest" version-id-ref="debian7_64Guest">
   </value>
   <value name="debian8Guest" vmodl-name="debian8Guest" version-id-ref="debian8Guest">
   </value>
   <value name="debian8_64Guest" vmodl-name="debian8_64Guest" version-id-ref="debian8_64Guest">
   </value>
   <value name="debian9Guest" vmodl-name="debian9Guest" version-id-ref="debian9Guest">
   </value>
   <value name="debian9_64Guest" vmodl-name="debian9_64Guest" version-id-ref="debian9_64Guest">
   </value>
   <value name="debian10Guest" vmodl-name="debian10Guest" version-id-ref="debian10Guest">
   </value>
   <value name="debian10_64Guest" vmodl-name="debian10_64Guest" version-id-ref="debian10_64Guest">
   </value>
   <value name="debian11Guest" vmodl-name="debian11Guest" version-id-ref="debian11Guest">
   </value>
   <value name="debian11_64Guest" vmodl-name="debian11_64Guest" version-id-ref="debian11_64Guest">
   </value>
   <value name="asianux3Guest" vmodl-name="asianux3Guest" version-id-ref="asianux3Guest">
   </value>
   <value name="asianux3_64Guest" vmodl-name="asianux3_64Guest" version-id-ref="asianux3_64Guest">
   </value>
   <value name="asianux4Guest" vmodl-name="asianux4Guest" version-id-ref="asianux4Guest">
   </value>
   <value name="asianux4_64Guest" vmodl-name="asianux4_64Guest" version-id-ref="asianux4_64Guest">
   </value>
   <value name="asianux5_64Guest" vmodl-name="asianux5_64Guest" version-id-ref="asianux5_64Guest">
   </value>
   <value name="asianux7_64Guest" vmodl-name="asianux7_64Guest" version-id-ref="asianux7_64Guest">
   </value>
   <value name="asianux8_64Guest" vmodl-name="asianux8_64Guest" version-id-ref="asianux8_64Guest">
   </value>
   <value name="opensuseGuest" vmodl-name="opensuseGuest" version-id-ref="opensuseGuest">
   </value>
   <value name="opensuse64Guest" vmodl-name="opensuse64Guest" version-id-ref="opensuse64Guest">
   </value>
   <value name="fedoraGuest" vmodl-name="fedoraGuest" version-id-ref="fedoraGuest">
   </value>
   <value name="fedora64Guest" vmodl-name="fedora64Guest" version-id-ref="fedora64Guest">
   </value>
   <value name="coreos64Guest" vmodl-name="coreos64Guest" version-id-ref="coreos64Guest">
   </value>
   <value name="vmwarePhoton64Guest" vmodl-name="vmwarePhoton64Guest" version-id-ref="vmwarePhoton64Guest">
   </value>
   <value name="other24xLinuxGuest" vmodl-name="other24xLinuxGuest">
   </value>
   <value name="other26xLinuxGuest" vmodl-name="other26xLinuxGuest">
   </value>
   <value name="otherLinuxGuest" vmodl-name="otherLinuxGuest">
   </value>
   <value name="other3xLinuxGuest" vmodl-name="other3xLinuxGuest" version-id-ref="other3xLinuxGuest">
   </value>
   <value name="other4xLinuxGuest" vmodl-name="other4xLinuxGuest" version-id-ref="other4xLinuxGuest">
   </value>
   <value name="genericLinuxGuest" vmodl-name="genericLinuxGuest" version-id-ref="genericLinuxGuest">
   </value>
   <value name="other24xLinux64Guest" vmodl-name="other24xLinux64Guest">
   </value>
   <value name="other26xLinux64Guest" vmodl-name="other26xLinux64Guest">
   </value>
   <value name="other3xLinux64Guest" vmodl-name="other3xLinux64Guest" version-id-ref="other3xLinux64Guest">
   </value>
   <value name="other4xLinux64Guest" vmodl-name="other4xLinux64Guest" version-id-ref="other4xLinux64Guest">
   </value>
   <value name="otherLinux64Guest" vmodl-name="otherLinux64Guest">
   </value>
   <value name="solaris6Guest" vmodl-name="solaris6Guest">
   </value>
   <value name="solaris7Guest" vmodl-name="solaris7Guest">
   </value>
   <value name="solaris8Guest" vmodl-name="solaris8Guest">
   </value>
   <value name="solaris9Guest" vmodl-name="solaris9Guest">
   </value>
   <value name="solaris10Guest" vmodl-name="solaris10Guest">
   </value>
   <value name="solaris10_64Guest" vmodl-name="solaris10_64Guest">
   </value>
   <value name="solaris11_64Guest" vmodl-name="solaris11_64Guest" version-id-ref="solaris11_64Guest">
   </value>
   <value name="os2Guest" vmodl-name="os2Guest">
   </value>
   <value name="eComStationGuest" vmodl-name="eComStationGuest" version-id-ref="eComStationGuest">
   </value>
   <value name="eComStation2Guest" vmodl-name="eComStation2Guest" version-id-ref="eComStation2Guest">
   </value>
   <value name="netware4Guest" vmodl-name="netware4Guest">
   </value>
   <value name="netware5Guest" vmodl-name="netware5Guest">
   </value>
   <value name="netware6Guest" vmodl-name="netware6Guest">
   </value>
   <value name="openServer5Guest" vmodl-name="openServer5Guest" version-id-ref="openServer5Guest">
   </value>
   <value name="openServer6Guest" vmodl-name="openServer6Guest" version-id-ref="openServer6Guest">
   </value>
   <value name="unixWare7Guest" vmodl-name="unixWare7Guest" version-id-ref="unixWare7Guest">
   </value>
   <value name="darwinGuest" vmodl-name="darwinGuest">
   </value>
   <value name="darwin64Guest" vmodl-name="darwin64Guest" version-id-ref="darwin64Guest">
   </value>
   <value name="darwin10Guest" vmodl-name="darwin10Guest" version-id-ref="darwin10Guest">
   </value>
   <value name="darwin10_64Guest" vmodl-name="darwin10_64Guest" version-id-ref="darwin10_64Guest">
   </value>
   <value name="darwin11Guest" vmodl-name="darwin11Guest" version-id-ref="darwin11Guest">
   </value>
   <value name="darwin11_64Guest" vmodl-name="darwin11_64Guest" version-id-ref="darwin11_64Guest">
   </value>
   <value name="darwin12_64Guest" vmodl-name="darwin12_64Guest" version-id-ref="darwin12_64Guest">
   </value>
   <value name="darwin13_64Guest" vmodl-name="darwin13_64Guest" version-id-ref="darwin13_64Guest">
   </value>
   <value name="darwin14_64Guest" vmodl-name="darwin14_64Guest" version-id-ref="darwin14_64Guest">
   </value>
   <value name="darwin15_64Guest" vmodl-name="darwin15_64Guest" version-id-ref="darwin15_64Guest">
   </value>
   <value name="darwin16_64Guest" vmodl-name="darwin16_64Guest" version-id-ref="darwin16_64Guest">
   </value>
   <value name="darwin17_64Guest" vmodl-name="darwin17_64Guest" version-id-ref="darwin17_64Guest">
   </value>
   <value name="darwin18_64Guest" vmodl-name="darwin18_64Guest" version-id-ref="darwin18_64Guest">
   </value>
   <value name="darwin19_64Guest" vmodl-name="darwin19_64Guest" version-id-ref="darwin19_64Guest">
   </value>
   <value name="vmkernelGuest" vmodl-name="vmkernelGuest" version-id-ref="vmkernelGuest">
   </value>
   <value name="vmkernel5Guest" vmodl-name="vmkernel5Guest" version-id-ref="vmkernel5Guest">
   </value>
   <value name="vmkernel6Guest" vmodl-name="vmkernel6Guest" version-id-ref="vmkernel6Guest">
   </value>
   <value name="vmkernel65Guest" vmodl-name="vmkernel65Guest" version-id-ref="vmkernel65Guest">
   </value>
   <value name="vmkernel7Guest" vmodl-name="vmkernel7Guest" version-id-ref="vmkernel7Guest">
   </value>
   <value name="amazonlinux2_64Guest" vmodl-name="amazonlinux2_64Guest" version-id-ref="amazonlinux2_64Guest">
   </value>
   <value name="crxPod1Guest" vmodl-name="crxPod1Guest" version-id-ref="crxPod1Guest">
   </value>
   <value name="otherGuest" vmodl-name="otherGuest">
   </value>
   <value name="otherGuest64" vmodl-name="otherGuest64">
   </value>
   </enum>
   <enum name="PlacementSpecPlacementType"
      type-id="vim.cluster.PlacementSpec.PlacementType"
      vmodl-name="vim.cluster.PlacementSpec.PlacementType"
      enclosing-type-id-ref="vim.cluster.PlacementSpec"
      version-id-ref="vim.version.version10"
      >
      <description-html>
         <![CDATA[Defines the type of placement]]>
      </description-html>
   <value name="create" vmodl-name="create">
   </value>
   <value name="reconfigure" vmodl-name="reconfigure">
   </value>
   <value name="relocate" vmodl-name="relocate">
   </value>
   <value name="clone" vmodl-name="clone">
   </value>
   </enum>
   <enum name="FileSystemMountInfoVStorageSupportStatus"
      type-id="vim.host.FileSystemMountInfo.VStorageSupportStatus"
      vmodl-name="vim.host.FileSystemMountInfo.VStorageSupportStatus"
      enclosing-type-id-ref="vim.host.FileSystemMountInfo"
      version-id-ref="vim.version.version6"
      >
      <description-html>
         <![CDATA[Status of volume's support for vStorage hardware acceleration.
  The ESX Server determines the status based on the capabilities
  of the devices that support the file system volume.
  When a host boots, the support status is unknown.
  As the ESX host attempts hardware-accelerated operations,
  it determines whether the storage device supports hardware
  acceleration and sets the <a href="vim.host.FileSystemMountInfo.html#vStorageSupport">vStorageSupport</a>
  property accordingly.]]>
      </description-html>
   <value name="vStorageSupported" vmodl-name="vStorageSupported">
   </value>
   <value name="vStorageUnsupported" vmodl-name="vStorageUnsupported">
   </value>
   <value name="vStorageUnknown" vmodl-name="vStorageUnknown">
   </value>
   </enum>
   <enum name="ScsiDiskType"
      type-id="vim.host.ScsiDisk.ScsiDiskType"
      vmodl-name="vim.host.ScsiDisk.ScsiDiskType"
      enclosing-type-id-ref="vim.host.ScsiDisk"
      version-id-ref="vim.version.version11"
      >
      <description-html>
         <![CDATA[The types of disk drives.]]>
      </description-html>
   <value name="native512" vmodl-name="native512">
   </value>
   <value name="emulated512" vmodl-name="emulated512">
   </value>
   <value name="native4k" vmodl-name="native4k">
   </value>
   <value name="SoftwareEmulated4k" vmodl-name="SoftwareEmulated4k" version-id-ref="SoftwareEmulated4k">
   </value>
   <value name="unknown" vmodl-name="unknown">
   </value>
   </enum>
   <enum name="EventFilterSpecRecursionOption"
      type-id="vim.event.EventFilterSpec.RecursionOption"
      vmodl-name="vim.event.EventFilterSpec.RecursionOption"
      enclosing-type-id-ref="vim.event.EventFilterSpec"
      version-id-ref="vim.version.version1"
      >
      <description-html>
         <![CDATA[This option specifies how to select events based on child relationships
  in the inventory hierarchy. If a managed entity has children, their events
  can be retrieved with this filter option.]]>
      </description-html>
   <value name="self" vmodl-name="self">
   </value>
   <value name="children" vmodl-name="children">
   </value>
   <value name="all" vmodl-name="all">
   </value>
   </enum>
   <enum name="HostMaintenanceSpecPurpose"
      type-id="vim.host.MaintenanceSpec.Purpose"
      vmodl-name="vim.host.MaintenanceSpec.Purpose"
      enclosing-type-id-ref="vim.host.MaintenanceSpec"
      version-id-ref="vim.version.v7_0"
      >
   <value name="hostUpgrade" vmodl-name="hostUpgrade">
   </value>
   </enum>
   <enum name="HostDisconnectedEventReasonCode"
      type-id="vim.event.HostDisconnectedEvent.ReasonCode"
      vmodl-name="vim.event.HostDisconnectedEvent.ReasonCode"
      enclosing-type-id-ref="vim.event.HostDisconnectedEvent"
      version-id-ref="vim.version.version5"
      >
   <value name="sslThumbprintVerifyFailed" vmodl-name="sslThumbprintVerifyFailed">
   </value>
   <value name="licenseExpired" vmodl-name="licenseExpired">
   </value>
   <value name="agentUpgrade" vmodl-name="agentUpgrade">
   </value>
   <value name="userRequest" vmodl-name="userRequest">
   </value>
   <value name="insufficientLicenses" vmodl-name="insufficientLicenses">
   </value>
   <value name="agentOutOfDate" vmodl-name="agentOutOfDate" version-id-ref="agentOutOfDate">
   </value>
   <value name="passwordDecryptFailure" vmodl-name="passwordDecryptFailure" version-id-ref="passwordDecryptFailure">
   </value>
   <value name="unknown" vmodl-name="unknown" version-id-ref="unknown">
   </value>
   <value name="vcVRAMCapacityExceeded" vmodl-name="vcVRAMCapacityExceeded" version-id-ref="vcVRAMCapacityExceeded">
   </value>
   </enum>
   <enum name="DatastoreSummaryMaintenanceModeState"
      type-id="vim.Datastore.Summary.MaintenanceModeState"
      vmodl-name="vim.Datastore.Summary.MaintenanceModeState"
      enclosing-type-id-ref="vim.Datastore.Summary"
      version-id-ref="vim.version.version7"
      >
      <description-html>
         <![CDATA[Defines the current maintenance mode state of the datastore.]]>
      </description-html>
   <value name="normal" vmodl-name="normal">
   </value>
   <value name="enteringMaintenance" vmodl-name="enteringMaintenance">
   </value>
   <value name="inMaintenance" vmodl-name="inMaintenance">
   </value>
   </enum>
   <enum name="OvfCreateImportSpecParamsDiskProvisioningType"
      type-id="vim.OvfManager.CreateImportSpecParams.DiskProvisioningType"
      vmodl-name="vim.OvfManager.CreateImportSpecParams.DiskProvisioningType"
      enclosing-type-id-ref="vim.OvfManager.CreateImportSpecParams"
      version-id-ref="vim.version.version6"
      >
      <description-html>
         <![CDATA[Types of disk provisioning that can be set for the disk in the deployed OVF
 package.]]>
      </description-html>
   <value name="monolithicSparse" vmodl-name="monolithicSparse">
   </value>
   <value name="monolithicFlat" vmodl-name="monolithicFlat">
   </value>
   <value name="twoGbMaxExtentSparse" vmodl-name="twoGbMaxExtentSparse">
   </value>
   <value name="twoGbMaxExtentFlat" vmodl-name="twoGbMaxExtentFlat">
   </value>
   <value name="thin" vmodl-name="thin">
   </value>
   <value name="thick" vmodl-name="thick">
   </value>
   <value name="seSparse" vmodl-name="seSparse" version-id-ref="seSparse">
   </value>
   <value name="eagerZeroedThick" vmodl-name="eagerZeroedThick" version-id-ref="eagerZeroedThick">
   </value>
   <value name="sparse" vmodl-name="sparse">
   </value>
   <value name="flat" vmodl-name="flat">
   </value>
   </enum>
   <enum name="NvdimmInterleaveSetState"
      type-id="vim.host.NvdimmSystem.InterleaveSetInfo.InterleaveSetState"
      vmodl-name="vim.host.NvdimmSystem.InterleaveSetInfo.InterleaveSetState"
      enclosing-type-id-ref="vim.host.NvdimmSystem.InterleaveSetInfo"
      version-id-ref="vim.version.version12"
      >
      <description-html>
         <![CDATA[State of interleave set]]>
      </description-html>
   <value name="invalid" vmodl-name="invalid">
   </value>
   <value name="active" vmodl-name="active">
   </value>
   </enum>
   <enum name="VirtualDeviceFileExtension"
      type-id="vim.vm.device.VirtualDeviceOption.FileBackingOption.FileExtension"
      vmodl-name="vim.vm.device.VirtualDeviceOption.FileBackingOption.FileExtension"
      enclosing-type-id-ref="vim.vm.device.VirtualDeviceOption.FileBackingOption"
      version-id-ref="vim.version.version1"
      >
      <description-html>
         <![CDATA[All known file extensions. Valid ones are:]]>
      </description-html>
   <value name="iso" vmodl-name="iso">
   </value>
   <value name="flp" vmodl-name="flp">
   </value>
   <value name="vmdk" vmodl-name="vmdk">
   </value>
   <value name="dsk" vmodl-name="dsk">
   </value>
   <value name="rdm" vmodl-name="rdm">
   </value>
   </enum>
   <enum name="HostLowLevelProvisioningManagerFileType"
      type-id="vim.host.LowLevelProvisioningManager.FileType"
      vmodl-name="vim.host.LowLevelProvisioningManager.FileType"
      enclosing-type-id-ref="vim.host.LowLevelProvisioningManager"
      version-id-ref="vim.version.version10"
      >
      <description-html>
         <![CDATA[This enum defines the possible types of file types that can be reserved
 or deleted]]>
      </description-html>
   <value name="File" vmodl-name="File">
   </value>
   <value name="VirtualDisk" vmodl-name="VirtualDisk">
   </value>
   <value name="Directory" vmodl-name="Directory">
   </value>
   </enum>
   <enum name="NetIpConfigInfoIpAddressOrigin"
      type-id="vim.net.IpConfigInfo.IpAddressOrigin"
      vmodl-name="vim.net.IpConfigInfo.IpAddressOrigin"
      enclosing-type-id-ref="vim.net.IpConfigInfo"
      version-id-ref="vim.version.version6"
      >
      <description-html>
         <![CDATA[This specifies how an IP address was obtained for a given interface.
 See RFC 4293 IpAddressOriginTC.]]>
      </description-html>
   <value name="other" vmodl-name="other">
   </value>
   <value name="manual" vmodl-name="manual">
   </value>
   <value name="dhcp" vmodl-name="dhcp">
   </value>
   <value name="linklayer" vmodl-name="linklayer">
   </value>
   <value name="random" vmodl-name="random">
   </value>
   </enum>
   <enum name="VsanHostNodeState"
      type-id="vim.vsan.host.NodeState"
      vmodl-name="vim.vsan.host.NodeState"
      version-id-ref="vim.version.version9"
      >
      <description-html>
         <![CDATA[A <a href="vim.vsan.host.NodeState.html">VsanHostNodeState</a> represents the state of participation of a host
 in the VSAN service.<br>See <a href="vim.vsan.host.ClusterStatus.html">VsanHostClusterStatus</a><br>See <a href="vim.vsan.host.ClusterStatus.State.html">VsanHostClusterStatusState</a><br>]]>
      </description-html>
   <value name="error" vmodl-name="error">
   </value>
   <value name="disabled" vmodl-name="disabled">
   </value>
   <value name="agent" vmodl-name="agent">
   </value>
   <value name="master" vmodl-name="master">
   </value>
   <value name="backup" vmodl-name="backup">
   </value>
   <value name="starting" vmodl-name="starting">
   </value>
   <value name="stopping" vmodl-name="stopping">
   </value>
   <value name="enteringMaintenanceMode" vmodl-name="enteringMaintenanceMode">
   </value>
   <value name="exitingMaintenanceMode" vmodl-name="exitingMaintenanceMode">
   </value>
   <value name="decommissioning" vmodl-name="decommissioning">
   </value>
   </enum>
   <enum name="HostFirewallRuleDirection"
      type-id="vim.host.Ruleset.Rule.Direction"
      vmodl-name="vim.host.Ruleset.Rule.Direction"
      enclosing-type-id-ref="vim.host.Ruleset.Rule"
      version-id-ref="vim.version.version1"
      >
      <description-html>
         <![CDATA[Enumeration of port directions.]]>
      </description-html>
   <value name="inbound" vmodl-name="inbound">
   </value>
   <value name="outbound" vmodl-name="outbound">
   </value>
   </enum>
   <enum name="VirtualMachineMetadataManagerVmMetadataOp"
      type-id="vim.vm.MetadataManager.VmMetadataOp"
      vmodl-name="vim.vm.MetadataManager.VmMetadataOp"
      enclosing-type-id-ref="vim.vm.MetadataManager"
      version-id-ref="vim.version.version9"
      >
      <description-html>
         <![CDATA[This enum represents the set of legal operations]]>
      </description-html>
   <value name="Update" vmodl-name="Update">
   </value>
   <value name="Remove" vmodl-name="Remove">
   </value>
   </enum>
   <enum name="ClusterDasVmSettingsRestartPriority"
      type-id="vim.cluster.DasVmSettings.RestartPriority"
      vmodl-name="vim.cluster.DasVmSettings.RestartPriority"
      enclosing-type-id-ref="vim.cluster.DasVmSettings"
      version-id-ref="vim.version.version2"
      >
      <description-html>
         <![CDATA[The <a href="vim.cluster.DasVmSettings.RestartPriority.html">ClusterDasVmSettingsRestartPriority</a> enum defines
  virtual machine restart priority values to resolve resource contention.
  The priority determines the preference that HA gives to a virtual
  machine if sufficient capacity is not available to power on all failed
  virtual machines. For example, high priority virtual machines on a host
  get preference over low priority virtual machines.
  <p>
  All priority values are valid for the restart priority specified in a
  single virtual machine HA configuration (<a href="vim.cluster.DasVmConfigInfo.html#dasSettings">dasSettings</a>).
  All values except for <code>clusterRestartPriority</code> are valid for
  the cluster-wide default HA configuration for virtual machines
  (<a href="vim.cluster.DasConfigInfo.html#defaultVmSettings">defaultVmSettings</a>).]]>
      </description-html>
   <value name="disabled" vmodl-name="disabled">
   </value>
   <value name="lowest" vmodl-name="lowest" version-id-ref="lowest">
   </value>
   <value name="low" vmodl-name="low">
   </value>
   <value name="medium" vmodl-name="medium">
   </value>
   <value name="high" vmodl-name="high">
   </value>
   <value name="highest" vmodl-name="highest" version-id-ref="highest">
   </value>
   <value name="clusterRestartPriority" vmodl-name="clusterRestartPriority">
   </value>
   </enum>
   <enum name="VMwareUplinkLacpMode"
      type-id="vim.dvs.VmwareDistributedVirtualSwitch.UplinkLacpMode"
      vmodl-name="vim.dvs.VmwareDistributedVirtualSwitch.UplinkLacpMode"
      enclosing-type-id-ref="vim.dvs.VmwareDistributedVirtualSwitch"
      version-id-ref="vim.version.version8"
      >
      <description-html>
         <![CDATA[Link Aggregation Control Protocol policy modes.]]>
      </description-html>
   <value name="active" vmodl-name="active">
   </value>
   <value name="passive" vmodl-name="passive">
   </value>
   </enum>
   <enum name="HostPatchManagerReason"
      type-id="vim.host.PatchManager.Status.Reason"
      vmodl-name="vim.host.PatchManager.Status.Reason"
      enclosing-type-id-ref="vim.host.PatchManager.Status"
      version-id-ref="vim.version.version1"
      internal-before-version-id-ref="vim.version.version2"
      >
      <description-html>
         <![CDATA[Reasons why an update is not applicable to the ESX host.]]>
      </description-html>
   <value name="obsoleted" vmodl-name="obsoleted">
   </value>
   <value name="missingPatch" vmodl-name="missingPatch">
   </value>
   <value name="missingLib" vmodl-name="missingLib">
   </value>
   <value name="hasDependentPatch" vmodl-name="hasDependentPatch">
   </value>
   <value name="conflictPatch" vmodl-name="conflictPatch">
   </value>
   <value name="conflictLib" vmodl-name="conflictLib">
   </value>
   </enum>
   <enum name="VirtualMachineConfigSpecNpivWwnOp"
      type-id="vim.vm.ConfigSpec.NpivWwnOp"
      vmodl-name="vim.vm.ConfigSpec.NpivWwnOp"
      enclosing-type-id-ref="vim.vm.ConfigSpec"
      version-id-ref="vim.version.version2"
      >
      <description-html>
         <![CDATA[The root WWN operation mode.]]>
      </description-html>
   <value name="generate" vmodl-name="generate">
   </value>
   <value name="set" vmodl-name="set">
   </value>
   <value name="remove" vmodl-name="remove">
   </value>
   <value name="extend" vmodl-name="extend" version-id-ref="extend">
   </value>
   </enum>
   <enum name="NvdimmNamespaceDetailsHealthStatus"
      type-id="vim.host.NvdimmSystem.NamespaceDetails.NamespaceHealthStatus"
      vmodl-name="vim.host.NvdimmSystem.NamespaceDetails.NamespaceHealthStatus"
      enclosing-type-id-ref="vim.host.NvdimmSystem.NamespaceDetails"
      version-id-ref="vim.version.version13"
      >
      <description-html>
         <![CDATA[Overall health state for a namespace]]>
      </description-html>
   <value name="normal" vmodl-name="normal">
   </value>
   <value name="missing" vmodl-name="missing">
   </value>
   <value name="labelMissing" vmodl-name="labelMissing">
   </value>
   <value name="interleaveBroken" vmodl-name="interleaveBroken">
   </value>
   <value name="labelInconsistent" vmodl-name="labelInconsistent">
   </value>
   </enum>
   <enum name="IscsiPortInfoPathStatus"
      type-id="vim.host.IscsiManager.IscsiPortInfo.PathStatus"
      vmodl-name="vim.host.IscsiManager.IscsiPortInfo.PathStatus"
      enclosing-type-id-ref="vim.host.IscsiManager.IscsiPortInfo"
      version-id-ref="vim.version.version7"
      >
   <value name="notUsed" vmodl-name="notUsed">
   </value>
   <value name="active" vmodl-name="active">
   </value>
   <value name="standBy" vmodl-name="standBy">
   </value>
   <value name="lastActive" vmodl-name="lastActive">
   </value>
   </enum>
   <enum name="ScsiLunType"
      type-id="vim.host.ScsiLun.ScsiLunType"
      vmodl-name="vim.host.ScsiLun.ScsiLunType"
      enclosing-type-id-ref="vim.host.ScsiLun"
      version-id-ref="vim.version.version1"
      >
      <description-html>
         <![CDATA[The list of SCSI device types.  These values correspond to values
  published in the SCSI specification.]]>
      </description-html>
   <value name="disk" vmodl-name="disk">
   </value>
   <value name="tape" vmodl-name="tape">
   </value>
   <value name="printer" vmodl-name="printer">
   </value>
   <value name="processor" vmodl-name="processor">
   </value>
   <value name="worm" vmodl-name="worm">
   </value>
   <value name="cdrom" vmodl-name="cdrom">
   </value>
   <value name="scanner" vmodl-name="scanner">
   </value>
   <value name="opticalDevice" vmodl-name="opticalDevice">
   </value>
   <value name="mediaChanger" vmodl-name="mediaChanger">
   </value>
   <value name="communications" vmodl-name="communications">
   </value>
   <value name="storageArrayController" vmodl-name="storageArrayController">
   </value>
   <value name="enclosure" vmodl-name="enclosure">
   </value>
   <value name="unknown" vmodl-name="unknown">
   </value>
   </enum>
   <enum name="CustomizationSysprepRebootOption"
      type-id="vim.vm.customization.WinOptions.SysprepRebootOption"
      vmodl-name="vim.vm.customization.WinOptions.SysprepRebootOption"
      enclosing-type-id-ref="vim.vm.customization.WinOptions"
      version-id-ref="vim.version.version2"
      >
      <description-html>
         <![CDATA[A enum constant specifying what should be done to the guest vm after running
 sysprep.]]>
      </description-html>
   <value name="reboot" vmodl-name="reboot">
   </value>
   <value name="noreboot" vmodl-name="noreboot">
   </value>
   <value name="shutdown" vmodl-name="shutdown">
   </value>
   </enum>
   <enum name="ScheduledHardwareUpgradeInfoHardwareUpgradePolicy"
      type-id="vim.vm.ScheduledHardwareUpgradeInfo.HardwareUpgradePolicy"
      vmodl-name="vim.vm.ScheduledHardwareUpgradeInfo.HardwareUpgradePolicy"
      enclosing-type-id-ref="vim.vm.ScheduledHardwareUpgradeInfo"
      version-id-ref="vim.version.version8"
      >
      <description-html>
         <![CDATA[The policy setting used to determine when to perform scheduled
  upgrades for a virtual machine.]]>
      </description-html>
   <value name="never" vmodl-name="never">
   </value>
   <value name="onSoftPowerOff" vmodl-name="onSoftPowerOff">
   </value>
   <value name="always" vmodl-name="always">
   </value>
   </enum>
   <enum name="HttpNfcLeaseMode"
      type-id="vim.HttpNfcLease.Mode"
      vmodl-name="vim.HttpNfcLease.Mode"
      enclosing-type-id-ref="vim.HttpNfcLease"
      version-id-ref="vim.version.version12"
      >
      <description-html>
         <![CDATA[List of supported modes by HttpNfcLease]]>
      </description-html>
   <value name="pushOrGet" vmodl-name="pushOrGet">
   </value>
   <value name="pull" vmodl-name="pull">
   </value>
   </enum>
   <enum name="HostPatchManagerIntegrityStatus"
      type-id="vim.host.PatchManager.Status.Integrity"
      vmodl-name="vim.host.PatchManager.Status.Integrity"
      enclosing-type-id-ref="vim.host.PatchManager.Status"
      version-id-ref="vim.version.version1"
      internal-before-version-id-ref="vim.version.version2"
      >
      <description-html>
         <![CDATA[The integrity validation status.]]>
      </description-html>
   <value name="validated" vmodl-name="validated">
   </value>
   <value name="keyNotFound" vmodl-name="keyNotFound">
   </value>
   <value name="keyRevoked" vmodl-name="keyRevoked">
   </value>
   <value name="keyExpired" vmodl-name="keyExpired">
   </value>
   <value name="digestMismatch" vmodl-name="digestMismatch">
   </value>
   <value name="notEnoughSignatures" vmodl-name="notEnoughSignatures">
   </value>
   <value name="validationError" vmodl-name="validationError">
   </value>
   </enum>
   <enum name="VirtualMachineConfigInfoNpivWwnType"
      type-id="vim.vm.ConfigInfo.NpivWwnType"
      vmodl-name="vim.vm.ConfigInfo.NpivWwnType"
      enclosing-type-id-ref="vim.vm.ConfigInfo"
      version-id-ref="vim.version.version2"
      >
      <description-html>
         <![CDATA[The NPIV WWN source type.]]>
      </description-html>
   <value name="vc" vmodl-name="vc">
   </value>
   <value name="host" vmodl-name="host">
   </value>
   <value name="external" vmodl-name="external">
   </value>
   </enum>
   <enum name="DVPortStatusVmDirectPathGen2InactiveReasonOther"
      type-id="vim.dvs.DistributedVirtualPort.RuntimeInfo.VmDirectPathGen2InactiveReasonOther"
      vmodl-name="vim.dvs.DistributedVirtualPort.RuntimeInfo.VmDirectPathGen2InactiveReasonOther"
      enclosing-type-id-ref="vim.dvs.DistributedVirtualPort.RuntimeInfo"
      version-id-ref="vim.version.version6"
      >
      <description-html>
         <![CDATA[Set of possible values for
  <a href="vim.dvs.DistributedVirtualPort.RuntimeInfo.html">DVPortStatus</a>.<a href="vim.dvs.DistributedVirtualPort.RuntimeInfo.html#vmDirectPathGen2InactiveReasonOther">vmDirectPathGen2InactiveReasonOther</a>.]]>
      </description-html>
   <value name="portNptIncompatibleHost" vmodl-name="portNptIncompatibleHost">
   </value>
   <value name="portNptIncompatibleConnectee" vmodl-name="portNptIncompatibleConnectee">
   </value>
   </enum>
   <enum name="EntityType"
      type-id="vim.dvs.EntityBackup.EntityType"
      vmodl-name="vim.dvs.EntityBackup.EntityType"
      enclosing-type-id-ref="vim.dvs.EntityBackup"
      version-id-ref="vim.version.version8"
      >
      <description-html>
         <![CDATA[The <a href="vim.dvs.EntityBackup.EntityType.html">EntityType</a> enum identifies
 the type of entity that was exported
 (<a href="vim.dvs.DistributedVirtualSwitchManager.html#exportEntity">DVSManagerExportEntity_Task</a>).]]>
      </description-html>
   <value name="distributedVirtualSwitch" vmodl-name="distributedVirtualSwitch">
   </value>
   <value name="distributedVirtualPortgroup" vmodl-name="distributedVirtualPortgroup">
   </value>
   </enum>
   <enum name="NetIpConfigInfoIpAddressStatus"
      type-id="vim.net.IpConfigInfo.IpAddressStatus"
      vmodl-name="vim.net.IpConfigInfo.IpAddressStatus"
      enclosing-type-id-ref="vim.net.IpConfigInfo"
      version-id-ref="vim.version.version6"
      >
   <value name="preferred" vmodl-name="preferred">
   </value>
   <value name="deprecated" vmodl-name="deprecated">
   </value>
   <value name="invalid" vmodl-name="invalid">
   </value>
   <value name="inaccessible" vmodl-name="inaccessible">
   </value>
   <value name="unknown" vmodl-name="unknown">
   </value>
   <value name="tentative" vmodl-name="tentative">
   </value>
   <value name="duplicate" vmodl-name="duplicate">
   </value>
   </enum>
   <enum name="HostActiveDirectoryInfoDomainMembershipStatus"
      type-id="vim.host.ActiveDirectoryInfo.DomainMembershipStatus"
      vmodl-name="vim.host.ActiveDirectoryInfo.DomainMembershipStatus"
      enclosing-type-id-ref="vim.host.ActiveDirectoryInfo"
      version-id-ref="vim.version.version6"
      >
   <value name="unknown" vmodl-name="unknown">
   </value>
   <value name="ok" vmodl-name="ok">
   </value>
   <value name="noServers" vmodl-name="noServers">
   </value>
   <value name="clientTrustBroken" vmodl-name="clientTrustBroken">
   </value>
   <value name="serverTrustBroken" vmodl-name="serverTrustBroken">
   </value>
   <value name="inconsistentTrust" vmodl-name="inconsistentTrust">
   </value>
   <value name="otherProblem" vmodl-name="otherProblem">
   </value>
   </enum>
   <enum name="VMotionCompatibilityType"
      type-id="vim.ServiceInstance.VMotionCompatibilityType"
      vmodl-name="vim.ServiceInstance.VMotionCompatibilityType"
      enclosing-type-id-ref="vim.ServiceInstance"
      version-id-ref="vim.version.version1"
      >
      <description-html>
         <![CDATA[Types of a host's compatibility with a designated virtual machine
  that is a candidate for VMotion. Used with queryVMotionCompatibility
  both as inputs (to designate which compatibility types to test for)
  and as outputs (to specify which compatibility types apply for
  each host).]]>
      </description-html>
   <value name="cpu" vmodl-name="cpu">
   </value>
   <value name="software" vmodl-name="software">
   </value>
   </enum>
   <enum name="FibreChannelPortType"
      type-id="vim.host.FibreChannelHba.PortType"
      vmodl-name="vim.host.FibreChannelHba.PortType"
      enclosing-type-id-ref="vim.host.FibreChannelHba"
      version-id-ref="vim.version.version1"
      >
      <description-html>
         <![CDATA[The operating mode of the adapter.]]>
      </description-html>
   <value name="fabric" vmodl-name="fabric">
   </value>
   <value name="loop" vmodl-name="loop">
   </value>
   <value name="pointToPoint" vmodl-name="pointToPoint">
   </value>
   <value name="unknown" vmodl-name="unknown">
   </value>
   </enum>
   <enum name="ManagedEntityStatus"
      type-id="vim.ManagedEntity.Status"
      vmodl-name="vim.ManagedEntity.Status"
      enclosing-type-id-ref="vim.ManagedEntity"
      version-id-ref="vim.version.version1"
      >
      <description-html>
         <![CDATA[The Status enumeration defines a general "health" value for a managed entity.]]>
      </description-html>
   <value name="gray" vmodl-name="gray">
   </value>
   <value name="green" vmodl-name="green">
   </value>
   <value name="yellow" vmodl-name="yellow">
   </value>
   <value name="red" vmodl-name="red">
   </value>
   </enum>
   <enum name="VirtualMachineToolsStatus"
      type-id="vim.vm.GuestInfo.ToolsStatus"
      vmodl-name="vim.vm.GuestInfo.ToolsStatus"
      enclosing-type-id-ref="vim.vm.GuestInfo"
      version-id-ref="vim.version.version1"
      is-deprecated="true"
      >
      <description-html>
         <![CDATA[Current status of VMware Tools running in the guest operating system.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 4.0 use <a href="vim.vm.GuestInfo.ToolsVersionStatus.html">VirtualMachineToolsVersionStatus</a>
  and <a href="vim.vm.GuestInfo.ToolsRunningStatus.html">VirtualMachineToolsRunningStatus</a>.]]>
      </deprecated-html>
   <value name="toolsNotInstalled" vmodl-name="toolsNotInstalled">
   </value>
   <value name="toolsNotRunning" vmodl-name="toolsNotRunning">
   </value>
   <value name="toolsOld" vmodl-name="toolsOld">
   </value>
   <value name="toolsOk" vmodl-name="toolsOk">
   </value>
   </enum>
   <enum name="ProfileNumericComparator"
      type-id="vim.profile.NumericComparator"
      vmodl-name="vim.profile.NumericComparator"
      version-id-ref="vim.version.version5"
      >
      <description-html>
         <![CDATA[Enumerates different operations supported for comparing
    numerical values.]]>
      </description-html>
   <value name="lessThan" vmodl-name="lessThan">
   </value>
   <value name="lessThanEqual" vmodl-name="lessThanEqual">
   </value>
   <value name="equal" vmodl-name="equal">
   </value>
   <value name="notEqual" vmodl-name="notEqual">
   </value>
   <value name="greaterThanEqual" vmodl-name="greaterThanEqual">
   </value>
   <value name="greaterThan" vmodl-name="greaterThan">
   </value>
   </enum>
   <enum name="VMwareDVSVspanSessionEncapType"
      type-id="vim.dvs.VmwareDistributedVirtualSwitch.VspanSessionEncapType"
      vmodl-name="vim.dvs.VmwareDistributedVirtualSwitch.VspanSessionEncapType"
      enclosing-type-id-ref="vim.dvs.VmwareDistributedVirtualSwitch"
      version-id-ref="vim.version.version11"
      >
      <description-html>
         <![CDATA[Distributed Port Mirroring session Encapsulation types.]]>
      </description-html>
   <value name="gre" vmodl-name="gre">
   </value>
   <value name="erspan2" vmodl-name="erspan2">
   </value>
   <value name="erspan3" vmodl-name="erspan3">
   </value>
   </enum>
   <enum name="HostProtocolEndpointPEType"
      type-id="vim.host.ProtocolEndpoint.PEType"
      vmodl-name="vim.host.ProtocolEndpoint.PEType"
      enclosing-type-id-ref="vim.host.ProtocolEndpoint"
      version-id-ref="vim.version.version10"
      is-deprecated="true"
      >
      <description-html>
         <![CDATA[ProtocolEndpoint Type.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[from all vmodl version above]]>
      </deprecated-html>
   <value name="block" vmodl-name="block">
   </value>
   <value name="nas" vmodl-name="nas">
   </value>
   </enum>
   <enum name="EventCategory"
      type-id="vim.event.EventDescription.EventCategory"
      vmodl-name="vim.event.EventDescription.EventCategory"
      enclosing-type-id-ref="vim.event.EventDescription"
      version-id-ref="vim.version.version1"
      >
   <value name="info" vmodl-name="info">
   </value>
   <value name="warning" vmodl-name="warning">
   </value>
   <value name="error" vmodl-name="error">
   </value>
   <value name="user" vmodl-name="user">
   </value>
   </enum>
   <enum name="VirtualVmxnet3VrdmaOptionDeviceProtocols"
      type-id="vim.vm.device.VirtualVmxnet3VrdmaOption.DeviceProtocols"
      vmodl-name="vim.vm.device.VirtualVmxnet3VrdmaOption.DeviceProtocols"
      enclosing-type-id-ref="vim.vm.device.VirtualVmxnet3VrdmaOption"
      version-id-ref="vim.version.version12"
      >
      <description-html>
         <![CDATA[The enumeration of all known valid VRDMA device protocols.]]>
      </description-html>
   <value name="rocev1" vmodl-name="rocev1">
   </value>
   <value name="rocev2" vmodl-name="rocev2">
   </value>
   </enum>
   <enum name="StorageIORMThresholdMode"
      type-id="vim.StorageResourceManager.CongestionThresholdMode"
      vmodl-name="vim.StorageResourceManager.CongestionThresholdMode"
      enclosing-type-id-ref="vim.StorageResourceManager"
      version-id-ref="vim.version.version8"
      >
      <description-html>
         <![CDATA[User specification of congestion threshold mode on a given datastore
 <p>
 For more information, see
 <a href="vim.StorageResourceManager.IORMConfigInfo.html#congestionThreshold">congestionThreshold</a>]]>
      </description-html>
   <value name="automatic" vmodl-name="automatic">
   </value>
   <value name="manual" vmodl-name="manual">
   </value>
   </enum>
   <enum name="HostIncompatibleForRecordReplayReason"
      type-id="vim.fault.HostIncompatibleForRecordReplay.Reason"
      vmodl-name="vim.fault.HostIncompatibleForRecordReplay.Reason"
      enclosing-type-id-ref="vim.fault.HostIncompatibleForRecordReplay"
      version-id-ref="vim.version.version5"
      >
      <description-html>
         <![CDATA[Reasons why record/replay is not supported on a host.]]>
      </description-html>
   <value name="product" vmodl-name="product">
   </value>
   <value name="processor" vmodl-name="processor">
   </value>
   </enum>
   <enum name="WeekOfMonth"
      type-id="vim.scheduler.MonthlyByWeekdayTaskScheduler.WeekOfMonth"
      vmodl-name="vim.scheduler.MonthlyByWeekdayTaskScheduler.WeekOfMonth"
      enclosing-type-id-ref="vim.scheduler.MonthlyByWeekdayTaskScheduler"
      version-id-ref="vim.version.version1"
      >
   <value name="first" vmodl-name="first">
   </value>
   <value name="second" vmodl-name="second">
   </value>
   <value name="third" vmodl-name="third">
   </value>
   <value name="fourth" vmodl-name="fourth">
   </value>
   <value name="last" vmodl-name="last">
   </value>
   </enum>
   <enum name="ObjectUpdateKind"
      type-id="vmodl.query.PropertyCollector.ObjectUpdate.Kind"
      vmodl-name="vmodl.query.PropertyCollector.ObjectUpdate.Kind"
      enclosing-type-id-ref="vmodl.query.PropertyCollector.ObjectUpdate"
      version-id-ref="vmodl.query.version.version1"
      >
      <description-html>
         <![CDATA[Enumeration of different kinds of updates.]]>
      </description-html>
   <value name="modify" vmodl-name="modify">
   </value>
   <value name="enter" vmodl-name="enter">
   </value>
   <value name="leave" vmodl-name="leave">
   </value>
   </enum>
   <enum name="DistributedVirtualSwitchHostMemberTransportZoneType"
      type-id="vim.dvs.HostMember.TransportZoneType"
      vmodl-name="vim.dvs.HostMember.TransportZoneType"
      enclosing-type-id-ref="vim.dvs.HostMember"
      version-id-ref="vim.version.v7_0"
      >
      <description-html>
         <![CDATA[Transport zone type.]]>
      </description-html>
   <value name="vlan" vmodl-name="vlan">
   </value>
   <value name="overlay" vmodl-name="overlay">
   </value>
   </enum>
   <enum name="DasVmPriority"
      type-id="vim.cluster.DasVmConfigInfo.Priority"
      vmodl-name="vim.cluster.DasVmConfigInfo.Priority"
      enclosing-type-id-ref="vim.cluster.DasVmConfigInfo"
      version-id-ref="vim.version.version1"
      is-deprecated="true"
      >
      <description-html>
         <![CDATA[The priority of the virtual machine determines the preference
  given to it if sufficient capacity is not available to power
  on all failed virtual machines. For example, high priority
  virtual machines on a host get preference over low priority
  virtual machines.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of VI API 2.5, use <a href="vim.cluster.DasVmSettings.RestartPriority.html">ClusterDasVmSettingsRestartPriority</a>.]]>
      </deprecated-html>
   <value name="disabled" vmodl-name="disabled">
   </value>
   <value name="low" vmodl-name="low">
   </value>
   <value name="medium" vmodl-name="medium">
   </value>
   <value name="high" vmodl-name="high">
   </value>
   </enum>
   <enum name="VirtualDeviceConfigSpecFileOperation"
      type-id="vim.vm.device.VirtualDeviceSpec.FileOperation"
      vmodl-name="vim.vm.device.VirtualDeviceSpec.FileOperation"
      enclosing-type-id-ref="vim.vm.device.VirtualDeviceSpec"
      version-id-ref="vim.version.version1"
      >
      <description-html>
         <![CDATA[The type of operation being performed on the backing of a virtual device.
  Valid values are:]]>
      </description-html>
   <value name="create" vmodl-name="create">
   </value>
   <value name="destroy" vmodl-name="destroy">
   </value>
   <value name="replace" vmodl-name="replace">
   </value>
   </enum>
   <enum name="VirtualDiskVFlashCacheConfigInfoCacheMode"
      type-id="vim.vm.device.VirtualDisk.VFlashCacheConfigInfo.CacheMode"
      vmodl-name="vim.vm.device.VirtualDisk.VFlashCacheConfigInfo.CacheMode"
      enclosing-type-id-ref="vim.vm.device.VirtualDisk.VFlashCacheConfigInfo"
      version-id-ref="vim.version.version9"
      >
      <description-html>
         <![CDATA[Pre-defined constants for cache modes.]]>
      </description-html>
   <value name="write_thru" vmodl-name="write_thru">
   </value>
   <value name="write_back" vmodl-name="write_back">
   </value>
   </enum>
   <enum name="HostDiskPartitionInfoPartitionFormat"
      type-id="vim.host.DiskPartitionInfo.PartitionFormat"
      vmodl-name="vim.host.DiskPartitionInfo.PartitionFormat"
      enclosing-type-id-ref="vim.host.DiskPartitionInfo"
      version-id-ref="vim.version.version7"
      >
      <description-html>
         <![CDATA[List of partition format types. This denotes the partition table layout.]]>
      </description-html>
   <value name="gpt" vmodl-name="gpt">
   </value>
   <value name="mbr" vmodl-name="mbr">
   </value>
   <value name="unknown" vmodl-name="unknown">
   </value>
   </enum>
   <enum name="AlarmFilterSpecAlarmTypeByTrigger"
      type-id="vim.alarm.AlarmFilterSpec.AlarmTypeByTrigger"
      vmodl-name="vim.alarm.AlarmFilterSpec.AlarmTypeByTrigger"
      enclosing-type-id-ref="vim.alarm.AlarmFilterSpec"
      version-id-ref="vim.version.version12"
      >
      <description-html>
         <![CDATA[Alarm triggering type. The main divisions are event triggered and
 metric- or state-based alarms.]]>
      </description-html>
   <value name="triggerTypeAll" vmodl-name="triggerTypeAll">
   </value>
   <value name="triggerTypeEvent" vmodl-name="triggerTypeEvent">
   </value>
   <value name="triggerTypeMetric" vmodl-name="triggerTypeMetric">
   </value>
   </enum>
   <enum name="VirtualMachineTargetInfoConfigurationTag"
      type-id="vim.vm.TargetInfo.ConfigurationTag"
      vmodl-name="vim.vm.TargetInfo.ConfigurationTag"
      enclosing-type-id-ref="vim.vm.TargetInfo"
      version-id-ref="vim.version.version1"
      >
      <description-html>
         <![CDATA[Describes how widely the endpoint is available in a cluster.
  Note that these fields are not necessarily mutual-exclusive.]]>
      </description-html>
   <value name="compliant" vmodl-name="compliant">
   </value>
   <value name="clusterWide" vmodl-name="clusterWide">
   </value>
   </enum>
   <enum name="VirtualMachineVMCIDeviceProtocol"
      type-id="vim.vm.device.VirtualVMCIDevice.Protocol"
      vmodl-name="vim.vm.device.VirtualVMCIDevice.Protocol"
      enclosing-type-id-ref="vim.vm.device.VirtualVMCIDevice"
      version-id-ref="vim.version.version10"
      >
      <description-html>
         <![CDATA[Set of possible values for protocol field in FilterSpec.]]>
      </description-html>
   <value name="hypervisor" vmodl-name="hypervisor">
   </value>
   <value name="doorbell" vmodl-name="doorbell">
   </value>
   <value name="queuepair" vmodl-name="queuepair">
   </value>
   <value name="datagram" vmodl-name="datagram">
   </value>
   <value name="stream" vmodl-name="stream">
   </value>
   <value name="anyProtocol" vmodl-name="anyProtocol">
   </value>
   </enum>
   <enum name="VFlashModuleNotSupportedReason"
      type-id="vim.fault.VFlashModuleNotSupported.Reason"
      vmodl-name="vim.fault.VFlashModuleNotSupported.Reason"
      enclosing-type-id-ref="vim.fault.VFlashModuleNotSupported"
      version-id-ref="vim.version.version9"
      >
   <value name="CacheModeNotSupported" vmodl-name="CacheModeNotSupported">
   </value>
   <value name="CacheConsistencyTypeNotSupported" vmodl-name="CacheConsistencyTypeNotSupported">
   </value>
   <value name="CacheBlockSizeNotSupported" vmodl-name="CacheBlockSizeNotSupported">
   </value>
   <value name="CacheReservationNotSupported" vmodl-name="CacheReservationNotSupported">
   </value>
   <value name="DiskSizeNotSupported" vmodl-name="DiskSizeNotSupported">
   </value>
   </enum>
   <enum name="VirtualMachineToolsRunningStatus"
      type-id="vim.vm.GuestInfo.ToolsRunningStatus"
      vmodl-name="vim.vm.GuestInfo.ToolsRunningStatus"
      enclosing-type-id-ref="vim.vm.GuestInfo"
      version-id-ref="vim.version.version5"
      >
      <description-html>
         <![CDATA[Current running status of VMware Tools running in the guest
  operating system.]]>
      </description-html>
   <value name="guestToolsNotRunning" vmodl-name="guestToolsNotRunning">
   </value>
   <value name="guestToolsRunning" vmodl-name="guestToolsRunning">
   </value>
   <value name="guestToolsExecutingScripts" vmodl-name="guestToolsExecutingScripts">
   </value>
   </enum>
   <enum name="CannotUseNetworkReason"
      type-id="vim.fault.CannotUseNetwork.Reason"
      vmodl-name="vim.fault.CannotUseNetwork.Reason"
      enclosing-type-id-ref="vim.fault.CannotUseNetwork"
      version-id-ref="vim.version.version9"
      >
   <value name="NetworkReservationNotSupported" vmodl-name="NetworkReservationNotSupported">
   </value>
   <value name="MismatchedNetworkPolicies" vmodl-name="MismatchedNetworkPolicies">
   </value>
   <value name="MismatchedDvsVersionOrVendor" vmodl-name="MismatchedDvsVersionOrVendor">
   </value>
   <value name="VMotionToUnsupportedNetworkType" vmodl-name="VMotionToUnsupportedNetworkType">
   </value>
   <value name="NetworkUnderMaintenance" vmodl-name="NetworkUnderMaintenance" version-id-ref="NetworkUnderMaintenance">
   </value>
   <value name="MismatchedEnsMode" vmodl-name="MismatchedEnsMode" version-id-ref="MismatchedEnsMode">
   </value>
   </enum>
   <enum name="HostConfigChangeMode"
      type-id="vim.host.ConfigChange.Mode"
      vmodl-name="vim.host.ConfigChange.Mode"
      enclosing-type-id-ref="vim.host.ConfigChange"
      version-id-ref="vim.version.version1"
      >
      <description-html>
         <![CDATA[This is a global mode on a configuration specification indicating
  whether the structure represents the desired state or the set of
  operations to apply on the managed object.
  <p>]]>
      </description-html>
   <value name="modify" vmodl-name="modify">
   </value>
   <value name="replace" vmodl-name="replace">
   </value>
   </enum>
   <enum name="FtIssuesOnHostHostSelectionType"
      type-id="vim.fault.FtIssuesOnHost.HostSelectionType"
      vmodl-name="vim.fault.FtIssuesOnHost.HostSelectionType"
      enclosing-type-id-ref="vim.fault.FtIssuesOnHost"
      version-id-ref="vim.version.version5"
      >
      <description-html>
         <![CDATA[HostSelectionType defines how the host was selected]]>
      </description-html>
   <value name="user" vmodl-name="user">
   </value>
   <value name="vc" vmodl-name="vc">
   </value>
   <value name="drs" vmodl-name="drs">
   </value>
   </enum>
   <enum name="StateAlarmOperator"
      type-id="vim.alarm.StateAlarmExpression.StateOperator"
      vmodl-name="vim.alarm.StateAlarmExpression.StateOperator"
      enclosing-type-id-ref="vim.alarm.StateAlarmExpression"
      version-id-ref="vim.version.version1"
      >
      <description-html>
         <![CDATA[The operation on the target state.]]>
      </description-html>
   <value name="isEqual" vmodl-name="isEqual">
   </value>
   <value name="isUnequal" vmodl-name="isUnequal">
   </value>
   </enum>
   <enum name="InvalidDasConfigArgumentEntryForInvalidArgument"
      type-id="vim.fault.InvalidDasConfigArgument.EntryForInvalidArgument"
      vmodl-name="vim.fault.InvalidDasConfigArgument.EntryForInvalidArgument"
      enclosing-type-id-ref="vim.fault.InvalidDasConfigArgument"
      version-id-ref="vim.version.version8"
      >
   <value name="admissionControl" vmodl-name="admissionControl">
   </value>
   <value name="userHeartbeatDs" vmodl-name="userHeartbeatDs">
   </value>
   <value name="vmConfig" vmodl-name="vmConfig">
   </value>
   </enum>
   <enum name="HostConfigChangeOperation"
      type-id="vim.host.ConfigChange.Operation"
      vmodl-name="vim.host.ConfigChange.Operation"
      enclosing-type-id-ref="vim.host.ConfigChange"
      version-id-ref="vim.version.version1"
      >
      <description-html>
         <![CDATA[This list indicates the operation that should be performed for an
  entity.
  <p>]]>
      </description-html>
   <value name="add" vmodl-name="add">
   </value>
   <value name="remove" vmodl-name="remove">
   </value>
   <value name="edit" vmodl-name="edit">
   </value>
   <value name="ignore" vmodl-name="ignore" version-id-ref="ignore">
   </value>
   </enum>
   <enum name="HostVmciAccessManagerMode"
      type-id="vim.host.VmciAccessManager.Mode"
      vmodl-name="vim.host.VmciAccessManager.Mode"
      enclosing-type-id-ref="vim.host.VmciAccessManager"
      version-id-ref="vim.version.version7"
      >
      <description-html>
         <![CDATA[Set of possible values for mode field in AccessSpec.]]>
      </description-html>
   <value name="grant" vmodl-name="grant">
   </value>
   <value name="replace" vmodl-name="replace">
   </value>
   <value name="revoke" vmodl-name="revoke">
   </value>
   </enum>
   <enum name="AnswerFileValidationInfoStatus"
      type-id="vim.profile.host.profileEngine.AnswerFileValidationInfo.Status"
      vmodl-name="vim.profile.host.profileEngine.AnswerFileValidationInfo.Status"
      enclosing-type-id-ref="vim.profile.host.profileEngine.AnswerFileValidationInfo"
      version-id-ref="vim.version.version12"
      >
      <description-html>
         <![CDATA[Defines the result status values for a validating answer file.]]>
      </description-html>
   <value name="success" vmodl-name="success">
   </value>
   <value name="failed" vmodl-name="failed">
   </value>
   <value name="failed_defaults" vmodl-name="failed_defaults">
   </value>
   </enum>
   <enum name="PlacementAffinityRuleRuleScope"
      type-id="vim.storageDrs.PlacementAffinityRule.RuleScope"
      vmodl-name="vim.storageDrs.PlacementAffinityRule.RuleScope"
      enclosing-type-id-ref="vim.storageDrs.PlacementAffinityRule"
      version-id-ref="vim.version.version10"
      >
      <description-html>
         <![CDATA[Rule scope determines conditions when an affinity rule is
 satisfied. The following uses affinity rule as example.

 cluster: All Vms in the rule list are placed in a single cluster.

 host: All Vms in the rule list are placed in a single host.

 storagePod: All Vms in the rule list are placed in a single storagePod.

 datastore: All Vms in the rule list are placed in a single datastore.]]>
      </description-html>
   <value name="cluster" vmodl-name="cluster">
   </value>
   <value name="host" vmodl-name="host">
   </value>
   <value name="storagePod" vmodl-name="storagePod">
   </value>
   <value name="datastore" vmodl-name="datastore">
   </value>
   </enum>
   <enum name="HostFirewallRuleProtocol"
      type-id="vim.host.Ruleset.Rule.Protocol"
      vmodl-name="vim.host.Ruleset.Rule.Protocol"
      enclosing-type-id-ref="vim.host.Ruleset.Rule"
      version-id-ref="vim.version.version1"
      >
      <description-html>
         <![CDATA[Set of valid port protocols.]]>
      </description-html>
   <value name="tcp" vmodl-name="tcp">
   </value>
   <value name="udp" vmodl-name="udp">
   </value>
   </enum>
   <enum name="ClusterComputeResourceHCIWorkflowState"
      type-id="vim.ClusterComputeResource.HCIWorkflowState"
      vmodl-name="vim.ClusterComputeResource.HCIWorkflowState"
      enclosing-type-id-ref="vim.ClusterComputeResource"
      version-id-ref="vim.version.version13"
      >
      <description-html>
         <![CDATA[HCIWorkflowState identifies the state of the cluser from the perspective of HCI
 workflow.  The workflow begins with in_progress mode and can transition
 to 'done' or 'invalid', both of which are terminal states.]]>
      </description-html>
   <value name="in_progress" vmodl-name="in_progress">
   </value>
   <value name="done" vmodl-name="done">
   </value>
   <value name="invalid" vmodl-name="invalid">
   </value>
   </enum>
   <enum name="PropertyChangeOp"
      type-id="vmodl.query.PropertyCollector.Change.Op"
      vmodl-name="vmodl.query.PropertyCollector.Change.Op"
      enclosing-type-id-ref="vmodl.query.PropertyCollector.Change"
      version-id-ref="vmodl.query.version.version1"
      >
      <description-html>
         <![CDATA[Enumeration of possible changes to a property.]]>
      </description-html>
   <value name="add" vmodl-name="add">
   </value>
   <value name="remove" vmodl-name="remove">
   </value>
   <value name="assign" vmodl-name="assign">
   </value>
   <value name="indirectRemove" vmodl-name="indirectRemove">
   </value>
   </enum>
   <enum name="SlpDiscoveryMethod"
      type-id="vim.host.InternetScsiHba.DiscoveryProperties.SlpDiscoveryMethod"
      vmodl-name="vim.host.InternetScsiHba.DiscoveryProperties.SlpDiscoveryMethod"
      enclosing-type-id-ref="vim.host.InternetScsiHba.DiscoveryProperties"
      version-id-ref="vim.version.version1"
      >
      <description-html>
         <![CDATA[The available SLP discovery methods.]]>
      </description-html>
   <value name="slpDhcp" vmodl-name="slpDhcp">
   </value>
   <value name="slpAutoUnicast" vmodl-name="slpAutoUnicast">
   </value>
   <value name="slpAutoMulticast" vmodl-name="slpAutoMulticast">
   </value>
   <value name="slpManual" vmodl-name="slpManual">
   </value>
   </enum>
   <enum name="VirtualMachineDeviceRuntimeInfoVirtualEthernetCardRuntimeStateVmDirectPathGen2InactiveReasonVm"
      type-id="vim.vm.DeviceRuntimeInfo.VirtualEthernetCardRuntimeState.VmDirectPathGen2InactiveReasonVm"
      vmodl-name="vim.vm.DeviceRuntimeInfo.VirtualEthernetCardRuntimeState.VmDirectPathGen2InactiveReasonVm"
      enclosing-type-id-ref="vim.vm.DeviceRuntimeInfo.VirtualEthernetCardRuntimeState"
      version-id-ref="vim.version.version6"
      >
   <value name="vmNptIncompatibleGuest" vmodl-name="vmNptIncompatibleGuest">
   </value>
   <value name="vmNptIncompatibleGuestDriver" vmodl-name="vmNptIncompatibleGuestDriver">
   </value>
   <value name="vmNptIncompatibleAdapterType" vmodl-name="vmNptIncompatibleAdapterType">
   </value>
   <value name="vmNptDisabledOrDisconnectedAdapter" vmodl-name="vmNptDisabledOrDisconnectedAdapter">
   </value>
   <value name="vmNptIncompatibleAdapterFeatures" vmodl-name="vmNptIncompatibleAdapterFeatures">
   </value>
   <value name="vmNptIncompatibleBackingType" vmodl-name="vmNptIncompatibleBackingType">
   </value>
   <value name="vmNptInsufficientMemoryReservation" vmodl-name="vmNptInsufficientMemoryReservation">
   </value>
   <value name="vmNptFaultToleranceOrRecordReplayConfigured" vmodl-name="vmNptFaultToleranceOrRecordReplayConfigured">
   </value>
   <value name="vmNptConflictingIOChainConfigured" vmodl-name="vmNptConflictingIOChainConfigured">
   </value>
   <value name="vmNptMonitorBlocks" vmodl-name="vmNptMonitorBlocks">
   </value>
   <value name="vmNptConflictingOperationInProgress" vmodl-name="vmNptConflictingOperationInProgress">
   </value>
   <value name="vmNptRuntimeError" vmodl-name="vmNptRuntimeError">
   </value>
   <value name="vmNptOutOfIntrVector" vmodl-name="vmNptOutOfIntrVector">
   </value>
   <value name="vmNptVMCIActive" vmodl-name="vmNptVMCIActive" version-id-ref="vmNptVMCIActive">
   </value>
   </enum>
   <enum name="HostActiveDirectoryAuthenticationCertificateDigest"
      type-id="vim.host.ActiveDirectoryAuthentication.CertificateDigest"
      vmodl-name="vim.host.ActiveDirectoryAuthentication.CertificateDigest"
      enclosing-type-id-ref="vim.host.ActiveDirectoryAuthentication"
      version-id-ref="vim.version.version10"
      >
   <value name="SHA1" vmodl-name="SHA1">
   </value>
   </enum>
   <enum name="VsanHostHealthState"
      type-id="vim.vsan.host.HealthState"
      vmodl-name="vim.vsan.host.HealthState"
      version-id-ref="vim.version.version9"
      >
      <description-html>
         <![CDATA[A <a href="vim.vsan.host.HealthState.html">VsanHostHealthState</a> represents the state of a participating
 host in the VSAN service.<br>See <a href="vim.vsan.host.ClusterStatus.html">VsanHostClusterStatus</a><br>]]>
      </description-html>
   <value name="unknown" vmodl-name="unknown">
   </value>
   <value name="healthy" vmodl-name="healthy">
   </value>
   <value name="unhealthy" vmodl-name="unhealthy">
   </value>
   </enum>
   <enum name="VirtualMachineMemoryAllocationPolicy"
      type-id="vim.host.MemoryManagerSystem.VirtualMachineReservationInfo.AllocationPolicy"
      vmodl-name="vim.host.MemoryManagerSystem.VirtualMachineReservationInfo.AllocationPolicy"
      enclosing-type-id-ref="vim.host.MemoryManagerSystem.VirtualMachineReservationInfo"
      version-id-ref="vim.version.version2"
      >
      <description-html>
         <![CDATA[Means for allocating additional memory for virtual machines.]]>
      </description-html>
   <value name="swapNone" vmodl-name="swapNone">
   </value>
   <value name="swapSome" vmodl-name="swapSome">
   </value>
   <value name="swapMost" vmodl-name="swapMost">
   </value>
   </enum>
   <enum name="VirtualDeviceConnectInfoMigrateConnectOp"
      type-id="vim.vm.device.VirtualDevice.ConnectInfo.MigrateConnectOp"
      vmodl-name="vim.vm.device.VirtualDevice.ConnectInfo.MigrateConnectOp"
      enclosing-type-id-ref="vim.vm.device.VirtualDevice.ConnectInfo"
      version-id-ref="vim.version.version12"
      >
      <description-html>
         <![CDATA[Contains information about connectable virtual devices when
  the virtual machine restores from a migration.]]>
      </description-html>
   <value name="connect" vmodl-name="connect">
   </value>
   <value name="disconnect" vmodl-name="disconnect">
   </value>
   <value name="unset" vmodl-name="unset">
   </value>
   </enum>
   <enum name="HostMountInfoInaccessibleReason"
      type-id="vim.host.MountInfo.InaccessibleReason"
      vmodl-name="vim.host.MountInfo.InaccessibleReason"
      enclosing-type-id-ref="vim.host.MountInfo"
      version-id-ref="vim.version.version8"
      >
      <description-html>
         <![CDATA[A datastore can become inaccessible due to a number of reasons as
  defined in this enum InaccessibleReason.
  The reason for a datastore being inaccessible is reported in
  <a href="vim.host.MountInfo.html#inaccessibleReason">inaccessibleReason</a>.

  APD ("All Paths Down") is a condition where a SAN or NFS storage has
  become inaccessible for unknown reasons. It only indicates loss of
  connectivity and does not indicate storage device failure or
  LUN removal (Permanent Device Loss or PDL)

  A difference between APD and PDL is that APD may recover
  in which case all use cases will start to work as before. In case of PDL
  the failed datastore/device is unlikely to recover and hence the device
  path information and data cache will be emptied. If the PDL condition
  recovers, the failed datastores have to be added back to the host. Once
  in PDL a datastore cannot be added back until there are no longer any
  open files on the datastore.

  PDL is not linked to the APD and can happen at any time with or without APD
  preceding. If APD and PDL occur at the same time, APD  will be reported first.
  Once (and if) the APD condition clears, PermanentDataLoss will be reported if
  PDL condition still exists.]]>
      </description-html>
   <value name="AllPathsDown_Start" vmodl-name="AllPathsDown_Start">
   </value>
   <value name="AllPathsDown_Timeout" vmodl-name="AllPathsDown_Timeout">
   </value>
   <value name="PermanentDeviceLoss" vmodl-name="PermanentDeviceLoss">
   </value>
   </enum>
   <enum name="HostCapabilityFtUnsupportedReason"
      type-id="vim.host.Capability.FtUnsupportedReason"
      vmodl-name="vim.host.Capability.FtUnsupportedReason"
      enclosing-type-id-ref="vim.host.Capability"
      version-id-ref="vim.version.version6"
      is-deprecated="true"
      >
      <description-html>
         <![CDATA[Set of possible values for
  <a href="vim.host.Capability.html#ftCompatibilityIssues">ftCompatibilityIssues</a>]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 7.0, use
  <a href="vim.fault.VmFaultToleranceConfigIssue.ReasonForIssue.html">VmFaultToleranceConfigIssueReasonForIssue</a>]]>
      </deprecated-html>
   <value name="vMotionNotLicensed" vmodl-name="vMotionNotLicensed">
   </value>
   <value name="missingVMotionNic" vmodl-name="missingVMotionNic">
   </value>
   <value name="missingFTLoggingNic" vmodl-name="missingFTLoggingNic">
   </value>
   <value name="ftNotLicensed" vmodl-name="ftNotLicensed">
   </value>
   <value name="haAgentIssue" vmodl-name="haAgentIssue">
   </value>
   <value name="unsupportedProduct" vmodl-name="unsupportedProduct" version-id-ref="unsupportedProduct">
   </value>
   <value name="cpuHvUnsupported" vmodl-name="cpuHvUnsupported" version-id-ref="cpuHvUnsupported">
   </value>
   <value name="cpuHwmmuUnsupported" vmodl-name="cpuHwmmuUnsupported" version-id-ref="cpuHwmmuUnsupported">
   </value>
   <value name="cpuHvDisabled" vmodl-name="cpuHvDisabled" version-id-ref="cpuHvDisabled">
   </value>
   </enum>
   <enum name="HostCpuPowerManagementInfoPolicyType"
      type-id="vim.host.CpuPowerManagementInfo.PolicyType"
      vmodl-name="vim.host.CpuPowerManagementInfo.PolicyType"
      enclosing-type-id-ref="vim.host.CpuPowerManagementInfo"
      version-id-ref="vim.version.version5"
      >
      <description-html>
         <![CDATA[Possible values for Current CPU power management policy]]>
      </description-html>
   <value name="off" vmodl-name="off">
   </value>
   <value name="staticPolicy" vmodl-name="staticPolicy">
   </value>
   <value name="dynamicPolicy" vmodl-name="dynamicPolicy">
   </value>
   </enum>
   <enum name="VirtualMachineGuestOsFamily"
      type-id="vim.vm.GuestOsDescriptor.GuestOsFamily"
      vmodl-name="vim.vm.GuestOsDescriptor.GuestOsFamily"
      enclosing-type-id-ref="vim.vm.GuestOsDescriptor"
      version-id-ref="vim.version.version1"
      >
      <description-html>
         <![CDATA[Guest operating system family constants.]]>
      </description-html>
   <value name="windowsGuest" vmodl-name="windowsGuest">
   </value>
   <value name="linuxGuest" vmodl-name="linuxGuest">
   </value>
   <value name="netwareGuest" vmodl-name="netwareGuest">
   </value>
   <value name="solarisGuest" vmodl-name="solarisGuest">
   </value>
   <value name="darwinGuestFamily" vmodl-name="darwinGuestFamily" version-id-ref="darwinGuestFamily">
   </value>
   <value name="otherGuestFamily" vmodl-name="otherGuestFamily">
   </value>
   </enum>
   <enum name="ResourceConfigSpecScaleSharesBehavior"
      type-id="vim.ResourceConfigSpec.ScaleSharesBehavior"
      vmodl-name="vim.ResourceConfigSpec.ScaleSharesBehavior"
      enclosing-type-id-ref="vim.ResourceConfigSpec"
      version-id-ref="vim.version.v7_0"
      >
   <value name="disabled" vmodl-name="disabled">
   </value>
   <value name="scaleCpuAndMemoryShares" vmodl-name="scaleCpuAndMemoryShares">
   </value>
   </enum>
   <enum name="HostNvmeDiscoveryLogTransportRequirements"
      type-id="vim.host.NvmeDiscoveryLog.TransportRequirements"
      vmodl-name="vim.host.NvmeDiscoveryLog.TransportRequirements"
      enclosing-type-id-ref="vim.host.NvmeDiscoveryLog"
      version-id-ref="vim.version.version1"
      >
      <description-html>
         <![CDATA[This enum represents the supported types of transport requirements.]]>
      </description-html>
   <value name="secureChannelRequired" vmodl-name="secureChannelRequired">
   </value>
   <value name="secureChannelNotRequired" vmodl-name="secureChannelNotRequired">
   </value>
   <value name="requirementsNotSpecified" vmodl-name="requirementsNotSpecified">
   </value>
   </enum>
   <enum name="ClusterDasAamNodeStateDasState"
      type-id="vim.cluster.DasAamNodeState.DasState"
      vmodl-name="vim.cluster.DasAamNodeState.DasState"
      enclosing-type-id-ref="vim.cluster.DasAamNodeState"
      version-id-ref="vim.version.version5"
      >
      <description-html>
         <![CDATA[The <a href="vim.cluster.DasAamNodeState.DasState.html">ClusterDasAamNodeStateDasState</a> enumerated type defines
 values for host HA configuration and runtime state properties
 (<a href="vim.cluster.DasAamNodeState.html#configState">configState</a> and
 <a href="vim.cluster.DasAamNodeState.html#runtimeState">runtimeState</a>).]]>
      </description-html>
   <value name="uninitialized" vmodl-name="uninitialized">
   </value>
   <value name="initialized" vmodl-name="initialized">
   </value>
   <value name="configuring" vmodl-name="configuring">
   </value>
   <value name="unconfiguring" vmodl-name="unconfiguring">
   </value>
   <value name="running" vmodl-name="running">
   </value>
   <value name="error" vmodl-name="error">
   </value>
   <value name="agentShutdown" vmodl-name="agentShutdown">
   </value>
   <value name="nodeFailed" vmodl-name="nodeFailed">
   </value>
   </enum>
   <enum name="VirtualMachinePowerState"
      type-id="vim.VirtualMachine.PowerState"
      vmodl-name="vim.VirtualMachine.PowerState"
      enclosing-type-id-ref="vim.VirtualMachine"
      version-id-ref="vim.version.version1"
      >
      <description-html>
         <![CDATA[The PowerState type defines a simple set of states for a virtual machine:
 poweredOn, poweredOff, and suspended. This type does not model substates,
 such as when a task is running to change the virtual machine state.
 If the virtual machine is in a state with a task in progress, it
 transitions to a new state when the task completes. For example, a virtual
 machine continues to be in the poweredOn state while a suspend task
 is running, and changes to the suspended state once the task finishes.
 <p>
 As a consequence of this approach, clients interested in monitoring
 the status of a virtual machine should typically track the
 <a href="vim.ManagedEntity.html#recentTask">RecentTask</a> data object in addition to the
 <a href="vim.vm.RuntimeInfo.html#powerState">powerState</a> object.]]>
      </description-html>
   <value name="poweredOff" vmodl-name="poweredOff">
   </value>
   <value name="poweredOn" vmodl-name="poweredOn">
   </value>
   <value name="suspended" vmodl-name="suspended">
   </value>
   </enum>
   <enum name="HostGraphicsConfigGraphicsType"
      type-id="vim.host.GraphicsConfig.GraphicsType"
      vmodl-name="vim.host.GraphicsConfig.GraphicsType"
      enclosing-type-id-ref="vim.host.GraphicsConfig"
      version-id-ref="vim.version.version11"
      >
      <description-html>
         <![CDATA[Possible values for graphics type.]]>
      </description-html>
   <value name="shared" vmodl-name="shared">
   </value>
   <value name="sharedDirect" vmodl-name="sharedDirect">
   </value>
   </enum>
   <enum name="ClusterVmComponentProtectionSettingsVmReactionOnAPDCleared"
      type-id="vim.cluster.VmComponentProtectionSettings.VmReactionOnAPDCleared"
      vmodl-name="vim.cluster.VmComponentProtectionSettings.VmReactionOnAPDCleared"
      enclosing-type-id-ref="vim.cluster.VmComponentProtectionSettings"
      version-id-ref="vim.version.version10"
      >
      <description-html>
         <![CDATA[If an APD condition clears after an APD timeout condition has been declared and before
  VM Component Protection service terminated the VM, the guestOS and application may
  no longer be operational. VM Component Protection may be configured to reset the
  VM (<a href="vim.VirtualMachine.html#reset">ResetVM_Task</a>) to restore the service of guest applications.]]>
      </description-html>
   <value name="none" vmodl-name="none">
   </value>
   <value name="reset" vmodl-name="reset">
   </value>
   <value name="useClusterDefault" vmodl-name="useClusterDefault">
   </value>
   </enum>
   <enum name="LatencySensitivitySensitivityLevel"
      type-id="vim.LatencySensitivity.SensitivityLevel"
      vmodl-name="vim.LatencySensitivity.SensitivityLevel"
      enclosing-type-id-ref="vim.LatencySensitivity"
      version-id-ref="vim.version.version8"
      >
      <description-html>
         <![CDATA[Enumeration of the nominal latency-sensitive values which can be
  used to specify the latency-sensitivity level of the application.
  <p />
  In terms of latency-sensitivity the values relate:
  high>medium>normal>low.]]>
      </description-html>
   <value name="low" vmodl-name="low">
   </value>
   <value name="normal" vmodl-name="normal">
   </value>
   <value name="medium" vmodl-name="medium">
   </value>
   <value name="high" vmodl-name="high">
   </value>
   <value name="custom" vmodl-name="custom">
   </value>
   </enum>
   <enum name="VsanDiskIssueType"
      type-id="vim.vsan.host.VsanRuntimeInfo.DiskIssueType"
      vmodl-name="vim.vsan.host.VsanRuntimeInfo.DiskIssueType"
      enclosing-type-id-ref="vim.vsan.host.VsanRuntimeInfo"
      version-id-ref="vim.version.version9"
      >
      <description-html>
         <![CDATA[The list of disk issues.]]>
      </description-html>
   <value name="nonExist" vmodl-name="nonExist">
   </value>
   <value name="stampMismatch" vmodl-name="stampMismatch">
   </value>
   <value name="unknown" vmodl-name="unknown">
   </value>
   </enum>
   <enum name="ClusterHostInfraUpdateHaModeActionOperationType"
      type-id="vim.cluster.HostInfraUpdateHaModeAction.OperationType"
      vmodl-name="vim.cluster.HostInfraUpdateHaModeAction.OperationType"
      enclosing-type-id-ref="vim.cluster.HostInfraUpdateHaModeAction"
      version-id-ref="vim.version.version11"
      >
      <description-html>
         <![CDATA[Describes the operation type of the action. enterexitQuarantine suggests
 that the host is only exiting the quarantine state (i.e. not the
 maintenance mode).]]>
      </description-html>
   <value name="enterQuarantine" vmodl-name="enterQuarantine">
   </value>
   <value name="exitQuarantine" vmodl-name="exitQuarantine">
   </value>
   <value name="enterMaintenance" vmodl-name="enterMaintenance">
   </value>
   </enum>
   <enum name="IncompatibleHostForVmReplicationIncompatibleReason"
      type-id="vim.fault.IncompatibleHostForVmReplication.IncompatibleReason"
      vmodl-name="vim.fault.IncompatibleHostForVmReplication.IncompatibleReason"
      enclosing-type-id-ref="vim.fault.IncompatibleHostForVmReplication"
      version-id-ref="vim.version.version10"
      >
   <value name="rpo" vmodl-name="rpo">
   </value>
   <value name="netCompression" vmodl-name="netCompression">
   </value>
   </enum>
   <enum name="VirtualMachineVMCIDeviceDirection"
      type-id="vim.vm.device.VirtualVMCIDevice.Direction"
      vmodl-name="vim.vm.device.VirtualVMCIDevice.Direction"
      enclosing-type-id-ref="vim.vm.device.VirtualVMCIDevice"
      version-id-ref="vim.version.version10"
      >
      <description-html>
         <![CDATA[Set of possible values for direction field in FilterSpec.]]>
      </description-html>
   <value name="guest" vmodl-name="guest">
   </value>
   <value name="host" vmodl-name="host">
   </value>
   <value name="anyDirection" vmodl-name="anyDirection">
   </value>
   </enum>
   <enum name="DVSMacLimitPolicyType"
      type-id="vim.dvs.VmwareDistributedVirtualSwitch.MacLimitPolicyType"
      vmodl-name="vim.dvs.VmwareDistributedVirtualSwitch.MacLimitPolicyType"
      enclosing-type-id-ref="vim.dvs.VmwareDistributedVirtualSwitch"
      version-id-ref="vim.version.version12"
      >
   <value name="allow" vmodl-name="allow">
   </value>
   <value name="drop" vmodl-name="drop">
   </value>
   </enum>
   <enum name="PerfSummaryType"
      type-id="vim.PerformanceManager.CounterInfo.RollupType"
      vmodl-name="vim.PerformanceManager.CounterInfo.RollupType"
      enclosing-type-id-ref="vim.PerformanceManager.CounterInfo"
      version-id-ref="vim.version.version1"
      >
      <description-html>
         <![CDATA[Indicates how multiple samples of a specific counter type are
  transformed into a single statistical value.]]>
      </description-html>
   <value name="average" vmodl-name="average">
   </value>
   <value name="maximum" vmodl-name="maximum">
   </value>
   <value name="minimum" vmodl-name="minimum">
   </value>
   <value name="latest" vmodl-name="latest">
   </value>
   <value name="summation" vmodl-name="summation">
   </value>
   <value name="none" vmodl-name="none">
   </value>
   </enum>
   <enum name="TaskFilterSpecRecursionOption"
      type-id="vim.TaskFilterSpec.RecursionOption"
      vmodl-name="vim.TaskFilterSpec.RecursionOption"
      enclosing-type-id-ref="vim.TaskFilterSpec"
      version-id-ref="vim.version.version1"
      >
      <description-html>
         <![CDATA[This option specifies how to select tasks based on child relationships
  in the inventory hierarchy. If a managed entity has children, their tasks
  can be retrieved with this filter option.]]>
      </description-html>
   <value name="self" vmodl-name="self">
   </value>
   <value name="children" vmodl-name="children">
   </value>
   <value name="all" vmodl-name="all">
   </value>
   </enum>
   <enum name="VmDasBeingResetEventReasonCode"
      type-id="vim.event.VmDasBeingResetEvent.ReasonCode"
      vmodl-name="vim.event.VmDasBeingResetEvent.ReasonCode"
      enclosing-type-id-ref="vim.event.VmDasBeingResetEvent"
      version-id-ref="vim.version.version6"
      >
   <value name="vmtoolsHeartbeatFailure" vmodl-name="vmtoolsHeartbeatFailure">
   </value>
   <value name="appHeartbeatFailure" vmodl-name="appHeartbeatFailure">
   </value>
   <value name="appImmediateResetRequest" vmodl-name="appImmediateResetRequest" version-id-ref="appImmediateResetRequest">
   </value>
   <value name="vmcpResetApdCleared" vmodl-name="vmcpResetApdCleared" version-id-ref="vmcpResetApdCleared">
   </value>
   </enum>
   <enum name="SessionManagerHttpServiceRequestSpecMethod"
      type-id="vim.SessionManager.HttpServiceRequestSpec.Method"
      vmodl-name="vim.SessionManager.HttpServiceRequestSpec.Method"
      enclosing-type-id-ref="vim.SessionManager.HttpServiceRequestSpec"
      version-id-ref="vim.version.version7"
      >
      <description-html>
         <![CDATA[HTTP request methods.]]>
      </description-html>
   <value name="httpOptions" vmodl-name="httpOptions">
   </value>
   <value name="httpGet" vmodl-name="httpGet">
   </value>
   <value name="httpHead" vmodl-name="httpHead">
   </value>
   <value name="httpPost" vmodl-name="httpPost">
   </value>
   <value name="httpPut" vmodl-name="httpPut">
   </value>
   <value name="httpDelete" vmodl-name="httpDelete">
   </value>
   <value name="httpTrace" vmodl-name="httpTrace">
   </value>
   <value name="httpConnect" vmodl-name="httpConnect">
   </value>
   </enum>
   <enum name="ReplicationVmFaultReasonForFault"
      type-id="vim.fault.ReplicationVmFault.ReasonForFault"
      vmodl-name="vim.fault.ReplicationVmFault.ReasonForFault"
      enclosing-type-id-ref="vim.fault.ReplicationVmFault"
      version-id-ref="vim.version.version7"
      >
   <value name="notConfigured" vmodl-name="notConfigured">
   </value>
   <value name="poweredOff" vmodl-name="poweredOff">
   </value>
   <value name="suspended" vmodl-name="suspended">
   </value>
   <value name="poweredOn" vmodl-name="poweredOn">
   </value>
   <value name="offlineReplicating" vmodl-name="offlineReplicating">
   </value>
   <value name="invalidState" vmodl-name="invalidState">
   </value>
   <value name="invalidInstanceId" vmodl-name="invalidInstanceId">
   </value>
   <value name="closeDiskError" vmodl-name="closeDiskError" version-id-ref="closeDiskError">
   </value>
   <value name="groupExist" vmodl-name="groupExist" version-id-ref="groupExist">
   </value>
   </enum>
   <enum name="HostVmfsVolumeUnmapBandwidthPolicy"
      type-id="vim.host.VmfsVolume.UnmapBandwidthPolicy"
      vmodl-name="vim.host.VmfsVolume.UnmapBandwidthPolicy"
      enclosing-type-id-ref="vim.host.VmfsVolume"
      version-id-ref="vim.version.version12"
      >
      <description-html>
         <![CDATA[VMFS unmap bandwidth policy. VMFS unmap reclaims unused storage space.
 This specifies the bandwidth policy option of unmaps.]]>
      </description-html>
   <value name="fixed" vmodl-name="fixed">
   </value>
   <value name="dynamic" vmodl-name="dynamic">
   </value>
   </enum>
   <enum name="LicenseManagerState"
      type-id="vim.LicenseManager.LicenseState"
      vmodl-name="vim.LicenseManager.LicenseState"
      enclosing-type-id-ref="vim.LicenseManager"
      version-id-ref="vim.version.version2"
      is-deprecated="true"
      >
      <description-html>
         <![CDATA[State of licensing subsystem.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 4.0, this is not used by the system.]]>
      </deprecated-html>
   <value name="initializing" vmodl-name="initializing">
   </value>
   <value name="normal" vmodl-name="normal">
   </value>
   <value name="marginal" vmodl-name="marginal">
   </value>
   <value name="fault" vmodl-name="fault">
   </value>
   </enum>
   <enum name="VirtualDiskAdapterType"
      type-id="vim.VirtualDiskManager.VirtualDiskAdapterType"
      vmodl-name="vim.VirtualDiskManager.VirtualDiskAdapterType"
      enclosing-type-id-ref="vim.VirtualDiskManager"
      version-id-ref="vim.version.version2"
      >
      <description-html>
         <![CDATA[The types of virtual disk adapters used by virtual disks]]>
      </description-html>
   <value name="ide" vmodl-name="ide">
   </value>
   <value name="busLogic" vmodl-name="busLogic">
   </value>
   <value name="lsiLogic" vmodl-name="lsiLogic">
   </value>
   </enum>
   <enum name="GuestOsDescriptorFirmwareType"
      type-id="vim.vm.GuestOsDescriptor.FirmwareType"
      vmodl-name="vim.vm.GuestOsDescriptor.FirmwareType"
      enclosing-type-id-ref="vim.vm.GuestOsDescriptor"
      version-id-ref="vim.version.version7"
      >
      <description-html>
         <![CDATA[Firmware types]]>
      </description-html>
   <value name="bios" vmodl-name="bios">
   </value>
   <value name="efi" vmodl-name="efi">
   </value>
   </enum>
   <enum name="HostInternetScsiHbaChapAuthenticationType"
      type-id="vim.host.InternetScsiHba.ChapAuthenticationType"
      vmodl-name="vim.host.InternetScsiHba.ChapAuthenticationType"
      enclosing-type-id-ref="vim.host.InternetScsiHba"
      version-id-ref="vim.version.version5"
      >
      <description-html>
         <![CDATA[The type of CHAP authentication setting to use.
  prohibited  : do not use CHAP.
  preferred   : use CHAP if successfully negotiated,
                but allow non-CHAP connections as fallback
  discouraged : use non-CHAP, but allow CHAP connectsion as fallback
  required    : use CHAP for connection strictly, and fail if CHAP
                negotiation fails.

  Defaults to preferred on first configuration if unspecified.]]>
      </description-html>
   <value name="chapProhibited" vmodl-name="chapProhibited">
   </value>
   <value name="chapDiscouraged" vmodl-name="chapDiscouraged">
   </value>
   <value name="chapPreferred" vmodl-name="chapPreferred">
   </value>
   <value name="chapRequired" vmodl-name="chapRequired">
   </value>
   </enum>
   <enum name="SoftwarePackageVibType"
      type-id="vim.host.SoftwarePackage.VibType"
      vmodl-name="vim.host.SoftwarePackage.VibType"
      enclosing-type-id-ref="vim.host.SoftwarePackage"
      version-id-ref="vim.version.version11"
      >
   <value name="bootbank" vmodl-name="bootbank">
   </value>
   <value name="tools" vmodl-name="tools">
   </value>
   <value name="meta" vmodl-name="meta">
   </value>
   </enum>
   <enum name="KmipClusterInfoKmsManagementType"
      type-id="vim.encryption.KmipClusterInfo.KmsManagementType"
      vmodl-name="vim.encryption.KmipClusterInfo.KmsManagementType"
      enclosing-type-id-ref="vim.encryption.KmipClusterInfo"
      version-id-ref="vim.version.v7_0"
      >
      <description-html>
         <![CDATA[Key provider management type.]]>
      </description-html>
   <value name="unknown" vmodl-name="unknown">
   </value>
   <value name="vCenter" vmodl-name="vCenter">
   </value>
   <value name="trustAuthority" vmodl-name="trustAuthority">
   </value>
   </enum>
   <enum name="HostNumericSensorHealthState"
      type-id="vim.host.NumericSensorInfo.HealthState"
      vmodl-name="vim.host.NumericSensorInfo.HealthState"
      enclosing-type-id-ref="vim.host.NumericSensorInfo"
      version-id-ref="vim.version.version2"
      >
      <description-html>
         <![CDATA[Health state of the numeric sensor as reported by the sensor probes.
  Same data reported using command line: esxcli hardware ipmi sdr list]]>
      </description-html>
   <value name="unknown" vmodl-name="unknown">
   </value>
   <value name="green" vmodl-name="green">
   </value>
   <value name="yellow" vmodl-name="yellow">
   </value>
   <value name="red" vmodl-name="red">
   </value>
   </enum>
   <enum name="ClusterVmComponentProtectionSettingsStorageVmReaction"
      type-id="vim.cluster.VmComponentProtectionSettings.StorageVmReaction"
      vmodl-name="vim.cluster.VmComponentProtectionSettings.StorageVmReaction"
      enclosing-type-id-ref="vim.cluster.VmComponentProtectionSettings"
      version-id-ref="vim.version.version10"
      >
      <description-html>
         <![CDATA[The VM policy settings that determine the response to
  storage failures.]]>
      </description-html>
   <value name="disabled" vmodl-name="disabled">
   </value>
   <value name="warning" vmodl-name="warning">
   </value>
   <value name="restartConservative" vmodl-name="restartConservative">
   </value>
   <value name="restartAggressive" vmodl-name="restartAggressive">
   </value>
   <value name="clusterDefault" vmodl-name="clusterDefault">
   </value>
   </enum>
   <enum name="VAppIPAssignmentInfoProtocols"
      type-id="vim.vApp.IPAssignmentInfo.Protocols"
      vmodl-name="vim.vApp.IPAssignmentInfo.Protocols"
      enclosing-type-id-ref="vim.vApp.IPAssignmentInfo"
      version-id-ref="vim.version.version5"
      >
      <description-html>
         <![CDATA[IP protocols supported by the guest.]]>
      </description-html>
   <value name="IPv4" vmodl-name="IPv4">
   </value>
   <value name="IPv6" vmodl-name="IPv6">
   </value>
   </enum>
   <enum name="HostRdmaDeviceConnectionState"
      type-id="vim.host.RdmaDevice.ConnectionState"
      vmodl-name="vim.host.RdmaDevice.ConnectionState"
      enclosing-type-id-ref="vim.host.RdmaDevice"
      version-id-ref="vim.version.v7_0"
      >
      <description-html>
         <![CDATA[Possible RDMA device connection states. These correspond
  to possible link states as defined by the
  Infiniband (TM) specification.
  <p>
  Further details can be found in:
  <ul>
  <li>"Infiniband (TM) Architecture Specification, Volume 1"
  section 7.2 "Link states"</li>
  </ul>]]>
      </description-html>
   <value name="unknown" vmodl-name="unknown">
   </value>
   <value name="down" vmodl-name="down">
   </value>
   <value name="init" vmodl-name="init">
   </value>
   <value name="armed" vmodl-name="armed">
   </value>
   <value name="active" vmodl-name="active">
   </value>
   <value name="activeDefer" vmodl-name="activeDefer">
   </value>
   </enum>
   <enum name="HostServicePolicy"
      type-id="vim.host.Service.Policy"
      vmodl-name="vim.host.Service.Policy"
      enclosing-type-id-ref="vim.host.Service"
      version-id-ref="vim.version.version1"
      >
      <description-html>
         <![CDATA[Set of valid service policy strings.]]>
      </description-html>
   <value name="on" vmodl-name="on">
   </value>
   <value name="automatic" vmodl-name="automatic">
   </value>
   <value name="off" vmodl-name="off">
   </value>
   </enum>
   <enum name="VirtualMachineFlagInfoVirtualMmuUsage"
      type-id="vim.vm.FlagInfo.VirtualMmuUsage"
      vmodl-name="vim.vm.FlagInfo.VirtualMmuUsage"
      enclosing-type-id-ref="vim.vm.FlagInfo"
      version-id-ref="vim.version.version2"
      >
      <description-html>
         <![CDATA[Set of possible values for <a href="vim.vm.FlagInfo.html#virtualMmuUsage">virtualMmuUsage</a>.]]>
      </description-html>
   <value name="automatic" vmodl-name="automatic">
   </value>
   <value name="on" vmodl-name="on">
   </value>
   <value name="off" vmodl-name="off">
   </value>
   </enum>
   <enum name="NvdimmNvdimmHealthInfoState"
      type-id="vim.host.NvdimmSystem.HealthInfo.StateFlag"
      vmodl-name="vim.host.NvdimmSystem.HealthInfo.StateFlag"
      enclosing-type-id-ref="vim.host.NvdimmSystem.HealthInfo"
      version-id-ref="vim.version.version12"
      >
      <description-html>
         <![CDATA[Overall state of NVDIMM]]>
      </description-html>
   <value name="normal" vmodl-name="normal">
   </value>
   <value name="error" vmodl-name="error">
   </value>
   </enum>
   <enum name="HostProfileValidationState"
      type-id="vim.profile.host.HostProfile.ValidationState"
      vmodl-name="vim.profile.host.HostProfile.ValidationState"
      enclosing-type-id-ref="vim.profile.host.HostProfile"
      version-id-ref="vim.version.version12"
      >
      <description-html>
         <![CDATA[This defines validation state values for host profile.]]>
      </description-html>
   <value name="Ready" vmodl-name="Ready">
   </value>
   <value name="Running" vmodl-name="Running">
   </value>
   <value name="Failed" vmodl-name="Failed">
   </value>
   </enum>
   <enum name="DeviceNotSupportedReason"
      type-id="vim.fault.DeviceNotSupported.Reason"
      vmodl-name="vim.fault.DeviceNotSupported.Reason"
      enclosing-type-id-ref="vim.fault.DeviceNotSupported"
      version-id-ref="vim.version.version2"
      >
      <description-html>
         <![CDATA[Reasons why a virtual device would not be supported on a host.]]>
      </description-html>
   <value name="host" vmodl-name="host">
   </value>
   <value name="guest" vmodl-name="guest">
   </value>
   </enum>
   <enum name="VirtualMachineFlagInfoVirtualExecUsage"
      type-id="vim.vm.FlagInfo.VirtualExecUsage"
      vmodl-name="vim.vm.FlagInfo.VirtualExecUsage"
      enclosing-type-id-ref="vim.vm.FlagInfo"
      version-id-ref="vim.version.version5"
      >
      <description-html>
         <![CDATA[Set of possible values for <a href="vim.vm.FlagInfo.html#virtualExecUsage">virtualExecUsage</a>.]]>
      </description-html>
   <value name="hvAuto" vmodl-name="hvAuto">
   </value>
   <value name="hvOn" vmodl-name="hvOn">
   </value>
   <value name="hvOff" vmodl-name="hvOff">
   </value>
   </enum>
   <enum name="HostDateTimeInfoProtocol"
      type-id="vim.host.DateTimeInfo.Protocol"
      vmodl-name="vim.host.DateTimeInfo.Protocol"
      enclosing-type-id-ref="vim.host.DateTimeInfo"
      version-id-ref="vim.version.v7_0"
      >
      <description-html>
         <![CDATA[Types of time synchronization protocols.]]>
      </description-html>
   <value name="ntp" vmodl-name="ntp">
   </value>
   <value name="ptp" vmodl-name="ptp">
   </value>
   </enum>
   <enum name="LinkDiscoveryProtocolConfigOperationType"
      type-id="vim.host.LinkDiscoveryProtocolConfig.OperationType"
      vmodl-name="vim.host.LinkDiscoveryProtocolConfig.OperationType"
      enclosing-type-id-ref="vim.host.LinkDiscoveryProtocolConfig"
      version-id-ref="vim.version.version5"
      >
      <description-html>
         <![CDATA[The Discovery Protocol operation.]]>
      </description-html>
   <value name="none" vmodl-name="none">
   </value>
   <value name="listen" vmodl-name="listen">
   </value>
   <value name="advertise" vmodl-name="advertise">
   </value>
   <value name="both" vmodl-name="both">
   </value>
   </enum>
   <enum name="NvdimmRangeType"
      type-id="vim.host.NvdimmSystem.RangeType"
      vmodl-name="vim.host.NvdimmSystem.RangeType"
      enclosing-type-id-ref="vim.host.NvdimmSystem"
      version-id-ref="vim.version.version12"
      >
      <description-html>
         <![CDATA[An indicator of how a memory range is being used]]>
      </description-html>
   <value name="volatileRange" vmodl-name="volatileRange">
   </value>
   <value name="persistentRange" vmodl-name="persistentRange">
   </value>
   <value name="controlRange" vmodl-name="controlRange">
   </value>
   <value name="blockRange" vmodl-name="blockRange">
   </value>
   <value name="volatileVirtualDiskRange" vmodl-name="volatileVirtualDiskRange">
   </value>
   <value name="volatileVirtualCDRange" vmodl-name="volatileVirtualCDRange">
   </value>
   <value name="persistentVirtualDiskRange" vmodl-name="persistentVirtualDiskRange">
   </value>
   <value name="persistentVirtualCDRange" vmodl-name="persistentVirtualCDRange">
   </value>
   </enum>
   <enum name="LicenseFeatureInfoSourceRestriction"
      type-id="vim.LicenseManager.FeatureInfo.SourceRestriction"
      vmodl-name="vim.LicenseManager.FeatureInfo.SourceRestriction"
      enclosing-type-id-ref="vim.LicenseManager.FeatureInfo"
      version-id-ref="vim.version.version2"
      >
      <description-html>
         <![CDATA[Some licenses may only be allowed to load from a specified source.
  This enum indicates what restrictions exist for this license if any.]]>
      </description-html>
   <value name="unrestricted" vmodl-name="unrestricted">
   </value>
   <value name="served" vmodl-name="served">
   </value>
   <value name="file" vmodl-name="file">
   </value>
   </enum>
   <enum name="HostFileSystemVolumeFileSystemType"
      type-id="vim.host.FileSystemVolume.FileSystemType"
      vmodl-name="vim.host.FileSystemVolume.FileSystemType"
      enclosing-type-id-ref="vim.host.FileSystemVolume"
      version-id-ref="vim.version.version10"
      >
      <description-html>
         <![CDATA[Type of file system volume.]]>
      </description-html>
   <value name="VMFS" vmodl-name="VMFS">
   </value>
   <value name="NFS" vmodl-name="NFS">
   </value>
   <value name="NFS41" vmodl-name="NFS41" version-id-ref="NFS41">
   </value>
   <value name="CIFS" vmodl-name="CIFS">
   </value>
   <value name="vsan" vmodl-name="vsan" version-id-ref="vsan">
   </value>
   <value name="VFFS" vmodl-name="VFFS" version-id-ref="VFFS">
   </value>
   <value name="VVOL" vmodl-name="VVOL" version-id-ref="VVOL">
   </value>
   <value name="PMEM" vmodl-name="PMEM" version-id-ref="PMEM">
   </value>
   <value name="OTHER" vmodl-name="OTHER">
   </value>
   </enum>
   <enum name="VirtualSCSISharing"
      type-id="vim.vm.device.VirtualSCSIController.Sharing"
      vmodl-name="vim.vm.device.VirtualSCSIController.Sharing"
      enclosing-type-id-ref="vim.vm.device.VirtualSCSIController"
      version-id-ref="vim.version.version1"
      >
      <description-html>
         <![CDATA[Sharing describes three possible ways of sharing the SCSI bus:

  One of these values is assigned to the sharedBus object to determine
  if or how the SCSI bus is shared.]]>
      </description-html>
   <value name="noSharing" vmodl-name="noSharing">
   </value>
   <value name="virtualSharing" vmodl-name="virtualSharing">
   </value>
   <value name="physicalSharing" vmodl-name="physicalSharing">
   </value>
   </enum>
   <enum name="DvsNetworkRuleDirectionType"
      type-id="vim.dvs.TrafficRule.RuleDirectionType"
      vmodl-name="vim.dvs.TrafficRule.RuleDirectionType"
      enclosing-type-id-ref="vim.dvs.TrafficRule"
      version-id-ref="vim.version.version9"
      >
      <description-html>
         <![CDATA[Network Traffic Rule direction types. It specifies whether rule
  needs to be applied for packets which are incoming/outgoing or both.]]>
      </description-html>
   <value name="incomingPackets" vmodl-name="incomingPackets">
   </value>
   <value name="outgoingPackets" vmodl-name="outgoingPackets">
   </value>
   <value name="both" vmodl-name="both">
   </value>
   </enum>
   <enum name="HealthUpdateInfoComponentType"
      type-id="vim.HealthUpdateInfo.ComponentType"
      vmodl-name="vim.HealthUpdateInfo.ComponentType"
      enclosing-type-id-ref="vim.HealthUpdateInfo"
      version-id-ref="vim.version.version11"
      >
   <value name="Memory" vmodl-name="Memory">
   </value>
   <value name="Power" vmodl-name="Power">
   </value>
   <value name="Fan" vmodl-name="Fan">
   </value>
   <value name="Network" vmodl-name="Network">
   </value>
   <value name="Storage" vmodl-name="Storage">
   </value>
   </enum>
   <enum name="StorageDrsPodConfigInfoBehavior"
      type-id="vim.storageDrs.PodConfigInfo.Behavior"
      vmodl-name="vim.storageDrs.PodConfigInfo.Behavior"
      enclosing-type-id-ref="vim.storageDrs.PodConfigInfo"
      version-id-ref="vim.version.version7"
      >
      <description-html>
         <![CDATA[Storage DRS behavior.]]>
      </description-html>
   <value name="manual" vmodl-name="manual">
   </value>
   <value name="automated" vmodl-name="automated">
   </value>
   </enum>
   <enum name="HostSystemIdentificationInfoIdentifier"
      type-id="vim.host.SystemIdentificationInfo.Identifier"
      vmodl-name="vim.host.SystemIdentificationInfo.Identifier"
      enclosing-type-id-ref="vim.host.SystemIdentificationInfo"
      version-id-ref="vim.version.version2"
      >
   <value name="AssetTag" vmodl-name="AssetTag">
   </value>
   <value name="ServiceTag" vmodl-name="ServiceTag">
   </value>
   <value name="OemSpecificString" vmodl-name="OemSpecificString" version-id-ref="OemSpecificString">
   </value>
   <value name="EnclosureSerialNumberTag" vmodl-name="EnclosureSerialNumberTag" version-id-ref="EnclosureSerialNumberTag">
   </value>
   <value name="SerialNumberTag" vmodl-name="SerialNumberTag" version-id-ref="SerialNumberTag">
   </value>
   </enum>
   <enum name="HostMountMode"
      type-id="vim.host.MountInfo.AccessMode"
      vmodl-name="vim.host.MountInfo.AccessMode"
      enclosing-type-id-ref="vim.host.MountInfo"
      version-id-ref="vim.version.version1"
      >
      <description-html>
         <![CDATA[Defines the access mode of the datastore.]]>
      </description-html>
   <value name="readWrite" vmodl-name="readWrite">
   </value>
   <value name="readOnly" vmodl-name="readOnly">
   </value>
   </enum>
   <enum name="GuestRegKeyWowSpec"
      type-id="vim.vm.guest.WindowsRegistryManager.RegistryKeyName.RegistryKeyWowBitness"
      vmodl-name="vim.vm.guest.WindowsRegistryManager.RegistryKeyName.RegistryKeyWowBitness"
      enclosing-type-id-ref="vim.vm.guest.WindowsRegistryManager.RegistryKeyName"
      version-id-ref="vim.version.version10"
      >
      <description-html>
         <![CDATA[This describes the bitness (32-bit or 64-bit) of a registry view in a
 Windows OS that supports WOW64.

 WOW64 (short for Windows 32-bit on Windows 64-bit) is the x86 emulator
 that allows 32-bit Windows-based applications to run seamlessly on
 64-bit Windows. Please refer to these MSDN sites for more details:
 http://msdn.microsoft.com/en-us/library/aa384249(v=vs.85).aspx and
 http://msdn.microsoft.com/en-us/library/aa384253(v=vs.85).aspx]]>
      </description-html>
   <value name="WOWNative" vmodl-name="WOWNative">
   </value>
   <value name="WOW32" vmodl-name="WOW32">
   </value>
   <value name="WOW64" vmodl-name="WOW64">
   </value>
   </enum>
   <enum name="CheckTestType"
      type-id="vim.vm.check.TestType"
      vmodl-name="vim.vm.check.TestType"
      version-id-ref="vim.version.version5"
      >
      <description-html>
         <![CDATA[The types of tests which can requested by any of the methods in either
  <a href="vim.vm.check.CompatibilityChecker.html">VirtualMachineCompatibilityChecker</a> or <a href="vim.vm.check.ProvisioningChecker.html">VirtualMachineProvisioningChecker</a>.]]>
      </description-html>
   <value name="sourceTests" vmodl-name="sourceTests">
   </value>
   <value name="hostTests" vmodl-name="hostTests">
   </value>
   <value name="resourcePoolTests" vmodl-name="resourcePoolTests">
   </value>
   <value name="datastoreTests" vmodl-name="datastoreTests">
   </value>
   <value name="networkTests" vmodl-name="networkTests" version-id-ref="networkTests">
   </value>
   </enum>
   <enum name="HostNvmeTransportType"
      type-id="vim.host.NvmeTransportType"
      vmodl-name="vim.host.NvmeTransportType"
      version-id-ref="vim.version.v7_0"
      >
      <description-html>
         <![CDATA[The set of NVM Express over Fabrics transport types.
  <p>
  For details, see:
  <ul>
  <li>"NVM Express over Fabrics 1.0", Section 1.5.1,
  "Fabrics and Transports".</li>
  </ul>]]>
      </description-html>
   <value name="pcie" vmodl-name="pcie">
   </value>
   <value name="fibreChannel" vmodl-name="fibreChannel">
   </value>
   <value name="rdma" vmodl-name="rdma">
   </value>
   <value name="loopback" vmodl-name="loopback">
   </value>
   <value name="unsupported" vmodl-name="unsupported">
   </value>
   </enum>
   <enum name="PortGroupConnecteeType"
      type-id="vim.host.PortGroup.PortConnecteeType"
      vmodl-name="vim.host.PortGroup.PortConnecteeType"
      enclosing-type-id-ref="vim.host.PortGroup"
      version-id-ref="vim.version.version1"
      >
      <description-html>
         <![CDATA[The type of component connected to a port group.]]>
      </description-html>
   <value name="virtualMachine" vmodl-name="virtualMachine">
   </value>
   <value name="systemManagement" vmodl-name="systemManagement">
   </value>
   <value name="host" vmodl-name="host">
   </value>
   <value name="unknown" vmodl-name="unknown">
   </value>
   </enum>
   <enum name="VirtualMachineMovePriority"
      type-id="vim.VirtualMachine.MovePriority"
      vmodl-name="vim.VirtualMachine.MovePriority"
      enclosing-type-id-ref="vim.VirtualMachine"
      version-id-ref="vim.version.version1"
      >
      <description-html>
         <![CDATA[MovePriority is an enumeration of values that indicate the priority of the task
 that moves a virtual machine from one host to another or one storage location
 to another. Note this priority can affect both the source and target hosts.]]>
      </description-html>
   <value name="lowPriority" vmodl-name="lowPriority">
   </value>
   <value name="highPriority" vmodl-name="highPriority">
   </value>
   <value name="defaultPriority" vmodl-name="defaultPriority">
   </value>
   </enum>
   <enum name="SharesLevel"
      type-id="vim.SharesInfo.Level"
      vmodl-name="vim.SharesInfo.Level"
      enclosing-type-id-ref="vim.SharesInfo"
      version-id-ref="vim.version.version1"
      >
      <description-html>
         <![CDATA[Simplified shares notation.
  These designations have different meanings for different resources.]]>
      </description-html>
   <value name="low" vmodl-name="low">
   </value>
   <value name="normal" vmodl-name="normal">
   </value>
   <value name="high" vmodl-name="high">
   </value>
   <value name="custom" vmodl-name="custom">
   </value>
   </enum>
   <enum name="HostSgxInfoFlcModes"
      type-id="vim.host.SgxInfo.FlcModes"
      vmodl-name="vim.host.SgxInfo.FlcModes"
      enclosing-type-id-ref="vim.host.SgxInfo"
      version-id-ref="vim.version.v7_0"
      >
      <description-html>
         <![CDATA[Flexible Launch Enclave (FLC) modes.]]>
      </description-html>
   <value name="off" vmodl-name="off">
   </value>
   <value name="locked" vmodl-name="locked">
   </value>
   <value name="unlocked" vmodl-name="unlocked">
   </value>
   </enum>
   <enum name="NetBIOSConfigInfoMode"
      type-id="vim.net.NetBIOSConfigInfo.Mode"
      vmodl-name="vim.net.NetBIOSConfigInfo.Mode"
      enclosing-type-id-ref="vim.net.NetBIOSConfigInfo"
      version-id-ref="vim.version.version6"
      >
      <description-html>
         <![CDATA[NetBIOS configuration mode.]]>
      </description-html>
   <value name="unknown" vmodl-name="unknown">
   </value>
   <value name="enabled" vmodl-name="enabled">
   </value>
   <value name="disabled" vmodl-name="disabled">
   </value>
   <value name="enabledViaDHCP" vmodl-name="enabledViaDHCP">
   </value>
   </enum>
   <enum name="InternetScsiSnsDiscoveryMethod"
      type-id="vim.host.InternetScsiHba.DiscoveryProperties.ISnsDiscoveryMethod"
      vmodl-name="vim.host.InternetScsiHba.DiscoveryProperties.ISnsDiscoveryMethod"
      enclosing-type-id-ref="vim.host.InternetScsiHba.DiscoveryProperties"
      version-id-ref="vim.version.version1"
      >
      <description-html>
         <![CDATA[The available iSNS discovery methods.]]>
      </description-html>
   <value name="isnsStatic" vmodl-name="isnsStatic">
   </value>
   <value name="isnsDhcp" vmodl-name="isnsDhcp">
   </value>
   <value name="isnsSlp" vmodl-name="isnsSlp">
   </value>
   </enum>
   <enum name="NvdimmNamespaceHealthStatus"
      type-id="vim.host.NvdimmSystem.NamespaceInfo.NamespaceHealthStatus"
      vmodl-name="vim.host.NvdimmSystem.NamespaceInfo.NamespaceHealthStatus"
      enclosing-type-id-ref="vim.host.NvdimmSystem.NamespaceInfo"
      version-id-ref="vim.version.version12"
      >
      <description-html>
         <![CDATA[Overall health state for a namespace]]>
      </description-html>
   <value name="normal" vmodl-name="normal">
   </value>
   <value name="missing" vmodl-name="missing">
   </value>
   <value name="labelMissing" vmodl-name="labelMissing">
   </value>
   <value name="interleaveBroken" vmodl-name="interleaveBroken">
   </value>
   <value name="labelInconsistent" vmodl-name="labelInconsistent">
   </value>
   <value name="bttCorrupt" vmodl-name="bttCorrupt">
   </value>
   <value name="badBlockSize" vmodl-name="badBlockSize">
   </value>
   </enum>
   <enum name="VirtualMachineFaultToleranceState"
      type-id="vim.VirtualMachine.FaultToleranceState"
      vmodl-name="vim.VirtualMachine.FaultToleranceState"
      enclosing-type-id-ref="vim.VirtualMachine"
      version-id-ref="vim.version.version5"
      >
      <description-html>
         <![CDATA[The FaultToleranceState type defines a simple set of states for a
 fault tolerant virtual machine:
 disabled, starting, and enabled.
 <p>]]>
      </description-html>
   <value name="notConfigured" vmodl-name="notConfigured">
   </value>
   <value name="disabled" vmodl-name="disabled">
   </value>
   <value name="enabled" vmodl-name="enabled">
   </value>
   <value name="needSecondary" vmodl-name="needSecondary">
   </value>
   <value name="starting" vmodl-name="starting">
   </value>
   <value name="running" vmodl-name="running">
   </value>
   </enum>
   <enum name="VirtualMachinePowerOpType"
      type-id="vim.vm.DefaultPowerOpInfo.PowerOpType"
      vmodl-name="vim.vm.DefaultPowerOpInfo.PowerOpType"
      enclosing-type-id-ref="vim.vm.DefaultPowerOpInfo"
      version-id-ref="vim.version.version1"
      >
      <description-html>
         <![CDATA[The list of possible default power operations available for the virtual machine]]>
      </description-html>
   <value name="soft" vmodl-name="soft">
   </value>
   <value name="hard" vmodl-name="hard">
   </value>
   <value name="preset" vmodl-name="preset">
   </value>
   </enum>
   <enum name="DiagnosticManagerLogCreator"
      type-id="vim.DiagnosticManager.LogDescriptor.Creator"
      vmodl-name="vim.DiagnosticManager.LogDescriptor.Creator"
      enclosing-type-id-ref="vim.DiagnosticManager.LogDescriptor"
      version-id-ref="vim.version.version1"
      >
      <description-html>
         <![CDATA[Pre-defined constants for possible creators of log files.]]>
      </description-html>
   <value name="vpxd" vmodl-name="vpxd">
   </value>
   <value name="vpxa" vmodl-name="vpxa">
   </value>
   <value name="hostd" vmodl-name="hostd">
   </value>
   <value name="serverd" vmodl-name="serverd">
   </value>
   <value name="install" vmodl-name="install">
   </value>
   <value name="vpxClient" vmodl-name="vpxClient">
   </value>
   <value name="recordLog" vmodl-name="recordLog" version-id-ref="recordLog">
   </value>
   </enum>
   <enum name="HostStorageProtocol"
      type-id="vim.host.StorageProtocol"
      vmodl-name="vim.host.StorageProtocol"
      version-id-ref="vim.version.v7_0"
      >
      <description-html>
         <![CDATA[The set of supported host bus adapter protocols.]]>
      </description-html>
   <value name="scsi" vmodl-name="scsi">
   </value>
   <value name="nvme" vmodl-name="nvme">
   </value>
   </enum>
   <enum name="VAppIPAssignmentInfoAllocationSchemes"
      type-id="vim.vApp.IPAssignmentInfo.AllocationSchemes"
      vmodl-name="vim.vApp.IPAssignmentInfo.AllocationSchemes"
      enclosing-type-id-ref="vim.vApp.IPAssignmentInfo"
      version-id-ref="vim.version.version5"
      >
      <description-html>
         <![CDATA[IP allocation schemes supported by the guest.]]>
      </description-html>
   <value name="dhcp" vmodl-name="dhcp">
   </value>
   <value name="ovfenv" vmodl-name="ovfenv">
   </value>
   </enum>
   <enum name="SoftwarePackageConstraint"
      type-id="vim.host.SoftwarePackage.Constraint"
      vmodl-name="vim.host.SoftwarePackage.Constraint"
      enclosing-type-id-ref="vim.host.SoftwarePackage"
      version-id-ref="vim.version.version11"
      >
      <description-html>
         <![CDATA[These are the constraint relationships between software packages.]]>
      </description-html>
   <value name="equals" vmodl-name="equals">
   </value>
   <value name="lessThan" vmodl-name="lessThan">
   </value>
   <value name="lessThanEqual" vmodl-name="lessThanEqual">
   </value>
   <value name="greaterThanEqual" vmodl-name="greaterThanEqual">
   </value>
   <value name="greaterThan" vmodl-name="greaterThan">
   </value>
   </enum>
   <enum name="ScsiLunDescriptorQuality"
      type-id="vim.host.ScsiLun.DescriptorQuality"
      vmodl-name="vim.host.ScsiLun.DescriptorQuality"
      enclosing-type-id-ref="vim.host.ScsiLun"
      version-id-ref="vim.version.version5"
      >
      <description-html>
         <![CDATA[An indicator of the utility of Descriptor in being used as an
  identifier that is stable, unique, and correlatable.]]>
      </description-html>
   <value name="highQuality" vmodl-name="highQuality">
   </value>
   <value name="mediumQuality" vmodl-name="mediumQuality">
   </value>
   <value name="lowQuality" vmodl-name="lowQuality">
   </value>
   <value name="unknownQuality" vmodl-name="unknownQuality">
   </value>
   </enum>
   <enum name="VirtualMachineToolsInstallType"
      type-id="vim.vm.GuestInfo.ToolsInstallType"
      vmodl-name="vim.vm.GuestInfo.ToolsInstallType"
      enclosing-type-id-ref="vim.vm.GuestInfo"
      version-id-ref="vim.version.version11"
      >
      <description-html>
         <![CDATA[The installation type of tools in the VM.]]>
      </description-html>
   <value name="guestToolsTypeUnknown" vmodl-name="guestToolsTypeUnknown">
   </value>
   <value name="guestToolsTypeMSI" vmodl-name="guestToolsTypeMSI">
   </value>
   <value name="guestToolsTypeTar" vmodl-name="guestToolsTypeTar">
   </value>
   <value name="guestToolsTypeOSP" vmodl-name="guestToolsTypeOSP">
   </value>
   <value name="guestToolsTypeOpenVMTools" vmodl-name="guestToolsTypeOpenVMTools">
   </value>
   </enum>
   <enum name="VirtualMachineUsbInfoSpeed"
      type-id="vim.vm.UsbInfo.Speed"
      vmodl-name="vim.vm.UsbInfo.Speed"
      enclosing-type-id-ref="vim.vm.UsbInfo"
      version-id-ref="vim.version.version2"
      >
      <description-html>
         <![CDATA[Device speed.]]>
      </description-html>
   <value name="low" vmodl-name="low">
   </value>
   <value name="full" vmodl-name="full">
   </value>
   <value name="high" vmodl-name="high">
   </value>
   <value name="superSpeed" vmodl-name="superSpeed" version-id-ref="superSpeed">
   </value>
   <value name="superSpeedPlus" vmodl-name="superSpeedPlus" version-id-ref="superSpeedPlus">
   </value>
   <value name="unknownSpeed" vmodl-name="unknownSpeed">
   </value>
   </enum>
   <enum name="HostIpConfigIpV6AddressConfigType"
      type-id="vim.host.IpConfig.IpV6AddressConfigType"
      vmodl-name="vim.host.IpConfig.IpV6AddressConfigType"
      enclosing-type-id-ref="vim.host.IpConfig"
      version-id-ref="vim.version.version5"
      >
      <description-html>
         <![CDATA[This specifies how the ipv6 address is configured for the interface.
 We follow rfc4293 in defining the values for the configType.]]>
      </description-html>
   <value name="other" vmodl-name="other">
   </value>
   <value name="manual" vmodl-name="manual">
   </value>
   <value name="dhcp" vmodl-name="dhcp">
   </value>
   <value name="linklayer" vmodl-name="linklayer">
   </value>
   <value name="random" vmodl-name="random">
   </value>
   </enum>
   <enum name="ScsiLunState"
      type-id="vim.host.ScsiLun.State"
      vmodl-name="vim.host.ScsiLun.State"
      enclosing-type-id-ref="vim.host.ScsiLun"
      version-id-ref="vim.version.version1"
      >
      <description-html>
         <![CDATA[The Operational state of the LUN]]>
      </description-html>
   <value name="unknownState" vmodl-name="unknownState">
   </value>
   <value name="ok" vmodl-name="ok">
   </value>
   <value name="error" vmodl-name="error">
   </value>
   <value name="off" vmodl-name="off" version-id-ref="off">
   </value>
   <value name="quiesced" vmodl-name="quiesced" version-id-ref="quiesced">
   </value>
   <value name="degraded" vmodl-name="degraded">
   </value>
   <value name="lostCommunication" vmodl-name="lostCommunication">
   </value>
   <value name="timeout" vmodl-name="timeout" version-id-ref="timeout">
   </value>
   </enum>
   <enum name="HostNetStackInstanceCongestionControlAlgorithmType"
      type-id="vim.host.NetStackInstance.CongestionControlAlgorithmType"
      vmodl-name="vim.host.NetStackInstance.CongestionControlAlgorithmType"
      enclosing-type-id-ref="vim.host.NetStackInstance"
      version-id-ref="vim.version.version9"
      >
      <description-html>
         <![CDATA[Define TCP congestion control algorithm used by an instance]]>
      </description-html>
   <value name="newreno" vmodl-name="newreno">
   </value>
   <value name="cubic" vmodl-name="cubic">
   </value>
   </enum>
   <enum name="HostProtocolEndpointProtocolEndpointType"
      type-id="vim.host.ProtocolEndpoint.ProtocolEndpointType"
      vmodl-name="vim.host.ProtocolEndpoint.ProtocolEndpointType"
      enclosing-type-id-ref="vim.host.ProtocolEndpoint"
      version-id-ref="vim.version.version11"
      >
      <description-html>
         <![CDATA[ProtocolEndpoint type.]]>
      </description-html>
   <value name="scsi" vmodl-name="scsi">
   </value>
   <value name="nfs" vmodl-name="nfs">
   </value>
   <value name="nfs4x" vmodl-name="nfs4x">
   </value>
   </enum>
   <enum name="DistributedVirtualPortgroupBackingType"
      type-id="vim.dvs.DistributedVirtualPortgroup.BackingType"
      vmodl-name="vim.dvs.DistributedVirtualPortgroup.BackingType"
      enclosing-type-id-ref="vim.dvs.DistributedVirtualPortgroup"
      version-id-ref="vim.version.v7_0"
      >
      <description-html>
         <![CDATA[The <a href="vim.dvs.DistributedVirtualPortgroup.BackingType.html">DistributedVirtualPortgroupBackingType</a> enum defines
 the distributed virtual portgroup backing type.]]>
      </description-html>
   <value name="standard" vmodl-name="standard">
   </value>
   <value name="nsx" vmodl-name="nsx">
   </value>
   </enum>
   <enum name="FolderDesiredHostState"
      type-id="vim.Folder.DesiredHostState"
      vmodl-name="vim.Folder.DesiredHostState"
      enclosing-type-id-ref="vim.Folder"
      version-id-ref="vim.version.version13"
      >
   <value name="maintenance" vmodl-name="maintenance">
   </value>
   <value name="non_maintenance" vmodl-name="non_maintenance">
   </value>
   </enum>
   <enum name="HostInternetScsiHbaDigestType"
      type-id="vim.host.InternetScsiHba.DigestType"
      vmodl-name="vim.host.InternetScsiHba.DigestType"
      enclosing-type-id-ref="vim.host.InternetScsiHba"
      version-id-ref="vim.version.version5"
      >
      <description-html>
         <![CDATA[The type of integrity checks to use. The digest setting for header
  and data traffic can be separately configured.
  prohibited  : do not use digest.
  preferred   : use digest if successfully negotiated, but skip the use
                of digest otherwise.
  discouraged : do not use digest if target allows, otherwise use digest.
  required    : use digest strictly, and fail if target does not support
                digest.

  Defaults to preferred on first configuration if unspecified.]]>
      </description-html>
   <value name="digestProhibited" vmodl-name="digestProhibited">
   </value>
   <value name="digestDiscouraged" vmodl-name="digestDiscouraged">
   </value>
   <value name="digestPreferred" vmodl-name="digestPreferred">
   </value>
   <value name="digestRequired" vmodl-name="digestRequired">
   </value>
   </enum>
   <enum name="VirtualMachineStandbyActionType"
      type-id="vim.vm.DefaultPowerOpInfo.StandbyActionType"
      vmodl-name="vim.vm.DefaultPowerOpInfo.StandbyActionType"
      enclosing-type-id-ref="vim.vm.DefaultPowerOpInfo"
      version-id-ref="vim.version.version1"
      >
      <description-html>
         <![CDATA[The list of possible standby actions that the virtual machine can take
 for S1 ACPI.]]>
      </description-html>
   <value name="checkpoint" vmodl-name="checkpoint">
   </value>
   <value name="powerOnSuspend" vmodl-name="powerOnSuspend">
   </value>
   </enum>
   <enum name="OvfConsumerOstNodeType"
      type-id="vim.OvfConsumer.OstNodeType"
      vmodl-name="vim.OvfConsumer.OstNodeType"
      enclosing-type-id-ref="vim.OvfConsumer"
      version-id-ref="vim.version.version7"
      >
      <description-html>
         <![CDATA[The type of an OST node.
 <p>
 Each OST node corresponds to an element in the OVF descriptor. See OstNode
 for a description of the different node types.]]>
      </description-html>
   <value name="envelope" vmodl-name="envelope">
   </value>
   <value name="virtualSystem" vmodl-name="virtualSystem">
   </value>
   <value name="virtualSystemCollection" vmodl-name="virtualSystemCollection">
   </value>
   </enum>
   <enum name="VirtualMachineConfigInfoSwapPlacementType"
      type-id="vim.vm.ConfigInfo.SwapPlacementType"
      vmodl-name="vim.vm.ConfigInfo.SwapPlacementType"
      enclosing-type-id-ref="vim.vm.ConfigInfo"
      version-id-ref="vim.version.version2"
      >
      <description-html>
         <![CDATA[Available choices for virtual machine swapfile placement policy. This is
  the set of legal values for the virtual machine configuration's
  <a href="vim.vm.ConfigInfo.html#swapPlacement">swapPlacement</a> property. All
  values except for "inherit" and "vmConfigured" are also valid values for
  a compute resource configuration's
  <a href="vim.ComputeResource.ConfigInfo.html#vmSwapPlacement">vmSwapPlacement</a>
  property.]]>
      </description-html>
   <value name="inherit" vmodl-name="inherit">
   </value>
   <value name="vmDirectory" vmodl-name="vmDirectory">
   </value>
   <value name="hostLocal" vmodl-name="hostLocal">
   </value>
   </enum>
   <enum name="ReplicationVmInProgressFaultActivity"
      type-id="vim.fault.ReplicationVmInProgressFault.Activity"
      vmodl-name="vim.fault.ReplicationVmInProgressFault.Activity"
      enclosing-type-id-ref="vim.fault.ReplicationVmInProgressFault"
      version-id-ref="vim.version.version10"
      >
   <value name="fullSync" vmodl-name="fullSync">
   </value>
   <value name="delta" vmodl-name="delta">
   </value>
   </enum>
   <enum name="HttpNfcLeaseState"
      type-id="vim.HttpNfcLease.State"
      vmodl-name="vim.HttpNfcLease.State"
      enclosing-type-id-ref="vim.HttpNfcLease"
      version-id-ref="vim.version.version5"
      >
      <description-html>
         <![CDATA[List of possible states of a lease.]]>
      </description-html>
   <value name="initializing" vmodl-name="initializing">
   </value>
   <value name="ready" vmodl-name="ready">
   </value>
   <value name="done" vmodl-name="done">
   </value>
   <value name="error" vmodl-name="error">
   </value>
   </enum>
   <enum name="VMwareDvsLacpLoadBalanceAlgorithm"
      type-id="vim.dvs.VmwareDistributedVirtualSwitch.LacpLoadBalanceAlgorithm"
      vmodl-name="vim.dvs.VmwareDistributedVirtualSwitch.LacpLoadBalanceAlgorithm"
      enclosing-type-id-ref="vim.dvs.VmwareDistributedVirtualSwitch"
      version-id-ref="vim.version.version9"
      >
      <description-html>
         <![CDATA[Load balance algorithm in a Link Aggregation Control Protocol group.]]>
      </description-html>
   <value name="srcMac" vmodl-name="srcMac">
   </value>
   <value name="destMac" vmodl-name="destMac">
   </value>
   <value name="srcDestMac" vmodl-name="srcDestMac">
   </value>
   <value name="destIpVlan" vmodl-name="destIpVlan">
   </value>
   <value name="srcIpVlan" vmodl-name="srcIpVlan">
   </value>
   <value name="srcDestIpVlan" vmodl-name="srcDestIpVlan">
   </value>
   <value name="destTcpUdpPort" vmodl-name="destTcpUdpPort">
   </value>
   <value name="srcTcpUdpPort" vmodl-name="srcTcpUdpPort">
   </value>
   <value name="srcDestTcpUdpPort" vmodl-name="srcDestTcpUdpPort">
   </value>
   <value name="destIpTcpUdpPort" vmodl-name="destIpTcpUdpPort">
   </value>
   <value name="srcIpTcpUdpPort" vmodl-name="srcIpTcpUdpPort">
   </value>
   <value name="srcDestIpTcpUdpPort" vmodl-name="srcDestIpTcpUdpPort">
   </value>
   <value name="destIpTcpUdpPortVlan" vmodl-name="destIpTcpUdpPortVlan">
   </value>
   <value name="srcIpTcpUdpPortVlan" vmodl-name="srcIpTcpUdpPortVlan">
   </value>
   <value name="srcDestIpTcpUdpPortVlan" vmodl-name="srcDestIpTcpUdpPortVlan">
   </value>
   <value name="destIp" vmodl-name="destIp">
   </value>
   <value name="srcIp" vmodl-name="srcIp">
   </value>
   <value name="srcDestIp" vmodl-name="srcDestIp">
   </value>
   <value name="vlan" vmodl-name="vlan">
   </value>
   <value name="srcPortId" vmodl-name="srcPortId">
   </value>
   </enum>
   <enum name="NvdimmNamespaceState"
      type-id="vim.host.NvdimmSystem.NamespaceInfo.NamespaceState"
      vmodl-name="vim.host.NvdimmSystem.NamespaceInfo.NamespaceState"
      enclosing-type-id-ref="vim.host.NvdimmSystem.NamespaceInfo"
      version-id-ref="vim.version.version12"
      >
      <description-html>
         <![CDATA[State of Namespace]]>
      </description-html>
   <value name="invalid" vmodl-name="invalid">
   </value>
   <value name="notInUse" vmodl-name="notInUse">
   </value>
   <value name="inUse" vmodl-name="inUse">
   </value>
   </enum>
   <enum name="DistributedVirtualSwitchNetworkResourceControlVersion"
      type-id="vim.DistributedVirtualSwitch.NetworkResourceControlVersion"
      vmodl-name="vim.DistributedVirtualSwitch.NetworkResourceControlVersion"
      enclosing-type-id-ref="vim.DistributedVirtualSwitch"
      version-id-ref="vim.version.version10"
      >
      <description-html>
         <![CDATA[Network resource control version types.]]>
      </description-html>
   <value name="version2" vmodl-name="version2">
   </value>
   <value name="version3" vmodl-name="version3">
   </value>
   </enum>
   <enum name="ClusterProfileServiceType"
      type-id="vim.profile.cluster.ClusterProfile.ServiceType"
      vmodl-name="vim.profile.cluster.ClusterProfile.ServiceType"
      enclosing-type-id-ref="vim.profile.cluster.ClusterProfile"
      version-id-ref="vim.version.version5"
      >
      <description-html>
         <![CDATA[Type of services for which Profile can be requested for]]>
      </description-html>
   <value name="DRS" vmodl-name="DRS">
   </value>
   <value name="HA" vmodl-name="HA">
   </value>
   <value name="DPM" vmodl-name="DPM">
   </value>
   <value name="FT" vmodl-name="FT">
   </value>
   </enum>
   <enum name="VmFaultToleranceInvalidFileBackingDeviceType"
      type-id="vim.fault.VmFaultToleranceInvalidFileBacking.DeviceType"
      vmodl-name="vim.fault.VmFaultToleranceInvalidFileBacking.DeviceType"
      enclosing-type-id-ref="vim.fault.VmFaultToleranceInvalidFileBacking"
      version-id-ref="vim.version.version5"
      >
   <value name="virtualFloppy" vmodl-name="virtualFloppy">
   </value>
   <value name="virtualCdrom" vmodl-name="virtualCdrom">
   </value>
   <value name="virtualSerialPort" vmodl-name="virtualSerialPort">
   </value>
   <value name="virtualParallelPort" vmodl-name="virtualParallelPort">
   </value>
   <value name="virtualDisk" vmodl-name="virtualDisk">
   </value>
   </enum>
   <enum name="DistributedVirtualSwitchHostInfrastructureTrafficClass"
      type-id="vim.DistributedVirtualSwitch.HostInfrastructureTrafficClass"
      vmodl-name="vim.DistributedVirtualSwitch.HostInfrastructureTrafficClass"
      enclosing-type-id-ref="vim.DistributedVirtualSwitch"
      version-id-ref="vim.version.version9"
      >
      <description-html>
         <![CDATA[List of possible host infrastructure traffic classes]]>
      </description-html>
   <value name="management" vmodl-name="management">
   </value>
   <value name="faultTolerance" vmodl-name="faultTolerance">
   </value>
   <value name="vmotion" vmodl-name="vmotion">
   </value>
   <value name="virtualMachine" vmodl-name="virtualMachine">
   </value>
   <value name="iSCSI" vmodl-name="iSCSI">
   </value>
   <value name="nfs" vmodl-name="nfs">
   </value>
   <value name="hbr" vmodl-name="hbr">
   </value>
   <value name="vsan" vmodl-name="vsan">
   </value>
   <value name="vdp" vmodl-name="vdp" version-id-ref="vdp">
   </value>
   </enum>
   <enum name="HostNasVolumeSecurityType"
      type-id="vim.host.NasVolume.SecurityType"
      vmodl-name="vim.host.NasVolume.SecurityType"
      enclosing-type-id-ref="vim.host.NasVolume"
      version-id-ref="vim.version.version10"
      >
      <description-html>
         <![CDATA[Security type supported.]]>
      </description-html>
   <value name="AUTH_SYS" vmodl-name="AUTH_SYS">
   </value>
   <value name="SEC_KRB5" vmodl-name="SEC_KRB5">
   </value>
   <value name="SEC_KRB5I" vmodl-name="SEC_KRB5I" version-id-ref="SEC_KRB5I">
   </value>
   </enum>
   <enum name="ValidateMigrationTestType"
      type-id="vim.ServiceInstance.ValidateMigrationTestType"
      vmodl-name="vim.ServiceInstance.ValidateMigrationTestType"
      enclosing-type-id-ref="vim.ServiceInstance"
      version-id-ref="vim.version.version1"
      is-deprecated="true"
      >
      <description-html>
         <![CDATA[Types of tests available for validateMigration.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 4.0, use <a href="vim.vm.check.TestType.html">CheckTestType</a> instead.]]>
      </deprecated-html>
   <value name="sourceTests" vmodl-name="sourceTests">
   </value>
   <value name="compatibilityTests" vmodl-name="compatibilityTests">
   </value>
   <value name="diskAccessibilityTests" vmodl-name="diskAccessibilityTests">
   </value>
   <value name="resourceTests" vmodl-name="resourceTests">
   </value>
   </enum>
   <enum name="HostCpuPackageVendor"
      type-id="vim.host.CpuPackage.Vendor"
      vmodl-name="vim.host.CpuPackage.Vendor"
      enclosing-type-id-ref="vim.host.CpuPackage"
      version-id-ref="vim.version.version1"
      >
   <value name="unknown" vmodl-name="unknown">
   </value>
   <value name="intel" vmodl-name="intel">
   </value>
   <value name="amd" vmodl-name="amd">
   </value>
   <value name="hygon" vmodl-name="hygon" version-id-ref="hygon">
   </value>
   </enum>
   <enum name="HostDiskPartitionInfoType"
      type-id="vim.host.DiskPartitionInfo.Type"
      vmodl-name="vim.host.DiskPartitionInfo.Type"
      enclosing-type-id-ref="vim.host.DiskPartitionInfo"
      version-id-ref="vim.version.version1"
      >
      <description-html>
         <![CDATA[List of symbol partition types]]>
      </description-html>
   <value name="none" vmodl-name="none">
   </value>
   <value name="vmfs" vmodl-name="vmfs">
   </value>
   <value name="linuxNative" vmodl-name="linuxNative">
   </value>
   <value name="linuxSwap" vmodl-name="linuxSwap">
   </value>
   <value name="extended" vmodl-name="extended">
   </value>
   <value name="ntfs" vmodl-name="ntfs">
   </value>
   <value name="vmkDiagnostic" vmodl-name="vmkDiagnostic">
   </value>
   <value name="vffs" vmodl-name="vffs" version-id-ref="vffs">
   </value>
   </enum>
   <enum name="QuiesceMode"
      type-id="vim.HbrManager.VmReplicationCapability.QuiesceMode"
      vmodl-name="vim.HbrManager.VmReplicationCapability.QuiesceMode"
      enclosing-type-id-ref="vim.HbrManager.VmReplicationCapability"
      version-id-ref="vim.version.version10"
      >
      <description-html>
         <![CDATA[Quiescing is a boolean flag in <a href="vim.vm.ReplicationConfigSpec.html">ReplicationConfigSpec</a>
 and QuiesceModeType describes the supported quiesce mode
 for <a href="vim.VirtualMachine.html">VirtualMachine</a>.

 If application quiescing fails, HBR would attempt
 filesystem quiescing and if even filesystem quiescing
 fails, then we would just create a crash consistent
 instance.]]>
      </description-html>
   <value name="application" vmodl-name="application">
   </value>
   <value name="filesystem" vmodl-name="filesystem">
   </value>
   <value name="none" vmodl-name="none">
   </value>
   </enum>
   <enum name="HostCertificateManagerCertificateInfoCertificateStatus"
      type-id="vim.host.CertificateManager.CertificateInfo.CertificateStatus"
      vmodl-name="vim.host.CertificateManager.CertificateInfo.CertificateStatus"
      enclosing-type-id-ref="vim.host.CertificateManager.CertificateInfo"
      version-id-ref="vim.version.version10"
      >
      <description-html>
         <![CDATA[The status of a given certificate as computed per the soft and the hard
 thresholds in vCenter Server.
 <br><br>
 There are two different thresholds for the host certificate
 expirations; a soft threshold (which constitutes of two phases) and a
 hard threshold.
 <br><br>
 Soft Threshold:
 <br>
 Phase One: vCenter Server will publish an event at
 this time to let the user know about the status, but, no alarms or
 warnings are raised.
 <br>
 Phase Two: During this phase, vCenter Server will publish an event and
 indicate the certificate status as expiring in the UI.
 <br><br>
 Hard Threshold:
 <br>
 vCenter Server will publish an alarm and indicate via the UI that the
 certificate expiration is imminent.]]>
      </description-html>
   <value name="unknown" vmodl-name="unknown">
   </value>
   <value name="expired" vmodl-name="expired">
   </value>
   <value name="expiring" vmodl-name="expiring">
   </value>
   <value name="expiringShortly" vmodl-name="expiringShortly">
   </value>
   <value name="expirationImminent" vmodl-name="expirationImminent">
   </value>
   <value name="good" vmodl-name="good">
   </value>
   </enum>
   <enum name="ConfigSpecOperation"
      type-id="vim.ConfigSpecOperation"
      vmodl-name="vim.ConfigSpecOperation"
      version-id-ref="vim.version.version5"
      >
      <description-html>
         <![CDATA[Config spec operation type.]]>
      </description-html>
   <value name="add" vmodl-name="add">
   </value>
   <value name="edit" vmodl-name="edit">
   </value>
   <value name="remove" vmodl-name="remove">
   </value>
   </enum>
   <enum name="HostInternetScsiHbaIscsiIpv6AddressAddressConfigurationType"
      type-id="vim.host.InternetScsiHba.IscsiIpv6Address.AddressConfigurationType"
      vmodl-name="vim.host.InternetScsiHba.IscsiIpv6Address.AddressConfigurationType"
      enclosing-type-id-ref="vim.host.InternetScsiHba.IscsiIpv6Address"
      version-id-ref="vim.version.version10"
      >
      <description-html>
         <![CDATA[enum listing possible IPv6 address configuration methods.]]>
      </description-html>
   <value name="DHCP" vmodl-name="DHCP">
   </value>
   <value name="AutoConfigured" vmodl-name="AutoConfigured">
   </value>
   <value name="Static" vmodl-name="Static">
   </value>
   <value name="Other" vmodl-name="Other">
   </value>
   </enum>
   <enum name="VmFaultToleranceConfigIssueReasonForIssue"
      type-id="vim.fault.VmFaultToleranceConfigIssue.ReasonForIssue"
      vmodl-name="vim.fault.VmFaultToleranceConfigIssue.ReasonForIssue"
      enclosing-type-id-ref="vim.fault.VmFaultToleranceConfigIssue"
      version-id-ref="vim.version.version5"
      >
   <value name="haNotEnabled" vmodl-name="haNotEnabled">
   </value>
   <value name="moreThanOneSecondary" vmodl-name="moreThanOneSecondary">
   </value>
   <value name="recordReplayNotSupported" vmodl-name="recordReplayNotSupported">
   </value>
   <value name="replayNotSupported" vmodl-name="replayNotSupported">
   </value>
   <value name="templateVm" vmodl-name="templateVm">
   </value>
   <value name="multipleVCPU" vmodl-name="multipleVCPU">
   </value>
   <value name="hostInactive" vmodl-name="hostInactive">
   </value>
   <value name="ftUnsupportedHardware" vmodl-name="ftUnsupportedHardware">
   </value>
   <value name="ftUnsupportedProduct" vmodl-name="ftUnsupportedProduct">
   </value>
   <value name="missingVMotionNic" vmodl-name="missingVMotionNic">
   </value>
   <value name="missingFTLoggingNic" vmodl-name="missingFTLoggingNic">
   </value>
   <value name="thinDisk" vmodl-name="thinDisk">
   </value>
   <value name="verifySSLCertificateFlagNotSet" vmodl-name="verifySSLCertificateFlagNotSet">
   </value>
   <value name="hasSnapshots" vmodl-name="hasSnapshots">
   </value>
   <value name="noConfig" vmodl-name="noConfig">
   </value>
   <value name="ftSecondaryVm" vmodl-name="ftSecondaryVm">
   </value>
   <value name="hasLocalDisk" vmodl-name="hasLocalDisk">
   </value>
   <value name="esxAgentVm" vmodl-name="esxAgentVm" version-id-ref="esxAgentVm">
   </value>
   <value name="video3dEnabled" vmodl-name="video3dEnabled" version-id-ref="video3dEnabled">
   </value>
   <value name="hasUnsupportedDisk" vmodl-name="hasUnsupportedDisk" version-id-ref="hasUnsupportedDisk">
   </value>
   <value name="insufficientBandwidth" vmodl-name="insufficientBandwidth" version-id-ref="insufficientBandwidth">
   </value>
   <value name="hasNestedHVConfiguration" vmodl-name="hasNestedHVConfiguration" version-id-ref="hasNestedHVConfiguration">
   </value>
   <value name="hasVFlashConfiguration" vmodl-name="hasVFlashConfiguration" version-id-ref="hasVFlashConfiguration">
   </value>
   <value name="unsupportedProduct" vmodl-name="unsupportedProduct" version-id-ref="unsupportedProduct">
   </value>
   <value name="cpuHvUnsupported" vmodl-name="cpuHvUnsupported" version-id-ref="cpuHvUnsupported">
   </value>
   <value name="cpuHwmmuUnsupported" vmodl-name="cpuHwmmuUnsupported" version-id-ref="cpuHwmmuUnsupported">
   </value>
   <value name="cpuHvDisabled" vmodl-name="cpuHvDisabled" version-id-ref="cpuHvDisabled">
   </value>
   <value name="hasEFIFirmware" vmodl-name="hasEFIFirmware" version-id-ref="hasEFIFirmware">
   </value>
   <value name="tooManyVCPUs" vmodl-name="tooManyVCPUs" version-id-ref="tooManyVCPUs">
   </value>
   <value name="tooMuchMemory" vmodl-name="tooMuchMemory" version-id-ref="tooMuchMemory">
   </value>
   </enum>
   <enum name="VirtualMachineForkConfigInfoChildType"
      type-id="vim.vm.ForkConfigInfo.ChildType"
      vmodl-name="vim.vm.ForkConfigInfo.ChildType"
      enclosing-type-id-ref="vim.vm.ForkConfigInfo"
      version-id-ref="vim.version.version10"
      >
      <description-html>
         <![CDATA[Fork child type. A child could be type of none, persistent, or
  nonpersistent.]]>
      </description-html>
   <value name="none" vmodl-name="none">
   </value>
   <value name="persistent" vmodl-name="persistent">
   </value>
   <value name="nonpersistent" vmodl-name="nonpersistent">
   </value>
   </enum>
   <enum name="VirtualMachineCryptoState"
      type-id="vim.VirtualMachine.CryptoState"
      vmodl-name="vim.VirtualMachine.CryptoState"
      enclosing-type-id-ref="vim.VirtualMachine"
      version-id-ref="vim.version.version12"
      >
      <description-html>
         <![CDATA[The crypto state of a encrypted virtual machine.]]>
      </description-html>
   <value name="unlocked" vmodl-name="unlocked">
   </value>
   <value name="locked" vmodl-name="locked">
   </value>
   </enum>
   <enum name="PerfStatsType"
      type-id="vim.PerformanceManager.CounterInfo.StatsType"
      vmodl-name="vim.PerformanceManager.CounterInfo.StatsType"
      enclosing-type-id-ref="vim.PerformanceManager.CounterInfo"
      version-id-ref="vim.version.version1"
      >
      <description-html>
         <![CDATA[Indicates the type of statistical measurement that a counter&#146;s
  value represents. Valid types are &#147;absolute&#148;,
  &#147;delta&#148;, or &#147;rate&#148;.]]>
      </description-html>
   <value name="absolute" vmodl-name="absolute">
   </value>
   <value name="delta" vmodl-name="delta">
   </value>
   <value name="rate" vmodl-name="rate">
   </value>
   </enum>
   <enum name="ArrayUpdateOperation"
      type-id="vim.option.ArrayUpdateSpec.Operation"
      vmodl-name="vim.option.ArrayUpdateSpec.Operation"
      enclosing-type-id-ref="vim.option.ArrayUpdateSpec"
      version-id-ref="vim.version.version1"
      >
      <description-html>
         <![CDATA[This list specifies the type of operation being performed on the array.]]>
      </description-html>
   <value name="add" vmodl-name="add">
   </value>
   <value name="remove" vmodl-name="remove">
   </value>
   <value name="edit" vmodl-name="edit">
   </value>
   </enum>
   <enum name="VmFailedStartingSecondaryEventFailureReason"
      type-id="vim.event.VmFailedStartingSecondaryEvent.FailureReason"
      vmodl-name="vim.event.VmFailedStartingSecondaryEvent.FailureReason"
      enclosing-type-id-ref="vim.event.VmFailedStartingSecondaryEvent"
      version-id-ref="vim.version.version5"
      >
      <description-html>
         <![CDATA[The reason for the failure.]]>
      </description-html>
   <value name="incompatibleHost" vmodl-name="incompatibleHost">
   </value>
   <value name="loginFailed" vmodl-name="loginFailed">
   </value>
   <value name="registerVmFailed" vmodl-name="registerVmFailed">
   </value>
   <value name="migrateFailed" vmodl-name="migrateFailed">
   </value>
   </enum>
   <enum name="ThirdPartyLicenseAssignmentFailedReason"
      type-id="vim.fault.ThirdPartyLicenseAssignmentFailed.Reason"
      vmodl-name="vim.fault.ThirdPartyLicenseAssignmentFailed.Reason"
      enclosing-type-id-ref="vim.fault.ThirdPartyLicenseAssignmentFailed"
      version-id-ref="vim.version.version7"
      >
   <value name="licenseAssignmentFailed" vmodl-name="licenseAssignmentFailed">
   </value>
   <value name="moduleNotInstalled" vmodl-name="moduleNotInstalled">
   </value>
   </enum>
   <enum name="ReplicationVmState"
      type-id="vim.HbrManager.ReplicationVmInfo.State"
      vmodl-name="vim.HbrManager.ReplicationVmInfo.State"
      enclosing-type-id-ref="vim.HbrManager.ReplicationVmInfo"
      version-id-ref="vim.version.version7"
      >
      <description-html>
         <![CDATA[Describes the current state of a replicated <a href="vim.VirtualMachine.html">VirtualMachine</a>]]>
      </description-html>
   <value name="none" vmodl-name="none">
   </value>
   <value name="paused" vmodl-name="paused">
   </value>
   <value name="syncing" vmodl-name="syncing">
   </value>
   <value name="idle" vmodl-name="idle">
   </value>
   <value name="active" vmodl-name="active">
   </value>
   <value name="error" vmodl-name="error">
   </value>
   </enum>
   <enum name="ReplicationDiskConfigFaultReasonForFault"
      type-id="vim.fault.ReplicationDiskConfigFault.ReasonForFault"
      vmodl-name="vim.fault.ReplicationDiskConfigFault.ReasonForFault"
      enclosing-type-id-ref="vim.fault.ReplicationDiskConfigFault"
      version-id-ref="vim.version.version7"
      >
   <value name="diskNotFound" vmodl-name="diskNotFound">
   </value>
   <value name="diskTypeNotSupported" vmodl-name="diskTypeNotSupported">
   </value>
   <value name="invalidDiskKey" vmodl-name="invalidDiskKey">
   </value>
   <value name="invalidDiskReplicationId" vmodl-name="invalidDiskReplicationId">
   </value>
   <value name="duplicateDiskReplicationId" vmodl-name="duplicateDiskReplicationId">
   </value>
   <value name="invalidPersistentFilePath" vmodl-name="invalidPersistentFilePath">
   </value>
   <value name="reconfigureDiskReplicationIdNotAllowed" vmodl-name="reconfigureDiskReplicationIdNotAllowed">
   </value>
   </enum>
   <enum name="VirtualMachineConfigSpecEncryptedVMotionModes"
      type-id="vim.vm.ConfigSpec.EncryptedVMotionModes"
      vmodl-name="vim.vm.ConfigSpec.EncryptedVMotionModes"
      enclosing-type-id-ref="vim.vm.ConfigSpec"
      version-id-ref="vim.version.version11"
      >
      <description-html>
         <![CDATA[The set of valid encrypted vMotion modes for a VM.
 If the VM is encrypted, its encrypted vMotion mode will be required.]]>
      </description-html>
   <value name="disabled" vmodl-name="disabled">
   </value>
   <value name="opportunistic" vmodl-name="opportunistic">
   </value>
   <value name="required" vmodl-name="required">
   </value>
   </enum>
   <enum name="DpmBehavior"
      type-id="vim.cluster.DpmConfigInfo.DpmBehavior"
      vmodl-name="vim.cluster.DpmConfigInfo.DpmBehavior"
      enclosing-type-id-ref="vim.cluster.DpmConfigInfo"
      version-id-ref="vim.version.version2"
      >
   <value name="manual" vmodl-name="manual">
   </value>
   <value name="automated" vmodl-name="automated">
   </value>
   </enum>
   <enum name="StorageDrsSpaceLoadBalanceConfigSpaceThresholdMode"
      type-id="vim.storageDrs.SpaceLoadBalanceConfig.SpaceThresholdMode"
      vmodl-name="vim.storageDrs.SpaceLoadBalanceConfig.SpaceThresholdMode"
      enclosing-type-id-ref="vim.storageDrs.SpaceLoadBalanceConfig"
      version-id-ref="vim.version.version10"
      >
      <description-html>
         <![CDATA[Defines the two ways a space utilization threshold can be specified.]]>
      </description-html>
   <value name="utilization" vmodl-name="utilization">
   </value>
   <value name="freeSpace" vmodl-name="freeSpace">
   </value>
   </enum>
   <enum name="ClusterDasFdmAvailabilityState"
      type-id="vim.cluster.DasFdmAvailabilityState"
      vmodl-name="vim.cluster.DasFdmAvailabilityState"
      version-id-ref="vim.version.version7"
      >
      <description-html>
         <![CDATA[The <a href="vim.cluster.DasFdmAvailabilityState.html">ClusterDasFdmAvailabilityState</a> enumeration describes the
  availability states of hosts in a vSphere HA cluster. In the HA
  architecture, a agent called the Fault Domain Manager runs on
  each active host. These agents elect a master and the others become
  its slaves. The availability state assigned to a given host is
  determined from information reported by the Fault Domain Manager
  running on the host, by a Fault Domain Manager that has been elected
  master, and by vCenter Server. See <a href="vim.cluster.DasFdmHostState.html">ClusterDasFdmHostState</a>
  for more information about the vSphere HA architecture.]]>
      </description-html>
   <value name="uninitialized" vmodl-name="uninitialized">
   </value>
   <value name="election" vmodl-name="election">
   </value>
   <value name="master" vmodl-name="master">
   </value>
   <value name="connectedToMaster" vmodl-name="connectedToMaster">
   </value>
   <value name="networkPartitionedFromMaster" vmodl-name="networkPartitionedFromMaster">
   </value>
   <value name="networkIsolated" vmodl-name="networkIsolated">
   </value>
   <value name="hostDown" vmodl-name="hostDown">
   </value>
   <value name="initializationError" vmodl-name="initializationError">
   </value>
   <value name="uninitializationError" vmodl-name="uninitializationError">
   </value>
   <value name="fdmUnreachable" vmodl-name="fdmUnreachable">
   </value>
   </enum>
   <enum name="DisallowedChangeByServiceDisallowedChange"
      type-id="vim.fault.DisallowedChangeByService.DisallowedChange"
      vmodl-name="vim.fault.DisallowedChangeByService.DisallowedChange"
      enclosing-type-id-ref="vim.fault.DisallowedChangeByService"
      version-id-ref="vim.version.version7"
      >
      <description-html>
         <![CDATA[The disallowed change type.]]>
      </description-html>
   <value name="hotExtendDisk" vmodl-name="hotExtendDisk">
   </value>
   </enum>
   <enum name="ClusterPowerOnVmOption"
      type-id="vim.cluster.PowerOnVmOption"
      vmodl-name="vim.cluster.PowerOnVmOption"
      version-id-ref="vim.version.version6"
      >
      <description-html>
         <![CDATA[Defines the options for a Datacenter::powerOnVm() invocation.]]>
      </description-html>
   <value name="OverrideAutomationLevel" vmodl-name="OverrideAutomationLevel">
   </value>
   <value name="ReserveResources" vmodl-name="ReserveResources">
   </value>
   </enum>
   <enum name="HostCapabilityUnmapMethodSupported"
      type-id="vim.host.Capability.UnmapMethodSupported"
      vmodl-name="vim.host.Capability.UnmapMethodSupported"
      enclosing-type-id-ref="vim.host.Capability"
      version-id-ref="vim.version.version12"
      >
      <description-html>
         <![CDATA[Set of VMFS unmap API version.]]>
      </description-html>
   <value name="priority" vmodl-name="priority">
   </value>
   <value name="fixed" vmodl-name="fixed">
   </value>
   <value name="dynamic" vmodl-name="dynamic">
   </value>
   </enum>
   <enum name="PhysicalNicVmDirectPathGen2SupportedMode"
      type-id="vim.host.PhysicalNic.VmDirectPathGen2SupportedMode"
      vmodl-name="vim.host.PhysicalNic.VmDirectPathGen2SupportedMode"
      enclosing-type-id-ref="vim.host.PhysicalNic"
      version-id-ref="vim.version.version6"
      >
      <description-html>
         <![CDATA[Set of possible values for <a href="vim.host.PhysicalNic.html#vmDirectPathGen2SupportedMode">vmDirectPathGen2SupportedMode</a>.]]>
      </description-html>
   <value name="upt" vmodl-name="upt">
   </value>
   </enum>
   <enum name="EventAlarmExpressionComparisonOperator"
      type-id="vim.alarm.EventAlarmExpression.ComparisonOperator"
      vmodl-name="vim.alarm.EventAlarmExpression.ComparisonOperator"
      enclosing-type-id-ref="vim.alarm.EventAlarmExpression"
      version-id-ref="vim.version.version5"
      >
      <description-html>
         <![CDATA[Basic Comparison operators]]>
      </description-html>
   <value name="equals" vmodl-name="equals">
   </value>
   <value name="notEqualTo" vmodl-name="notEqualTo">
   </value>
   <value name="startsWith" vmodl-name="startsWith">
   </value>
   <value name="doesNotStartWith" vmodl-name="doesNotStartWith">
   </value>
   <value name="endsWith" vmodl-name="endsWith">
   </value>
   <value name="doesNotEndWith" vmodl-name="doesNotEndWith">
   </value>
   </enum>
   <enum name="SimpleCommandEncoding"
      type-id="vim.SimpleCommand.Encoding"
      vmodl-name="vim.SimpleCommand.Encoding"
      enclosing-type-id-ref="vim.SimpleCommand"
      version-id-ref="vim.version.version2"
      internal-before-version-id-ref="vim.version.version8"
      >
      <description-html>
         <![CDATA[The encoding of the resultant return data. This is a hint to the client side
  to indicate the format of the information being returned.]]>
      </description-html>
   <value name="CSV" vmodl-name="CSV">
   </value>
   <value name="HEX" vmodl-name="HEX">
   </value>
   <value name="STRING" vmodl-name="STRING">
   </value>
   </enum>
   <enum name="HostLockdownMode"
      type-id="vim.host.HostAccessManager.LockdownMode"
      vmodl-name="vim.host.HostAccessManager.LockdownMode"
      enclosing-type-id-ref="vim.host.HostAccessManager"
      version-id-ref="vim.version.version10"
      >
      <description-html>
         <![CDATA[Defines the possible states of lockdown mode.]]>
      </description-html>
   <value name="lockdownDisabled" vmodl-name="lockdownDisabled">
   </value>
   <value name="lockdownNormal" vmodl-name="lockdownNormal">
   </value>
   <value name="lockdownStrict" vmodl-name="lockdownStrict">
   </value>
   </enum>
   <enum name="VmwareDistributedVirtualSwitchPvlanPortType"
      type-id="vim.dvs.VmwareDistributedVirtualSwitch.PvlanPortType"
      vmodl-name="vim.dvs.VmwareDistributedVirtualSwitch.PvlanPortType"
      enclosing-type-id-ref="vim.dvs.VmwareDistributedVirtualSwitch"
      version-id-ref="vim.version.version5"
      >
      <description-html>
         <![CDATA[The PVLAN port types.]]>
      </description-html>
   <value name="promiscuous" vmodl-name="promiscuous">
   </value>
   <value name="isolated" vmodl-name="isolated">
   </value>
   <value name="community" vmodl-name="community">
   </value>
   </enum>
   <enum name="HostProfileManagerCompositionResultResultElementStatus"
      type-id="vim.profile.host.ProfileManager.CompositionResult.ResultElement.Status"
      vmodl-name="vim.profile.host.ProfileManager.CompositionResult.ResultElement.Status"
      enclosing-type-id-ref="vim.profile.host.ProfileManager.CompositionResult.ResultElement"
      version-id-ref="vim.version.version11"
      internal-before-version-id-ref="vim.version.version12"
      >
      <description-html>
         <![CDATA[The composition status class.]]>
      </description-html>
   <value name="success" vmodl-name="success">
   </value>
   <value name="error" vmodl-name="error">
   </value>
   </enum>
   <enum name="VchaNodeState"
      type-id="vim.vcha.FailoverClusterManager.VchaNodeState"
      vmodl-name="vim.vcha.FailoverClusterManager.VchaNodeState"
      enclosing-type-id-ref="vim.vcha.FailoverClusterManager"
      version-id-ref="vim.version.version11"
      >
      <description-html>
         <![CDATA[VchaNodeState enum defines possible state a node can be in a
 VCHA Cluster.]]>
      </description-html>
   <value name="up" vmodl-name="up">
   </value>
   <value name="down" vmodl-name="down">
   </value>
   </enum>
   <enum name="NetIpStackInfoPreference"
      type-id="vim.net.IpStackInfo.Preference"
      vmodl-name="vim.net.IpStackInfo.Preference"
      enclosing-type-id-ref="vim.net.IpStackInfo"
      version-id-ref="vim.version.version6"
      >
      <description-html>
         <![CDATA[The set of values used to determine ordering of default routers.
  See RFC 4293 ipDefaultRouterPreference.]]>
      </description-html>
   <value name="reserved" vmodl-name="reserved">
   </value>
   <value name="low" vmodl-name="low">
   </value>
   <value name="medium" vmodl-name="medium">
   </value>
   <value name="high" vmodl-name="high">
   </value>
   </enum>
   <enum name="VMwareDvsMulticastFilteringMode"
      type-id="vim.dvs.VmwareDistributedVirtualSwitch.MulticastFilteringMode"
      vmodl-name="vim.dvs.VmwareDistributedVirtualSwitch.MulticastFilteringMode"
      enclosing-type-id-ref="vim.dvs.VmwareDistributedVirtualSwitch"
      version-id-ref="vim.version.version10"
      >
      <description-html>
         <![CDATA[Multicast Filtering mode.]]>
      </description-html>
   <value name="legacyFiltering" vmodl-name="legacyFiltering">
   </value>
   <value name="snooping" vmodl-name="snooping">
   </value>
   </enum>
   <enum name="VirtualMachineUsbInfoFamily"
      type-id="vim.vm.UsbInfo.Family"
      vmodl-name="vim.vm.UsbInfo.Family"
      enclosing-type-id-ref="vim.vm.UsbInfo"
      version-id-ref="vim.version.version2"
      >
      <description-html>
         <![CDATA[Device class family.]]>
      </description-html>
   <value name="audio" vmodl-name="audio">
   </value>
   <value name="hid" vmodl-name="hid">
   </value>
   <value name="hid_bootable" vmodl-name="hid_bootable">
   </value>
   <value name="physical" vmodl-name="physical">
   </value>
   <value name="communication" vmodl-name="communication">
   </value>
   <value name="imaging" vmodl-name="imaging">
   </value>
   <value name="printer" vmodl-name="printer">
   </value>
   <value name="storage" vmodl-name="storage">
   </value>
   <value name="hub" vmodl-name="hub">
   </value>
   <value name="smart_card" vmodl-name="smart_card">
   </value>
   <value name="security" vmodl-name="security">
   </value>
   <value name="video" vmodl-name="video">
   </value>
   <value name="wireless" vmodl-name="wireless">
   </value>
   <value name="bluetooth" vmodl-name="bluetooth">
   </value>
   <value name="wusb" vmodl-name="wusb">
   </value>
   <value name="pda" vmodl-name="pda">
   </value>
   <value name="vendor_specific" vmodl-name="vendor_specific">
   </value>
   <value name="other" vmodl-name="other">
   </value>
   <value name="unknownFamily" vmodl-name="unknownFamily">
   </value>
   </enum>
   <enum name="HostSnmpAgentCapability"
      type-id="vim.host.SnmpSystem.AgentLimits.Capability"
      vmodl-name="vim.host.SnmpSystem.AgentLimits.Capability"
      enclosing-type-id-ref="vim.host.SnmpSystem.AgentLimits"
      version-id-ref="vim.version.version5"
      >
      <description-html>
         <![CDATA[SNMP Agent supported capabilities enum]]>
      </description-html>
   <value name="COMPLETE" vmodl-name="COMPLETE">
   </value>
   <value name="DIAGNOSTICS" vmodl-name="DIAGNOSTICS">
   </value>
   <value name="CONFIGURATION" vmodl-name="CONFIGURATION">
   </value>
   </enum>
   <enum name="VirtualMachineToolsVersionStatus"
      type-id="vim.vm.GuestInfo.ToolsVersionStatus"
      vmodl-name="vim.vm.GuestInfo.ToolsVersionStatus"
      enclosing-type-id-ref="vim.vm.GuestInfo"
      version-id-ref="vim.version.version5"
      >
      <description-html>
         <![CDATA[Current version status of VMware Tools installed in the guest operating
  system.]]>
      </description-html>
   <value name="guestToolsNotInstalled" vmodl-name="guestToolsNotInstalled">
   </value>
   <value name="guestToolsNeedUpgrade" vmodl-name="guestToolsNeedUpgrade">
   </value>
   <value name="guestToolsCurrent" vmodl-name="guestToolsCurrent">
   </value>
   <value name="guestToolsUnmanaged" vmodl-name="guestToolsUnmanaged">
   </value>
   <value name="guestToolsTooOld" vmodl-name="guestToolsTooOld" version-id-ref="guestToolsTooOld">
   </value>
   <value name="guestToolsSupportedOld" vmodl-name="guestToolsSupportedOld" version-id-ref="guestToolsSupportedOld">
   </value>
   <value name="guestToolsSupportedNew" vmodl-name="guestToolsSupportedNew" version-id-ref="guestToolsSupportedNew">
   </value>
   <value name="guestToolsTooNew" vmodl-name="guestToolsTooNew" version-id-ref="guestToolsTooNew">
   </value>
   <value name="guestToolsBlacklisted" vmodl-name="guestToolsBlacklisted" version-id-ref="guestToolsBlacklisted">
   </value>
   </enum>
   <enum name="VAppAutoStartAction"
      type-id="vim.vApp.EntityConfigInfo.Action"
      vmodl-name="vim.vApp.EntityConfigInfo.Action"
      enclosing-type-id-ref="vim.vApp.EntityConfigInfo"
      version-id-ref="vim.version.version5"
      >
   <value name="none" vmodl-name="none">
   </value>
   <value name="powerOn" vmodl-name="powerOn">
   </value>
   <value name="powerOff" vmodl-name="powerOff">
   </value>
   <value name="guestShutdown" vmodl-name="guestShutdown">
   </value>
   <value name="suspend" vmodl-name="suspend">
   </value>
   </enum>
   <enum name="AutoStartAction"
      type-id="vim.host.AutoStartManager.Action"
      vmodl-name="vim.host.AutoStartManager.Action"
      enclosing-type-id-ref="vim.host.AutoStartManager"
      version-id-ref="vim.version.version1"
      >
   <value name="none" vmodl-name="none">
   </value>
   <value name="systemDefault" vmodl-name="systemDefault">
   </value>
   <value name="powerOn" vmodl-name="powerOn">
   </value>
   <value name="powerOff" vmodl-name="powerOff">
   </value>
   <value name="guestShutdown" vmodl-name="guestShutdown">
   </value>
   <value name="suspend" vmodl-name="suspend">
   </value>
   </enum>
   <enum name="VirtualDeviceConfigSpecOperation"
      type-id="vim.vm.device.VirtualDeviceSpec.Operation"
      vmodl-name="vim.vm.device.VirtualDeviceSpec.Operation"
      enclosing-type-id-ref="vim.vm.device.VirtualDeviceSpec"
      version-id-ref="vim.version.version1"
      >
      <description-html>
         <![CDATA[The type of operation being performed on the specified virtual device.
  Valid values are:]]>
      </description-html>
   <value name="add" vmodl-name="add">
   </value>
   <value name="remove" vmodl-name="remove">
   </value>
   <value name="edit" vmodl-name="edit">
   </value>
   </enum>
   <enum name="LicenseManagerLicenseKey"
      type-id="vim.LicenseManager.LicenseKey"
      vmodl-name="vim.LicenseManager.LicenseKey"
      enclosing-type-id-ref="vim.LicenseManager"
      version-id-ref="vim.version.version1"
      is-deprecated="true"
      >
      <description-html>
         <![CDATA[Licensed features have unique keys to identify them.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of VI API 2.5, use <a href="vim.LicenseManager.html#querySourceAvailability">QueryLicenseSourceAvailability</a>
             to obtain an array of <a href="vim.LicenseManager.AvailabilityInfo.html">LicenseAvailabilityInfo</a> data
             objects.]]>
      </deprecated-html>
   <value name="esxFull" vmodl-name="esxFull">
   </value>
   <value name="esxVmtn" vmodl-name="esxVmtn">
   </value>
   <value name="esxExpress" vmodl-name="esxExpress">
   </value>
   <value name="san" vmodl-name="san">
   </value>
   <value name="iscsi" vmodl-name="iscsi">
   </value>
   <value name="nas" vmodl-name="nas">
   </value>
   <value name="vsmp" vmodl-name="vsmp">
   </value>
   <value name="backup" vmodl-name="backup">
   </value>
   <value name="vc" vmodl-name="vc">
   </value>
   <value name="vcExpress" vmodl-name="vcExpress" version-id-ref="vcExpress">
   </value>
   <value name="esxHost" vmodl-name="esxHost">
   </value>
   <value name="gsxHost" vmodl-name="gsxHost">
   </value>
   <value name="serverHost" vmodl-name="serverHost" version-id-ref="serverHost">
   </value>
   <value name="drsPower" vmodl-name="drsPower" version-id-ref="drsPower">
   </value>
   <value name="vmotion" vmodl-name="vmotion">
   </value>
   <value name="drs" vmodl-name="drs">
   </value>
   <value name="das" vmodl-name="das">
   </value>
   </enum>
   <enum name="ReplicationVmConfigFaultReasonForFault"
      type-id="vim.fault.ReplicationVmConfigFault.ReasonForFault"
      vmodl-name="vim.fault.ReplicationVmConfigFault.ReasonForFault"
      enclosing-type-id-ref="vim.fault.ReplicationVmConfigFault"
      version-id-ref="vim.version.version7"
      >
   <value name="incompatibleHwVersion" vmodl-name="incompatibleHwVersion">
   </value>
   <value name="invalidVmReplicationId" vmodl-name="invalidVmReplicationId">
   </value>
   <value name="invalidGenerationNumber" vmodl-name="invalidGenerationNumber">
   </value>
   <value name="outOfBoundsRpoValue" vmodl-name="outOfBoundsRpoValue">
   </value>
   <value name="invalidDestinationIpAddress" vmodl-name="invalidDestinationIpAddress">
   </value>
   <value name="invalidDestinationPort" vmodl-name="invalidDestinationPort">
   </value>
   <value name="invalidExtraVmOptions" vmodl-name="invalidExtraVmOptions">
   </value>
   <value name="staleGenerationNumber" vmodl-name="staleGenerationNumber">
   </value>
   <value name="reconfigureVmReplicationIdNotAllowed" vmodl-name="reconfigureVmReplicationIdNotAllowed">
   </value>
   <value name="cannotRetrieveVmReplicationConfiguration" vmodl-name="cannotRetrieveVmReplicationConfiguration">
   </value>
   <value name="replicationAlreadyEnabled" vmodl-name="replicationAlreadyEnabled">
   </value>
   <value name="invalidPriorConfiguration" vmodl-name="invalidPriorConfiguration">
   </value>
   <value name="replicationNotEnabled" vmodl-name="replicationNotEnabled">
   </value>
   <value name="replicationConfigurationFailed" vmodl-name="replicationConfigurationFailed">
   </value>
   <value name="encryptedVm" vmodl-name="encryptedVm" version-id-ref="encryptedVm">
   </value>
   <value name="invalidThumbprint" vmodl-name="invalidThumbprint" version-id-ref="invalidThumbprint">
   </value>
   <value name="incompatibleDevice" vmodl-name="incompatibleDevice" version-id-ref="incompatibleDevice">
   </value>
   </enum>
   <enum name="DVPortStatusVmDirectPathGen2InactiveReasonNetwork"
      type-id="vim.dvs.DistributedVirtualPort.RuntimeInfo.VmDirectPathGen2InactiveReasonNetwork"
      vmodl-name="vim.dvs.DistributedVirtualPort.RuntimeInfo.VmDirectPathGen2InactiveReasonNetwork"
      enclosing-type-id-ref="vim.dvs.DistributedVirtualPort.RuntimeInfo"
      version-id-ref="vim.version.version6"
      >
      <description-html>
         <![CDATA[Set of possible values for
 <a href="vim.dvs.DistributedVirtualPort.RuntimeInfo.html">DVPortStatus</a>.<a href="vim.dvs.DistributedVirtualPort.RuntimeInfo.html#vmDirectPathGen2InactiveReasonNetwork">vmDirectPathGen2InactiveReasonNetwork</a>.]]>
      </description-html>
   <value name="portNptIncompatibleDvs" vmodl-name="portNptIncompatibleDvs">
   </value>
   <value name="portNptNoCompatibleNics" vmodl-name="portNptNoCompatibleNics">
   </value>
   <value name="portNptNoVirtualFunctionsAvailable" vmodl-name="portNptNoVirtualFunctionsAvailable">
   </value>
   <value name="portNptDisabledForPort" vmodl-name="portNptDisabledForPort">
   </value>
   </enum>
   <enum name="HostProfileValidationFailureInfoUpdateType"
      type-id="vim.profile.host.HostProfile.ValidationFailureInfo.UpdateType"
      vmodl-name="vim.profile.host.HostProfile.ValidationFailureInfo.UpdateType"
      enclosing-type-id-ref="vim.profile.host.HostProfile.ValidationFailureInfo"
      version-id-ref="vim.version.version12"
      >
      <description-html>
         <![CDATA[Types of host profile update.]]>
      </description-html>
   <value name="HostBased" vmodl-name="HostBased">
   </value>
   <value name="Import" vmodl-name="Import">
   </value>
   <value name="Edit" vmodl-name="Edit">
   </value>
   <value name="Compose" vmodl-name="Compose">
   </value>
   </enum>
   <enum name="PhysicalNicResourcePoolSchedulerDisallowedReason"
      type-id="vim.host.PhysicalNic.ResourcePoolSchedulerDisallowedReason"
      vmodl-name="vim.host.PhysicalNic.ResourcePoolSchedulerDisallowedReason"
      enclosing-type-id-ref="vim.host.PhysicalNic"
      version-id-ref="vim.version.version6"
      >
   <value name="userOptOut" vmodl-name="userOptOut">
   </value>
   <value name="hardwareUnsupported" vmodl-name="hardwareUnsupported">
   </value>
   </enum>
   <enum name="CryptoManagerKmipCryptoKeyStatusKeyUnavailableReason"
      type-id="vim.encryption.CryptoManagerKmip.CryptoKeyStatus.KeyUnavailableReason"
      vmodl-name="vim.encryption.CryptoManagerKmip.CryptoKeyStatus.KeyUnavailableReason"
      enclosing-type-id-ref="vim.encryption.CryptoManagerKmip.CryptoKeyStatus"
      version-id-ref="vim.version.version14"
      >
   <value name="KeyStateMissingInCache" vmodl-name="KeyStateMissingInCache">
   </value>
   <value name="KeyStateClusterInvalid" vmodl-name="KeyStateClusterInvalid">
   </value>
   <value name="KeyStateClusterUnreachable" vmodl-name="KeyStateClusterUnreachable">
   </value>
   <value name="KeyStateMissingInKMS" vmodl-name="KeyStateMissingInKMS">
   </value>
   <value name="KeyStateNotActiveOrEnabled" vmodl-name="KeyStateNotActiveOrEnabled">
   </value>
   <value name="KeyStateManagedByTrustAuthority" vmodl-name="KeyStateManagedByTrustAuthority" version-id-ref="KeyStateManagedByTrustAuthority">
   </value>
   </enum>
   <enum name="InvalidProfileReferenceHostReason"
      type-id="vim.fault.InvalidProfileReferenceHost.Reason"
      vmodl-name="vim.fault.InvalidProfileReferenceHost.Reason"
      enclosing-type-id-ref="vim.fault.InvalidProfileReferenceHost"
      version-id-ref="vim.version.version7"
      >
   <value name="incompatibleVersion" vmodl-name="incompatibleVersion">
   </value>
   <value name="missingReferenceHost" vmodl-name="missingReferenceHost">
   </value>
   </enum>
   <enum name="VMwareDvsLacpApiVersion"
      type-id="vim.dvs.VmwareDistributedVirtualSwitch.LacpApiVersion"
      vmodl-name="vim.dvs.VmwareDistributedVirtualSwitch.LacpApiVersion"
      enclosing-type-id-ref="vim.dvs.VmwareDistributedVirtualSwitch"
      version-id-ref="vim.version.version9"
      >
      <description-html>
         <![CDATA[Link Aggregation Control Protocol API versions.]]>
      </description-html>
   <value name="singleLag" vmodl-name="singleLag">
   </value>
   <value name="multipleLag" vmodl-name="multipleLag">
   </value>
   </enum>
   <enum name="VchaClusterMode"
      type-id="vim.vcha.FailoverClusterManager.VchaClusterMode"
      vmodl-name="vim.vcha.FailoverClusterManager.VchaClusterMode"
      enclosing-type-id-ref="vim.vcha.FailoverClusterManager"
      version-id-ref="vim.version.version11"
      >
      <description-html>
         <![CDATA[VchaClusterMode enum defines the possible modes for a VCHA Cluster.]]>
      </description-html>
   <value name="enabled" vmodl-name="enabled">
   </value>
   <value name="disabled" vmodl-name="disabled">
   </value>
   <value name="maintenance" vmodl-name="maintenance">
   </value>
   </enum>
   <enum name="MetricAlarmOperator"
      type-id="vim.alarm.MetricAlarmExpression.MetricOperator"
      vmodl-name="vim.alarm.MetricAlarmExpression.MetricOperator"
      enclosing-type-id-ref="vim.alarm.MetricAlarmExpression"
      version-id-ref="vim.version.version1"
      >
      <description-html>
         <![CDATA[The operation on the target metric item.]]>
      </description-html>
   <value name="isAbove" vmodl-name="isAbove">
   </value>
   <value name="isBelow" vmodl-name="isBelow">
   </value>
   </enum>
   <enum name="VirtualDiskCompatibilityMode"
      type-id="vim.vm.device.VirtualDiskOption.CompatibilityMode"
      vmodl-name="vim.vm.device.VirtualDiskOption.CompatibilityMode"
      enclosing-type-id-ref="vim.vm.device.VirtualDiskOption"
      version-id-ref="vim.version.version1"
      >
      <description-html>
         <![CDATA[All known compatibility modes for raw disk mappings. Valid compatibility
  modes are:
  <ul>
  <li>virtualMode
  <li>physicalMode
  </ul>]]>
      </description-html>
   <value name="virtualMode" vmodl-name="virtualMode">
   </value>
   <value name="physicalMode" vmodl-name="physicalMode">
   </value>
   </enum>
   <enum name="HostPowerOperationType"
      type-id="vim.cluster.HostPowerAction.OperationType"
      vmodl-name="vim.cluster.HostPowerAction.OperationType"
      enclosing-type-id-ref="vim.cluster.HostPowerAction"
      version-id-ref="vim.version.version2"
      >
   <value name="powerOn" vmodl-name="powerOn">
   </value>
   <value name="powerOff" vmodl-name="powerOff">
   </value>
   </enum>
   <enum name="HostPatchManagerInstallState"
      type-id="vim.host.PatchManager.Status.InstallState"
      vmodl-name="vim.host.PatchManager.Status.InstallState"
      enclosing-type-id-ref="vim.host.PatchManager.Status"
      version-id-ref="vim.version.version1"
      internal-before-version-id-ref="vim.version.version2"
      >
      <description-html>
         <![CDATA[The installation state if the update is installed on the server.]]>
      </description-html>
   <value name="hostRestarted" vmodl-name="hostRestarted">
   </value>
   <value name="imageActive" vmodl-name="imageActive">
   </value>
   </enum>
   <enum name="VirtualDiskType"
      type-id="vim.VirtualDiskManager.VirtualDiskType"
      vmodl-name="vim.VirtualDiskManager.VirtualDiskType"
      enclosing-type-id-ref="vim.VirtualDiskManager"
      version-id-ref="vim.version.version2"
      >
      <description-html>
         <![CDATA[The types of virtual disks that can be created or cloned.]]>
      </description-html>
   <value name="preallocated" vmodl-name="preallocated">
   </value>
   <value name="thin" vmodl-name="thin">
   </value>
   <value name="seSparse" vmodl-name="seSparse" version-id-ref="seSparse">
   </value>
   <value name="rdm" vmodl-name="rdm">
   </value>
   <value name="rdmp" vmodl-name="rdmp">
   </value>
   <value name="raw" vmodl-name="raw">
   </value>
   <value name="delta" vmodl-name="delta" version-id-ref="delta">
   </value>
   <value name="sparse2Gb" vmodl-name="sparse2Gb">
   </value>
   <value name="thick2Gb" vmodl-name="thick2Gb">
   </value>
   <value name="eagerZeroedThick" vmodl-name="eagerZeroedThick">
   </value>
   <value name="sparseMonolithic" vmodl-name="sparseMonolithic" version-id-ref="sparseMonolithic">
   </value>
   <value name="flatMonolithic" vmodl-name="flatMonolithic" version-id-ref="flatMonolithic">
   </value>
   <value name="thick" vmodl-name="thick">
   </value>
   </enum>
   <enum name="VirtualMachineHtSharing"
      type-id="vim.vm.FlagInfo.HtSharing"
      vmodl-name="vim.vm.FlagInfo.HtSharing"
      enclosing-type-id-ref="vim.vm.FlagInfo"
      version-id-ref="vim.version.version1"
      is-deprecated="true"
      >
      <description-html>
         <![CDATA[Set of possible values for <a href="vim.vm.FlagInfo.html#htSharing">htSharing</a>.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[as of vSphere API 6.7.]]>
      </deprecated-html>
   <value name="any" vmodl-name="any">
   </value>
   <value name="none" vmodl-name="none">
   </value>
   <value name="internal" vmodl-name="internal">
   </value>
   </enum>
   <enum name="AgentInstallFailedReason"
      type-id="vim.fault.AgentInstallFailed.Reason"
      vmodl-name="vim.fault.AgentInstallFailed.Reason"
      enclosing-type-id-ref="vim.fault.AgentInstallFailed"
      version-id-ref="vim.version.version5"
      >
   <value name="NotEnoughSpaceOnDevice" vmodl-name="NotEnoughSpaceOnDevice">
   </value>
   <value name="PrepareToUpgradeFailed" vmodl-name="PrepareToUpgradeFailed">
   </value>
   <value name="AgentNotRunning" vmodl-name="AgentNotRunning">
   </value>
   <value name="AgentNotReachable" vmodl-name="AgentNotReachable">
   </value>
   <value name="InstallTimedout" vmodl-name="InstallTimedout">
   </value>
   <value name="SignatureVerificationFailed" vmodl-name="SignatureVerificationFailed">
   </value>
   <value name="AgentUploadFailed" vmodl-name="AgentUploadFailed">
   </value>
   <value name="AgentUploadTimedout" vmodl-name="AgentUploadTimedout">
   </value>
   <value name="UnknownInstallerError" vmodl-name="UnknownInstallerError">
   </value>
   </enum>
   <enum name="vslmVStorageObjectControlFlag"
      type-id="vim.vslm.VStorageObjectControlFlag"
      vmodl-name="vim.vslm.VStorageObjectControlFlag"
      version-id-ref="vim.version.version12"
      >
   <value name="keepAfterDeleteVm" vmodl-name="keepAfterDeleteVm">
   </value>
   <value name="disableRelocation" vmodl-name="disableRelocation">
   </value>
   <value name="enableChangedBlockTracking" vmodl-name="enableChangedBlockTracking">
   </value>
   </enum>
   <enum name="CustomizationLicenseDataMode"
      type-id="vim.vm.customization.LicenseFilePrintData.AutoMode"
      vmodl-name="vim.vm.customization.LicenseFilePrintData.AutoMode"
      enclosing-type-id-ref="vim.vm.customization.LicenseFilePrintData"
      version-id-ref="vim.version.version1"
      >
      <description-html>
         <![CDATA[Enumeration of AutoMode values.]]>
      </description-html>
   <value name="perServer" vmodl-name="perServer">
   </value>
   <value name="perSeat" vmodl-name="perSeat">
   </value>
   </enum>
   <enum name="BaseConfigInfoDiskFileBackingInfoProvisioningType"
      type-id="vim.vslm.BaseConfigInfo.DiskFileBackingInfo.ProvisioningType"
      vmodl-name="vim.vslm.BaseConfigInfo.DiskFileBackingInfo.ProvisioningType"
      enclosing-type-id-ref="vim.vslm.BaseConfigInfo.DiskFileBackingInfo"
      version-id-ref="vim.version.version11"
      >
      <description-html>
         <![CDATA[Provisioning type constants.]]>
      </description-html>
   <value name="thin" vmodl-name="thin">
   </value>
   <value name="eagerZeroedThick" vmodl-name="eagerZeroedThick">
   </value>
   <value name="lazyZeroedThick" vmodl-name="lazyZeroedThick">
   </value>
   </enum>
   <enum name="VirtualMachineRecordReplayState"
      type-id="vim.VirtualMachine.RecordReplayState"
      vmodl-name="vim.VirtualMachine.RecordReplayState"
      enclosing-type-id-ref="vim.VirtualMachine"
      version-id-ref="vim.version.version5"
      is-deprecated="true"
      >
      <description-html>
         <![CDATA[The RecordReplayState type defines a simple set of record and replay
 states for a virtual machine.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[as of vSphere API 6.0]]>
      </deprecated-html>
   <value name="recording" vmodl-name="recording">
   </value>
   <value name="replaying" vmodl-name="replaying">
   </value>
   <value name="inactive" vmodl-name="inactive">
   </value>
   </enum>
   <enum name="HostProfileManagerAnswerFileStatus"
      type-id="vim.profile.host.ProfileManager.AnswerFileStatus"
      vmodl-name="vim.profile.host.ProfileManager.AnswerFileStatus"
      enclosing-type-id-ref="vim.profile.host.ProfileManager"
      version-id-ref="vim.version.version7"
      >
      <description-html>
         <![CDATA[The <a href="vim.profile.host.ProfileManager.AnswerFileStatus.html">HostProfileManagerAnswerFileStatus</a> enum
 defines possible values for answer file status.]]>
      </description-html>
   <value name="valid" vmodl-name="valid">
   </value>
   <value name="invalid" vmodl-name="invalid">
   </value>
   <value name="unknown" vmodl-name="unknown">
   </value>
   </enum>
   <enum name="ActionParameter"
      type-id="vim.action.Action.ActionParameter"
      vmodl-name="vim.action.Action.ActionParameter"
      enclosing-type-id-ref="vim.action.Action"
      version-id-ref="vim.version.version1"
      >
      <description-html>
         <![CDATA[These constant strings can be used as parameters in user-specified
  email subject and body templates as well as in scripts. The action processor
  in VirtualCenter substitutes the run-time values for the parameters.

  For example, an email subject provided by the client could be the string:
  <tt>"Alarm - {alarmName} Description:\n{eventDescription}"</tt>.
  Or a script action provided could be: <tt>"myScript {alarmName}"</tt>]]>
      </description-html>
   <value name="targetName" vmodl-name="targetName">
   </value>
   <value name="alarmName" vmodl-name="alarmName">
   </value>
   <value name="oldStatus" vmodl-name="oldStatus">
   </value>
   <value name="newStatus" vmodl-name="newStatus">
   </value>
   <value name="triggeringSummary" vmodl-name="triggeringSummary">
   </value>
   <value name="declaringSummary" vmodl-name="declaringSummary">
   </value>
   <value name="eventDescription" vmodl-name="eventDescription">
   </value>
   <value name="target" vmodl-name="target">
   </value>
   <value name="alarm" vmodl-name="alarm">
   </value>
   </enum>
   <enum name="DiagnosticPartitionType"
      type-id="vim.host.DiagnosticPartition.DiagnosticType"
      vmodl-name="vim.host.DiagnosticPartition.DiagnosticType"
      enclosing-type-id-ref="vim.host.DiagnosticPartition"
      version-id-ref="vim.version.version1"
      >
      <description-html>
         <![CDATA[The type of diagnostic partition. Private diagnostic partition has one
 slot, so can only be used by one host. Shared diagnostic parititon
 needs multiple slots so to be usable by multiple hosts.]]>
      </description-html>
   <value name="singleHost" vmodl-name="singleHost">
   </value>
   <value name="multiHost" vmodl-name="multiHost">
   </value>
   </enum>
   <enum name="DvsEventPortBlockState"
      type-id="vim.event.DvsEvent.PortBlockState"
      vmodl-name="vim.event.DvsEvent.PortBlockState"
      enclosing-type-id-ref="vim.event.DvsEvent"
      version-id-ref="vim.version.version11"
      >
      <description-html>
         <![CDATA[The  port blocked/unblocked state.]]>
      </description-html>
   <value name="unset" vmodl-name="unset">
   </value>
   <value name="blocked" vmodl-name="blocked">
   </value>
   <value name="unblocked" vmodl-name="unblocked">
   </value>
   <value name="unknown" vmodl-name="unknown">
   </value>
   </enum>
   <enum name="QuarantineModeFaultFaultType"
      type-id="vim.fault.QuarantineModeFault.FaultType"
      vmodl-name="vim.fault.QuarantineModeFault.FaultType"
      enclosing-type-id-ref="vim.fault.QuarantineModeFault"
      version-id-ref="vim.version.version11"
      >
   <value name="NoCompatibleNonQuarantinedHost" vmodl-name="NoCompatibleNonQuarantinedHost">
   </value>
   <value name="CorrectionDisallowed" vmodl-name="CorrectionDisallowed">
   </value>
   <value name="CorrectionImpact" vmodl-name="CorrectionImpact">
   </value>
   </enum>
   <enum name="VirtualAppVAppState"
      type-id="vim.VirtualApp.VAppState"
      vmodl-name="vim.VirtualApp.VAppState"
      enclosing-type-id-ref="vim.VirtualApp"
      version-id-ref="vim.version.version5"
      >
      <description-html>
         <![CDATA[The VAppState type defines the set of states a vApp can be
  in. The transitory states between started and stopped is modeled explicitly,
  since the starting or stopping of a vApp is typically a time-consuming
  process that might take minutes to complete.]]>
      </description-html>
   <value name="started" vmodl-name="started">
   </value>
   <value name="stopped" vmodl-name="stopped">
   </value>
   <value name="starting" vmodl-name="starting">
   </value>
   <value name="stopping" vmodl-name="stopping">
   </value>
   </enum>
   <enum name="GuestInfoAppStateType"
      type-id="vim.vm.GuestInfo.AppStateType"
      vmodl-name="vim.vm.GuestInfo.AppStateType"
      enclosing-type-id-ref="vim.vm.GuestInfo"
      version-id-ref="vim.version.version9"
      >
      <description-html>
         <![CDATA[Application state type.]]>
      </description-html>
   <value name="none" vmodl-name="none">
   </value>
   <value name="appStateOk" vmodl-name="appStateOk">
   </value>
   <value name="appStateNeedReset" vmodl-name="appStateNeedReset">
   </value>
   </enum>
   <enum name="VirtualMachineFlagInfoMonitorType"
      type-id="vim.vm.FlagInfo.MonitorType"
      vmodl-name="vim.vm.FlagInfo.MonitorType"
      enclosing-type-id-ref="vim.vm.FlagInfo"
      version-id-ref="vim.version.version2"
      >
      <description-html>
         <![CDATA[Set of possible values for <a href="vim.vm.FlagInfo.html#monitorType">monitorType</a>.]]>
      </description-html>
   <value name="release" vmodl-name="release">
   </value>
   <value name="debug" vmodl-name="debug">
   </value>
   <value name="stats" vmodl-name="stats">
   </value>
   </enum>
   <enum name="ClusterVmReadinessReadyCondition"
      type-id="vim.cluster.VmReadiness.ReadyCondition"
      vmodl-name="vim.cluster.VmReadiness.ReadyCondition"
      enclosing-type-id-ref="vim.cluster.VmReadiness"
      version-id-ref="vim.version.version11"
      >
      <description-html>
         <![CDATA[Condition for VM's readiness]]>
      </description-html>
   <value name="none" vmodl-name="none">
   </value>
   <value name="poweredOn" vmodl-name="poweredOn">
   </value>
   <value name="guestHbStatusGreen" vmodl-name="guestHbStatusGreen">
   </value>
   <value name="appHbStatusGreen" vmodl-name="appHbStatusGreen">
   </value>
   <value name="useClusterDefault" vmodl-name="useClusterDefault">
   </value>
   </enum>
   <enum name="VirtualEthernetCardLegacyNetworkDeviceName"
      type-id="vim.vm.device.VirtualEthernetCardOption.LegacyNetworkBackingOption.LegacyNetworkDeviceName"
      vmodl-name="vim.vm.device.VirtualEthernetCardOption.LegacyNetworkBackingOption.LegacyNetworkDeviceName"
      enclosing-type-id-ref="vim.vm.device.VirtualEthernetCardOption.LegacyNetworkBackingOption"
      version-id-ref="vim.version.version1"
      >
      <description-html>
         <![CDATA[Possible device names for legacy network backing option are listed below.
 Note: This is not an exhaustive list. It is possible to specify
 a specific device as well.
 For example, on ESX hosts, the device name could be specified as "vmnic[0-9]"
 or vmnet_[0-9].
 For VMware Server Windows hosts, the device name could be specified as "vmnet[0-9]"
 and for VMware Server Linux hosts, the device name could be specified as "/dev/vmnet[0-9]"
 depending on what devices are available on that particular host.]]>
      </description-html>
   <value name="bridged" vmodl-name="bridged">
   </value>
   <value name="nat" vmodl-name="nat">
   </value>
   <value name="hostonly" vmodl-name="hostonly">
   </value>
   </enum>
   <enum name="HostOpaqueSwitchOpaqueSwitchState"
      type-id="vim.host.OpaqueSwitch.OpaqueSwitchState"
      vmodl-name="vim.host.OpaqueSwitch.OpaqueSwitchState"
      enclosing-type-id-ref="vim.host.OpaqueSwitch"
      version-id-ref="vim.version.version10"
      >
   <value name="up" vmodl-name="up">
   </value>
   <value name="warning" vmodl-name="warning">
   </value>
   <value name="down" vmodl-name="down">
   </value>
   <value name="maintenance" vmodl-name="maintenance" version-id-ref="maintenance">
   </value>
   </enum>
   <enum name="ProfileExecuteResultStatus"
      type-id="vim.profile.host.ExecuteResult.Status"
      vmodl-name="vim.profile.host.ExecuteResult.Status"
      enclosing-type-id-ref="vim.profile.host.ExecuteResult"
      version-id-ref="vim.version.version5"
      >
      <description-html>
         <![CDATA[Defines the result status values for a
 <a href="vim.profile.host.HostProfile.html">HostProfile</a>.<a href="vim.profile.host.HostProfile.html#execute">ExecuteHostProfile</a>
 operation. The result data is contained in the
 <a href="vim.profile.host.ExecuteResult.html">ProfileExecuteResult</a> data object.]]>
      </description-html>
   <value name="success" vmodl-name="success">
   </value>
   <value name="needInput" vmodl-name="needInput">
   </value>
   <value name="error" vmodl-name="error">
   </value>
   </enum>
   <enum name="VirtualMachineFaultToleranceType"
      type-id="vim.VirtualMachine.FaultToleranceType"
      vmodl-name="vim.VirtualMachine.FaultToleranceType"
      enclosing-type-id-ref="vim.VirtualMachine"
      version-id-ref="vim.version.version10"
      >
      <description-html>
         <![CDATA[The FaultToleranceType defines the type of fault tolerance, if any,
  the virtual machine is configured for.]]>
      </description-html>
   <value name="unset" vmodl-name="unset" version-id-ref="unset">
   </value>
   <value name="recordReplay" vmodl-name="recordReplay">
   </value>
   <value name="checkpointing" vmodl-name="checkpointing">
   </value>
   </enum>
   <enum name="RecommendationReasonCode"
      type-id="vim.cluster.Recommendation.ReasonCode"
      vmodl-name="vim.cluster.Recommendation.ReasonCode"
      enclosing-type-id-ref="vim.cluster.Recommendation"
      version-id-ref="vim.version.version2"
      >
      <description-html>
         <![CDATA[List of defined migration reason codes:]]>
      </description-html>
   <value name="fairnessCpuAvg" vmodl-name="fairnessCpuAvg">
   </value>
   <value name="fairnessMemAvg" vmodl-name="fairnessMemAvg">
   </value>
   <value name="jointAffin" vmodl-name="jointAffin">
   </value>
   <value name="antiAffin" vmodl-name="antiAffin">
   </value>
   <value name="hostMaint" vmodl-name="hostMaint">
   </value>
   <value name="enterStandby" vmodl-name="enterStandby">
   </value>
   <value name="reservationCpu" vmodl-name="reservationCpu">
   </value>
   <value name="reservationMem" vmodl-name="reservationMem">
   </value>
   <value name="powerOnVm" vmodl-name="powerOnVm">
   </value>
   <value name="powerSaving" vmodl-name="powerSaving">
   </value>
   <value name="increaseCapacity" vmodl-name="increaseCapacity">
   </value>
   <value name="checkResource" vmodl-name="checkResource" version-id-ref="checkResource">
   </value>
   <value name="unreservedCapacity" vmodl-name="unreservedCapacity" version-id-ref="unreservedCapacity">
   </value>
   <value name="vmHostHardAffinity" vmodl-name="vmHostHardAffinity" version-id-ref="vmHostHardAffinity">
   </value>
   <value name="vmHostSoftAffinity" vmodl-name="vmHostSoftAffinity" version-id-ref="vmHostSoftAffinity">
   </value>
   <value name="balanceDatastoreSpaceUsage" vmodl-name="balanceDatastoreSpaceUsage" version-id-ref="balanceDatastoreSpaceUsage">
   </value>
   <value name="balanceDatastoreIOLoad" vmodl-name="balanceDatastoreIOLoad" version-id-ref="balanceDatastoreIOLoad">
   </value>
   <value name="balanceDatastoreIOPSReservation" vmodl-name="balanceDatastoreIOPSReservation" version-id-ref="balanceDatastoreIOPSReservation">
   </value>
   <value name="datastoreMaint" vmodl-name="datastoreMaint" version-id-ref="datastoreMaint">
   </value>
   <value name="virtualDiskJointAffin" vmodl-name="virtualDiskJointAffin" version-id-ref="virtualDiskJointAffin">
   </value>
   <value name="virtualDiskAntiAffin" vmodl-name="virtualDiskAntiAffin" version-id-ref="virtualDiskAntiAffin">
   </value>
   <value name="datastoreSpaceOutage" vmodl-name="datastoreSpaceOutage" version-id-ref="datastoreSpaceOutage">
   </value>
   <value name="storagePlacement" vmodl-name="storagePlacement" version-id-ref="storagePlacement">
   </value>
   <value name="iolbDisabledInternal" vmodl-name="iolbDisabledInternal" version-id-ref="iolbDisabledInternal">
   </value>
   <value name="xvmotionPlacement" vmodl-name="xvmotionPlacement" version-id-ref="xvmotionPlacement">
   </value>
   <value name="networkBandwidthReservation" vmodl-name="networkBandwidthReservation" version-id-ref="networkBandwidthReservation">
   </value>
   <value name="hostInDegradation" vmodl-name="hostInDegradation" version-id-ref="hostInDegradation">
   </value>
   <value name="hostExitDegradation" vmodl-name="hostExitDegradation" version-id-ref="hostExitDegradation">
   </value>
   <value name="maxVmsConstraint" vmodl-name="maxVmsConstraint" version-id-ref="maxVmsConstraint">
   </value>
   <value name="ftConstraints" vmodl-name="ftConstraints" version-id-ref="ftConstraints">
   </value>
   <value name="vmHostAffinityPolicy" vmodl-name="vmHostAffinityPolicy" version-id-ref="vmHostAffinityPolicy">
   </value>
   <value name="vmHostAntiAffinityPolicy" vmodl-name="vmHostAntiAffinityPolicy" version-id-ref="vmHostAntiAffinityPolicy">
   </value>
   <value name="vmAntiAffinityPolicy" vmodl-name="vmAntiAffinityPolicy" version-id-ref="vmAntiAffinityPolicy">
   </value>
   </enum>
   <enum name="UpgradePolicy"
      type-id="vim.vm.ToolsConfigInfo.UpgradePolicy"
      vmodl-name="vim.vm.ToolsConfigInfo.UpgradePolicy"
      enclosing-type-id-ref="vim.vm.ToolsConfigInfo"
      version-id-ref="vim.version.version2"
      >
      <description-html>
         <![CDATA[The policy setting used to determine when tools are auto-upgraded for
  a virtual machine]]>
      </description-html>
   <value name="manual" vmodl-name="manual">
   </value>
   <value name="upgradeAtPowerCycle" vmodl-name="upgradeAtPowerCycle">
   </value>
   </enum>
   <enum name="VirtualSerialPortEndPoint"
      type-id="vim.vm.device.VirtualSerialPortOption.EndPoint"
      vmodl-name="vim.vm.device.VirtualSerialPortOption.EndPoint"
      enclosing-type-id-ref="vim.vm.device.VirtualSerialPortOption"
      version-id-ref="vim.version.version1"
      >
      <description-html>
         <![CDATA[The <code><a href="vim.vm.device.VirtualSerialPortOption.EndPoint.html">VirtualSerialPortEndPoint</a> enum defines
  endpoint values for virtual serial port pipe backing.
  When you use serial port pipe backing to connect a virtual machine
  to another process, you must define the endpoints.
  See the <code><a href="vim.vm.device.VirtualSerialPort.PipeBackingInfo.html#endpoint">endpoint</a></code>
  property for the virtual serial port pipe backing information data object.
  <p>
  The possible endpoint values are:
  <ul>
  <li>client
  <li>server
  </ul>
  <p>
  For the supported choices, see the
  <code><a href="vim.vm.device.VirtualSerialPortOption.PipeBackingOption.html#endpoint">endpoint</a></code>
  property for the virtual serial port pipe backing option data object.]]>
      </description-html>
   <value name="client" vmodl-name="client">
   </value>
   <value name="server" vmodl-name="server">
   </value>
   </enum>
   <enum name="AffinityType"
      type-id="vim.fault.AffinityConfigured.Affinity"
      vmodl-name="vim.fault.AffinityConfigured.Affinity"
      enclosing-type-id-ref="vim.fault.AffinityConfigured"
      version-id-ref="vim.version.version1"
      >
      <description-html>
         <![CDATA[Types of affinities.]]>
      </description-html>
   <value name="memory" vmodl-name="memory">
   </value>
   <value name="cpu" vmodl-name="cpu">
   </value>
   </enum>
   <enum name="DiagnosticManagerLogFormat"
      type-id="vim.DiagnosticManager.LogDescriptor.Format"
      vmodl-name="vim.DiagnosticManager.LogDescriptor.Format"
      enclosing-type-id-ref="vim.DiagnosticManager.LogDescriptor"
      version-id-ref="vim.version.version1"
      >
      <description-html>
         <![CDATA[Constants for defined formats. For more information, see the comment for the
  format property.]]>
      </description-html>
   <value name="plain" vmodl-name="plain">
   </value>
   </enum>
   <enum name="EventEventSeverity"
      type-id="vim.event.Event.EventSeverity"
      vmodl-name="vim.event.Event.EventSeverity"
      enclosing-type-id-ref="vim.event.Event"
      version-id-ref="vim.version.version5"
      >
      <description-html>
         <![CDATA[Severity level constants.]]>
      </description-html>
   <value name="error" vmodl-name="error">
   </value>
   <value name="warning" vmodl-name="warning">
   </value>
   <value name="info" vmodl-name="info">
   </value>
   <value name="user" vmodl-name="user">
   </value>
   </enum>
   <enum name="VAppCloneSpecProvisioningType"
      type-id="vim.vApp.CloneSpec.ProvisioningType"
      vmodl-name="vim.vApp.CloneSpec.ProvisioningType"
      enclosing-type-id-ref="vim.vApp.CloneSpec"
      version-id-ref="vim.version.version6"
      >
      <description-html>
         <![CDATA[The cloned VMs can either be provisioned the same way as the VMs
 they are a clone of, thin provisioned or thick provisioned, or
 linked clones (i.e., using delta disks).]]>
      </description-html>
   <value name="sameAsSource" vmodl-name="sameAsSource">
   </value>
   <value name="thin" vmodl-name="thin">
   </value>
   <value name="thick" vmodl-name="thick">
   </value>
   </enum>
   <enum name="NvdimmNamespaceType"
      type-id="vim.host.NvdimmSystem.NamespaceType"
      vmodl-name="vim.host.NvdimmSystem.NamespaceType"
      enclosing-type-id-ref="vim.host.NvdimmSystem"
      version-id-ref="vim.version.version12"
      >
      <description-html>
         <![CDATA[Type of namespace.]]>
      </description-html>
   <value name="blockNamespace" vmodl-name="blockNamespace">
   </value>
   <value name="persistentNamespace" vmodl-name="persistentNamespace">
   </value>
   </enum>
   <enum name="TaskFilterSpecTimeOption"
      type-id="vim.TaskFilterSpec.TimeOption"
      vmodl-name="vim.TaskFilterSpec.TimeOption"
      enclosing-type-id-ref="vim.TaskFilterSpec"
      version-id-ref="vim.version.version1"
      >
      <description-html>
         <![CDATA[This option specifies a time stamp governing the selection of tasks.]]>
      </description-html>
   <value name="queuedTime" vmodl-name="queuedTime">
   </value>
   <value name="startedTime" vmodl-name="startedTime">
   </value>
   <value name="completedTime" vmodl-name="completedTime">
   </value>
   </enum>
   <enum name="VirtualMachineNeedSecondaryReason"
      type-id="vim.VirtualMachine.NeedSecondaryReason"
      vmodl-name="vim.VirtualMachine.NeedSecondaryReason"
      enclosing-type-id-ref="vim.VirtualMachine"
      version-id-ref="vim.version.version5"
      >
      <description-html>
         <![CDATA[The NeedSecondaryReason type defines all reasons a virtual machine is
 in the needSecondary Fault Tolerance state following a failure.]]>
      </description-html>
   <value name="initializing" vmodl-name="initializing">
   </value>
   <value name="divergence" vmodl-name="divergence">
   </value>
   <value name="lostConnection" vmodl-name="lostConnection">
   </value>
   <value name="partialHardwareFailure" vmodl-name="partialHardwareFailure">
   </value>
   <value name="userAction" vmodl-name="userAction">
   </value>
   <value name="checkpointError" vmodl-name="checkpointError" version-id-ref="checkpointError">
   </value>
   <value name="other" vmodl-name="other">
   </value>
   </enum>
   <enum name="WillLoseHAProtectionResolution"
      type-id="vim.fault.WillLoseHAProtection.Resolution"
      vmodl-name="vim.fault.WillLoseHAProtection.Resolution"
      enclosing-type-id-ref="vim.fault.WillLoseHAProtection"
      version-id-ref="vim.version.version7"
      >
   <value name="svmotion" vmodl-name="svmotion">
   </value>
   <value name="relocate" vmodl-name="relocate">
   </value>
   </enum>
   <enum name="DasConfigFaultDasConfigFaultReason"
      type-id="vim.fault.DasConfigFault.DasConfigFaultReason"
      vmodl-name="vim.fault.DasConfigFault.DasConfigFaultReason"
      enclosing-type-id-ref="vim.fault.DasConfigFault"
      version-id-ref="vim.version.version5"
      >
   <value name="HostNetworkMisconfiguration" vmodl-name="HostNetworkMisconfiguration">
   </value>
   <value name="HostMisconfiguration" vmodl-name="HostMisconfiguration">
   </value>
   <value name="InsufficientPrivileges" vmodl-name="InsufficientPrivileges">
   </value>
   <value name="NoPrimaryAgentAvailable" vmodl-name="NoPrimaryAgentAvailable">
   </value>
   <value name="Other" vmodl-name="Other">
   </value>
   <value name="NoDatastoresConfigured" vmodl-name="NoDatastoresConfigured" version-id-ref="NoDatastoresConfigured">
   </value>
   <value name="CreateConfigVvolFailed" vmodl-name="CreateConfigVvolFailed" version-id-ref="CreateConfigVvolFailed">
   </value>
   <value name="VSanNotSupportedOnHost" vmodl-name="VSanNotSupportedOnHost" version-id-ref="VSanNotSupportedOnHost">
   </value>
   <value name="DasNetworkMisconfiguration" vmodl-name="DasNetworkMisconfiguration" version-id-ref="DasNetworkMisconfiguration">
   </value>
   <value name="SetDesiredImageSpecFailed" vmodl-name="SetDesiredImageSpecFailed" version-id-ref="SetDesiredImageSpecFailed">
   </value>
   <value name="ApplyHAVibsOnClusterFailed" vmodl-name="ApplyHAVibsOnClusterFailed" version-id-ref="ApplyHAVibsOnClusterFailed">
   </value>
   </enum>
   <enum name="VirtualMachineVMCIDeviceAction"
      type-id="vim.vm.device.VirtualVMCIDevice.Action"
      vmodl-name="vim.vm.device.VirtualVMCIDevice.Action"
      enclosing-type-id-ref="vim.vm.device.VirtualVMCIDevice"
      version-id-ref="vim.version.version10"
      >
      <description-html>
         <![CDATA[Set of possible values for action field in FilterSpec.
 Determines whether traffic is allowed or denied.]]>
      </description-html>
   <value name="allow" vmodl-name="allow">
   </value>
   <value name="deny" vmodl-name="deny">
   </value>
   </enum>
   <enum name="BatchResultResult"
      type-id="vim.BatchResult.Result"
      vmodl-name="vim.BatchResult.Result"
      enclosing-type-id-ref="vim.BatchResult"
      version-id-ref="vim.version.version10"
      >
      <description-html>
         <![CDATA[Enum representing result of batch-APis.]]>
      </description-html>
   <value name="success" vmodl-name="success">
   </value>
   <value name="fail" vmodl-name="fail">
   </value>
   </enum>
   <enum name="VirtualDiskDeltaDiskFormat"
      type-id="vim.vm.device.VirtualDisk.DeltaDiskFormat"
      vmodl-name="vim.vm.device.VirtualDisk.DeltaDiskFormat"
      enclosing-type-id-ref="vim.vm.device.VirtualDisk"
      version-id-ref="vim.version.version7"
      >
      <description-html>
         <![CDATA[The delta disk format constants]]>
      </description-html>
   <value name="redoLogFormat" vmodl-name="redoLogFormat">
   </value>
   <value name="nativeFormat" vmodl-name="nativeFormat">
   </value>
   <value name="seSparseFormat" vmodl-name="seSparseFormat" version-id-ref="seSparseFormat">
   </value>
   </enum>
   <enum name="HostProfileManagerTaskListRequirement"
      type-id="vim.profile.host.ProfileManager.TaskListRequirement"
      vmodl-name="vim.profile.host.ProfileManager.TaskListRequirement"
      enclosing-type-id-ref="vim.profile.host.ProfileManager"
      version-id-ref="vim.version.version10"
      >
      <description-html>
         <![CDATA[The <a href="vim.profile.host.ProfileManager.TaskListRequirement.html">HostProfileManagerTaskListRequirement</a> enum
 defines possible values for requirements when applying a <a href="vim.host.ConfigSpec.html">HostConfigSpec</a>
 object returned as part of a <code>generateConfigTaskList</code>
 operation.]]>
      </description-html>
   <value name="maintenanceModeRequired" vmodl-name="maintenanceModeRequired">
   </value>
   <value name="rebootRequired" vmodl-name="rebootRequired">
   </value>
   </enum>
   <enum name="CannotPowerOffVmInClusterOperation"
      type-id="vim.fault.CannotPowerOffVmInCluster.Operation"
      vmodl-name="vim.fault.CannotPowerOffVmInCluster.Operation"
      enclosing-type-id-ref="vim.fault.CannotPowerOffVmInCluster"
      version-id-ref="vim.version.version7"
      >
   <value name="suspend" vmodl-name="suspend">
   </value>
   <value name="powerOff" vmodl-name="powerOff">
   </value>
   <value name="guestShutdown" vmodl-name="guestShutdown">
   </value>
   <value name="guestSuspend" vmodl-name="guestSuspend">
   </value>
   </enum>
   <enum name="PlacementAffinityRuleRuleType"
      type-id="vim.storageDrs.PlacementAffinityRule.RuleType"
      vmodl-name="vim.storageDrs.PlacementAffinityRule.RuleType"
      enclosing-type-id-ref="vim.storageDrs.PlacementAffinityRule"
      version-id-ref="vim.version.version10"
      >
      <description-html>
         <![CDATA[Rule type determines how the affinity rule is to be enforced:

 affinity: Vms in the list are kept together within the rule
 scope.

 anti-affinity: Vms in the rule list are kept separate
 across the objects in the rule scope.

 soft rule: The enforcement is best effort.]]>
      </description-html>
   <value name="affinity" vmodl-name="affinity">
   </value>
   <value name="antiAffinity" vmodl-name="antiAffinity">
   </value>
   <value name="softAffinity" vmodl-name="softAffinity">
   </value>
   <value name="softAntiAffinity" vmodl-name="softAntiAffinity">
   </value>
   </enum>
   <enum name="DistributedVirtualPortgroupMetaTagName"
      type-id="vim.dvs.DistributedVirtualPortgroup.MetaTagName"
      vmodl-name="vim.dvs.DistributedVirtualPortgroup.MetaTagName"
      enclosing-type-id-ref="vim.dvs.DistributedVirtualPortgroup"
      version-id-ref="vim.version.version5"
      >
      <description-html>
         <![CDATA[The meta tag names recognizable in the
  <a href="vim.dvs.DistributedVirtualPortgroup.ConfigInfo.html#portNameFormat">portNameFormat</a> string.]]>
      </description-html>
   <value name="dvsName" vmodl-name="dvsName">
   </value>
   <value name="portgroupName" vmodl-name="portgroupName">
   </value>
   <value name="portIndex" vmodl-name="portIndex">
   </value>
   </enum>
   <enum name="HostIncompatibleForFaultToleranceReason"
      type-id="vim.fault.HostIncompatibleForFaultTolerance.Reason"
      vmodl-name="vim.fault.HostIncompatibleForFaultTolerance.Reason"
      enclosing-type-id-ref="vim.fault.HostIncompatibleForFaultTolerance"
      version-id-ref="vim.version.version5"
      >
      <description-html>
         <![CDATA[Reasons why fault tolerance is not supported on the host.]]>
      </description-html>
   <value name="product" vmodl-name="product">
   </value>
   <value name="processor" vmodl-name="processor">
   </value>
   </enum>
   <enum name="VirtualDiskDeltaDiskFormatVariant"
      type-id="vim.vm.device.VirtualDisk.DeltaDiskFormatVariant"
      vmodl-name="vim.vm.device.VirtualDisk.DeltaDiskFormatVariant"
      enclosing-type-id-ref="vim.vm.device.VirtualDisk"
      version-id-ref="vim.version.version10"
      >
      <description-html>
         <![CDATA[The delta disk format variant constants]]>
      </description-html>
   <value name="vmfsSparseVariant" vmodl-name="vmfsSparseVariant">
   </value>
   <value name="vsanSparseVariant" vmodl-name="vsanSparseVariant">
   </value>
   </enum>
   <enum name="HostCryptoState"
      type-id="vim.HostSystem.CryptoState"
      vmodl-name="vim.HostSystem.CryptoState"
      enclosing-type-id-ref="vim.HostSystem"
      version-id-ref="vim.version.version11"
      >
      <description-html>
         <![CDATA[Defines a host's encryption state]]>
      </description-html>
   <value name="incapable" vmodl-name="incapable">
   </value>
   <value name="prepared" vmodl-name="prepared">
   </value>
   <value name="safe" vmodl-name="safe">
   </value>
   <value name="pendingIncapable" vmodl-name="pendingIncapable" version-id-ref="pendingIncapable">
   </value>
   </enum>
   <enum name="VirtualMachineRelocateDiskMoveOptions"
      type-id="vim.vm.RelocateSpec.DiskMoveOptions"
      vmodl-name="vim.vm.RelocateSpec.DiskMoveOptions"
      enclosing-type-id-ref="vim.vm.RelocateSpec"
      version-id-ref="vim.version.version5"
      >
      <description-html>
         <![CDATA[Specifies how a virtual disk is moved or copied to a
  datastore.
  <p>
  In all cases after the move or copy the virtual machine's current running point
  will be placed on the target datastore.  The current running point is defined
  as the disk backing which the virtual machine is currently
  writing to.  This end state can be achieved in multiple
  ways, and the supported options are described in this
  enumeration.
  <p>
  These options are only relevant when the backing of the
  specified disk is a <a href="vim.vm.device.VirtualDevice.FileBackingInfo.html">file backing</a>.
  <p>
  Since disk backings may become shared as the result of
  either a <a href="vim.VirtualMachine.html#clone">CloneVM_Task</a> or
  a <a href="vim.VirtualMachine.html#relocate">RelocateVM_Task</a>,
  <a href="vim.VirtualMachine.html#promoteDisks">PromoteDisks_Task</a> has been provided as
  a way to unshare such disk backings.
  <p><br>See <a href="vim.vm.device.VirtualDisk.SparseVer1BackingInfo.html#parent">parent</a><br>See <a href="vim.vm.device.VirtualDisk.SparseVer2BackingInfo.html#parent">parent</a><br>See <a href="vim.vm.device.VirtualDisk.FlatVer1BackingInfo.html#parent">parent</a><br>See <a href="vim.vm.device.VirtualDisk.FlatVer2BackingInfo.html#parent">parent</a><br>See <a href="vim.vm.device.VirtualDisk.RawDiskMappingVer1BackingInfo.html#parent">parent</a><br>See <a href="vim.vm.RelocateSpec.html#diskMoveType">diskMoveType</a><br>See <a href="vim.vm.RelocateSpec.DiskLocator.html#diskMoveType">diskMoveType</a><br>]]>
      </description-html>
   <value name="moveAllDiskBackingsAndAllowSharing" vmodl-name="moveAllDiskBackingsAndAllowSharing">
   </value>
   <value name="moveAllDiskBackingsAndDisallowSharing" vmodl-name="moveAllDiskBackingsAndDisallowSharing">
   </value>
   <value name="moveChildMostDiskBacking" vmodl-name="moveChildMostDiskBacking">
   </value>
   <value name="createNewChildDiskBacking" vmodl-name="createNewChildDiskBacking">
   </value>
   <value name="moveAllDiskBackingsAndConsolidate" vmodl-name="moveAllDiskBackingsAndConsolidate" version-id-ref="moveAllDiskBackingsAndConsolidate">
   </value>
   </enum>
   <enum name="DayOfWeek"
      type-id="vim.scheduler.MonthlyByWeekdayTaskScheduler.DayOfWeek"
      vmodl-name="vim.scheduler.MonthlyByWeekdayTaskScheduler.DayOfWeek"
      enclosing-type-id-ref="vim.scheduler.MonthlyByWeekdayTaskScheduler"
      version-id-ref="vim.version.version1"
      >
   <value name="sunday" vmodl-name="sunday">
   </value>
   <value name="monday" vmodl-name="monday">
   </value>
   <value name="tuesday" vmodl-name="tuesday">
   </value>
   <value name="wednesday" vmodl-name="wednesday">
   </value>
   <value name="thursday" vmodl-name="thursday">
   </value>
   <value name="friday" vmodl-name="friday">
   </value>
   <value name="saturday" vmodl-name="saturday">
   </value>
   </enum>
   <enum name="VirtualMachineRelocateTransformation"
      type-id="vim.vm.RelocateSpec.Transformation"
      vmodl-name="vim.vm.RelocateSpec.Transformation"
      enclosing-type-id-ref="vim.vm.RelocateSpec"
      version-id-ref="vim.version.version1"
      is-deprecated="true"
      >
      <description-html>
         <![CDATA[The set of tranformations that can be performed on the virtual disks
 as part of the copy.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[as of vSphere API 5.0.]]>
      </deprecated-html>
   <value name="flat" vmodl-name="flat">
   </value>
   <value name="sparse" vmodl-name="sparse">
   </value>
   </enum>
   <enum name="DistributedVirtualSwitchNicTeamingPolicyMode"
      type-id="vim.DistributedVirtualSwitch.NicTeamingPolicyMode"
      vmodl-name="vim.DistributedVirtualSwitch.NicTeamingPolicyMode"
      enclosing-type-id-ref="vim.DistributedVirtualSwitch"
      version-id-ref="vim.version.version6"
      >
      <description-html>
         <![CDATA[List of possible teaming modes supported by the vNetwork Distributed
  Switch. The different policy modes define the way traffic is routed
  through the different uplink ports in a team.]]>
      </description-html>
   <value name="loadbalance_ip" vmodl-name="loadbalance_ip">
   </value>
   <value name="loadbalance_srcmac" vmodl-name="loadbalance_srcmac">
   </value>
   <value name="loadbalance_srcid" vmodl-name="loadbalance_srcid">
   </value>
   <value name="failover_explicit" vmodl-name="failover_explicit">
   </value>
   <value name="loadbalance_loadbased" vmodl-name="loadbalance_loadbased">
   </value>
   </enum>
   <enum name="HostDigestInfoDigestMethodType"
      type-id="vim.host.DigestInfo.DigestMethodType"
      vmodl-name="vim.host.DigestInfo.DigestMethodType"
      enclosing-type-id-ref="vim.host.DigestInfo"
      version-id-ref="vim.version.version5"
      >
      <description-html>
         <![CDATA[The set of digest methods that can be used by TPM to calculate the PCR
  values.]]>
      </description-html>
   <value name="SHA1" vmodl-name="SHA1">
   </value>
   <value name="MD5" vmodl-name="MD5">
   </value>
   <value name="SHA256" vmodl-name="SHA256" version-id-ref="SHA256">
   </value>
   <value name="SHA384" vmodl-name="SHA384" version-id-ref="SHA384">
   </value>
   <value name="SHA512" vmodl-name="SHA512" version-id-ref="SHA512">
   </value>
   <value name="SM3_256" vmodl-name="SM3_256" version-id-ref="SM3_256">
   </value>
   </enum>
   <enum name="HostCapabilityVmDirectPathGen2UnsupportedReason"
      type-id="vim.host.Capability.VmDirectPathGen2UnsupportedReason"
      vmodl-name="vim.host.Capability.VmDirectPathGen2UnsupportedReason"
      enclosing-type-id-ref="vim.host.Capability"
      version-id-ref="vim.version.version6"
      >
      <description-html>
         <![CDATA[Set of possible values for <a href="vim.host.Capability.html#vmDirectPathGen2UnsupportedReason">vmDirectPathGen2UnsupportedReason</a>.]]>
      </description-html>
   <value name="hostNptIncompatibleProduct" vmodl-name="hostNptIncompatibleProduct">
   </value>
   <value name="hostNptIncompatibleHardware" vmodl-name="hostNptIncompatibleHardware">
   </value>
   <value name="hostNptDisabled" vmodl-name="hostNptDisabled">
   </value>
   </enum>
   <enum name="NotSupportedDeviceForFTDeviceType"
      type-id="vim.fault.NotSupportedDeviceForFT.DeviceType"
      vmodl-name="vim.fault.NotSupportedDeviceForFT.DeviceType"
      enclosing-type-id-ref="vim.fault.NotSupportedDeviceForFT"
      version-id-ref="vim.version.version6"
      >
   <value name="virtualVmxnet3" vmodl-name="virtualVmxnet3">
   </value>
   <value name="paraVirtualSCSIController" vmodl-name="paraVirtualSCSIController">
   </value>
   </enum>
   <enum name="ClusterDasVmSettingsIsolationResponse"
      type-id="vim.cluster.DasVmSettings.IsolationResponse"
      vmodl-name="vim.cluster.DasVmSettings.IsolationResponse"
      enclosing-type-id-ref="vim.cluster.DasVmSettings"
      version-id-ref="vim.version.version2"
      >
      <description-html>
         <![CDATA[The <a href="vim.cluster.DasVmSettings.IsolationResponse.html">ClusterDasVmSettingsIsolationResponse</a> enum defines
  values that indicate whether or not the virtual machine should be
  powered off if a host determines that it is isolated from the rest of
  the cluster.
  <p>
  Host network isolation occurs when a host is still running but it can no
  longer communicate with other hosts in the cluster and it cannot ping
  the configured isolation address(es). When the HA agent on a host loses
  contact with the other hosts, it will ping the isolation addresses. If
  the pings fail, the host will declare itself isolated.
  <p>
  Once the HA agent declares the host isolated, it will initiate the
  isolation response workflow after a 30 second delay. You can use the FDM
  advanced option fdm.isolationPolicyDelaySec to increase the delay. For
  each virtual machine, the HA agent attempts to determine if a master is
  responsible for restarting the virtual machine. If it cannot make the
  determination, or there is a master that is responsible, the agent will
  apply the configured isolation response. This workflow will continue
  until the configuration policy, has been applied to all virtual
  machines, the agent reconnects to another HA agent in the cluster, or
  the isolation address pings start succeeding. If there is a master agent
  in the cluster, it will attempt to restart the virtual machines that
  were powered off during isolation.
  <p>
  By default, the isolated host leaves its virtual machines powered on.
  You can override the isolation response default with a cluster-wide
  setting (<a href="vim.cluster.DasConfigInfo.html#defaultVmSettings">defaultVmSettings</a>)
  or a virtual machine setting
  (<a href="vim.cluster.DasVmSettings.html#isolationResponse">isolationResponse</a>).
  <ul>
  <li>All isolation response values are valid for the
  <a href="vim.cluster.DasVmSettings.html#isolationResponse">isolationResponse</a>
  property specified in a single virtual machine HA configuration.</li>
  <li>All values except for <code>clusterIsolationResponse</code> are valid
  for the cluster-wide default HA configuration for virtual machines
  (<a href="vim.cluster.DasConfigInfo.html#defaultVmSettings">defaultVmSettings</a>).
  </ul>
  <p>
  If you ensure that your network infrastructure is sufficiently redundant
  and that at least one network path is available at all times, host network
  isolation should be a rare occurrence.]]>
      </description-html>
   <value name="none" vmodl-name="none">
   </value>
   <value name="powerOff" vmodl-name="powerOff">
   </value>
   <value name="shutdown" vmodl-name="shutdown" version-id-ref="shutdown">
   </value>
   <value name="clusterIsolationResponse" vmodl-name="clusterIsolationResponse">
   </value>
   </enum>
   <enum name="VStorageObjectConsumptionType"
      type-id="vim.vslm.VStorageObject.ConsumptionType"
      vmodl-name="vim.vslm.VStorageObject.ConsumptionType"
      enclosing-type-id-ref="vim.vslm.VStorageObject"
      version-id-ref="vim.version.version11"
      >
      <description-html>
         <![CDATA[Consumption type constants.
 <p>
 Consumption type describes how the virtual storage object is connected and
 consumed for data by the clients.]]>
      </description-html>
   <value name="disk" vmodl-name="disk">
   </value>
   </enum>
   <enum name="HostAccessMode"
      type-id="vim.host.HostAccessManager.AccessMode"
      vmodl-name="vim.host.HostAccessManager.AccessMode"
      enclosing-type-id-ref="vim.host.HostAccessManager"
      version-id-ref="vim.version.version10"
      >
      <description-html>
         <![CDATA[Defines different access modes that a user may have on the host for
 direct host connections.
 The assumption here is that when the host is managed by vCenter,
 we don't need fine-grained control on local user permissions like the
 interface provided by <a href="vim.AuthorizationManager.html">AuthorizationManager</a>.]]>
      </description-html>
   <value name="accessNone" vmodl-name="accessNone">
   </value>
   <value name="accessAdmin" vmodl-name="accessAdmin">
   </value>
   <value name="accessNoAccess" vmodl-name="accessNoAccess">
   </value>
   <value name="accessReadOnly" vmodl-name="accessReadOnly">
   </value>
   <value name="accessOther" vmodl-name="accessOther">
   </value>
   </enum>
   <enum name="HostSystemRemediationStateState"
      type-id="vim.HostSystem.RemediationState.State"
      vmodl-name="vim.HostSystem.RemediationState.State"
      enclosing-type-id-ref="vim.HostSystem.RemediationState"
      version-id-ref="vim.version.version12"
      >
      <description-html>
         <![CDATA[Valid state for host profile remediation.]]>
      </description-html>
   <value name="remediationReady" vmodl-name="remediationReady">
   </value>
   <value name="precheckRemediationRunning" vmodl-name="precheckRemediationRunning">
   </value>
   <value name="precheckRemediationComplete" vmodl-name="precheckRemediationComplete">
   </value>
   <value name="precheckRemediationFailed" vmodl-name="precheckRemediationFailed">
   </value>
   <value name="remediationRunning" vmodl-name="remediationRunning">
   </value>
   <value name="remediationFailed" vmodl-name="remediationFailed">
   </value>
   </enum>
   <enum name="DistributedVirtualSwitchPortConnecteeConnecteeType"
      type-id="vim.dvs.PortConnectee.ConnecteeType"
      vmodl-name="vim.dvs.PortConnectee.ConnecteeType"
      enclosing-type-id-ref="vim.dvs.PortConnectee"
      version-id-ref="vim.version.version5"
      >
      <description-html>
         <![CDATA[The connectee types.]]>
      </description-html>
   <value name="pnic" vmodl-name="pnic">
   </value>
   <value name="vmVnic" vmodl-name="vmVnic">
   </value>
   <value name="hostConsoleVnic" vmodl-name="hostConsoleVnic">
   </value>
   <value name="hostVmkVnic" vmodl-name="hostVmkVnic">
   </value>
   </enum>
   <enum name="VirtualMachineWindowsQuiesceSpecVssBackupContext"
      type-id="vim.vm.WindowsQuiesceSpec.VssBackupContext"
      vmodl-name="vim.vm.WindowsQuiesceSpec.VssBackupContext"
      enclosing-type-id-ref="vim.vm.WindowsQuiesceSpec"
      version-id-ref="vim.version.version11"
      >
      <description-html>
         <![CDATA[The VSS Snapshot Context
 VSS_SNAPSHOT_CONTEXT values not listed below are not implemented.]]>
      </description-html>
   <value name="ctx_auto" vmodl-name="ctx_auto">
   </value>
   <value name="ctx_backup" vmodl-name="ctx_backup">
   </value>
   <value name="ctx_file_share_backup" vmodl-name="ctx_file_share_backup">
   </value>
   </enum>
   <enum name="DrsBehavior"
      type-id="vim.cluster.DrsConfigInfo.DrsBehavior"
      vmodl-name="vim.cluster.DrsConfigInfo.DrsBehavior"
      enclosing-type-id-ref="vim.cluster.DrsConfigInfo"
      version-id-ref="vim.version.version1"
      >
   <value name="manual" vmodl-name="manual">
   </value>
   <value name="partiallyAutomated" vmodl-name="partiallyAutomated">
   </value>
   <value name="fullyAutomated" vmodl-name="fullyAutomated">
   </value>
   </enum>
   <enum name="LicenseFeatureInfoState"
      type-id="vim.LicenseManager.FeatureInfo.State"
      vmodl-name="vim.LicenseManager.FeatureInfo.State"
      enclosing-type-id-ref="vim.LicenseManager.FeatureInfo"
      version-id-ref="vim.version.version1"
      >
      <description-html>
         <![CDATA[Describes the state of the feature.]]>
      </description-html>
   <value name="enabled" vmodl-name="enabled">
   </value>
   <value name="disabled" vmodl-name="disabled">
   </value>
   <value name="optional" vmodl-name="optional">
   </value>
   </enum>
   <enum name="StoragePlacementSpecPlacementType"
      type-id="vim.storageDrs.StoragePlacementSpec.PlacementType"
      vmodl-name="vim.storageDrs.StoragePlacementSpec.PlacementType"
      enclosing-type-id-ref="vim.storageDrs.StoragePlacementSpec"
      version-id-ref="vim.version.version7"
      >
      <description-html>
         <![CDATA[Defines the storage placement operation type.
 <p>]]>
      </description-html>
   <value name="create" vmodl-name="create">
   </value>
   <value name="reconfigure" vmodl-name="reconfigure">
   </value>
   <value name="relocate" vmodl-name="relocate">
   </value>
   <value name="clone" vmodl-name="clone">
   </value>
   </enum>
   <enum name="ClusterInfraUpdateHaConfigInfoBehaviorType"
      type-id="vim.cluster.InfraUpdateHaConfigInfo.BehaviorType"
      vmodl-name="vim.cluster.InfraUpdateHaConfigInfo.BehaviorType"
      enclosing-type-id-ref="vim.cluster.InfraUpdateHaConfigInfo"
      version-id-ref="vim.version.version11"
      >
   <value name="Manual" vmodl-name="Manual">
   </value>
   <value name="Automated" vmodl-name="Automated">
   </value>
   </enum>
   <enum name="DatastoreAccessible"
      type-id="vim.Datastore.Accessible"
      vmodl-name="vim.Datastore.Accessible"
      enclosing-type-id-ref="vim.Datastore"
      version-id-ref="vim.version.version5"
      >
   <value name="True" vmodl-name="True">
   </value>
   <value name="False" vmodl-name="False">
   </value>
   </enum>
   <enum name="HostReplayUnsupportedReason"
      type-id="vim.host.Capability.ReplayUnsupportedReason"
      vmodl-name="vim.host.Capability.ReplayUnsupportedReason"
      enclosing-type-id-ref="vim.host.Capability"
      version-id-ref="vim.version.version5"
      is-deprecated="true"
      >
      <description-html>
         <![CDATA[Set of possible values for
 <a href="vim.host.Capability.html#replayUnsupportedReason">replayUnsupportedReason</a> and
 <a href="vim.host.Capability.html#replayCompatibilityIssues">replayCompatibilityIssues</a>.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[as of vSphere API 6.0]]>
      </deprecated-html>
   <value name="incompatibleProduct" vmodl-name="incompatibleProduct">
   </value>
   <value name="incompatibleCpu" vmodl-name="incompatibleCpu">
   </value>
   <value name="hvDisabled" vmodl-name="hvDisabled">
   </value>
   <value name="cpuidLimitSet" vmodl-name="cpuidLimitSet">
   </value>
   <value name="oldBIOS" vmodl-name="oldBIOS">
   </value>
   <value name="unknown" vmodl-name="unknown">
   </value>
   </enum>
   <enum name="LinkDiscoveryProtocolConfigProtocolType"
      type-id="vim.host.LinkDiscoveryProtocolConfig.ProtocolType"
      vmodl-name="vim.host.LinkDiscoveryProtocolConfig.ProtocolType"
      enclosing-type-id-ref="vim.host.LinkDiscoveryProtocolConfig"
      version-id-ref="vim.version.version5"
      >
      <description-html>
         <![CDATA[The Discovery Protocol types.]]>
      </description-html>
   <value name="cdp" vmodl-name="cdp">
   </value>
   <value name="lldp" vmodl-name="lldp">
   </value>
   </enum>
   <enum name="VsanHostDecommissionModeObjectAction"
      type-id="vim.vsan.host.DecommissionMode.ObjectAction"
      vmodl-name="vim.vsan.host.DecommissionMode.ObjectAction"
      enclosing-type-id-ref="vim.vsan.host.DecommissionMode"
      version-id-ref="vim.version.version9"
      >
      <description-html>
         <![CDATA[The action to take with regard to storage objects upon decommissioning
 a host from use with the VSAN service.]]>
      </description-html>
   <value name="noAction" vmodl-name="noAction">
   </value>
   <value name="ensureObjectAccessibility" vmodl-name="ensureObjectAccessibility">
   </value>
   <value name="evacuateAllData" vmodl-name="evacuateAllData">
   </value>
   </enum>
   <enum name="VirtualMachineConnectionState"
      type-id="vim.VirtualMachine.ConnectionState"
      vmodl-name="vim.VirtualMachine.ConnectionState"
      enclosing-type-id-ref="vim.VirtualMachine"
      version-id-ref="vim.version.version1"
      >
      <description-html>
         <![CDATA[The connectivity state of a virtual machine. When the API is provided directly by
 a server product, such as ESX Server, then the disconnected state is not
 possible. However, when accessed through VirtualCenter, the state of a virtual
 machine is set to disconnected if the hosts that manage the virtual
 machine becomes unavailable.]]>
      </description-html>
   <value name="connected" vmodl-name="connected">
   </value>
   <value name="disconnected" vmodl-name="disconnected">
   </value>
   <value name="orphaned" vmodl-name="orphaned">
   </value>
   <value name="inaccessible" vmodl-name="inaccessible">
   </value>
   <value name="invalid" vmodl-name="invalid">
   </value>
   </enum>
   <enum name="ClusterDasConfigInfoVmMonitoringState"
      type-id="vim.cluster.DasConfigInfo.VmMonitoringState"
      vmodl-name="vim.cluster.DasConfigInfo.VmMonitoringState"
      enclosing-type-id-ref="vim.cluster.DasConfigInfo"
      version-id-ref="vim.version.version6"
      >
      <description-html>
         <![CDATA[The <a href="vim.cluster.DasConfigInfo.VmMonitoringState.html">ClusterDasConfigInfoVmMonitoringState</a> enum defines values that indicate
 the state of Virtual Machine Health Monitoring. Health Monitoring
 uses the vmTools (guest) and application agent heartbeat modules.
 You can configure HA to respond to heartbeat failures of either one
 or both modules. You can also disable the HA response to heartbeat failures.
 <ul>
 <li>
 To set the cluster default for health monitoring, use the
 ClusterConfigSpecEx.dasConfig.<a href="vim.cluster.DasConfigInfo.html#vmMonitoring">vmMonitoring</a> property.
 </li>
 <li>
 To set health monitoring for a virtual machine, use the
 ClusterConfigSpecEx.dasVmConfigSpec.info.dasSettings.<a href="vim.cluster.DasVmSettings.html#vmToolsMonitoringSettings">vmToolsMonitoringSettings</a> property.
 </li>
 <li>
 To retrieve the current state of health monitoring (cluster setting), use the
 ClusterConfigInfoEx.dasConfig.<a href="vim.cluster.DasConfigInfo.html#vmMonitoring">vmMonitoring</a>
 property.
 </li>
 <li>
 To retrieve the current state of health monitoring for a virtual machine, use the
 ClusterConfigInfoEx.dasVmConfig[].dasSettings.vmToolsMonitoringSettings.<a href="vim.cluster.VmToolsMonitoringSettings.html#vmMonitoring">vmMonitoring</a>
 property.
 </li>
 </ul>]]>
      </description-html>
   <value name="vmMonitoringDisabled" vmodl-name="vmMonitoringDisabled">
   </value>
   <value name="vmMonitoringOnly" vmodl-name="vmMonitoringOnly">
   </value>
   <value name="vmAndAppMonitoring" vmodl-name="vmAndAppMonitoring">
   </value>
   </enum>
   <enum name="HostNumericSensorType"
      type-id="vim.host.NumericSensorInfo.SensorType"
      vmodl-name="vim.host.NumericSensorInfo.SensorType"
      enclosing-type-id-ref="vim.host.NumericSensorInfo"
      version-id-ref="vim.version.version2"
      >
      <description-html>
         <![CDATA[Sensor Types for specific hardware component are either based on
 class of sensor or what the sensor monitors to allow for grouping]]>
      </description-html>
   <value name="fan" vmodl-name="fan">
   </value>
   <value name="power" vmodl-name="power">
   </value>
   <value name="temperature" vmodl-name="temperature">
   </value>
   <value name="voltage" vmodl-name="voltage">
   </value>
   <value name="other" vmodl-name="other">
   </value>
   <value name="processor" vmodl-name="processor" version-id-ref="processor">
   </value>
   <value name="memory" vmodl-name="memory" version-id-ref="memory">
   </value>
   <value name="storage" vmodl-name="storage" version-id-ref="storage">
   </value>
   <value name="systemBoard" vmodl-name="systemBoard" version-id-ref="systemBoard">
   </value>
   <value name="battery" vmodl-name="battery" version-id-ref="battery">
   </value>
   <value name="bios" vmodl-name="bios" version-id-ref="bios">
   </value>
   <value name="cable" vmodl-name="cable" version-id-ref="cable">
   </value>
   <value name="watchdog" vmodl-name="watchdog" version-id-ref="watchdog">
   </value>
   </enum>
   <enum name="CannotMoveFaultToleranceVmMoveType"
      type-id="vim.fault.CannotMoveFaultToleranceVm.MoveType"
      vmodl-name="vim.fault.CannotMoveFaultToleranceVm.MoveType"
      enclosing-type-id-ref="vim.fault.CannotMoveFaultToleranceVm"
      version-id-ref="vim.version.version5"
      >
   <value name="resourcePool" vmodl-name="resourcePool">
   </value>
   <value name="cluster" vmodl-name="cluster">
   </value>
   </enum>
   <enum name="EntityImportType"
      type-id="vim.dvs.EntityBackup.ImportType"
      vmodl-name="vim.dvs.EntityBackup.ImportType"
      enclosing-type-id-ref="vim.dvs.EntityBackup"
      version-id-ref="vim.version.version8"
      >
      <description-html>
         <![CDATA[The <a href="vim.dvs.EntityBackup.ImportType.html">EntityImportType</a> enum defines the import type for a
 <a href="vim.dvs.DistributedVirtualSwitchManager.html">DistributedVirtualSwitchManager</a>.<a href="vim.dvs.DistributedVirtualSwitchManager.html#importEntity">DVSManagerImportEntity_Task</a>
 operation.]]>
      </description-html>
   <value name="createEntityWithNewIdentifier" vmodl-name="createEntityWithNewIdentifier">
   </value>
   <value name="createEntityWithOriginalIdentifier" vmodl-name="createEntityWithOriginalIdentifier">
   </value>
   <value name="applyToEntitySpecified" vmodl-name="applyToEntitySpecified">
   </value>
   </enum>
   <enum name="HostImageAcceptanceLevel"
      type-id="vim.host.ImageConfigManager.AcceptanceLevel"
      vmodl-name="vim.host.ImageConfigManager.AcceptanceLevel"
      enclosing-type-id-ref="vim.host.ImageConfigManager"
      version-id-ref="vim.version.version7"
      >
      <description-html>
         <![CDATA[Acceptance level definitions]]>
      </description-html>
   <value name="vmware_certified" vmodl-name="vmware_certified">
   </value>
   <value name="vmware_accepted" vmodl-name="vmware_accepted">
   </value>
   <value name="partner" vmodl-name="partner">
   </value>
   <value name="community" vmodl-name="community">
   </value>
   </enum>
   <enum name="DvsFilterOnFailure"
      type-id="vim.dvs.DistributedVirtualPort.FilterOnFailure"
      vmodl-name="vim.dvs.DistributedVirtualPort.FilterOnFailure"
      enclosing-type-id-ref="vim.dvs.DistributedVirtualPort"
      version-id-ref="vim.version.version9"
      >
      <description-html>
         <![CDATA[Network Filter on Failure Type. It specifies whether all the
  packets will be allowed or all the packets will be denied when
  Filter fails to configure.]]>
      </description-html>
   <value name="failOpen" vmodl-name="failOpen">
   </value>
   <value name="failClosed" vmodl-name="failClosed">
   </value>
   </enum>
   <enum name="IoFilterType"
      type-id="vim.IoFilterManager.IoFilterType"
      vmodl-name="vim.IoFilterManager.IoFilterType"
      enclosing-type-id-ref="vim.IoFilterManager"
      version-id-ref="vim.version.version11"
      >
      <description-html>
         <![CDATA[Defines the type of an IO Filter.]]>
      </description-html>
   <value name="cache" vmodl-name="cache">
   </value>
   <value name="replication" vmodl-name="replication">
   </value>
   <value name="encryption" vmodl-name="encryption">
   </value>
   <value name="compression" vmodl-name="compression">
   </value>
   <value name="inspection" vmodl-name="inspection">
   </value>
   <value name="datastoreIoControl" vmodl-name="datastoreIoControl">
   </value>
   <value name="dataProvider" vmodl-name="dataProvider">
   </value>
   </enum>
   <enum name="HostVirtualNicManagerNicType"
      type-id="vim.host.VirtualNicManager.NicType"
      vmodl-name="vim.host.VirtualNicManager.NicType"
      enclosing-type-id-ref="vim.host.VirtualNicManager"
      version-id-ref="vim.version.version5"
      >
   <value name="vmotion" vmodl-name="vmotion">
   </value>
   <value name="faultToleranceLogging" vmodl-name="faultToleranceLogging">
   </value>
   <value name="vSphereReplication" vmodl-name="vSphereReplication" version-id-ref="vSphereReplication">
   </value>
   <value name="vSphereReplicationNFC" vmodl-name="vSphereReplicationNFC" version-id-ref="vSphereReplicationNFC">
   </value>
   <value name="management" vmodl-name="management">
   </value>
   <value name="vsan" vmodl-name="vsan" version-id-ref="vsan">
   </value>
   <value name="vSphereProvisioning" vmodl-name="vSphereProvisioning" version-id-ref="vSphereProvisioning">
   </value>
   <value name="vsanWitness" vmodl-name="vsanWitness" version-id-ref="vsanWitness">
   </value>
   <value name="vSphereBackupNFC" vmodl-name="vSphereBackupNFC" version-id-ref="vSphereBackupNFC">
   </value>
   <value name="ptp" vmodl-name="ptp" version-id-ref="ptp">
   </value>
   </enum>
   <enum name="HostSystemPowerState"
      type-id="vim.HostSystem.PowerState"
      vmodl-name="vim.HostSystem.PowerState"
      enclosing-type-id-ref="vim.HostSystem"
      version-id-ref="vim.version.version2"
      >
      <description-html>
         <![CDATA[Defines a host's power state.]]>
      </description-html>
   <value name="poweredOn" vmodl-name="poweredOn">
   </value>
   <value name="poweredOff" vmodl-name="poweredOff">
   </value>
   <value name="standBy" vmodl-name="standBy">
   </value>
   <value name="unknown" vmodl-name="unknown">
   </value>
   </enum>
   <enum name="VchaClusterState"
      type-id="vim.vcha.FailoverClusterManager.VchaClusterState"
      vmodl-name="vim.vcha.FailoverClusterManager.VchaClusterState"
      enclosing-type-id-ref="vim.vcha.FailoverClusterManager"
      version-id-ref="vim.version.version11"
      >
      <description-html>
         <![CDATA[VchaClusterState enum defines the possible states for a VCHA Cluster.]]>
      </description-html>
   <value name="healthy" vmodl-name="healthy">
   </value>
   <value name="degraded" vmodl-name="degraded">
   </value>
   <value name="isolated" vmodl-name="isolated">
   </value>
   </enum>
   <enum name="AlarmFilterSpecAlarmTypeByEntity"
      type-id="vim.alarm.AlarmFilterSpec.AlarmTypeByEntity"
      vmodl-name="vim.alarm.AlarmFilterSpec.AlarmTypeByEntity"
      enclosing-type-id-ref="vim.alarm.AlarmFilterSpec"
      version-id-ref="vim.version.version12"
      >
      <description-html>
         <![CDATA[Alarm entity type]]>
      </description-html>
   <value name="entityTypeAll" vmodl-name="entityTypeAll">
   </value>
   <value name="entityTypeHost" vmodl-name="entityTypeHost">
   </value>
   <value name="entityTypeVm" vmodl-name="entityTypeVm">
   </value>
   </enum>
   <enum name="HostNetStackInstanceSystemStackKey"
      type-id="vim.host.NetStackInstance.SystemStackKey"
      vmodl-name="vim.host.NetStackInstance.SystemStackKey"
      enclosing-type-id-ref="vim.host.NetStackInstance"
      version-id-ref="vim.version.version9"
      >
      <description-html>
         <![CDATA[Define the instance identifier for different traffic type]]>
      </description-html>
   <value name="defaultTcpipStack" vmodl-name="defaultTcpipStack">
   </value>
   <value name="vmotion" vmodl-name="vmotion" version-id-ref="vmotion">
   </value>
   <value name="vSphereProvisioning" vmodl-name="vSphereProvisioning" version-id-ref="vSphereProvisioning">
   </value>
   </enum>
   <enum name="DrsInjectorWorkloadCorrelationState"
      type-id="vim.DrsStatsManager.InjectorWorkload.CorrelationState"
      vmodl-name="vim.DrsStatsManager.InjectorWorkload.CorrelationState"
      enclosing-type-id-ref="vim.DrsStatsManager.InjectorWorkload"
      version-id-ref="vim.version.version8"
      >
      <description-html>
         <![CDATA[Correlation state as computed by storageRM
 module on host.]]>
      </description-html>
   <value name="Correlated" vmodl-name="Correlated">
   </value>
   <value name="Uncorrelated" vmodl-name="Uncorrelated">
   </value>
   </enum>
   <enum name="HostLowLevelProvisioningManagerReloadTarget"
      type-id="vim.host.LowLevelProvisioningManager.ReloadTarget"
      vmodl-name="vim.host.LowLevelProvisioningManager.ReloadTarget"
      enclosing-type-id-ref="vim.host.LowLevelProvisioningManager"
      version-id-ref="vim.version.version5"
      >
      <description-html>
         <![CDATA[The target of the disk reload.]]>
      </description-html>
   <value name="currentConfig" vmodl-name="currentConfig">
   </value>
   <value name="snapshotConfig" vmodl-name="snapshotConfig">
   </value>
   </enum>
   <enum name="HostInternetScsiHbaIscsiIpv6AddressIPv6AddressOperation"
      type-id="vim.host.InternetScsiHba.IscsiIpv6Address.IPv6AddressOperation"
      vmodl-name="vim.host.InternetScsiHba.IscsiIpv6Address.IPv6AddressOperation"
      enclosing-type-id-ref="vim.host.InternetScsiHba.IscsiIpv6Address"
      version-id-ref="vim.version.version10"
      >
      <description-html>
         <![CDATA[enum listing IPv6 address operations.]]>
      </description-html>
   <value name="add" vmodl-name="add">
   </value>
   <value name="remove" vmodl-name="remove">
   </value>
   </enum>
   <enum name="HostSgxInfoSgxStates"
      type-id="vim.host.SgxInfo.SgxStates"
      vmodl-name="vim.host.SgxInfo.SgxStates"
      enclosing-type-id-ref="vim.host.SgxInfo"
      version-id-ref="vim.version.v7_0"
      >
      <description-html>
         <![CDATA[Host SGX states.]]>
      </description-html>
   <value name="notPresent" vmodl-name="notPresent">
   </value>
   <value name="disabledBIOS" vmodl-name="disabledBIOS">
   </value>
   <value name="disabledCFW101" vmodl-name="disabledCFW101">
   </value>
   <value name="disabledCPUMismatch" vmodl-name="disabledCPUMismatch">
   </value>
   <value name="disabledNoFLC" vmodl-name="disabledNoFLC">
   </value>
   <value name="disabledNUMAUnsup" vmodl-name="disabledNUMAUnsup">
   </value>
   <value name="disabledMaxEPCRegs" vmodl-name="disabledMaxEPCRegs">
   </value>
   <value name="enabled" vmodl-name="enabled">
   </value>
   </enum>
   <enum name="ClusterCryptoConfigInfoCryptoMode"
      type-id="vim.cluster.CryptoConfigInfo.CryptoMode"
      vmodl-name="vim.cluster.CryptoConfigInfo.CryptoMode"
      enclosing-type-id-ref="vim.cluster.CryptoConfigInfo"
      version-id-ref="vim.version.v7_0"
      >
   <value name="onDemand" vmodl-name="onDemand">
   </value>
   <value name="forceEnable" vmodl-name="forceEnable">
   </value>
   </enum>
   <enum name="ClusterDasConfigInfoHBDatastoreCandidate"
      type-id="vim.cluster.DasConfigInfo.HBDatastoreCandidate"
      vmodl-name="vim.cluster.DasConfigInfo.HBDatastoreCandidate"
      enclosing-type-id-ref="vim.cluster.DasConfigInfo"
      version-id-ref="vim.version.version7"
      >
      <description-html>
         <![CDATA[The policy to determine the candidates from which vCenter Server can
 choose heartbeat datastores.]]>
      </description-html>
   <value name="userSelectedDs" vmodl-name="userSelectedDs">
   </value>
   <value name="allFeasibleDs" vmodl-name="allFeasibleDs">
   </value>
   <value name="allFeasibleDsWithUserPreference" vmodl-name="allFeasibleDsWithUserPreference">
   </value>
   </enum>
   <enum name="VirtualMachineSgxInfoFlcModes"
      type-id="vim.vm.SgxInfo.FlcModes"
      vmodl-name="vim.vm.SgxInfo.FlcModes"
      enclosing-type-id-ref="vim.vm.SgxInfo"
      version-id-ref="vim.version.v7_0"
      >
      <description-html>
         <![CDATA[Flexible Launch Enclave (FLC) modes.]]>
      </description-html>
   <value name="locked" vmodl-name="locked">
   </value>
   <value name="unlocked" vmodl-name="unlocked">
   </value>
   </enum>
   <enum name="HostIpConfigIpV6AddressStatus"
      type-id="vim.host.IpConfig.IpV6AddressStatus"
      vmodl-name="vim.host.IpConfig.IpV6AddressStatus"
      enclosing-type-id-ref="vim.host.IpConfig"
      version-id-ref="vim.version.version5"
      >
   <value name="preferred" vmodl-name="preferred">
   </value>
   <value name="deprecated" vmodl-name="deprecated">
   </value>
   <value name="invalid" vmodl-name="invalid">
   </value>
   <value name="inaccessible" vmodl-name="inaccessible">
   </value>
   <value name="unknown" vmodl-name="unknown">
   </value>
   <value name="tentative" vmodl-name="tentative">
   </value>
   <value name="duplicate" vmodl-name="duplicate">
   </value>
   </enum>
   <enum name="HostHardwareElementStatus"
      type-id="vim.host.HardwareStatusInfo.Status"
      vmodl-name="vim.host.HardwareStatusInfo.Status"
      enclosing-type-id-ref="vim.host.HardwareStatusInfo"
      version-id-ref="vim.version.version2"
      >
      <description-html>
         <![CDATA[The current status of the hardware]]>
      </description-html>
   <value name="Unknown" vmodl-name="Unknown">
   </value>
   <value name="Green" vmodl-name="Green">
   </value>
   <value name="Yellow" vmodl-name="Yellow">
   </value>
   <value name="Red" vmodl-name="Red">
   </value>
   </enum>
   <enum name="VirtualMachineFileLayoutExFileType"
      type-id="vim.vm.FileLayoutEx.FileType"
      vmodl-name="vim.vm.FileLayoutEx.FileType"
      enclosing-type-id-ref="vim.vm.FileLayoutEx"
      version-id-ref="vim.version.version5"
      >
      <description-html>
         <![CDATA[File-type constants.]]>
      </description-html>
   <value name="config" vmodl-name="config">
   </value>
   <value name="extendedConfig" vmodl-name="extendedConfig">
   </value>
   <value name="diskDescriptor" vmodl-name="diskDescriptor">
   </value>
   <value name="diskExtent" vmodl-name="diskExtent">
   </value>
   <value name="digestDescriptor" vmodl-name="digestDescriptor" version-id-ref="digestDescriptor">
   </value>
   <value name="digestExtent" vmodl-name="digestExtent" version-id-ref="digestExtent">
   </value>
   <value name="diskReplicationState" vmodl-name="diskReplicationState" version-id-ref="diskReplicationState">
   </value>
   <value name="log" vmodl-name="log">
   </value>
   <value name="stat" vmodl-name="stat">
   </value>
   <value name="namespaceData" vmodl-name="namespaceData" version-id-ref="namespaceData">
   </value>
   <value name="nvram" vmodl-name="nvram">
   </value>
   <value name="snapshotData" vmodl-name="snapshotData">
   </value>
   <value name="snapshotMemory" vmodl-name="snapshotMemory" version-id-ref="snapshotMemory">
   </value>
   <value name="snapshotList" vmodl-name="snapshotList">
   </value>
   <value name="snapshotManifestList" vmodl-name="snapshotManifestList" version-id-ref="snapshotManifestList">
   </value>
   <value name="suspend" vmodl-name="suspend">
   </value>
   <value name="suspendMemory" vmodl-name="suspendMemory" version-id-ref="suspendMemory">
   </value>
   <value name="swap" vmodl-name="swap">
   </value>
   <value name="uwswap" vmodl-name="uwswap" version-id-ref="uwswap">
   </value>
   <value name="core" vmodl-name="core">
   </value>
   <value name="screenshot" vmodl-name="screenshot">
   </value>
   <value name="ftMetadata" vmodl-name="ftMetadata" version-id-ref="ftMetadata">
   </value>
   <value name="guestCustomization" vmodl-name="guestCustomization" version-id-ref="guestCustomization">
   </value>
   </enum>
   <enum name="HostVmfsVolumeUnmapPriority"
      type-id="vim.host.VmfsVolume.UnmapPriority"
      vmodl-name="vim.host.VmfsVolume.UnmapPriority"
      enclosing-type-id-ref="vim.host.VmfsVolume"
      version-id-ref="vim.version.version11"
      >
      <description-html>
         <![CDATA[VMFS unmap priority. VMFS unmap reclaims unused storage space.
 This specifies the processing rate of unmaps.]]>
      </description-html>
   <value name="none" vmodl-name="none">
   </value>
   <value name="low" vmodl-name="low">
   </value>
   </enum>
   <enum name="ScsiLunVStorageSupportStatus"
      type-id="vim.host.ScsiLun.VStorageSupportStatus"
      vmodl-name="vim.host.ScsiLun.VStorageSupportStatus"
      enclosing-type-id-ref="vim.host.ScsiLun"
      version-id-ref="vim.version.version6"
      >
      <description-html>
         <![CDATA[Storage array hardware acceleration support status.
  When a host boots, the support status is unknown.
  As a host attempts hardware-accelerated operations,
  it determines whether the storage device supports hardware acceleration
  and sets the <a href="vim.host.ScsiLun.html#vStorageSupport">vStorageSupport</a> property accordingly.]]>
      </description-html>
   <value name="vStorageSupported" vmodl-name="vStorageSupported">
   </value>
   <value name="vStorageUnsupported" vmodl-name="vStorageUnsupported">
   </value>
   <value name="vStorageUnknown" vmodl-name="vStorageUnknown">
   </value>
   </enum>
   <enum name="LicenseAssignmentFailedReason"
      type-id="vim.fault.LicenseAssignmentFailed.Reason"
      vmodl-name="vim.fault.LicenseAssignmentFailed.Reason"
      enclosing-type-id-ref="vim.fault.LicenseAssignmentFailed"
      version-id-ref="vim.version.version5"
      >
   <value name="keyEntityMismatch" vmodl-name="keyEntityMismatch">
   </value>
   <value name="downgradeDisallowed" vmodl-name="downgradeDisallowed">
   </value>
   <value name="inventoryNotManageableByVirtualCenter" vmodl-name="inventoryNotManageableByVirtualCenter">
   </value>
   <value name="hostsUnmanageableByVirtualCenterWithoutLicenseServer" vmodl-name="hostsUnmanageableByVirtualCenterWithoutLicenseServer">
   </value>
   </enum>
   <enum name="HostRuntimeInfoNetStackInstanceRuntimeInfoState"
      type-id="vim.host.RuntimeInfo.NetStackInstanceRuntimeInfo.State"
      vmodl-name="vim.host.RuntimeInfo.NetStackInstanceRuntimeInfo.State"
      enclosing-type-id-ref="vim.host.RuntimeInfo.NetStackInstanceRuntimeInfo"
      version-id-ref="vim.version.version9"
      >
      <description-html>
         <![CDATA[Define the instance state type]]>
      </description-html>
   <value name="inactive" vmodl-name="inactive">
   </value>
   <value name="active" vmodl-name="active">
   </value>
   <value name="deactivating" vmodl-name="deactivating">
   </value>
   <value name="activating" vmodl-name="activating">
   </value>
   </enum>
   <enum name="VirtualDiskSharing"
      type-id="vim.vm.device.VirtualDisk.Sharing"
      vmodl-name="vim.vm.device.VirtualDisk.Sharing"
      enclosing-type-id-ref="vim.vm.device.VirtualDisk"
      version-id-ref="vim.version.version10"
      >
      <description-html>
         <![CDATA[The sharing mode of the virtual disk.

 Setting the value to sharingMultiWriter means that multiple virtual
 machines can write to the virtual disk. This sharing mode is allowed
 only for eagerly zeroed thick virtual disks.]]>
      </description-html>
   <value name="sharingNone" vmodl-name="sharingNone">
   </value>
   <value name="sharingMultiWriter" vmodl-name="sharingMultiWriter">
   </value>
   </enum>
   <enum name="CustomizationNetBIOSMode"
      type-id="vim.vm.customization.IPSettings.NetBIOSMode"
      vmodl-name="vim.vm.customization.IPSettings.NetBIOSMode"
      enclosing-type-id-ref="vim.vm.customization.IPSettings"
      version-id-ref="vim.version.version1"
      >
      <description-html>
         <![CDATA[NetBIOS setting for Windows.]]>
      </description-html>
   <value name="enableNetBIOSViaDhcp" vmodl-name="enableNetBIOSViaDhcp">
   </value>
   <value name="enableNetBIOS" vmodl-name="enableNetBIOS">
   </value>
   <value name="disableNetBIOS" vmodl-name="disableNetBIOS">
   </value>
   </enum>
   <enum name="HostFirewallRulePortType"
      type-id="vim.host.Ruleset.Rule.PortType"
      vmodl-name="vim.host.Ruleset.Rule.PortType"
      enclosing-type-id-ref="vim.host.Ruleset.Rule"
      version-id-ref="vim.version.version7"
      >
      <description-html>
         <![CDATA[Enumeration of port types.]]>
      </description-html>
   <value name="src" vmodl-name="src">
   </value>
   <value name="dst" vmodl-name="dst">
   </value>
   </enum>
   <enum name="HostUnresolvedVmfsExtentUnresolvedReason"
      type-id="vim.host.UnresolvedVmfsExtent.UnresolvedReason"
      vmodl-name="vim.host.UnresolvedVmfsExtent.UnresolvedReason"
      enclosing-type-id-ref="vim.host.UnresolvedVmfsExtent"
      version-id-ref="vim.version.version5"
      >
      <description-html>
         <![CDATA[Reasons for identifying the disk extent
  as copy of VMFS volume extent.]]>
      </description-html>
   <value name="diskIdMismatch" vmodl-name="diskIdMismatch">
   </value>
   <value name="uuidConflict" vmodl-name="uuidConflict">
   </value>
   </enum>
   <enum name="HostLicensableResourceKey"
      type-id="vim.LicenseManager.LicensableResourceInfo.ResourceKey"
      vmodl-name="vim.LicenseManager.LicensableResourceInfo.ResourceKey"
      enclosing-type-id-ref="vim.LicenseManager.LicensableResourceInfo"
      version-id-ref="vim.version.version7"
      >
      <description-html>
         <![CDATA[Identifiers of currently supported resources.]]>
      </description-html>
   <value name="numCpuPackages" vmodl-name="numCpuPackages">
   </value>
   <value name="numCpuCores" vmodl-name="numCpuCores">
   </value>
   <value name="memorySize" vmodl-name="memorySize">
   </value>
   <value name="memoryForVms" vmodl-name="memoryForVms">
   </value>
   <value name="numVmsStarted" vmodl-name="numVmsStarted">
   </value>
   <value name="numVmsStarting" vmodl-name="numVmsStarting">
   </value>
   </enum>
   <enum name="VirtualMachineTicketType"
      type-id="vim.VirtualMachine.TicketType"
      vmodl-name="vim.VirtualMachine.TicketType"
      enclosing-type-id-ref="vim.VirtualMachine"
      version-id-ref="vim.version.version6"
      >
      <description-html>
         <![CDATA[The virtual machine ticket type.]]>
      </description-html>
   <value name="mks" vmodl-name="mks">
   </value>
   <value name="device" vmodl-name="device">
   </value>
   <value name="guestControl" vmodl-name="guestControl">
   </value>
   <value name="webmks" vmodl-name="webmks" version-id-ref="webmks">
   </value>
   <value name="guestIntegrity" vmodl-name="guestIntegrity" version-id-ref="guestIntegrity">
   </value>
   <value name="webRemoteDevice" vmodl-name="webRemoteDevice" version-id-ref="webRemoteDevice">
   </value>
   </enum>
   <enum name="VirtualPointingDeviceHostChoice"
      type-id="vim.vm.device.VirtualPointingDeviceOption.DeviceBackingOption.HostPointingDeviceChoice"
      vmodl-name="vim.vm.device.VirtualPointingDeviceOption.DeviceBackingOption.HostPointingDeviceChoice"
      enclosing-type-id-ref="vim.vm.device.VirtualPointingDeviceOption.DeviceBackingOption"
      version-id-ref="vim.version.version1"
      >
      <description-html>
         <![CDATA[The valid choices for host pointing devices are:

  <p>]]>
      </description-html>
   <value name="autodetect" vmodl-name="autodetect">
   </value>
   <value name="intellimouseExplorer" vmodl-name="intellimouseExplorer">
   </value>
   <value name="intellimousePs2" vmodl-name="intellimousePs2">
   </value>
   <value name="logitechMouseman" vmodl-name="logitechMouseman">
   </value>
   <value name="microsoft_serial" vmodl-name="microsoft_serial">
   </value>
   <value name="mouseSystems" vmodl-name="mouseSystems">
   </value>
   <value name="mousemanSerial" vmodl-name="mousemanSerial">
   </value>
   <value name="ps2" vmodl-name="ps2">
   </value>
   </enum>
   <enum name="VchaState"
      type-id="vim.vcha.FailoverClusterConfigurator.VchaState"
      vmodl-name="vim.vcha.FailoverClusterConfigurator.VchaState"
      enclosing-type-id-ref="vim.vcha.FailoverClusterConfigurator"
      version-id-ref="vim.version.version11"
      >
   <value name="configured" vmodl-name="configured">
   </value>
   <value name="notConfigured" vmodl-name="notConfigured">
   </value>
   <value name="invalid" vmodl-name="invalid">
   </value>
   <value name="prepared" vmodl-name="prepared">
   </value>
   </enum>
   <enum name="VirtualMachinePowerOffBehavior"
      type-id="vim.vm.FlagInfo.PowerOffBehavior"
      vmodl-name="vim.vm.FlagInfo.PowerOffBehavior"
      enclosing-type-id-ref="vim.vm.FlagInfo"
      version-id-ref="vim.version.version2"
      >
      <description-html>
         <![CDATA[Set of possible values for <a href="vim.vm.FlagInfo.html#snapshotPowerOffBehavior">snapshotPowerOffBehavior</a>.]]>
      </description-html>
   <value name="powerOff" vmodl-name="powerOff">
   </value>
   <value name="revert" vmodl-name="revert">
   </value>
   <value name="prompt" vmodl-name="prompt">
   </value>
   <value name="take" vmodl-name="take" version-id-ref="take">
   </value>
   </enum>
   <enum name="VirtualMachineGuestState"
      type-id="vim.vm.GuestInfo.GuestState"
      vmodl-name="vim.vm.GuestInfo.GuestState"
      enclosing-type-id-ref="vim.vm.GuestInfo"
      version-id-ref="vim.version.version1"
      >
      <description-html>
         <![CDATA[The possible hints that the guest could display about current tasks
 inside the guest.]]>
      </description-html>
   <value name="running" vmodl-name="running">
   </value>
   <value name="shuttingDown" vmodl-name="shuttingDown">
   </value>
   <value name="resetting" vmodl-name="resetting">
   </value>
   <value name="standby" vmodl-name="standby">
   </value>
   <value name="notRunning" vmodl-name="notRunning">
   </value>
   <value name="unknown" vmodl-name="unknown">
   </value>
   </enum>
   <enum name="HostDasErrorEventHostDasErrorReason"
      type-id="vim.event.HostDasErrorEvent.HostDasErrorReason"
      vmodl-name="vim.event.HostDasErrorEvent.HostDasErrorReason"
      enclosing-type-id-ref="vim.event.HostDasErrorEvent"
      version-id-ref="vim.version.version5"
      >
   <value name="configFailed" vmodl-name="configFailed">
   </value>
   <value name="timeout" vmodl-name="timeout">
   </value>
   <value name="communicationInitFailed" vmodl-name="communicationInitFailed">
   </value>
   <value name="healthCheckScriptFailed" vmodl-name="healthCheckScriptFailed">
   </value>
   <value name="agentFailed" vmodl-name="agentFailed">
   </value>
   <value name="agentShutdown" vmodl-name="agentShutdown">
   </value>
   <value name="isolationAddressUnpingable" vmodl-name="isolationAddressUnpingable" version-id-ref="isolationAddressUnpingable">
   </value>
   <value name="other" vmodl-name="other">
   </value>
   </enum>
   <enum name="DrsRecommendationReasonCode"
      type-id="vim.cluster.DrsRecommendation.ReasonCode"
      vmodl-name="vim.cluster.DrsRecommendation.ReasonCode"
      enclosing-type-id-ref="vim.cluster.DrsRecommendation"
      version-id-ref="vim.version.version1"
      is-deprecated="true"
      >
      <description-html>
         <![CDATA[List of defined migration reason codes:]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of VI API 2.5 use <a href="vim.cluster.Recommendation.ReasonCode.html">RecommendationReasonCode</a>.]]>
      </deprecated-html>
   <value name="fairnessCpuAvg" vmodl-name="fairnessCpuAvg">
   </value>
   <value name="fairnessMemAvg" vmodl-name="fairnessMemAvg">
   </value>
   <value name="jointAffin" vmodl-name="jointAffin">
   </value>
   <value name="antiAffin" vmodl-name="antiAffin">
   </value>
   <value name="hostMaint" vmodl-name="hostMaint">
   </value>
   </enum>
   <enum name="ComplianceResultStatus"
      type-id="vim.profile.ComplianceResult.Status"
      vmodl-name="vim.profile.ComplianceResult.Status"
      enclosing-type-id-ref="vim.profile.ComplianceResult"
      version-id-ref="vim.version.version5"
      >
   <value name="compliant" vmodl-name="compliant">
   </value>
   <value name="nonCompliant" vmodl-name="nonCompliant">
   </value>
   <value name="unknown" vmodl-name="unknown">
   </value>
   <value name="running" vmodl-name="running" version-id-ref="running">
   </value>
   </enum>
   <enum name="NetIpStackInfoEntryType"
      type-id="vim.net.IpStackInfo.EntryType"
      vmodl-name="vim.net.IpStackInfo.EntryType"
      enclosing-type-id-ref="vim.net.IpStackInfo"
      version-id-ref="vim.version.version6"
      >
      <description-html>
         <![CDATA[IP Stack keeps state on entries in IpNetToMedia table to perform
 physical address lookups for IP addresses. Here are the standard
 states per<br>See RFC]]>
      </description-html>
   <value name="other" vmodl-name="other">
   </value>
   <value name="invalid" vmodl-name="invalid">
   </value>
   <value name="dynamic" vmodl-name="dynamic">
   </value>
   <value name="manual" vmodl-name="manual">
   </value>
   </enum>
   <enum name="IoFilterOperation"
      type-id="vim.IoFilterManager.OperationType"
      vmodl-name="vim.IoFilterManager.OperationType"
      enclosing-type-id-ref="vim.IoFilterManager"
      version-id-ref="vim.version.version10"
      >
      <description-html>
         <![CDATA[Defines the type of operation for an IO Filter.]]>
      </description-html>
   <value name="install" vmodl-name="install">
   </value>
   <value name="uninstall" vmodl-name="uninstall">
   </value>
   <value name="upgrade" vmodl-name="upgrade">
   </value>
   </enum>
   <enum name="AutoStartWaitHeartbeatSetting"
      type-id="vim.host.AutoStartManager.AutoPowerInfo.WaitHeartbeatSetting"
      vmodl-name="vim.host.AutoStartManager.AutoPowerInfo.WaitHeartbeatSetting"
      enclosing-type-id-ref="vim.host.AutoStartManager.AutoPowerInfo"
      version-id-ref="vim.version.version1"
      >
      <description-html>
         <![CDATA[Determines if the virtual machine should start after receiving a heartbeat,
  ignore heartbeats and start after the startDelay has elapsed, or follow the
  system default before powering on. When a virtual machine is next in the start
  order, the system either waits a specified period of time for a virtual
  machine to power on or it waits until it receives a successful heartbeat from a
  powered on virtual machine. By default, this is set to no.]]>
      </description-html>
   <value name="yes" vmodl-name="yes">
   </value>
   <value name="no" vmodl-name="no">
   </value>
   <value name="systemDefault" vmodl-name="systemDefault">
   </value>
   </enum>
   <enum name="HostFeatureVersionKey"
      type-id="vim.host.FeatureVersionInfo.FeatureVersionKey"
      vmodl-name="vim.host.FeatureVersionInfo.FeatureVersionKey"
      enclosing-type-id-ref="vim.host.FeatureVersionInfo"
      version-id-ref="vim.version.version6"
      >
      <description-html>
         <![CDATA[Set of possible values for
 <a href="vim.host.FeatureVersionInfo.html#key">key</a>, which
 is a unique key that identifies a feature.]]>
      </description-html>
   <value name="faultTolerance" vmodl-name="faultTolerance">
   </value>
   </enum>
   <enum name="VsanUpgradeSystemUpgradeHistoryDiskGroupOpType"
      type-id="vim.VsanUpgradeSystem.UpgradeHistoryDiskGroupOpType"
      vmodl-name="vim.VsanUpgradeSystem.UpgradeHistoryDiskGroupOpType"
      enclosing-type-id-ref="vim.VsanUpgradeSystem"
      version-id-ref="vim.version.version10"
      >
      <description-html>
         <![CDATA[Type of disk group operation performed.]]>
      </description-html>
   <value name="add" vmodl-name="add">
   </value>
   <value name="remove" vmodl-name="remove">
   </value>
   </enum>
   <enum name="VirtualMachineScsiPassthroughType"
      type-id="vim.vm.ScsiPassthroughInfo.ScsiClass"
      vmodl-name="vim.vm.ScsiPassthroughInfo.ScsiClass"
      enclosing-type-id-ref="vim.vm.ScsiPassthroughInfo"
      version-id-ref="vim.version.version1"
      >
      <description-html>
         <![CDATA[Possible SCSI classes.]]>
      </description-html>
   <value name="disk" vmodl-name="disk">
   </value>
   <value name="tape" vmodl-name="tape">
   </value>
   <value name="printer" vmodl-name="printer">
   </value>
   <value name="processor" vmodl-name="processor">
   </value>
   <value name="worm" vmodl-name="worm">
   </value>
   <value name="cdrom" vmodl-name="cdrom">
   </value>
   <value name="scanner" vmodl-name="scanner">
   </value>
   <value name="optical" vmodl-name="optical">
   </value>
   <value name="media" vmodl-name="media">
   </value>
   <value name="com" vmodl-name="com">
   </value>
   <value name="raid" vmodl-name="raid">
   </value>
   <value name="unknown" vmodl-name="unknown">
   </value>
   </enum>
   <enum name="ClusterInfraUpdateHaConfigInfoRemediationType"
      type-id="vim.cluster.InfraUpdateHaConfigInfo.RemediationType"
      vmodl-name="vim.cluster.InfraUpdateHaConfigInfo.RemediationType"
      enclosing-type-id-ref="vim.cluster.InfraUpdateHaConfigInfo"
      version-id-ref="vim.version.version11"
      >
   <value name="QuarantineMode" vmodl-name="QuarantineMode">
   </value>
   <value name="MaintenanceMode" vmodl-name="MaintenanceMode">
   </value>
   </enum>
   <enum name="HostStandbyMode"
      type-id="vim.HostSystem.StandbyMode"
      vmodl-name="vim.HostSystem.StandbyMode"
      enclosing-type-id-ref="vim.HostSystem"
      version-id-ref="vim.version.version6"
      >
      <description-html>
         <![CDATA[Defines a host's standby mode.]]>
      </description-html>
   <value name="entering" vmodl-name="entering">
   </value>
   <value name="exiting" vmodl-name="exiting">
   </value>
   <value name="in" vmodl-name="in">
   </value>
   <value name="none" vmodl-name="none">
   </value>
   </enum>
   <enum name="VMwareDVSTeamingMatchStatus"
      type-id="vim.dvs.VmwareDistributedVirtualSwitch.TeamingMatchStatus"
      vmodl-name="vim.dvs.VmwareDistributedVirtualSwitch.TeamingMatchStatus"
      enclosing-type-id-ref="vim.dvs.VmwareDistributedVirtualSwitch"
      version-id-ref="vim.version.version8"
      >
      <description-html>
         <![CDATA[The teaming health check match status.]]>
      </description-html>
   <value name="iphashMatch" vmodl-name="iphashMatch">
   </value>
   <value name="nonIphashMatch" vmodl-name="nonIphashMatch">
   </value>
   <value name="iphashMismatch" vmodl-name="iphashMismatch">
   </value>
   <value name="nonIphashMismatch" vmodl-name="nonIphashMismatch">
   </value>
   </enum>
   <enum name="HttpNfcLeaseManifestEntryChecksumType"
      type-id="vim.HttpNfcLease.ManifestEntry.ChecksumType"
      vmodl-name="vim.HttpNfcLease.ManifestEntry.ChecksumType"
      enclosing-type-id-ref="vim.HttpNfcLease.ManifestEntry"
      version-id-ref="vim.version.version12"
      >
      <description-html>
         <![CDATA[List of supported algorithms for checksum calculation.]]>
      </description-html>
   <value name="sha1" vmodl-name="sha1">
   </value>
   <value name="sha256" vmodl-name="sha256">
   </value>
   </enum>
   <enum name="LicenseFeatureInfoUnit"
      type-id="vim.LicenseManager.FeatureInfo.CostUnit"
      vmodl-name="vim.LicenseManager.FeatureInfo.CostUnit"
      enclosing-type-id-ref="vim.LicenseManager.FeatureInfo"
      version-id-ref="vim.version.version1"
      >
      <description-html>
         <![CDATA[Cost units apply to licenses for the purpose of determining
  how many licenses are needed.]]>
      </description-html>
   <value name="host" vmodl-name="host">
   </value>
   <value name="cpuCore" vmodl-name="cpuCore">
   </value>
   <value name="cpuPackage" vmodl-name="cpuPackage">
   </value>
   <value name="server" vmodl-name="server">
   </value>
   <value name="vm" vmodl-name="vm">
   </value>
   </enum>
   <enum name="HostInternetScsiHbaNetworkBindingSupportType"
      type-id="vim.host.InternetScsiHba.NetworkBindingSupportType"
      vmodl-name="vim.host.InternetScsiHba.NetworkBindingSupportType"
      enclosing-type-id-ref="vim.host.InternetScsiHba"
      version-id-ref="vim.version.version7"
      >
      <description-html>
         <![CDATA[The binding mode of the adapter.]]>
      </description-html>
   <value name="notsupported" vmodl-name="notsupported">
   </value>
   <value name="optional" vmodl-name="optional">
   </value>
   <value name="required" vmodl-name="required">
   </value>
   </enum>
   <enum name="ComputeResourceHostSPBMLicenseInfoHostSPBMLicenseState"
      type-id="vim.ComputeResource.HostSPBMLicenseInfo.HostSPBMLicenseState"
      vmodl-name="vim.ComputeResource.HostSPBMLicenseInfo.HostSPBMLicenseState"
      enclosing-type-id-ref="vim.ComputeResource.HostSPBMLicenseInfo"
      version-id-ref="vim.version.version7"
      >
      <description-html>
         <![CDATA[The SPBM(Storage Policy Based Management) license state for a host]]>
      </description-html>
   <value name="licensed" vmodl-name="licensed">
   </value>
   <value name="unlicensed" vmodl-name="unlicensed">
   </value>
   <value name="unknown" vmodl-name="unknown">
   </value>
   </enum>
   <enum name="VirtualMachineDeviceRuntimeInfoVirtualEthernetCardRuntimeStateVmDirectPathGen2InactiveReasonOther"
      type-id="vim.vm.DeviceRuntimeInfo.VirtualEthernetCardRuntimeState.VmDirectPathGen2InactiveReasonOther"
      vmodl-name="vim.vm.DeviceRuntimeInfo.VirtualEthernetCardRuntimeState.VmDirectPathGen2InactiveReasonOther"
      enclosing-type-id-ref="vim.vm.DeviceRuntimeInfo.VirtualEthernetCardRuntimeState"
      version-id-ref="vim.version.version6"
      >
   <value name="vmNptIncompatibleHost" vmodl-name="vmNptIncompatibleHost">
   </value>
   <value name="vmNptIncompatibleNetwork" vmodl-name="vmNptIncompatibleNetwork">
   </value>
   </enum>
   <enum name="LicenseReservationInfoState"
      type-id="vim.LicenseManager.ReservationInfo.State"
      vmodl-name="vim.LicenseManager.ReservationInfo.State"
      enclosing-type-id-ref="vim.LicenseManager.ReservationInfo"
      version-id-ref="vim.version.version1"
      >
      <description-html>
         <![CDATA[Describes the reservation state of a license.]]>
      </description-html>
   <value name="notUsed" vmodl-name="notUsed">
   </value>
   <value name="noLicense" vmodl-name="noLicense">
   </value>
   <value name="unlicensedUse" vmodl-name="unlicensedUse">
   </value>
   <value name="licensed" vmodl-name="licensed">
   </value>
   </enum>
   <enum name="HostGraphicsInfoGraphicsType"
      type-id="vim.host.GraphicsInfo.GraphicsType"
      vmodl-name="vim.host.GraphicsInfo.GraphicsType"
      enclosing-type-id-ref="vim.host.GraphicsInfo"
      version-id-ref="vim.version.version9"
      >
      <description-html>
         <![CDATA[Possible values for graphics type.]]>
      </description-html>
   <value name="basic" vmodl-name="basic">
   </value>
   <value name="shared" vmodl-name="shared">
   </value>
   <value name="direct" vmodl-name="direct">
   </value>
   <value name="sharedDirect" vmodl-name="sharedDirect" version-id-ref="sharedDirect">
   </value>
   </enum>
   <enum name="VirtualDiskMode"
      type-id="vim.vm.device.VirtualDiskOption.DiskMode"
      vmodl-name="vim.vm.device.VirtualDiskOption.DiskMode"
      enclosing-type-id-ref="vim.vm.device.VirtualDiskOption"
      version-id-ref="vim.version.version1"
      >
      <description-html>
         <![CDATA[The list of known disk modes.
  <p>
  The list of supported disk modes varies by the backing type. The "persistent"
  mode is supported by every backing type.]]>
      </description-html>
   <value name="persistent" vmodl-name="persistent">
   </value>
   <value name="nonpersistent" vmodl-name="nonpersistent">
   </value>
   <value name="undoable" vmodl-name="undoable">
   </value>
   <value name="independent_persistent" vmodl-name="independent_persistent">
   </value>
   <value name="independent_nonpersistent" vmodl-name="independent_nonpersistent">
   </value>
   <value name="append" vmodl-name="append">
   </value>
   </enum>
   <enum name="CustomizationFailedReasonCode"
      type-id="vim.event.CustomizationFailed.ReasonCode"
      vmodl-name="vim.event.CustomizationFailed.ReasonCode"
      enclosing-type-id-ref="vim.event.CustomizationFailed"
      version-id-ref="vim.version.v7_0"
      >
   <value name="userDefinedScriptDisabled" vmodl-name="userDefinedScriptDisabled">
   </value>
   </enum>
   <enum name="HostHasComponentFailureHostComponentType"
      type-id="vim.fault.HostHasComponentFailure.HostComponentType"
      vmodl-name="vim.fault.HostHasComponentFailure.HostComponentType"
      enclosing-type-id-ref="vim.fault.HostHasComponentFailure"
      version-id-ref="vim.version.version10"
      >
   <value name="Datastore" vmodl-name="Datastore">
   </value>
   </enum>
   <enum name="VirtualEthernetCardMacType"
      type-id="vim.vm.device.VirtualEthernetCardOption.MacTypes"
      vmodl-name="vim.vm.device.VirtualEthernetCardOption.MacTypes"
      enclosing-type-id-ref="vim.vm.device.VirtualEthernetCardOption"
      version-id-ref="vim.version.version1"
      >
      <description-html>
         <![CDATA[The enumeration of all known valid MAC address types.]]>
      </description-html>
   <value name="manual" vmodl-name="manual">
   </value>
   <value name="generated" vmodl-name="generated">
   </value>
   <value name="assigned" vmodl-name="assigned">
   </value>
   </enum>
   <enum name="VirtualDiskVFlashCacheConfigInfoCacheConsistencyType"
      type-id="vim.vm.device.VirtualDisk.VFlashCacheConfigInfo.CacheConsistencyType"
      vmodl-name="vim.vm.device.VirtualDisk.VFlashCacheConfigInfo.CacheConsistencyType"
      enclosing-type-id-ref="vim.vm.device.VirtualDisk.VFlashCacheConfigInfo"
      version-id-ref="vim.version.version9"
      >
      <description-html>
         <![CDATA[Pre-defined constants for cache consistency types]]>
      </description-html>
   <value name="strong" vmodl-name="strong">
   </value>
   <value name="weak" vmodl-name="weak">
   </value>
   </enum>
   <enum name="NumVirtualCpusIncompatibleReason"
      type-id="vim.fault.NumVirtualCpusIncompatible.Reason"
      vmodl-name="vim.fault.NumVirtualCpusIncompatible.Reason"
      enclosing-type-id-ref="vim.fault.NumVirtualCpusIncompatible"
      version-id-ref="vim.version.version5"
      >
      <description-html>
         <![CDATA[Reasons why the number of virtual CPUs is incompatible.]]>
      </description-html>
   <value name="recordReplay" vmodl-name="recordReplay">
   </value>
   <value name="faultTolerance" vmodl-name="faultTolerance">
   </value>
   </enum>
   <enum name="VirtualDeviceURIBackingOptionDirection"
      type-id="vim.vm.device.VirtualDeviceOption.URIBackingOption.Direction"
      vmodl-name="vim.vm.device.VirtualDeviceOption.URIBackingOption.Direction"
      enclosing-type-id-ref="vim.vm.device.VirtualDeviceOption.URIBackingOption"
      version-id-ref="vim.version.version6"
      >
      <description-html>
         <![CDATA[The <code>VirtualDeviceURIBackingOptionDirection</code> enum type
   provides values for the direction of a network connection.]]>
      </description-html>
   <value name="server" vmodl-name="server">
   </value>
   <value name="client" vmodl-name="client">
   </value>
   </enum>
   <enum name="DistributedVirtualSwitchHostMemberHostComponentState"
      type-id="vim.dvs.HostMember.HostComponentState"
      vmodl-name="vim.dvs.HostMember.HostComponentState"
      enclosing-type-id-ref="vim.dvs.HostMember"
      version-id-ref="vim.version.version5"
      >
      <description-html>
         <![CDATA[Describes the state of the host proxy switch.]]>
      </description-html>
   <value name="up" vmodl-name="up">
   </value>
   <value name="pending" vmodl-name="pending">
   </value>
   <value name="outOfSync" vmodl-name="outOfSync">
   </value>
   <value name="warning" vmodl-name="warning">
   </value>
   <value name="disconnected" vmodl-name="disconnected">
   </value>
   <value name="down" vmodl-name="down">
   </value>
   </enum>
   <enum name="ActionType"
      type-id="vim.cluster.Action.ActionType"
      vmodl-name="vim.cluster.Action.ActionType"
      enclosing-type-id-ref="vim.cluster.Action"
      version-id-ref="vim.version.version2"
      >
      <description-html>
         <![CDATA[Pre-defined constants for possible action types. Virtual Center
  uses this information to coordinate with the clients.]]>
      </description-html>
   <value name="MigrationV1" vmodl-name="MigrationV1">
   </value>
   <value name="VmPowerV1" vmodl-name="VmPowerV1">
   </value>
   <value name="HostPowerV1" vmodl-name="HostPowerV1">
   </value>
   <value name="HostMaintenanceV1" vmodl-name="HostMaintenanceV1" version-id-ref="HostMaintenanceV1">
   </value>
   <value name="StorageMigrationV1" vmodl-name="StorageMigrationV1" version-id-ref="StorageMigrationV1">
   </value>
   <value name="StoragePlacementV1" vmodl-name="StoragePlacementV1" version-id-ref="StoragePlacementV1">
   </value>
   <value name="PlacementV1" vmodl-name="PlacementV1" version-id-ref="PlacementV1">
   </value>
   <value name="HostInfraUpdateHaV1" vmodl-name="HostInfraUpdateHaV1" version-id-ref="HostInfraUpdateHaV1">
   </value>
   </enum>
   <enum name="ClusterDasConfigInfoServiceState"
      type-id="vim.cluster.DasConfigInfo.ServiceState"
      vmodl-name="vim.cluster.DasConfigInfo.ServiceState"
      enclosing-type-id-ref="vim.cluster.DasConfigInfo"
      version-id-ref="vim.version.version5"
      >
      <description-html>
         <![CDATA[Possible states of an HA service. All services support the
 disabled and enabled states.]]>
      </description-html>
   <value name="disabled" vmodl-name="disabled">
   </value>
   <value name="enabled" vmodl-name="enabled">
   </value>
   </enum>
   <enum name="DiagnosticPartitionStorageType"
      type-id="vim.host.DiagnosticPartition.StorageType"
      vmodl-name="vim.host.DiagnosticPartition.StorageType"
      enclosing-type-id-ref="vim.host.DiagnosticPartition"
      version-id-ref="vim.version.version1"
      >
      <description-html>
         <![CDATA[Type of partition indicating the type of storage on which the partition
  resides.  If the diagnostic partition is local only, it will only need
  one slot.  If the diagnostic partition is on shared storage, it could
  be used by multiple hosts.  As a result, it will need multiple slots.]]>
      </description-html>
   <value name="directAttached" vmodl-name="directAttached">
   </value>
   <value name="networkAttached" vmodl-name="networkAttached">
   </value>
   </enum>
   <enum name="TaskInfoState"
      type-id="vim.TaskInfo.State"
      vmodl-name="vim.TaskInfo.State"
      enclosing-type-id-ref="vim.TaskInfo"
      version-id-ref="vim.version.version1"
      >
      <description-html>
         <![CDATA[List of possible states of a task.]]>
      </description-html>
   <value name="queued" vmodl-name="queued">
   </value>
   <value name="running" vmodl-name="running">
   </value>
   <value name="success" vmodl-name="success">
   </value>
   <value name="error" vmodl-name="error">
   </value>
   </enum>
   <enum name="DistributedVirtualSwitchProductSpecOperationType"
      type-id="vim.DistributedVirtualSwitch.ProductSpecOperationType"
      vmodl-name="vim.DistributedVirtualSwitch.ProductSpecOperationType"
      enclosing-type-id-ref="vim.DistributedVirtualSwitch"
      version-id-ref="vim.version.version5"
      >
      <description-html>
         <![CDATA[The product spec operation types.]]>
      </description-html>
   <value name="preInstall" vmodl-name="preInstall">
   </value>
   <value name="upgrade" vmodl-name="upgrade">
   </value>
   <value name="notifyAvailableUpgrade" vmodl-name="notifyAvailableUpgrade">
   </value>
   <value name="proceedWithUpgrade" vmodl-name="proceedWithUpgrade">
   </value>
   <value name="updateBundleInfo" vmodl-name="updateBundleInfo">
   </value>
   </enum>
   <enum name="VAppIPAssignmentInfoIpAllocationPolicy"
      type-id="vim.vApp.IPAssignmentInfo.IpAllocationPolicy"
      vmodl-name="vim.vApp.IPAssignmentInfo.IpAllocationPolicy"
      enclosing-type-id-ref="vim.vApp.IPAssignmentInfo"
      version-id-ref="vim.version.version5"
      >
      <description-html>
         <![CDATA[IP allocation policy for a deployment.]]>
      </description-html>
   <value name="dhcpPolicy" vmodl-name="dhcpPolicy">
   </value>
   <value name="transientPolicy" vmodl-name="transientPolicy">
   </value>
   <value name="fixedPolicy" vmodl-name="fixedPolicy">
   </value>
   <value name="fixedAllocatedPolicy" vmodl-name="fixedAllocatedPolicy" version-id-ref="fixedAllocatedPolicy">
   </value>
   </enum>
   <enum name="GuestOsDescriptorSupportLevel"
      type-id="vim.vm.GuestOsDescriptor.SupportLevel"
      vmodl-name="vim.vm.GuestOsDescriptor.SupportLevel"
      enclosing-type-id-ref="vim.vm.GuestOsDescriptor"
      version-id-ref="vim.version.version7"
      >
      <description-html>
         <![CDATA[Guest OS support level]]>
      </description-html>
   <value name="experimental" vmodl-name="experimental">
   </value>
   <value name="legacy" vmodl-name="legacy">
   </value>
   <value name="terminated" vmodl-name="terminated">
   </value>
   <value name="supported" vmodl-name="supported">
   </value>
   <value name="unsupported" vmodl-name="unsupported" version-id-ref="unsupported">
   </value>
   <value name="deprecated" vmodl-name="deprecated" version-id-ref="deprecated">
   </value>
   <value name="techPreview" vmodl-name="techPreview" version-id-ref="techPreview">
   </value>
   </enum>
   <enum name="GuestFileType"
      type-id="vim.vm.guest.FileManager.FileInfo.FileType"
      vmodl-name="vim.vm.guest.FileManager.FileInfo.FileType"
      enclosing-type-id-ref="vim.vm.guest.FileManager.FileInfo"
      version-id-ref="vim.version.version7"
      >
   <value name="file" vmodl-name="file">
   </value>
   <value name="directory" vmodl-name="directory">
   </value>
   <value name="symlink" vmodl-name="symlink">
   </value>
   </enum>
   <enum name="VirtualMachineMetadataManagerVmMetadataOwnerOwner"
      type-id="vim.vm.MetadataManager.VmMetadataOwner.Owner"
      vmodl-name="vim.vm.MetadataManager.VmMetadataOwner.Owner"
      enclosing-type-id-ref="vim.vm.MetadataManager.VmMetadataOwner"
      version-id-ref="vim.version.version9"
      >
      <description-html>
         <![CDATA[This enum contains a list of valid owner values for
  the name field]]>
      </description-html>
   <value name="ComVmwareVsphereHA" vmodl-name="ComVmwareVsphereHA">
   </value>
   </enum>
   <enum name="VirtualMachineAppHeartbeatStatusType"
      type-id="vim.VirtualMachine.AppHeartbeatStatusType"
      vmodl-name="vim.VirtualMachine.AppHeartbeatStatusType"
      enclosing-type-id-ref="vim.VirtualMachine"
      version-id-ref="vim.version.version6"
      >
      <description-html>
         <![CDATA[Application heartbeat status type.]]>
      </description-html>
   <value name="appStatusGray" vmodl-name="appStatusGray">
   </value>
   <value name="appStatusGreen" vmodl-name="appStatusGreen">
   </value>
   <value name="appStatusRed" vmodl-name="appStatusRed">
   </value>
   </enum>
   <enum name="HostNvmeTransportParametersNvmeAddressFamily"
      type-id="vim.host.NvmeTransportParameters.NvmeAddressFamily"
      vmodl-name="vim.host.NvmeTransportParameters.NvmeAddressFamily"
      enclosing-type-id-ref="vim.host.NvmeTransportParameters"
      version-id-ref="vim.version.v7_0"
      >
      <description-html>
         <![CDATA[This enum specifies the supported address families for
  NVME over Fabrics.
  <p>
  For details, see:
  <ul>
  <li>"NVM Express over Fabrics 1.0", Section 5.3, Figure 34,
  "Discovery Log Page Entry"
  </ul>]]>
      </description-html>
   <value name="ipv4" vmodl-name="ipv4">
   </value>
   <value name="ipv6" vmodl-name="ipv6">
   </value>
   <value name="infiniBand" vmodl-name="infiniBand">
   </value>
   <value name="fc" vmodl-name="fc">
   </value>
   <value name="loopback" vmodl-name="loopback">
   </value>
   <value name="unknown" vmodl-name="unknown">
   </value>
   </enum>
   <enum name="VirtualMachineBootOptionsNetworkBootProtocolType"
      type-id="vim.vm.BootOptions.NetworkBootProtocolType"
      vmodl-name="vim.vm.BootOptions.NetworkBootProtocolType"
      enclosing-type-id-ref="vim.vm.BootOptions"
      version-id-ref="vim.version.version10"
      >
   <value name="ipv4" vmodl-name="ipv4">
   </value>
   <value name="ipv6" vmodl-name="ipv6">
   </value>
   </enum>
   <enum name="NvdimmNamespaceDetailsState"
      type-id="vim.host.NvdimmSystem.NamespaceDetails.NamespaceState"
      vmodl-name="vim.host.NvdimmSystem.NamespaceDetails.NamespaceState"
      enclosing-type-id-ref="vim.host.NvdimmSystem.NamespaceDetails"
      version-id-ref="vim.version.version13"
      >
      <description-html>
         <![CDATA[State of Namespace]]>
      </description-html>
   <value name="invalid" vmodl-name="invalid">
   </value>
   <value name="notInUse" vmodl-name="notInUse">
   </value>
   <value name="inUse" vmodl-name="inUse">
   </value>
   </enum>
   <enum name="ApplyHostProfileConfigurationResultStatus"
      type-id="vim.profile.host.ProfileManager.ApplyHostConfigResult.Status"
      vmodl-name="vim.profile.host.ProfileManager.ApplyHostConfigResult.Status"
      enclosing-type-id-ref="vim.profile.host.ProfileManager.ApplyHostConfigResult"
      version-id-ref="vim.version.version11"
      internal-before-version-id-ref="vim.version.version12"
      >
   <value name="success" vmodl-name="success">
   </value>
   <value name="failed" vmodl-name="failed">
   </value>
   <value name="reboot_failed" vmodl-name="reboot_failed">
   </value>
   <value name="stateless_reboot_failed" vmodl-name="stateless_reboot_failed">
   </value>
   <value name="check_compliance_failed" vmodl-name="check_compliance_failed">
   </value>
   <value name="state_not_satisfied" vmodl-name="state_not_satisfied">
   </value>
   <value name="exit_maintenancemode_failed" vmodl-name="exit_maintenancemode_failed">
   </value>
   <value name="canceled" vmodl-name="canceled">
   </value>
   </enum>
   <enum name="PerfFormat"
      type-id="vim.PerformanceManager.Format"
      vmodl-name="vim.PerformanceManager.Format"
      enclosing-type-id-ref="vim.PerformanceManager"
      version-id-ref="vim.version.version1"
      >
      <description-html>
         <![CDATA[The format in which performance counter data is returned.]]>
      </description-html>
   <value name="normal" vmodl-name="normal">
   </value>
   <value name="csv" vmodl-name="csv">
   </value>
   </enum>
   <enum name="PerformanceManagerUnit"
      type-id="vim.PerformanceManager.CounterInfo.Unit"
      vmodl-name="vim.PerformanceManager.CounterInfo.Unit"
      enclosing-type-id-ref="vim.PerformanceManager.CounterInfo"
      version-id-ref="vim.version.version1"
      >
      <description-html>
         <![CDATA[Indicates the unit of measure represented by a counter or statistical
  value.]]>
      </description-html>
   <value name="percent" vmodl-name="percent">
   </value>
   <value name="kiloBytes" vmodl-name="kiloBytes">
   </value>
   <value name="megaBytes" vmodl-name="megaBytes">
   </value>
   <value name="megaHertz" vmodl-name="megaHertz">
   </value>
   <value name="number" vmodl-name="number">
   </value>
   <value name="microsecond" vmodl-name="microsecond" version-id-ref="microsecond">
   </value>
   <value name="millisecond" vmodl-name="millisecond">
   </value>
   <value name="second" vmodl-name="second">
   </value>
   <value name="kiloBytesPerSecond" vmodl-name="kiloBytesPerSecond">
   </value>
   <value name="megaBytesPerSecond" vmodl-name="megaBytesPerSecond">
   </value>
   <value name="watt" vmodl-name="watt" version-id-ref="watt">
   </value>
   <value name="joule" vmodl-name="joule" version-id-ref="joule">
   </value>
   <value name="teraBytes" vmodl-name="teraBytes" version-id-ref="teraBytes">
   </value>
   <value name="celsius" vmodl-name="celsius" version-id-ref="celsius">
   </value>
   </enum>
   <enum name="ScheduledHardwareUpgradeInfoHardwareUpgradeStatus"
      type-id="vim.vm.ScheduledHardwareUpgradeInfo.HardwareUpgradeStatus"
      vmodl-name="vim.vm.ScheduledHardwareUpgradeInfo.HardwareUpgradeStatus"
      enclosing-type-id-ref="vim.vm.ScheduledHardwareUpgradeInfo"
      version-id-ref="vim.version.version8"
      >
      <description-html>
         <![CDATA[Status for last attempt to run scheduled hardware upgrade.]]>
      </description-html>
   <value name="none" vmodl-name="none">
   </value>
   <value name="pending" vmodl-name="pending">
   </value>
   <value name="success" vmodl-name="success">
   </value>
   <value name="failed" vmodl-name="failed">
   </value>
   </enum>
   <enum name="MultipathState"
      type-id="vim.host.MultipathInfo.PathState"
      vmodl-name="vim.host.MultipathInfo.PathState"
      enclosing-type-id-ref="vim.host.MultipathInfo"
      version-id-ref="vim.version.version1"
      >
      <description-html>
         <![CDATA[Set of constants defining the possible states of a multipath path.]]>
      </description-html>
   <value name="standby" vmodl-name="standby">
   </value>
   <value name="active" vmodl-name="active">
   </value>
   <value name="disabled" vmodl-name="disabled">
   </value>
   <value name="dead" vmodl-name="dead">
   </value>
   <value name="unknown" vmodl-name="unknown">
   </value>
   </enum>
   <enum name="VirtualDeviceConnectInfoStatus"
      type-id="vim.vm.device.VirtualDevice.ConnectInfo.Status"
      vmodl-name="vim.vm.device.VirtualDevice.ConnectInfo.Status"
      enclosing-type-id-ref="vim.vm.device.VirtualDevice.ConnectInfo"
      version-id-ref="vim.version.version5"
      >
      <description-html>
         <![CDATA[Specifies the connectable virtual device status.]]>
      </description-html>
   <value name="ok" vmodl-name="ok">
   </value>
   <value name="recoverableError" vmodl-name="recoverableError">
   </value>
   <value name="unrecoverableError" vmodl-name="unrecoverableError">
   </value>
   <value name="untried" vmodl-name="untried">
   </value>
   </enum>
   <enum name="HostNvmeDiscoveryLogSubsystemType"
      type-id="vim.host.NvmeDiscoveryLog.SubsystemType"
      vmodl-name="vim.host.NvmeDiscoveryLog.SubsystemType"
      enclosing-type-id-ref="vim.host.NvmeDiscoveryLog"
      version-id-ref="vim.version.version1"
      >
      <description-html>
         <![CDATA[This enum represents the supported NVM subsystem types.]]>
      </description-html>
   <value name="discovery" vmodl-name="discovery">
   </value>
   <value name="nvm" vmodl-name="nvm">
   </value>
   </enum>
   <enum name="RecommendationType"
      type-id="vim.cluster.Recommendation.RecommendationType"
      vmodl-name="vim.cluster.Recommendation.RecommendationType"
      enclosing-type-id-ref="vim.cluster.Recommendation"
      version-id-ref="vim.version.version2"
      >
      <description-html>
         <![CDATA[Pre-defined constants for possible recommendation types. Virtual Center
  uses this information to coordinate with the clients.]]>
      </description-html>
   <value name="V1" vmodl-name="V1">
   </value>
   </enum>
   <enum name="HostGraphicsConfigSharedPassthruAssignmentPolicy"
      type-id="vim.host.GraphicsConfig.SharedPassthruAssignmentPolicy"
      vmodl-name="vim.host.GraphicsConfig.SharedPassthruAssignmentPolicy"
      enclosing-type-id-ref="vim.host.GraphicsConfig"
      version-id-ref="vim.version.version11"
      >
      <description-html>
         <![CDATA[Possible values for shared passthrough assignment policy]]>
      </description-html>
   <value name="performance" vmodl-name="performance">
   </value>
   <value name="consolidation" vmodl-name="consolidation">
   </value>
   </enum>
   <enum name="VmShutdownOnIsolationEventOperation"
      type-id="vim.event.VmShutdownOnIsolationEvent.Operation"
      vmodl-name="vim.event.VmShutdownOnIsolationEvent.Operation"
      enclosing-type-id-ref="vim.event.VmShutdownOnIsolationEvent"
      version-id-ref="vim.version.version5"
      >
   <value name="shutdown" vmodl-name="shutdown">
   </value>
   <value name="poweredOff" vmodl-name="poweredOff">
   </value>
   </enum>
   <enum name="HostSystemConnectionState"
      type-id="vim.HostSystem.ConnectionState"
      vmodl-name="vim.HostSystem.ConnectionState"
      enclosing-type-id-ref="vim.HostSystem"
      version-id-ref="vim.version.version1"
      >
      <description-html>
         <![CDATA[Defines a host's connection state.]]>
      </description-html>
   <value name="connected" vmodl-name="connected">
   </value>
   <value name="notResponding" vmodl-name="notResponding">
   </value>
   <value name="disconnected" vmodl-name="disconnected">
   </value>
   </enum>
   <enum name="HostInternetScsiHbaStaticTargetTargetDiscoveryMethod"
      type-id="vim.host.InternetScsiHba.StaticTarget.TargetDiscoveryMethod"
      vmodl-name="vim.host.InternetScsiHba.StaticTarget.TargetDiscoveryMethod"
      enclosing-type-id-ref="vim.host.InternetScsiHba.StaticTarget"
      version-id-ref="vim.version.version8"
      >
      <description-html>
         <![CDATA[The method of discovery of an iScsi target.
 staticMethod: static discovery
 sendTargetsMethod: sendtarget discovery
 slpMethod: Service Location Protocol discovery
 isnsMethod: Internet Storage Name Service discovery
 unknownMethod: discovery method not identified by iscsi stack]]>
      </description-html>
   <value name="staticMethod" vmodl-name="staticMethod">
   </value>
   <value name="sendTargetMethod" vmodl-name="sendTargetMethod">
   </value>
   <value name="slpMethod" vmodl-name="slpMethod">
   </value>
   <value name="isnsMethod" vmodl-name="isnsMethod">
   </value>
   <value name="unknownMethod" vmodl-name="unknownMethod">
   </value>
   </enum>
   <enum name="VsanHostDiskResultState"
      type-id="vim.vsan.host.DiskResult.State"
      vmodl-name="vim.vsan.host.DiskResult.State"
      enclosing-type-id-ref="vim.vsan.host.DiskResult"
      version-id-ref="vim.version.version9"
      >
      <description-html>
         <![CDATA[Values used for indicating a disk's status for use by the VSAN service.<br>See <a href="vim.vsan.host.DiskResult.html#state">state</a><br>]]>
      </description-html>
   <value name="inUse" vmodl-name="inUse">
   </value>
   <value name="eligible" vmodl-name="eligible">
   </value>
   <value name="ineligible" vmodl-name="ineligible">
   </value>
   </enum>
   <enum name="VirtualDiskRuleSpecRuleType"
      type-id="vim.storageDrs.VirtualDiskRuleSpec.RuleType"
      vmodl-name="vim.storageDrs.VirtualDiskRuleSpec.RuleType"
      enclosing-type-id-ref="vim.storageDrs.VirtualDiskRuleSpec"
      version-id-ref="vim.version.version12"
      >
      <description-html>
         <![CDATA[Rule type determines how the virtual disks in a vm can be grouped
 together.]]>
      </description-html>
   <value name="affinity" vmodl-name="affinity">
   </value>
   <value name="antiAffinity" vmodl-name="antiAffinity">
   </value>
   <value name="disabled" vmodl-name="disabled">
   </value>
   </enum>
   <enum name="HostUnresolvedVmfsResolutionSpecVmfsUuidResolution"
      type-id="vim.host.UnresolvedVmfsResolutionSpec.VmfsUuidResolution"
      vmodl-name="vim.host.UnresolvedVmfsResolutionSpec.VmfsUuidResolution"
      enclosing-type-id-ref="vim.host.UnresolvedVmfsResolutionSpec"
      version-id-ref="vim.version.version5"
      >
   <value name="resignature" vmodl-name="resignature">
   </value>
   <value name="forceMount" vmodl-name="forceMount">
   </value>
   </enum>
   <enum name="VMwareDVSVspanSessionType"
      type-id="vim.dvs.VmwareDistributedVirtualSwitch.VspanSessionType"
      vmodl-name="vim.dvs.VmwareDistributedVirtualSwitch.VspanSessionType"
      enclosing-type-id-ref="vim.dvs.VmwareDistributedVirtualSwitch"
      version-id-ref="vim.version.version8"
      >
      <description-html>
         <![CDATA[Distributed Port Mirroring session types.]]>
      </description-html>
   <value name="mixedDestMirror" vmodl-name="mixedDestMirror">
   </value>
   <value name="dvPortMirror" vmodl-name="dvPortMirror">
   </value>
   <value name="remoteMirrorSource" vmodl-name="remoteMirrorSource">
   </value>
   <value name="remoteMirrorDest" vmodl-name="remoteMirrorDest">
   </value>
   <value name="encapsulatedRemoteMirrorSource" vmodl-name="encapsulatedRemoteMirrorSource">
   </value>
   </enum>
   <enum name="HostProfileManagerCompositionValidationResultResultElementStatus"
      type-id="vim.profile.host.ProfileManager.CompositionValidationResult.ResultElement.Status"
      vmodl-name="vim.profile.host.ProfileManager.CompositionValidationResult.ResultElement.Status"
      enclosing-type-id-ref="vim.profile.host.ProfileManager.CompositionValidationResult.ResultElement"
      version-id-ref="vim.version.version11"
      internal-before-version-id-ref="vim.version.version12"
      >
      <description-html>
         <![CDATA[The composition validation status class.]]>
      </description-html>
   <value name="success" vmodl-name="success">
   </value>
   <value name="error" vmodl-name="error">
   </value>
   </enum>
   <enum name="DistributedVirtualPortgroupPortgroupType"
      type-id="vim.dvs.DistributedVirtualPortgroup.PortgroupType"
      vmodl-name="vim.dvs.DistributedVirtualPortgroup.PortgroupType"
      enclosing-type-id-ref="vim.dvs.DistributedVirtualPortgroup"
      version-id-ref="vim.version.version5"
      >
      <description-html>
         <![CDATA[The <a href="vim.dvs.DistributedVirtualPortgroup.PortgroupType.html">DistributedVirtualPortgroupPortgroupType</a> enum defines
 the distributed virtual portgroup types
 (<a href="vim.dvs.DistributedVirtualPortgroup.html">DistributedVirtualPortgroup</a>.<a href="vim.dvs.DistributedVirtualPortgroup.html#config">Config</a>.<a href="vim.dvs.DistributedVirtualPortgroup.ConfigInfo.html#type">type</a>). Early binding specifies a static set of ports that are created
 when you create the distributed virtual portgroup. An ephemeral portgroup uses dynamic
 ports that are created when you power on a virtual machine.]]>
      </description-html>
   <value name="earlyBinding" vmodl-name="earlyBinding">
   </value>
   <value name="lateBinding" vmodl-name="lateBinding">
   </value>
   <value name="ephemeral" vmodl-name="ephemeral">
   </value>
   </enum>
   </enums>
   <faults>
   <fault name="MethodFault"
      type-id="vmodl.MethodFault"
      vmodl-name="vmodl.MethodFault"
      version-id-ref="vmodl.version.version0"
      >
      <description-html>
         <![CDATA[The base data object type for all the object model faults
  that an application might handle.]]>
      </description-html>
            <property name="faultCause" type-id-ref="vmodl.LocalizedMethodFault"
      vmodl-name="faultCause"
      version-id-ref="vmodl.version.version1"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Fault which is the cause of this fault.]]>
      </description-html>
      </property>

            <property name="faultMessage" type-id-ref="vmodl.LocalizableMessage"
      vmodl-name="faultMessage"
      version-id-ref="vmodl.version.version1"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Message which has details about the error
 Message can also contain a key to message catalog which
    can be used to generate better localized messages.]]>
      </description-html>
      </property>

   </fault>
   <fault name="RuntimeFault"
      type-id="vmodl.RuntimeFault"
      vmodl-name="vmodl.RuntimeFault"
      version-id-ref="vmodl.version.version0"
      base-type-id="vmodl.MethodFault"
      >
      <description-html>
         <![CDATA[The base data object type for all runtime faults that can be
  thrown by a method.]]>
      </description-html>
   </fault>
   <fault name="HostCommunication"
      type-id="vmodl.fault.HostCommunication"
      vmodl-name="vmodl.fault.HostCommunication"
      version-id-ref="vmodl.version.version0"
      base-type-id="vmodl.RuntimeFault"
      >
      <description-html>
         <![CDATA[A HostCommunication fault is thrown if an error happened
  while communicating to a host. This would typically be
  due to network connections or server failures.]]>
      </description-html>
   </fault>
   <fault name="HostNotConnected"
      type-id="vmodl.fault.HostNotConnected"
      vmodl-name="vmodl.fault.HostNotConnected"
      version-id-ref="vmodl.version.version0"
      base-type-id="vmodl.fault.HostCommunication"
      >
      <description-html>
         <![CDATA[A HostNotConnected fault is thrown if a method needs
  to communicate with a host that has been disconnected in
  VirtualCenter.]]>
      </description-html>
   </fault>
   <fault name="HostNotReachable"
      type-id="vmodl.fault.HostNotReachable"
      vmodl-name="vmodl.fault.HostNotReachable"
      version-id-ref="vmodl.version.version0"
      base-type-id="vmodl.fault.HostCommunication"
      >
      <description-html>
         <![CDATA[A HostNotReachable fault is thrown if the server was unable
  to communicate with the host]]>
      </description-html>
   </fault>
   <fault name="InvalidArgument"
      type-id="vmodl.fault.InvalidArgument"
      vmodl-name="vmodl.fault.InvalidArgument"
      version-id-ref="vmodl.version.version0"
      base-type-id="vmodl.RuntimeFault"
      >
      <description-html>
         <![CDATA[An InvalidArgument exception is thrown if the
  set of arguments passed to the function is not
  specified correctly.]]>
      </description-html>
            <property name="invalidProperty" type-id-ref="vmodl.PropertyPath"
      vmodl-name="invalidProperty"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Optional name of the invalid property.]]>
      </description-html>
      </property>

   </fault>
   <fault name="InvalidRequest"
      type-id="vmodl.fault.InvalidRequest"
      vmodl-name="vmodl.fault.InvalidRequest"
      version-id-ref="vmodl.version.version0"
      base-type-id="vmodl.RuntimeFault"
      >
      <description-html>
         <![CDATA[An InvalidRequest fault is thrown in response to a malformed
  request to the server that fails in the transport layer, e.g.,
  the SOAP XML request was invalid. Sub-types of this fault,
  provides more specific transport errors, such as a using a
  reference to an unknown managed object type or method.]]>
      </description-html>
   </fault>
   <fault name="InvalidType"
      type-id="vmodl.fault.InvalidType"
      vmodl-name="vmodl.fault.InvalidType"
      version-id-ref="vmodl.version.version0"
      base-type-id="vmodl.fault.InvalidRequest"
      >
      <description-html>
         <![CDATA[InvalidType is thrown when a managed object request refers to
  an unexpected or unknown type.]]>
      </description-html>
            <property name="argument" type-id-ref="vmodl.PropertyPath"
      vmodl-name="argument"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Name of the argument that was malformed.]]>
      </description-html>
      </property>

   </fault>
   <fault name="ManagedObjectNotFound"
      type-id="vmodl.fault.ManagedObjectNotFound"
      vmodl-name="vmodl.fault.ManagedObjectNotFound"
      version-id-ref="vmodl.version.version0"
      base-type-id="vmodl.RuntimeFault"
      >
      <description-html>
         <![CDATA[A ManagedObjectNotFound exception is thrown when a request refers to
  a managed object that no longer exists or has never existed.]]>
      </description-html>
            <property name="obj" type-id-ref="vmodl.ManagedObject"
      vmodl-name="obj"
      >
      <description-html>
         <![CDATA[The managed object reference that generated the error.]]>
      </description-html>
      </property>

   </fault>
   <fault name="MethodNotFound"
      type-id="vmodl.fault.MethodNotFound"
      vmodl-name="vmodl.fault.MethodNotFound"
      version-id-ref="vmodl.version.version0"
      base-type-id="vmodl.fault.InvalidRequest"
      >
      <description-html>
         <![CDATA[MethodNotFound is thrown to indicate that a method called on a managed
 object does not exist.]]>
      </description-html>
            <property name="receiver" type-id-ref="vmodl.ManagedObject"
      vmodl-name="receiver"
      >
      <description-html>
         <![CDATA[The receiver of the call]]>
      </description-html>
      </property>

            <property name="method" type-id-ref="java.lang.String"
      vmodl-name="method"
      >
      <description-html>
         <![CDATA[The method called.]]>
      </description-html>
      </property>

   </fault>
   <fault name="NotEnoughLicenses"
      type-id="vmodl.fault.NotEnoughLicenses"
      vmodl-name="vmodl.fault.NotEnoughLicenses"
      version-id-ref="vmodl.version.version0"
      base-type-id="vmodl.RuntimeFault"
      >
      <description-html>
         <![CDATA[A NotEnoughLicensesFault occurs when an operation
  fails because there are not enough licenses installed.]]>
      </description-html>
   </fault>
   <fault name="NotImplemented"
      type-id="vmodl.fault.NotImplemented"
      vmodl-name="vmodl.fault.NotImplemented"
      version-id-ref="vmodl.version.version0"
      base-type-id="vmodl.RuntimeFault"
      >
      <description-html>
         <![CDATA[NotImplemented exception is thrown if the method is not
  yet implemented.]]>
      </description-html>
   </fault>
   <fault name="NotSupported"
      type-id="vmodl.fault.NotSupported"
      vmodl-name="vmodl.fault.NotSupported"
      version-id-ref="vmodl.version.version0"
      base-type-id="vmodl.RuntimeFault"
      >
      <description-html>
         <![CDATA[Thrown if the method is not supported on the
  server. Not all methods are supported on all servers
  (for example, an ESX Server host supports less functionality than
  a VirtualCenter server). A feature might also be disabled
  due to missing liceneses.]]>
      </description-html>
   </fault>
   <fault name="RequestCanceled"
      type-id="vmodl.fault.RequestCanceled"
      vmodl-name="vmodl.fault.RequestCanceled"
      version-id-ref="vmodl.version.version0"
      base-type-id="vmodl.RuntimeFault"
      >
      <description-html>
         <![CDATA[A RequestCanceled fault is thrown if the user canceled the task.]]>
      </description-html>
   </fault>
   <fault name="SecurityError"
      type-id="vmodl.fault.SecurityError"
      vmodl-name="vmodl.fault.SecurityError"
      version-id-ref="vmodl.version.version0"
      base-type-id="vmodl.RuntimeFault"
      >
      <description-html>
         <![CDATA[Thrown when the client is not allowed access to the property or method.]]>
      </description-html>
   </fault>
   <fault name="SystemError"
      type-id="vmodl.fault.SystemError"
      vmodl-name="vmodl.fault.SystemError"
      version-id-ref="vmodl.version.version0"
      base-type-id="vmodl.RuntimeFault"
      >
      <description-html>
         <![CDATA[Exception type for reporting a low-level operating system
   error.]]>
      </description-html>
            <property name="reason" type-id-ref="java.lang.String"
      vmodl-name="reason"
      >
      <description-html>
         <![CDATA[A message to indicate detailed information about the error.
 This property is not internationalization friendly and
 normally reported by the underlying operating system.]]>
      </description-html>
      </property>

   </fault>
   <fault name="UnexpectedFault"
      type-id="vmodl.fault.UnexpectedFault"
      vmodl-name="vmodl.fault.UnexpectedFault"
      version-id-ref="vmodl.version.version0"
      base-type-id="vmodl.RuntimeFault"
      >
      <description-html>
         <![CDATA[An UnexpectedFault may be thrown when a newer version of the server
  reports a error that a cannot be converted to a fault that a client
  that is using an older version of the API would expect.]]>
      </description-html>
            <property name="faultName" type-id-ref="vmodl.TypeName"
      vmodl-name="faultName"
      >
      <description-html>
         <![CDATA[Name of the unexpected fault.]]>
      </description-html>
      </property>

            <property name="fault" type-id-ref="vmodl.LocalizedMethodFault"
      vmodl-name="fault"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The unexpected fault if the server can send it in a form that the client
 will be able to de-serialize.]]>
      </description-html>
      </property>

   </fault>
   <fault name="InvalidCollectorVersion"
      type-id="vmodl.query.InvalidCollectorVersion"
      vmodl-name="vmodl.query.InvalidCollectorVersion"
      version-id-ref="vmodl.query.version.version1"
      base-type-id="vmodl.MethodFault"
      >
      <description-html>
         <![CDATA[InvalidCollectorVersion is thrown when a collector version is out
  of date or invalid.]]>
      </description-html>
   </fault>
   <fault name="InvalidProperty"
      type-id="vmodl.query.InvalidProperty"
      vmodl-name="vmodl.query.InvalidProperty"
      version-id-ref="vmodl.query.version.version1"
      base-type-id="vmodl.MethodFault"
      >
      <description-html>
         <![CDATA[Thrown when an invalid property path has been referenced.]]>
      </description-html>
            <property name="name" type-id-ref="vmodl.PropertyPath"
      vmodl-name="name"
      >
      <description-html>
         <![CDATA[The property name that generated the error.]]>
      </description-html>
      </property>

   </fault>
   <fault name="CannotDisableDrsOnClustersWithVApps"
      type-id="vim.fault.CannotDisableDrsOnClustersWithVApps"
      vmodl-name="vim.fault.CannotDisableDrsOnClustersWithVApps"
      version-id-ref="vim.version.version6"
      base-type-id="vmodl.RuntimeFault"
      >
      <description-html>
         <![CDATA[This fault is thrown when an attempt is made to disable DRS on a cluster,
  which contains a vApp.]]>
      </description-html>
   </fault>
   <fault name="ConflictingDatastoreFound"
      type-id="vim.fault.ConflictingDatastoreFound"
      vmodl-name="vim.fault.ConflictingDatastoreFound"
      version-id-ref="vim.version.version8"
      base-type-id="vmodl.RuntimeFault"
      >
      <description-html>
         <![CDATA[ConflictingDatastoreFound is thrown when the conflicting datastores
  with the same url but backed by different disks are found in the host
  and the target datacenter.]]>
      </description-html>
            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      >
      <description-html>
         <![CDATA[The name of the datastore.]]>
      </description-html>
      </property>

            <property name="url" type-id-ref="java.lang.String"
      vmodl-name="url"
      >
      <description-html>
         <![CDATA[The unique locator for the datastore.]]>
      </description-html>
      </property>

   </fault>
   <fault name="DatabaseError"
      type-id="vim.fault.DatabaseError"
      vmodl-name="vim.fault.DatabaseError"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.RuntimeFault"
      >
      <description-html>
         <![CDATA[A DatabaseError exception is thrown if an
  operation failed when accessing the external
  database. This typically is because
  the database is (temporarily) unavailable or
  because of network problems.]]>
      </description-html>
   </fault>
   <fault name="DisallowedChangeByService"
      type-id="vim.fault.DisallowedChangeByService"
      vmodl-name="vim.fault.DisallowedChangeByService"
      version-id-ref="vim.version.version7"
      base-type-id="vmodl.RuntimeFault"
      >
      <description-html>
         <![CDATA[Fault thrown if the disallowed operation is invoked by the client. The
  change is disallowed because it conflicts with target state maintained
  by a service. The corresponding method is usually not disabled because
  only a subset of changes carried out by the method is disallowed. For
  example, an online extend executed via virtual machine reconfigure
  method is not allowed if replication is enabled on a virtual machine.]]>
      </description-html>
            <property name="serviceName" type-id-ref="java.lang.String"
      vmodl-name="serviceName"
      >
      <description-html>
         <![CDATA[The service that has disallowed the change.]]>
      </description-html>
      </property>

            <property name="disallowedChange" type-id-ref="java.lang.String"
      vmodl-name="disallowedChange"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The change this is not allowed, the set of possible values is
 described in <a href="vim.fault.DisallowedChangeByService.DisallowedChange.html">DisallowedChangeByServiceDisallowedChange</a>.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.fault.DisallowedChangeByService.DisallowedChange</nested-type-id-ref>
   </fault>
   <fault name="DisallowedOperationOnFailoverHost"
      type-id="vim.fault.DisallowedOperationOnFailoverHost"
      vmodl-name="vim.fault.DisallowedOperationOnFailoverHost"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.RuntimeFault"
      >
      <description-html>
         <![CDATA[Fault thrown when an attempt is made to perform a disallowed operation on a
  host that has been configured as a failover host in an cluster that has High
  Availability enabled. See <a href="vim.cluster.FailoverHostAdmissionControlPolicy.html">ClusterFailoverHostAdmissionControlPolicy</a>.
  Examples of such operations are destroying a host, moving a host out of a cluster,
  or powering on a virtual machine on a specific host.]]>
      </description-html>
            <property name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      >
      <description-html>
         <![CDATA[The failover host.]]>
      </description-html>
      </property>

            <property name="hostname" type-id-ref="java.lang.String"
      vmodl-name="hostname"
      >
      <description-html>
         <![CDATA[Name of the failover host.]]>
      </description-html>
      </property>

   </fault>
   <fault name="ExpiredFeatureLicense"
      type-id="vim.fault.ExpiredFeatureLicense"
      vmodl-name="vim.fault.ExpiredFeatureLicense"
      version-id-ref="vim.version.version2"
      base-type-id="vmodl.fault.NotEnoughLicenses"
      >
      <description-html>
         <![CDATA[An ExpiredFeatureLicense fault is thrown if an attempt to acquire an Addon license
 'feature failed for count 'count'.]]>
      </description-html>
            <property name="feature" type-id-ref="java.lang.String"
      vmodl-name="feature"
      >
      </property>

            <property name="count" type-id-ref="INT"
      vmodl-name="count"
      >
      </property>

            <property name="expirationDate" type-id-ref="vmodl.DateTime"
      vmodl-name="expirationDate"
      >
      </property>

   </fault>
   <fault name="FailToLockFaultToleranceVMs"
      type-id="vim.fault.FailToLockFaultToleranceVMs"
      vmodl-name="vim.fault.FailToLockFaultToleranceVMs"
      version-id-ref="vim.version.version6"
      base-type-id="vmodl.RuntimeFault"
      >
      <description-html>
         <![CDATA[Thrown when trying to state lock a Fault Tolerance VM, and the
 other VM in the same Fault Tolerance pair is already locked.]]>
      </description-html>
            <property name="vmName" type-id-ref="java.lang.String"
      vmodl-name="vmName"
      >
      <description-html>
         <![CDATA[The name of the vm to be locked.]]>
      </description-html>
      </property>

            <property name="vm" type-id-ref="vim.VirtualMachine"
      vmodl-name="vm"
      >
      <description-html>
         <![CDATA[The vm to be locked, this can be a Fault Tolerance primary or secondary VM]]>
      </description-html>
      </property>

            <property name="alreadyLockedVm" type-id-ref="vim.VirtualMachine"
      vmodl-name="alreadyLockedVm"
      >
      <description-html>
         <![CDATA[The vm that is already locked, this can be a Fault Tolerance primary or secondary VM]]>
      </description-html>
      </property>

   </fault>
   <fault name="HostAccessRestrictedToManagementServer"
      type-id="vim.fault.HostAccessRestrictedToManagementServer"
      vmodl-name="vim.fault.HostAccessRestrictedToManagementServer"
      version-id-ref="vim.version.version7"
      base-type-id="vmodl.fault.NotSupported"
      >
      <description-html>
         <![CDATA[Fault thrown when an attempt is made to adjust resource settings
  directly on a host that is being managed by VC. VC is currently the
  source of truth for all resource pools on the host.

  Examples of methods affected by this are:
  <li> create respool
  <li> update respool
  <li> change VM resource settings.]]>
      </description-html>
            <property name="managementServer" type-id-ref="java.lang.String"
      vmodl-name="managementServer"
      >
      <description-html>
         <![CDATA[Name/IP of the server currently managing this host.]]>
      </description-html>
      </property>

   </fault>
   <fault name="HostInventoryFull"
      type-id="vim.fault.HostInventoryFull"
      vmodl-name="vim.fault.HostInventoryFull"
      version-id-ref="vim.version.version2"
      base-type-id="vmodl.fault.NotEnoughLicenses"
      >
      <description-html>
         <![CDATA[A HostInventoryFull is thrown if the inventory has reach the max capacity of hosts.]]>
      </description-html>
            <property name="capacity" type-id-ref="INT"
      vmodl-name="capacity"
      >
      </property>

   </fault>
   <fault name="InUseFeatureManipulationDisallowed"
      type-id="vim.fault.InUseFeatureManipulationDisallowed"
      vmodl-name="vim.fault.InUseFeatureManipulationDisallowed"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.fault.NotEnoughLicenses"
      >
      <description-html>
         <![CDATA[A InUseFeatureManipulationDisallowed fault is thrown if an Vim.LicenseAssignmentManager.SetFeatureInUse or Vim.LicenseAssignmentManager.ResetFeatureInUse call can not complete because a feature is not available or the manipulation is not allowed.]]>
      </description-html>
   </fault>
   <fault name="IncompatibleSetting"
      type-id="vim.fault.IncompatibleSetting"
      vmodl-name="vim.fault.IncompatibleSetting"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.fault.InvalidArgument"
      >
      <description-html>
         <![CDATA[Thrown when two parameters in the customization settings conflict with each other.
  For example, a client may not specify both a Workgroup and a DomainName.]]>
      </description-html>
            <property name="conflictingProperty" type-id-ref="vmodl.PropertyPath"
      vmodl-name="conflictingProperty"
      >
      <description-html>
         <![CDATA[The name of the setting that is conflicting.]]>
      </description-html>
      </property>

   </fault>
   <fault name="IncorrectHostInformation"
      type-id="vim.fault.IncorrectHostInformation"
      vmodl-name="vim.fault.IncorrectHostInformation"
      version-id-ref="vim.version.version2"
      base-type-id="vmodl.fault.NotEnoughLicenses"
      >
      <description-html>
         <![CDATA[A IncorrectHostInformation is thrown if the host does not provide the information
 needed to acquire the correct set of licenses.]]>
      </description-html>
   </fault>
   <fault name="InvalidDasConfigArgument"
      type-id="vim.fault.InvalidDasConfigArgument"
      vmodl-name="vim.fault.InvalidDasConfigArgument"
      version-id-ref="vim.version.version8"
      base-type-id="vmodl.fault.InvalidArgument"
      >
      <description-html>
         <![CDATA[This fault is thrown when an attempt is made to configure an HA cluster with
 invalid argument.]]>
      </description-html>
            <property name="entry" type-id-ref="java.lang.String"
      vmodl-name="entry"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The entry for the invalid argument]]>
      </description-html>
      </property>

            <property name="clusterName" type-id-ref="java.lang.String"
      vmodl-name="clusterName"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Name of the cluster to be configured]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.fault.InvalidDasConfigArgument.EntryForInvalidArgument</nested-type-id-ref>
   </fault>
   <fault name="InvalidDasRestartPriorityForFtVm"
      type-id="vim.fault.InvalidDasRestartPriorityForFtVm"
      vmodl-name="vim.fault.InvalidDasRestartPriorityForFtVm"
      version-id-ref="vim.version.version6"
      base-type-id="vmodl.fault.InvalidArgument"
      >
      <description-html>
         <![CDATA[This fault is thrown when an attempt is made to set the DAS restart
 priority of a FT VM to disabled.]]>
      </description-html>
            <property name="vm" type-id-ref="vim.VirtualMachine"
      vmodl-name="vm"
      >
      <description-html>
         <![CDATA[The virtual machine]]>
      </description-html>
      </property>

            <property name="vmName" type-id-ref="java.lang.String"
      vmodl-name="vmName"
      >
      <description-html>
         <![CDATA[The name of the virtual machine]]>
      </description-html>
      </property>

   </fault>
   <fault name="InvalidDrsBehaviorForFtVm"
      type-id="vim.fault.InvalidDrsBehaviorForFtVm"
      vmodl-name="vim.fault.InvalidDrsBehaviorForFtVm"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.fault.InvalidArgument"
      >
      <description-html>
         <![CDATA[This fault is thrown when an attempt is made to set the DRS behavior
 of an FT VM to an unsupported value. Currently, the only supported
 behavior is <b>DRS Disabled</b>.]]>
      </description-html>
            <property name="vm" type-id-ref="vim.VirtualMachine"
      vmodl-name="vm"
      >
      <description-html>
         <![CDATA[The virtual machine]]>
      </description-html>
      </property>

            <property name="vmName" type-id-ref="java.lang.String"
      vmodl-name="vmName"
      >
      <description-html>
         <![CDATA[The name of the virtual machine]]>
      </description-html>
      </property>

   </fault>
   <fault name="InvalidEditionLicense"
      type-id="vim.fault.InvalidEditionLicense"
      vmodl-name="vim.fault.InvalidEditionLicense"
      version-id-ref="vim.version.version2"
      base-type-id="vmodl.fault.NotEnoughLicenses"
      >
      <description-html>
         <![CDATA[An ExpiredEditionLicense fault is thrown if an attempt to acquire an Edition license
 'feature failed for count 'count'.]]>
      </description-html>
            <property name="feature" type-id-ref="java.lang.String"
      vmodl-name="feature"
      >
      </property>

   </fault>
   <fault name="InvalidIndexArgument"
      type-id="vim.fault.InvalidIndexArgument"
      vmodl-name="vim.fault.InvalidIndexArgument"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.fault.InvalidArgument"
      >
      <description-html>
         <![CDATA[An InvalidIndexArgument exception is thrown if the
  index was not found]]>
      </description-html>
            <property name="key" type-id-ref="java.lang.String"
      vmodl-name="key"
      >
      <description-html>
         <![CDATA[Value of index that was not found]]>
      </description-html>
      </property>

   </fault>
   <fault name="InvalidProfileReferenceHost"
      type-id="vim.fault.InvalidProfileReferenceHost"
      vmodl-name="vim.fault.InvalidProfileReferenceHost"
      version-id-ref="vim.version.version7"
      base-type-id="vmodl.RuntimeFault"
      >
      <description-html>
         <![CDATA[A InvalidProfileReferenceHost fault is thrown when a valid host is not
 associated with a profile in the Virtual Center inventory. This could
 be because there is no host assciated with the profile or because the
 associated host is incompatible with the profile.]]>
      </description-html>
            <property name="reason" type-id-ref="java.lang.String"
      vmodl-name="reason"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The reason for the invalid reference host if known.]]>
      </description-html>
      </property>

            <property name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The incompatible host if associated with the profile.]]>
      </description-html>
      </property>

            <property name="profile" type-id-ref="vim.profile.Profile"
      vmodl-name="profile"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The profile with the invalid or missing reference host.]]>
      </description-html>
      </property>

            <property name="profileName" type-id-ref="java.lang.String"
      vmodl-name="profileName"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The profile name: the replacement of the member above.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.fault.InvalidProfileReferenceHost.Reason</nested-type-id-ref>
   </fault>
   <fault name="InventoryHasStandardAloneHosts"
      type-id="vim.fault.InventoryHasStandardAloneHosts"
      vmodl-name="vim.fault.InventoryHasStandardAloneHosts"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.fault.NotEnoughLicenses"
      >
      <description-html>
         <![CDATA[A InventoryHasStandardAloneHosts fault is thrown if an assignment operation tries to downgrade a license that does have allow hosts licensed with StandardAlone license in the inventory.]]>
      </description-html>
            <property name="hosts" type-id-ref="java.lang.String"
      vmodl-name="hosts"
      is-array="true"
      >
      </property>

   </fault>
   <fault name="LicenseAssignmentFailed"
      type-id="vim.fault.LicenseAssignmentFailed"
      vmodl-name="vim.fault.LicenseAssignmentFailed"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.RuntimeFault"
      >
      <description-html>
         <![CDATA[A  LicenseAssignmentFailed fault is thrown when VirtualCenter
 fails to assign a license to an entity.]]>
      </description-html>
            <property name="reason" type-id-ref="java.lang.String"
      vmodl-name="reason"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The reason why the assignment failed, if known.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.fault.LicenseAssignmentFailed.Reason</nested-type-id-ref>
   </fault>
   <fault name="LicenseDowngradeDisallowed"
      type-id="vim.fault.LicenseDowngradeDisallowed"
      vmodl-name="vim.fault.LicenseDowngradeDisallowed"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.fault.NotEnoughLicenses"
      >
      <description-html>
         <![CDATA[A LicenseDowngradeDisallowed fault is thrown if an assignment operation tries to downgrade a license that does have certain licensed features which are in use.]]>
      </description-html>
            <property name="edition" type-id-ref="java.lang.String"
      vmodl-name="edition"
      >
      </property>

            <property name="entityId" type-id-ref="java.lang.String"
      vmodl-name="entityId"
      >
      </property>

            <property name="features" type-id-ref="vmodl.KeyAnyValue"
      vmodl-name="features"
      is-array="true"
      >
      <description-html>
         <![CDATA[List of conflicting features that prevent
 downgrade]]>
      </description-html>
      </property>

   </fault>
   <fault name="LicenseExpired"
      type-id="vim.fault.LicenseExpired"
      vmodl-name="vim.fault.LicenseExpired"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.fault.NotEnoughLicenses"
      >
      <description-html>
         <![CDATA[A LicenseExpired fault is thrown if it an operation is unsuccessful because the license used for the operation has expired.]]>
      </description-html>
            <property name="licenseKey" type-id-ref="java.lang.String"
      vmodl-name="licenseKey"
      >
      <description-html>
         <![CDATA[License key that has expired]]>
      </description-html>
      </property>

   </fault>
   <fault name="LicenseKeyEntityMismatch"
      type-id="vim.fault.LicenseKeyEntityMismatch"
      vmodl-name="vim.fault.LicenseKeyEntityMismatch"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.fault.NotEnoughLicenses"
      >
      <description-html>
         <![CDATA[A LicenseKeyEntityMismatch fault is thrown if an assignment operation tries to assign a license that does not apply to an entity. For example assigning a host license to VirtualCenter.]]>
      </description-html>
   </fault>
   <fault name="LicenseRestricted"
      type-id="vim.fault.LicenseRestricted"
      vmodl-name="vim.fault.LicenseRestricted"
      version-id-ref="vim.version.version2"
      base-type-id="vmodl.fault.NotEnoughLicenses"
      >
      <description-html>
         <![CDATA[This fault is thrown if the required licenses were unable to be checked
 out due to a restriction in the option file of the license server.]]>
      </description-html>
   </fault>
   <fault name="LicenseSourceUnavailable"
      type-id="vim.fault.LicenseSourceUnavailable"
      vmodl-name="vim.fault.LicenseSourceUnavailable"
      version-id-ref="vim.version.version2"
      base-type-id="vmodl.fault.NotEnoughLicenses"
      >
      <description-html>
         <![CDATA[A LicenseSourceUnavailable is thrown if it is unable to check out a license because
 the license source is unavailable.]]>
      </description-html>
            <property name="licenseSource" type-id-ref="vim.LicenseManager.LicenseSource"
      vmodl-name="licenseSource"
      >
      <description-html>
         <![CDATA[License source]]>
      </description-html>
      </property>

   </fault>
   <fault name="MethodAlreadyDisabledFault"
      type-id="vim.fault.MethodAlreadyDisabledFault"
      vmodl-name="vim.fault.MethodAlreadyDisabledFault"
      version-id-ref="vim.version.version6"
      base-type-id="vmodl.RuntimeFault"
      >
      <description-html>
         <![CDATA[A MethodAlreadyDisabledFault fault is thrown when an attempt
  is made to disable a method that is already disabled.]]>
      </description-html>
            <property name="sourceId" type-id-ref="java.lang.String"
      vmodl-name="sourceId"
      >
      </property>

   </fault>
   <fault name="MethodDisabled"
      type-id="vim.fault.MethodDisabled"
      vmodl-name="vim.fault.MethodDisabled"
      version-id-ref="vim.version.version2"
      internal-before-version-id-ref="vim.version.version5"
      base-type-id="vmodl.RuntimeFault"
      >
      <description-html>
         <![CDATA[A MethodDisabled fault is thrown if a disabled method
  is invoked by the client. The method denote an invalid state
  operation or may have been explicitly disabled.]]>
      </description-html>
            <property name="source" type-id-ref="java.lang.String"
      vmodl-name="source"
      version-id-ref="vim.version.version6"
      is-optional="true"
      >
      </property>

   </fault>
   <fault name="NoLicenseServerConfigured"
      type-id="vim.fault.NoLicenseServerConfigured"
      vmodl-name="vim.fault.NoLicenseServerConfigured"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.fault.NotEnoughLicenses"
      >
      <description-html>
         <![CDATA[The NoLicenseServerConfigured fault is thrown when there is no
 valid license server configured for the system and the system
 is not in evaluation mode. Any operation occurs that requires
 evaluation license or a valid license will throw the
 NoLicenseServerConfigured. This can happen with the new licensing
 scheme that is a hybrid of flex-based licensing and serial number
 based licensing. There can be cases where VirtualCenter is licensed
 by a serial number and there is no need for a flex license server.
 These cases are valid as long as no operation that requires flex-
 based license server is invoked, for example, adding a pre-4.0
 host that requires flex licenses. If however, such an operation is
 invoked, the NoLicenseServerConfigured fault is thrown.]]>
      </description-html>
   </fault>
   <fault name="NoPermission"
      type-id="vim.fault.NoPermission"
      vmodl-name="vim.fault.NoPermission"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.fault.SecurityError"
      >
      <description-html>
         <![CDATA[Thrown when an operation is denied because of a privilege
   not held on a managed object.]]>
      </description-html>
            <property name="object" type-id-ref="vmodl.ManagedObject"
      vmodl-name="object"
      >
      <description-html>
         <![CDATA[The managed object on which permission is required]]>
      </description-html>
      </property>

            <property name="privilegeId" type-id-ref="java.lang.String"
      vmodl-name="privilegeId"
      >
      <description-html>
         <![CDATA[The privilege identifier required]]>
      </description-html>
      </property>

   </fault>
   <fault name="NotAuthenticated"
      type-id="vim.fault.NotAuthenticated"
      vmodl-name="vim.fault.NotAuthenticated"
      version-id-ref="vim.version.version2"
      base-type-id="vim.fault.NoPermission"
      >
      <description-html>
         <![CDATA[Thrown when an operation is denied because the session
   has not yet successfully logged in.]]>
      </description-html>
   </fault>
   <fault name="OperationDisallowedOnHost"
      type-id="vim.fault.OperationDisallowedOnHost"
      vmodl-name="vim.fault.OperationDisallowedOnHost"
      version-id-ref="vim.version.version7"
      base-type-id="vmodl.RuntimeFault"
      >
      <description-html>
         <![CDATA[An OperationDisallowedOnHost is thrown if an operation is diasllowed
  on host when a direct connection is used.

  Examples for such operations include VM powering on / memory hot-plug
  which could potentially violate hard-enforcement licenses if allowed
  on host.

  The functionality these operations provide is still available, but only
  through calls to an external entity.]]>
      </description-html>
   </fault>
   <fault name="RestrictedByAdministrator"
      type-id="vim.fault.RestrictedByAdministrator"
      vmodl-name="vim.fault.RestrictedByAdministrator"
      version-id-ref="vim.version.version10"
      base-type-id="vmodl.RuntimeFault"
      >
      <description-html>
         <![CDATA[This fault is thrown when an operation cannot complete because of some
 restriction set by the server administrator.]]>
      </description-html>
            <property name="details" type-id-ref="java.lang.String"
      vmodl-name="details"
      >
      </property>

   </fault>
   <fault name="RestrictedVersion"
      type-id="vim.fault.RestrictedVersion"
      vmodl-name="vim.fault.RestrictedVersion"
      version-id-ref="vim.version.version2"
      base-type-id="vmodl.fault.SecurityError"
      >
      <description-html>
         <![CDATA[Thrown when the caller is not permitted to perform the specified
   operation due to product versioning restrictions.]]>
      </description-html>
   </fault>
   <fault name="SolutionUserRequired"
      type-id="vim.fault.SolutionUserRequired"
      vmodl-name="vim.fault.SolutionUserRequired"
      version-id-ref="vim.version.v7_0"
      base-type-id="vmodl.fault.SecurityError"
      >
      <description-html>
         <![CDATA[Thrown when an operation is denied because the entity
   invoking it is not a Solution User.]]>
      </description-html>
   </fault>
   <fault name="ThirdPartyLicenseAssignmentFailed"
      type-id="vim.fault.ThirdPartyLicenseAssignmentFailed"
      vmodl-name="vim.fault.ThirdPartyLicenseAssignmentFailed"
      version-id-ref="vim.version.version7"
      base-type-id="vmodl.RuntimeFault"
      >
      <description-html>
         <![CDATA[A ThirdPartyLicenseAssignmentFailed fault is thrown when
 the license assignment to a 3rd party module fails.

 The 3rd-party modules are installed and ran on ESX hosts,
 so this fault provides both host and module IDs.]]>
      </description-html>
            <property name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      >
      <description-html>
         <![CDATA[The ESX host where 3rd party license was applied.]]>
      </description-html>
      </property>

            <property name="module" type-id-ref="java.lang.String"
      vmodl-name="module"
      >
      <description-html>
         <![CDATA[The asset-id of 3rd party module]]>
      </description-html>
      </property>

            <property name="reason" type-id-ref="java.lang.String"
      vmodl-name="reason"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The reason why the assignment failed, if known.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.fault.ThirdPartyLicenseAssignmentFailed.Reason</nested-type-id-ref>
   </fault>
   <fault name="VAppOperationInProgress"
      type-id="vim.fault.VAppOperationInProgress"
      vmodl-name="vim.fault.VAppOperationInProgress"
      version-id-ref="vim.version.version7"
      base-type-id="vmodl.RuntimeFault"
      >
      <description-html>
         <![CDATA[This fault is thrown when an operation is attempted on a target where
  a vApp operation is already in progress. E.g. when trying to move a
  virtual machine from a vApp that is being powered on.]]>
      </description-html>
   </fault>
   <fault name="VimFault"
      type-id="vim.fault.VimFault"
      vmodl-name="vim.fault.VimFault"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.MethodFault"
      >
      <description-html>
         <![CDATA[The common base type for all virtual infrastructure management
   exceptions.]]>
      </description-html>
   </fault>
   <fault name="VmConfigFault"
      type-id="vim.fault.VmConfigFault"
      vmodl-name="vim.fault.VmConfigFault"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.VimFault"
      >
      <description-html>
         <![CDATA[Base for configuration / environment issues that can be thrown when powering on or
  changing the configuration of a virtual machine. Subclasses of this fault is also
  used as recent why a migration can fail.]]>
      </description-html>
   </fault>
   <fault name="VmConfigIncompatibleForFaultTolerance"
      type-id="vim.fault.VmConfigIncompatibleForFaultTolerance"
      vmodl-name="vim.fault.VmConfigIncompatibleForFaultTolerance"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.VmConfigFault"
      >
      <description-html>
         <![CDATA[Thrown when a virtual machine's existing or requested configuration is
  incompatible for fault tolerance.]]>
      </description-html>
            <property name="fault" type-id-ref="vmodl.LocalizedMethodFault"
      vmodl-name="fault"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Fault indicating the specific configuration issue. This is typically
  a subclass of VirtualHardwareCompatibilityIssue.]]>
      </description-html>
      </property>

   </fault>
   <fault name="VmConfigIncompatibleForRecordReplay"
      type-id="vim.fault.VmConfigIncompatibleForRecordReplay"
      vmodl-name="vim.fault.VmConfigIncompatibleForRecordReplay"
      version-id-ref="vim.version.version5"
      is-deprecated="true"
      base-type-id="vim.fault.VmConfigFault"
      >
      <description-html>
         <![CDATA[Thrown when a virtual machine's existing or requested configuration is
  incompatible for record and replay.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[as of vSphere API 6.0]]>
      </deprecated-html>
            <property name="fault" type-id-ref="vmodl.LocalizedMethodFault"
      vmodl-name="fault"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Fault indicating the specific configuration issue. This is typically
  a subclass of VirtualHardwareCompatibilityIssue.]]>
      </description-html>
      </property>

   </fault>
   <fault name="VmFaultToleranceIssue"
      type-id="vim.fault.VmFaultToleranceIssue"
      vmodl-name="vim.fault.VmFaultToleranceIssue"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.VimFault"
      >
      <description-html>
         <![CDATA[Base object type for issues that can occur during operations
  related to fault tolerance protection for virtual machines.]]>
      </description-html>
   </fault>
   <fault name="VmFaultToleranceOpIssuesList"
      type-id="vim.fault.VmFaultToleranceOpIssuesList"
      vmodl-name="vim.fault.VmFaultToleranceOpIssuesList"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.VmFaultToleranceIssue"
      >
      <description-html>
         <![CDATA[Container for a list of configuration issues that can occur during
  operations related to fault tolerance protection for virtual machines.]]>
      </description-html>
            <property name="errors" type-id-ref="vmodl.LocalizedMethodFault"
      vmodl-name="errors"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[A list of faults representing errors]]>
      </description-html>
      </property>

            <property name="warnings" type-id-ref="vmodl.LocalizedMethodFault"
      vmodl-name="warnings"
      is-array="true"
      is-optional="true"
      >
      </property>

   </fault>
   <fault name="VmHostAffinityRuleViolation"
      type-id="vim.fault.VmHostAffinityRuleViolation"
      vmodl-name="vim.fault.VmHostAffinityRuleViolation"
      version-id-ref="vim.version.version6"
      base-type-id="vim.fault.VmConfigFault"
      >
      <description-html>
         <![CDATA[The virtual machine if powered on or VMotioned, would violate a VM-Host affinity rule.]]>
      </description-html>
            <property name="vmName" type-id-ref="java.lang.String"
      vmodl-name="vmName"
      >
      <description-html>
         <![CDATA[The vm that can not be powered on or VMotioned without violating a rule.]]>
      </description-html>
      </property>

            <property name="hostName" type-id-ref="java.lang.String"
      vmodl-name="hostName"
      >
      <description-html>
         <![CDATA[The host that the virtual machine can not be powered on without violating a rule.]]>
      </description-html>
      </property>

   </fault>
   <fault name="VmLimitLicense"
      type-id="vim.fault.VmLimitLicense"
      vmodl-name="vim.fault.VmLimitLicense"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.fault.NotEnoughLicenses"
      >
      <description-html>
         <![CDATA[A VmLimitLicense fault is thrown if powering on the virtual
  machine would exceed the maximum number of running virtual
  machines allowed.]]>
      </description-html>
            <property name="limit" type-id-ref="INT"
      vmodl-name="limit"
      >
      <description-html>
         <![CDATA[The maximum number of running virtual machines
 limit.]]>
      </description-html>
      </property>

   </fault>
   <fault name="VmMetadataManagerFault"
      type-id="vim.fault.VmMetadataManagerFault"
      vmodl-name="vim.fault.VmMetadataManagerFault"
      version-id-ref="vim.version.version9"
      base-type-id="vim.fault.VimFault"
      >
      <description-html>
         <![CDATA[This fault indicates that some error has occurred during the processing of
 of a MetadataManager operation. This may be subclassed by a more specific
 fault.]]>
      </description-html>
   </fault>
   <fault name="VmMonitorIncompatibleForFaultTolerance"
      type-id="vim.fault.VmMonitorIncompatibleForFaultTolerance"
      vmodl-name="vim.fault.VmMonitorIncompatibleForFaultTolerance"
      version-id-ref="vim.version.version6"
      base-type-id="vim.fault.VimFault"
      >
      <description-html>
         <![CDATA[Thrown when turning on Fault Tolerance protection on a running virtual machine
  if the virtual machine is running in a monitor mode that is incompatible.]]>
      </description-html>
   </fault>
   <fault name="VmToolsUpgradeFault"
      type-id="vim.fault.VmToolsUpgradeFault"
      vmodl-name="vim.fault.VmToolsUpgradeFault"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.VimFault"
      >
      <description-html>
         <![CDATA[A base fault to indicate that something went wrong when upgrading tools.]]>
      </description-html>
   </fault>
   <fault name="VmValidateMaxDevice"
      type-id="vim.fault.VmValidateMaxDevice"
      vmodl-name="vim.fault.VmValidateMaxDevice"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.VimFault"
      >
            <property name="device" type-id-ref="java.lang.String"
      vmodl-name="device"
      >
      <description-html>
         <![CDATA[The device]]>
      </description-html>
      </property>

            <property name="max" type-id-ref="INT"
      vmodl-name="max"
      >
      <description-html>
         <![CDATA[max count for the device]]>
      </description-html>
      </property>

            <property name="count" type-id-ref="INT"
      vmodl-name="count"
      >
      <description-html>
         <![CDATA[number of devices found in vim.vm.ConfigSpec]]>
      </description-html>
      </property>

   </fault>
   <fault name="VramLimitLicense"
      type-id="vim.fault.VramLimitLicense"
      vmodl-name="vim.fault.VramLimitLicense"
      version-id-ref="vim.version.version7"
      base-type-id="vmodl.fault.NotEnoughLicenses"
      >
      <description-html>
         <![CDATA[A VramLimitLicense fault is thrown if executing an operation
  would result in exceeding maximum allowed vRAM amount.

  For example, this could happen when powering on a VM,
  hot-plugging memory into a running VMm, etc.]]>
      </description-html>
            <property name="limit" type-id-ref="INT"
      vmodl-name="limit"
      >
      <description-html>
         <![CDATA[The maximum allowed vRAM amount.]]>
      </description-html>
      </property>

   </fault>
   <fault name="VsanFault"
      type-id="vim.fault.VsanFault"
      vmodl-name="vim.fault.VsanFault"
      version-id-ref="vim.version.version9"
      base-type-id="vim.fault.VimFault"
      >
      <description-html>
         <![CDATA[Base exception class for VSAN-specific faults raised for host
 or cluster operations.<br>See <a href="vim.host.VsanSystem.html">HostVsanSystem</a><br>See <a href="vim.ComputeResource.html#reconfigureEx">ReconfigureComputeResource_Task</a><br>]]>
      </description-html>
   </fault>
   <fault name="WipeDiskFault"
      type-id="vim.fault.WipeDiskFault"
      vmodl-name="vim.fault.WipeDiskFault"
      version-id-ref="vim.version.version8"
      base-type-id="vim.fault.VimFault"
      >
      <description-html>
         <![CDATA[This exception is thrown when VirtualMachine.wipeDisk
  encounters an error]]>
      </description-html>
   </fault>
   <fault name="ActiveDirectoryFault"
      type-id="vim.fault.ActiveDirectoryFault"
      vmodl-name="vim.fault.ActiveDirectoryFault"
      version-id-ref="vim.version.version6"
      base-type-id="vim.fault.VimFault"
      >
      <description-html>
         <![CDATA[Base fault for Active Directory related problems.]]>
      </description-html>
            <property name="errorCode" type-id-ref="INT"
      vmodl-name="errorCode"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The error code reported by the Active Directory API.]]>
      </description-html>
      </property>

   </fault>
   <fault name="AlreadyExists"
      type-id="vim.fault.AlreadyExists"
      vmodl-name="vim.fault.AlreadyExists"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.VimFault"
      >
      <description-html>
         <![CDATA[An AlreadyExists fault is thrown when an attempt is made to add an element
  to a collection, if the element's key, name, or identifier already exists in that
   collection.]]>
      </description-html>
            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      is-optional="true"
      >
      </property>

   </fault>
   <fault name="AlreadyUpgraded"
      type-id="vim.fault.AlreadyUpgraded"
      vmodl-name="vim.fault.AlreadyUpgraded"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.VimFault"
      >
      <description-html>
         <![CDATA[An AlreadyUpgraded fault is thrown when an attempt is made to upgrade the
  virtual hardware of a Virtual machine whose virtual hardware is already
  up-to-date.]]>
      </description-html>
   </fault>
   <fault name="AnswerFileUpdateFailed"
      type-id="vim.fault.AnswerFileUpdateFailed"
      vmodl-name="vim.fault.AnswerFileUpdateFailed"
      version-id-ref="vim.version.version7"
      base-type-id="vim.fault.VimFault"
      >
      <description-html>
         <![CDATA[Could not update the answer file as it has invalid inputs.]]>
      </description-html>
            <property name="failure" type-id-ref="vim.fault.AnswerFileUpdateFailed.UpdateFailure"
      vmodl-name="failure"
      is-array="true"
      >
      <description-html>
         <![CDATA[Failures encountered during answer file update]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.fault.AnswerFileUpdateFailed.UpdateFailure</nested-type-id-ref>
   </fault>
   <fault name="AuthMinimumAdminPermission"
      type-id="vim.fault.AuthMinimumAdminPermission"
      vmodl-name="vim.fault.AuthMinimumAdminPermission"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.VimFault"
      >
      <description-html>
         <![CDATA[This fault is thrown when the requested change
  would result in a loss of full administrative privileges
  for at least one user or group.]]>
      </description-html>
   </fault>
   <fault name="CannotAccessLocalSource"
      type-id="vim.fault.CannotAccessLocalSource"
      vmodl-name="vim.fault.CannotAccessLocalSource"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.VimFault"
      >
      <description-html>
         <![CDATA[An CannotAccessLocalSourceFault exception is thrown when a
 an attempt is made to upload license content
 and the local source cannot be accesed.]]>
      </description-html>
   </fault>
   <fault name="CannotAccessVmComponent"
      type-id="vim.fault.CannotAccessVmComponent"
      vmodl-name="vim.fault.CannotAccessVmComponent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.VmConfigFault"
      >
      <description-html>
         <![CDATA[One of the virtual machine's components is not accessible on the execution host.
 This is a base class. Subclasses will encode the type of component that is not
 accessible.]]>
      </description-html>
   </fault>
   <fault name="CannotAccessVmConfig"
      type-id="vim.fault.CannotAccessVmConfig"
      vmodl-name="vim.fault.CannotAccessVmConfig"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.CannotAccessVmComponent"
      >
      <description-html>
         <![CDATA[One or more of the virtual machine's configuration files are not accessible.]]>
      </description-html>
            <property name="reason" type-id-ref="vmodl.LocalizedMethodFault"
      vmodl-name="reason"
      >
      <description-html>
         <![CDATA[Contains the reason why the VM file could not be found. This is typically
  a FileFault.]]>
      </description-html>
      </property>

   </fault>
   <fault name="CannotAccessVmDevice"
      type-id="vim.fault.CannotAccessVmDevice"
      vmodl-name="vim.fault.CannotAccessVmDevice"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.CannotAccessVmComponent"
      >
      <description-html>
         <![CDATA[One of the virtual machine's devices uses a backing that is not accessible
 on the host.
 <p>
 Following is a discussion of this fault's use in migration validation.
 </p>
 This is an error if the device is currently connected  and a warning
 otherwise. Devices that can be disconnected can only be connected if the virtual
 machine is powered on.
 <p>
 The usage of this fault is slightly different if the backing of a device is
 inherently host-local, and therefore not shared or globally named among
 hosts. (Examples of such backings: physical CD-ROM drive, physical serial
 port.) If a device with such a backing is currently connected, that will
 be a migration error. If the device is disconnected, there will be a
 warning if no backing with the same name exists on the destination host.
 If the device is disconnected and a backing with the same name exists on
 the destination host, this is neither a warning nor an error case, even
 though the destination host's backing is not the same instance as the
 source host's. It is assumed that use of the host-local backing is what is
 desired for the device.]]>
      </description-html>
            <property name="device" type-id-ref="java.lang.String"
      vmodl-name="device"
      >
      <description-html>
         <![CDATA[The label of the device.]]>
      </description-html>
      </property>

            <property name="backing" type-id-ref="java.lang.String"
      vmodl-name="backing"
      >
      <description-html>
         <![CDATA[The backing of the device.]]>
      </description-html>
      </property>

            <property name="connected" type-id-ref="BOOLEAN"
      vmodl-name="connected"
      >
      <description-html>
         <![CDATA[The connected/disconnected state of the device.]]>
      </description-html>
      </property>

   </fault>
   <fault name="CannotAccessVmDisk"
      type-id="vim.fault.CannotAccessVmDisk"
      vmodl-name="vim.fault.CannotAccessVmDisk"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.CannotAccessVmDevice"
      >
      <description-html>
         <![CDATA[One of the virtual machine's virtual disks is not accessible.]]>
      </description-html>
            <property name="fault" type-id-ref="vmodl.LocalizedMethodFault"
      vmodl-name="fault"
      >
      <description-html>
         <![CDATA[The reason why the disk could not be accessed]]>
      </description-html>
      </property>

   </fault>
   <fault name="CannotChangeDrsBehaviorForFtSecondary"
      type-id="vim.fault.CannotChangeDrsBehaviorForFtSecondary"
      vmodl-name="vim.fault.CannotChangeDrsBehaviorForFtSecondary"
      version-id-ref="vim.version.version6"
      base-type-id="vim.fault.VmFaultToleranceIssue"
      >
      <description-html>
         <![CDATA[This fault is used to report that the DRS behavior cannot be modified
 for a FT secondary virtual machine]]>
      </description-html>
            <property name="vm" type-id-ref="vim.VirtualMachine"
      vmodl-name="vm"
      >
      <description-html>
         <![CDATA[The virtual machine whose behavior cannot be modified]]>
      </description-html>
      </property>

            <property name="vmName" type-id-ref="java.lang.String"
      vmodl-name="vmName"
      >
      <description-html>
         <![CDATA[Name of the virtual machine]]>
      </description-html>
      </property>

   </fault>
   <fault name="CannotChangeHaSettingsForFtSecondary"
      type-id="vim.fault.CannotChangeHaSettingsForFtSecondary"
      vmodl-name="vim.fault.CannotChangeHaSettingsForFtSecondary"
      version-id-ref="vim.version.version6"
      base-type-id="vim.fault.VmFaultToleranceIssue"
      >
      <description-html>
         <![CDATA[This fault is used to report that the HA settings cannot be modified
 for a FT secondary virtual machine]]>
      </description-html>
            <property name="vm" type-id-ref="vim.VirtualMachine"
      vmodl-name="vm"
      >
      <description-html>
         <![CDATA[The FT secondary virtual machine whose behavior cannot be modified]]>
      </description-html>
      </property>

            <property name="vmName" type-id-ref="java.lang.String"
      vmodl-name="vmName"
      >
      <description-html>
         <![CDATA[Name of the FT secondary virtual machine]]>
      </description-html>
      </property>

   </fault>
   <fault name="CannotChangeVsanClusterUuid"
      type-id="vim.fault.CannotChangeVsanClusterUuid"
      vmodl-name="vim.fault.CannotChangeVsanClusterUuid"
      version-id-ref="vim.version.version9"
      base-type-id="vim.fault.VsanFault"
      >
      <description-html>
         <![CDATA[Fault thrown for cases that a VSAN cluster UUID may not be changed.

 For example, the VSAN cluster UUID for a host may not be changed so long
 as that host is enabled for VSAN.

 The VSAN cluster UUID for a given <a href="vim.ClusterComputeResource.html">ClusterComputeResource</a> may
 not be changed so long as that vim.ClusterComputeResource is enabled for
 VSAN.<br>See <a href="vim.host.VsanSystem.html#update">UpdateVsan_Task</a><br>See <a href="vim.ComputeResource.html#reconfigureEx">ReconfigureComputeResource_Task</a><br>]]>
      </description-html>
   </fault>
   <fault name="CannotChangeVsanNodeUuid"
      type-id="vim.fault.CannotChangeVsanNodeUuid"
      vmodl-name="vim.fault.CannotChangeVsanNodeUuid"
      version-id-ref="vim.version.version9"
      base-type-id="vim.fault.VsanFault"
      >
      <description-html>
         <![CDATA[Fault thrown for cases that a VSAN node UUID may not be changed.

 For example, the VSAN node UUID for a host may not be changed so long as
 that host is enabled for VSAN.<br>See <a href="vim.host.VsanSystem.html#update">UpdateVsan_Task</a><br>See <a href="vim.ComputeResource.html#reconfigureEx">ReconfigureComputeResource_Task</a><br>]]>
      </description-html>
   </fault>
   <fault name="CannotComputeFTCompatibleHosts"
      type-id="vim.fault.CannotComputeFTCompatibleHosts"
      vmodl-name="vim.fault.CannotComputeFTCompatibleHosts"
      version-id-ref="vim.version.version10"
      base-type-id="vim.fault.VmFaultToleranceIssue"
      >
      <description-html>
         <![CDATA[This fault is used if FT compatible hosts cannot be computed for a VM]]>
      </description-html>
            <property name="vm" type-id-ref="vim.VirtualMachine"
      vmodl-name="vm"
      >
      <description-html>
         <![CDATA[The virtual machine for FT compatible hosts is being computed]]>
      </description-html>
      </property>

            <property name="vmName" type-id-ref="java.lang.String"
      vmodl-name="vmName"
      >
      <description-html>
         <![CDATA[Name of the virtual machine]]>
      </description-html>
      </property>

   </fault>
   <fault name="CannotDisableSnapshot"
      type-id="vim.fault.CannotDisableSnapshot"
      vmodl-name="vim.fault.CannotDisableSnapshot"
      version-id-ref="vim.version.version2"
      base-type-id="vim.fault.VmConfigFault"
      >
      <description-html>
         <![CDATA[Fault thrown when an attempt is made to disable snapshots on a virtual
 machine which has a snapshot.  To disable the snapshot feature, the
 virtual machine must not currently have a snapshot.]]>
      </description-html>
   </fault>
   <fault name="CannotDisconnectHostWithFaultToleranceVm"
      type-id="vim.fault.CannotDisconnectHostWithFaultToleranceVm"
      vmodl-name="vim.fault.CannotDisconnectHostWithFaultToleranceVm"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.VimFault"
      >
      <description-html>
         <![CDATA[This fault is thrown when an attempt is made to disconnect a host, which
  has one or more fault tolerance vms and is not in maintenance mode.]]>
      </description-html>
            <property name="hostName" type-id-ref="java.lang.String"
      vmodl-name="hostName"
      >
      <description-html>
         <![CDATA[The name of the host to be disconnected]]>
      </description-html>
      </property>

   </fault>
   <fault name="CannotEnableVmcpForCluster"
      type-id="vim.fault.CannotEnableVmcpForCluster"
      vmodl-name="vim.fault.CannotEnableVmcpForCluster"
      version-id-ref="vim.version.version10"
      base-type-id="vim.fault.VimFault"
      >
      <description-html>
         <![CDATA[This fault is thrown when an attempt is made to enable VM Component Protection
  on a cluster which contains a host that does not support this feature.]]>
      </description-html>
            <property name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Report the host with APD timeout disabled.
 If the host is set it points to the host which is the reason
 for this fault i.e this host has ADPTimeout disabled.]]>
      </description-html>
      </property>

            <property name="hostName" type-id-ref="java.lang.String"
      vmodl-name="hostName"
      is-optional="true"
      >
      <description-html>
         <![CDATA[If set this reports the hostName.
 This is used for printing the host name in the
 localized message as the host may have been removed
 from the vCenter's inventory by the time localization would
 be taking place.]]>
      </description-html>
      </property>

            <property name="reason" type-id-ref="java.lang.String"
      vmodl-name="reason"
      is-optional="true"
      >
      <description-html>
         <![CDATA[This reports the reason for host not meeting the requirements
 for enabling vSphere VMCP. It can be the following reason.
 <ul>
 <li>APDTimeout disabled.</li>
 </ul>]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.fault.CannotEnableVmcpForCluster.Reason</nested-type-id-ref>
   </fault>
   <fault name="CannotMoveFaultToleranceVm"
      type-id="vim.fault.CannotMoveFaultToleranceVm"
      vmodl-name="vim.fault.CannotMoveFaultToleranceVm"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.VimFault"
      >
      <description-html>
         <![CDATA[This fault is thrown when an attempt is made to move a fault tolerance
  vm to a different resource pool or cluster.]]>
      </description-html>
            <property name="moveType" type-id-ref="java.lang.String"
      vmodl-name="moveType"
      >
      <description-html>
         <![CDATA[The type of the move]]>
      </description-html>
      </property>

            <property name="vmName" type-id-ref="java.lang.String"
      vmodl-name="vmName"
      >
      <description-html>
         <![CDATA[The virtual machine name to be moved.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.fault.CannotMoveFaultToleranceVm.MoveType</nested-type-id-ref>
   </fault>
   <fault name="CannotMoveHostWithFaultToleranceVm"
      type-id="vim.fault.CannotMoveHostWithFaultToleranceVm"
      vmodl-name="vim.fault.CannotMoveHostWithFaultToleranceVm"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.VimFault"
      >
      <description-html>
         <![CDATA[This fault is thrown when an attempt is made to move a host which has
  one or more fault tolerance vms out of the current cluster.]]>
      </description-html>
   </fault>
   <fault name="CannotMoveVsanEnabledHost"
      type-id="vim.fault.CannotMoveVsanEnabledHost"
      vmodl-name="vim.fault.CannotMoveVsanEnabledHost"
      version-id-ref="vim.version.version9"
      base-type-id="vim.fault.VsanFault"
      >
      <description-html>
         <![CDATA[Fault thrown for the case that an attempt is made to move a host which
 is enabled for VSAN into an unsuitable <a href="vim.ClusterComputeResource.html">ClusterComputeResource</a>.

 The destination vim.ClusterComputeResource may be disabled for VSAN, or
 may be using VSAN with a different cluster UUID.<br>See <a href="vim.ClusterComputeResource.html#addHost">AddHost_Task</a><br>See <a href="vim.ClusterComputeResource.html#moveHostInto">MoveHostInto_Task</a><br>See <a href="vim.ClusterComputeResource.html#moveInto">MoveInto_Task</a><br>See <a href="vim.fault.VsanClusterUuidMismatch.html">VsanClusterUuidMismatch</a><br>See <a href="vim.fault.DestinationVsanDisabled.html">DestinationVsanDisabled</a><br>]]>
      </description-html>
   </fault>
   <fault name="CannotPlaceWithoutPrerequisiteMoves"
      type-id="vim.fault.CannotPlaceWithoutPrerequisiteMoves"
      vmodl-name="vim.fault.CannotPlaceWithoutPrerequisiteMoves"
      version-id-ref="vim.version.version8"
      base-type-id="vim.fault.VimFault"
      >
      <description-html>
         <![CDATA[This fault is thrown when Storage DRS cannot recommend to place disks of
 a virtual machine without moving existing virtual disks in a
 datastore cluster.]]>
      </description-html>
   </fault>
   <fault name="CannotReconfigureVsanWhenHaEnabled"
      type-id="vim.fault.CannotReconfigureVsanWhenHaEnabled"
      vmodl-name="vim.fault.CannotReconfigureVsanWhenHaEnabled"
      version-id-ref="vim.version.version9"
      base-type-id="vim.fault.VsanFault"
      >
      <description-html>
         <![CDATA[Fault thrown for the case that an attempt is made to reconfigure VSAN
 when HA is currently enabled for a given <a href="vim.ClusterComputeResource.html">ClusterComputeResource</a>.<br>See <a href="vim.ComputeResource.html#reconfigureEx">ReconfigureComputeResource_Task</a><br>]]>
      </description-html>
   </fault>
   <fault name="CannotUseNetwork"
      type-id="vim.fault.CannotUseNetwork"
      vmodl-name="vim.fault.CannotUseNetwork"
      version-id-ref="vim.version.version9"
      base-type-id="vim.fault.VmConfigFault"
      >
      <description-html>
         <![CDATA[A network associated with the virtual machine is accessible, but it
 cannot be used for some reason.]]>
      </description-html>
            <property name="device" type-id-ref="java.lang.String"
      vmodl-name="device"
      >
      <description-html>
         <![CDATA[The label of the network device.]]>
      </description-html>
      </property>

            <property name="backing" type-id-ref="java.lang.String"
      vmodl-name="backing"
      >
      <description-html>
         <![CDATA[The backing of the network device.]]>
      </description-html>
      </property>

            <property name="connected" type-id-ref="BOOLEAN"
      vmodl-name="connected"
      >
      <description-html>
         <![CDATA[The connected/disconnected state of the device.]]>
      </description-html>
      </property>

            <property name="reason" type-id-ref="java.lang.String"
      vmodl-name="reason"
      is-localizable="true"
      >
      <description-html>
         <![CDATA[Reason describing why the network cannot be used.]]>
      </description-html>
      </property>

            <property name="network" type-id-ref="vim.Network"
      vmodl-name="network"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[A reference to the network that cannot be used]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.fault.CannotUseNetwork.Reason</nested-type-id-ref>
   </fault>
   <fault name="ConcurrentAccess"
      type-id="vim.fault.ConcurrentAccess"
      vmodl-name="vim.fault.ConcurrentAccess"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.VimFault"
      >
      <description-html>
         <![CDATA[A ConcurrentAccess fault is thrown when an operation
  fails because another operation has modified the
  datastructure.
  <p>
  For non-transactional operations, such as a recursive
  delete of a subtree of the inventory, the operation might
  fail with ConcurrentAccess if another thread has added
  a new entity to the hierarchy.]]>
      </description-html>
   </fault>
   <fault name="CpuHotPlugNotSupported"
      type-id="vim.fault.CpuHotPlugNotSupported"
      vmodl-name="vim.fault.CpuHotPlugNotSupported"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.VmConfigFault"
      >
      <description-html>
         <![CDATA[Thrown when virtual CPUs cannot be hot-added or hot-removed from
  the virtual machine.]]>
      </description-html>
   </fault>
   <fault name="CustomizationFault"
      type-id="vim.fault.CustomizationFault"
      vmodl-name="vim.fault.CustomizationFault"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.VimFault"
      >
      <description-html>
         <![CDATA[Base for exceptions that can be thrown from the customizer.]]>
      </description-html>
   </fault>
   <fault name="CustomizationPending"
      type-id="vim.fault.CustomizationPending"
      vmodl-name="vim.fault.CustomizationPending"
      version-id-ref="vim.version.version2"
      base-type-id="vim.fault.CustomizationFault"
      >
      <description-html>
         <![CDATA[A customization operation is already pending on this virtual
 machine and is awaiting power-up to complete.]]>
      </description-html>
   </fault>
   <fault name="DasConfigFault"
      type-id="vim.fault.DasConfigFault"
      vmodl-name="vim.fault.DasConfigFault"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.VimFault"
      >
      <description-html>
         <![CDATA[This fault indicates that some error has occurred during the
 configuration of the host for HA. This may be subclassed by a more specific fault.]]>
      </description-html>
            <property name="reason" type-id-ref="java.lang.String"
      vmodl-name="reason"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The reason why the HA configuration failed, if known.
 Values should come from DasConfigFaultReason.]]>
      </description-html>
      </property>

            <property name="output" type-id-ref="java.lang.String"
      vmodl-name="output"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The output (stdout/stderr) from executing the configuration.]]>
      </description-html>
      </property>

            <property name="event" type-id-ref="vim.event.Event"
      vmodl-name="event"
      version-id-ref="vim.version.version5"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The list of events containing details why the configuration failed, if known.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.fault.DasConfigFault.DasConfigFaultReason</nested-type-id-ref>
   </fault>
   <fault name="DeltaDiskFormatNotSupported"
      type-id="vim.fault.DeltaDiskFormatNotSupported"
      vmodl-name="vim.fault.DeltaDiskFormatNotSupported"
      version-id-ref="vim.version.version7"
      base-type-id="vim.fault.VmConfigFault"
      >
      <description-html>
         <![CDATA[Thrown on an attempt to use an unsupported delta disk format.]]>
      </description-html>
            <property name="datastore" type-id-ref="vim.Datastore"
      vmodl-name="datastore"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The datastores which do not support the specified format.]]>
      </description-html>
      </property>

            <property name="deltaDiskFormat" type-id-ref="java.lang.String"
      vmodl-name="deltaDiskFormat"
      >
      <description-html>
         <![CDATA[The format not supported.
  <p>
  See <a href="vim.vm.device.VirtualDisk.DeltaDiskFormat.html">DeltaDiskFormat</a>.]]>
      </description-html>
      </property>

   </fault>
   <fault name="DestinationVsanDisabled"
      type-id="vim.fault.DestinationVsanDisabled"
      vmodl-name="vim.fault.DestinationVsanDisabled"
      version-id-ref="vim.version.version9"
      base-type-id="vim.fault.CannotMoveVsanEnabledHost"
      >
      <description-html>
         <![CDATA[Fault thrown for the case that an attempt is made to move a host which
 is enabled for VSAN into a <a href="vim.ClusterComputeResource.html">ClusterComputeResource</a> which is
 disabled for VSAN.<br>See <a href="vim.fault.CannotMoveVsanEnabledHost.html">CannotMoveVsanEnabledHost</a><br>]]>
      </description-html>
            <property name="destinationCluster" type-id-ref="java.lang.String"
      vmodl-name="destinationCluster"
      >
      <description-html>
         <![CDATA[Name of the disabled destination <a href="vim.ClusterComputeResource.html">ClusterComputeResource</a>.<br>See vim.ClusterComputeResource#name]]>
      </description-html>
      </property>

   </fault>
   <fault name="DomainNotFound"
      type-id="vim.fault.DomainNotFound"
      vmodl-name="vim.fault.DomainNotFound"
      version-id-ref="vim.version.version6"
      base-type-id="vim.fault.ActiveDirectoryFault"
      >
      <description-html>
         <![CDATA[Fault indicating that the domain controller
  for domainName cannot be reached.]]>
      </description-html>
            <property name="domainName" type-id-ref="java.lang.String"
      vmodl-name="domainName"
      >
      <description-html>
         <![CDATA[The domain that cannot be accessed.]]>
      </description-html>
      </property>

   </fault>
   <fault name="DrsDisabledOnVm"
      type-id="vim.fault.DrsDisabledOnVm"
      vmodl-name="vim.fault.DrsDisabledOnVm"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.VimFault"
      >
      <description-html>
         <![CDATA[This fault is thrown when DRS cannot move a virtual machine because
 DRS is disabled on it (i.e., it is pinned on its registered host).]]>
      </description-html>
   </fault>
   <fault name="DuplicateName"
      type-id="vim.fault.DuplicateName"
      vmodl-name="vim.fault.DuplicateName"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.VimFault"
      >
      <description-html>
         <![CDATA[A DuplicateName exception is thrown because a name already exists
  in the same name space.]]>
      </description-html>
            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      >
      <description-html>
         <![CDATA[The name that is already bound in the name space.]]>
      </description-html>
      </property>

            <property name="object" type-id-ref="vmodl.ManagedObject"
      vmodl-name="object"
      >
      <description-html>
         <![CDATA[Managed object that already holds the name.]]>
      </description-html>
      </property>

   </fault>
   <fault name="DuplicateVsanNetworkInterface"
      type-id="vim.fault.DuplicateVsanNetworkInterface"
      vmodl-name="vim.fault.DuplicateVsanNetworkInterface"
      version-id-ref="vim.version.version9"
      base-type-id="vim.fault.VsanFault"
      >
      <description-html>
         <![CDATA[Fault thrown for cases that duplicate network interface names are
 incorrectly specified for a VSAN operation.<br>See <a href="vim.host.VsanSystem.html#update">UpdateVsan_Task</a><br>See <a href="vim.ComputeResource.html#reconfigureEx">ReconfigureComputeResource_Task</a><br>]]>
      </description-html>
            <property name="device" type-id-ref="java.lang.String"
      vmodl-name="device"
      >
      <description-html>
         <![CDATA[The network interface name found to be duplicated.]]>
      </description-html>
      </property>

   </fault>
   <fault name="DvsFault"
      type-id="vim.fault.DvsFault"
      vmodl-name="vim.fault.DvsFault"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.VimFault"
      >
      <description-html>
         <![CDATA[Base class for faults that can be thrown while invoking a distributed virtual switch
  operation.]]>
      </description-html>
   </fault>
   <fault name="DvsNotAuthorized"
      type-id="vim.fault.DvsNotAuthorized"
      vmodl-name="vim.fault.DvsNotAuthorized"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.DvsFault"
      >
      <description-html>
         <![CDATA[Thrown if
  <a href="vim.DistributedVirtualSwitch.Capability.html#dvsOperationSupported">dvsOperationSupported</a>
  is false and <a href="vim.DistributedVirtualSwitch.ConfigInfo.html#extensionKey">extensionKey</a> is not same
  as the extension key of the login-session.]]>
      </description-html>
            <property name="sessionExtensionKey" type-id-ref="java.lang.String"
      vmodl-name="sessionExtensionKey"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The extension key associated with the user-session.]]>
      </description-html>
      </property>

            <property name="dvsExtensionKey" type-id-ref="java.lang.String"
      vmodl-name="dvsExtensionKey"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The value of <a href="vim.DistributedVirtualSwitch.ConfigInfo.html#extensionKey">extensionKey</a>.]]>
      </description-html>
      </property>

   </fault>
   <fault name="DvsOperationBulkFault"
      type-id="vim.fault.DvsOperationBulkFault"
      vmodl-name="vim.fault.DvsOperationBulkFault"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.DvsFault"
      >
      <description-html>
         <![CDATA[Thrown if a DistributedVirtualSwitch operation failed on some of the host members.]]>
      </description-html>
            <property name="hostFault" type-id-ref="vim.fault.DvsOperationBulkFault.FaultOnHost"
      vmodl-name="hostFault"
      is-array="true"
      >
      <description-html>
         <![CDATA[Faults occurred on the host during a DistributedVirtualSwitch operation.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.fault.DvsOperationBulkFault.FaultOnHost</nested-type-id-ref>
   </fault>
   <fault name="DvsScopeViolated"
      type-id="vim.fault.DvsScopeViolated"
      vmodl-name="vim.fault.DvsScopeViolated"
      version-id-ref="vim.version.version5"
      is-deprecated="true"
      base-type-id="vim.fault.DvsFault"
      >
      <description-html>
         <![CDATA[Thrown if a entity trying to connect to a port or portgroup but it is not in the
  port or portgroup's scope.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[as of vSphere API 5.5]]>
      </deprecated-html>
            <property name="scope" type-id-ref="vim.ManagedEntity"
      vmodl-name="scope"
      is-array="true"
      >
      <description-html>
         <![CDATA[The configured scope.]]>
      </description-html>
      </property>

            <property name="entity" type-id-ref="vim.ManagedEntity"
      vmodl-name="entity"
      >
      <description-html>
         <![CDATA[The entity that violates the scope.]]>
      </description-html>
      </property>

   </fault>
   <fault name="EVCConfigFault"
      type-id="vim.fault.EVCConfigFault"
      vmodl-name="vim.fault.EVCConfigFault"
      version-id-ref="vim.version.version3"
      internal-before-version-id-ref="vim.version.version10"
      base-type-id="vim.fault.VimFault"
      >
      <description-html>
         <![CDATA[An attempt to enable Enhanced VMotion Compatibility on a cluster has failed.]]>
      </description-html>
            <property name="faults" type-id-ref="vmodl.LocalizedMethodFault"
      vmodl-name="faults"
      version-id-ref="vim.version.version8"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The faults that caused this EVC test to fail,
  such as <a href="vim.fault.FeatureRequirementsNotMet.html">FeatureRequirementsNotMet</a> faults.]]>
      </description-html>
      </property>

   </fault>
   <fault name="EVCModeIllegalByVendor"
      type-id="vim.fault.EVCModeIllegalByVendor"
      vmodl-name="vim.fault.EVCModeIllegalByVendor"
      version-id-ref="vim.version.version3"
      internal-before-version-id-ref="vim.version.version10"
      base-type-id="vim.fault.EVCConfigFault"
      >
      <description-html>
         <![CDATA[An attempt to enable Enhanced VMotion Compatibility on a cluster, or change
  the EVC configuration on an EVC-enabled cluster, has failed because the
  selected EVC mode is not legal for the CPU hardware vendor of the hosts
  currently in the cluster.]]>
      </description-html>
            <property name="clusterCPUVendor" type-id-ref="java.lang.String"
      vmodl-name="clusterCPUVendor"
      >
      <description-html>
         <![CDATA[The CPU vendor in use in the cluster.]]>
      </description-html>
      </property>

            <property name="modeCPUVendor" type-id-ref="java.lang.String"
      vmodl-name="modeCPUVendor"
      >
      <description-html>
         <![CDATA[The CPU vendor for the requested EVC mode.]]>
      </description-html>
      </property>

   </fault>
   <fault name="EVCModeUnsupportedByHosts"
      type-id="vim.fault.EVCModeUnsupportedByHosts"
      vmodl-name="vim.fault.EVCModeUnsupportedByHosts"
      version-id-ref="vim.version.version5"
      internal-before-version-id-ref="vim.version.version10"
      base-type-id="vim.fault.EVCConfigFault"
      >
      <description-html>
         <![CDATA[An attempt to enable Enhanced VMotion Compatibility on a cluster has failed
  because there are hosts in the cluster with a CPU feature baseline below the
  desired EVC mode.]]>
      </description-html>
            <property name="evcMode" type-id-ref="java.lang.String"
      vmodl-name="evcMode"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The requested EVC mode.]]>
      </description-html>
      </property>

            <property name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The set of hosts which are blocking EVC because their CPU hardware does
  not support the requested EVC mode.]]>
      </description-html>
      </property>

            <property name="hostName" type-id-ref="java.lang.String"
      vmodl-name="hostName"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The names of the hosts in the host array.]]>
      </description-html>
      </property>

   </fault>
   <fault name="EVCUnsupportedByHostHardware"
      type-id="vim.fault.EVCUnsupportedByHostHardware"
      vmodl-name="vim.fault.EVCUnsupportedByHostHardware"
      version-id-ref="vim.version.version6"
      internal-before-version-id-ref="vim.version.version10"
      base-type-id="vim.fault.EVCConfigFault"
      >
      <description-html>
         <![CDATA[An attempt to enable Enhanced VMotion Compatibility (EVC) on a cluster has
  failed because one or more hosts in the cluster do not match the desired
  featureset and lack hardware support for EVC.]]>
      </description-html>
            <property name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      is-array="true"
      >
      <description-html>
         <![CDATA[The set of hosts which are blocking EVC because their CPU hardware does
  not support CPUID override.]]>
      </description-html>
      </property>

            <property name="hostName" type-id-ref="java.lang.String"
      vmodl-name="hostName"
      is-array="true"
      >
      <description-html>
         <![CDATA[The names of the hosts in the host array.]]>
      </description-html>
      </property>

   </fault>
   <fault name="EVCUnsupportedByHostSoftware"
      type-id="vim.fault.EVCUnsupportedByHostSoftware"
      vmodl-name="vim.fault.EVCUnsupportedByHostSoftware"
      version-id-ref="vim.version.version6"
      internal-before-version-id-ref="vim.version.version10"
      base-type-id="vim.fault.EVCConfigFault"
      >
      <description-html>
         <![CDATA[An attempt to enable Enhanced VMotion Compatibility (EVC) on a cluster has
  failed because one or more hosts in the cluster lack software support for
  EVC.]]>
      </description-html>
            <property name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      is-array="true"
      >
      <description-html>
         <![CDATA[The set of hosts which are blocking EVC because their virtualization
  software does not support CPUID override.]]>
      </description-html>
      </property>

            <property name="hostName" type-id-ref="java.lang.String"
      vmodl-name="hostName"
      is-array="true"
      >
      <description-html>
         <![CDATA[The names of the hosts in the host array.]]>
      </description-html>
      </property>

   </fault>
   <fault name="EightHostLimitViolated"
      type-id="vim.fault.EightHostLimitViolated"
      vmodl-name="vim.fault.EightHostLimitViolated"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.VmConfigFault"
      >
      <description-html>
         <![CDATA[Only virtual machines on eight different hosts can have a single
  virtual disk backing opened for read at once.
  <p>
  This fault occurs when moving or powering on this virtual
  machine would cause a violation of the above constraint.
  This only occurs when multiple virtual machines are sharing a
  single disk backing.
  <p>
  Note that there is no limit on the number of virtual machines
  who share a disk backings, so long as they are running on
  eight or fewer hosts.]]>
      </description-html>
   </fault>
   <fault name="ExpiredAddonLicense"
      type-id="vim.fault.ExpiredAddonLicense"
      vmodl-name="vim.fault.ExpiredAddonLicense"
      version-id-ref="vim.version.version2"
      base-type-id="vim.fault.ExpiredFeatureLicense"
      >
      <description-html>
         <![CDATA[An ExpiredAddonLicense fault is thrown if an attempt to acquire an Addon license
 'feature failed for count 'count'.]]>
      </description-html>
   </fault>
   <fault name="ExpiredEditionLicense"
      type-id="vim.fault.ExpiredEditionLicense"
      vmodl-name="vim.fault.ExpiredEditionLicense"
      version-id-ref="vim.version.version2"
      base-type-id="vim.fault.ExpiredFeatureLicense"
      >
      <description-html>
         <![CDATA[An ExpiredEditionLicense fault is thrown if an attempt to acquire an Edition license
 'feature failed for count 'count'.]]>
      </description-html>
   </fault>
   <fault name="ExtendedFault"
      type-id="vim.fault.ExtendedFault"
      vmodl-name="vim.fault.ExtendedFault"
      version-id-ref="vim.version.version2"
      base-type-id="vim.fault.VimFault"
      >
      <description-html>
         <![CDATA[This fault is the container for faults logged by extensions.]]>
      </description-html>
            <property name="faultTypeId" type-id-ref="java.lang.String"
      vmodl-name="faultTypeId"
      >
      <description-html>
         <![CDATA[The id of the type of extended fault.]]>
      </description-html>
      </property>

            <property name="data" type-id-ref="vim.KeyValue"
      vmodl-name="data"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Key/value pairs associated with fault.]]>
      </description-html>
      </property>

   </fault>
   <fault name="FaultToleranceCannotEditMem"
      type-id="vim.fault.FaultToleranceCannotEditMem"
      vmodl-name="vim.fault.FaultToleranceCannotEditMem"
      version-id-ref="vim.version.version6"
      base-type-id="vim.fault.VmConfigFault"
      >
      <description-html>
         <![CDATA[The memory size, reservation, limit or shares of a virtual machine cannot
 be edited if Fault Tolerance is turned on]]>
      </description-html>
            <property name="vmName" type-id-ref="java.lang.String"
      vmodl-name="vmName"
      >
      <description-html>
         <![CDATA[The name of the VM.]]>
      </description-html>
      </property>

            <property name="vm" type-id-ref="vim.VirtualMachine"
      vmodl-name="vm"
      >
      <description-html>
         <![CDATA[The VM.]]>
      </description-html>
      </property>

   </fault>
   <fault name="FaultToleranceNotLicensed"
      type-id="vim.fault.FaultToleranceNotLicensed"
      vmodl-name="vim.fault.FaultToleranceNotLicensed"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.VmFaultToleranceIssue"
      >
      <description-html>
         <![CDATA[This fault is thrown when fault tolerance has not been licensed on the
  source or destination host. It must be licensed on both hosts.]]>
      </description-html>
            <property name="hostName" type-id-ref="java.lang.String"
      vmodl-name="hostName"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The host name]]>
      </description-html>
      </property>

   </fault>
   <fault name="FaultTolerancePrimaryPowerOnNotAttempted"
      type-id="vim.fault.FaultTolerancePrimaryPowerOnNotAttempted"
      vmodl-name="vim.fault.FaultTolerancePrimaryPowerOnNotAttempted"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.VmFaultToleranceIssue"
      >
      <description-html>
         <![CDATA[This fault is used to report that VirtualCenter did not attempt to power on
 a Fault Tolerance secondary virtual machine because it was unable to
 power on the corresponding Fault Tolerance primary virtual machine.]]>
      </description-html>
            <property name="secondaryVm" type-id-ref="vim.VirtualMachine"
      vmodl-name="secondaryVm"
      >
      <description-html>
         <![CDATA[The secondary virtual machine that was not attempted]]>
      </description-html>
      </property>

            <property name="primaryVm" type-id-ref="vim.VirtualMachine"
      vmodl-name="primaryVm"
      >
      <description-html>
         <![CDATA[The corresponding primary virtual machine]]>
      </description-html>
      </property>

   </fault>
   <fault name="FaultToleranceVmNotDasProtected"
      type-id="vim.fault.FaultToleranceVmNotDasProtected"
      vmodl-name="vim.fault.FaultToleranceVmNotDasProtected"
      version-id-ref="vim.version.version7"
      base-type-id="vim.fault.VimFault"
      >
      <description-html>
         <![CDATA[A FaultToleranceVmNotDasProtected fault occurs when an Fault Tolerance VM
 is not protected by HA and the operation for terminating the primary VM
 or secondary VM is invoked.]]>
      </description-html>
            <property name="vm" type-id-ref="vim.VirtualMachine"
      vmodl-name="vm"
      >
      <description-html>
         <![CDATA[The Fault Toelrance primary VM]]>
      </description-html>
      </property>

            <property name="vmName" type-id-ref="java.lang.String"
      vmodl-name="vmName"
      >
      <description-html>
         <![CDATA[Name of the VM]]>
      </description-html>
      </property>

   </fault>
   <fault name="FcoeFault"
      type-id="vim.fault.FcoeFault"
      vmodl-name="vim.fault.FcoeFault"
      version-id-ref="vim.version.version7"
      base-type-id="vim.fault.VimFault"
      >
      <description-html>
         <![CDATA[Base class for faults that can be thrown while invoking FCoE management operations.]]>
      </description-html>
   </fault>
   <fault name="FcoeFaultPnicHasNoPortSet"
      type-id="vim.fault.FcoeFaultPnicHasNoPortSet"
      vmodl-name="vim.fault.FcoeFaultPnicHasNoPortSet"
      version-id-ref="vim.version.version7"
      base-type-id="vim.fault.FcoeFault"
      >
      <description-html>
         <![CDATA[This fault indicates the given Software Fcoe NIC has no uplink ports
  that is required for initiating a discovery.]]>
      </description-html>
            <property name="nicDevice" type-id-ref="java.lang.String"
      vmodl-name="nicDevice"
      >
      </property>

   </fault>
   <fault name="FileFault"
      type-id="vim.fault.FileFault"
      vmodl-name="vim.fault.FileFault"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.VimFault"
      >
      <description-html>
         <![CDATA[The common base type for all file-related exceptions.]]>
      </description-html>
            <property name="file" type-id-ref="java.lang.String"
      vmodl-name="file"
      >
      <description-html>
         <![CDATA[The file in question.]]>
      </description-html>
      </property>

   </fault>
   <fault name="FileLocked"
      type-id="vim.fault.FileLocked"
      vmodl-name="vim.fault.FileLocked"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.FileFault"
      >
      <description-html>
         <![CDATA[Thrown if an attempt is made to lock a file that is already in use.]]>
      </description-html>
   </fault>
   <fault name="FileNameTooLong"
      type-id="vim.fault.FileNameTooLong"
      vmodl-name="vim.fault.FileNameTooLong"
      version-id-ref="vim.version.version7"
      base-type-id="vim.fault.FileFault"
      >
      <description-html>
         <![CDATA[This fault is thrown when an operation fails because the name of the
  specified file is too long.]]>
      </description-html>
   </fault>
   <fault name="FileNotFound"
      type-id="vim.fault.FileNotFound"
      vmodl-name="vim.fault.FileNotFound"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.FileFault"
      >
      <description-html>
         <![CDATA[This fault is thrown when an operation fails because the specified file
  does not exist.]]>
      </description-html>
   </fault>
   <fault name="FileNotWritable"
      type-id="vim.fault.FileNotWritable"
      vmodl-name="vim.fault.FileNotWritable"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.FileFault"
      >
      <description-html>
         <![CDATA[Thrown if an attempt is made to write to a read-only file.]]>
      </description-html>
   </fault>
   <fault name="FileTooLarge"
      type-id="vim.fault.FileTooLarge"
      vmodl-name="vim.fault.FileTooLarge"
      version-id-ref="vim.version.version2"
      base-type-id="vim.fault.FileFault"
      >
      <description-html>
         <![CDATA[This fault is thrown when an operation fails because the file is larger
  than the maximum file size supported by the datastore.]]>
      </description-html>
            <property name="datastore" type-id-ref="java.lang.String"
      vmodl-name="datastore"
      >
      <description-html>
         <![CDATA[The name of the datastore that does not support the file's size.]]>
      </description-html>
      </property>

            <property name="fileSize" type-id-ref="LONG"
      vmodl-name="fileSize"
      >
      <description-html>
         <![CDATA[The size (in bytes) of the file.]]>
      </description-html>
      </property>

            <property name="maxFileSize" type-id-ref="LONG"
      vmodl-name="maxFileSize"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The max file size (in bytes) supported on the datastore.]]>
      </description-html>
      </property>

   </fault>
   <fault name="FtIssuesOnHost"
      type-id="vim.fault.FtIssuesOnHost"
      vmodl-name="vim.fault.FtIssuesOnHost"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.VmFaultToleranceIssue"
      >
      <description-html>
         <![CDATA[The FtIssuesOnHost fault reports issues that prevent a particular
  host from being used as the register or power on host for a Fault
  Tolerance secondary virtual machine]]>
      </description-html>
            <property name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      >
      <description-html>
         <![CDATA[The host which has Fault Tolerance issues.]]>
      </description-html>
      </property>

            <property name="hostName" type-id-ref="java.lang.String"
      vmodl-name="hostName"
      >
      <description-html>
         <![CDATA[Name for the host which has Fault Tolerance issues.]]>
      </description-html>
      </property>

            <property name="errors" type-id-ref="vmodl.LocalizedMethodFault"
      vmodl-name="errors"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Information on the details of the Fault Tolerance issues]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.fault.FtIssuesOnHost.HostSelectionType</nested-type-id-ref>
   </fault>
   <fault name="GenericDrsFault"
      type-id="vim.fault.GenericDrsFault"
      vmodl-name="vim.fault.GenericDrsFault"
      version-id-ref="vim.version.version2"
      base-type-id="vim.fault.VimFault"
      >
      <description-html>
         <![CDATA[DRS returns more than one faults for each virtual machine, or DRS returns
 <a href="vim.fault.VimFault.html">VimFault</a> because of some internal errors.]]>
      </description-html>
            <property name="hostFaults" type-id-ref="vmodl.LocalizedMethodFault"
      vmodl-name="hostFaults"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[This is an optional field to return the detailed information back to
  the client. This optional array may consist of the exact fault for
  some hosts in the cluster.]]>
      </description-html>
      </property>

   </fault>
   <fault name="GenericVmConfigFault"
      type-id="vim.fault.GenericVmConfigFault"
      vmodl-name="vim.fault.GenericVmConfigFault"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.VmConfigFault"
      >
      <description-html>
         <![CDATA[Thrown when a running virtual machine reports an error.]]>
      </description-html>
            <property name="reason" type-id-ref="java.lang.String"
      vmodl-name="reason"
      >
      <description-html>
         <![CDATA[Message from the virtual machine]]>
      </description-html>
      </property>

   </fault>
   <fault name="GuestOperationsFault"
      type-id="vim.fault.GuestOperationsFault"
      vmodl-name="vim.fault.GuestOperationsFault"
      version-id-ref="vim.version.version7"
      base-type-id="vim.fault.VimFault"
      >
      <description-html>
         <![CDATA[The common base type for all guest operations faults.]]>
      </description-html>
   </fault>
   <fault name="GuestOperationsUnavailable"
      type-id="vim.fault.GuestOperationsUnavailable"
      vmodl-name="vim.fault.GuestOperationsUnavailable"
      version-id-ref="vim.version.version7"
      base-type-id="vim.fault.GuestOperationsFault"
      >
      <description-html>
         <![CDATA[A GuestOperationsUnavailable exception is thrown when an
  operation fails to contact the guest operations agent
  running inside the virtual machine.]]>
      </description-html>
   </fault>
   <fault name="GuestPermissionDenied"
      type-id="vim.fault.GuestPermissionDenied"
      vmodl-name="vim.fault.GuestPermissionDenied"
      version-id-ref="vim.version.version7"
      base-type-id="vim.fault.GuestOperationsFault"
      >
      <description-html>
         <![CDATA[A GuestPermissionDenied exception is thrown when an
  operation fails because the authentication used
  is insufficient to perform the operation.]]>
      </description-html>
   </fault>
   <fault name="GuestProcessNotFound"
      type-id="vim.fault.GuestProcessNotFound"
      vmodl-name="vim.fault.GuestProcessNotFound"
      version-id-ref="vim.version.version7"
      base-type-id="vim.fault.GuestOperationsFault"
      >
      <description-html>
         <![CDATA[A GuestProcessNotFound exception is thrown when an
  operation fails because the guest process specified does not exist.]]>
      </description-html>
            <property name="pid" type-id-ref="LONG"
      vmodl-name="pid"
      >
      <description-html>
         <![CDATA[The process ID that was not found.]]>
      </description-html>
      </property>

   </fault>
   <fault name="GuestRegistryFault"
      type-id="vim.fault.GuestRegistryFault"
      vmodl-name="vim.fault.GuestRegistryFault"
      version-id-ref="vim.version.version10"
      base-type-id="vim.fault.GuestOperationsFault"
      >
      <description-html>
         <![CDATA[A GuestRegistryFault exception is thrown when an operation fails
 because of some errors in accessing/modifying the guest registry.]]>
      </description-html>
            <property name="windowsSystemErrorCode" type-id-ref="LONG"
      vmodl-name="windowsSystemErrorCode"
      >
      <description-html>
         <![CDATA[The windows system error number from GetLastError().]]>
      </description-html>
      </property>

   </fault>
   <fault name="GuestRegistryKeyFault"
      type-id="vim.fault.GuestRegistryKeyFault"
      vmodl-name="vim.fault.GuestRegistryKeyFault"
      version-id-ref="vim.version.version10"
      base-type-id="vim.fault.GuestRegistryFault"
      >
      <description-html>
         <![CDATA[A GuestRegistryKeyFault exception is thrown when an operation fails
 because of some errors in accessing/modifying a guest registry key.]]>
      </description-html>
            <property name="keyName" type-id-ref="java.lang.String"
      vmodl-name="keyName"
      >
      <description-html>
         <![CDATA[The full path to the windows registry key.]]>
      </description-html>
      </property>

   </fault>
   <fault name="GuestRegistryKeyHasSubkeys"
      type-id="vim.fault.GuestRegistryKeyHasSubkeys"
      vmodl-name="vim.fault.GuestRegistryKeyHasSubkeys"
      version-id-ref="vim.version.version10"
      base-type-id="vim.fault.GuestRegistryKeyFault"
      >
      <description-html>
         <![CDATA[A GuestRegistryKeyHasSubkeys exception is thrown when an operation fails
 because the guest registry key has subkeys. If a delete on the key is
 desired, please use the recursive delete option.]]>
      </description-html>
   </fault>
   <fault name="GuestRegistryKeyInvalid"
      type-id="vim.fault.GuestRegistryKeyInvalid"
      vmodl-name="vim.fault.GuestRegistryKeyInvalid"
      version-id-ref="vim.version.version10"
      base-type-id="vim.fault.GuestRegistryKeyFault"
      >
      <description-html>
         <![CDATA[A GuestRegistryKeyInvalid exception is thrown when an operation fails
 because the guest registry key specified was not valid (most probably
 due to an invalid HKEY Root in the key path), or does not exist.]]>
      </description-html>
   </fault>
   <fault name="GuestRegistryKeyParentVolatile"
      type-id="vim.fault.GuestRegistryKeyParentVolatile"
      vmodl-name="vim.fault.GuestRegistryKeyParentVolatile"
      version-id-ref="vim.version.version10"
      base-type-id="vim.fault.GuestRegistryKeyFault"
      >
      <description-html>
         <![CDATA[A GuestRegistryKeyParentVolatile exception is thrown when trying to create
 a non-volatile registry subkey under a volatile registry parent key.]]>
      </description-html>
   </fault>
   <fault name="GuestRegistryValueFault"
      type-id="vim.fault.GuestRegistryValueFault"
      vmodl-name="vim.fault.GuestRegistryValueFault"
      version-id-ref="vim.version.version10"
      base-type-id="vim.fault.GuestRegistryFault"
      >
      <description-html>
         <![CDATA[A GuestRegistryValueFault exception is thrown when an operation fails
 because of some errors in accessing/modifying a guest registry value.]]>
      </description-html>
            <property name="keyName" type-id-ref="java.lang.String"
      vmodl-name="keyName"
      >
      <description-html>
         <![CDATA[The full path to the windows registry key containing the value.]]>
      </description-html>
      </property>

            <property name="valueName" type-id-ref="java.lang.String"
      vmodl-name="valueName"
      >
      <description-html>
         <![CDATA[The name of the value.]]>
      </description-html>
      </property>

   </fault>
   <fault name="GuestRegistryValueNotFound"
      type-id="vim.fault.GuestRegistryValueNotFound"
      vmodl-name="vim.fault.GuestRegistryValueNotFound"
      version-id-ref="vim.version.version10"
      base-type-id="vim.fault.GuestRegistryValueFault"
      >
      <description-html>
         <![CDATA[A GuestRegistryValueNotFound exception is thrown when an operation fails
 because the guest registry Value specified was not found.]]>
      </description-html>
   </fault>
   <fault name="HeterogenousHostsBlockingEVC"
      type-id="vim.fault.HeterogenousHostsBlockingEVC"
      vmodl-name="vim.fault.HeterogenousHostsBlockingEVC"
      version-id-ref="vim.version.version3"
      internal-before-version-id-ref="vim.version.version10"
      base-type-id="vim.fault.EVCConfigFault"
      >
      <description-html>
         <![CDATA[An attempt to enable Enhanced VMotion Compatibility on a cluster has failed
  because the cluster contains CPUs from more than one vendor.]]>
      </description-html>
   </fault>
   <fault name="HostConfigFault"
      type-id="vim.fault.HostConfigFault"
      vmodl-name="vim.fault.HostConfigFault"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.VimFault"
      >
      <description-html>
         <![CDATA[Base class for all Host configuration related faults]]>
      </description-html>
   </fault>
   <fault name="HostConnectFault"
      type-id="vim.fault.HostConnectFault"
      vmodl-name="vim.fault.HostConnectFault"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.VimFault"
      >
      <description-html>
         <![CDATA[A base clase for faults that are related to connecting or
  adding a host to the inventory.]]>
      </description-html>
   </fault>
   <fault name="HostHasComponentFailure"
      type-id="vim.fault.HostHasComponentFailure"
      vmodl-name="vim.fault.HostHasComponentFailure"
      version-id-ref="vim.version.version10"
      base-type-id="vim.fault.VimFault"
      >
      <description-html>
         <![CDATA[The host has a component failure and thus can cause issues for VMs running or
 to be running on it.]]>
      </description-html>
            <property name="hostName" type-id-ref="java.lang.String"
      vmodl-name="hostName"
      >
      <description-html>
         <![CDATA[The host that has the component failure.]]>
      </description-html>
      </property>

            <property name="componentType" type-id-ref="java.lang.String"
      vmodl-name="componentType"
      >
      <description-html>
         <![CDATA[The type of the component that has failed.
 Values come from HostComponentType.]]>
      </description-html>
      </property>

            <property name="componentName" type-id-ref="java.lang.String"
      vmodl-name="componentName"
      >
      <description-html>
         <![CDATA[The name of the component that has failed.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.fault.HostHasComponentFailure.HostComponentType</nested-type-id-ref>
   </fault>
   <fault name="HostInDomain"
      type-id="vim.fault.HostInDomain"
      vmodl-name="vim.fault.HostInDomain"
      version-id-ref="vim.version.version6"
      base-type-id="vim.fault.HostConfigFault"
      >
      <description-html>
         <![CDATA[Fault indicating that an operation cannot be performed while
  the host is part of a Windows domain.]]>
      </description-html>
   </fault>
   <fault name="HostIncompatibleForFaultTolerance"
      type-id="vim.fault.HostIncompatibleForFaultTolerance"
      vmodl-name="vim.fault.HostIncompatibleForFaultTolerance"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.VmFaultToleranceIssue"
      >
      <description-html>
         <![CDATA[This fault is thrown when an attempt is made to configure a fault tolerant
  virtual machine on a host that is incompatible.]]>
      </description-html>
            <property name="hostName" type-id-ref="java.lang.String"
      vmodl-name="hostName"
      is-optional="true"
      >
      </property>

            <property name="reason" type-id-ref="java.lang.String"
      vmodl-name="reason"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The specific reason why the host does not support fault tolerance.
 Values should come from <a href="vim.fault.HostIncompatibleForFaultTolerance.Reason.html">HostIncompatibleForFaultToleranceReason</a>.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.fault.HostIncompatibleForFaultTolerance.Reason</nested-type-id-ref>
   </fault>
   <fault name="HostIncompatibleForRecordReplay"
      type-id="vim.fault.HostIncompatibleForRecordReplay"
      vmodl-name="vim.fault.HostIncompatibleForRecordReplay"
      version-id-ref="vim.version.version5"
      is-deprecated="true"
      base-type-id="vim.fault.VimFault"
      >
      <description-html>
         <![CDATA[This fault is thrown when an attempt is made record or replay
  a virtual machine on a host that is incompatible.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[as of vSphere API 6.0]]>
      </deprecated-html>
            <property name="hostName" type-id-ref="java.lang.String"
      vmodl-name="hostName"
      is-optional="true"
      >
      </property>

            <property name="reason" type-id-ref="java.lang.String"
      vmodl-name="reason"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The specific reason why the host does not support record/replay.
 Values should come from <a href="vim.fault.HostIncompatibleForRecordReplay.Reason.html">HostIncompatibleForRecordReplayReason</a>.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.fault.HostIncompatibleForRecordReplay.Reason</nested-type-id-ref>
   </fault>
   <fault name="HostPowerOpFailed"
      type-id="vim.fault.HostPowerOpFailed"
      vmodl-name="vim.fault.HostPowerOpFailed"
      version-id-ref="vim.version.version2"
      base-type-id="vim.fault.VimFault"
      >
      <description-html>
         <![CDATA[This fault is thrown when a host power operation fails.]]>
      </description-html>
   </fault>
   <fault name="HostSpecificationOperationFailed"
      type-id="vim.fault.HostSpecificationOperationFailed"
      vmodl-name="vim.fault.HostSpecificationOperationFailed"
      version-id-ref="vim.version.version11"
      base-type-id="vim.fault.VimFault"
      >
      <description-html>
         <![CDATA[Fault thrown when an operation, on host specification or host sub
  specification for a host, failed.]]>
      </description-html>
            <property name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      >
      <description-html>
         <![CDATA[The host on which host specification operation failed.]]>
      </description-html>
      </property>

   </fault>
   <fault name="HttpFault"
      type-id="vim.fault.HttpFault"
      vmodl-name="vim.fault.HttpFault"
      version-id-ref="vim.version.version5"
      internal-before-version-id-ref="vim.version.version12"
      base-type-id="vim.fault.VimFault"
      >
      <description-html>
         <![CDATA[Generic base class for outbound HTTP communication errors.]]>
      </description-html>
            <property name="statusCode" type-id-ref="INT"
      vmodl-name="statusCode"
      >
      <description-html>
         <![CDATA[HTTP status code received from external web-server.]]>
      </description-html>
      </property>

            <property name="statusMessage" type-id-ref="java.lang.String"
      vmodl-name="statusMessage"
      >
      <description-html>
         <![CDATA[HTTP status message received from external web-server.]]>
      </description-html>
      </property>

   </fault>
   <fault name="IORMNotSupportedHostOnDatastore"
      type-id="vim.fault.IORMNotSupportedHostOnDatastore"
      vmodl-name="vim.fault.IORMNotSupportedHostOnDatastore"
      version-id-ref="vim.version.version6"
      base-type-id="vim.fault.VimFault"
      >
      <description-html>
         <![CDATA[A IORMNotSupportedHostOnDatastore fault occurs when the datastore is connected
  to one or more hosts that do not support storage I/O resource management.]]>
      </description-html>
            <property name="datastore" type-id-ref="vim.Datastore"
      vmodl-name="datastore"
      >
      <description-html>
         <![CDATA[The datastore.]]>
      </description-html>
      </property>

            <property name="datastoreName" type-id-ref="java.lang.String"
      vmodl-name="datastoreName"
      >
      <description-html>
         <![CDATA[The name of the datastore.]]>
      </description-html>
      </property>

            <property name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The list of hosts that do not support storage I/O
  resource management.]]>
      </description-html>
      </property>

   </fault>
   <fault name="ImportHostAddFailure"
      type-id="vim.fault.ImportHostAddFailure"
      vmodl-name="vim.fault.ImportHostAddFailure"
      version-id-ref="vim.version.version8"
      base-type-id="vim.fault.DvsFault"
      >
      <description-html>
         <![CDATA[Thrown if failure occurs while adding host to DVS during import operation]]>
      </description-html>
            <property name="hostIp" type-id-ref="java.lang.String"
      vmodl-name="hostIp"
      is-array="true"
      >
      <description-html>
         <![CDATA[Hosts on which import operation failed]]>
      </description-html>
      </property>

   </fault>
   <fault name="ImportOperationBulkFault"
      type-id="vim.fault.ImportOperationBulkFault"
      vmodl-name="vim.fault.ImportOperationBulkFault"
      version-id-ref="vim.version.version8"
      base-type-id="vim.fault.DvsFault"
      >
      <description-html>
         <![CDATA[Thrown if a Import operation fails]]>
      </description-html>
            <property name="importFaults" type-id-ref="vim.fault.ImportOperationBulkFault.FaultOnImport"
      vmodl-name="importFaults"
      is-array="true"
      >
      <description-html>
         <![CDATA[Faults occurred during the import operation]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.fault.ImportOperationBulkFault.FaultOnImport</nested-type-id-ref>
   </fault>
   <fault name="InaccessibleVFlashSource"
      type-id="vim.fault.InaccessibleVFlashSource"
      vmodl-name="vim.fault.InaccessibleVFlashSource"
      version-id-ref="vim.version.version9"
      base-type-id="vim.fault.VimFault"
      >
      <description-html>
         <![CDATA[An InaccessibleVFlashSource exception is thrown when
 an attempt is made to access the vFlash resource on
 the host, such as creating vFlash cache file for the
 virtual disk.]]>
      </description-html>
            <property name="hostName" type-id-ref="java.lang.String"
      vmodl-name="hostName"
      >
      <description-html>
         <![CDATA[Name of the host which has the vFlash resource]]>
      </description-html>
      </property>

   </fault>
   <fault name="IncompatibleHostForFtSecondary"
      type-id="vim.fault.IncompatibleHostForFtSecondary"
      vmodl-name="vim.fault.IncompatibleHostForFtSecondary"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.VmFaultToleranceIssue"
      >
      <description-html>
         <![CDATA[The IncompatibleHostForFtSecondary fault is thrown when an invalid
  host has been specified when calling <a href="vim.VirtualMachine.html#createSecondary">CreateSecondaryVM_Task</a>
  or <a href="vim.VirtualMachine.html#enableSecondary">EnableSecondaryVM_Task</a>.]]>
      </description-html>
            <property name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      >
      <description-html>
         <![CDATA[The host that is not compatible with the secondary virtual machine.]]>
      </description-html>
      </property>

            <property name="error" type-id-ref="vmodl.LocalizedMethodFault"
      vmodl-name="error"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Information on why the host that was specified could not be used for
  the FaultTolerance Secondary VirtualMachine.]]>
      </description-html>
      </property>

   </fault>
   <fault name="IncorrectFileType"
      type-id="vim.fault.IncorrectFileType"
      vmodl-name="vim.fault.IncorrectFileType"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.FileFault"
      >
      <description-html>
         <![CDATA[Thrown when an operation fails because the files do not match a
  specified file type.]]>
      </description-html>
   </fault>
   <fault name="InsufficientResourcesFault"
      type-id="vim.fault.InsufficientResourcesFault"
      vmodl-name="vim.fault.InsufficientResourcesFault"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.VimFault"
      >
      <description-html>
         <![CDATA[Base fault that occurs when an operation conflicts with a resource configuration
  policy. For example, this fault occurs if a power-on operation reserves more memory
  than is allocated to a resource pool.]]>
      </description-html>
   </fault>
   <fault name="InsufficientStandbyResource"
      type-id="vim.fault.InsufficientStandbyResource"
      vmodl-name="vim.fault.InsufficientStandbyResource"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.InsufficientResourcesFault"
      >
      <description-html>
         <![CDATA[This fault is thrown when Distributed Power Management cannot perform
  a given opeartion because there are insufficient CPU/memory resources
  on standby hosts (if any) to meet the requirements of the operation.]]>
      </description-html>
   </fault>
   <fault name="InsufficientStorageIops"
      type-id="vim.fault.InsufficientStorageIops"
      vmodl-name="vim.fault.InsufficientStorageIops"
      version-id-ref="vim.version.version10"
      base-type-id="vim.fault.VimFault"
      >
      <description-html>
         <![CDATA[The datastore does not have enough IOPs capacity for running the virtual machine.]]>
      </description-html>
            <property name="unreservedIops" type-id-ref="LONG"
      vmodl-name="unreservedIops"
      >
      <description-html>
         <![CDATA[The IOPs available on the datastore]]>
      </description-html>
      </property>

            <property name="requestedIops" type-id-ref="LONG"
      vmodl-name="requestedIops"
      >
      <description-html>
         <![CDATA[The IOPs resource amount requested in the failed operation]]>
      </description-html>
      </property>

            <property name="datastoreName" type-id-ref="java.lang.String"
      vmodl-name="datastoreName"
      >
      <description-html>
         <![CDATA[Name of the datastore with insufficient capacity]]>
      </description-html>
      </property>

   </fault>
   <fault name="InsufficientStorageSpace"
      type-id="vim.fault.InsufficientStorageSpace"
      vmodl-name="vim.fault.InsufficientStorageSpace"
      version-id-ref="vim.version.version7"
      base-type-id="vim.fault.InsufficientResourcesFault"
      >
      <description-html>
         <![CDATA[The fault occurs when Storage DRS cannot perform a given operation (e.g., fix the
  out of space condition, or place a virtual disk) because there is insufficient
  storage space in the given storage pod to meet the requirements of the operation.]]>
      </description-html>
   </fault>
   <fault name="InsufficientVFlashResourcesFault"
      type-id="vim.fault.InsufficientVFlashResourcesFault"
      vmodl-name="vim.fault.InsufficientVFlashResourcesFault"
      version-id-ref="vim.version.version9"
      base-type-id="vim.fault.InsufficientResourcesFault"
      >
      <description-html>
         <![CDATA[Insufficient vFlash resource to consume]]>
      </description-html>
            <property name="freeSpaceInMB" type-id-ref="LONG"
      vmodl-name="freeSpaceInMB"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The vFlash resource available capacity in MB.]]>
      </description-html>
      </property>

            <property name="freeSpace" type-id-ref="LONG"
      vmodl-name="freeSpace"
      >
      <description-html>
         <![CDATA[The vFlash resource available capacity in bytes.]]>
      </description-html>
      </property>

            <property name="requestedSpaceInMB" type-id-ref="LONG"
      vmodl-name="requestedSpaceInMB"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The vFlash resource amount requested in MB.]]>
      </description-html>
      </property>

            <property name="requestedSpace" type-id-ref="LONG"
      vmodl-name="requestedSpace"
      >
      <description-html>
         <![CDATA[The vFlash resource amount requested in bytes.]]>
      </description-html>
      </property>

   </fault>
   <fault name="InvalidAffinitySettingFault"
      type-id="vim.fault.InvalidAffinitySettingFault"
      vmodl-name="vim.fault.InvalidAffinitySettingFault"
      version-id-ref="vim.version.version2"
      base-type-id="vim.fault.VimFault"
      >
      <description-html>
         <![CDATA[An InvalidAffinitySettingsFault is thrown if an invalid affinity setting is
  specified for a virtual machine.]]>
      </description-html>
   </fault>
   <fault name="InvalidBmcRole"
      type-id="vim.fault.InvalidBmcRole"
      vmodl-name="vim.fault.InvalidBmcRole"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.VimFault"
      >
      <description-html>
         <![CDATA[An InvalidBmcRole fault is thrown when a BMC user doesn't have the necessary
  privileges. BMC (Board Management Controller) is a piece of hardware required for
  IPMI.]]>
      </description-html>
   </fault>
   <fault name="InvalidCAMServer"
      type-id="vim.fault.InvalidCAMServer"
      vmodl-name="vim.fault.InvalidCAMServer"
      version-id-ref="vim.version.version7"
      base-type-id="vim.fault.ActiveDirectoryFault"
      >
      <description-html>
         <![CDATA[Fault indicating that the CAM server
  for camServer cannot be reached,
  or is not a valid IP address.]]>
      </description-html>
            <property name="camServer" type-id-ref="java.lang.String"
      vmodl-name="camServer"
      >
      <description-html>
         <![CDATA[The address of the CAM server.]]>
      </description-html>
      </property>

   </fault>
   <fault name="InvalidDatastore"
      type-id="vim.fault.InvalidDatastore"
      vmodl-name="vim.fault.InvalidDatastore"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.VimFault"
      >
      <description-html>
         <![CDATA[An InvalidDatastore exception is thrown if an operation fails because of a
 problem with the specified datastore. Typically, a subclass of this
 exception is thrown, indicating a problem such as an inaccessible datastore
 or an invalid datastore path.]]>
      </description-html>
            <property name="datastore" type-id-ref="vim.Datastore"
      vmodl-name="datastore"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The datastore that is invalid.]]>
      </description-html>
      </property>

            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The name of the datastore that is invalid.]]>
      </description-html>
      </property>

   </fault>
   <fault name="InvalidDatastorePath"
      type-id="vim.fault.InvalidDatastorePath"
      vmodl-name="vim.fault.InvalidDatastorePath"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.InvalidDatastore"
      >
      <description-html>
         <![CDATA[An InvalidDatastorePath exception is thrown if a datastore path violates
  the expected format. The expected format is "[dsName] path", e.g.
  "[storage1] folder/Vm1.vmdk".  This exception is also thrown if a datastore
  corresponding to the given datastore path is not found.]]>
      </description-html>
            <property name="datastorePath" type-id-ref="java.lang.String"
      vmodl-name="datastorePath"
      >
      <description-html>
         <![CDATA[The invalid datastore path name, if one was provided.]]>
      </description-html>
      </property>

   </fault>
   <fault name="InvalidEvent"
      type-id="vim.fault.InvalidEvent"
      vmodl-name="vim.fault.InvalidEvent"
      version-id-ref="vim.version.version2"
      base-type-id="vim.fault.VimFault"
      >
      <description-html>
         <![CDATA[A InvalidEvent fault is thrown when the event
  is malformed.]]>
      </description-html>
   </fault>
   <fault name="InvalidFolder"
      type-id="vim.fault.InvalidFolder"
      vmodl-name="vim.fault.InvalidFolder"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.VimFault"
      >
      <description-html>
         <![CDATA[An InvalidFolderFault exception is thrown when a
  node is moved to an invalid place in the hierarchy.
  <p>
  This can be because it is a child of the current node,
  or a wrong kind of container.]]>
      </description-html>
            <property name="target" type-id-ref="vim.ManagedEntity"
      vmodl-name="target"
      >
      <description-html>
         <![CDATA[Reference to invalid target.]]>
      </description-html>
      </property>

   </fault>
   <fault name="InvalidFormat"
      type-id="vim.fault.InvalidFormat"
      vmodl-name="vim.fault.InvalidFormat"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.VmConfigFault"
      >
      <description-html>
         <![CDATA[Throws when an invalid format is detected. For example, when
   a virtual machine is registered and the system is unable to parse
   the files as a virtual machine.]]>
      </description-html>
   </fault>
   <fault name="InvalidGuestLogin"
      type-id="vim.fault.InvalidGuestLogin"
      vmodl-name="vim.fault.InvalidGuestLogin"
      version-id-ref="vim.version.version7"
      base-type-id="vim.fault.GuestOperationsFault"
      >
      <description-html>
         <![CDATA[An InvalidGuestLogin exception is thrown when an operation fails because
 authentication information used to authenticate with the guest was not
 accepted.]]>
      </description-html>
   </fault>
   <fault name="InvalidHostName"
      type-id="vim.fault.InvalidHostName"
      vmodl-name="vim.fault.InvalidHostName"
      version-id-ref="vim.version.version6"
      base-type-id="vim.fault.HostConfigFault"
      >
      <description-html>
         <![CDATA[The attempted operation requires that the host has a suitable FQDN.]]>
      </description-html>
   </fault>
   <fault name="InvalidIpfixConfig"
      type-id="vim.fault.InvalidIpfixConfig"
      vmodl-name="vim.fault.InvalidIpfixConfig"
      version-id-ref="vim.version.version8"
      base-type-id="vim.fault.DvsFault"
      >
      <description-html>
         <![CDATA[Illegal value specified for a property of the switch's IpfixConfig.]]>
      </description-html>
            <property name="property" type-id-ref="vmodl.PropertyPath"
      vmodl-name="property"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Path of the property in IpfixConfig that has an invalid value.]]>
      </description-html>
      </property>

   </fault>
   <fault name="InvalidIpmiLoginInfo"
      type-id="vim.fault.InvalidIpmiLoginInfo"
      vmodl-name="vim.fault.InvalidIpmiLoginInfo"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.VimFault"
      >
      <description-html>
         <![CDATA[A InvalidIpmiLoginInfo fault is thrown when the IPMI user name and/or password is
  invalid.]]>
      </description-html>
   </fault>
   <fault name="InvalidIpmiMacAddress"
      type-id="vim.fault.InvalidIpmiMacAddress"
      vmodl-name="vim.fault.InvalidIpmiMacAddress"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.VimFault"
      >
      <description-html>
         <![CDATA[A InvalidIpmiMacAddress fault is thrown when the IPMI mac address provided by the
  user doesn't match with the observed mac address on the host.]]>
      </description-html>
            <property name="userProvidedMacAddress" type-id-ref="java.lang.String"
      vmodl-name="userProvidedMacAddress"
      >
      </property>

            <property name="observedMacAddress" type-id-ref="java.lang.String"
      vmodl-name="observedMacAddress"
      >
      </property>

   </fault>
   <fault name="InvalidLicense"
      type-id="vim.fault.InvalidLicense"
      vmodl-name="vim.fault.InvalidLicense"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.VimFault"
      >
      <description-html>
         <![CDATA[Thrown when
 an attempt is made to upload license content
 that is invalid.]]>
      </description-html>
            <property name="licenseContent" type-id-ref="java.lang.String"
      vmodl-name="licenseContent"
      >
      <description-html>
         <![CDATA[The content of the license being reported as invalid.]]>
      </description-html>
      </property>

   </fault>
   <fault name="InvalidLocale"
      type-id="vim.fault.InvalidLocale"
      vmodl-name="vim.fault.InvalidLocale"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.VimFault"
      >
      <description-html>
         <![CDATA[Thrown when a locale name is unknown or invalid.]]>
      </description-html>
   </fault>
   <fault name="InvalidLogin"
      type-id="vim.fault.InvalidLogin"
      vmodl-name="vim.fault.InvalidLogin"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.VimFault"
      >
      <description-html>
         <![CDATA[Thrown when a server logon fails due to a bad user name or
  password.]]>
      </description-html>
   </fault>
   <fault name="InvalidName"
      type-id="vim.fault.InvalidName"
      vmodl-name="vim.fault.InvalidName"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.VimFault"
      >
      <description-html>
         <![CDATA[A InvalidName fault is thrown when the name
  contains an invalid character or format.]]>
      </description-html>
            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      >
      <description-html>
         <![CDATA[The invalid name.]]>
      </description-html>
      </property>

            <property name="entity" type-id-ref="vim.ManagedEntity"
      vmodl-name="entity"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Entity, if any, that has an invalid name.]]>
      </description-html>
      </property>

   </fault>
   <fault name="InvalidOperationOnSecondaryVm"
      type-id="vim.fault.InvalidOperationOnSecondaryVm"
      vmodl-name="vim.fault.InvalidOperationOnSecondaryVm"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.VmFaultToleranceIssue"
      >
      <description-html>
         <![CDATA[This fault is thrown when an attempt is made to invoke an operation on
  a secondary virtual machine that is only supported on the primary virtual
  machine of the fault tolerant group.]]>
      </description-html>
            <property name="instanceUuid" type-id-ref="java.lang.String"
      vmodl-name="instanceUuid"
      >
      <description-html>
         <![CDATA[Instance UUID of the secondary virtual machine.]]>
      </description-html>
      </property>

   </fault>
   <fault name="InvalidPrivilege"
      type-id="vim.fault.InvalidPrivilege"
      vmodl-name="vim.fault.InvalidPrivilege"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.VimFault"
      >
      <description-html>
         <![CDATA[A InvalidPrivilege fault is thrown when the privilege
  does not exist.]]>
      </description-html>
            <property name="privilege" type-id-ref="java.lang.String"
      vmodl-name="privilege"
      >
      <description-html>
         <![CDATA[The invalid privilege.]]>
      </description-html>
      </property>

   </fault>
   <fault name="InvalidResourcePoolStructureFault"
      type-id="vim.fault.InvalidResourcePoolStructureFault"
      vmodl-name="vim.fault.InvalidResourcePoolStructureFault"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.InsufficientResourcesFault"
      >
      <description-html>
         <![CDATA[This fault is thrown when an operation will cause the structure of a resource
  pool hiearchy to exceed its limit. The limits are typically imposed by the total
  number of nodes, maximum fan-out, and total depth of the hierarchy.]]>
      </description-html>
   </fault>
   <fault name="InvalidSnapshotFormat"
      type-id="vim.fault.InvalidSnapshotFormat"
      vmodl-name="vim.fault.InvalidSnapshotFormat"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.InvalidFormat"
      >
      <description-html>
         <![CDATA[Thrown when an invalid snapshot configuration is detected. For
   example, when a virtual machine's snapshot tree includes
   snapshots that are no longer present.]]>
      </description-html>
   </fault>
   <fault name="InvalidState"
      type-id="vim.fault.InvalidState"
      vmodl-name="vim.fault.InvalidState"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.VimFault"
      >
      <description-html>
         <![CDATA[An InvalidState fault is thrown if the
  operation failed due to the current state of the system.]]>
      </description-html>
   </fault>
   <fault name="InvalidVmConfig"
      type-id="vim.fault.InvalidVmConfig"
      vmodl-name="vim.fault.InvalidVmConfig"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.VmConfigFault"
      >
      <description-html>
         <![CDATA[Thrown when virtual machine creation or configuration fails. This is
  a base type for all virtual machine configuration errors.]]>
      </description-html>
            <property name="property" type-id-ref="vmodl.PropertyPath"
      vmodl-name="property"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Path of the property in configSpec that has an invalid value.]]>
      </description-html>
      </property>

   </fault>
   <fault name="InvalidVmState"
      type-id="vim.fault.InvalidVmState"
      vmodl-name="vim.fault.InvalidVmState"
      version-id-ref="vim.version.version11"
      base-type-id="vim.fault.InvalidState"
      >
      <description-html>
         <![CDATA[The VM has an invalid state.]]>
      </description-html>
            <property name="vm" type-id-ref="vim.VirtualMachine"
      vmodl-name="vm"
      >
      <description-html>
         <![CDATA[The VM that has an invalid state.]]>
      </description-html>
      </property>

   </fault>
   <fault name="IpHostnameGeneratorError"
      type-id="vim.fault.IpHostnameGeneratorError"
      vmodl-name="vim.fault.IpHostnameGeneratorError"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.CustomizationFault"
      >
      <description-html>
         <![CDATA[An error occurred while running the IP/hostname generator application]]>
      </description-html>
   </fault>
   <fault name="IscsiFault"
      type-id="vim.fault.IscsiFault"
      vmodl-name="vim.fault.IscsiFault"
      version-id-ref="vim.version.version7"
      base-type-id="vim.fault.VimFault"
      >
      <description-html>
         <![CDATA[Base class for faults that can be thrown while invoking iSCSI management operations.]]>
      </description-html>
   </fault>
   <fault name="IscsiFaultInvalidVnic"
      type-id="vim.fault.IscsiFaultInvalidVnic"
      vmodl-name="vim.fault.IscsiFaultInvalidVnic"
      version-id-ref="vim.version.version7"
      base-type-id="vim.fault.IscsiFault"
      >
      <description-html>
         <![CDATA[This fault indicates an attempt is made to bind a Virtual NIC to an iSCSI adapter
  where the Virtual NIC has no association with the adapter. For ex: The uplink for
  the given Virtual NIC is not valid for the iSCSI HBA.]]>
      </description-html>
            <property name="vnicDevice" type-id-ref="java.lang.String"
      vmodl-name="vnicDevice"
      >
      </property>

   </fault>
   <fault name="IscsiFaultPnicInUse"
      type-id="vim.fault.IscsiFaultPnicInUse"
      vmodl-name="vim.fault.IscsiFaultPnicInUse"
      version-id-ref="vim.version.version7"
      base-type-id="vim.fault.IscsiFault"
      >
      <description-html>
         <![CDATA[This fault indicates the given Physical NIC is being used by iSCSI HBA.]]>
      </description-html>
            <property name="pnicDevice" type-id-ref="java.lang.String"
      vmodl-name="pnicDevice"
      >
      </property>

   </fault>
   <fault name="IscsiFaultVnicAlreadyBound"
      type-id="vim.fault.IscsiFaultVnicAlreadyBound"
      vmodl-name="vim.fault.IscsiFaultVnicAlreadyBound"
      version-id-ref="vim.version.version7"
      base-type-id="vim.fault.IscsiFault"
      >
      <description-html>
         <![CDATA[This fault indicates that the given Virtual NIC is already bound to the iSCSI HBA.]]>
      </description-html>
            <property name="vnicDevice" type-id-ref="java.lang.String"
      vmodl-name="vnicDevice"
      >
      </property>

   </fault>
   <fault name="IscsiFaultVnicHasActivePaths"
      type-id="vim.fault.IscsiFaultVnicHasActivePaths"
      vmodl-name="vim.fault.IscsiFaultVnicHasActivePaths"
      version-id-ref="vim.version.version7"
      base-type-id="vim.fault.IscsiFault"
      >
      <description-html>
         <![CDATA[This fault indicates the given Virtual NIC has active storage paths associated with it.]]>
      </description-html>
            <property name="vnicDevice" type-id-ref="java.lang.String"
      vmodl-name="vnicDevice"
      >
      </property>

   </fault>
   <fault name="IscsiFaultVnicHasMultipleUplinks"
      type-id="vim.fault.IscsiFaultVnicHasMultipleUplinks"
      vmodl-name="vim.fault.IscsiFaultVnicHasMultipleUplinks"
      version-id-ref="vim.version.version7"
      base-type-id="vim.fault.IscsiFault"
      >
      <description-html>
         <![CDATA[This fault indicates that the Virtual NIC has multiple uplinks and not suitable for iSCSI
  multi-pathing and can not be bound to iSCSI HBA.]]>
      </description-html>
            <property name="vnicDevice" type-id-ref="java.lang.String"
      vmodl-name="vnicDevice"
      >
      </property>

   </fault>
   <fault name="IscsiFaultVnicHasNoUplinks"
      type-id="vim.fault.IscsiFaultVnicHasNoUplinks"
      vmodl-name="vim.fault.IscsiFaultVnicHasNoUplinks"
      version-id-ref="vim.version.version7"
      base-type-id="vim.fault.IscsiFault"
      >
      <description-html>
         <![CDATA[This fault indicates the given Virtual NIC has no uplinks and not suitable for iSCSI
  multi-pathing configuration.]]>
      </description-html>
            <property name="vnicDevice" type-id-ref="java.lang.String"
      vmodl-name="vnicDevice"
      >
      </property>

   </fault>
   <fault name="IscsiFaultVnicHasWrongUplink"
      type-id="vim.fault.IscsiFaultVnicHasWrongUplink"
      vmodl-name="vim.fault.IscsiFaultVnicHasWrongUplink"
      version-id-ref="vim.version.version7"
      base-type-id="vim.fault.IscsiFault"
      >
      <description-html>
         <![CDATA[This fault indicates the given Virtual NIC has the wrong Physical uplink
 for iSCSI multi-pathing configuration. The Physical uplink is not associated
 with the iSCSI Host Bus Adapter.]]>
      </description-html>
            <property name="vnicDevice" type-id-ref="java.lang.String"
      vmodl-name="vnicDevice"
      >
      <description-html>
         <![CDATA[Contains the VMkernel virtual NIC device name.]]>
      </description-html>
      </property>

   </fault>
   <fault name="IscsiFaultVnicInUse"
      type-id="vim.fault.IscsiFaultVnicInUse"
      vmodl-name="vim.fault.IscsiFaultVnicInUse"
      version-id-ref="vim.version.version7"
      base-type-id="vim.fault.IscsiFault"
      >
      <description-html>
         <![CDATA[This fault indicates the given Virtual NIC is being used by iSCSI and the requested operation can't be completed.]]>
      </description-html>
            <property name="vnicDevice" type-id-ref="java.lang.String"
      vmodl-name="vnicDevice"
      >
      </property>

   </fault>
   <fault name="IscsiFaultVnicIsLastPath"
      type-id="vim.fault.IscsiFaultVnicIsLastPath"
      vmodl-name="vim.fault.IscsiFaultVnicIsLastPath"
      version-id-ref="vim.version.version7"
      base-type-id="vim.fault.IscsiFault"
      >
      <description-html>
         <![CDATA[This fault indicates that the given Virtual NIC is associated with the only path to the storage. Any attempt to unbind this
  from iSCSI HBA would result in storage being inaccessible.]]>
      </description-html>
            <property name="vnicDevice" type-id-ref="java.lang.String"
      vmodl-name="vnicDevice"
      >
      </property>

   </fault>
   <fault name="IscsiFaultVnicNotBound"
      type-id="vim.fault.IscsiFaultVnicNotBound"
      vmodl-name="vim.fault.IscsiFaultVnicNotBound"
      version-id-ref="vim.version.version7"
      base-type-id="vim.fault.IscsiFault"
      >
      <description-html>
         <![CDATA[This fault indicates an attempt was made to remove a Virtual NIC from an iSCSI HBA while
 Virtual NIC is not associated with the adapter.]]>
      </description-html>
            <property name="vnicDevice" type-id-ref="java.lang.String"
      vmodl-name="vnicDevice"
      >
      </property>

   </fault>
   <fault name="IscsiFaultVnicNotFound"
      type-id="vim.fault.IscsiFaultVnicNotFound"
      vmodl-name="vim.fault.IscsiFaultVnicNotFound"
      version-id-ref="vim.version.version7"
      base-type-id="vim.fault.IscsiFault"
      >
      <description-html>
         <![CDATA[This fault indicates an attempt was made to add a non-existent Virtual NIC adapter.]]>
      </description-html>
            <property name="vnicDevice" type-id-ref="java.lang.String"
      vmodl-name="vnicDevice"
      >
      </property>

   </fault>
   <fault name="KeyNotFound"
      type-id="vim.fault.KeyNotFound"
      vmodl-name="vim.fault.KeyNotFound"
      version-id-ref="vim.version.version14"
      base-type-id="vim.fault.VimFault"
      >
      <description-html>
         <![CDATA[An KeyNotFound fault is returned when the key does not exist among
 key value pairs.]]>
      </description-html>
            <property name="key" type-id-ref="java.lang.String"
      vmodl-name="key"
      >
      <description-html>
         <![CDATA[The non existing key.]]>
      </description-html>
      </property>

   </fault>
   <fault name="LargeRDMNotSupportedOnDatastore"
      type-id="vim.fault.LargeRDMNotSupportedOnDatastore"
      vmodl-name="vim.fault.LargeRDMNotSupportedOnDatastore"
      version-id-ref="vim.version.version7"
      base-type-id="vim.fault.VmConfigFault"
      >
      <description-html>
         <![CDATA[The virtual machine is configured with a 2TB+ Raw Disk Mapping. This is not
 supported on the datastore.]]>
      </description-html>
            <property name="device" type-id-ref="java.lang.String"
      vmodl-name="device"
      >
      <description-html>
         <![CDATA[The label of the 2TB+ RDM device that would have its backing placed on
 the datastore.
 This is not guaranteed to be the only such device.]]>
      </description-html>
      </property>

            <property name="datastore" type-id-ref="vim.Datastore"
      vmodl-name="datastore"
      >
      <description-html>
         <![CDATA[The datastore.]]>
      </description-html>
      </property>

            <property name="datastoreName" type-id-ref="java.lang.String"
      vmodl-name="datastoreName"
      >
      <description-html>
         <![CDATA[The name of the datastore.]]>
      </description-html>
      </property>

   </fault>
   <fault name="LicenseEntityNotFound"
      type-id="vim.fault.LicenseEntityNotFound"
      vmodl-name="vim.fault.LicenseEntityNotFound"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.VimFault"
      >
      <description-html>
         <![CDATA[An LicenseEntityNotFound fault is thrown when an attempt is
  do any operation on an entity/licensed asset that does not exist.
  Example, remove an entity that does not exist.]]>
      </description-html>
            <property name="entityId" type-id-ref="java.lang.String"
      vmodl-name="entityId"
      >
      </property>

   </fault>
   <fault name="LicenseServerUnavailable"
      type-id="vim.fault.LicenseServerUnavailable"
      vmodl-name="vim.fault.LicenseServerUnavailable"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.VimFault"
      >
      <description-html>
         <![CDATA[This fault is thrown when the License Server
 is unavailable during an attempt to change license state.]]>
      </description-html>
            <property name="licenseServer" type-id-ref="java.lang.String"
      vmodl-name="licenseServer"
      >
      <description-html>
         <![CDATA[The name of the unavailable license server.]]>
      </description-html>
      </property>

   </fault>
   <fault name="LimitExceeded"
      type-id="vim.fault.LimitExceeded"
      vmodl-name="vim.fault.LimitExceeded"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.VimFault"
      >
      <description-html>
         <![CDATA[This exception is thrown if one of the arguments passed to the function exceeds
  a limit.]]>
      </description-html>
            <property name="property" type-id-ref="vmodl.PropertyPath"
      vmodl-name="property"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The name of the property that exceeds the limit.]]>
      </description-html>
      </property>

            <property name="limit" type-id-ref="INT"
      vmodl-name="limit"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The limit value.]]>
      </description-html>
      </property>

   </fault>
   <fault name="LinuxVolumeNotClean"
      type-id="vim.fault.LinuxVolumeNotClean"
      vmodl-name="vim.fault.LinuxVolumeNotClean"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.CustomizationFault"
      >
      <description-html>
         <![CDATA[Customization operation is performed on a linux source vm that
  was not shut down properly. If the filesystem has significant
  fsck errors on it, customization process cannot make changes
  to it.]]>
      </description-html>
   </fault>
   <fault name="LogBundlingFailed"
      type-id="vim.fault.LogBundlingFailed"
      vmodl-name="vim.fault.LogBundlingFailed"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.VimFault"
      >
      <description-html>
         <![CDATA[A LogBundlingFailed exception is thrown when generation of a diagnostic
  data bundle fails.]]>
      </description-html>
   </fault>
   <fault name="MemoryHotPlugNotSupported"
      type-id="vim.fault.MemoryHotPlugNotSupported"
      vmodl-name="vim.fault.MemoryHotPlugNotSupported"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.VmConfigFault"
      >
      <description-html>
         <![CDATA[Thrown when memory cannot be hot-added or hot-removed from the virtual machine.]]>
      </description-html>
   </fault>
   <fault name="MigrationFault"
      type-id="vim.fault.MigrationFault"
      vmodl-name="vim.fault.MigrationFault"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.VimFault"
      >
      <description-html>
         <![CDATA[Base object type for issues that can occur when reassigning the execution
 host of a virtual machine using migrate or relocate. These issues are typically
 used as argument in the MigrationEvent. When a MigrationFault is used as a value
 in a MigrationEvent, the type of MigrationEvent determines if the issue is a
 warning or an error (for example, MigrationHostWarningEvent or
 MigrationHostErrorEvent). When thrown as an exception, the fault is an error.
 <p>
 Issues are categorized as errors or warnings according to the following
 criteria:
 <p>
 If the virtual machine is powered on:
 <ol>
 <li>Error for fatal problems with the VMotion interfaces or licensing.</li>
 <li>Error if VMotion would fail.</li>
 <li>Error if VMotion would in any way interrupt the continuous and consistent
     operation of the virtual machine.</li>
 <li>Warning for potential performance or connectivity problems between the
     source and destination VMotion interfaces.</li>
 <li>Warning if the virtual machine's currently disconnected devices may not
     be connectable after VMotion.</li>
 </ol>
 If the virtual machine is powered off or suspended:
 <ol>
 <li>Error if the destination host cannot access all the files that comprise
     the virtual machine (including virtual disks).</li>
 <li>Error if aspects of the virtual machine are not supported by the
     destination host's hardware or software.</li>
 <li>Warning if problems would occur when powering on or resuming the
     virtual machine, if the usage/configuration of the destination
     host were to remain in its current state.</li>
 </ol>]]>
      </description-html>
   </fault>
   <fault name="MigrationFeatureNotSupported"
      type-id="vim.fault.MigrationFeatureNotSupported"
      vmodl-name="vim.fault.MigrationFeatureNotSupported"
      version-id-ref="vim.version.version2"
      base-type-id="vim.fault.MigrationFault"
      >
      <description-html>
         <![CDATA[A migration operation that requires feature support on source and
 destination hosts is lacking support on the host.]]>
      </description-html>
            <property name="atSourceHost" type-id-ref="BOOLEAN"
      vmodl-name="atSourceHost"
      >
      <description-html>
         <![CDATA[Whether this error is for the source host.]]>
      </description-html>
      </property>

            <property name="failedHostName" type-id-ref="java.lang.String"
      vmodl-name="failedHostName"
      >
      <description-html>
         <![CDATA[The name of the host.]]>
      </description-html>
      </property>

            <property name="failedHost" type-id-ref="vim.HostSystem"
      vmodl-name="failedHost"
      >
      <description-html>
         <![CDATA[The host.]]>
      </description-html>
      </property>

   </fault>
   <fault name="MigrationNotReady"
      type-id="vim.fault.MigrationNotReady"
      vmodl-name="vim.fault.MigrationNotReady"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.MigrationFault"
      >
      <description-html>
         <![CDATA[The VM to be migrated is not ready for the migration operation. This might
 because the VM is still in the progress of powering on or resuming from a
 suspended state.]]>
      </description-html>
            <property name="reason" type-id-ref="java.lang.String"
      vmodl-name="reason"
      >
      </property>

   </fault>
   <fault name="MismatchedBundle"
      type-id="vim.fault.MismatchedBundle"
      vmodl-name="vim.fault.MismatchedBundle"
      version-id-ref="vim.version.version2"
      base-type-id="vim.fault.VimFault"
      >
      <description-html>
         <![CDATA[A MismatchedBundle fault is thrown when the bundle supplied for
  <a href="vim.host.FirmwareSystem.html#restoreConfiguration">RestoreFirmwareConfiguration</a> does not match the
  specifications of the host]]>
      </description-html>
            <property name="bundleUuid" type-id-ref="java.lang.String"
      vmodl-name="bundleUuid"
      >
      <description-html>
         <![CDATA[The uuid of the host that the bundle was generated for]]>
      </description-html>
      </property>

            <property name="hostUuid" type-id-ref="java.lang.String"
      vmodl-name="hostUuid"
      >
      <description-html>
         <![CDATA[The uuid of the host]]>
      </description-html>
      </property>

            <property name="bundleBuildNumber" type-id-ref="INT"
      vmodl-name="bundleBuildNumber"
      >
      <description-html>
         <![CDATA[The build number of the host that the bundle was generated for]]>
      </description-html>
      </property>

            <property name="hostBuildNumber" type-id-ref="INT"
      vmodl-name="hostBuildNumber"
      >
      <description-html>
         <![CDATA[The build number of the host]]>
      </description-html>
      </property>

   </fault>
   <fault name="MismatchedNetworkPolicies"
      type-id="vim.fault.MismatchedNetworkPolicies"
      vmodl-name="vim.fault.MismatchedNetworkPolicies"
      version-id-ref="vim.version.version1"
      is-deprecated="true"
      base-type-id="vim.fault.MigrationFault"
      >
      <description-html>
         <![CDATA[The virtual machine network uses different offload or security
 policies on the destination host than on the source host. This is an error
 if the virtual machine is currently connected to the network, and a warning
 otherwise.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 5.5, use <a href="vim.fault.CannotUseNetwork.html">CannotUseNetwork</a> with
 a correct reason for the fault.]]>
      </deprecated-html>
            <property name="device" type-id-ref="java.lang.String"
      vmodl-name="device"
      >
      <description-html>
         <![CDATA[The label of the interface device.]]>
      </description-html>
      </property>

            <property name="backing" type-id-ref="java.lang.String"
      vmodl-name="backing"
      >
      <description-html>
         <![CDATA[The name of the network.]]>
      </description-html>
      </property>

            <property name="connected" type-id-ref="BOOLEAN"
      vmodl-name="connected"
      >
      <description-html>
         <![CDATA[The connected/disconnected state of the device.]]>
      </description-html>
      </property>

   </fault>
   <fault name="MismatchedVMotionNetworkNames"
      type-id="vim.fault.MismatchedVMotionNetworkNames"
      vmodl-name="vim.fault.MismatchedVMotionNetworkNames"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.MigrationFault"
      >
      <description-html>
         <![CDATA[The source and destination hosts do not use the same network name for
 their VMotion interfaces. This is a warning for migrating powered-on virtual
 machines.]]>
      </description-html>
            <property name="sourceNetwork" type-id-ref="java.lang.String"
      vmodl-name="sourceNetwork"
      >
      <description-html>
         <![CDATA[The name of the network used by the source host VMotion interface.]]>
      </description-html>
      </property>

            <property name="destNetwork" type-id-ref="java.lang.String"
      vmodl-name="destNetwork"
      >
      <description-html>
         <![CDATA[The name of the network used by the destination host VMotion interface.]]>
      </description-html>
      </property>

   </fault>
   <fault name="MissingBmcSupport"
      type-id="vim.fault.MissingBmcSupport"
      vmodl-name="vim.fault.MissingBmcSupport"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.VimFault"
      >
      <description-html>
         <![CDATA[A MissingBmcSuppport fault is thrown when a host's BMC doesn't support IPMI.
  BMC (Board Management Controller) is a piece of hardware required for IPMI.]]>
      </description-html>
   </fault>
   <fault name="MissingLinuxCustResources"
      type-id="vim.fault.MissingLinuxCustResources"
      vmodl-name="vim.fault.MissingLinuxCustResources"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.CustomizationFault"
      >
      <description-html>
         <![CDATA[Usable open source components required for Linux customization were not found
  on the server.]]>
      </description-html>
   </fault>
   <fault name="MissingWindowsCustResources"
      type-id="vim.fault.MissingWindowsCustResources"
      vmodl-name="vim.fault.MissingWindowsCustResources"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.CustomizationFault"
      >
      <description-html>
         <![CDATA[A usable sysprep file was not found on the server.]]>
      </description-html>
   </fault>
   <fault name="MksConnectionLimitReached"
      type-id="vim.fault.MksConnectionLimitReached"
      vmodl-name="vim.fault.MksConnectionLimitReached"
      version-id-ref="vim.version.version7"
      base-type-id="vim.fault.InvalidState"
      >
      <description-html>
         <![CDATA[Thrown when a mouse-keyboard-screen connection ticket to a virtual machine
  cannot be granted because the configured connection limit has been reached.]]>
      </description-html>
            <property name="connectionLimit" type-id-ref="INT"
      vmodl-name="connectionLimit"
      >
      <description-html>
         <![CDATA[MKS connection limit for the virtual machine.]]>
      </description-html>
      </property>

   </fault>
   <fault name="MountError"
      type-id="vim.fault.MountError"
      vmodl-name="vim.fault.MountError"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.CustomizationFault"
      >
      <description-html>
         <![CDATA[Customization failed because the customization process was unable to mount a remote
  virtual disk file.]]>
      </description-html>
            <property name="vm" type-id-ref="vim.VirtualMachine"
      vmodl-name="vm"
      >
      <description-html>
         <![CDATA[The virtual machine to be customized.]]>
      </description-html>
      </property>

            <property name="diskIndex" type-id-ref="INT"
      vmodl-name="diskIndex"
      >
      <description-html>
         <![CDATA[Index into the virtual machine's device list,
  representing the key value that identifies the virtual device
  that is the presumed boot disk.]]>
      </description-html>
      </property>

   </fault>
   <fault name="MultipleCertificatesVerifyFault"
      type-id="vim.fault.MultipleCertificatesVerifyFault"
      vmodl-name="vim.fault.MultipleCertificatesVerifyFault"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.HostConnectFault"
      >
      <description-html>
         <![CDATA[MultipleCertificatesVerifyFault is thrown by the host connect method
 <a href="vim.HostSystem.html#reconnect">ReconnectHost_Task</a> as well as the methods to add a host to
 VirtualCenter (<a href="vim.Folder.html#addStandaloneHost">AddStandaloneHost_Task</a> and
 <a href="vim.ClusterComputeResource.html#addHost">AddHost_Task</a>) if VirtualCenter detects that the
 host has different SSL certificates for different management ports. This
 can occur, for example, if an ESX 2.x host has different SSL certificates
 for the authd service (port 902) and the Management UI port (port 443).
 VirtualCenter is not able to manage such hosts. To fix this issue, the user
 should modify the host to ensure there is only one certificate for
 all services. Alternatively, different certificates are allowed as long as each
 certificate is verifiable (trusted) by the VirtualCenter server.]]>
      </description-html>
            <property name="thumbprintData" type-id-ref="vim.fault.MultipleCertificatesVerifyFault.ThumbprintData"
      vmodl-name="thumbprintData"
      is-array="true"
      >
      <description-html>
         <![CDATA[The thumbprints (and associated ports) used by the services on the host.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.fault.MultipleCertificatesVerifyFault.ThumbprintData</nested-type-id-ref>
   </fault>
   <fault name="NamespaceFull"
      type-id="vim.fault.NamespaceFull"
      vmodl-name="vim.fault.NamespaceFull"
      version-id-ref="vim.version.version8"
      base-type-id="vim.fault.VimFault"
      >
      <description-html>
         <![CDATA[A NamespaceFull fault is thrown when an operation
  on namespace requires more space to complete.]]>
      </description-html>
            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      >
      <description-html>
         <![CDATA[The namespace in question.]]>
      </description-html>
      </property>

            <property name="currentMaxSize" type-id-ref="LONG"
      vmodl-name="currentMaxSize"
      >
      <description-html>
         <![CDATA[Current maximum size.]]>
      </description-html>
      </property>

            <property name="requiredSize" type-id-ref="LONG"
      vmodl-name="requiredSize"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Size necessary to complete operation.  If not present,
 system was not able to determine how much space would
 be necessary to complete operation.]]>
      </description-html>
      </property>

   </fault>
   <fault name="NamespaceLimitReached"
      type-id="vim.fault.NamespaceLimitReached"
      vmodl-name="vim.fault.NamespaceLimitReached"
      version-id-ref="vim.version.version8"
      base-type-id="vim.fault.VimFault"
      >
      <description-html>
         <![CDATA[A NamespaceLimitReached fault is thrown when the maximum allowed
  namespaces for a virtual machine will be exceeded.]]>
      </description-html>
            <property name="limit" type-id-ref="INT"
      vmodl-name="limit"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Allowed maximum number of namespaces per virtual machine.]]>
      </description-html>
      </property>

   </fault>
   <fault name="NamespaceWriteProtected"
      type-id="vim.fault.NamespaceWriteProtected"
      vmodl-name="vim.fault.NamespaceWriteProtected"
      version-id-ref="vim.version.version8"
      base-type-id="vim.fault.VimFault"
      >
      <description-html>
         <![CDATA[A NamespaceWriteProtected fault is thrown when an operation
  on namespace fails because namespace is write-protected.]]>
      </description-html>
            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      >
      <description-html>
         <![CDATA[The namespace in question.]]>
      </description-html>
      </property>

   </fault>
   <fault name="NasConfigFault"
      type-id="vim.fault.NasConfigFault"
      vmodl-name="vim.fault.NasConfigFault"
      version-id-ref="vim.version.version4"
      base-type-id="vim.fault.HostConfigFault"
      >
      <description-html>
         <![CDATA[Base class for all network-attached storage configuration faults.]]>
      </description-html>
            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      >
      <description-html>
         <![CDATA[Name of the Nas datastore being configured.]]>
      </description-html>
      </property>

   </fault>
   <fault name="NasConnectionLimitReached"
      type-id="vim.fault.NasConnectionLimitReached"
      vmodl-name="vim.fault.NasConnectionLimitReached"
      version-id-ref="vim.version.version4"
      base-type-id="vim.fault.NasConfigFault"
      >
      <description-html>
         <![CDATA[This fault is thrown when an operation to configure a CIFS volume fails
 because the request exceeds the maximum allowed connections on this host
 for the specified remote path.]]>
      </description-html>
            <property name="remoteHost" type-id-ref="java.lang.String"
      vmodl-name="remoteHost"
      >
      <description-html>
         <![CDATA[The host that runs the NFS server.]]>
      </description-html>
      </property>

            <property name="remotePath" type-id-ref="java.lang.String"
      vmodl-name="remotePath"
      >
      <description-html>
         <![CDATA[The remote share.]]>
      </description-html>
      </property>

   </fault>
   <fault name="NasSessionCredentialConflict"
      type-id="vim.fault.NasSessionCredentialConflict"
      vmodl-name="vim.fault.NasSessionCredentialConflict"
      version-id-ref="vim.version.version4"
      base-type-id="vim.fault.NasConfigFault"
      >
      <description-html>
         <![CDATA[This fault is thrown when an operation to configure a CIFS volume fails
 when attempting to log on more than once with the same user name.]]>
      </description-html>
            <property name="remoteHost" type-id-ref="java.lang.String"
      vmodl-name="remoteHost"
      >
      <description-html>
         <![CDATA[The host that runs the NFS server.]]>
      </description-html>
      </property>

            <property name="remotePath" type-id-ref="java.lang.String"
      vmodl-name="remotePath"
      >
      <description-html>
         <![CDATA[The remote share.]]>
      </description-html>
      </property>

            <property name="userName" type-id-ref="java.lang.String"
      vmodl-name="userName"
      >
      </property>

   </fault>
   <fault name="NasVolumeNotMounted"
      type-id="vim.fault.NasVolumeNotMounted"
      vmodl-name="vim.fault.NasVolumeNotMounted"
      version-id-ref="vim.version.version4"
      base-type-id="vim.fault.NasConfigFault"
      >
      <description-html>
         <![CDATA[This fault is thrown when an operation to configure a NAS datastore
  fails because the specified NFS volume is not mounted.]]>
      </description-html>
            <property name="remoteHost" type-id-ref="java.lang.String"
      vmodl-name="remoteHost"
      >
      <description-html>
         <![CDATA[The host that runs the NFS server.]]>
      </description-html>
      </property>

            <property name="remotePath" type-id-ref="java.lang.String"
      vmodl-name="remotePath"
      >
      <description-html>
         <![CDATA[The remote share.]]>
      </description-html>
      </property>

   </fault>
   <fault name="NetworkCopyFault"
      type-id="vim.fault.NetworkCopyFault"
      vmodl-name="vim.fault.NetworkCopyFault"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.FileFault"
      >
      <description-html>
         <![CDATA[A network copy of the file failed.]]>
      </description-html>
   </fault>
   <fault name="NetworkDisruptedAndConfigRolledBack"
      type-id="vim.fault.NetworkDisruptedAndConfigRolledBack"
      vmodl-name="vim.fault.NetworkDisruptedAndConfigRolledBack"
      version-id-ref="vim.version.version8"
      base-type-id="vim.fault.VimFault"
      >
      <description-html>
         <![CDATA[Thrown if network configuration change disconnected the host from vCenter server
  and has been rolled back.]]>
      </description-html>
            <property name="host" type-id-ref="java.lang.String"
      vmodl-name="host"
      >
      <description-html>
         <![CDATA[The name of host on which the network configuration was rolled back.]]>
      </description-html>
      </property>

   </fault>
   <fault name="NetworkInaccessible"
      type-id="vim.fault.NetworkInaccessible"
      vmodl-name="vim.fault.NetworkInaccessible"
      version-id-ref="vim.version.version4"
      base-type-id="vim.fault.NasConfigFault"
      >
      <description-html>
         <![CDATA[This fault is thrown when an operation to configure a NAS volume fails
  because network access is unavailable.]]>
      </description-html>
   </fault>
   <fault name="NetworksMayNotBeTheSame"
      type-id="vim.fault.NetworksMayNotBeTheSame"
      vmodl-name="vim.fault.NetworksMayNotBeTheSame"
      version-id-ref="vim.version.version2"
      base-type-id="vim.fault.MigrationFault"
      >
      <description-html>
         <![CDATA[Used as a warning if a virtual machine provisioning operation is done
 across datacenters.  This warns that the network used by the virtual
 machine before and after the operation may not be the same even though
 the two networks have the same name.  This is because network names
 are only unique within a datacenter.]]>
      </description-html>
            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The name of the network.]]>
      </description-html>
      </property>

   </fault>
   <fault name="NicSettingMismatch"
      type-id="vim.fault.NicSettingMismatch"
      vmodl-name="vim.fault.NicSettingMismatch"
      version-id-ref="vim.version.version2"
      base-type-id="vim.fault.CustomizationFault"
      >
      <description-html>
         <![CDATA[The number of network adapter settings in the customization specification
 does not match the number of network adapters present in the virtual machine.]]>
      </description-html>
            <property name="numberOfNicsInSpec" type-id-ref="INT"
      vmodl-name="numberOfNicsInSpec"
      >
      <description-html>
         <![CDATA[The number of network adapter settings specified in the customization
 specification.]]>
      </description-html>
      </property>

            <property name="numberOfNicsInVM" type-id-ref="INT"
      vmodl-name="numberOfNicsInVM"
      >
      <description-html>
         <![CDATA[The number of network adapters present in the virtual machine.]]>
      </description-html>
      </property>

   </fault>
   <fault name="NoActiveHostInCluster"
      type-id="vim.fault.NoActiveHostInCluster"
      vmodl-name="vim.fault.NoActiveHostInCluster"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.InvalidState"
      >
      <description-html>
         <![CDATA[A NoActiveHostInCluster fault is thrown when there is no host in a valid
 state in the given compute resource to perform a specified operation. This
 can happen, for example, if all the hosts are disconnected or in maintenance
 mode.]]>
      </description-html>
            <property name="computeResource" type-id-ref="vim.ComputeResource"
      vmodl-name="computeResource"
      >
      <description-html>
         <![CDATA[The compute resource that does not have any active hosts.]]>
      </description-html>
      </property>

   </fault>
   <fault name="NoClientCertificate"
      type-id="vim.fault.NoClientCertificate"
      vmodl-name="vim.fault.NoClientCertificate"
      version-id-ref="vim.version.version2"
      base-type-id="vim.fault.VimFault"
      >
      <description-html>
         <![CDATA[This exception is thrown when a client has connected without supplying a
 certificate but the associated call expects that the client has done so.]]>
      </description-html>
   </fault>
   <fault name="NoCompatibleDatastore"
      type-id="vim.fault.NoCompatibleDatastore"
      vmodl-name="vim.fault.NoCompatibleDatastore"
      version-id-ref="vim.version.version7"
      base-type-id="vim.fault.VimFault"
      >
      <description-html>
         <![CDATA[A NoCompatibleDatastore fault is thrown when Storage DRS cannot find a compatible
 datastore in a given storage pod to place a disk or a virtual machine.
 a virtual machine.]]>
      </description-html>
   </fault>
   <fault name="NoCompatibleHardAffinityHost"
      type-id="vim.fault.NoCompatibleHardAffinityHost"
      vmodl-name="vim.fault.NoCompatibleHardAffinityHost"
      version-id-ref="vim.version.version6"
      base-type-id="vim.fault.VmConfigFault"
      >
      <description-html>
         <![CDATA[The cluster contains no hosts satisfying the hard VM/host affinity rules
  constraint for the VM.]]>
      </description-html>
            <property name="vmName" type-id-ref="java.lang.String"
      vmodl-name="vmName"
      >
      <description-html>
         <![CDATA[The vm for which there are no compatible hard-affine hosts in the cluster.]]>
      </description-html>
      </property>

   </fault>
   <fault name="NoCompatibleHost"
      type-id="vim.fault.NoCompatibleHost"
      vmodl-name="vim.fault.NoCompatibleHost"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.VimFault"
      >
      <description-html>
         <![CDATA[A NoCompatibleHost fault is thrown when DRS cannot find a compatible
 host in a given compute resource to run a virtual machine on.]]>
      </description-html>
            <property name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The list of hosts that are not compatible, each element has a
 corresponding fault in the error array.]]>
      </description-html>
      </property>

            <property name="error" type-id-ref="vmodl.LocalizedMethodFault"
      vmodl-name="error"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[An error in this array indicates why the corresponding host in the
 host array is incompatible.]]>
      </description-html>
      </property>

   </fault>
   <fault name="NoCompatibleHostWithAccessToDevice"
      type-id="vim.fault.NoCompatibleHostWithAccessToDevice"
      vmodl-name="vim.fault.NoCompatibleHostWithAccessToDevice"
      version-id-ref="vim.version.version6"
      base-type-id="vim.fault.NoCompatibleHost"
      >
      <description-html>
         <![CDATA[This fault is used to report that a FT VM cannot be placed because there is
 no compatible host that can access all devices required to be connected when
 the VM powers on.]]>
      </description-html>
   </fault>
   <fault name="NoCompatibleSoftAffinityHost"
      type-id="vim.fault.NoCompatibleSoftAffinityHost"
      vmodl-name="vim.fault.NoCompatibleSoftAffinityHost"
      version-id-ref="vim.version.version6"
      base-type-id="vim.fault.VmConfigFault"
      >
      <description-html>
         <![CDATA[The cluster contains no hosts satisfying the soft VM/host affinity rules
  constraint for the VM.]]>
      </description-html>
            <property name="vmName" type-id-ref="java.lang.String"
      vmodl-name="vmName"
      >
      <description-html>
         <![CDATA[The vm for which there are no compatible soft-affine hosts in the cluster.]]>
      </description-html>
      </property>

   </fault>
   <fault name="NoConnectedDatastore"
      type-id="vim.fault.NoConnectedDatastore"
      vmodl-name="vim.fault.NoConnectedDatastore"
      version-id-ref="vim.version.version7"
      base-type-id="vim.fault.VimFault"
      >
      <description-html>
         <![CDATA[The fault occurs when Storage DRS cannot move a virtual machine because
  the host it is registered on is not connected to any other datastore
  in the storage pod.]]>
      </description-html>
   </fault>
   <fault name="NoDiskFound"
      type-id="vim.fault.NoDiskFound"
      vmodl-name="vim.fault.NoDiskFound"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.VimFault"
      >
      <description-html>
         <![CDATA[This exception is thrown when a virtual machine
 which has no virtual disks is being upgraded or relaid out
 using the VirtualMachine.upgradeVirtualHardware or upgradeVmLayout
 commands.]]>
      </description-html>
   </fault>
   <fault name="NoDiskSpace"
      type-id="vim.fault.NoDiskSpace"
      vmodl-name="vim.fault.NoDiskSpace"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.FileFault"
      >
      <description-html>
         <![CDATA[This fault is thrown when an operation fails because of insufficient
  disk space.]]>
      </description-html>
            <property name="datastore" type-id-ref="java.lang.String"
      vmodl-name="datastore"
      >
      <description-html>
         <![CDATA[The name of the datastore with insufficient disk space.]]>
      </description-html>
      </property>

   </fault>
   <fault name="NoDisksToCustomize"
      type-id="vim.fault.NoDisksToCustomize"
      vmodl-name="vim.fault.NoDisksToCustomize"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.CustomizationFault"
      >
      <description-html>
         <![CDATA[None of the disks attached to the VM are suitable for customization.]]>
      </description-html>
   </fault>
   <fault name="NoGateway"
      type-id="vim.fault.NoGateway"
      vmodl-name="vim.fault.NoGateway"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.HostConfigFault"
      >
      <description-html>
         <![CDATA[This error occurs when an operation fails because of vmkernel gateway
  is unset.]]>
      </description-html>
   </fault>
   <fault name="NoGuestHeartbeat"
      type-id="vim.fault.NoGuestHeartbeat"
      vmodl-name="vim.fault.NoGuestHeartbeat"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.MigrationFault"
      >
      <description-html>
         <![CDATA[A powered-on virtual machine has a guest OS with Tools installed, but it does not
 have a valid heartbeat.]]>
      </description-html>
   </fault>
   <fault name="NoHost"
      type-id="vim.fault.NoHost"
      vmodl-name="vim.fault.NoHost"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.HostConnectFault"
      >
      <description-html>
         <![CDATA[A NoHostFault fault occurs when a host
  cannot be reached.]]>
      </description-html>
            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      is-optional="true"
      >
      </property>

   </fault>
   <fault name="NoHostSuitableForFtSecondary"
      type-id="vim.fault.NoHostSuitableForFtSecondary"
      vmodl-name="vim.fault.NoHostSuitableForFtSecondary"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.VmFaultToleranceIssue"
      >
      <description-html>
         <![CDATA[The NoHostSuitableForFtSecondary fault is thrown when the system is unable to
  find a suitable host for the Fault Tolerance secondary virtual machine.
  This fault can be thrown when Virtual Center is trying to place or power on
  a Fault Tolerance Secondary, in both DRS or non-DRS cases.]]>
      </description-html>
            <property name="vm" type-id-ref="vim.VirtualMachine"
      vmodl-name="vm"
      >
      <description-html>
         <![CDATA[The primary virtual machine corresponding to the secondary virtual
  machine.]]>
      </description-html>
      </property>

            <property name="vmName" type-id-ref="java.lang.String"
      vmodl-name="vmName"
      >
      <description-html>
         <![CDATA[The name of the primary virtual machine corresponding to the secondary
  virtual machine.]]>
      </description-html>
      </property>

   </fault>
   <fault name="NoPeerHostFound"
      type-id="vim.fault.NoPeerHostFound"
      vmodl-name="vim.fault.NoPeerHostFound"
      version-id-ref="vim.version.version2"
      base-type-id="vim.fault.HostPowerOpFailed"
      >
      <description-html>
         <![CDATA[This fault is thrown when no peer host is found to wake up this host.]]>
      </description-html>
   </fault>
   <fault name="NoPermissionOnAD"
      type-id="vim.fault.NoPermissionOnAD"
      vmodl-name="vim.fault.NoPermissionOnAD"
      version-id-ref="vim.version.version6"
      base-type-id="vim.fault.ActiveDirectoryFault"
      >
      <description-html>
         <![CDATA[Fault indicating that the user account used to connect to the
  Active Directory doesn not have enough permissions for the action
  that was attempted.]]>
      </description-html>
   </fault>
   <fault name="NoPermissionOnHost"
      type-id="vim.fault.NoPermissionOnHost"
      vmodl-name="vim.fault.NoPermissionOnHost"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.HostConnectFault"
      >
      <description-html>
         <![CDATA[This indicates that the user account used to connect to the host does
  not have enough permissions to enable VirtualCenter to manage the host.]]>
      </description-html>
   </fault>
   <fault name="NoPermissionOnNasVolume"
      type-id="vim.fault.NoPermissionOnNasVolume"
      vmodl-name="vim.fault.NoPermissionOnNasVolume"
      version-id-ref="vim.version.version4"
      base-type-id="vim.fault.NasConfigFault"
      >
      <description-html>
         <![CDATA[This fault is thrown when an operation to configure a NAS volume fails
  because of insufficient user permissions.

  For CIFS volumes, this implies that the user specified in the
  <a href="vim.host.NasVolume.Specification.html">spec</a> does not have access to the
  network resource.]]>
      </description-html>
            <property name="userName" type-id-ref="java.lang.String"
      vmodl-name="userName"
      is-optional="true"
      >
      </property>

   </fault>
   <fault name="NoSubjectName"
      type-id="vim.fault.NoSubjectName"
      vmodl-name="vim.fault.NoSubjectName"
      version-id-ref="vim.version.version2"
      base-type-id="vim.fault.VimFault"
      >
      <description-html>
         <![CDATA[This exception is thrown when an extension has attempted to use certificate-based
 authentication but the extension has been registered without a subject name.]]>
      </description-html>
   </fault>
   <fault name="NoVirtualNic"
      type-id="vim.fault.NoVirtualNic"
      vmodl-name="vim.fault.NoVirtualNic"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.HostConfigFault"
      >
      <description-html>
         <![CDATA[This error occurs when an operation fails because of
  no virtual NIC available.]]>
      </description-html>
   </fault>
   <fault name="NonADUserRequired"
      type-id="vim.fault.NonADUserRequired"
      vmodl-name="vim.fault.NonADUserRequired"
      version-id-ref="vim.version.version6"
      base-type-id="vim.fault.ActiveDirectoryFault"
      >
      <description-html>
         <![CDATA[Fault indicating that an operation must be executed by a
  non Active Directory user.]]>
      </description-html>
   </fault>
   <fault name="NonHomeRDMVMotionNotSupported"
      type-id="vim.fault.NonHomeRDMVMotionNotSupported"
      vmodl-name="vim.fault.NonHomeRDMVMotionNotSupported"
      version-id-ref="vim.version.version2"
      base-type-id="vim.fault.MigrationFeatureNotSupported"
      >
      <description-html>
         <![CDATA[An operation on a powered-on virtual machine requests that an existing
 Raw Disk Mapping end up in a location other than the new home datastore
 for the virtual machine, but the host does not have that capability.]]>
      </description-html>
            <property name="device" type-id-ref="java.lang.String"
      vmodl-name="device"
      >
      <description-html>
         <![CDATA[The label of an RDM device for which an unsupported move was requested.
 This is not guaranteed to be the only such device.]]>
      </description-html>
      </property>

   </fault>
   <fault name="NotADirectory"
      type-id="vim.fault.NotADirectory"
      vmodl-name="vim.fault.NotADirectory"
      version-id-ref="vim.version.version7"
      base-type-id="vim.fault.FileFault"
      >
      <description-html>
         <![CDATA[This fault is thrown when an operation fails because the specified object
  is not a directory.]]>
      </description-html>
   </fault>
   <fault name="NotAFile"
      type-id="vim.fault.NotAFile"
      vmodl-name="vim.fault.NotAFile"
      version-id-ref="vim.version.version7"
      base-type-id="vim.fault.FileFault"
      >
      <description-html>
         <![CDATA[This fault is thrown when an operation fails because the specified object
  is not a file.]]>
      </description-html>
   </fault>
   <fault name="NotFound"
      type-id="vim.fault.NotFound"
      vmodl-name="vim.fault.NotFound"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.VimFault"
      >
      <description-html>
         <![CDATA[A NotFound error occurs when a referenced component of a managed
  object cannot be found.  The referenced component can be a data
  object type (such as a role or permission) or a primitive
  (such as a string).
  <p>
  For example, if the missing referenced component is a data object, such as
  VirtualSwitch, the NotFound error is
  thrown.  The NotFound error is also thrown if the data object is found, but the referenced name
  (for example, "vswitch0") is not.]]>
      </description-html>
   </fault>
   <fault name="NotSupportedDeviceForFT"
      type-id="vim.fault.NotSupportedDeviceForFT"
      vmodl-name="vim.fault.NotSupportedDeviceForFT"
      version-id-ref="vim.version.version6"
      is-deprecated="true"
      base-type-id="vim.fault.VmFaultToleranceIssue"
      >
      <description-html>
         <![CDATA[VMs with pvscsi or vmxnet3 virtual devices support Fault Tolerance only
 on 4.1 or later hosts.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[as of vSphere API 7.0. Not used since vSphere API 6.5.]]>
      </deprecated-html>
            <property name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      >
      <description-html>
         <![CDATA[The host]]>
      </description-html>
      </property>

            <property name="hostName" type-id-ref="java.lang.String"
      vmodl-name="hostName"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The host name]]>
      </description-html>
      </property>

            <property name="vm" type-id-ref="vim.VirtualMachine"
      vmodl-name="vm"
      >
      <description-html>
         <![CDATA[The virtual machine]]>
      </description-html>
      </property>

            <property name="vmName" type-id-ref="java.lang.String"
      vmodl-name="vmName"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The virtual machine name]]>
      </description-html>
      </property>

            <property name="deviceType" type-id-ref="java.lang.String"
      vmodl-name="deviceType"
      >
      <description-html>
         <![CDATA[The device type]]>
      </description-html>
      </property>

            <property name="deviceLabel" type-id-ref="java.lang.String"
      vmodl-name="deviceLabel"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The device label]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.fault.NotSupportedDeviceForFT.DeviceType</nested-type-id-ref>
   </fault>
   <fault name="NotSupportedHost"
      type-id="vim.fault.NotSupportedHost"
      vmodl-name="vim.fault.NotSupportedHost"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.HostConnectFault"
      >
      <description-html>
         <![CDATA[A NotSupportedHostFault occurs when the host is of a type
  that is not supported.]]>
      </description-html>
            <property name="productName" type-id-ref="java.lang.String"
      vmodl-name="productName"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The name of the unsupported product if available;
  for example, "VMware ESX Server".]]>
      </description-html>
      </property>

            <property name="productVersion" type-id-ref="java.lang.String"
      vmodl-name="productVersion"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The version of the unsupported product; for example, "1.5.2"]]>
      </description-html>
      </property>

   </fault>
   <fault name="NotSupportedHostForChecksum"
      type-id="vim.fault.NotSupportedHostForChecksum"
      vmodl-name="vim.fault.NotSupportedHostForChecksum"
      version-id-ref="vim.version.version10"
      base-type-id="vim.fault.VimFault"
      >
      <description-html>
         <![CDATA[Base class for host checksum related faults]]>
      </description-html>
   </fault>
   <fault name="NotSupportedHostForVFlash"
      type-id="vim.fault.NotSupportedHostForVFlash"
      vmodl-name="vim.fault.NotSupportedHostForVFlash"
      version-id-ref="vim.version.version9"
      base-type-id="vim.fault.NotSupportedHost"
      >
      <description-html>
         <![CDATA[The host does not support vFlash feature.]]>
      </description-html>
            <property name="hostName" type-id-ref="java.lang.String"
      vmodl-name="hostName"
      >
      <description-html>
         <![CDATA[The name of the host.]]>
      </description-html>
      </property>

   </fault>
   <fault name="NotSupportedHostForVmcp"
      type-id="vim.fault.NotSupportedHostForVmcp"
      vmodl-name="vim.fault.NotSupportedHostForVmcp"
      version-id-ref="vim.version.version10"
      base-type-id="vim.fault.NotSupportedHost"
      >
      <description-html>
         <![CDATA[The host does not support VM Component Protection.]]>
      </description-html>
            <property name="hostName" type-id-ref="java.lang.String"
      vmodl-name="hostName"
      >
      <description-html>
         <![CDATA[The name of the host.]]>
      </description-html>
      </property>

   </fault>
   <fault name="NotSupportedHostForVmemFile"
      type-id="vim.fault.NotSupportedHostForVmemFile"
      vmodl-name="vim.fault.NotSupportedHostForVmemFile"
      version-id-ref="vim.version.version10"
      base-type-id="vim.fault.NotSupportedHost"
      >
      <description-html>
         <![CDATA[The host does not support VM Component Protection.]]>
      </description-html>
            <property name="hostName" type-id-ref="java.lang.String"
      vmodl-name="hostName"
      >
      <description-html>
         <![CDATA[The name of the host.]]>
      </description-html>
      </property>

   </fault>
   <fault name="NotSupportedHostForVsan"
      type-id="vim.fault.NotSupportedHostForVsan"
      vmodl-name="vim.fault.NotSupportedHostForVsan"
      version-id-ref="vim.version.version9"
      base-type-id="vim.fault.NotSupportedHost"
      >
      <description-html>
         <![CDATA[The host does not support VSAN.]]>
      </description-html>
            <property name="hostName" type-id-ref="java.lang.String"
      vmodl-name="hostName"
      >
      <description-html>
         <![CDATA[The name of the host.]]>
      </description-html>
      </property>

   </fault>
   <fault name="NotSupportedHostInCluster"
      type-id="vim.fault.NotSupportedHostInCluster"
      vmodl-name="vim.fault.NotSupportedHostInCluster"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.NotSupportedHost"
      >
      <description-html>
         <![CDATA[A NotSupportedHostInCluster fault occurs when the host does not support
  the necessary features to participate in the cluster.]]>
      </description-html>
   </fault>
   <fault name="NotSupportedHostInDvs"
      type-id="vim.fault.NotSupportedHostInDvs"
      vmodl-name="vim.fault.NotSupportedHostInDvs"
      version-id-ref="vim.version.version6"
      base-type-id="vim.fault.NotSupportedHost"
      >
      <description-html>
         <![CDATA[A NotSupportedHostInDvs fault occurs when the host does not support
  the necessary features to participate in the DVS.]]>
      </description-html>
            <property name="switchProductSpec" type-id-ref="vim.dvs.ProductSpec"
      vmodl-name="switchProductSpec"
      >
      <description-html>
         <![CDATA[The product spec of the DVS. This determines which host versions may
  participate in the DVS; that information may be queried by using
  <a href="vim.dvs.DistributedVirtualSwitchManager.html#queryCompatibleHostSpec">QueryDvsCompatibleHostSpec</a>.]]>
      </description-html>
      </property>

   </fault>
   <fault name="NotSupportedHostInHACluster"
      type-id="vim.fault.NotSupportedHostInHACluster"
      vmodl-name="vim.fault.NotSupportedHostInHACluster"
      version-id-ref="vim.version.version7"
      base-type-id="vim.fault.NotSupportedHost"
      >
      <description-html>
         <![CDATA[A NotSupportedHostInHACluster fault occurs when the host does not support
  the necessary features to participate in the HA cluster.]]>
      </description-html>
            <property name="hostName" type-id-ref="java.lang.String"
      vmodl-name="hostName"
      >
      <description-html>
         <![CDATA[The name of the host.]]>
      </description-html>
      </property>

            <property name="build" type-id-ref="java.lang.String"
      vmodl-name="build"
      >
      <description-html>
         <![CDATA[The product build number of the host.]]>
      </description-html>
      </property>

   </fault>
   <fault name="NumVirtualCpusExceedsLimit"
      type-id="vim.fault.NumVirtualCpusExceedsLimit"
      vmodl-name="vim.fault.NumVirtualCpusExceedsLimit"
      version-id-ref="vim.version.version6"
      base-type-id="vim.fault.InsufficientResourcesFault"
      >
      <description-html>
         <![CDATA[This fault is thrown when the total number of virtual CPUs present or requested
 in virtual machines' configuration has exceeded the limit on the host.]]>
      </description-html>
            <property name="maxSupportedVcpus" type-id-ref="INT"
      vmodl-name="maxSupportedVcpus"
      >
      <description-html>
         <![CDATA[The maximum number of virtual CPUs supported on the host.]]>
      </description-html>
      </property>

   </fault>
   <fault name="NumVirtualCpusIncompatible"
      type-id="vim.fault.NumVirtualCpusIncompatible"
      vmodl-name="vim.fault.NumVirtualCpusIncompatible"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.VmConfigFault"
      >
      <description-html>
         <![CDATA[The number of virtual CPUs present or requested in the virtual machine's
 configuration is not supported for a specific feature.]]>
      </description-html>
            <property name="reason" type-id-ref="java.lang.String"
      vmodl-name="reason"
      >
      <description-html>
         <![CDATA[The reason for the incompatibility.
 See <a href="vim.fault.NumVirtualCpusIncompatible.Reason.html">NumVirtualCpusIncompatibleReason</a> for valid values.]]>
      </description-html>
      </property>

            <property name="numCpu" type-id-ref="INT"
      vmodl-name="numCpu"
      >
      <description-html>
         <![CDATA[The number of virtual CPUs in the virtual machine.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.fault.NumVirtualCpusIncompatible.Reason</nested-type-id-ref>
   </fault>
   <fault name="OperationDisabledByGuest"
      type-id="vim.fault.OperationDisabledByGuest"
      vmodl-name="vim.fault.OperationDisabledByGuest"
      version-id-ref="vim.version.version7"
      base-type-id="vim.fault.GuestOperationsFault"
      >
      <description-html>
         <![CDATA[An OperationDisabledByGuest exception is thrown when an
  operation fails because the guest operations agent has been configured to
  disable the operation.]]>
      </description-html>
   </fault>
   <fault name="OperationNotSupportedByGuest"
      type-id="vim.fault.OperationNotSupportedByGuest"
      vmodl-name="vim.fault.OperationNotSupportedByGuest"
      version-id-ref="vim.version.version7"
      base-type-id="vim.fault.GuestOperationsFault"
      >
      <description-html>
         <![CDATA[An OperationNotSupportedByGuest exception is thrown when an
  operation fails because the guest OS does not support
  the operation (e.g., Registry manipulation in Linux guests.).]]>
      </description-html>
   </fault>
   <fault name="OutOfBounds"
      type-id="vim.fault.OutOfBounds"
      vmodl-name="vim.fault.OutOfBounds"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.VimFault"
      >
      <description-html>
         <![CDATA[Thrown if a parameter exceeds the acceptable range of values.]]>
      </description-html>
            <property name="argumentName" type-id-ref="vmodl.PropertyPath"
      vmodl-name="argumentName"
      >
      <description-html>
         <![CDATA[This should be the name of the field that holds the allowed maximum
  (for example, Host.capability.maxSupportedVMs).]]>
      </description-html>
      </property>

   </fault>
   <fault name="OvfConsumerPowerOnFault"
      type-id="vim.fault.OvfConsumerPowerOnFault"
      vmodl-name="vim.fault.OvfConsumerPowerOnFault"
      version-id-ref="vim.version.version7"
      base-type-id="vim.fault.InvalidState"
      >
      <description-html>
         <![CDATA[A fault type indicating that the power on operation failed.]]>
      </description-html>
            <property name="extensionKey" type-id-ref="java.lang.String"
      vmodl-name="extensionKey"
      >
      <description-html>
         <![CDATA[The OVF consumer's extension key.]]>
      </description-html>
      </property>

            <property name="extensionName" type-id-ref="java.lang.String"
      vmodl-name="extensionName"
      >
      <description-html>
         <![CDATA[The OVF consumer's extension name.]]>
      </description-html>
      </property>

            <property name="description" type-id-ref="java.lang.String"
      vmodl-name="description"
      >
      <description-html>
         <![CDATA[A localized, human-readable description of the error.]]>
      </description-html>
      </property>

   </fault>
   <fault name="OvfConsumerValidationFault"
      type-id="vim.fault.OvfConsumerValidationFault"
      vmodl-name="vim.fault.OvfConsumerValidationFault"
      version-id-ref="vim.version.version7"
      base-type-id="vim.fault.VmConfigFault"
      >
      <description-html>
         <![CDATA[Thrown by an OVF consumer if an error occurred while validating an instantiation OST.]]>
      </description-html>
            <property name="extensionKey" type-id-ref="java.lang.String"
      vmodl-name="extensionKey"
      >
      <description-html>
         <![CDATA[The OVF consumer's extension key.]]>
      </description-html>
      </property>

            <property name="extensionName" type-id-ref="java.lang.String"
      vmodl-name="extensionName"
      >
      <description-html>
         <![CDATA[The OVF consumer's extension name.]]>
      </description-html>
      </property>

            <property name="message" type-id-ref="java.lang.String"
      vmodl-name="message"
      >
      <description-html>
         <![CDATA[The error message, localized by the OVF consumer]]>
      </description-html>
      </property>

   </fault>
   <fault name="OvfFault"
      type-id="vim.fault.OvfFault"
      vmodl-name="vim.fault.OvfFault"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.VimFault"
      >
      <description-html>
         <![CDATA[A common base type fault for all Ovf related faults.

 The structure of OvfFault is as listed.
 <p>
 <ul>
   <li>OvfFault</li>
   <ul>
     <li>OvfInvalidPackage</li>
     <ul>
       <li>OvfXmlFormat</li>
       <li>OvfWrongNamespace</li>
       <li>OvfElement</li>
       <ul>
         <li>OvfElementInvalidValue</li>
         <li>OvfUnexpectedElement</li>
         <li>OvfDuplicateElement</li>
         <li>OvfMissingElement</li>
         <li>OvfMissingElementNormalBoundary</li>
         <li>OvfDuplicatedElementBoundary</li>
       </ul>
       <li>OvfAttribute</li>
       <ul>
         <li>OvfMissingAttribute</li>
         <li>OvfInvalidValue</li>
         <ul>
           <li>OvfInvalidValueFormatMalformed</li>
           <li>OvfInvalidValueConfiguration</li>
           <li>OvfInvalidValueReference</li>
           <li>OvfInvalidValueEmpty</li>
         </ul>
       </ul>
       <li>OvfProperty</li>
       <ul>
         <li>OvfPropertyType</li>
         <li>OvfPropertyValue</li>
         <li>OvfPropertyNetwork</li>
         <li>OvfPropertyQualifier</li>
         <li>OvfPropertyQualifierWarning</li>
       </ul>
     </ul>
     <li>OvfConstraint</li>
     <ul>
       <li>OvfDiskOrderConstraint</li>
       <li>OvfHostResourceConstraint</li>
     </ul>
     <li>OvfUnsupportedPackage</li>
     <ul>
       <li>OvfNoHostNic</li>
       <li>OvfInvalidVmName</li>
       <li>OvfUnsupportedAttribute</li>
       <ul>
         <li>OvfUnsupportedAttributeValue</li>
       </ul>
 		<li>OvfUnsupportedElement</li>
       <ul>
         <li>OvfUnsupportedElementValue</li>
         <li>OvfUnsupportedSection</li>
         <li>OvfNoSpaceOnController</li>
       </ul>
 		<li>OvfUnsupportedType</li>
       <li>OvfUnsupportedSubType</li>
 		<li>OvfHardwareCheck</li>
       <li>OvfNoSupportedHardwareFamily</li>
     </ul>
     <li>OvfExport</li>
     <ul>
       <li>OvfExportFailed</li>
 		<li>OvfHardwareExport</li>
       <ul>
         <li>OvfUnsupportedDeviceExport</li>
         <li>OvfUnknownDeviceBacking</li>
         <li>OvfConnectedDevice</li>
         <ul>
           <li>OvfConnectedDeviceISO</li>
         </ul>
         <li>OvfUnableToExportDisk</li>
       </ul>
       <li>OvfPropertyExport</li>
       <li>OvfPropertyNetworkExport</li>
       <li>OvfDuplicatedPropertyIdExport</li>
     </ul>
     <li>OvfImport  (these are typically returned as warnings</li>)
     <ul>
       <li>OvfImportFailed</li>
       <li>OvfHardwareCheck</li>
       <li>OvfMissingHardware</li>
       <li>OvfCpuCompatibility</li>
       <li>OvfCpuCompatibilityCheckNotSupported</li>
       <li>OvfUnsupportedDiskProvisioning</li>
       <li>OvfDuplicatedPropertyIdImport</li>
       <li>OvfNetworkMappingNotSupported</li>
     </ul>
     <li>OvfSystemFault</li>
     <ul>
 		<li>OvfDiskMappingNotFound</li>
 		<li>OvfHostValueNotParsed</li>
       <li>OvfInternalError</li>
 		<li>OvfUnsupportedDeviceBackingOption</li>
 		<li>OvfUnsupportedDeviceBackingInfo</li>
 		<li>OvfToXmlUnsupportedElement</li>
 		<li>OvfUnknownDevice</li>
       <li>OvfUnknownEntity</li>
     </ul>
     <li>OvfConsumerCallbackFault</li>
     <ul>
       <li>OvfConsumerFault</li>
       <li>OvfConsumerCommunicationError</li>
       <li>OvfConsumerInvalidSection</li>
       <li>OvfConsumerUndeclaredSection</li>
       <li>OvfConsumerUndefinedPrefix</li>
     </ul>
   </ul>
 </ul>
 <p>
 All messages go into the vimlocale]]>
      </description-html>
   </fault>
   <fault name="OvfImport"
      type-id="vim.fault.OvfImport"
      vmodl-name="vim.fault.OvfImport"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.OvfFault"
      >
      <description-html>
         <![CDATA[A common base class for errors that can happen during Import and
 that is not due to an invalid package (OvfInvalidPackage). These
 are typically issued as warnings.]]>
      </description-html>
   </fault>
   <fault name="OvfImportFailed"
      type-id="vim.fault.OvfImportFailed"
      vmodl-name="vim.fault.OvfImportFailed"
      version-id-ref="vim.version.version6"
      base-type-id="vim.fault.OvfImport"
      >
      <description-html>
         <![CDATA[This fault is used if we fail to deploy an OVF package.]]>
      </description-html>
   </fault>
   <fault name="OvfInvalidPackage"
      type-id="vim.fault.OvfInvalidPackage"
      vmodl-name="vim.fault.OvfInvalidPackage"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.OvfFault"
      >
      <description-html>
         <![CDATA[Base fault class for all Invalid OVF package faults.]]>
      </description-html>
            <property name="lineNumber" type-id-ref="INT"
      vmodl-name="lineNumber"
      >
      <description-html>
         <![CDATA[XML OVF descriptor line numbers]]>
      </description-html>
      </property>

   </fault>
   <fault name="OvfMappedOsId"
      type-id="vim.fault.OvfMappedOsId"
      vmodl-name="vim.fault.OvfMappedOsId"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.OvfImport"
      >
            <property name="ovfId" type-id-ref="INT"
      vmodl-name="ovfId"
      >
      <description-html>
         <![CDATA[The operating system id specified in the OVF descriptor.]]>
      </description-html>
      </property>

            <property name="ovfDescription" type-id-ref="java.lang.String"
      vmodl-name="ovfDescription"
      >
      <description-html>
         <![CDATA[The OS description specified in the OVF descriptor.]]>
      </description-html>
      </property>

            <property name="targetDescription" type-id-ref="java.lang.String"
      vmodl-name="targetDescription"
      >
      <description-html>
         <![CDATA[The display name of the target OS]]>
      </description-html>
      </property>

   </fault>
   <fault name="OvfMissingHardware"
      type-id="vim.fault.OvfMissingHardware"
      vmodl-name="vim.fault.OvfMissingHardware"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.OvfImport"
      >
      <description-html>
         <![CDATA[The OVF descriptor does not have a description of
 a required hardware element e.g CPU, Memory]]>
      </description-html>
            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      >
      <description-html>
         <![CDATA[Name of the missing hardware.]]>
      </description-html>
      </property>

            <property name="resourceType" type-id-ref="INT"
      vmodl-name="resourceType"
      >
      <description-html>
         <![CDATA[OVF rasd resource type of the missing hardware.]]>
      </description-html>
      </property>

   </fault>
   <fault name="OvfNetworkMappingNotSupported"
      type-id="vim.fault.OvfNetworkMappingNotSupported"
      vmodl-name="vim.fault.OvfNetworkMappingNotSupported"
      version-id-ref="vim.version.version8"
      base-type-id="vim.fault.OvfImport"
      >
      <description-html>
         <![CDATA[The network mapping provided for OVF Import
   is not supported by any hosts]]>
      </description-html>
   </fault>
   <fault name="OvfProperty"
      type-id="vim.fault.OvfProperty"
      vmodl-name="vim.fault.OvfProperty"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.OvfInvalidPackage"
      >
      <description-html>
         <![CDATA[A base fault for property faults in the property section of the Ovf XML descriptor.]]>
      </description-html>
            <property name="type" type-id-ref="java.lang.String"
      vmodl-name="type"
      >
      <description-html>
         <![CDATA[The type of the property]]>
      </description-html>
      </property>

            <property name="value" type-id-ref="java.lang.String"
      vmodl-name="value"
      >
      <description-html>
         <![CDATA[The value of the property]]>
      </description-html>
      </property>

   </fault>
   <fault name="OvfPropertyNetwork"
      type-id="vim.fault.OvfPropertyNetwork"
      vmodl-name="vim.fault.OvfPropertyNetwork"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.OvfProperty"
      >
      <description-html>
         <![CDATA[A class used indicate there was a property network error]]>
      </description-html>
   </fault>
   <fault name="OvfPropertyQualifier"
      type-id="vim.fault.OvfPropertyQualifier"
      vmodl-name="vim.fault.OvfPropertyQualifier"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.OvfProperty"
      >
      <description-html>
         <![CDATA[A class used to indicate there was a property qualifier error]]>
      </description-html>
            <property name="qualifier" type-id-ref="java.lang.String"
      vmodl-name="qualifier"
      >
      <description-html>
         <![CDATA[qualifiers]]>
      </description-html>
      </property>

   </fault>
   <fault name="OvfPropertyQualifierDuplicate"
      type-id="vim.fault.OvfPropertyQualifierDuplicate"
      vmodl-name="vim.fault.OvfPropertyQualifierDuplicate"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.OvfProperty"
      >
      <description-html>
         <![CDATA[Indicate that a property qualifier was duplicated.]]>
      </description-html>
            <property name="qualifier" type-id-ref="java.lang.String"
      vmodl-name="qualifier"
      >
      <description-html>
         <![CDATA[qualifiers]]>
      </description-html>
      </property>

   </fault>
   <fault name="OvfPropertyQualifierIgnored"
      type-id="vim.fault.OvfPropertyQualifierIgnored"
      vmodl-name="vim.fault.OvfPropertyQualifierIgnored"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.OvfProperty"
      >
      <description-html>
         <![CDATA[Indicate that the was qualifier was ignored]]>
      </description-html>
            <property name="qualifier" type-id-ref="java.lang.String"
      vmodl-name="qualifier"
      >
      <description-html>
         <![CDATA[qualifiers]]>
      </description-html>
      </property>

   </fault>
   <fault name="OvfPropertyType"
      type-id="vim.fault.OvfPropertyType"
      vmodl-name="vim.fault.OvfPropertyType"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.OvfProperty"
      >
      <description-html>
         <![CDATA[A class used to indicate there was a property type error]]>
      </description-html>
   </fault>
   <fault name="OvfPropertyValue"
      type-id="vim.fault.OvfPropertyValue"
      vmodl-name="vim.fault.OvfPropertyValue"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.OvfProperty"
      >
      <description-html>
         <![CDATA[A class used indicate there was a property value error]]>
      </description-html>
   </fault>
   <fault name="OvfSystemFault"
      type-id="vim.fault.OvfSystemFault"
      vmodl-name="vim.fault.OvfSystemFault"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.OvfFault"
      >
      <description-html>
         <![CDATA[A common base class to host all the OVF subsystems's system  faults.
 <p>
 This is a class of fault that can be thrown because of
 some api changes, new hardware that are not supported by
 the host.]]>
      </description-html>
   </fault>
   <fault name="OvfToXmlUnsupportedElement"
      type-id="vim.fault.OvfToXmlUnsupportedElement"
      vmodl-name="vim.fault.OvfToXmlUnsupportedElement"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.OvfSystemFault"
      >
      <description-html>
         <![CDATA[Unsupported element to export to XML]]>
      </description-html>
            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The name of the xml element we could not write to the xml descriptor]]>
      </description-html>
      </property>

   </fault>
   <fault name="OvfUnknownDevice"
      type-id="vim.fault.OvfUnknownDevice"
      vmodl-name="vim.fault.OvfUnknownDevice"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.OvfSystemFault"
      >
            <property name="device" type-id-ref="vim.vm.device.VirtualDevice"
      vmodl-name="device"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The unknown device]]>
      </description-html>
      </property>

            <property name="vmName" type-id-ref="java.lang.String"
      vmodl-name="vmName"
      >
      <description-html>
         <![CDATA[The name of the Virtual Machine containing the unkown device]]>
      </description-html>
      </property>

   </fault>
   <fault name="OvfUnknownEntity"
      type-id="vim.fault.OvfUnknownEntity"
      vmodl-name="vim.fault.OvfUnknownEntity"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.OvfSystemFault"
      >
            <property name="lineNumber" type-id-ref="INT"
      vmodl-name="lineNumber"
      >
      <description-html>
         <![CDATA[line number where the unknown entity was found]]>
      </description-html>
      </property>

   </fault>
   <fault name="OvfUnsupportedDeviceBackingInfo"
      type-id="vim.fault.OvfUnsupportedDeviceBackingInfo"
      vmodl-name="vim.fault.OvfUnsupportedDeviceBackingInfo"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.OvfSystemFault"
      >
            <property name="elementName" type-id-ref="java.lang.String"
      vmodl-name="elementName"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The element name]]>
      </description-html>
      </property>

            <property name="instanceId" type-id-ref="java.lang.String"
      vmodl-name="instanceId"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The InstanceId on the hardware description]]>
      </description-html>
      </property>

            <property name="deviceName" type-id-ref="java.lang.String"
      vmodl-name="deviceName"
      >
      <description-html>
         <![CDATA[The device name]]>
      </description-html>
      </property>

            <property name="backingName" type-id-ref="java.lang.String"
      vmodl-name="backingName"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The name of the VirtualDevice Backing Info not supported on the device.]]>
      </description-html>
      </property>

   </fault>
   <fault name="OvfUnsupportedDeviceBackingOption"
      type-id="vim.fault.OvfUnsupportedDeviceBackingOption"
      vmodl-name="vim.fault.OvfUnsupportedDeviceBackingOption"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.OvfSystemFault"
      >
            <property name="elementName" type-id-ref="java.lang.String"
      vmodl-name="elementName"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The element name]]>
      </description-html>
      </property>

            <property name="instanceId" type-id-ref="java.lang.String"
      vmodl-name="instanceId"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The InstanceId for the hardware element]]>
      </description-html>
      </property>

            <property name="deviceName" type-id-ref="java.lang.String"
      vmodl-name="deviceName"
      >
      <description-html>
         <![CDATA[The device name]]>
      </description-html>
      </property>

            <property name="backingName" type-id-ref="java.lang.String"
      vmodl-name="backingName"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The name of the VirtualDevice Backing Option not supported on the device.]]>
      </description-html>
      </property>

   </fault>
   <fault name="OvfUnsupportedDiskProvisioning"
      type-id="vim.fault.OvfUnsupportedDiskProvisioning"
      vmodl-name="vim.fault.OvfUnsupportedDiskProvisioning"
      version-id-ref="vim.version.version6"
      base-type-id="vim.fault.OvfImport"
      >
      <description-html>
         <![CDATA[Disk provisioning not supported]]>
      </description-html>
            <property name="diskProvisioning" type-id-ref="java.lang.String"
      vmodl-name="diskProvisioning"
      >
      <description-html>
         <![CDATA[The disk provisioning that was not supported.]]>
      </description-html>
      </property>

            <property name="supportedDiskProvisioning" type-id-ref="java.lang.String"
      vmodl-name="supportedDiskProvisioning"
      >
      <description-html>
         <![CDATA[Disk modes supported by the host.]]>
      </description-html>
      </property>

   </fault>
   <fault name="OvfUnsupportedPackage"
      type-id="vim.fault.OvfUnsupportedPackage"
      vmodl-name="vim.fault.OvfUnsupportedPackage"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.OvfFault"
      >
      <description-html>
         <![CDATA[A common base class to host all the Ovf Lib Unsupported Package faults]]>
      </description-html>
            <property name="lineNumber" type-id-ref="INT"
      vmodl-name="lineNumber"
      is-optional="true"
      >
      <description-html>
         <![CDATA[OVF descriptor linenumber]]>
      </description-html>
      </property>

   </fault>
   <fault name="OvfUnsupportedSubType"
      type-id="vim.fault.OvfUnsupportedSubType"
      vmodl-name="vim.fault.OvfUnsupportedSubType"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.OvfUnsupportedPackage"
      >
            <property name="elementName" type-id-ref="java.lang.String"
      vmodl-name="elementName"
      >
      <description-html>
         <![CDATA[The name of the element with the unsupported type]]>
      </description-html>
      </property>

            <property name="instanceId" type-id-ref="java.lang.String"
      vmodl-name="instanceId"
      >
      <description-html>
         <![CDATA[The OVF RASD InstanceId for the hardware description]]>
      </description-html>
      </property>

            <property name="deviceType" type-id-ref="INT"
      vmodl-name="deviceType"
      >
      <description-html>
         <![CDATA[The device type]]>
      </description-html>
      </property>

            <property name="deviceSubType" type-id-ref="java.lang.String"
      vmodl-name="deviceSubType"
      >
      <description-html>
         <![CDATA[The device subtype that is unsupported]]>
      </description-html>
      </property>

   </fault>
   <fault name="OvfUnsupportedType"
      type-id="vim.fault.OvfUnsupportedType"
      vmodl-name="vim.fault.OvfUnsupportedType"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.OvfUnsupportedPackage"
      >
            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      >
      <description-html>
         <![CDATA[The name of the element with the unsupported type]]>
      </description-html>
      </property>

            <property name="instanceId" type-id-ref="java.lang.String"
      vmodl-name="instanceId"
      >
      <description-html>
         <![CDATA[The OVF RASD InstanceId for the hardware description]]>
      </description-html>
      </property>

            <property name="deviceType" type-id-ref="INT"
      vmodl-name="deviceType"
      >
      <description-html>
         <![CDATA[The device type that is unsupported]]>
      </description-html>
      </property>

   </fault>
   <fault name="OvfWrongNamespace"
      type-id="vim.fault.OvfWrongNamespace"
      vmodl-name="vim.fault.OvfWrongNamespace"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.OvfInvalidPackage"
      >
      <description-html>
         <![CDATA[A OvfWrongNamespace exception is throw if the ovf descriptor has a
 Namespace error as defined in the Ovf spec]]>
      </description-html>
            <property name="namespaceName" type-id-ref="java.lang.String"
      vmodl-name="namespaceName"
      >
      <description-html>
         <![CDATA[The name of the invalid namespace]]>
      </description-html>
      </property>

   </fault>
   <fault name="OvfXmlFormat"
      type-id="vim.fault.OvfXmlFormat"
      vmodl-name="vim.fault.OvfXmlFormat"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.OvfInvalidPackage"
      >
      <description-html>
         <![CDATA[Class used to specify if the Ovf XML descriptor could not be parsed]]>
      </description-html>
            <property name="description" type-id-ref="java.lang.String"
      vmodl-name="description"
      >
      <description-html>
         <![CDATA[Description of the XML parser error
 <p>
 High level error description]]>
      </description-html>
      </property>

   </fault>
   <fault name="PasswordExpired"
      type-id="vim.fault.PasswordExpired"
      vmodl-name="vim.fault.PasswordExpired"
      version-id-ref="vim.version.version14"
      base-type-id="vim.fault.InvalidLogin"
      >
      <description-html>
         <![CDATA[Thrown when a server login fails due to expired user password.]]>
      </description-html>
   </fault>
   <fault name="PatchBinariesNotFound"
      type-id="vim.fault.PatchBinariesNotFound"
      vmodl-name="vim.fault.PatchBinariesNotFound"
      version-id-ref="vim.version.version1"
      internal-before-version-id-ref="vim.version.version2"
      base-type-id="vim.fault.VimFault"
      >
      <description-html>
         <![CDATA[This fault is thrown if a patch install fails
 because the binaries associated with the patch are not found.]]>
      </description-html>
            <property name="patchID" type-id-ref="java.lang.String"
      vmodl-name="patchID"
      >
      <description-html>
         <![CDATA[The patch whose associated binaries are not found.]]>
      </description-html>
      </property>

            <property name="binary" type-id-ref="java.lang.String"
      vmodl-name="binary"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The binaries that are not found.]]>
      </description-html>
      </property>

   </fault>
   <fault name="PatchMetadataInvalid"
      type-id="vim.fault.PatchMetadataInvalid"
      vmodl-name="vim.fault.PatchMetadataInvalid"
      version-id-ref="vim.version.version1"
      internal-before-version-id-ref="vim.version.version2"
      base-type-id="vim.fault.VimFault"
      >
      <description-html>
         <![CDATA[This fault is thrown if a patch query or
 installation operation fails because of a problem with the metadata
 associated with the patch. Typically, a subclass of this exception is
 thrown, indicating a problem such as the metadata is not found or the
 metadata is corrupted.]]>
      </description-html>
            <property name="patchID" type-id-ref="java.lang.String"
      vmodl-name="patchID"
      >
      <description-html>
         <![CDATA[The patch ID whose associated metadata is invalid.]]>
      </description-html>
      </property>

            <property name="metaData" type-id-ref="java.lang.String"
      vmodl-name="metaData"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The metadata file that is not available or corrupted.]]>
      </description-html>
      </property>

   </fault>
   <fault name="PatchMetadataNotFound"
      type-id="vim.fault.PatchMetadataNotFound"
      vmodl-name="vim.fault.PatchMetadataNotFound"
      version-id-ref="vim.version.version1"
      internal-before-version-id-ref="vim.version.version2"
      base-type-id="vim.fault.PatchMetadataInvalid"
      >
      <description-html>
         <![CDATA[This fault is thrown if the metadata associated with a patch is not
 found when a patch query or install is attempted.]]>
      </description-html>
   </fault>
   <fault name="PatchNotApplicable"
      type-id="vim.fault.PatchNotApplicable"
      vmodl-name="vim.fault.PatchNotApplicable"
      version-id-ref="vim.version.version1"
      internal-before-version-id-ref="vim.version.version2"
      base-type-id="vim.fault.VimFault"
      >
      <description-html>
         <![CDATA[This fault is thrown if a patch install fails because the patch is not
 applicable to the host. Typically, a subclass of this exception is
 thrown, indicating a problem such as the patch is superseded, already
 installed, or has dependencies missing, and so on.]]>
      </description-html>
            <property name="patchID" type-id-ref="java.lang.String"
      vmodl-name="patchID"
      >
      <description-html>
         <![CDATA[The ID of the patch that is not applicable to the host.]]>
      </description-html>
      </property>

   </fault>
   <fault name="PatchSuperseded"
      type-id="vim.fault.PatchSuperseded"
      vmodl-name="vim.fault.PatchSuperseded"
      version-id-ref="vim.version.version1"
      internal-before-version-id-ref="vim.version.version2"
      base-type-id="vim.fault.PatchNotApplicable"
      >
      <description-html>
         <![CDATA[This fault is thrown if a patch install fails because the patch is
 superseded by patches already installed.]]>
      </description-html>
            <property name="supersede" type-id-ref="java.lang.String"
      vmodl-name="supersede"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The patches that supersede this patch.]]>
      </description-html>
      </property>

   </fault>
   <fault name="PlatformConfigFault"
      type-id="vim.fault.PlatformConfigFault"
      vmodl-name="vim.fault.PlatformConfigFault"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.HostConfigFault"
      >
      <description-html>
         <![CDATA[A PlatformConfigFault is a catch-all fault indicating that some error has
  occurred regarding the configuration of the host.  Data about the fault is
  available and will be presented as a platform specific string.
  <p>
  This information carried by this fault cannot be localized.  Most likely
  this information will already have been localized to the locale of the
  server that generated this fault.  Where possible, a more specific fault
  will be thrown.]]>
      </description-html>
            <property name="text" type-id-ref="java.lang.String"
      vmodl-name="text"
      >
      <description-html>
         <![CDATA[Platform specific text string describing this error.]]>
      </description-html>
      </property>

   </fault>
   <fault name="PowerOnFtSecondaryFailed"
      type-id="vim.fault.PowerOnFtSecondaryFailed"
      vmodl-name="vim.fault.PowerOnFtSecondaryFailed"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.VmFaultToleranceIssue"
      >
      <description-html>
         <![CDATA[The PowerOnFtSecondaryFailed fault is thrown when the system is unable to
  power on a Fault Tolerance secondary virtual machine. It includes a list
  of failures on different hosts.]]>
      </description-html>
            <property name="vm" type-id-ref="vim.VirtualMachine"
      vmodl-name="vm"
      >
      <description-html>
         <![CDATA[The primary virtual machine corresponding to the secondary that is to
  be powered on]]>
      </description-html>
      </property>

            <property name="vmName" type-id-ref="java.lang.String"
      vmodl-name="vmName"
      >
      <description-html>
         <![CDATA[The name of the primary virtual machine corresponding to the secondary
  that is to be powered on.]]>
      </description-html>
      </property>

            <property name="hostSelectionBy" type-id-ref="vim.fault.FtIssuesOnHost.HostSelectionType"
      vmodl-name="hostSelectionBy"
      >
      <description-html>
         <![CDATA[The host selection type]]>
      </description-html>
      </property>

            <property name="hostErrors" type-id-ref="vmodl.LocalizedMethodFault"
      vmodl-name="hostErrors"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Information on why the system can not power on a Fault Tolerance
  secondary virtual machine on specific hosts. Everything in the array
  should be FtIssuesOnHost.]]>
      </description-html>
      </property>

            <property name="rootCause" type-id-ref="vmodl.LocalizedMethodFault"
      vmodl-name="rootCause"
      >
      <description-html>
         <![CDATA[The reason why powering on secondary failed.]]>
      </description-html>
      </property>

   </fault>
   <fault name="ProfileUpdateFailed"
      type-id="vim.fault.ProfileUpdateFailed"
      vmodl-name="vim.fault.ProfileUpdateFailed"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.VimFault"
      >
      <description-html>
         <![CDATA[Errors were detected during Profile update.]]>
      </description-html>
            <property name="failure" type-id-ref="vim.fault.ProfileUpdateFailed.UpdateFailure"
      vmodl-name="failure"
      is-array="true"
      >
      <description-html>
         <![CDATA[Failures encountered during update/validation]]>
      </description-html>
      </property>

            <property name="warnings" type-id-ref="vim.fault.ProfileUpdateFailed.UpdateFailure"
      vmodl-name="warnings"
      version-id-ref="vim.version.version12"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Warnings encountered during update/validation]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.fault.ProfileUpdateFailed.UpdateFailure</nested-type-id-ref>
   </fault>
   <fault name="QuarantineModeFault"
      type-id="vim.fault.QuarantineModeFault"
      vmodl-name="vim.fault.QuarantineModeFault"
      version-id-ref="vim.version.version11"
      base-type-id="vim.fault.VmConfigFault"
      >
            <property name="vmName" type-id-ref="java.lang.String"
      vmodl-name="vmName"
      >
      </property>

            <property name="faultType" type-id-ref="java.lang.String"
      vmodl-name="faultType"
      >
      </property>

      <nested-type-id-ref>vim.fault.QuarantineModeFault.FaultType</nested-type-id-ref>
   </fault>
   <fault name="QuestionPending"
      type-id="vim.fault.QuestionPending"
      vmodl-name="vim.fault.QuestionPending"
      version-id-ref="vim.version.version6"
      base-type-id="vim.fault.InvalidState"
      >
      <description-html>
         <![CDATA[Thrown when an operation cannot be performed on a virtual machine
  because it has a pending question requiring user input.]]>
      </description-html>
            <property name="text" type-id-ref="java.lang.String"
      vmodl-name="text"
      is-localizable="true"
      >
      <description-html>
         <![CDATA[Text of the question from the virtual machine.]]>
      </description-html>
      </property>

   </fault>
   <fault name="RDMConversionNotSupported"
      type-id="vim.fault.RDMConversionNotSupported"
      vmodl-name="vim.fault.RDMConversionNotSupported"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.MigrationFault"
      >
      <description-html>
         <![CDATA[The virtual machine is using an RDM device with compatibility
 mode set to 'physicalMode' and operation is unable to convert
 the disk to a different type.]]>
      </description-html>
            <property name="device" type-id-ref="java.lang.String"
      vmodl-name="device"
      >
      <description-html>
         <![CDATA[The name of the disk device using the RDM.]]>
      </description-html>
      </property>

   </fault>
   <fault name="RDMNotPreserved"
      type-id="vim.fault.RDMNotPreserved"
      vmodl-name="vim.fault.RDMNotPreserved"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.MigrationFault"
      >
      <description-html>
         <![CDATA[The virtual machine is configured with a Raw Disk Mapping. The host only supports Raw
 Disk Mappings in a limited fashion. After the migration, the RDM will function correctly,
 but it will be indistinguishable from a virtual disk when viewing the virtual machine's
 properties. This change will persist even if the virtual machine is migrated
 back to a host with full RDM support.
 <p>
 This is a warning only for migrations to ESX 2.1.x hosts.]]>
      </description-html>
            <property name="device" type-id-ref="java.lang.String"
      vmodl-name="device"
      >
      <description-html>
         <![CDATA[The name of the disk device using the RDM.]]>
      </description-html>
      </property>

   </fault>
   <fault name="RDMNotSupportedOnDatastore"
      type-id="vim.fault.RDMNotSupportedOnDatastore"
      vmodl-name="vim.fault.RDMNotSupportedOnDatastore"
      version-id-ref="vim.version.version2"
      base-type-id="vim.fault.VmConfigFault"
      >
      <description-html>
         <![CDATA[The virtual machine is configured with a Raw Disk Mapping. This is not
 supported on the datastore.]]>
      </description-html>
            <property name="device" type-id-ref="java.lang.String"
      vmodl-name="device"
      >
      <description-html>
         <![CDATA[The label of the RDM device that would have its backing placed on
 the datastore.
 This is not guaranteed to be the only such device.]]>
      </description-html>
      </property>

            <property name="datastore" type-id-ref="vim.Datastore"
      vmodl-name="datastore"
      >
      <description-html>
         <![CDATA[The datastore.]]>
      </description-html>
      </property>

            <property name="datastoreName" type-id-ref="java.lang.String"
      vmodl-name="datastoreName"
      >
      <description-html>
         <![CDATA[The name of the datastore.]]>
      </description-html>
      </property>

   </fault>
   <fault name="RDMPointsToInaccessibleDisk"
      type-id="vim.fault.RDMPointsToInaccessibleDisk"
      vmodl-name="vim.fault.RDMPointsToInaccessibleDisk"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.CannotAccessVmDisk"
      >
      <description-html>
         <![CDATA[One of the virtual machine's virtual disks is a Raw Disk Mapping
 that is itself accessible, but points to a LUN that is inaccessible.]]>
      </description-html>
   </fault>
   <fault name="ReadHostResourcePoolTreeFailed"
      type-id="vim.fault.ReadHostResourcePoolTreeFailed"
      vmodl-name="vim.fault.ReadHostResourcePoolTreeFailed"
      version-id-ref="vim.version.version7"
      base-type-id="vim.fault.HostConnectFault"
      >
      <description-html>
         <![CDATA[Fault thrown on host connect if we were unable to correctly read the
 existing tree on the root. This is bad because then we don't know the
 available resources on the host, and all kinds of admission control will
 fail.

 This just allows for more robust error handling - we should be able to
 read the existing hierarchy under normal conditions.]]>
      </description-html>
   </fault>
   <fault name="ReadOnlyDisksWithLegacyDestination"
      type-id="vim.fault.ReadOnlyDisksWithLegacyDestination"
      vmodl-name="vim.fault.ReadOnlyDisksWithLegacyDestination"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.MigrationFault"
      >
      <description-html>
         <![CDATA[The virtual machine uses read-only (undoable or nonpersistent) disks that
 can cause a slower power on at the migration destination. As a result, VMtion
 could slow down considerably or timeout. This is an issue only for migration of
 powered-on virtual machines from an ESX host with version greater
 than 2.0.x to an ESX host with version 2.0.x. It will be an error if the
 number of such disks is great enough to cause timeout ( >= 3 ), or a warning
 otherwise.]]>
      </description-html>
            <property name="roDiskCount" type-id-ref="INT"
      vmodl-name="roDiskCount"
      >
      <description-html>
         <![CDATA[The number of read-only disks in use.]]>
      </description-html>
      </property>

            <property name="timeoutDanger" type-id-ref="BOOLEAN"
      vmodl-name="timeoutDanger"
      >
      <description-html>
         <![CDATA[Whether this number of disks will cause a timeout failure.]]>
      </description-html>
      </property>

   </fault>
   <fault name="RebootRequired"
      type-id="vim.fault.RebootRequired"
      vmodl-name="vim.fault.RebootRequired"
      version-id-ref="vim.version.version1"
      internal-before-version-id-ref="vim.version.version2"
      base-type-id="vim.fault.VimFault"
      >
      <description-html>
         <![CDATA[This fault is thrown if a patch install fails because an installed
  nonchainable patch has not taken effect.]]>
      </description-html>
            <property name="patch" type-id-ref="java.lang.String"
      vmodl-name="patch"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The nonchainable patch installed.]]>
      </description-html>
      </property>

   </fault>
   <fault name="RecordReplayDisabled"
      type-id="vim.fault.RecordReplayDisabled"
      vmodl-name="vim.fault.RecordReplayDisabled"
      version-id-ref="vim.version.version5"
      is-deprecated="true"
      base-type-id="vim.fault.VimFault"
      >
      <description-html>
         <![CDATA[Fault thrown if a record or replay operation cannot be performed
  because these capabilities have been disabled on the virtual machine.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[as of vSphere API 6.0]]>
      </deprecated-html>
   </fault>
   <fault name="RemoveFailed"
      type-id="vim.fault.RemoveFailed"
      vmodl-name="vim.fault.RemoveFailed"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.VimFault"
      >
      <description-html>
         <![CDATA[This fault is thrown when the client attempts to remove an object that has
  active related objects (for example, a role that has active permissions).]]>
      </description-html>
   </fault>
   <fault name="ReplicationFault"
      type-id="vim.fault.ReplicationFault"
      vmodl-name="vim.fault.ReplicationFault"
      version-id-ref="vim.version.version7"
      base-type-id="vim.fault.VimFault"
      >
      <description-html>
         <![CDATA[Base type for Replication-related errors.]]>
      </description-html>
   </fault>
   <fault name="ReplicationIncompatibleWithFT"
      type-id="vim.fault.ReplicationIncompatibleWithFT"
      vmodl-name="vim.fault.ReplicationIncompatibleWithFT"
      version-id-ref="vim.version.version7"
      base-type-id="vim.fault.ReplicationFault"
      >
      <description-html>
         <![CDATA[Used to indicate that FT cannot be enabled on a replicated virtual machine
  (returned by <a href="vim.VirtualMachine.html#queryFaultToleranceCompatibility">QueryFaultToleranceCompatibility</a>).]]>
      </description-html>
   </fault>
   <fault name="ReplicationInvalidOptions"
      type-id="vim.fault.ReplicationInvalidOptions"
      vmodl-name="vim.fault.ReplicationInvalidOptions"
      version-id-ref="vim.version.version7"
      base-type-id="vim.fault.ReplicationFault"
      >
      <description-html>
         <![CDATA[A ReplicationInvalidOptions fault is thrown when the options
  string passed contains invalid characters or broken format.]]>
      </description-html>
            <property name="options" type-id-ref="java.lang.String"
      vmodl-name="options"
      >
      <description-html>
         <![CDATA[The invalid options string.]]>
      </description-html>
      </property>

            <property name="entity" type-id-ref="vim.ManagedEntity"
      vmodl-name="entity"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Entity, if any, that has invalid options.]]>
      </description-html>
      </property>

   </fault>
   <fault name="ReplicationNotSupportedOnHost"
      type-id="vim.fault.ReplicationNotSupportedOnHost"
      vmodl-name="vim.fault.ReplicationNotSupportedOnHost"
      version-id-ref="vim.version.version7"
      base-type-id="vim.fault.ReplicationFault"
      >
      <description-html>
         <![CDATA[Thrown if the replication module is not loaded in the host.]]>
      </description-html>
   </fault>
   <fault name="ReplicationVmFault"
      type-id="vim.fault.ReplicationVmFault"
      vmodl-name="vim.fault.ReplicationVmFault"
      version-id-ref="vim.version.version7"
      base-type-id="vim.fault.ReplicationFault"
      >
      <description-html>
         <![CDATA[A ReplicationVmFault is thrown when there is an issue with
  an operation performed on a replicated <a href="vim.VirtualMachine.html">VirtualMachine</a>]]>
      </description-html>
            <property name="reason" type-id-ref="java.lang.String"
      vmodl-name="reason"
      >
      <description-html>
         <![CDATA[The reason for the failure. One of the above.]]>
      </description-html>
      </property>

            <property name="state" type-id-ref="java.lang.String"
      vmodl-name="state"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The current <a href="vim.HbrManager.ReplicationVmInfo.State.html">ReplicationVmState</a> of the
 <a href="vim.VirtualMachine.html">VirtualMachine</a>]]>
      </description-html>
      </property>

            <property name="instanceId" type-id-ref="java.lang.String"
      vmodl-name="instanceId"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The name of the instance currently being created.]]>
      </description-html>
      </property>

            <property name="vm" type-id-ref="vim.VirtualMachine"
      vmodl-name="vm"
      >
      <description-html>
         <![CDATA[The virtual machine, for identification purposes.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.fault.ReplicationVmFault.ReasonForFault</nested-type-id-ref>
   </fault>
   <fault name="ReplicationVmInProgressFault"
      type-id="vim.fault.ReplicationVmInProgressFault"
      vmodl-name="vim.fault.ReplicationVmInProgressFault"
      version-id-ref="vim.version.version10"
      base-type-id="vim.fault.ReplicationVmFault"
      >
      <description-html>
         <![CDATA[A ReplicationVmInProgressFault is thrown when a replication operation
  failed to perform on a <a href="vim.VirtualMachine.html">VirtualMachine</a> because the VM is
  in the middle of another replication activity.]]>
      </description-html>
            <property name="requestedActivity" type-id-ref="java.lang.String"
      vmodl-name="requestedActivity"
      >
      <description-html>
         <![CDATA[The requsted activity for VM replication]]>
      </description-html>
      </property>

            <property name="inProgressActivity" type-id-ref="java.lang.String"
      vmodl-name="inProgressActivity"
      >
      <description-html>
         <![CDATA[The in-progress activity for VM replication]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.fault.ReplicationVmInProgressFault.Activity</nested-type-id-ref>
   </fault>
   <fault name="ResourceInUse"
      type-id="vim.fault.ResourceInUse"
      vmodl-name="vim.fault.ResourceInUse"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.VimFault"
      >
      <description-html>
         <![CDATA[A ResourceInUse fault indicating that some error has occurred because a
  resource was in use.  Information about the resource that is in use may
  be supplied.]]>
      </description-html>
            <property name="type" type-id-ref="vmodl.TypeName"
      vmodl-name="type"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Type of resource that is in use.]]>
      </description-html>
      </property>

            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Name of the instance of the resource that is in use.]]>
      </description-html>
      </property>

   </fault>
   <fault name="ResourceNotAvailable"
      type-id="vim.fault.ResourceNotAvailable"
      vmodl-name="vim.fault.ResourceNotAvailable"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.VimFault"
      >
      <description-html>
         <![CDATA[A ResourceNotAvailable fault indicating that some error has occurred because a
  resource was not available.  Information about the resource that is in use may
  be supplied.]]>
      </description-html>
            <property name="containerType" type-id-ref="vmodl.TypeName"
      vmodl-name="containerType"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Type of container that contains the resource.]]>
      </description-html>
      </property>

            <property name="containerName" type-id-ref="java.lang.String"
      vmodl-name="containerName"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Name of container that contains the resource. .]]>
      </description-html>
      </property>

            <property name="type" type-id-ref="vmodl.TypeName"
      vmodl-name="type"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Type of resource that is not available.]]>
      </description-html>
      </property>

   </fault>
   <fault name="RollbackFailure"
      type-id="vim.fault.RollbackFailure"
      vmodl-name="vim.fault.RollbackFailure"
      version-id-ref="vim.version.version8"
      base-type-id="vim.fault.DvsFault"
      >
      <description-html>
         <![CDATA[Thrown if a Rollback operation fails]]>
      </description-html>
            <property name="entityName" type-id-ref="java.lang.String"
      vmodl-name="entityName"
      >
      <description-html>
         <![CDATA[The entity name on which rollback failed]]>
      </description-html>
      </property>

            <property name="entityType" type-id-ref="java.lang.String"
      vmodl-name="entityType"
      >
      <description-html>
         <![CDATA[The entity type on which rollback failed]]>
      </description-html>
      </property>

   </fault>
   <fault name="RuleViolation"
      type-id="vim.fault.RuleViolation"
      vmodl-name="vim.fault.RuleViolation"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.VmConfigFault"
      >
      <description-html>
         <![CDATA[The virtual machine if powered on, would violate an
  affinity/anti-affinity rule. In this case, the VM can still be powered
  on manually by a user who knows what they are doing, but VirtualCenter
  will never automatically move or power on a VM such that it triggers
  the violation.]]>
      </description-html>
            <property name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      version-id-ref="vim.version.version2"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The host that the virtual machine can not be powered on without
  violate a rule.]]>
      </description-html>
      </property>

            <property name="rule" type-id-ref="vim.cluster.RuleInfo"
      vmodl-name="rule"
      version-id-ref="vim.version.version5"
      >
      <description-html>
         <![CDATA[The rule that is violated. It can be an affinity or anti-affinity rule.]]>
      </description-html>
      </property>

   </fault>
   <fault name="SSLDisabledFault"
      type-id="vim.fault.SSLDisabledFault"
      vmodl-name="vim.fault.SSLDisabledFault"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.HostConnectFault"
      >
      <description-html>
         <![CDATA[A SSLDisabledFault fault occurs when a host does not have ssl enabled.]]>
      </description-html>
   </fault>
   <fault name="SSLVerifyFault"
      type-id="vim.fault.SSLVerifyFault"
      vmodl-name="vim.fault.SSLVerifyFault"
      version-id-ref="vim.version.version2"
      base-type-id="vim.fault.HostConnectFault"
      >
      <description-html>
         <![CDATA[SSLVerifyFault is thrown by the host connect method if the VC
 server could not verify the authenticity of the host's SSL
 certificate.

 Currently, we do not distinguish the various possible reasons why
 the certificate could not be verified because we don't provide a
 way for the user to overwrite these reasons other than turning off
 SSL certificate verification completely.

 The only exception is the case when the certificate was rejected
 because it was self-signed. This is the most likely case when the
 user may want to overwrite the behavior by specifying the
 certificate's thumbprint in the ConnectSpec the next time the user
 connects to the host.]]>
      </description-html>
            <property name="selfSigned" type-id-ref="BOOLEAN"
      vmodl-name="selfSigned"
      >
      <description-html>
         <![CDATA[Whether the host's certificate was self signed]]>
      </description-html>
      </property>

            <property name="thumbprint" type-id-ref="java.lang.String"
      vmodl-name="thumbprint"
      >
      <description-html>
         <![CDATA[The thumbprint of the host's certificate]]>
      </description-html>
      </property>

   </fault>
   <fault name="SSPIChallenge"
      type-id="vim.fault.SSPIChallenge"
      vmodl-name="vim.fault.SSPIChallenge"
      version-id-ref="vim.version.version2"
      base-type-id="vim.fault.VimFault"
      >
      <description-html>
         <![CDATA[Thrown during SSPI pass-through authentication if further
  negotiation is required.]]>
      </description-html>
            <property name="base64Token" type-id-ref="java.lang.String"
      vmodl-name="base64Token"
      >
      <description-html>
         <![CDATA[The opaque server response token, base-64 encoded.]]>
      </description-html>
      </property>

   </fault>
   <fault name="SecondaryVmAlreadyDisabled"
      type-id="vim.fault.SecondaryVmAlreadyDisabled"
      vmodl-name="vim.fault.SecondaryVmAlreadyDisabled"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.VmFaultToleranceIssue"
      >
      <description-html>
         <![CDATA[This fault is thrown when an attempt is made to disable a secondary
  virtual machine that has already been disabled.]]>
      </description-html>
            <property name="instanceUuid" type-id-ref="java.lang.String"
      vmodl-name="instanceUuid"
      >
      <description-html>
         <![CDATA[Instance UUID of the secondary virtual machine.]]>
      </description-html>
      </property>

   </fault>
   <fault name="SecondaryVmAlreadyEnabled"
      type-id="vim.fault.SecondaryVmAlreadyEnabled"
      vmodl-name="vim.fault.SecondaryVmAlreadyEnabled"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.VmFaultToleranceIssue"
      >
      <description-html>
         <![CDATA[This fault is thrown when an attempt is made to enable a secondary
  virtual machine that has already been enabled.]]>
      </description-html>
            <property name="instanceUuid" type-id-ref="java.lang.String"
      vmodl-name="instanceUuid"
      >
      <description-html>
         <![CDATA[Instance UUID of the secondary virtual machine.]]>
      </description-html>
      </property>

   </fault>
   <fault name="SecondaryVmAlreadyRegistered"
      type-id="vim.fault.SecondaryVmAlreadyRegistered"
      vmodl-name="vim.fault.SecondaryVmAlreadyRegistered"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.VmFaultToleranceIssue"
      >
      <description-html>
         <![CDATA[This fault is thrown when an attempt is made to register a secondary
  virtual machine with a primary virtual machine with whom it is
  already registered.]]>
      </description-html>
            <property name="instanceUuid" type-id-ref="java.lang.String"
      vmodl-name="instanceUuid"
      >
      <description-html>
         <![CDATA[Instance UUID of the secondary virtual machine.]]>
      </description-html>
      </property>

   </fault>
   <fault name="SecondaryVmNotRegistered"
      type-id="vim.fault.SecondaryVmNotRegistered"
      vmodl-name="vim.fault.SecondaryVmNotRegistered"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.VmFaultToleranceIssue"
      >
      <description-html>
         <![CDATA[This fault is thrown when an attempt is made to unregister a secondary
  virtual machine from a primary virtual machine with whom it has not
  been previously registered.]]>
      </description-html>
            <property name="instanceUuid" type-id-ref="java.lang.String"
      vmodl-name="instanceUuid"
      >
      <description-html>
         <![CDATA[Instance UUID of the secondary virtual machine.]]>
      </description-html>
      </property>

   </fault>
   <fault name="ShrinkDiskFault"
      type-id="vim.fault.ShrinkDiskFault"
      vmodl-name="vim.fault.ShrinkDiskFault"
      version-id-ref="vim.version.version8"
      base-type-id="vim.fault.VimFault"
      >
      <description-html>
         <![CDATA[This exception is thrown when VirtualMachine.shrinkDisk
  encounters an error]]>
      </description-html>
            <property name="diskId" type-id-ref="INT"
      vmodl-name="diskId"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Disk Id of the virtual disk that caused the fault]]>
      </description-html>
      </property>

   </fault>
   <fault name="SnapshotCopyNotSupported"
      type-id="vim.fault.SnapshotCopyNotSupported"
      vmodl-name="vim.fault.SnapshotCopyNotSupported"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.MigrationFault"
      >
      <description-html>
         <![CDATA[An attempt is being made to move or copy a virtual machine's disk that has
  associated snapshots, and preserving the snapshots is not supported
  because of some aspect of the virtual machine configuration, virtual
  machine power state, or the requested disk placement.  This is an error
  for move operations (where the source is deleted after the copy) and a
  warning for clones (where the source is preserved).]]>
      </description-html>
   </fault>
   <fault name="SnapshotFault"
      type-id="vim.fault.SnapshotFault"
      vmodl-name="vim.fault.SnapshotFault"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.VimFault"
      >
      <description-html>
         <![CDATA[Base type for Snapshot-related errors.]]>
      </description-html>
   </fault>
   <fault name="SnapshotIncompatibleDeviceInVm"
      type-id="vim.fault.SnapshotIncompatibleDeviceInVm"
      vmodl-name="vim.fault.SnapshotIncompatibleDeviceInVm"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.SnapshotFault"
      >
      <description-html>
         <![CDATA[Thrown if a snapshot operation cannot be performed on account
  of an incompatible device. This fault can be thrown for instance
  if a virtual machine uses a raw disk or a shared bus controller.]]>
      </description-html>
            <property name="fault" type-id-ref="vmodl.LocalizedMethodFault"
      vmodl-name="fault"
      >
      <description-html>
         <![CDATA[A fault specifies the particular device issue. This is typically
  a subclass of VirtualHardwareCompatibilityIssue, such as
  RawDiskNotSupported, or SharedBusControllerNotSupported.]]>
      </description-html>
      </property>

   </fault>
   <fault name="SnapshotLocked"
      type-id="vim.fault.SnapshotLocked"
      vmodl-name="vim.fault.SnapshotLocked"
      version-id-ref="vim.version.version2"
      base-type-id="vim.fault.SnapshotFault"
      >
      <description-html>
         <![CDATA[Fault thrown when an attempt is made to create or delete a snapshot on a
  virtual machine that has its snapshot locked.]]>
      </description-html>
   </fault>
   <fault name="SnapshotMoveFromNonHomeNotSupported"
      type-id="vim.fault.SnapshotMoveFromNonHomeNotSupported"
      vmodl-name="vim.fault.SnapshotMoveFromNonHomeNotSupported"
      version-id-ref="vim.version.version2"
      base-type-id="vim.fault.SnapshotCopyNotSupported"
      >
      <description-html>
         <![CDATA[An attempt is being made to move a virtual machine's disk that has
  associated snapshots, and preserving the snapshots is not supported by the
  host because the disk is currently located somewhere other than the virtual
  machine's home datastore.]]>
      </description-html>
   </fault>
   <fault name="SnapshotMoveNotSupported"
      type-id="vim.fault.SnapshotMoveNotSupported"
      vmodl-name="vim.fault.SnapshotMoveNotSupported"
      version-id-ref="vim.version.version2"
      base-type-id="vim.fault.SnapshotCopyNotSupported"
      >
      <description-html>
         <![CDATA[An attempt is being made to move a virtual machine's disk that has
  associated snapshots, and preserving the snapshots is not supported by the
  host under any circumstances.]]>
      </description-html>
   </fault>
   <fault name="SnapshotMoveToNonHomeNotSupported"
      type-id="vim.fault.SnapshotMoveToNonHomeNotSupported"
      vmodl-name="vim.fault.SnapshotMoveToNonHomeNotSupported"
      version-id-ref="vim.version.version2"
      base-type-id="vim.fault.SnapshotCopyNotSupported"
      >
      <description-html>
         <![CDATA[An attempt is being made to move a virtual machine's disk that has
  associated snapshots, and preserving the snapshots is not supported by the
  host because the disk is being moved to some location other than the new
  home datastore for the virtual machine.]]>
      </description-html>
   </fault>
   <fault name="SnapshotNoChange"
      type-id="vim.fault.SnapshotNoChange"
      vmodl-name="vim.fault.SnapshotNoChange"
      version-id-ref="vim.version.version2"
      base-type-id="vim.fault.SnapshotFault"
      >
      <description-html>
         <![CDATA[This fault is for a snapshot request on a virtual machine whose state
  has not changed since a previous successful snapshot. For example, this
  occurs when you suspend the virtual machine, create a snapshot, and
  then request another snapshot of the suspended virtual machine.]]>
      </description-html>
   </fault>
   <fault name="SnapshotRevertIssue"
      type-id="vim.fault.SnapshotRevertIssue"
      vmodl-name="vim.fault.SnapshotRevertIssue"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.MigrationFault"
      >
      <description-html>
         <![CDATA[If the virtual machine is migrated to the destination host, there may be
 a problem reverting to one of its snapshots. This is a warning.  If the
 snapshot name is not set and the event array is empty, then it the snapshot
 might possibly revert correctly.  If the name is set and the event array is not
 empty then there surely will be a problem reverting to the snapshot.]]>
      </description-html>
            <property name="snapshotName" type-id-ref="java.lang.String"
      vmodl-name="snapshotName"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The name of the problematic snapshot.]]>
      </description-html>
      </property>

            <property name="event" type-id-ref="vim.event.Event"
      vmodl-name="event"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The problem(s) that would occur on reverting to the snapshot. This
  is determined similarly to invoking validateMigration on a powered-off
  virtual machine with the snapshot's state.  However, not all errors
  or warnings for virtual machine migration are guaranteed to be
  detected for snapshots.]]>
      </description-html>
      </property>

            <property name="errors" type-id-ref="BOOLEAN"
      vmodl-name="errors"
      >
      <description-html>
         <![CDATA[True if any of the events above are error events.]]>
      </description-html>
      </property>

   </fault>
   <fault name="SoftRuleVioCorrectionDisallowed"
      type-id="vim.fault.SoftRuleVioCorrectionDisallowed"
      vmodl-name="vim.fault.SoftRuleVioCorrectionDisallowed"
      version-id-ref="vim.version.version6"
      base-type-id="vim.fault.VmConfigFault"
      >
      <description-html>
         <![CDATA[The current DRS migration priority setting prevents generating
  a recommendation to correct the soft VM/Host affinity rules constraint
  violation for the VM so the violation will not be corrected.]]>
      </description-html>
            <property name="vmName" type-id-ref="java.lang.String"
      vmodl-name="vmName"
      >
      <description-html>
         <![CDATA[The vm for which the VM/Host soft affinity rules constraint violation
  is not being corrected by DRS.]]>
      </description-html>
      </property>

   </fault>
   <fault name="SoftRuleVioCorrectionImpact"
      type-id="vim.fault.SoftRuleVioCorrectionImpact"
      vmodl-name="vim.fault.SoftRuleVioCorrectionImpact"
      version-id-ref="vim.version.version6"
      base-type-id="vim.fault.VmConfigFault"
      >
      <description-html>
         <![CDATA[DRS has determined that correcting the soft VM/Host affinity rules
  constraint violation for the VM impacts respecting cluster constraints
  or performance goals so the violation will not be corrected.]]>
      </description-html>
            <property name="vmName" type-id-ref="java.lang.String"
      vmodl-name="vmName"
      >
      <description-html>
         <![CDATA[The vm for which the VM/Host soft affinity rules constraint violation
  is not being corrected by DRS.]]>
      </description-html>
      </property>

   </fault>
   <fault name="SsdDiskNotAvailable"
      type-id="vim.fault.SsdDiskNotAvailable"
      vmodl-name="vim.fault.SsdDiskNotAvailable"
      version-id-ref="vim.version.version9"
      base-type-id="vim.fault.VimFault"
      >
      <description-html>
         <![CDATA[A SsdDiskNotAvailable fault indicating that the specified SSD
  disk is not available. The disk either has been used or not a
  SSD disk.]]>
      </description-html>
            <property name="devicePath" type-id-ref="java.lang.String"
      vmodl-name="devicePath"
      >
      <description-html>
         <![CDATA[The device path of the disk.<br>See <a href="vim.host.ScsiDisk.html#devicePath">devicePath</a><br>]]>
      </description-html>
      </property>

   </fault>
   <fault name="StorageDrsCannotMoveDiskInMultiWriterMode"
      type-id="vim.fault.StorageDrsCannotMoveDiskInMultiWriterMode"
      vmodl-name="vim.fault.StorageDrsCannotMoveDiskInMultiWriterMode"
      version-id-ref="vim.version.version8"
      base-type-id="vim.fault.VimFault"
      >
      <description-html>
         <![CDATA[This fault is thrown because Storage DRS cannot generate recommendations
 to relocate one or more virtual disks of a VM because the disk has
 multi-writer mode enabled.]]>
      </description-html>
   </fault>
   <fault name="StorageDrsCannotMoveFTVm"
      type-id="vim.fault.StorageDrsCannotMoveFTVm"
      vmodl-name="vim.fault.StorageDrsCannotMoveFTVm"
      version-id-ref="vim.version.version8"
      base-type-id="vim.fault.VimFault"
      >
      <description-html>
         <![CDATA[This fault is thrown because Storage DRS cannot generate recommendations
 to relocate Fault Tolerant VMs across datastores.]]>
      </description-html>
   </fault>
   <fault name="StorageDrsCannotMoveIndependentDisk"
      type-id="vim.fault.StorageDrsCannotMoveIndependentDisk"
      vmodl-name="vim.fault.StorageDrsCannotMoveIndependentDisk"
      version-id-ref="vim.version.version8"
      base-type-id="vim.fault.VimFault"
      >
      <description-html>
         <![CDATA[This fault is thrown because Storage DRS cannot generate recommendations
 to relocate an independent disk.]]>
      </description-html>
   </fault>
   <fault name="StorageDrsCannotMoveManuallyPlacedSwapFile"
      type-id="vim.fault.StorageDrsCannotMoveManuallyPlacedSwapFile"
      vmodl-name="vim.fault.StorageDrsCannotMoveManuallyPlacedSwapFile"
      version-id-ref="vim.version.version8"
      base-type-id="vim.fault.VimFault"
      >
      <description-html>
         <![CDATA[This fault is thrown because Storage DRS cannot generate recommendations
 to relocate VM because it has a manually selected fixed location for its
 swap file.]]>
      </description-html>
   </fault>
   <fault name="StorageDrsCannotMoveManuallyPlacedVm"
      type-id="vim.fault.StorageDrsCannotMoveManuallyPlacedVm"
      vmodl-name="vim.fault.StorageDrsCannotMoveManuallyPlacedVm"
      version-id-ref="vim.version.version8"
      base-type-id="vim.fault.VimFault"
      >
      <description-html>
         <![CDATA[This fault is thrown because Storage DRS cannot generate recommendations
 to relocate a Vm that is placed by user to a specific datastore.]]>
      </description-html>
   </fault>
   <fault name="StorageDrsCannotMoveSharedDisk"
      type-id="vim.fault.StorageDrsCannotMoveSharedDisk"
      vmodl-name="vim.fault.StorageDrsCannotMoveSharedDisk"
      version-id-ref="vim.version.version8"
      base-type-id="vim.fault.VimFault"
      >
      <description-html>
         <![CDATA[This fault is thrown because Storage DRS cannot generate recommendations
 to relocate a shared virtual disk that is attached to more than one Vm.]]>
      </description-html>
   </fault>
   <fault name="StorageDrsCannotMoveTemplate"
      type-id="vim.fault.StorageDrsCannotMoveTemplate"
      vmodl-name="vim.fault.StorageDrsCannotMoveTemplate"
      version-id-ref="vim.version.version8"
      base-type-id="vim.fault.VimFault"
      >
      <description-html>
         <![CDATA[This fault is thrown because Storage DRS cannot generate recommendations
 to relocate template VMs across datastores.]]>
      </description-html>
   </fault>
   <fault name="StorageDrsCannotMoveVmInUserFolder"
      type-id="vim.fault.StorageDrsCannotMoveVmInUserFolder"
      vmodl-name="vim.fault.StorageDrsCannotMoveVmInUserFolder"
      version-id-ref="vim.version.version8"
      base-type-id="vim.fault.VimFault"
      >
      <description-html>
         <![CDATA[This fault is thrown because Storage DRS cannot generate recommendations
 to relocate VMs placed in user-specified folders.]]>
      </description-html>
   </fault>
   <fault name="StorageDrsCannotMoveVmWithMountedCDROM"
      type-id="vim.fault.StorageDrsCannotMoveVmWithMountedCDROM"
      vmodl-name="vim.fault.StorageDrsCannotMoveVmWithMountedCDROM"
      version-id-ref="vim.version.version8"
      base-type-id="vim.fault.VimFault"
      >
      <description-html>
         <![CDATA[This fault is thrown because Storage DRS cannot generate recommendations
 to relocate VMs that have a CD-ROM device mounted.]]>
      </description-html>
   </fault>
   <fault name="StorageDrsCannotMoveVmWithNoFilesInLayout"
      type-id="vim.fault.StorageDrsCannotMoveVmWithNoFilesInLayout"
      vmodl-name="vim.fault.StorageDrsCannotMoveVmWithNoFilesInLayout"
      version-id-ref="vim.version.version8"
      base-type-id="vim.fault.VimFault"
      >
      <description-html>
         <![CDATA[This fault is thrown because Storage DRS cannot generate recommendations
 to relocate VMs that have no files in its file layout.]]>
      </description-html>
   </fault>
   <fault name="StorageDrsDatacentersCannotShareDatastore"
      type-id="vim.fault.StorageDrsDatacentersCannotShareDatastore"
      vmodl-name="vim.fault.StorageDrsDatacentersCannotShareDatastore"
      version-id-ref="vim.version.version9"
      base-type-id="vim.fault.VimFault"
      >
      <description-html>
         <![CDATA[This fault is thrown when one datastore using Storage DRS is added to two
 different datacenters.]]>
      </description-html>
   </fault>
   <fault name="StorageDrsDisabledOnVm"
      type-id="vim.fault.StorageDrsDisabledOnVm"
      vmodl-name="vim.fault.StorageDrsDisabledOnVm"
      version-id-ref="vim.version.version7"
      base-type-id="vim.fault.VimFault"
      >
      <description-html>
         <![CDATA[This fault is thrown when Storage DRS cannot move disks of a virtual machine
 because Storage DRS is disabled on it.]]>
      </description-html>
   </fault>
   <fault name="StorageDrsHbrDiskNotMovable"
      type-id="vim.fault.StorageDrsHbrDiskNotMovable"
      vmodl-name="vim.fault.StorageDrsHbrDiskNotMovable"
      version-id-ref="vim.version.version10"
      base-type-id="vim.fault.VimFault"
      >
      <description-html>
         <![CDATA[This fault is thrown when HMS service cannot move certain secondary
 replica disks per Storage DRS move recommendations]]>
      </description-html>
            <property name="nonMovableDiskIds" type-id-ref="java.lang.String"
      vmodl-name="nonMovableDiskIds"
      >
      <description-html>
         <![CDATA[Comma-separated list of disk IDs that are not movable and failed
 Storage DRS recommendation action.]]>
      </description-html>
      </property>

   </fault>
   <fault name="StorageDrsHmsMoveInProgress"
      type-id="vim.fault.StorageDrsHmsMoveInProgress"
      vmodl-name="vim.fault.StorageDrsHmsMoveInProgress"
      version-id-ref="vim.version.version10"
      base-type-id="vim.fault.VimFault"
      >
      <description-html>
         <![CDATA[This fault is thrown HMS service is in the process of moving
 a subset of disks for which Storage DRS recommendation is generated.]]>
      </description-html>
   </fault>
   <fault name="StorageDrsHmsUnreachable"
      type-id="vim.fault.StorageDrsHmsUnreachable"
      vmodl-name="vim.fault.StorageDrsHmsUnreachable"
      version-id-ref="vim.version.version10"
      base-type-id="vim.fault.VimFault"
      >
      <description-html>
         <![CDATA[This fault is thrown when Storage DRS cannot connect to HMS service
 or HMS APIs invoked by Storage DRS error out due to connection issues.]]>
      </description-html>
   </fault>
   <fault name="StorageDrsIolbDisabledInternally"
      type-id="vim.fault.StorageDrsIolbDisabledInternally"
      vmodl-name="vim.fault.StorageDrsIolbDisabledInternally"
      version-id-ref="vim.version.version7"
      base-type-id="vim.fault.VimFault"
      >
      <description-html>
         <![CDATA[The fault occurs when Storage DRS disables IO Load balancing internally
  even though it is enabled by the user. This can happen due to one of the
  following reasons:
  1. SIOC couldn't get enabled on at least one of the datastores
  2. The connectivity between hosts and datastores is not uniform for all datastores.
  3. Some statistics are not available to run IO load balancing]]>
      </description-html>
   </fault>
   <fault name="StorageDrsRelocateDisabled"
      type-id="vim.fault.StorageDrsRelocateDisabled"
      vmodl-name="vim.fault.StorageDrsRelocateDisabled"
      version-id-ref="vim.version.version10"
      base-type-id="vim.fault.VimFault"
      >
      <description-html>
         <![CDATA[This fault is thrown when Storage DRS cannot move disks of a virtual machine
 because the relocate method of the virtual machine is disabled.]]>
      </description-html>
   </fault>
   <fault name="StorageDrsStaleHmsCollection"
      type-id="vim.fault.StorageDrsStaleHmsCollection"
      vmodl-name="vim.fault.StorageDrsStaleHmsCollection"
      version-id-ref="vim.version.version10"
      base-type-id="vim.fault.VimFault"
      >
      <description-html>
         <![CDATA[This fault is thrown when Storage DRS action for relocating
 HMS collection of replica disks does not correspond to current
 HMS inventory configuration and hence, is rejected by HMS service.]]>
      </description-html>
   </fault>
   <fault name="StorageDrsUnableToMoveFiles"
      type-id="vim.fault.StorageDrsUnableToMoveFiles"
      vmodl-name="vim.fault.StorageDrsUnableToMoveFiles"
      version-id-ref="vim.version.version8"
      base-type-id="vim.fault.VimFault"
      >
      <description-html>
         <![CDATA[This fault is thrown when Storage DRS cannot generate recommendations
 to move VM files due to pre-existing cross datastore disk backings.]]>
      </description-html>
   </fault>
   <fault name="StorageVMotionNotSupported"
      type-id="vim.fault.StorageVMotionNotSupported"
      vmodl-name="vim.fault.StorageVMotionNotSupported"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.MigrationFeatureNotSupported"
      >
      <description-html>
         <![CDATA[An operation on a powered-on virtual machine requests a change of storage
 location, but the host does not have that capability.]]>
      </description-html>
   </fault>
   <fault name="SuspendedRelocateNotSupported"
      type-id="vim.fault.SuspendedRelocateNotSupported"
      vmodl-name="vim.fault.SuspendedRelocateNotSupported"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.MigrationFault"
      >
      <description-html>
         <![CDATA[Either the source host product or the destination host product does not support
 relocation of suspended VMs.  It must be supported on both, in order for the
 relocation to succeed.  This fault is only applicable to suspended virtual machines.]]>
      </description-html>
   </fault>
   <fault name="SwapDatastoreUnset"
      type-id="vim.fault.SwapDatastoreUnset"
      vmodl-name="vim.fault.SwapDatastoreUnset"
      version-id-ref="vim.version.version2"
      base-type-id="vim.fault.VimFault"
      >
      <description-html>
         <![CDATA[The compute resource and/or virtual machine configurations indicate that
 when executing on the host the virtual machine should use a swap
 datastore, but the host does not have a swap datastore configured.  If
 executing on the host the virtual machine would instead use its own directory
 for swapfile placement.  This is a compatibility warning, not an error.
 Note it is actually the common case for a host to not have a configured
 swap datastore, and the problem may rest with the compute resource and/or
 virtual machine configuration; therefore this is not a HostConfigFault.]]>
      </description-html>
   </fault>
   <fault name="SwapPlacementOverrideNotSupported"
      type-id="vim.fault.SwapPlacementOverrideNotSupported"
      vmodl-name="vim.fault.SwapPlacementOverrideNotSupported"
      version-id-ref="vim.version.version2"
      base-type-id="vim.fault.InvalidVmConfig"
      >
      <description-html>
         <![CDATA[The virtual machine is configured to override the default swapfile placement
 policy, which is not supported on the host.]]>
      </description-html>
   </fault>
   <fault name="SwitchIpUnset"
      type-id="vim.fault.SwitchIpUnset"
      vmodl-name="vim.fault.SwitchIpUnset"
      version-id-ref="vim.version.version8"
      base-type-id="vim.fault.DvsFault"
      >
      <description-html>
         <![CDATA[The distributed virtual switch received a reconfiguration request to
  activate a feature that requires a switch IP address. However, the IP
  address for the switch has not been specified.]]>
      </description-html>
   </fault>
   <fault name="SwitchNotInUpgradeMode"
      type-id="vim.fault.SwitchNotInUpgradeMode"
      vmodl-name="vim.fault.SwitchNotInUpgradeMode"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.DvsFault"
      >
      <description-html>
         <![CDATA[Thrown if an operation is not supported while the DistributedVirtualSwitch
  is not in upgrade mode.]]>
      </description-html>
   </fault>
   <fault name="TaskInProgress"
      type-id="vim.fault.TaskInProgress"
      vmodl-name="vim.fault.TaskInProgress"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.VimFault"
      >
      <description-html>
         <![CDATA[The TaskInProgress data object type represents a fault when an operation tries
 to access an entity that already has another (long) operation in progress.]]>
      </description-html>
            <property name="task" type-id-ref="vim.Task"
      vmodl-name="task"
      >
      <description-html>
         <![CDATA[The task already in progress when the operation was attempted.]]>
      </description-html>
      </property>

   </fault>
   <fault name="Timedout"
      type-id="vim.fault.Timedout"
      vmodl-name="vim.fault.Timedout"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.VimFault"
      >
      <description-html>
         <![CDATA[Timedout exception is thrown when a server abandons an operation that
  is taking longer than expected.]]>
      </description-html>
   </fault>
   <fault name="TooManyConcurrentNativeClones"
      type-id="vim.fault.TooManyConcurrentNativeClones"
      vmodl-name="vim.fault.TooManyConcurrentNativeClones"
      version-id-ref="vim.version.version7"
      base-type-id="vim.fault.FileFault"
      >
      <description-html>
         <![CDATA[Thrown if the number of levels in the snapshot tree exceeds
  the supported maximum.]]>
      </description-html>
   </fault>
   <fault name="TooManyConsecutiveOverrides"
      type-id="vim.fault.TooManyConsecutiveOverrides"
      vmodl-name="vim.fault.TooManyConsecutiveOverrides"
      version-id-ref="vim.version.version2"
      base-type-id="vim.fault.VimFault"
      >
      <description-html>
         <![CDATA[Thrown if there are too many consecutive user overrides of
  server-managed settings. There are some properties which users are
  allowed to set only in certain configurations. The system controls them
  in other configurations, and overrides all user updates. If there are
  such frequent user overrides in the system controlled state that the
  next update arrives before the previous override is complete, the
  system can enter a tight loop and appear unresponsive to the user. This
  would typically happen if the user overrides are generated by a script.

  If the number of such user overrides exceeds the supported maximum, we
  conceptually "throw" this fault. In practice, this is converted into a
  host-level ConfigIssue in VC.]]>
      </description-html>
   </fault>
   <fault name="TooManyDevices"
      type-id="vim.fault.TooManyDevices"
      vmodl-name="vim.fault.TooManyDevices"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.InvalidVmConfig"
      >
      <description-html>
         <![CDATA[Thrown when the number of virtual devices exceeds the maximum for
  a given controller.]]>
      </description-html>
   </fault>
   <fault name="TooManyDisksOnLegacyHost"
      type-id="vim.fault.TooManyDisksOnLegacyHost"
      vmodl-name="vim.fault.TooManyDisksOnLegacyHost"
      version-id-ref="vim.version.version2"
      is-deprecated="true"
      base-type-id="vim.fault.MigrationFault"
      >
      <description-html>
         <![CDATA[The VM has too many disks which can cause the VM to take a long time
 to power-on. This can result in migration taking a long time to complete
 or to fail due to timeout. This is a problem only for migration of
 powered-on virtual machines from or to ESX 2.x hosts.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere 4.1, this error condition is no longer possible.]]>
      </deprecated-html>
            <property name="diskCount" type-id-ref="INT"
      vmodl-name="diskCount"
      >
      <description-html>
         <![CDATA[The number disks this VM has.]]>
      </description-html>
      </property>

            <property name="timeoutDanger" type-id-ref="BOOLEAN"
      vmodl-name="timeoutDanger"
      >
      <description-html>
         <![CDATA[Whether this number of disks will cause a timeout failure.]]>
      </description-html>
      </property>

   </fault>
   <fault name="TooManyGuestLogons"
      type-id="vim.fault.TooManyGuestLogons"
      vmodl-name="vim.fault.TooManyGuestLogons"
      version-id-ref="vim.version.version7"
      base-type-id="vim.fault.GuestOperationsFault"
      >
      <description-html>
         <![CDATA[A TooManyGuestLogons exception is thrown when
  there are too many concurrent login sessions active
  in the guest. <a href="vim.vm.guest.AuthManager.html#releaseCredentials">ReleaseCredentialsInGuest</a> can be called
  on ticketed sessions that are no longer needed. This will decrease
  the number of concurrent sessions active in the guest.]]>
      </description-html>
   </fault>
   <fault name="TooManyHosts"
      type-id="vim.fault.TooManyHosts"
      vmodl-name="vim.fault.TooManyHosts"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.HostConnectFault"
      >
      <description-html>
         <![CDATA[Thrown when a computer resource does not accept any more hosts. Clusters with DRS or
  HA enabled might impose a limit on the size of the cluster.]]>
      </description-html>
   </fault>
   <fault name="TooManyNativeCloneLevels"
      type-id="vim.fault.TooManyNativeCloneLevels"
      vmodl-name="vim.fault.TooManyNativeCloneLevels"
      version-id-ref="vim.version.version7"
      base-type-id="vim.fault.FileFault"
      >
      <description-html>
         <![CDATA[Thrown if the number of levels in the snapshot tree exceeds
  the supported maximum.]]>
      </description-html>
   </fault>
   <fault name="TooManyNativeClonesOnFile"
      type-id="vim.fault.TooManyNativeClonesOnFile"
      vmodl-name="vim.fault.TooManyNativeClonesOnFile"
      version-id-ref="vim.version.version7"
      base-type-id="vim.fault.FileFault"
      >
      <description-html>
         <![CDATA[Thrown if the number of levels in the snapshot tree exceeds
  the supported maximum.]]>
      </description-html>
   </fault>
   <fault name="TooManySnapshotLevels"
      type-id="vim.fault.TooManySnapshotLevels"
      vmodl-name="vim.fault.TooManySnapshotLevels"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.SnapshotFault"
      >
      <description-html>
         <![CDATA[Thrown if the number of levels in the snapshot tree exceeds
  the supported maximum.]]>
      </description-html>
   </fault>
   <fault name="ToolsAlreadyUpgraded"
      type-id="vim.fault.ToolsAlreadyUpgraded"
      vmodl-name="vim.fault.ToolsAlreadyUpgraded"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.VmToolsUpgradeFault"
      >
      <description-html>
         <![CDATA[Thrown when tools upgrade fails because the version of tools
 installed in the guest is already up-to-date.]]>
      </description-html>
   </fault>
   <fault name="ToolsAutoUpgradeNotSupported"
      type-id="vim.fault.ToolsAutoUpgradeNotSupported"
      vmodl-name="vim.fault.ToolsAutoUpgradeNotSupported"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.VmToolsUpgradeFault"
      >
      <description-html>
         <![CDATA[Thrown when tools upgrade fails because the virtual machine's
 guest operating system doesn't support tools auto-upgrades.]]>
      </description-html>
   </fault>
   <fault name="ToolsImageCopyFailed"
      type-id="vim.fault.ToolsImageCopyFailed"
      vmodl-name="vim.fault.ToolsImageCopyFailed"
      version-id-ref="vim.version.version8"
      base-type-id="vim.fault.VmToolsUpgradeFault"
      >
      <description-html>
         <![CDATA[Thrown when the tools image couldn't be copied to the guest
 operating system: disk out of space, file access error, etc.]]>
      </description-html>
   </fault>
   <fault name="ToolsImageNotAvailable"
      type-id="vim.fault.ToolsImageNotAvailable"
      vmodl-name="vim.fault.ToolsImageNotAvailable"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.VmToolsUpgradeFault"
      >
      <description-html>
         <![CDATA[Thrown when tools install or upgrade fails because the required
 tools image is not available.]]>
      </description-html>
   </fault>
   <fault name="ToolsImageSignatureCheckFailed"
      type-id="vim.fault.ToolsImageSignatureCheckFailed"
      vmodl-name="vim.fault.ToolsImageSignatureCheckFailed"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.VmToolsUpgradeFault"
      >
      <description-html>
         <![CDATA[Thrown when tools install or upgrade fails because the
 signature check on the tools image failed.]]>
      </description-html>
   </fault>
   <fault name="ToolsInstallationInProgress"
      type-id="vim.fault.ToolsInstallationInProgress"
      vmodl-name="vim.fault.ToolsInstallationInProgress"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.MigrationFault"
      >
      <description-html>
         <![CDATA[The virtual machine is currently in the progress of guest tools installation
 that prevents the migration operation.]]>
      </description-html>
   </fault>
   <fault name="ToolsUnavailable"
      type-id="vim.fault.ToolsUnavailable"
      vmodl-name="vim.fault.ToolsUnavailable"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.VimFault"
      >
      <description-html>
         <![CDATA[A ToolsUnavailableFault exception is thrown when an
  operation fails to contact VMware Tools
  running inside the virtual machine.]]>
      </description-html>
   </fault>
   <fault name="ToolsUpgradeCancelled"
      type-id="vim.fault.ToolsUpgradeCancelled"
      vmodl-name="vim.fault.ToolsUpgradeCancelled"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.VmToolsUpgradeFault"
      >
      <description-html>
         <![CDATA[Thrown when tools install or upgrade fails because the
 operation was canclled by the user.]]>
      </description-html>
   </fault>
   <fault name="UncommittedUndoableDisk"
      type-id="vim.fault.UncommittedUndoableDisk"
      vmodl-name="vim.fault.UncommittedUndoableDisk"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.MigrationFault"
      >
      <description-html>
         <![CDATA[Fault thrown when an attempt is made to move or clone an undoable disk with an
  uncommitted REDO log.  This is an error.  Undoable disks may be moved but they must
  be committed.]]>
      </description-html>
   </fault>
   <fault name="UncustomizableGuest"
      type-id="vim.fault.UncustomizableGuest"
      vmodl-name="vim.fault.UncustomizableGuest"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.CustomizationFault"
      >
      <description-html>
         <![CDATA[The specified guest operating system is not supported by the guest
  customization process.]]>
      </description-html>
            <property name="uncustomizableGuestOS" type-id-ref="java.lang.String"
      vmodl-name="uncustomizableGuestOS"
      >
      <description-html>
         <![CDATA[The guest OS ID for the uncustomizable guest.]]>
      </description-html>
      </property>

   </fault>
   <fault name="UnexpectedCustomizationFault"
      type-id="vim.fault.UnexpectedCustomizationFault"
      vmodl-name="vim.fault.UnexpectedCustomizationFault"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.CustomizationFault"
      >
      <description-html>
         <![CDATA[Error received when customization fails, possibly due to a scripting runtime
  error or invalid script parameters.]]>
      </description-html>
   </fault>
   <fault name="UnrecognizedHost"
      type-id="vim.fault.UnrecognizedHost"
      vmodl-name="vim.fault.UnrecognizedHost"
      version-id-ref="vim.version.version2"
      base-type-id="vim.fault.VimFault"
      >
      <description-html>
         <![CDATA[A UnrecognizedHost is thrown if the VirtualCenter server fails to
 validate the identity of the host using host-key.

 If a reconnect is attempted on a host and if the host-key of the host
 has changed since the last successful connection attempt,
 (might be changed by another instance of VirtualCenter), VirtualCenter
 server will fail to recognize the host.]]>
      </description-html>
            <property name="hostName" type-id-ref="java.lang.String"
      vmodl-name="hostName"
      >
      <description-html>
         <![CDATA[Host in the VirtualCenter inventory which failed the identity
 validation.]]>
      </description-html>
      </property>

   </fault>
   <fault name="UnsharedSwapVMotionNotSupported"
      type-id="vim.fault.UnsharedSwapVMotionNotSupported"
      vmodl-name="vim.fault.UnsharedSwapVMotionNotSupported"
      version-id-ref="vim.version.version2"
      base-type-id="vim.fault.MigrationFeatureNotSupported"
      >
      <description-html>
         <![CDATA[The compute resource and virtual machine configurations for swapfile
 placement would require the virtual machine swapfile to change location for
 this VMotion; however the host does not support this.]]>
      </description-html>
   </fault>
   <fault name="UnsupportedDatastore"
      type-id="vim.fault.UnsupportedDatastore"
      vmodl-name="vim.fault.UnsupportedDatastore"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.VmConfigFault"
      >
      <description-html>
         <![CDATA[The virtual machine is not supported on the target datastore. This fault is
  thrown by provisioning operations when an attempt is made to create a virtual
  machine on an unsupported datastore (for example, creating a non-legacy
  virtual machine on a legacy datastore).]]>
      </description-html>
            <property name="datastore" type-id-ref="vim.Datastore"
      vmodl-name="datastore"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The invalid datastore for this virtual machine.]]>
      </description-html>
      </property>

   </fault>
   <fault name="UnsupportedGuest"
      type-id="vim.fault.UnsupportedGuest"
      vmodl-name="vim.fault.UnsupportedGuest"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.InvalidVmConfig"
      >
      <description-html>
         <![CDATA[The specified guest operating system is not supported on the host
  that is the target of the operation.]]>
      </description-html>
            <property name="unsupportedGuestOS" type-id-ref="java.lang.String"
      vmodl-name="unsupportedGuestOS"
      >
      <description-html>
         <![CDATA[The guest OS ID for the unsupported guest.]]>
      </description-html>
      </property>

   </fault>
   <fault name="UnsupportedVimApiVersion"
      type-id="vim.fault.UnsupportedVimApiVersion"
      vmodl-name="vim.fault.UnsupportedVimApiVersion"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.VimFault"
      >
      <description-html>
         <![CDATA[This exception will be thrown if a client tries to connect with a unsupported version
 of the Vim API.]]>
      </description-html>
            <property name="version" type-id-ref="java.lang.String"
      vmodl-name="version"
      is-optional="true"
      >
      </property>

   </fault>
   <fault name="UnsupportedVmxLocation"
      type-id="vim.fault.UnsupportedVmxLocation"
      vmodl-name="vim.fault.UnsupportedVmxLocation"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.VmConfigFault"
      >
      <description-html>
         <![CDATA[ESX 3 Server products requires the .vmx file to be stored
   on NAS or VMFS3 storage. If attempting to power on a virtual
   machine with the .vmx file stored on the service console, this
   fault will be thrown.]]>
      </description-html>
   </fault>
   <fault name="UserNotFound"
      type-id="vim.fault.UserNotFound"
      vmodl-name="vim.fault.UserNotFound"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.VimFault"
      >
      <description-html>
         <![CDATA[Thrown when the request refers to a user or group name that could not
  be resolved.]]>
      </description-html>
            <property name="principal" type-id-ref="java.lang.String"
      vmodl-name="principal"
      >
      <description-html>
         <![CDATA[Principal value that failed lookup.]]>
      </description-html>
      </property>

            <property name="unresolved" type-id-ref="BOOLEAN"
      vmodl-name="unresolved"
      >
      <description-html>
         <![CDATA[Flag to indicate whether or not the lookup was unsuccessful.
  A false value indicates that the user does not exist in the directory. A true
  value indicates that the directory could not be contacted, possibly due to a
  network error.]]>
      </description-html>
      </property>

   </fault>
   <fault name="VAppConfigFault"
      type-id="vim.fault.VAppConfigFault"
      vmodl-name="vim.fault.VAppConfigFault"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.VimFault"
      >
      <description-html>
         <![CDATA[Base for configuration / environment issues that can be thrown when powering on or
  changing the configuration of a vApp.]]>
      </description-html>
   </fault>
   <fault name="VAppNotRunning"
      type-id="vim.fault.VAppNotRunning"
      vmodl-name="vim.fault.VAppNotRunning"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.VmConfigFault"
      >
      <description-html>
         <![CDATA[A virtual machine in a vApp cannot be powered on unless the
  parent vApp is running.]]>
      </description-html>
   </fault>
   <fault name="VAppPropertyFault"
      type-id="vim.fault.VAppPropertyFault"
      vmodl-name="vim.fault.VAppPropertyFault"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.VmConfigFault"
      >
      <description-html>
         <![CDATA[The base fault for all vApp property configuration issues]]>
      </description-html>
            <property name="id" type-id-ref="java.lang.String"
      vmodl-name="id"
      >
      <description-html>
         <![CDATA[The fully-qualified id of the property, including instance and class
  identifiers.]]>
      </description-html>
      </property>

            <property name="category" type-id-ref="java.lang.String"
      vmodl-name="category"
      >
      <description-html>
         <![CDATA[The user-readable category]]>
      </description-html>
      </property>

            <property name="label" type-id-ref="java.lang.String"
      vmodl-name="label"
      >
      <description-html>
         <![CDATA[The user-readable label]]>
      </description-html>
      </property>

            <property name="type" type-id-ref="java.lang.String"
      vmodl-name="type"
      >
      <description-html>
         <![CDATA[The type specified for the property]]>
      </description-html>
      </property>

            <property name="value" type-id-ref="java.lang.String"
      vmodl-name="value"
      >
      <description-html>
         <![CDATA[The value of the property]]>
      </description-html>
      </property>

   </fault>
   <fault name="VAppTaskInProgress"
      type-id="vim.fault.VAppTaskInProgress"
      vmodl-name="vim.fault.VAppTaskInProgress"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.TaskInProgress"
      >
      <description-html>
         <![CDATA[A specialized TaskInProgress when an operation is performed
  on a VM and it is failed due to a vApp-level operation
  is in progress. For example, while the power-on sequence is
  executed on a vApp, individual power-on's of child VMs are
  failed.]]>
      </description-html>
   </fault>
   <fault name="VFlashCacheHotConfigNotSupported"
      type-id="vim.fault.VFlashCacheHotConfigNotSupported"
      vmodl-name="vim.fault.VFlashCacheHotConfigNotSupported"
      version-id-ref="vim.version.version10"
      base-type-id="vim.fault.VmConfigFault"
      >
      <description-html>
         <![CDATA[VFlash cache hot-configuration on a VMDK is not supported.]]>
      </description-html>
   </fault>
   <fault name="VFlashModuleNotSupported"
      type-id="vim.fault.VFlashModuleNotSupported"
      vmodl-name="vim.fault.VFlashModuleNotSupported"
      version-id-ref="vim.version.version9"
      base-type-id="vim.fault.VmConfigFault"
      >
      <description-html>
         <![CDATA[vFlash module is not supported due to its configuration is not
  supported by the host.]]>
      </description-html>
            <property name="vmName" type-id-ref="java.lang.String"
      vmodl-name="vmName"
      >
      <description-html>
         <![CDATA[VM name]]>
      </description-html>
      </property>

            <property name="moduleName" type-id-ref="java.lang.String"
      vmodl-name="moduleName"
      >
      <description-html>
         <![CDATA[The vFlash module name.]]>
      </description-html>
      </property>

            <property name="reason" type-id-ref="java.lang.String"
      vmodl-name="reason"
      >
      <description-html>
         <![CDATA[Message of reason.]]>
      </description-html>
      </property>

            <property name="hostName" type-id-ref="java.lang.String"
      vmodl-name="hostName"
      >
      <description-html>
         <![CDATA[Host name]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.fault.VFlashModuleNotSupported.Reason</nested-type-id-ref>
   </fault>
   <fault name="VFlashModuleVersionIncompatible"
      type-id="vim.fault.VFlashModuleVersionIncompatible"
      vmodl-name="vim.fault.VFlashModuleVersionIncompatible"
      version-id-ref="vim.version.version9"
      base-type-id="vim.fault.VimFault"
      >
      <description-html>
         <![CDATA[The vFlash module version of the vFlash cache asscociated with the
  virtual disk of a VM is not compatible with the supported versions of
  the specified vFlash module on the host.]]>
      </description-html>
            <property name="moduleName" type-id-ref="java.lang.String"
      vmodl-name="moduleName"
      >
      <description-html>
         <![CDATA[The vFlash module name.]]>
      </description-html>
      </property>

            <property name="vmRequestModuleVersion" type-id-ref="java.lang.String"
      vmodl-name="vmRequestModuleVersion"
      >
      <description-html>
         <![CDATA[The VM request module version.]]>
      </description-html>
      </property>

            <property name="hostMinSupportedVerson" type-id-ref="java.lang.String"
      vmodl-name="hostMinSupportedVerson"
      >
      <description-html>
         <![CDATA[The minimum supported version of the specified module on the host.]]>
      </description-html>
      </property>

            <property name="hostModuleVersion" type-id-ref="java.lang.String"
      vmodl-name="hostModuleVersion"
      >
      <description-html>
         <![CDATA[The verson of the specified module on the host.]]>
      </description-html>
      </property>

   </fault>
   <fault name="VMotionAcrossNetworkNotSupported"
      type-id="vim.fault.VMotionAcrossNetworkNotSupported"
      vmodl-name="vim.fault.VMotionAcrossNetworkNotSupported"
      version-id-ref="vim.version.version9"
      base-type-id="vim.fault.MigrationFeatureNotSupported"
      >
      <description-html>
         <![CDATA[An operation on a powered-on virtual machine requests a change of
 networks, but the host does not have that capability.]]>
      </description-html>
   </fault>
   <fault name="VMotionInterfaceIssue"
      type-id="vim.fault.VMotionInterfaceIssue"
      vmodl-name="vim.fault.VMotionInterfaceIssue"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.MigrationFault"
      >
      <description-html>
         <![CDATA[A VMotion interface has a problem. This may be an error or warning depending
 on the specific fault subclass. This is an error or warning only when
 migrating a powered-on virtual machine.]]>
      </description-html>
            <property name="atSourceHost" type-id-ref="BOOLEAN"
      vmodl-name="atSourceHost"
      >
      <description-html>
         <![CDATA[Whether this error is for the source host.]]>
      </description-html>
      </property>

            <property name="failedHost" type-id-ref="java.lang.String"
      vmodl-name="failedHost"
      >
      <description-html>
         <![CDATA[The name of the host with the bad interface.]]>
      </description-html>
      </property>

            <property name="failedHostEntity" type-id-ref="vim.HostSystem"
      vmodl-name="failedHostEntity"
      version-id-ref="vim.version.version2"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The host with the bad interface.]]>
      </description-html>
      </property>

   </fault>
   <fault name="VMotionLinkCapacityLow"
      type-id="vim.fault.VMotionLinkCapacityLow"
      vmodl-name="vim.fault.VMotionLinkCapacityLow"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.VMotionInterfaceIssue"
      >
      <description-html>
         <![CDATA[The VMotion interface does not have the recommended capacity to support
 VMotion. VMotion is supported on links that have a speed of at least 1000
 Mbps and are full duplex. This is a warning for migrating powered-on virtual
 machines.]]>
      </description-html>
            <property name="network" type-id-ref="java.lang.String"
      vmodl-name="network"
      >
      <description-html>
         <![CDATA[Name of the network being used for the VMotion interface.]]>
      </description-html>
      </property>

   </fault>
   <fault name="VMotionLinkDown"
      type-id="vim.fault.VMotionLinkDown"
      vmodl-name="vim.fault.VMotionLinkDown"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.VMotionInterfaceIssue"
      >
      <description-html>
         <![CDATA[The VMotion interface does not have any operational physical links
 associated with it. This is an error for migrating powered-on virtual
 machines.]]>
      </description-html>
            <property name="network" type-id-ref="java.lang.String"
      vmodl-name="network"
      >
      <description-html>
         <![CDATA[Name of the network being used for the VMotion interface.]]>
      </description-html>
      </property>

   </fault>
   <fault name="VMotionNotConfigured"
      type-id="vim.fault.VMotionNotConfigured"
      vmodl-name="vim.fault.VMotionNotConfigured"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.VMotionInterfaceIssue"
      >
      <description-html>
         <![CDATA[A VMotion interface is not configured (or is misconfigured) on
 either the source or destination host.  This is an error only
 when migrating a powered-on virtual machine.]]>
      </description-html>
   </fault>
   <fault name="VMotionNotLicensed"
      type-id="vim.fault.VMotionNotLicensed"
      vmodl-name="vim.fault.VMotionNotLicensed"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.VMotionInterfaceIssue"
      >
      <description-html>
         <![CDATA[VMotion is not licensed on a source or destination host. It must be licensed on both
  hosts.]]>
      </description-html>
   </fault>
   <fault name="VMotionNotSupported"
      type-id="vim.fault.VMotionNotSupported"
      vmodl-name="vim.fault.VMotionNotSupported"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.VMotionInterfaceIssue"
      >
      <description-html>
         <![CDATA[The source or the destination host does not support VMotion.  This is an
 error only when migrating a powered-on virtual machine.]]>
      </description-html>
   </fault>
   <fault name="VMotionProtocolIncompatible"
      type-id="vim.fault.VMotionProtocolIncompatible"
      vmodl-name="vim.fault.VMotionProtocolIncompatible"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.MigrationFault"
      >
      <description-html>
         <![CDATA[VMotion protocol version incompatibility prevents VMotion from the
 virtual machine's current host to the requested destination host.
 (VMotion in the other direction may or may not be supported.)]]>
      </description-html>
   </fault>
   <fault name="VirtualHardwareCompatibilityIssue"
      type-id="vim.fault.VirtualHardwareCompatibilityIssue"
      vmodl-name="vim.fault.VirtualHardwareCompatibilityIssue"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.VmConfigFault"
      >
      <description-html>
         <![CDATA[There is a problem with the compatibility between the intended execution host
 and the virtual machine. This may be an error or warning depending on
 the specific fault subclass.]]>
      </description-html>
   </fault>
   <fault name="VirtualHardwareVersionNotSupported"
      type-id="vim.fault.VirtualHardwareVersionNotSupported"
      vmodl-name="vim.fault.VirtualHardwareVersionNotSupported"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.VirtualHardwareCompatibilityIssue"
      >
      <description-html>
         <![CDATA[The virtual machine's virtual hardware version is not supported on the host.]]>
      </description-html>
            <property name="hostName" type-id-ref="java.lang.String"
      vmodl-name="hostName"
      version-id-ref="vim.version.version2"
      >
      </property>

            <property name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      version-id-ref="vim.version.version2"
      >
      <description-html>
         <![CDATA[The host.]]>
      </description-html>
      </property>

   </fault>
   <fault name="VmAlreadyExistsInDatacenter"
      type-id="vim.fault.VmAlreadyExistsInDatacenter"
      vmodl-name="vim.fault.VmAlreadyExistsInDatacenter"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.InvalidFolder"
      >
      <description-html>
         <![CDATA[Fault thrown when moving a standalone host between datacenters, and
  one or more of the virtual machines registered on the host are already
  registered to hosts in the target datacenter.]]>
      </description-html>
            <property name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      >
      <description-html>
         <![CDATA[The target host.]]>
      </description-html>
      </property>

            <property name="hostname" type-id-ref="java.lang.String"
      vmodl-name="hostname"
      >
      <description-html>
         <![CDATA[Name of the target host.]]>
      </description-html>
      </property>

            <property name="vm" type-id-ref="vim.VirtualMachine"
      vmodl-name="vm"
      is-array="true"
      >
      <description-html>
         <![CDATA[Virtual machines in the target datacenter which have the same
 registration information as those belonging to the target host.]]>
      </description-html>
      </property>

   </fault>
   <fault name="VmFaultToleranceConfigIssue"
      type-id="vim.fault.VmFaultToleranceConfigIssue"
      vmodl-name="vim.fault.VmFaultToleranceConfigIssue"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.VmFaultToleranceIssue"
      >
      <description-html>
         <![CDATA[Configuration issues that can occur during operations
  related to fault tolerance protection for virtual machines.]]>
      </description-html>
            <property name="reason" type-id-ref="java.lang.String"
      vmodl-name="reason"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The reason for the failure.]]>
      </description-html>
      </property>

            <property name="entityName" type-id-ref="java.lang.String"
      vmodl-name="entityName"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The entity name. Depending on the issue, it could
 be virtual machine or host.]]>
      </description-html>
      </property>

            <property name="entity" type-id-ref="vim.ManagedEntity"
      vmodl-name="entity"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The entity]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.fault.VmFaultToleranceConfigIssue.ReasonForIssue</nested-type-id-ref>
   </fault>
   <fault name="VmFaultToleranceConfigIssueWrapper"
      type-id="vim.fault.VmFaultToleranceConfigIssueWrapper"
      vmodl-name="vim.fault.VmFaultToleranceConfigIssueWrapper"
      version-id-ref="vim.version.version6"
      base-type-id="vim.fault.VmFaultToleranceIssue"
      >
      <description-html>
         <![CDATA[Configuration issues that can occur during operations
  related to fault tolerance protection for virtual machines.]]>
      </description-html>
            <property name="entityName" type-id-ref="java.lang.String"
      vmodl-name="entityName"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The entity name. Depending on the issue, it could
 be virtual machine or host.]]>
      </description-html>
      </property>

            <property name="entity" type-id-ref="vim.ManagedEntity"
      vmodl-name="entity"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The entity]]>
      </description-html>
      </property>

            <property name="error" type-id-ref="vmodl.LocalizedMethodFault"
      vmodl-name="error"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The nested error when the reason field is other]]>
      </description-html>
      </property>

   </fault>
   <fault name="VmFaultToleranceInvalidFileBacking"
      type-id="vim.fault.VmFaultToleranceInvalidFileBacking"
      vmodl-name="vim.fault.VmFaultToleranceInvalidFileBacking"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.VmFaultToleranceIssue"
      >
      <description-html>
         <![CDATA[Indicates the file backing for some device prevents fault tolerance
  protection]]>
      </description-html>
            <property name="backingType" type-id-ref="java.lang.String"
      vmodl-name="backingType"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The device type of the file backing]]>
      </description-html>
      </property>

            <property name="backingFilename" type-id-ref="java.lang.String"
      vmodl-name="backingFilename"
      is-optional="true"
      >
      </property>

      <nested-type-id-ref>vim.fault.VmFaultToleranceInvalidFileBacking.DeviceType</nested-type-id-ref>
   </fault>
   <fault name="VmFaultToleranceTooManyFtVcpusOnHost"
      type-id="vim.fault.VmFaultToleranceTooManyFtVcpusOnHost"
      vmodl-name="vim.fault.VmFaultToleranceTooManyFtVcpusOnHost"
      version-id-ref="vim.version.version10"
      base-type-id="vim.fault.InsufficientResourcesFault"
      >
      <description-html>
         <![CDATA[This fault is returned when a host has more than the recommended number of
  Fault Tolerance vCPUs running on it.]]>
      </description-html>
            <property name="hostName" type-id-ref="java.lang.String"
      vmodl-name="hostName"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The name of the host]]>
      </description-html>
      </property>

            <property name="maxNumFtVcpus" type-id-ref="INT"
      vmodl-name="maxNumFtVcpus"
      >
      <description-html>
         <![CDATA[The recommended number of FT protected vCPUs on a host.]]>
      </description-html>
      </property>

   </fault>
   <fault name="VmFaultToleranceTooManyVMsOnHost"
      type-id="vim.fault.VmFaultToleranceTooManyVMsOnHost"
      vmodl-name="vim.fault.VmFaultToleranceTooManyVMsOnHost"
      version-id-ref="vim.version.version6"
      base-type-id="vim.fault.InsufficientResourcesFault"
      >
      <description-html>
         <![CDATA[This fault is returned when a host has more than the recommended number of
  Fault Tolerance VMs running on it.]]>
      </description-html>
            <property name="hostName" type-id-ref="java.lang.String"
      vmodl-name="hostName"
      is-optional="true"
      >
      </property>

            <property name="maxNumFtVms" type-id-ref="INT"
      vmodl-name="maxNumFtVms"
      >
      <description-html>
         <![CDATA[The recommended number of Fault Tolerance VMs running on the host.]]>
      </description-html>
      </property>

   </fault>
   <fault name="VmPowerOnDisabled"
      type-id="vim.fault.VmPowerOnDisabled"
      vmodl-name="vim.fault.VmPowerOnDisabled"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.InvalidState"
      >
      <description-html>
         <![CDATA[This exception is thrown if the power-on of a virtual machine is attempted
  when the operation is disabled on the host]]>
      </description-html>
   </fault>
   <fault name="VmSmpFaultToleranceTooManyVMsOnHost"
      type-id="vim.fault.VmSmpFaultToleranceTooManyVMsOnHost"
      vmodl-name="vim.fault.VmSmpFaultToleranceTooManyVMsOnHost"
      version-id-ref="vim.version.version10"
      base-type-id="vim.fault.InsufficientResourcesFault"
      >
      <description-html>
         <![CDATA[This fault is returned when a host has more than the recommended number of
  SMP Fault Tolerance VMs running on it.]]>
      </description-html>
            <property name="hostName" type-id-ref="java.lang.String"
      vmodl-name="hostName"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The name of the host]]>
      </description-html>
      </property>

            <property name="maxNumSmpFtVms" type-id-ref="INT"
      vmodl-name="maxNumSmpFtVms"
      >
      <description-html>
         <![CDATA[The recommended number of SMP-Fault Tolerance VMs running on the host.]]>
      </description-html>
      </property>

   </fault>
   <fault name="VmWwnConflict"
      type-id="vim.fault.VmWwnConflict"
      vmodl-name="vim.fault.VmWwnConflict"
      version-id-ref="vim.version.version2"
      base-type-id="vim.fault.InvalidVmConfig"
      >
      <description-html>
         <![CDATA[Thrown if a user attempts to assign a
  WWN that is currently being used by other virtual machine or host.]]>
      </description-html>
            <property name="vm" type-id-ref="vim.VirtualMachine"
      vmodl-name="vm"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The virtual machine that is using the same WWN.]]>
      </description-html>
      </property>

            <property name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The host that is using the same WWN.]]>
      </description-html>
      </property>

            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The name of the virtual machine/host that is using the same WWN.]]>
      </description-html>
      </property>

            <property name="wwn" type-id-ref="LONG"
      vmodl-name="wwn"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The WWN that is in conflict.]]>
      </description-html>
      </property>

   </fault>
   <fault name="VmfsMountFault"
      type-id="vim.fault.VmfsMountFault"
      vmodl-name="vim.fault.VmfsMountFault"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.HostConfigFault"
      >
      <description-html>
         <![CDATA[This is a base class for all VMFS volume mount related faults.]]>
      </description-html>
            <property name="uuid" type-id-ref="java.lang.String"
      vmodl-name="uuid"
      >
      <description-html>
         <![CDATA[Vmfs volume uuid]]>
      </description-html>
      </property>

   </fault>
   <fault name="VmotionInterfaceNotEnabled"
      type-id="vim.fault.VmotionInterfaceNotEnabled"
      vmodl-name="vim.fault.VmotionInterfaceNotEnabled"
      version-id-ref="vim.version.version2"
      base-type-id="vim.fault.HostPowerOpFailed"
      >
      <description-html>
         <![CDATA[This fault is thrown when the Vmotion Interface on this host is not enabled.
 The Vmotion Interface is needed for waking up the host from standby mode.]]>
      </description-html>
   </fault>
   <fault name="VolumeEditorError"
      type-id="vim.fault.VolumeEditorError"
      vmodl-name="vim.fault.VolumeEditorError"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.CustomizationFault"
      >
      <description-html>
         <![CDATA[An error occurred in the Open Source Components applications during
 volume editing. Possibly caused by an incompatible cygwin version
 installed in the VirtualCenter server.]]>
      </description-html>
   </fault>
   <fault name="VsanClusterUuidMismatch"
      type-id="vim.fault.VsanClusterUuidMismatch"
      vmodl-name="vim.fault.VsanClusterUuidMismatch"
      version-id-ref="vim.version.version9"
      base-type-id="vim.fault.CannotMoveVsanEnabledHost"
      >
      <description-html>
         <![CDATA[Fault thrown for the case that an attempt is made to move a host which
 is enabled for VSAN into a <a href="vim.ClusterComputeResource.html">ClusterComputeResource</a> whose
 VSAN cluster UUID does not match.<br>See <a href="vim.fault.CannotMoveVsanEnabledHost.html">CannotMoveVsanEnabledHost</a><br>]]>
      </description-html>
            <property name="hostClusterUuid" type-id-ref="java.lang.String"
      vmodl-name="hostClusterUuid"
      >
      <description-html>
         <![CDATA[The VSAN cluster UUID in use by the host at hand.]]>
      </description-html>
      </property>

            <property name="destinationClusterUuid" type-id-ref="java.lang.String"
      vmodl-name="destinationClusterUuid"
      >
      <description-html>
         <![CDATA[The VSAN cluster UUID in use by the destination
 <a href="vim.ClusterComputeResource.html">ClusterComputeResource</a>.]]>
      </description-html>
      </property>

   </fault>
   <fault name="VsanDiskFault"
      type-id="vim.fault.VsanDiskFault"
      vmodl-name="vim.fault.VsanDiskFault"
      version-id-ref="vim.version.version9"
      base-type-id="vim.fault.VsanFault"
      >
      <description-html>
         <![CDATA[Base exception class for VSAN disk-related faults.]]>
      </description-html>
            <property name="device" type-id-ref="java.lang.String"
      vmodl-name="device"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The canonical name for the disk at hand, if applicable.<br>See <a href="vim.host.ScsiLun.html#canonicalName">canonicalName</a><br>]]>
      </description-html>
      </property>

   </fault>
   <fault name="VsanIncompatibleDiskMapping"
      type-id="vim.fault.VsanIncompatibleDiskMapping"
      vmodl-name="vim.fault.VsanIncompatibleDiskMapping"
      version-id-ref="vim.version.version10"
      base-type-id="vim.fault.VsanDiskFault"
      >
      <description-html>
         <![CDATA[Fault used for the add operation which will result in incompatible
 disk mappings.<br>See <a href="vim.host.VsanSystem.html#initializeDisks">InitializeDisks_Task</a><br>]]>
      </description-html>
   </fault>
   <fault name="VspanDestPortConflict"
      type-id="vim.fault.VspanDestPortConflict"
      vmodl-name="vim.fault.VspanDestPortConflict"
      version-id-ref="vim.version.version7"
      base-type-id="vim.fault.DvsFault"
      >
      <description-html>
         <![CDATA[Thrown if a dvPort is used as destination in multiple Distributed Port Mirroring sessions.]]>
      </description-html>
            <property name="vspanSessionKey1" type-id-ref="java.lang.String"
      vmodl-name="vspanSessionKey1"
      >
      <description-html>
         <![CDATA[The key of the Distributed Port Mirroring session whose destination ports include a port
  that is also used as destination ports of other Distributed Port Mirroring sessions]]>
      </description-html>
      </property>

            <property name="vspanSessionKey2" type-id-ref="java.lang.String"
      vmodl-name="vspanSessionKey2"
      >
      <description-html>
         <![CDATA[The key of the Distributed Port Mirroring session whose destination ports include a port
  that is also used as destination ports of other Distributed Port Mirroring sessions]]>
      </description-html>
      </property>

            <property name="portKey" type-id-ref="java.lang.String"
      vmodl-name="portKey"
      >
      <description-html>
         <![CDATA[The key of the the port that is used as destination in multiple Distributed Port Mirroring sessions]]>
      </description-html>
      </property>

   </fault>
   <fault name="VspanPortConflict"
      type-id="vim.fault.VspanPortConflict"
      vmodl-name="vim.fault.VspanPortConflict"
      version-id-ref="vim.version.version7"
      base-type-id="vim.fault.DvsFault"
      >
      <description-html>
         <![CDATA[Thrown if a DistributedVirtualPort appears in both the transmitted source and destination
  ports of any Distributed Port Mirroring session.]]>
      </description-html>
            <property name="vspanSessionKey1" type-id-ref="java.lang.String"
      vmodl-name="vspanSessionKey1"
      >
      <description-html>
         <![CDATA[The key of the Distributed Port Mirroring session that is in conflict]]>
      </description-html>
      </property>

            <property name="vspanSessionKey2" type-id-ref="java.lang.String"
      vmodl-name="vspanSessionKey2"
      >
      <description-html>
         <![CDATA[The key of the Distributed Port Mirroring session that is in conflict]]>
      </description-html>
      </property>

            <property name="portKey" type-id-ref="java.lang.String"
      vmodl-name="portKey"
      >
      <description-html>
         <![CDATA[The key of the port that is both the transmitted source and destination.]]>
      </description-html>
      </property>

   </fault>
   <fault name="VspanPortMoveFault"
      type-id="vim.fault.VspanPortMoveFault"
      vmodl-name="vim.fault.VspanPortMoveFault"
      version-id-ref="vim.version.version7"
      base-type-id="vim.fault.DvsFault"
      >
      <description-html>
         <![CDATA[Thrown when moving a port used as tranmistted source or destination ports in vspan
  session to a promiscuous portgroup if this operation may change
  the non-promiscuous port to promiscuous mode.]]>
      </description-html>
            <property name="srcPortgroupName" type-id-ref="java.lang.String"
      vmodl-name="srcPortgroupName"
      >
      <description-html>
         <![CDATA[The key of the source portgroup.]]>
      </description-html>
      </property>

            <property name="destPortgroupName" type-id-ref="java.lang.String"
      vmodl-name="destPortgroupName"
      >
      <description-html>
         <![CDATA[The key of the dest portgroup.]]>
      </description-html>
      </property>

            <property name="portKey" type-id-ref="java.lang.String"
      vmodl-name="portKey"
      >
      <description-html>
         <![CDATA[The key of the port.]]>
      </description-html>
      </property>

   </fault>
   <fault name="VspanPortPromiscChangeFault"
      type-id="vim.fault.VspanPortPromiscChangeFault"
      vmodl-name="vim.fault.VspanPortPromiscChangeFault"
      version-id-ref="vim.version.version7"
      base-type-id="vim.fault.DvsFault"
      >
      <description-html>
         <![CDATA[Thrown when changing a non-promiscuous port used as tranmistted source or dest
  ports in Distributed Port Mirroring session to promiscuous mode.]]>
      </description-html>
            <property name="portKey" type-id-ref="java.lang.String"
      vmodl-name="portKey"
      >
      <description-html>
         <![CDATA[The key of the port.]]>
      </description-html>
      </property>

   </fault>
   <fault name="VspanPortgroupPromiscChangeFault"
      type-id="vim.fault.VspanPortgroupPromiscChangeFault"
      vmodl-name="vim.fault.VspanPortgroupPromiscChangeFault"
      version-id-ref="vim.version.version7"
      base-type-id="vim.fault.DvsFault"
      >
      <description-html>
         <![CDATA[Thrown when changing a non-promiscous portgroup to promiscuous mode if any port
  in this portgroup is used as tranmistted source or dest ports in vspan
  session.]]>
      </description-html>
            <property name="portgroupName" type-id-ref="java.lang.String"
      vmodl-name="portgroupName"
      >
      <description-html>
         <![CDATA[The key of the port.]]>
      </description-html>
      </property>

   </fault>
   <fault name="VspanPortgroupTypeChangeFault"
      type-id="vim.fault.VspanPortgroupTypeChangeFault"
      vmodl-name="vim.fault.VspanPortgroupTypeChangeFault"
      version-id-ref="vim.version.version7"
      base-type-id="vim.fault.DvsFault"
      >
      <description-html>
         <![CDATA[Thrown when changing a portgroup from static/dynamic binding to
  ephemeral(no binding) if any ports in this portgroup participate in
  Distributed Port Mirroring session.]]>
      </description-html>
            <property name="portgroupName" type-id-ref="java.lang.String"
      vmodl-name="portgroupName"
      >
      <description-html>
         <![CDATA[The name of the portgroup.]]>
      </description-html>
      </property>

   </fault>
   <fault name="VspanPromiscuousPortNotSupported"
      type-id="vim.fault.VspanPromiscuousPortNotSupported"
      vmodl-name="vim.fault.VspanPromiscuousPortNotSupported"
      version-id-ref="vim.version.version7"
      base-type-id="vim.fault.DvsFault"
      >
      <description-html>
         <![CDATA[Thrown if a promiscuous port appears in transmitted source or destination
  ports of any Distributed Port Mirroring session.]]>
      </description-html>
            <property name="vspanSessionKey" type-id-ref="java.lang.String"
      vmodl-name="vspanSessionKey"
      >
      <description-html>
         <![CDATA[The key of the Distributed Port Mirroring session in which a promiscuous port is used as
  transmitted source or destination ports.]]>
      </description-html>
      </property>

            <property name="portKey" type-id-ref="java.lang.String"
      vmodl-name="portKey"
      >
      <description-html>
         <![CDATA[The key of the promiscuous port that appears in transmitted
  source or destination ports.]]>
      </description-html>
      </property>

   </fault>
   <fault name="VspanSameSessionPortConflict"
      type-id="vim.fault.VspanSameSessionPortConflict"
      vmodl-name="vim.fault.VspanSameSessionPortConflict"
      version-id-ref="vim.version.version7"
      base-type-id="vim.fault.DvsFault"
      >
      <description-html>
         <![CDATA[Thrown if a dvPort appears in both the source and destination
  ports of the same Distributed Port Mirroring session.]]>
      </description-html>
            <property name="vspanSessionKey" type-id-ref="java.lang.String"
      vmodl-name="vspanSessionKey"
      >
      <description-html>
         <![CDATA[The key of the Distributed Port Mirroring session in which a dvPort appears in both the source and destination ports]]>
      </description-html>
      </property>

            <property name="portKey" type-id-ref="java.lang.String"
      vmodl-name="portKey"
      >
      <description-html>
         <![CDATA[The key of the port that appears in both the source and
  destination ports of the same Distributed Port Mirroring session.]]>
      </description-html>
      </property>

   </fault>
   <fault name="WakeOnLanNotSupported"
      type-id="vim.fault.WakeOnLanNotSupported"
      vmodl-name="vim.fault.WakeOnLanNotSupported"
      version-id-ref="vim.version.version2"
      base-type-id="vim.fault.VirtualHardwareCompatibilityIssue"
      >
      <description-html>
         <![CDATA[The virtual machine and at least one of its virtual NICs are configured to
 use Wake-on-LAN, but the host does not support Wake-on-LAN for the
 virtual machine's selected guest OS.]]>
      </description-html>
   </fault>
   <fault name="WakeOnLanNotSupportedByVmotionNIC"
      type-id="vim.fault.WakeOnLanNotSupportedByVmotionNIC"
      vmodl-name="vim.fault.WakeOnLanNotSupportedByVmotionNIC"
      version-id-ref="vim.version.version2"
      base-type-id="vim.fault.HostPowerOpFailed"
      >
      <description-html>
         <![CDATA[This fault is thrown when Wake-on-LAN isn't supported by the Vmotion NIC on the host.]]>
      </description-html>
   </fault>
   <fault name="WillLoseHAProtection"
      type-id="vim.fault.WillLoseHAProtection"
      vmodl-name="vim.fault.WillLoseHAProtection"
      version-id-ref="vim.version.version7"
      base-type-id="vim.fault.MigrationFault"
      >
      <description-html>
         <![CDATA[This fault is reported when the execution of a storage vmotion or
  relocate operation would impact vSphere HA's ability to
  restart a VM. For storage vmotion, this fault
  is reported when HA protection will be lost after the vmotion
  completes. Consequently, HA would not restart the VM if it
  subsequently failed. For relocate, relocate is not supported on
  VMs that failed before the operation is attempted and are in the
  process of being restarted at the time the operation is performed.]]>
      </description-html>
            <property name="resolution" type-id-ref="java.lang.String"
      vmodl-name="resolution"
      >
      <description-html>
         <![CDATA[The steps the user can take to restore protection if the
 the operation is performed. Values come from
 Resolution.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.fault.WillLoseHAProtection.Resolution</nested-type-id-ref>
   </fault>
   <fault name="WillModifyConfigCpuRequirements"
      type-id="vim.fault.WillModifyConfigCpuRequirements"
      vmodl-name="vim.fault.WillModifyConfigCpuRequirements"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.MigrationFault"
      >
      <description-html>
         <![CDATA[A virtual machine's total CPU feature requirements are determined by
  overlaying the requirements specified in its configuration (if any) on top
  of the requirements specified in the descriptor for its guest OS.  It is
  therefore possible for a host change to implicitly change a virtual
  machine's CPU feature requirements.  The guest OS descriptor may have
  different requirements on the new host.  Or, if the virtual machine
  currently specifies requirements in its configuration, those requirements
  will be lost if the new host does not support this.
  <p>
  This fault indicates that the virtual machine's CPU feature requirements
  would change because of a migration, and also that the destination host
  does support storing CPU feature requirements in the virtual machine's
  configuration.  (If the destination host does not support such an action,
  <a href="vim.fault.CannotModifyConfigCpuRequirements.html">CannotModifyConfigCpuRequirements</a> is used instead of this fault.)
  <p>
  This is a warning to notify the user that the migration process will
  adjust the virtual machine's configuration so that it will be operating
  under an unchanged set of CPU feature requirements on its new host.  If the
  user wishes to expose the different guest OS requirements of the new host,
  the user will need to edit the virtual machine's configuration after the
  migration.]]>
      </description-html>
   </fault>
   <fault name="WillResetSnapshotDirectory"
      type-id="vim.fault.WillResetSnapshotDirectory"
      vmodl-name="vim.fault.WillResetSnapshotDirectory"
      version-id-ref="vim.version.version7"
      base-type-id="vim.fault.MigrationFault"
      >
      <description-html>
         <![CDATA[This fault is reported when the execution of a storage vmotion or
  relocate operation would reset the snapshotDirectory settings
  to its default value (VM's home/config directory).]]>
      </description-html>
   </fault>
   <fault name="ActiveVMsBlockingEVC"
      type-id="vim.fault.ActiveVMsBlockingEVC"
      vmodl-name="vim.fault.ActiveVMsBlockingEVC"
      version-id-ref="vim.version.version3"
      internal-before-version-id-ref="vim.version.version10"
      base-type-id="vim.fault.EVCConfigFault"
      >
      <description-html>
         <![CDATA[An attempt to enable Enhanced VMotion Compatibility on a cluster, or to
  select a less-featureful EVC mode for a cluster where EVC is already
  enabled, has failed for the following reason:
  <ul>
  <li>The cluster contains hosts that expose additional compatibility-
      relevant CPU features beyond those present in the baseline of the
      requested EVC mode.
  <li>Those hosts have powered-on or suspended virtual machines.
  </ul>
  Therefore the EVC configuration has been rejected since it may suppress
  CPU features that are currently in-use.]]>
      </description-html>
            <property name="evcMode" type-id-ref="java.lang.String"
      vmodl-name="evcMode"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The requested EVC mode.]]>
      </description-html>
      </property>

            <property name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      version-id-ref="vim.version.version5"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Hosts with active virtual machines that are blocking the operation,
  because the hosts expose compatibility-relevant CPU features not present
  in the baseline of the requested EVC mode.
  <p>
  Note that in rare cases, a host may be on this list even if its
  <a href="vim.host.Summary.html#maxEVCModeKey">maxEVCModeKey</a> corresponds to the
  requested EVC mode.  This means that even though that EVC mode is the
  best match for the host's hardware, the host still has some features
  beyond those present in the baseline for that EVC mode.]]>
      </description-html>
      </property>

            <property name="hostName" type-id-ref="java.lang.String"
      vmodl-name="hostName"
      version-id-ref="vim.version.version5"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The names of the hosts in the host array.]]>
      </description-html>
      </property>

   </fault>
   <fault name="AdminDisabled"
      type-id="vim.fault.AdminDisabled"
      vmodl-name="vim.fault.AdminDisabled"
      version-id-ref="vim.version.version2"
      base-type-id="vim.fault.HostConfigFault"
      >
      <description-html>
         <![CDATA[Fault thrown if an attempt to disable the Administrator permission
  on a host of which the Administator permission has already been disabled.]]>
      </description-html>
   </fault>
   <fault name="AdminNotDisabled"
      type-id="vim.fault.AdminNotDisabled"
      vmodl-name="vim.fault.AdminNotDisabled"
      version-id-ref="vim.version.version2"
      base-type-id="vim.fault.HostConfigFault"
      >
      <description-html>
         <![CDATA[Fault thrown if an attempt to enable the Administrator permission
  on a host of which the Administator permission is not disabled.]]>
      </description-html>
   </fault>
   <fault name="AffinityConfigured"
      type-id="vim.fault.AffinityConfigured"
      vmodl-name="vim.fault.AffinityConfigured"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.MigrationFault"
      >
      <description-html>
         <![CDATA[Virtual machine has a configured memory and/or CPU affinity that will
 prevent VMotion. This is an error for powered-on virtual machines.]]>
      </description-html>
            <property name="configuredAffinity" type-id-ref="java.lang.String"
      vmodl-name="configuredAffinity"
      is-array="true"
      >
      <description-html>
         <![CDATA[Configured affinity types for the virtual machine.
 See <a href="vim.fault.AffinityConfigured.Affinity.html">AffinityType</a> for valid values.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.fault.AffinityConfigured.Affinity</nested-type-id-ref>
   </fault>
   <fault name="AgentInstallFailed"
      type-id="vim.fault.AgentInstallFailed"
      vmodl-name="vim.fault.AgentInstallFailed"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.HostConnectFault"
      >
      <description-html>
         <![CDATA[An AgentInstallFailed fault is thrown when VirtualCenter
  fails to install the VirtualCenter agent on a host. For example, a fault is
  thrown if the agent software cannot be uploaded to the host or an error occurred
  during the agent installation.]]>
      </description-html>
            <property name="reason" type-id-ref="java.lang.String"
      vmodl-name="reason"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The reason why the agent install failed, if known.
 Values should come from Reason.]]>
      </description-html>
      </property>

            <property name="statusCode" type-id-ref="INT"
      vmodl-name="statusCode"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The status code returned by the agent installer, if it was run.]]>
      </description-html>
      </property>

            <property name="installerOutput" type-id-ref="java.lang.String"
      vmodl-name="installerOutput"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The output (stdout/stderr) from executing the agent installer.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.fault.AgentInstallFailed.Reason</nested-type-id-ref>
   </fault>
   <fault name="AlreadyBeingManaged"
      type-id="vim.fault.AlreadyBeingManaged"
      vmodl-name="vim.fault.AlreadyBeingManaged"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.HostConnectFault"
      >
      <description-html>
         <![CDATA[AlreadyBeingManaged fault is thrown by the host
  connect method if the host is already being managed
  by a VirtualCenter server.]]>
      </description-html>
            <property name="ipAddress" type-id-ref="java.lang.String"
      vmodl-name="ipAddress"
      >
      <description-html>
         <![CDATA[IP address of server that is currently managing the host.]]>
      </description-html>
      </property>

   </fault>
   <fault name="AlreadyConnected"
      type-id="vim.fault.AlreadyConnected"
      vmodl-name="vim.fault.AlreadyConnected"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.HostConnectFault"
      >
      <description-html>
         <![CDATA[AlreadyConnect fault is thrown by the host connect method
  if the host is already connected to a VirtualCenter server.
  This might occur if the host has been added more than once
  in the same VirtualCenter in different folders or compute
  resources.]]>
      </description-html>
            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      >
      <description-html>
         <![CDATA[Name of the host]]>
      </description-html>
      </property>

   </fault>
   <fault name="ApplicationQuiesceFault"
      type-id="vim.fault.ApplicationQuiesceFault"
      vmodl-name="vim.fault.ApplicationQuiesceFault"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.SnapshotFault"
      >
      <description-html>
         <![CDATA[This fault is thrown when creating a quiesced snapshot failed
  because the (user-supplied) custom pre-freeze script in the
  virtual machine exited with a non-zero return code.
  <p>
  This indicates that the script failed to perform its quiescing
  task, which causes us to fail the quiesced snapshot operation.]]>
      </description-html>
   </fault>
   <fault name="BackupBlobReadFailure"
      type-id="vim.fault.BackupBlobReadFailure"
      vmodl-name="vim.fault.BackupBlobReadFailure"
      version-id-ref="vim.version.version8"
      base-type-id="vim.fault.DvsFault"
      >
      <description-html>
         <![CDATA[Thrown if backupConfig blob is corrupted]]>
      </description-html>
            <property name="entityName" type-id-ref="java.lang.String"
      vmodl-name="entityName"
      >
      <description-html>
         <![CDATA[The entity name on which backupConfig read failed]]>
      </description-html>
      </property>

            <property name="entityType" type-id-ref="java.lang.String"
      vmodl-name="entityType"
      >
      <description-html>
         <![CDATA[The entity type on which backupConfig read failed]]>
      </description-html>
      </property>

            <property name="fault" type-id-ref="vmodl.LocalizedMethodFault"
      vmodl-name="fault"
      >
      <description-html>
         <![CDATA[The fault that occurred.]]>
      </description-html>
      </property>

   </fault>
   <fault name="BackupBlobWriteFailure"
      type-id="vim.fault.BackupBlobWriteFailure"
      vmodl-name="vim.fault.BackupBlobWriteFailure"
      version-id-ref="vim.version.version8"
      base-type-id="vim.fault.DvsFault"
      >
      <description-html>
         <![CDATA[Thrown if backupConfig blob write fails]]>
      </description-html>
            <property name="entityName" type-id-ref="java.lang.String"
      vmodl-name="entityName"
      >
      <description-html>
         <![CDATA[The entity name on which backupConfig write failed]]>
      </description-html>
      </property>

            <property name="entityType" type-id-ref="java.lang.String"
      vmodl-name="entityType"
      >
      <description-html>
         <![CDATA[The entity type on which backupConfig write failed]]>
      </description-html>
      </property>

            <property name="fault" type-id-ref="vmodl.LocalizedMethodFault"
      vmodl-name="fault"
      >
      <description-html>
         <![CDATA[The fault that occurred.]]>
      </description-html>
      </property>

   </fault>
   <fault name="BlockedByFirewall"
      type-id="vim.fault.BlockedByFirewall"
      vmodl-name="vim.fault.BlockedByFirewall"
      version-id-ref="vim.version.version6"
      base-type-id="vim.fault.HostConfigFault"
      >
      <description-html>
         <![CDATA[Fault indicating that firewall configuration prevents
  an operation from completing successfully.]]>
      </description-html>
   </fault>
   <fault name="CAMServerRefusedConnection"
      type-id="vim.fault.CAMServerRefusedConnection"
      vmodl-name="vim.fault.CAMServerRefusedConnection"
      version-id-ref="vim.version.version7"
      base-type-id="vim.fault.InvalidCAMServer"
      >
      <description-html>
         <![CDATA[Fault indicating that the CAM server
  cannot be connected.]]>
      </description-html>
   </fault>
   <fault name="CannotAccessFile"
      type-id="vim.fault.CannotAccessFile"
      vmodl-name="vim.fault.CannotAccessFile"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.FileFault"
      >
      <description-html>
         <![CDATA[This fault is thrown when an operation fails because of insufficient
  permissions to access a file.]]>
      </description-html>
   </fault>
   <fault name="CannotAccessNetwork"
      type-id="vim.fault.CannotAccessNetwork"
      vmodl-name="vim.fault.CannotAccessNetwork"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.CannotAccessVmDevice"
      >
      <description-html>
         <![CDATA[A network associated with the virtual machine is not accessible. If returned as
 part of migration checks, this is an error if either of the following is true,
 a warning otherwise:
 <ul>
    <li>The virtual ethernet card device backing is a distributed virtual switch,
        of which the destination host is not a member</li>
    <li>The virtual ethernet card device backing is a standard network and the
        the device is connected</li>
 </ul>]]>
      </description-html>
            <property name="network" type-id-ref="vim.Network"
      vmodl-name="network"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[A reference to the network that cannot be accessed]]>
      </description-html>
      </property>

   </fault>
   <fault name="CannotAddHostWithFTVmAsStandalone"
      type-id="vim.fault.CannotAddHostWithFTVmAsStandalone"
      vmodl-name="vim.fault.CannotAddHostWithFTVmAsStandalone"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.HostConnectFault"
      >
      <description-html>
         <![CDATA[Can not add a host with fault tolerance vms to be standalone]]>
      </description-html>
   </fault>
   <fault name="CannotAddHostWithFTVmToDifferentCluster"
      type-id="vim.fault.CannotAddHostWithFTVmToDifferentCluster"
      vmodl-name="vim.fault.CannotAddHostWithFTVmToDifferentCluster"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.HostConnectFault"
      >
      <description-html>
         <![CDATA[Can not add a host with fault tolerance vms to a different cluster other
 than the one used other vms in the same fault tolerance group.]]>
      </description-html>
   </fault>
   <fault name="CannotAddHostWithFTVmToNonHACluster"
      type-id="vim.fault.CannotAddHostWithFTVmToNonHACluster"
      vmodl-name="vim.fault.CannotAddHostWithFTVmToNonHACluster"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.HostConnectFault"
      >
      <description-html>
         <![CDATA[Can not add a host with fault tolerance vms to a non HA enabled cluster]]>
      </description-html>
   </fault>
   <fault name="CannotCreateFile"
      type-id="vim.fault.CannotCreateFile"
      vmodl-name="vim.fault.CannotCreateFile"
      version-id-ref="vim.version.version2"
      base-type-id="vim.fault.FileFault"
      >
      <description-html>
         <![CDATA[A CannotCreateFile exception is thrown if a file create
  operation fails.]]>
      </description-html>
   </fault>
   <fault name="CannotDecryptPasswords"
      type-id="vim.fault.CannotDecryptPasswords"
      vmodl-name="vim.fault.CannotDecryptPasswords"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.CustomizationFault"
      >
      <description-html>
         <![CDATA[The VirtualCenter server is unable to decrypt passwords stored in
 the customization specification.]]>
      </description-html>
   </fault>
   <fault name="CannotDeleteFile"
      type-id="vim.fault.CannotDeleteFile"
      vmodl-name="vim.fault.CannotDeleteFile"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.FileFault"
      >
      <description-html>
         <![CDATA[A CannotDeleteFile exception is thrown if a file-deletion
  operation fails.]]>
      </description-html>
   </fault>
   <fault name="CannotModifyConfigCpuRequirements"
      type-id="vim.fault.CannotModifyConfigCpuRequirements"
      vmodl-name="vim.fault.CannotModifyConfigCpuRequirements"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.MigrationFault"
      >
      <description-html>
         <![CDATA[A virtual machine's total CPU feature requirements are determined by
  overlaying the requirements specified in its configuration (if any) on top
  of the requirements specified in the descriptor for its guest OS.  It is
  therefore possible for a host change to implicitly change a virtual
  machine's CPU feature requirements.  The guest OS descriptor may have
  different requirements on the new host.  Or, if the virtual machine
  currently specifies requirements in its configuration, those requirements
  will be lost if the new host does not support this.
  <p>
  This fault indicates that the virtual machine's CPU feature requirements
  would change because of a migration, and also that the destination host
  does not support storing CPU feature requirements in the virtual machine's
  configuration.  (If the destination host does support such an action,
  WillModifyConfigCpuRequirements is used instead of this fault.)
  <p>
  For a powered-off virtual machine, this is a warning.  The migration may
  proceed, but the virtual machine will be operating under different
  CPU feature requirements if it is powered on after the migration.
  <p>
  For a powered-on or suspended virtual machine, this is an error.]]>
      </description-html>
   </fault>
   <fault name="CannotMoveVmWithDeltaDisk"
      type-id="vim.fault.CannotMoveVmWithDeltaDisk"
      vmodl-name="vim.fault.CannotMoveVmWithDeltaDisk"
      version-id-ref="vim.version.version7"
      base-type-id="vim.fault.MigrationFault"
      >
      <description-html>
         <![CDATA[This fault is thrown when an attempt is made to relocate a virtual machine
  with virtual disk(s) having delta disk backing.]]>
      </description-html>
            <property name="device" type-id-ref="java.lang.String"
      vmodl-name="device"
      >
      <description-html>
         <![CDATA[The label of the delta disk device]]>
      </description-html>
      </property>

   </fault>
   <fault name="CannotMoveVmWithNativeDeltaDisk"
      type-id="vim.fault.CannotMoveVmWithNativeDeltaDisk"
      vmodl-name="vim.fault.CannotMoveVmWithNativeDeltaDisk"
      version-id-ref="vim.version.version7"
      base-type-id="vim.fault.MigrationFault"
      >
      <description-html>
         <![CDATA[This fault is thrown when an attempt is made to migrate a virtual machine
  with native delta disks to different datastores.]]>
      </description-html>
   </fault>
   <fault name="CannotPowerOffVmInCluster"
      type-id="vim.fault.CannotPowerOffVmInCluster"
      vmodl-name="vim.fault.CannotPowerOffVmInCluster"
      version-id-ref="vim.version.version7"
      base-type-id="vim.fault.InvalidState"
      >
      <description-html>
         <![CDATA[This fault is reported when a user attempts to power off or
  suspend a VM when the HA master agent to which vCenter Server is
  connected does not manage the VM.]]>
      </description-html>
            <property name="operation" type-id-ref="java.lang.String"
      vmodl-name="operation"
      >
      <description-html>
         <![CDATA[The operation being performed. Values come from
 Operation.]]>
      </description-html>
      </property>

            <property name="vm" type-id-ref="vim.VirtualMachine"
      vmodl-name="vm"
      >
      <description-html>
         <![CDATA[The Virtual Machine]]>
      </description-html>
      </property>

            <property name="vmName" type-id-ref="java.lang.String"
      vmodl-name="vmName"
      >
      <description-html>
         <![CDATA[Name of the Virtual Machine]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.fault.CannotPowerOffVmInCluster.Operation</nested-type-id-ref>
   </fault>
   <fault name="ClockSkew"
      type-id="vim.fault.ClockSkew"
      vmodl-name="vim.fault.ClockSkew"
      version-id-ref="vim.version.version6"
      base-type-id="vim.fault.HostConfigFault"
      >
      <description-html>
         <![CDATA[Fault indicating that the clock skew in the system exceeds the limit.]]>
      </description-html>
   </fault>
   <fault name="CloneFromSnapshotNotSupported"
      type-id="vim.fault.CloneFromSnapshotNotSupported"
      vmodl-name="vim.fault.CloneFromSnapshotNotSupported"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.MigrationFault"
      >
      <description-html>
         <![CDATA[An attempt is being made to clone a virtual machine from a snapshot
  point, and this is not supported.
  <p><br>See <a href="vim.vm.CloneSpec.html#snapshot">snapshot</a><br>See <a href="vim.vm.Capability.html#snapshotConfigSupported">snapshotConfigSupported</a><br>See <a href="vim.host.Capability.html#cloneFromSnapshotSupported">cloneFromSnapshotSupported</a><br>]]>
      </description-html>
   </fault>
   <fault name="CollectorAddressUnset"
      type-id="vim.fault.CollectorAddressUnset"
      vmodl-name="vim.fault.CollectorAddressUnset"
      version-id-ref="vim.version.version8"
      base-type-id="vim.fault.DvsFault"
      >
      <description-html>
         <![CDATA[The distributed virtual switch received a reconfiguration request to
  activate ipfix monitoring of the switch traffic. However, the address
  and/or the port of the ipfix collector has not been specified.]]>
      </description-html>
   </fault>
   <fault name="ConflictingConfiguration"
      type-id="vim.fault.ConflictingConfiguration"
      vmodl-name="vim.fault.ConflictingConfiguration"
      version-id-ref="vim.version.version9"
      base-type-id="vim.fault.DvsFault"
      >
      <description-html>
         <![CDATA[Thrown if the configurations of the objects are in conflict.]]>
      </description-html>
            <property name="configInConflict" type-id-ref="vim.fault.ConflictingConfiguration.Config"
      vmodl-name="configInConflict"
      is-array="true"
      >
      <description-html>
         <![CDATA[The configurations that are in conflict.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.fault.ConflictingConfiguration.Config</nested-type-id-ref>
   </fault>
   <fault name="CpuIncompatible"
      type-id="vim.fault.CpuIncompatible"
      vmodl-name="vim.fault.CpuIncompatible"
      version-id-ref="vim.version.version1"
      is-deprecated="true"
      base-type-id="vim.fault.VirtualHardwareCompatibilityIssue"
      >
      <description-html>
         <![CDATA[The host is not compatible with the CPU feature requirements of the
  virtual machine, for a particular CPUID register. A subclass of this fault
  may be used to express the incompatibilities in a more easily
  understandable format.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 6.5 use
  <a href="vim.fault.FeatureRequirementsNotMet.html">FeatureRequirementsNotMet</a>]]>
      </deprecated-html>
            <property name="level" type-id-ref="INT"
      vmodl-name="level"
      >
      <description-html>
         <![CDATA[The CpuIdInfo level where a problem was detected. Other levels may
  also have problems.]]>
      </description-html>
      </property>

            <property name="registerName" type-id-ref="java.lang.String"
      vmodl-name="registerName"
      >
      <description-html>
         <![CDATA[The CpuIdInfo register where a problem was detected. Other registers
  may also have problems. Possible register names are eax, ebx, ecx, or edx.]]>
      </description-html>
      </property>

            <property name="registerBits" type-id-ref="java.lang.String"
      vmodl-name="registerBits"
      version-id-ref="vim.version.version2"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The contents of the register on the target host, in CpuIdInfo register
  format.  The '-' character indicates an unknown value.]]>
      </description-html>
      </property>

            <property name="desiredBits" type-id-ref="java.lang.String"
      vmodl-name="desiredBits"
      version-id-ref="vim.version.version2"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The desired values for the register's bits.  The 'x' character indicates
  don't-care.]]>
      </description-html>
      </property>

            <property name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      version-id-ref="vim.version.version2"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The host that is not compatible with the requirements.]]>
      </description-html>
      </property>

   </fault>
   <fault name="CpuIncompatible1ECX"
      type-id="vim.fault.CpuIncompatible1ECX"
      vmodl-name="vim.fault.CpuIncompatible1ECX"
      version-id-ref="vim.version.version2"
      is-deprecated="true"
      base-type-id="vim.fault.CpuIncompatible"
      >
      <description-html>
         <![CDATA[Convenience subclass for calling out some named features among the
  incompatibilities found in CPUID level 1 register ecx.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 6.5 use
  <a href="vim.fault.FeatureRequirementsNotMet.html">FeatureRequirementsNotMet</a>]]>
      </deprecated-html>
            <property name="sse3" type-id-ref="BOOLEAN"
      vmodl-name="sse3"
      >
      <description-html>
         <![CDATA[Flag to indicate bit 0 is incompatible.]]>
      </description-html>
      </property>

            <property name="pclmulqdq" type-id-ref="BOOLEAN"
      vmodl-name="pclmulqdq"
      version-id-ref="vim.version.version7"
      >
      <description-html>
         <![CDATA[Flag to indicate bit 1 is incompatible.]]>
      </description-html>
      </property>

            <property name="ssse3" type-id-ref="BOOLEAN"
      vmodl-name="ssse3"
      >
      <description-html>
         <![CDATA[Flag to indicate bit 9 is incompatible.]]>
      </description-html>
      </property>

            <property name="sse41" type-id-ref="BOOLEAN"
      vmodl-name="sse41"
      >
      <description-html>
         <![CDATA[Flag to indicate bit 19 is incompatible.]]>
      </description-html>
      </property>

            <property name="sse42" type-id-ref="BOOLEAN"
      vmodl-name="sse42"
      >
      <description-html>
         <![CDATA[Flag to indicate bit 20 is incompatible.]]>
      </description-html>
      </property>

            <property name="aes" type-id-ref="BOOLEAN"
      vmodl-name="aes"
      version-id-ref="vim.version.version7"
      >
      <description-html>
         <![CDATA[Flag to indicate bit 25 is incompatible.]]>
      </description-html>
      </property>

            <property name="other" type-id-ref="BOOLEAN"
      vmodl-name="other"
      >
      <description-html>
         <![CDATA[Flag to indicate that bits other than 0/1/9/19/20/25 are incompatible.
  I.e. the detected incompatibilities cannot be completely described by
  the sse3, pclmulqdq, ssse3, sse41, sse42, and/or aes flags.]]>
      </description-html>
      </property>

            <property name="otherOnly" type-id-ref="BOOLEAN"
      vmodl-name="otherOnly"
      >
      <description-html>
         <![CDATA[Flag to indicate that the sse3, pclmulqdq, ssse3, sse41, sse42, and aes
  flags are all false, and the "other" flag is true. Purely a convenience
  property for the client processing this fault.]]>
      </description-html>
      </property>

   </fault>
   <fault name="CpuIncompatible81EDX"
      type-id="vim.fault.CpuIncompatible81EDX"
      vmodl-name="vim.fault.CpuIncompatible81EDX"
      version-id-ref="vim.version.version2"
      is-deprecated="true"
      base-type-id="vim.fault.CpuIncompatible"
      >
      <description-html>
         <![CDATA[Convenience subclass for calling out some named features among the
 incompatibilities found in CPUID level 0x80000001 register edx.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 6.5 use
 <a href="vim.fault.FeatureRequirementsNotMet.html">FeatureRequirementsNotMet</a>]]>
      </deprecated-html>
            <property name="nx" type-id-ref="BOOLEAN"
      vmodl-name="nx"
      >
      <description-html>
         <![CDATA[Flag to indicate bit 20 is incompatible.]]>
      </description-html>
      </property>

            <property name="ffxsr" type-id-ref="BOOLEAN"
      vmodl-name="ffxsr"
      >
      <description-html>
         <![CDATA[Flag to indicate bit 25 is incompatible.]]>
      </description-html>
      </property>

            <property name="rdtscp" type-id-ref="BOOLEAN"
      vmodl-name="rdtscp"
      >
      <description-html>
         <![CDATA[Flag to indicate bit 27 is incompatible.]]>
      </description-html>
      </property>

            <property name="lm" type-id-ref="BOOLEAN"
      vmodl-name="lm"
      >
      <description-html>
         <![CDATA[Flag to indicate bit 29 is incompatible.]]>
      </description-html>
      </property>

            <property name="other" type-id-ref="BOOLEAN"
      vmodl-name="other"
      >
      <description-html>
         <![CDATA[Flag to indicate that bits other than 20/25/27/29 are incompatible.
  I.e. the detected incompatibilities cannot be completely described by
  the nx, ffxsr, rdtscp, and/or lm flags.]]>
      </description-html>
      </property>

            <property name="otherOnly" type-id-ref="BOOLEAN"
      vmodl-name="otherOnly"
      >
      <description-html>
         <![CDATA[Flag to indicate that the nx, ffxsr, rdtscp, and lm flags are all false,
  and the "other" flag is true. Purely a convenience property for the
  client processing this fault.]]>
      </description-html>
      </property>

   </fault>
   <fault name="DatacenterMismatch"
      type-id="vim.fault.DatacenterMismatch"
      vmodl-name="vim.fault.DatacenterMismatch"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.MigrationFault"
      >
      <description-html>
         <![CDATA[The input arguments had entities that did not belong to the same
 datacenter.]]>
      </description-html>
            <property name="invalidArgument" type-id-ref="vim.fault.DatacenterMismatch.Argument"
      vmodl-name="invalidArgument"
      is-array="true"
      >
      <description-html>
         <![CDATA[The list of invalid arguments.]]>
      </description-html>
      </property>

            <property name="expectedDatacenter" type-id-ref="vim.Datacenter"
      vmodl-name="expectedDatacenter"
      >
      <description-html>
         <![CDATA[The expected datacenter for the arguments.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.fault.DatacenterMismatch.Argument</nested-type-id-ref>
   </fault>
   <fault name="DatastoreNotWritableOnHost"
      type-id="vim.fault.DatastoreNotWritableOnHost"
      vmodl-name="vim.fault.DatastoreNotWritableOnHost"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.InvalidDatastore"
      >
      <description-html>
         <![CDATA[This exception is thrown if a datastore is not
 writable on the target host.]]>
      </description-html>
            <property name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      >
      <description-html>
         <![CDATA[The target host on which the datastore is not writable.]]>
      </description-html>
      </property>

   </fault>
   <fault name="DestinationSwitchFull"
      type-id="vim.fault.DestinationSwitchFull"
      vmodl-name="vim.fault.DestinationSwitchFull"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.CannotAccessNetwork"
      >
      <description-html>
         <![CDATA[For one of the networks that the virtual machine is using, the corresponding
 switch on the host is full. If returned as part of migration checks, this is an error
 if either of the following is true, a warning otherwise:
 <ul>
    <li>The virtual ethernet card device backing is a distributed virtual switch</li>
    <li>The virtual ethernet card device backing is a standard network and the
        the device is connected</li>
 </ul>]]>
      </description-html>
   </fault>
   <fault name="DeviceNotSupported"
      type-id="vim.fault.DeviceNotSupported"
      vmodl-name="vim.fault.DeviceNotSupported"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.VirtualHardwareCompatibilityIssue"
      >
      <description-html>
         <![CDATA[The virtual machine uses a device type that is not supported on the
  host.
  <p>
  If this fault is returned as a subfault of
  <a href="vim.fault.DisallowedMigrationDeviceAttached.html">DisallowedMigrationDeviceAttached</a>, this indicates that although
  this device may be supported on the destination host, the hosts do
  not support the requested migration of the virtual machine while
  using this device.]]>
      </description-html>
            <property name="device" type-id-ref="java.lang.String"
      vmodl-name="device"
      >
      <description-html>
         <![CDATA[The label of the device.]]>
      </description-html>
      </property>

            <property name="reason" type-id-ref="java.lang.String"
      vmodl-name="reason"
      version-id-ref="vim.version.version2"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The specific reason why the device is not supported.
 Values should come from <a href="vim.fault.DeviceNotSupported.Reason.html">DeviceNotSupportedReason</a>.
 This might not be set if we're not sure of the reason, or
 if this doesn't make sense in the context.  For example,
 in the <a href="vim.fault.DisallowedMigrationDeviceAttached.html">DisallowedMigrationDeviceAttached</a> context
 we already know the problem.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.fault.DeviceNotSupported.Reason</nested-type-id-ref>
   </fault>
   <fault name="DigestNotSupported"
      type-id="vim.fault.DigestNotSupported"
      vmodl-name="vim.fault.DigestNotSupported"
      version-id-ref="vim.version.version10"
      base-type-id="vim.fault.DeviceNotSupported"
      >
      <description-html>
         <![CDATA[The digest file of the specified virtual disk is not supported.
  <p>
  Typically, this fault is returned as part of a parent fault like
  <a href="vim.fault.VmConfigIncompatibleForFaultTolerance.html">VmConfigIncompatibleForFaultTolerance</a>, indicating that the
  virtual disk's digest file needs to be changed before fault tolerance can be
  enabled on the associated virtual machine.
  </p>]]>
      </description-html>
   </fault>
   <fault name="DirectoryNotEmpty"
      type-id="vim.fault.DirectoryNotEmpty"
      vmodl-name="vim.fault.DirectoryNotEmpty"
      version-id-ref="vim.version.version7"
      base-type-id="vim.fault.FileFault"
      >
      <description-html>
         <![CDATA[This fault is thrown when an operation fails because the specified
  directory is not empty.]]>
      </description-html>
   </fault>
   <fault name="DisableAdminNotSupported"
      type-id="vim.fault.DisableAdminNotSupported"
      vmodl-name="vim.fault.DisableAdminNotSupported"
      version-id-ref="vim.version.version2"
      base-type-id="vim.fault.HostConfigFault"
      >
      <description-html>
         <![CDATA[Fault thrown when an attempt is made to move a disk with associated snapshots to a destination host.
  If such a move were to occur, snapshots associated with the disk would be irrevocably
  lost.  This is always an error.]]>
      </description-html>
   </fault>
   <fault name="DisallowedMigrationDeviceAttached"
      type-id="vim.fault.DisallowedMigrationDeviceAttached"
      vmodl-name="vim.fault.DisallowedMigrationDeviceAttached"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.MigrationFault"
      >
      <description-html>
         <![CDATA[The virtual machine is using a type of device that prevents migration.]]>
      </description-html>
            <property name="fault" type-id-ref="vmodl.LocalizedMethodFault"
      vmodl-name="fault"
      >
      <description-html>
         <![CDATA[A fault specifies the particular device issue. This is typically
  a subclass of VirtualHardwareCompatibilityIssue, such as
  RawDiskNotSupported, RemoteDeviceNotSupported, or SharedBusControllerNotSupported]]>
      </description-html>
      </property>

   </fault>
   <fault name="DisconnectedHostsBlockingEVC"
      type-id="vim.fault.DisconnectedHostsBlockingEVC"
      vmodl-name="vim.fault.DisconnectedHostsBlockingEVC"
      version-id-ref="vim.version.version3"
      internal-before-version-id-ref="vim.version.version10"
      base-type-id="vim.fault.EVCConfigFault"
      >
      <description-html>
         <![CDATA[An attempt to enable Enhanced VMotion Compatibility on a cluster, or to
  select a less-featureful EVC mode for a cluster where EVC is already enabled,
  has failed because the cluster contains one or more disconnected hosts.]]>
      </description-html>
   </fault>
   <fault name="DiskHasPartitions"
      type-id="vim.fault.DiskHasPartitions"
      vmodl-name="vim.fault.DiskHasPartitions"
      version-id-ref="vim.version.version9"
      base-type-id="vim.fault.VsanDiskFault"
      >
      <description-html>
         <![CDATA[Fault used for disks which have existing, non-VSAN partitions.<br>See <a href="vim.host.StorageSystem.html#updateDiskPartitions">UpdateDiskPartitions</a><br>See <a href="vim.host.VsanSystem.html#queryDisksForVsan">QueryDisksForVsan</a><br>]]>
      </description-html>
   </fault>
   <fault name="DiskIsLastRemainingNonSSD"
      type-id="vim.fault.DiskIsLastRemainingNonSSD"
      vmodl-name="vim.fault.DiskIsLastRemainingNonSSD"
      version-id-ref="vim.version.version9"
      base-type-id="vim.fault.VsanDiskFault"
      >
      <description-html>
         <![CDATA[Fault thrown for the case that an attempt is made to delete the last
 DiskMapping#nonSsd from a DiskMapping.<br>See <a href="vim.host.VsanSystem.html#removeDisk">RemoveDisk_Task</a><br>See <a href="vim.host.VsanSystem.html#removeDiskMapping">RemoveDiskMapping_Task</a><br>]]>
      </description-html>
   </fault>
   <fault name="DiskIsNonLocal"
      type-id="vim.fault.DiskIsNonLocal"
      vmodl-name="vim.fault.DiskIsNonLocal"
      version-id-ref="vim.version.version9"
      base-type-id="vim.fault.VsanDiskFault"
      >
      <description-html>
         <![CDATA[Fault used for disks which are ineligible for VSAN because they are
 considered non-local.<br>See <a href="vim.host.VsanSystem.html#queryDisksForVsan">QueryDisksForVsan</a><br>]]>
      </description-html>
   </fault>
   <fault name="DiskIsUSB"
      type-id="vim.fault.DiskIsUSB"
      vmodl-name="vim.fault.DiskIsUSB"
      version-id-ref="vim.version.version9"
      base-type-id="vim.fault.VsanDiskFault"
      >
      <description-html>
         <![CDATA[Fault used for disks which are ineligible for VSAN because they are USB
 disks.<br>See <a href="vim.host.VsanSystem.html#queryDisksForVsan">QueryDisksForVsan</a><br>]]>
      </description-html>
   </fault>
   <fault name="DiskMoveTypeNotSupported"
      type-id="vim.fault.DiskMoveTypeNotSupported"
      vmodl-name="vim.fault.DiskMoveTypeNotSupported"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.MigrationFault"
      >
      <description-html>
         <![CDATA[Specifying non-standard disk movement types is not supported.
  <p><br>See <a href="vim.vm.RelocateSpec.html#diskMoveType">diskMoveType</a><br>See <a href="vim.vm.RelocateSpec.DiskLocator.html#diskMoveType">diskMoveType</a><br>]]>
      </description-html>
   </fault>
   <fault name="DiskNotSupported"
      type-id="vim.fault.DiskNotSupported"
      vmodl-name="vim.fault.DiskNotSupported"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.VirtualHardwareCompatibilityIssue"
      >
      <description-html>
         <![CDATA[The host does not support the backings for the disks specified by the virtual
  machine. For example, this fault is thrown if a virtual machine is created from
  a template that specifies backings that the host does not have. Similarly, this fault
  is thrown if a virtual machine is registered on a host that does not support the
  specified backings.]]>
      </description-html>
            <property name="disk" type-id-ref="INT"
      vmodl-name="disk"
      >
      <description-html>
         <![CDATA[The ID of disk that is not supported.]]>
      </description-html>
      </property>

   </fault>
   <fault name="DiskTooSmall"
      type-id="vim.fault.DiskTooSmall"
      vmodl-name="vim.fault.DiskTooSmall"
      version-id-ref="vim.version.version9"
      base-type-id="vim.fault.VsanDiskFault"
      >
      <description-html>
         <![CDATA[Fault used for disks which are too small for usage by VSAN.]]>
      </description-html>
   </fault>
   <fault name="DrsVmotionIncompatibleFault"
      type-id="vim.fault.DrsVmotionIncompatibleFault"
      vmodl-name="vim.fault.DrsVmotionIncompatibleFault"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.VirtualHardwareCompatibilityIssue"
      >
      <description-html>
         <![CDATA[This fault is thrown when DRS tries to migrate a virtual machine to a host,
 but finds that the host is incompatible with the given virtual machine.]]>
      </description-html>
            <property name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      >
      <description-html>
         <![CDATA[The host that is incompatible with a given virtual machine.]]>
      </description-html>
      </property>

   </fault>
   <fault name="DuplicateDisks"
      type-id="vim.fault.DuplicateDisks"
      vmodl-name="vim.fault.DuplicateDisks"
      version-id-ref="vim.version.version9"
      base-type-id="vim.fault.VsanDiskFault"
      >
      <description-html>
         <![CDATA[Fault used to denote a duplicate set of disks were incorrectly specified
 for a given operation.<br>See <a href="vim.host.VsanSystem.html#addDisks">AddDisks_Task</a><br>See <a href="vim.host.VsanSystem.html#initializeDisks">InitializeDisks_Task</a><br>]]>
      </description-html>
   </fault>
   <fault name="DvsApplyOperationFault"
      type-id="vim.fault.DvsApplyOperationFault"
      vmodl-name="vim.fault.DvsApplyOperationFault"
      version-id-ref="vim.version.version8"
      base-type-id="vim.fault.DvsFault"
      >
      <description-html>
         <![CDATA[Thrown if a vSphere Distributed Switch apply operation failed to set or remove
  some of the specified objects.]]>
      </description-html>
            <property name="objectFault" type-id-ref="vim.fault.DvsApplyOperationFault.FaultOnObject"
      vmodl-name="objectFault"
      is-array="true"
      >
      <description-html>
         <![CDATA[Faults occurred on the host during a DistributedVirtualSwitch operation.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.fault.DvsApplyOperationFault.FaultOnObject</nested-type-id-ref>
   </fault>
   <fault name="EVCAdmissionFailed"
      type-id="vim.fault.EVCAdmissionFailed"
      vmodl-name="vim.fault.EVCAdmissionFailed"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.NotSupportedHostInCluster"
      >
      <description-html>
         <![CDATA[The host does not satisfy the admission requirements for the Enhanced
  VMotion Compatibility mode of the cluster.]]>
      </description-html>
            <property name="faults" type-id-ref="vmodl.LocalizedMethodFault"
      vmodl-name="faults"
      version-id-ref="vim.version.version8"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The faults that caused this EVC test to fail
  (e.g. FeatureRequirementsNotMet faults).]]>
      </description-html>
      </property>

   </fault>
   <fault name="EVCAdmissionFailedCPUFeaturesForMode"
      type-id="vim.fault.EVCAdmissionFailedCPUFeaturesForMode"
      vmodl-name="vim.fault.EVCAdmissionFailedCPUFeaturesForMode"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.EVCAdmissionFailed"
      >
      <description-html>
         <![CDATA[The host's CPU hardware is a family/model that should support the
  Enhanced VMotion Compatibility mode of the cluster, but some necessary
  CPU features are not present.]]>
      </description-html>
            <property name="currentEVCModeKey" type-id-ref="java.lang.String"
      vmodl-name="currentEVCModeKey"
      >
      <description-html>
         <![CDATA[The Enhanced VMotion Compatibility mode that is currently in effect for
  the cluster.]]>
      </description-html>
      </property>

   </fault>
   <fault name="EVCAdmissionFailedCPUModel"
      type-id="vim.fault.EVCAdmissionFailedCPUModel"
      vmodl-name="vim.fault.EVCAdmissionFailedCPUModel"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.EVCAdmissionFailed"
      >
      <description-html>
         <![CDATA[The host's CPU hardware is a family/model that does not support any
  Enhanced VMotion Compatibility mode.]]>
      </description-html>
   </fault>
   <fault name="EVCAdmissionFailedCPUModelForMode"
      type-id="vim.fault.EVCAdmissionFailedCPUModelForMode"
      vmodl-name="vim.fault.EVCAdmissionFailedCPUModelForMode"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.EVCAdmissionFailed"
      >
      <description-html>
         <![CDATA[The host's CPU hardware is a family/model that does not support the Enhanced
  VMotion Compatibility mode of the cluster.]]>
      </description-html>
            <property name="currentEVCModeKey" type-id-ref="java.lang.String"
      vmodl-name="currentEVCModeKey"
      >
      <description-html>
         <![CDATA[The Enhanced VMotion Compatibility mode that is currently in effect for
  the cluster.]]>
      </description-html>
      </property>

   </fault>
   <fault name="EVCAdmissionFailedCPUVendor"
      type-id="vim.fault.EVCAdmissionFailedCPUVendor"
      vmodl-name="vim.fault.EVCAdmissionFailedCPUVendor"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.EVCAdmissionFailed"
      >
      <description-html>
         <![CDATA[The host's CPU vendor does not match the required CPU vendor for the
  Enhanced VMotion Compatibility mode of the cluster.]]>
      </description-html>
            <property name="clusterCPUVendor" type-id-ref="java.lang.String"
      vmodl-name="clusterCPUVendor"
      >
      <description-html>
         <![CDATA[The CPU vendor required for entering the cluster.]]>
      </description-html>
      </property>

            <property name="hostCPUVendor" type-id-ref="java.lang.String"
      vmodl-name="hostCPUVendor"
      >
      <description-html>
         <![CDATA[The CPU vendor of the host.]]>
      </description-html>
      </property>

   </fault>
   <fault name="EVCAdmissionFailedCPUVendorUnknown"
      type-id="vim.fault.EVCAdmissionFailedCPUVendorUnknown"
      vmodl-name="vim.fault.EVCAdmissionFailedCPUVendorUnknown"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.EVCAdmissionFailed"
      >
      <description-html>
         <![CDATA[The host's CPU vendor is unknown, which prevents admission into an Enhanced
  VMotion Compatibility cluster.]]>
      </description-html>
   </fault>
   <fault name="EVCAdmissionFailedHostDisconnected"
      type-id="vim.fault.EVCAdmissionFailedHostDisconnected"
      vmodl-name="vim.fault.EVCAdmissionFailedHostDisconnected"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.EVCAdmissionFailed"
      >
      <description-html>
         <![CDATA[The host is not connected, which prevents admission into an Enhanced
  VMotion Compatibility cluster.]]>
      </description-html>
   </fault>
   <fault name="EVCAdmissionFailedHostSoftware"
      type-id="vim.fault.EVCAdmissionFailedHostSoftware"
      vmodl-name="vim.fault.EVCAdmissionFailedHostSoftware"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.EVCAdmissionFailed"
      >
      <description-html>
         <![CDATA[The host's software does not support any Enhanced VMotion Compatibility mode.]]>
      </description-html>
   </fault>
   <fault name="EVCAdmissionFailedHostSoftwareForMode"
      type-id="vim.fault.EVCAdmissionFailedHostSoftwareForMode"
      vmodl-name="vim.fault.EVCAdmissionFailedHostSoftwareForMode"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.EVCAdmissionFailed"
      >
      <description-html>
         <![CDATA[The host's software does not support the Enhanced VMotion Compatibility
  mode of the cluster.]]>
      </description-html>
   </fault>
   <fault name="EVCAdmissionFailedVmActive"
      type-id="vim.fault.EVCAdmissionFailedVmActive"
      vmodl-name="vim.fault.EVCAdmissionFailedVmActive"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.EVCAdmissionFailed"
      >
      <description-html>
         <![CDATA[An attempt to move or add a host into an Enhanced VMotion Compatibility
  cluster has failed for the following reason:
  <ul>
  <li>The host exposes additional compatibility-relevant CPU features beyond
      those present in the baseline mandated by the cluster's EVC mode.
  <li>The host has powered-on or suspended virtual machines.
  </ul>
  Therefore the host may not be admitted into the cluster, since its virtual
  machines may be using CPU features suppressed in the cluster.
  <p>
  Note that in rare cases, this may occur even if the host's
  <a href="vim.host.Summary.html#maxEVCModeKey">maxEVCModeKey</a> corresponds to the EVC
  mode of the cluster.  This means that even though that EVC mode is the best
  match for the host's hardware, the host still has some features beyond
  those present in the baseline for that EVC mode.]]>
      </description-html>
   </fault>
   <fault name="EncryptionKeyRequired"
      type-id="vim.fault.EncryptionKeyRequired"
      vmodl-name="vim.fault.EncryptionKeyRequired"
      version-id-ref="vim.version.version12"
      base-type-id="vim.fault.InvalidState"
      >
      <description-html>
         <![CDATA[An EncryptionKeyRequired fault occurs when an operation fails due
 to one or more required encryption keys.]]>
      </description-html>
            <property name="requiredKey" type-id-ref="vim.encryption.CryptoKeyId"
      vmodl-name="requiredKey"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[A list of required key identifiers.]]>
      </description-html>
      </property>

   </fault>
   <fault name="FailToEnableSPBM"
      type-id="vim.fault.FailToEnableSPBM"
      vmodl-name="vim.fault.FailToEnableSPBM"
      version-id-ref="vim.version.version7"
      base-type-id="vmodl.fault.NotEnoughLicenses"
      >
      <description-html>
         <![CDATA[Fault type that could be thrown when enabling SPBM(Storage Policy
  Based Management) feature of a compute resource.]]>
      </description-html>
            <property name="cs" type-id-ref="vim.ComputeResource"
      vmodl-name="cs"
      >
      <description-html>
         <![CDATA[The compute resource]]>
      </description-html>
      </property>

            <property name="csName" type-id-ref="java.lang.String"
      vmodl-name="csName"
      >
      <description-html>
         <![CDATA[The computer resource name]]>
      </description-html>
      </property>

            <property name="hostLicenseStates" type-id-ref="vim.ComputeResource.HostSPBMLicenseInfo"
      vmodl-name="hostLicenseStates"
      is-array="true"
      >
      <description-html>
         <![CDATA[Array of <a href="vim.ComputeResource.HostSPBMLicenseInfo.html">ComputeResourceHostSPBMLicenseInfo</a> that
 contains SPBM license information for all hosts in the compute resource]]>
      </description-html>
      </property>

   </fault>
   <fault name="FaultToleranceAntiAffinityViolated"
      type-id="vim.fault.FaultToleranceAntiAffinityViolated"
      vmodl-name="vim.fault.FaultToleranceAntiAffinityViolated"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.MigrationFault"
      >
      <description-html>
         <![CDATA[More than one VM in the same fault tolerance group are placed on the same host]]>
      </description-html>
            <property name="hostName" type-id-ref="java.lang.String"
      vmodl-name="hostName"
      >
      <description-html>
         <![CDATA[The name of the host.]]>
      </description-html>
      </property>

            <property name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      >
      <description-html>
         <![CDATA[The host.]]>
      </description-html>
      </property>

   </fault>
   <fault name="FaultToleranceCpuIncompatible"
      type-id="vim.fault.FaultToleranceCpuIncompatible"
      vmodl-name="vim.fault.FaultToleranceCpuIncompatible"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.CpuIncompatible"
      >
      <description-html>
         <![CDATA[Convenience subclass for calling out some named features among the
  incompatibilities found in CPUID level 1 register ecx for FT vms.]]>
      </description-html>
            <property name="model" type-id-ref="BOOLEAN"
      vmodl-name="model"
      >
      <description-html>
         <![CDATA[Flag to indicate CPU model is incompatible.]]>
      </description-html>
      </property>

            <property name="family" type-id-ref="BOOLEAN"
      vmodl-name="family"
      >
      <description-html>
         <![CDATA[Flag to indicate CPU family is incompatible.]]>
      </description-html>
      </property>

            <property name="stepping" type-id-ref="BOOLEAN"
      vmodl-name="stepping"
      >
      <description-html>
         <![CDATA[Flag to indicate CPU stepping is incompatible.]]>
      </description-html>
      </property>

   </fault>
   <fault name="FaultToleranceNeedsThickDisk"
      type-id="vim.fault.FaultToleranceNeedsThickDisk"
      vmodl-name="vim.fault.FaultToleranceNeedsThickDisk"
      version-id-ref="vim.version.version6"
      base-type-id="vim.fault.MigrationFault"
      >
      <description-html>
         <![CDATA[Fault Tolerance VM requires thick disks]]>
      </description-html>
            <property name="vmName" type-id-ref="java.lang.String"
      vmodl-name="vmName"
      >
      <description-html>
         <![CDATA[The name of the VM.]]>
      </description-html>
      </property>

   </fault>
   <fault name="FaultToleranceNotSameBuild"
      type-id="vim.fault.FaultToleranceNotSameBuild"
      vmodl-name="vim.fault.FaultToleranceNotSameBuild"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.MigrationFault"
      >
      <description-html>
         <![CDATA[The destination host does not have the same build or Fault Tolerance
 feature version number as the source host.]]>
      </description-html>
            <property name="build" type-id-ref="java.lang.String"
      vmodl-name="build"
      >
      <description-html>
         <![CDATA[The string.]]>
      </description-html>
      </property>

   </fault>
   <fault name="FeatureRequirementsNotMet"
      type-id="vim.fault.FeatureRequirementsNotMet"
      vmodl-name="vim.fault.FeatureRequirementsNotMet"
      version-id-ref="vim.version.version8"
      base-type-id="vim.fault.VirtualHardwareCompatibilityIssue"
      >
      <description-html>
         <![CDATA[The host does not meet feature requirements of the virtual machine.]]>
      </description-html>
            <property name="featureRequirement" type-id-ref="vim.vm.FeatureRequirement"
      vmodl-name="featureRequirement"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The feature requirements that were not met.]]>
      </description-html>
      </property>

            <property name="vm" type-id-ref="vim.VirtualMachine"
      vmodl-name="vm"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The virtual machine whose feature requirements were not met.]]>
      </description-html>
      </property>

            <property name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The host whose capabilities did not meet the virtual machine's feature requirements.]]>
      </description-html>
      </property>

   </fault>
   <fault name="FileAlreadyExists"
      type-id="vim.fault.FileAlreadyExists"
      vmodl-name="vim.fault.FileAlreadyExists"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.FileFault"
      >
      <description-html>
         <![CDATA[This fault is thrown when an operation attempts to create a file using the name of
  an existing file.]]>
      </description-html>
   </fault>
   <fault name="FileBackedPortNotSupported"
      type-id="vim.fault.FileBackedPortNotSupported"
      vmodl-name="vim.fault.FileBackedPortNotSupported"
      version-id-ref="vim.version.version2"
      base-type-id="vim.fault.DeviceNotSupported"
      >
      <description-html>
         <![CDATA[The virtual machine has a port (either a SerialPort or a ParallelPort) which is
 backed by a file. This is an error when migrating a virtual machine with the device
 connected, and can be returned as a subfault of DisallowedMigrationDeviceAttached.]]>
      </description-html>
   </fault>
   <fault name="FilesystemQuiesceFault"
      type-id="vim.fault.FilesystemQuiesceFault"
      vmodl-name="vim.fault.FilesystemQuiesceFault"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.SnapshotFault"
      >
      <description-html>
         <![CDATA[This fault is thrown when creating a quiesced snapshot failed
  because the create snapshot operation exceeded the time limit
  for holding off I/O in the frozen VM.
  <p>
  This indicates that when we attempted to thaw the VM after
  creating the snapshot, we got an error back indicating that
  the VM was not frozen anymore. In this case, we roll back
  the entire snapshot create operation and throw this exception.]]>
      </description-html>
   </fault>
   <fault name="FilterInUse"
      type-id="vim.fault.FilterInUse"
      vmodl-name="vim.fault.FilterInUse"
      version-id-ref="vim.version.version10"
      base-type-id="vim.fault.ResourceInUse"
      >
      <description-html>
         <![CDATA[A FilterInUse fault indicates that some error has occurred because an
  IO filter was in use.]]>
      </description-html>
            <property name="disk" type-id-ref="vim.vm.device.VirtualDiskId"
      vmodl-name="disk"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Virtual disks that use the filter.]]>
      </description-html>
      </property>

   </fault>
   <fault name="FullStorageVMotionNotSupported"
      type-id="vim.fault.FullStorageVMotionNotSupported"
      vmodl-name="vim.fault.FullStorageVMotionNotSupported"
      version-id-ref="vim.version.version2"
      base-type-id="vim.fault.MigrationFeatureNotSupported"
      >
      <description-html>
         <![CDATA[An operation on a powered-on virtual machine requests a simultaneous change
 of storage location and execution host, but the host does not have that
 capability.]]>
      </description-html>
   </fault>
   <fault name="GatewayConnectFault"
      type-id="vim.fault.GatewayConnectFault"
      vmodl-name="vim.fault.GatewayConnectFault"
      version-id-ref="vim.version.version10"
      base-type-id="vim.fault.HostConnectFault"
      >
      <description-html>
         <![CDATA[GatewayConnectFault is a base fault type for the faults thrown by a gateway
 server used to connect to a host.]]>
      </description-html>
            <property name="gatewayType" type-id-ref="java.lang.String"
      vmodl-name="gatewayType"
      >
      <description-html>
         <![CDATA[The type of the gateway used for the connection to the host.]]>
      </description-html>
      </property>

            <property name="gatewayId" type-id-ref="java.lang.String"
      vmodl-name="gatewayId"
      >
      <description-html>
         <![CDATA[Identifier of the gateway that is used for the connection to the host.]]>
      </description-html>
      </property>

            <property name="gatewayInfo" type-id-ref="java.lang.String"
      vmodl-name="gatewayInfo"
      >
      <description-html>
         <![CDATA[Human-readable information about the host gateway server.]]>
      </description-html>
      </property>

            <property name="details" type-id-ref="vmodl.LocalizableMessage"
      vmodl-name="details"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Details of the cause for this fault. This is the way in which Host
    Gateway servers propagate opaque error messages through vCenter Server.]]>
      </description-html>
      </property>

   </fault>
   <fault name="GatewayNotFound"
      type-id="vim.fault.GatewayNotFound"
      vmodl-name="vim.fault.GatewayNotFound"
      version-id-ref="vim.version.version10"
      base-type-id="vim.fault.GatewayConnectFault"
      >
      <description-html>
         <![CDATA[GatewayNotFound is thrown by vCenter Server, if no host gateway with the
 specified type/id and available resources is known to the vCenter Server.]]>
      </description-html>
   </fault>
   <fault name="GatewayNotReachable"
      type-id="vim.fault.GatewayNotReachable"
      vmodl-name="vim.fault.GatewayNotReachable"
      version-id-ref="vim.version.version10"
      base-type-id="vim.fault.GatewayConnectFault"
      >
      <description-html>
         <![CDATA[GatewayNotReachable is thrown by vCenter Server when it fails to establish
 a connection to the host gateway server. This fault may occur due to
 network connectivity problems or inability to establish secure connection
 between the gateway server and vCenter Server.]]>
      </description-html>
   </fault>
   <fault name="GatewayOperationRefused"
      type-id="vim.fault.GatewayOperationRefused"
      vmodl-name="vim.fault.GatewayOperationRefused"
      version-id-ref="vim.version.version10"
      base-type-id="vim.fault.GatewayConnectFault"
      >
      <description-html>
         <![CDATA[GatewayOperationRefused is thrown by vCenter Server when a gateway server denies to
 accept more connection due to resource limitation. The fault may occur due
 to specific configuration of the Gateway server to work with limited
 resources or due to physical limitation to handle more host connections.]]>
      </description-html>
   </fault>
   <fault name="GatewayToHostConnectFault"
      type-id="vim.fault.GatewayToHostConnectFault"
      vmodl-name="vim.fault.GatewayToHostConnectFault"
      version-id-ref="vim.version.version10"
      base-type-id="vim.fault.GatewayConnectFault"
      >
      <description-html>
         <![CDATA[GatewayToHostConnectFault is thrown by the gateway used to communicate
 with a host, if an error occurs in the communication between the gateway and
 the host. More details may be provided by a subfault.]]>
      </description-html>
            <property name="hostname" type-id-ref="java.lang.String"
      vmodl-name="hostname"
      >
      <description-html>
         <![CDATA[Hostname of the host that the gateway is communicating with.]]>
      </description-html>
      </property>

            <property name="port" type-id-ref="INT"
      vmodl-name="port"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Port specified for the connection between the gateway and the host.]]>
      </description-html>
      </property>

   </fault>
   <fault name="GatewayToHostTrustVerifyFault"
      type-id="vim.fault.GatewayToHostTrustVerifyFault"
      vmodl-name="vim.fault.GatewayToHostTrustVerifyFault"
      version-id-ref="vim.version.version10"
      base-type-id="vim.fault.GatewayToHostConnectFault"
      >
      <description-html>
         <![CDATA[GatewayToHostTrustVerifyFault is thrown by the gateway used to communicate
 with a host, if it cannot establish a trusted connection to the host with
 the provided host verification token parameter.

 The fault provides a list of opaque <key,value> properties, which the end
 user has to verify in order to trust the host and a verification token,
 which can be used to state that those exact properties are valid.<br>See <a href="vim.host.GatewaySpec.html#trustVerificationToken">trustVerificationToken</a><br>]]>
      </description-html>
            <property name="verificationToken" type-id-ref="java.lang.String"
      vmodl-name="verificationToken"
      >
      <description-html>
         <![CDATA[A unique verification token, that can be used to state the the listed
 properties are valid.]]>
      </description-html>
      </property>

            <property name="propertiesToVerify" type-id-ref="vim.KeyValue"
      vmodl-name="propertiesToVerify"
      is-array="true"
      >
      <description-html>
         <![CDATA[A key/value list of properties that need user verification in order
 for the gateway to trust the host to succeed. For instance the user may
 need to verify an SSL thumbprint or a whole certificate.]]>
      </description-html>
      </property>

   </fault>
   <fault name="GuestAuthenticationChallenge"
      type-id="vim.fault.GuestAuthenticationChallenge"
      vmodl-name="vim.fault.GuestAuthenticationChallenge"
      version-id-ref="vim.version.version7"
      base-type-id="vim.fault.GuestOperationsFault"
      >
      <description-html>
         <![CDATA[Fault is thrown when a call to <a href="vim.vm.guest.AuthManager.html#acquireCredentials">AcquireCredentialsInGuest</a> requires a challenge
  response in order to authenticate in the guest. The authToken string
  in serverChallenge contains a base64 encoded challenge token.]]>
      </description-html>
            <property name="serverChallenge" type-id-ref="vim.vm.guest.GuestAuthentication"
      vmodl-name="serverChallenge"
      >
      <description-html>
         <![CDATA[Contains the server challenge information]]>
      </description-html>
      </property>

            <property name="sessionID" type-id-ref="LONG"
      vmodl-name="sessionID"
      >
      <description-html>
         <![CDATA[Contains a session ID number that associates the server response
  with the initial request.]]>
      </description-html>
      </property>

   </fault>
   <fault name="GuestComponentsOutOfDate"
      type-id="vim.fault.GuestComponentsOutOfDate"
      vmodl-name="vim.fault.GuestComponentsOutOfDate"
      version-id-ref="vim.version.version7"
      base-type-id="vim.fault.GuestOperationsFault"
      >
      <description-html>
         <![CDATA[A GuestComponentsOutOfDate exception is thrown when an
  operation fails because the guest operations agent is out of date and lacks
  the functionality to execute the operation.]]>
      </description-html>
   </fault>
   <fault name="GuestMultipleMappings"
      type-id="vim.fault.GuestMultipleMappings"
      vmodl-name="vim.fault.GuestMultipleMappings"
      version-id-ref="vim.version.version10"
      base-type-id="vim.fault.GuestOperationsFault"
      >
      <description-html>
         <![CDATA[A GuestMultipleMappings exception is thrown when an
  operation fails because the guest alias store mapping file
  contains multiple conflicting instances of the same certificate
  and username.]]>
      </description-html>
   </fault>
   <fault name="GuestRegistryKeyAlreadyExists"
      type-id="vim.fault.GuestRegistryKeyAlreadyExists"
      vmodl-name="vim.fault.GuestRegistryKeyAlreadyExists"
      version-id-ref="vim.version.version10"
      base-type-id="vim.fault.GuestRegistryKeyFault"
      >
      <description-html>
         <![CDATA[A GuestRegistryKeyAlreadyExists exception is thrown when an operation fails
 because the guest registry key specified already exists.]]>
      </description-html>
   </fault>
   <fault name="HAErrorsAtDest"
      type-id="vim.fault.HAErrorsAtDest"
      vmodl-name="vim.fault.HAErrorsAtDest"
      version-id-ref="vim.version.version2"
      base-type-id="vim.fault.MigrationFault"
      >
      <description-html>
         <![CDATA[The destination compute resource is HA-enabled, and HA is not running
 properly.  This will cause the following problems:
    1) The VM will not have HA protection.
    2) If this is an intracluster VMotion, HA will not be properly
       informed that the migration completed.  This can have serious
       consequences to the functioning of HA.]]>
      </description-html>
   </fault>
   <fault name="HostConfigFailed"
      type-id="vim.fault.HostConfigFailed"
      vmodl-name="vim.fault.HostConfigFailed"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.HostConfigFault"
      >
      <description-html>
         <![CDATA[Fault to indicate configuration of the host failed.
  Configuration could have failed because of multiple
  reasons and individual failures will be reported in
  #failure.]]>
      </description-html>
            <property name="failure" type-id-ref="vmodl.LocalizedMethodFault"
      vmodl-name="failure"
      is-array="true"
      >
      </property>

   </fault>
   <fault name="HotSnapshotMoveNotSupported"
      type-id="vim.fault.HotSnapshotMoveNotSupported"
      vmodl-name="vim.fault.HotSnapshotMoveNotSupported"
      version-id-ref="vim.version.version2"
      base-type-id="vim.fault.SnapshotCopyNotSupported"
      >
      <description-html>
         <![CDATA[An attempt is being made to move a virtual machine's disk that has
  associated snapshots, and preserving the snapshots is not supported by the
  host because the virtual machine is currently powered on.]]>
      </description-html>
   </fault>
   <fault name="IDEDiskNotSupported"
      type-id="vim.fault.IDEDiskNotSupported"
      vmodl-name="vim.fault.IDEDiskNotSupported"
      version-id-ref="vim.version.version1"
      is-deprecated="true"
      base-type-id="vim.fault.DiskNotSupported"
      >
      <description-html>
         <![CDATA[The virtual machine uses a virtual disk with an IDE controller, but this
  is not supported on the host.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of VI API 2.5, use <a href="vim.fault.DeviceControllerNotSupported.html">DeviceControllerNotSupported</a>.]]>
      </deprecated-html>
   </fault>
   <fault name="InaccessibleDatastore"
      type-id="vim.fault.InaccessibleDatastore"
      vmodl-name="vim.fault.InaccessibleDatastore"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.InvalidDatastore"
      >
      <description-html>
         <![CDATA[An InaccessibleDatastore exception is thrown if the datastore corresponding to the
  given datastore path isn't currently accessible.]]>
      </description-html>
            <property name="detail" type-id-ref="java.lang.String"
      vmodl-name="detail"
      version-id-ref="vim.version.version7"
      is-optional="true"
      is-localizable="true"
      >
      </property>

   </fault>
   <fault name="InaccessibleFTMetadataDatastore"
      type-id="vim.fault.InaccessibleFTMetadataDatastore"
      vmodl-name="vim.fault.InaccessibleFTMetadataDatastore"
      version-id-ref="vim.version.version10"
      base-type-id="vim.fault.InaccessibleDatastore"
      >
      <description-html>
         <![CDATA[An InaccessibleFTMetadataDatastore exception is thrown if the datastore
  corresponding to the specified FT Metadata Datastore path isn't currently
  accessible.]]>
      </description-html>
   </fault>
   <fault name="IncompatibleDefaultDevice"
      type-id="vim.fault.IncompatibleDefaultDevice"
      vmodl-name="vim.fault.IncompatibleDefaultDevice"
      version-id-ref="vim.version.version2"
      base-type-id="vim.fault.MigrationFault"
      >
      <description-html>
         <![CDATA[A default device (see <a href="vim.vm.ConfigOption.html#defaultDevice">defaultDevice</a> for a
  definition) which the virtual machine is using is incompatible with
  the corresponding default device which will be created on the target host.
  <p>
  This is an issue with powered-on or suspended migration under some
  circumstances.  The problem is that in cases where the virtual machine
  must be recreated, it will have the default device created with default
  settings that are appropriate for the target host.  If those are not
  compatible with the settings for that device that the virtual machine is currently
  using, then resuming the virtual machine on the target host might fail.
  <p>
  This might happen if the device in question were reconfigured or the default
  is different between the source and the destination host.  An example of
  a default device and associated setting which might cause this is
  <a href="vim.vm.device.VirtualVideoCard.html#videoRamSizeInKB">videoRamSizeInKB</a>.
  This is an error.]]>
      </description-html>
            <property name="device" type-id-ref="java.lang.String"
      vmodl-name="device"
      >
      <description-html>
         <![CDATA[The label of the device.]]>
      </description-html>
      </property>

   </fault>
   <fault name="IncompatibleHostForVmReplication"
      type-id="vim.fault.IncompatibleHostForVmReplication"
      vmodl-name="vim.fault.IncompatibleHostForVmReplication"
      version-id-ref="vim.version.version10"
      base-type-id="vim.fault.ReplicationFault"
      >
      <description-html>
         <![CDATA[A IncompatibleHostForVmReplication is thrown when a VM is powered
  on or migrated to a host which does not support the replication
  configuration of the VM.]]>
      </description-html>
            <property name="vmName" type-id-ref="java.lang.String"
      vmodl-name="vmName"
      >
      <description-html>
         <![CDATA[The VM which has replication configured]]>
      </description-html>
      </property>

            <property name="hostName" type-id-ref="java.lang.String"
      vmodl-name="hostName"
      >
      <description-html>
         <![CDATA[The host which is incompatible for VM replication]]>
      </description-html>
      </property>

            <property name="reason" type-id-ref="java.lang.String"
      vmodl-name="reason"
      >
      <description-html>
         <![CDATA[The reason why the host is incompatible]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.fault.IncompatibleHostForVmReplication.IncompatibleReason</nested-type-id-ref>
   </fault>
   <fault name="IndependentDiskVMotionNotSupported"
      type-id="vim.fault.IndependentDiskVMotionNotSupported"
      vmodl-name="vim.fault.IndependentDiskVMotionNotSupported"
      version-id-ref="vim.version.version2"
      base-type-id="vim.fault.MigrationFeatureNotSupported"
      >
      <description-html>
         <![CDATA[An operation on a powered-on virtual machine requests that the virtual
 machine's disks be moved without choosing a new home datastore for the
 virtual machine, but the host does not have that capability.]]>
      </description-html>
   </fault>
   <fault name="InsufficientAgentVmsDeployed"
      type-id="vim.fault.InsufficientAgentVmsDeployed"
      vmodl-name="vim.fault.InsufficientAgentVmsDeployed"
      version-id-ref="vim.version.version7"
      base-type-id="vim.fault.InsufficientResourcesFault"
      >
      <description-html>
         <![CDATA[This fault is returned when the required number of deployed agent virtual
  machines is not currently deployed on a host and hence the host cannot be
  used to run client virtual machines.]]>
      </description-html>
            <property name="hostName" type-id-ref="java.lang.String"
      vmodl-name="hostName"
      >
      </property>

            <property name="requiredNumAgentVms" type-id-ref="INT"
      vmodl-name="requiredNumAgentVms"
      >
      <description-html>
         <![CDATA[The number of agent virtual machines required to be deployed on the host.]]>
      </description-html>
      </property>

            <property name="currentNumAgentVms" type-id-ref="INT"
      vmodl-name="currentNumAgentVms"
      >
      <description-html>
         <![CDATA[The number of agent virtual machines currently deployed on the host.]]>
      </description-html>
      </property>

   </fault>
   <fault name="InsufficientCpuResourcesFault"
      type-id="vim.fault.InsufficientCpuResourcesFault"
      vmodl-name="vim.fault.InsufficientCpuResourcesFault"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.InsufficientResourcesFault"
      >
      <description-html>
         <![CDATA[CPU resources admission control failed]]>
      </description-html>
            <property name="unreserved" type-id-ref="LONG"
      vmodl-name="unreserved"
      >
      <description-html>
         <![CDATA[The CPU available in the resource pool requested in MHz.]]>
      </description-html>
      </property>

            <property name="requested" type-id-ref="LONG"
      vmodl-name="requested"
      >
      <description-html>
         <![CDATA[The CPU resource amount requested in the failed operation in MHz.]]>
      </description-html>
      </property>

   </fault>
   <fault name="InsufficientDisks"
      type-id="vim.fault.InsufficientDisks"
      vmodl-name="vim.fault.InsufficientDisks"
      version-id-ref="vim.version.version9"
      base-type-id="vim.fault.VsanDiskFault"
      >
      <description-html>
         <![CDATA[Fault used to denote an insufficient group of disks for a given operation.<br>See <a href="vim.host.VsanSystem.html#addDisks">AddDisks_Task</a><br>See <a href="vim.host.VsanSystem.html#initializeDisks">InitializeDisks_Task</a><br>]]>
      </description-html>
   </fault>
   <fault name="InsufficientFailoverResourcesFault"
      type-id="vim.fault.InsufficientFailoverResourcesFault"
      vmodl-name="vim.fault.InsufficientFailoverResourcesFault"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.InsufficientResourcesFault"
      >
      <description-html>
         <![CDATA[This is thrown if an operation would violate the configured failover level of a HA
  cluster.
  <p>
  In a HA cluster, virtual machines provide high availability by moving among physical
  machines in the event of a failure. HA Admission Control ensures that the total
  resource requirements for the set of virtual machines in a HA cluster does not exceed
  the resources that would be available in the worst-case scenario failure. If HA
  Admission Control is not used, physical machines may have insufficient resources to
  provide the expected level of service.
  <p>
  This fault indicates that the virtual machine operation you attempted would have
  created a situation where the remaining physical machines would not meet the needs of
  the virtual machines in the event of a failure.]]>
      </description-html>
   </fault>
   <fault name="InsufficientGraphicsResourcesFault"
      type-id="vim.fault.InsufficientGraphicsResourcesFault"
      vmodl-name="vim.fault.InsufficientGraphicsResourcesFault"
      version-id-ref="vim.version.version10"
      base-type-id="vim.fault.InsufficientResourcesFault"
      >
      <description-html>
         <![CDATA[Graphics resources admission control failed]]>
      </description-html>
   </fault>
   <fault name="InsufficientHostCapacityFault"
      type-id="vim.fault.InsufficientHostCapacityFault"
      vmodl-name="vim.fault.InsufficientHostCapacityFault"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.InsufficientResourcesFault"
      >
      <description-html>
         <![CDATA[The host does not have enough capacity for running the virtual machine.]]>
      </description-html>
            <property name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      version-id-ref="vim.version.version2"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The host which does not have the enough capacity.]]>
      </description-html>
      </property>

   </fault>
   <fault name="InsufficientHostCpuCapacityFault"
      type-id="vim.fault.InsufficientHostCpuCapacityFault"
      vmodl-name="vim.fault.InsufficientHostCpuCapacityFault"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.InsufficientHostCapacityFault"
      >
      <description-html>
         <![CDATA[The host does not have enough CPU capacity for running the virtual machine.]]>
      </description-html>
            <property name="unreserved" type-id-ref="LONG"
      vmodl-name="unreserved"
      >
      <description-html>
         <![CDATA[The CPU available on the host in MHz.]]>
      </description-html>
      </property>

            <property name="requested" type-id-ref="LONG"
      vmodl-name="requested"
      >
      <description-html>
         <![CDATA[The CPU resource amount requested in the failed operation in MHz.]]>
      </description-html>
      </property>

   </fault>
   <fault name="InsufficientHostMemoryCapacityFault"
      type-id="vim.fault.InsufficientHostMemoryCapacityFault"
      vmodl-name="vim.fault.InsufficientHostMemoryCapacityFault"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.InsufficientHostCapacityFault"
      >
      <description-html>
         <![CDATA[The host does not have enough memory capacity for running the virtual machine.]]>
      </description-html>
            <property name="unreserved" type-id-ref="LONG"
      vmodl-name="unreserved"
      >
      <description-html>
         <![CDATA[The memory available on the host in bytes.]]>
      </description-html>
      </property>

            <property name="requested" type-id-ref="LONG"
      vmodl-name="requested"
      >
      <description-html>
         <![CDATA[The memory resource amount requested in the failed operation in bytes.]]>
      </description-html>
      </property>

   </fault>
   <fault name="InsufficientMemoryResourcesFault"
      type-id="vim.fault.InsufficientMemoryResourcesFault"
      vmodl-name="vim.fault.InsufficientMemoryResourcesFault"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.InsufficientResourcesFault"
      >
      <description-html>
         <![CDATA[Memory resource admission control failed]]>
      </description-html>
            <property name="unreserved" type-id-ref="LONG"
      vmodl-name="unreserved"
      >
      <description-html>
         <![CDATA[The memory available in the resource pool requested in bytes.]]>
      </description-html>
      </property>

            <property name="requested" type-id-ref="LONG"
      vmodl-name="requested"
      >
      <description-html>
         <![CDATA[The memory resource amount requested in the failed operation in bytes.]]>
      </description-html>
      </property>

   </fault>
   <fault name="InsufficientNetworkCapacity"
      type-id="vim.fault.InsufficientNetworkCapacity"
      vmodl-name="vim.fault.InsufficientNetworkCapacity"
      version-id-ref="vim.version.version10"
      base-type-id="vim.fault.InsufficientResourcesFault"
      >
      <description-html>
         <![CDATA[The host does not have enough network capacity for running the virtual machine.]]>
      </description-html>
   </fault>
   <fault name="InsufficientNetworkResourcePoolCapacity"
      type-id="vim.fault.InsufficientNetworkResourcePoolCapacity"
      vmodl-name="vim.fault.InsufficientNetworkResourcePoolCapacity"
      version-id-ref="vim.version.version10"
      base-type-id="vim.fault.InsufficientResourcesFault"
      >
      <description-html>
         <![CDATA[Insufficient network resource pool bandwidth]]>
      </description-html>
            <property name="dvsName" type-id-ref="java.lang.String"
      vmodl-name="dvsName"
      >
      <description-html>
         <![CDATA[Distributed Virtual Switch containing the resource pool
 having unsufficient network bandwitdh.]]>
      </description-html>
      </property>

            <property name="dvsUuid" type-id-ref="java.lang.String"
      vmodl-name="dvsUuid"
      >
      <description-html>
         <![CDATA[UUID of the distributed Virtual Switch containing the resource pool
 having unsufficient network bandwitdh.]]>
      </description-html>
      </property>

            <property name="resourcePoolKey" type-id-ref="java.lang.String"
      vmodl-name="resourcePoolKey"
      >
      <description-html>
         <![CDATA[Key of the resource pool on which network bandwidth is requested.]]>
      </description-html>
      </property>

            <property name="available" type-id-ref="LONG"
      vmodl-name="available"
      >
      <description-html>
         <![CDATA[Network bandwidth available (in MBs) in the requested resource pool.]]>
      </description-html>
      </property>

            <property name="requested" type-id-ref="LONG"
      vmodl-name="requested"
      >
      <description-html>
         <![CDATA[Network bandwidth amount requested (in MBs).]]>
      </description-html>
      </property>

            <property name="device" type-id-ref="java.lang.String"
      vmodl-name="device"
      is-array="true"
      >
      <description-html>
         <![CDATA[List of network devices that are requesting or already have requested
 bandwidth on the network resource pool.]]>
      </description-html>
      </property>

   </fault>
   <fault name="InsufficientPerCpuCapacity"
      type-id="vim.fault.InsufficientPerCpuCapacity"
      vmodl-name="vim.fault.InsufficientPerCpuCapacity"
      version-id-ref="vim.version.version2"
      base-type-id="vim.fault.InsufficientHostCapacityFault"
      >
      <description-html>
         <![CDATA[The host does not have enough per CPU capacity.]]>
      </description-html>
   </fault>
   <fault name="InsufficientStandbyCpuResource"
      type-id="vim.fault.InsufficientStandbyCpuResource"
      vmodl-name="vim.fault.InsufficientStandbyCpuResource"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.InsufficientStandbyResource"
      >
      <description-html>
         <![CDATA[This fault is thrown when Distributed Power Management cannot perform
  a given opeartion because there is insufficient CPU resource
  on standby hosts (if any) to meet the requirements of the operation.]]>
      </description-html>
            <property name="available" type-id-ref="LONG"
      vmodl-name="available"
      >
      <description-html>
         <![CDATA[The total amount of CPU resource available (in MHz) on all the usable hosts
 in the cluster (including powered on and standby hosts).]]>
      </description-html>
      </property>

            <property name="requested" type-id-ref="LONG"
      vmodl-name="requested"
      >
      <description-html>
         <![CDATA[The additional amount of CPU resource (other than that on the hosts included
 in "available") needed (in MHz).]]>
      </description-html>
      </property>

   </fault>
   <fault name="InsufficientStandbyMemoryResource"
      type-id="vim.fault.InsufficientStandbyMemoryResource"
      vmodl-name="vim.fault.InsufficientStandbyMemoryResource"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.InsufficientStandbyResource"
      >
      <description-html>
         <![CDATA[This fault is thrown by Distributed Power Management algorithm. It indicates
  that there are insufficient memory resources on standby hosts (if any)
  to meet the requirements of a given operation.]]>
      </description-html>
            <property name="available" type-id-ref="LONG"
      vmodl-name="available"
      >
      <description-html>
         <![CDATA[The total amount of memory resource available (in bytes) on all the usable hosts
 in the cluster (including powered on and standby hosts).]]>
      </description-html>
      </property>

            <property name="requested" type-id-ref="LONG"
      vmodl-name="requested"
      >
      <description-html>
         <![CDATA[The additional amount of memory resource (other than that on the hosts included
 in "available") needed (in bytes).]]>
      </description-html>
      </property>

   </fault>
   <fault name="InvalidBundle"
      type-id="vim.fault.InvalidBundle"
      vmodl-name="vim.fault.InvalidBundle"
      version-id-ref="vim.version.version2"
      base-type-id="vim.fault.PlatformConfigFault"
      >
      <description-html>
         <![CDATA[An Invalid Bundle fault is thrown if an operation fails because of a
  problem with the supplied bundle.]]>
      </description-html>
   </fault>
   <fault name="InvalidCAMCertificate"
      type-id="vim.fault.InvalidCAMCertificate"
      vmodl-name="vim.fault.InvalidCAMCertificate"
      version-id-ref="vim.version.version7"
      base-type-id="vim.fault.InvalidCAMServer"
      >
      <description-html>
         <![CDATA[Fault indicating that the CAM server's certificate
  cannot be verified.]]>
      </description-html>
   </fault>
   <fault name="InvalidClientCertificate"
      type-id="vim.fault.InvalidClientCertificate"
      vmodl-name="vim.fault.InvalidClientCertificate"
      version-id-ref="vim.version.version3"
      base-type-id="vim.fault.InvalidLogin"
      >
      <description-html>
         <![CDATA[This exception is thrown when a client has provided a
 certificate that fails certificate validation at the server.]]>
      </description-html>
   </fault>
   <fault name="InvalidDatastoreState"
      type-id="vim.fault.InvalidDatastoreState"
      vmodl-name="vim.fault.InvalidDatastoreState"
      version-id-ref="vim.version.version7"
      base-type-id="vim.fault.InvalidState"
      >
      <description-html>
         <![CDATA[The datastore is in an invalid state (e.g., maintenance mode)
  for a given operation.]]>
      </description-html>
            <property name="datastoreName" type-id-ref="java.lang.String"
      vmodl-name="datastoreName"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The name of the datastore.]]>
      </description-html>
      </property>

   </fault>
   <fault name="InvalidDeviceSpec"
      type-id="vim.fault.InvalidDeviceSpec"
      vmodl-name="vim.fault.InvalidDeviceSpec"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.InvalidVmConfig"
      >
      <description-html>
         <![CDATA[An InvalidDeviceSpec exception is thrown if
  a virtual machine creation or configuration fails because a device
  specification contains an invalid value.]]>
      </description-html>
            <property name="deviceIndex" type-id-ref="INT"
      vmodl-name="deviceIndex"
      >
      <description-html>
         <![CDATA[Index of the device in the configuration specification that has the invalid value.]]>
      </description-html>
      </property>

   </fault>
   <fault name="InvalidDiskFormat"
      type-id="vim.fault.InvalidDiskFormat"
      vmodl-name="vim.fault.InvalidDiskFormat"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.InvalidFormat"
      >
      <description-html>
         <![CDATA[The disk format is either corrupted or not supported.]]>
      </description-html>
   </fault>
   <fault name="InvalidHostState"
      type-id="vim.fault.InvalidHostState"
      vmodl-name="vim.fault.InvalidHostState"
      version-id-ref="vim.version.version2"
      base-type-id="vim.fault.InvalidState"
      >
      <description-html>
         <![CDATA[The host has an invalid state.]]>
      </description-html>
            <property name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The host that has an invalid state.]]>
      </description-html>
      </property>

   </fault>
   <fault name="InvalidNasCredentials"
      type-id="vim.fault.InvalidNasCredentials"
      vmodl-name="vim.fault.InvalidNasCredentials"
      version-id-ref="vim.version.version4"
      base-type-id="vim.fault.NasConfigFault"
      >
      <description-html>
         <![CDATA[This fault is thrown when an operation to configure a CIFS volume
  fails because the credentials specified in the
  <a href="vim.host.NasVolume.Specification.html">spec</a> are incorrect.]]>
      </description-html>
            <property name="userName" type-id-ref="java.lang.String"
      vmodl-name="userName"
      >
      <description-html>
         <![CDATA[The username associated with the CIFS connection.]]>
      </description-html>
      </property>

   </fault>
   <fault name="InvalidNetworkInType"
      type-id="vim.fault.InvalidNetworkInType"
      vmodl-name="vim.fault.InvalidNetworkInType"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.VAppPropertyFault"
      >
      <description-html>
         <![CDATA[The network specified in the property does not exists.]]>
      </description-html>
   </fault>
   <fault name="InvalidNetworkResource"
      type-id="vim.fault.InvalidNetworkResource"
      vmodl-name="vim.fault.InvalidNetworkResource"
      version-id-ref="vim.version.version4"
      base-type-id="vim.fault.NasConfigFault"
      >
      <description-html>
         <![CDATA[This fault is thrown when an operation to configure a NAS volume fails
  because the network resource specified is invalid.]]>
      </description-html>
            <property name="remoteHost" type-id-ref="java.lang.String"
      vmodl-name="remoteHost"
      >
      <description-html>
         <![CDATA[The host that runs the CIFS or NFS server.]]>
      </description-html>
      </property>

            <property name="remotePath" type-id-ref="java.lang.String"
      vmodl-name="remotePath"
      >
      <description-html>
         <![CDATA[The remote share.]]>
      </description-html>
      </property>

   </fault>
   <fault name="InvalidPowerState"
      type-id="vim.fault.InvalidPowerState"
      vmodl-name="vim.fault.InvalidPowerState"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.InvalidState"
      >
      <description-html>
         <![CDATA[This exception is thrown if the
  power operation attempted could not be performed given
  the current power state of the virtual machine.]]>
      </description-html>
            <property name="requestedState" type-id-ref="vim.VirtualMachine.PowerState"
      vmodl-name="requestedState"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Power state of the virtual machine required to
  allow the operation to succeed.]]>
      </description-html>
      </property>

            <property name="existingState" type-id-ref="vim.VirtualMachine.PowerState"
      vmodl-name="existingState"
      >
      <description-html>
         <![CDATA[Power state of the virtual machine that
  prevented the operation from succeeding.]]>
      </description-html>
      </property>

   </fault>
   <fault name="InvalidPropertyType"
      type-id="vim.fault.InvalidPropertyType"
      vmodl-name="vim.fault.InvalidPropertyType"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.VAppPropertyFault"
      >
      <description-html>
         <![CDATA[The type specification in the property in invalid.]]>
      </description-html>
   </fault>
   <fault name="InvalidPropertyValue"
      type-id="vim.fault.InvalidPropertyValue"
      vmodl-name="vim.fault.InvalidPropertyValue"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.VAppPropertyFault"
      >
      <description-html>
         <![CDATA[The value of the property is not valid given the type of the property.]]>
      </description-html>
   </fault>
   <fault name="LargeRDMConversionNotSupported"
      type-id="vim.fault.LargeRDMConversionNotSupported"
      vmodl-name="vim.fault.LargeRDMConversionNotSupported"
      version-id-ref="vim.version.version7"
      base-type-id="vim.fault.MigrationFault"
      >
      <description-html>
         <![CDATA[The virtual machine is using a 2TB+ RDM device and operation is
 unable to convert the disk to a different type.]]>
      </description-html>
            <property name="device" type-id-ref="java.lang.String"
      vmodl-name="device"
      >
      <description-html>
         <![CDATA[The name of the disk device using the RDM.]]>
      </description-html>
      </property>

   </fault>
   <fault name="LegacyNetworkInterfaceInUse"
      type-id="vim.fault.LegacyNetworkInterfaceInUse"
      vmodl-name="vim.fault.LegacyNetworkInterfaceInUse"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.CannotAccessNetwork"
      >
      <description-html>
         <![CDATA[A virtual machine's network connectivity cannot be determined
 because it uses a legacy network interface. If returned as part of migration checks,
 this is an error if the virtual  machine is currently connected to the legacy
 interface, and a warning otherwise.]]>
      </description-html>
   </fault>
   <fault name="MaintenanceModeFileMove"
      type-id="vim.fault.MaintenanceModeFileMove"
      vmodl-name="vim.fault.MaintenanceModeFileMove"
      version-id-ref="vim.version.version2"
      base-type-id="vim.fault.MigrationFault"
      >
      <description-html>
         <![CDATA[Migration of the virtual machine to the target host will need a move of
  virtual machine files, like configuration file or virtual disks, which is
  not permitted if the source host is in maintenance mode.]]>
      </description-html>
   </fault>
   <fault name="MemoryFileFormatNotSupportedByDatastore"
      type-id="vim.fault.MemoryFileFormatNotSupportedByDatastore"
      vmodl-name="vim.fault.MemoryFileFormatNotSupportedByDatastore"
      version-id-ref="vim.version.version10"
      base-type-id="vim.fault.UnsupportedDatastore"
      >
      <description-html>
         <![CDATA[Virtual memory file format is not supported on the datastore.]]>
      </description-html>
            <property name="datastoreName" type-id-ref="java.lang.String"
      vmodl-name="datastoreName"
      >
      <description-html>
         <![CDATA[The name of the Datastore.]]>
      </description-html>
      </property>

            <property name="type" type-id-ref="java.lang.String"
      vmodl-name="type"
      >
      <description-html>
         <![CDATA[Datastore file system volume type.
  See <a href="vim.Datastore.Summary.html#type">type</a>]]>
      </description-html>
      </property>

   </fault>
   <fault name="MemorySizeNotRecommended"
      type-id="vim.fault.MemorySizeNotRecommended"
      vmodl-name="vim.fault.MemorySizeNotRecommended"
      version-id-ref="vim.version.version2"
      base-type-id="vim.fault.VirtualHardwareCompatibilityIssue"
      >
      <description-html>
         <![CDATA[The memory amount of the virtual machine is not within the recommended
 memory bounds for the virtual machine's guest OS.]]>
      </description-html>
            <property name="memorySizeMB" type-id-ref="INT"
      vmodl-name="memorySizeMB"
      >
      <description-html>
         <![CDATA[The configured memory size of the virtual machine.]]>
      </description-html>
      </property>

            <property name="minMemorySizeMB" type-id-ref="INT"
      vmodl-name="minMemorySizeMB"
      >
      <description-html>
         <![CDATA[The minimum recommended memory size.]]>
      </description-html>
      </property>

            <property name="maxMemorySizeMB" type-id-ref="INT"
      vmodl-name="maxMemorySizeMB"
      >
      <description-html>
         <![CDATA[The maximum recommended memory size.]]>
      </description-html>
      </property>

   </fault>
   <fault name="MemorySizeNotSupported"
      type-id="vim.fault.MemorySizeNotSupported"
      vmodl-name="vim.fault.MemorySizeNotSupported"
      version-id-ref="vim.version.version2"
      base-type-id="vim.fault.VirtualHardwareCompatibilityIssue"
      >
      <description-html>
         <![CDATA[The memory amount of the virtual machine is not within the acceptable
 guest memory bounds supported by the virtual machine's host.]]>
      </description-html>
            <property name="memorySizeMB" type-id-ref="INT"
      vmodl-name="memorySizeMB"
      >
      <description-html>
         <![CDATA[The configured memory size of the virtual machine.]]>
      </description-html>
      </property>

            <property name="minMemorySizeMB" type-id-ref="INT"
      vmodl-name="minMemorySizeMB"
      >
      <description-html>
         <![CDATA[The minimum acceptable memory size.]]>
      </description-html>
      </property>

            <property name="maxMemorySizeMB" type-id-ref="INT"
      vmodl-name="maxMemorySizeMB"
      >
      <description-html>
         <![CDATA[The maximum acceptable memory size.]]>
      </description-html>
      </property>

   </fault>
   <fault name="MemorySizeNotSupportedByDatastore"
      type-id="vim.fault.MemorySizeNotSupportedByDatastore"
      vmodl-name="vim.fault.MemorySizeNotSupportedByDatastore"
      version-id-ref="vim.version.version7"
      base-type-id="vim.fault.VirtualHardwareCompatibilityIssue"
      >
      <description-html>
         <![CDATA[The memory amount of the virtual machine is not within the acceptable
 guest memory bounds supported by the virtual machine's datastore.]]>
      </description-html>
            <property name="datastore" type-id-ref="vim.Datastore"
      vmodl-name="datastore"
      >
      <description-html>
         <![CDATA[The datastore which does not support the requested memory size.]]>
      </description-html>
      </property>

            <property name="memorySizeMB" type-id-ref="INT"
      vmodl-name="memorySizeMB"
      >
      <description-html>
         <![CDATA[The configured memory size of the virtual machine.]]>
      </description-html>
      </property>

            <property name="maxMemorySizeMB" type-id-ref="INT"
      vmodl-name="maxMemorySizeMB"
      >
      <description-html>
         <![CDATA[The maximum acceptable memory size supported by the datastore.]]>
      </description-html>
      </property>

   </fault>
   <fault name="MemorySnapshotOnIndependentDisk"
      type-id="vim.fault.MemorySnapshotOnIndependentDisk"
      vmodl-name="vim.fault.MemorySnapshotOnIndependentDisk"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.SnapshotFault"
      >
      <description-html>
         <![CDATA[Thrown if a request to take a memory snapshot is issued
  on a virtual machine with an independent disk.]]>
      </description-html>
   </fault>
   <fault name="MigrationDisabled"
      type-id="vim.fault.MigrationDisabled"
      vmodl-name="vim.fault.MigrationDisabled"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.MigrationFault"
      >
      <description-html>
         <![CDATA[An MigrationDisabled fault is thrown if the
  migration failed due to disabled migration]]>
      </description-html>
   </fault>
   <fault name="MissingController"
      type-id="vim.fault.MissingController"
      vmodl-name="vim.fault.MissingController"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.InvalidDeviceSpec"
      >
      <description-html>
         <![CDATA[A controller key has not been specified for a new device
  that requires a controller, such as a disk or CD-ROM device.]]>
      </description-html>
   </fault>
   <fault name="MissingIpPool"
      type-id="vim.fault.MissingIpPool"
      vmodl-name="vim.fault.MissingIpPool"
      version-id-ref="vim.version.version7"
      base-type-id="vim.fault.VAppPropertyFault"
      >
      <description-html>
         <![CDATA[No IP pool is associated with a network.]]>
      </description-html>
   </fault>
   <fault name="MissingNetworkIpConfig"
      type-id="vim.fault.MissingNetworkIpConfig"
      vmodl-name="vim.fault.MissingNetworkIpConfig"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.VAppPropertyFault"
      >
      <description-html>
         <![CDATA[No IP configuration exists for network.]]>
      </description-html>
   </fault>
   <fault name="MissingPowerOffConfiguration"
      type-id="vim.fault.MissingPowerOffConfiguration"
      vmodl-name="vim.fault.MissingPowerOffConfiguration"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.VAppConfigFault"
      >
      <description-html>
         <![CDATA[Attempting to power-off a vApp for which no virtual machines has been
  configured to power off.]]>
      </description-html>
   </fault>
   <fault name="MissingPowerOnConfiguration"
      type-id="vim.fault.MissingPowerOnConfiguration"
      vmodl-name="vim.fault.MissingPowerOnConfiguration"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.VAppConfigFault"
      >
      <description-html>
         <![CDATA[Attempting to power-on a vApp service for which no virtual machines has been
  configured to power on.]]>
      </description-html>
   </fault>
   <fault name="MultiWriterNotSupported"
      type-id="vim.fault.MultiWriterNotSupported"
      vmodl-name="vim.fault.MultiWriterNotSupported"
      version-id-ref="vim.version.version10"
      base-type-id="vim.fault.DeviceNotSupported"
      >
      <description-html>
         <![CDATA[The multi-writer sharing of the specified virtual disk is not supported.
  <p>
  Typically, this fault is returned as part of a parent fault like
  <a href="vim.fault.VmConfigIncompatibleForFaultTolerance.html">VmConfigIncompatibleForFaultTolerance</a>, indicating that the
  virtual disk's multi-writer sharing needs to be changed before fault
 tolerance can be enabled on the associated virtual machine.
  </p>]]>
      </description-html>
   </fault>
   <fault name="MultipleSnapshotsNotSupported"
      type-id="vim.fault.MultipleSnapshotsNotSupported"
      vmodl-name="vim.fault.MultipleSnapshotsNotSupported"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.SnapshotFault"
      >
      <description-html>
         <![CDATA[Fault thrown when an attempt is made to create a second snapshot on a VM that only
  supports a single snapshot at a time.]]>
      </description-html>
   </fault>
   <fault name="NoAvailableIp"
      type-id="vim.fault.NoAvailableIp"
      vmodl-name="vim.fault.NoAvailableIp"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.VAppPropertyFault"
      >
      <description-html>
         <![CDATA[There are no more IP addresses available on the given network.]]>
      </description-html>
            <property name="network" type-id-ref="vim.Network"
      vmodl-name="network"
      >
      <description-html>
         <![CDATA[A reference to the network]]>
      </description-html>
      </property>

   </fault>
   <fault name="NoVcManagedIpConfigured"
      type-id="vim.fault.NoVcManagedIpConfigured"
      vmodl-name="vim.fault.NoVcManagedIpConfigured"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.VAppPropertyFault"
      >
      <description-html>
         <![CDATA[The IP address of the VC server has not be configured, and a vApp
  property is requesting to use it.]]>
      </description-html>
   </fault>
   <fault name="NoVmInVApp"
      type-id="vim.fault.NoVmInVApp"
      vmodl-name="vim.fault.NoVmInVApp"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.VAppConfigFault"
      >
      <description-html>
         <![CDATA[Attempting to power-on or power-off a vApp that contains no
  virtual machines.]]>
      </description-html>
   </fault>
   <fault name="NonPersistentDisksNotSupported"
      type-id="vim.fault.NonPersistentDisksNotSupported"
      vmodl-name="vim.fault.NonPersistentDisksNotSupported"
      version-id-ref="vim.version.version2"
      base-type-id="vim.fault.DeviceNotSupported"
      >
      <description-html>
         <![CDATA[The virtual machine has nonpersistent virtual disk.  This is an error for
 any powered-on migration which involves moving virtual disks.]]>
      </description-html>
   </fault>
   <fault name="NonVmwareOuiMacNotSupportedHost"
      type-id="vim.fault.NonVmwareOuiMacNotSupportedHost"
      vmodl-name="vim.fault.NonVmwareOuiMacNotSupportedHost"
      version-id-ref="vim.version.version8"
      base-type-id="vim.fault.NotSupportedHost"
      >
      <description-html>
         <![CDATA[The host does not support VM that has VPX assigned prefix or ranged based
  MAC address (i.e. MAC is not prefixed with 00:50:56:[80-BF])]]>
      </description-html>
            <property name="hostName" type-id-ref="java.lang.String"
      vmodl-name="hostName"
      >
      <description-html>
         <![CDATA[The name of the host.]]>
      </description-html>
      </property>

   </fault>
   <fault name="NotEnoughCpus"
      type-id="vim.fault.NotEnoughCpus"
      vmodl-name="vim.fault.NotEnoughCpus"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.VirtualHardwareCompatibilityIssue"
      >
      <description-html>
         <![CDATA[The host hardware does not have enough CPU cores to support the number of
 virtual CPUs in the virtual machine.
 <p>
 If the host is using hyperthreading, NotEnoughLogicalCpus is
 employed instead of NotEnoughCpus.]]>
      </description-html>
            <property name="numCpuDest" type-id-ref="INT"
      vmodl-name="numCpuDest"
      >
      <description-html>
         <![CDATA[The number of CPUs present on the host.]]>
      </description-html>
      </property>

            <property name="numCpuVm" type-id-ref="INT"
      vmodl-name="numCpuVm"
      >
      <description-html>
         <![CDATA[The number of virtual CPUs present in the virtual machine.]]>
      </description-html>
      </property>

   </fault>
   <fault name="NotEnoughLogicalCpus"
      type-id="vim.fault.NotEnoughLogicalCpus"
      vmodl-name="vim.fault.NotEnoughLogicalCpus"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.NotEnoughCpus"
      >
      <description-html>
         <![CDATA[The host hardware does not have enough logical CPUs (hyperthreads) to
 support the number of virtual CPUs in the virtual machine.]]>
      </description-html>
            <property name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      version-id-ref="vim.version.version2"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The host that does not have enough logical CPUs.]]>
      </description-html>
      </property>

   </fault>
   <fault name="NotUserConfigurableProperty"
      type-id="vim.fault.NotUserConfigurableProperty"
      vmodl-name="vim.fault.NotUserConfigurableProperty"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.VAppPropertyFault"
      >
      <description-html>
         <![CDATA[The property value cannot be changed since it is not
  user configurable.]]>
      </description-html>
   </fault>
   <fault name="NumVirtualCoresPerSocketNotSupported"
      type-id="vim.fault.NumVirtualCoresPerSocketNotSupported"
      vmodl-name="vim.fault.NumVirtualCoresPerSocketNotSupported"
      version-id-ref="vim.version.version7"
      base-type-id="vim.fault.VirtualHardwareCompatibilityIssue"
      >
      <description-html>
         <![CDATA[The host's software does not support enough cores per socket to
 accommodate the virtual machine. This is always an error.]]>
      </description-html>
            <property name="maxSupportedCoresPerSocketDest" type-id-ref="INT"
      vmodl-name="maxSupportedCoresPerSocketDest"
      >
      <description-html>
         <![CDATA[The maximum number of cores per socket supported on the host.]]>
      </description-html>
      </property>

            <property name="numCoresPerSocketVm" type-id-ref="INT"
      vmodl-name="numCoresPerSocketVm"
      >
      <description-html>
         <![CDATA[The number of cores per socket in the virtual machine.]]>
      </description-html>
      </property>

   </fault>
   <fault name="NumVirtualCpusNotSupported"
      type-id="vim.fault.NumVirtualCpusNotSupported"
      vmodl-name="vim.fault.NumVirtualCpusNotSupported"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.VirtualHardwareCompatibilityIssue"
      >
      <description-html>
         <![CDATA[The host's software does not support enough virtual CPUs to
 accommodate the virtual machine. This is always an error.]]>
      </description-html>
            <property name="maxSupportedVcpusDest" type-id-ref="INT"
      vmodl-name="maxSupportedVcpusDest"
      >
      <description-html>
         <![CDATA[The maximum number of virtual CPUs supported on the host.]]>
      </description-html>
      </property>

            <property name="numCpuVm" type-id-ref="INT"
      vmodl-name="numCpuVm"
      >
      <description-html>
         <![CDATA[The number of virtual CPUs in the virtual machine.]]>
      </description-html>
      </property>

   </fault>
   <fault name="OvfAttribute"
      type-id="vim.fault.OvfAttribute"
      vmodl-name="vim.fault.OvfAttribute"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.OvfInvalidPackage"
      >
      <description-html>
         <![CDATA[An OVF descriptor Attribute base class.]]>
      </description-html>
            <property name="elementName" type-id-ref="java.lang.String"
      vmodl-name="elementName"
      >
      <description-html>
         <![CDATA[Element name where the attribute is defined]]>
      </description-html>
      </property>

            <property name="attributeName" type-id-ref="java.lang.String"
      vmodl-name="attributeName"
      >
      <description-html>
         <![CDATA[Attribute name]]>
      </description-html>
      </property>

   </fault>
   <fault name="OvfConstraint"
      type-id="vim.fault.OvfConstraint"
      vmodl-name="vim.fault.OvfConstraint"
      version-id-ref="vim.version.version6"
      base-type-id="vim.fault.OvfInvalidPackage"
      >
      <description-html>
         <![CDATA[A base fault for Ovf descriptor constraints]]>
      </description-html>
            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      >
      <description-html>
         <![CDATA[The name of the element]]>
      </description-html>
      </property>

   </fault>
   <fault name="OvfConsumerCallbackFault"
      type-id="vim.fault.OvfConsumerCallbackFault"
      vmodl-name="vim.fault.OvfConsumerCallbackFault"
      version-id-ref="vim.version.version7"
      base-type-id="vim.fault.OvfFault"
      >
      <description-html>
         <![CDATA[Superclass for all faults that can be thrown during the callback to an OVF
 consumer. The <a href="vmodl.MethodFault.html#faultCause">faultCause</a> gives details about what went
 wrong.]]>
      </description-html>
            <property name="extensionKey" type-id-ref="java.lang.String"
      vmodl-name="extensionKey"
      >
      <description-html>
         <![CDATA[The OVF consumer's extension key.]]>
      </description-html>
      </property>

            <property name="extensionName" type-id-ref="java.lang.String"
      vmodl-name="extensionName"
      >
      <description-html>
         <![CDATA[The OVF consumer's extension name.]]>
      </description-html>
      </property>

   </fault>
   <fault name="OvfConsumerCommunicationError"
      type-id="vim.fault.OvfConsumerCommunicationError"
      vmodl-name="vim.fault.OvfConsumerCommunicationError"
      version-id-ref="vim.version.version7"
      base-type-id="vim.fault.OvfConsumerCallbackFault"
      >
      <description-html>
         <![CDATA[A fault type indicating that network communication with an OVF consumer failed.]]>
      </description-html>
            <property name="description" type-id-ref="java.lang.String"
      vmodl-name="description"
      >
      <description-html>
         <![CDATA[The network library error message.]]>
      </description-html>
      </property>

   </fault>
   <fault name="OvfConsumerFault"
      type-id="vim.fault.OvfConsumerFault"
      vmodl-name="vim.fault.OvfConsumerFault"
      version-id-ref="vim.version.version7"
      base-type-id="vim.fault.OvfConsumerCallbackFault"
      >
      <description-html>
         <![CDATA[Localized fault that may be thrown by an OVF consumer.]]>
      </description-html>
            <property name="errorKey" type-id-ref="java.lang.String"
      vmodl-name="errorKey"
      >
      <description-html>
         <![CDATA[An error code that uniquely describes the fault within this extension.]]>
      </description-html>
      </property>

            <property name="message" type-id-ref="java.lang.String"
      vmodl-name="message"
      >
      <description-html>
         <![CDATA[The error message, localized by the OVF consumer]]>
      </description-html>
      </property>

            <property name="params" type-id-ref="vim.KeyValue"
      vmodl-name="params"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Additional parameters for this fault]]>
      </description-html>
      </property>

   </fault>
   <fault name="OvfConsumerInvalidSection"
      type-id="vim.fault.OvfConsumerInvalidSection"
      vmodl-name="vim.fault.OvfConsumerInvalidSection"
      version-id-ref="vim.version.version7"
      base-type-id="vim.fault.OvfConsumerCallbackFault"
      >
      <description-html>
         <![CDATA[A fault type indicating that the XML of a section appended by an OVF consumer was
 invalid.]]>
      </description-html>
            <property name="lineNumber" type-id-ref="INT"
      vmodl-name="lineNumber"
      >
      <description-html>
         <![CDATA[The line number in the section on which the error was found.]]>
      </description-html>
      </property>

            <property name="description" type-id-ref="java.lang.String"
      vmodl-name="description"
      >
      <description-html>
         <![CDATA[The XML parser error message.]]>
      </description-html>
      </property>

   </fault>
   <fault name="OvfConsumerUndeclaredSection"
      type-id="vim.fault.OvfConsumerUndeclaredSection"
      vmodl-name="vim.fault.OvfConsumerUndeclaredSection"
      version-id-ref="vim.version.version7"
      base-type-id="vim.fault.OvfConsumerCallbackFault"
      >
      <description-html>
         <![CDATA[A fault type indicating that an OVF consumer appended an undeclared section to an OST.
 <p>
 An undeclared section means a section with a qualified type that the OVF consumer was
 not registered as a handler of.]]>
      </description-html>
            <property name="qualifiedSectionType" type-id-ref="java.lang.String"
      vmodl-name="qualifiedSectionType"
      >
      <description-html>
         <![CDATA[The undeclared qualified section type appended by the OVF consumer.]]>
      </description-html>
      </property>

   </fault>
   <fault name="OvfConsumerUndefinedPrefix"
      type-id="vim.fault.OvfConsumerUndefinedPrefix"
      vmodl-name="vim.fault.OvfConsumerUndefinedPrefix"
      version-id-ref="vim.version.version7"
      base-type-id="vim.fault.OvfConsumerCallbackFault"
      >
      <description-html>
         <![CDATA[A fault type indicating that an OVF consumer added a section with an unbound prefix.]]>
      </description-html>
            <property name="prefix" type-id-ref="java.lang.String"
      vmodl-name="prefix"
      >
      <description-html>
         <![CDATA[The prefix for which no namespace definition was found.]]>
      </description-html>
      </property>

   </fault>
   <fault name="OvfCpuCompatibility"
      type-id="vim.fault.OvfCpuCompatibility"
      vmodl-name="vim.fault.OvfCpuCompatibility"
      version-id-ref="vim.version.version7"
      base-type-id="vim.fault.OvfImport"
      >
            <property name="registerName" type-id-ref="java.lang.String"
      vmodl-name="registerName"
      >
      <description-html>
         <![CDATA[Possible register names are eax, ebx, ecx, or edx.]]>
      </description-html>
      </property>

            <property name="level" type-id-ref="INT"
      vmodl-name="level"
      >
      <description-html>
         <![CDATA[The CpuId level where a problem was detected. Other levels may
   also have problems]]>
      </description-html>
      </property>

            <property name="registerValue" type-id-ref="java.lang.String"
      vmodl-name="registerValue"
      >
      <description-html>
         <![CDATA[The register value where the problem was detected]]>
      </description-html>
      </property>

            <property name="desiredRegisterValue" type-id-ref="java.lang.String"
      vmodl-name="desiredRegisterValue"
      >
      <description-html>
         <![CDATA[The desired register value return from the host]]>
      </description-html>
      </property>

   </fault>
   <fault name="OvfCpuCompatibilityCheckNotSupported"
      type-id="vim.fault.OvfCpuCompatibilityCheckNotSupported"
      vmodl-name="vim.fault.OvfCpuCompatibilityCheckNotSupported"
      version-id-ref="vim.version.version7"
      base-type-id="vim.fault.OvfImport"
      >
   </fault>
   <fault name="OvfDiskMappingNotFound"
      type-id="vim.fault.OvfDiskMappingNotFound"
      vmodl-name="vim.fault.OvfDiskMappingNotFound"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.OvfSystemFault"
      >
            <property name="diskName" type-id-ref="java.lang.String"
      vmodl-name="diskName"
      >
      <description-html>
         <![CDATA[The disk name that is not found]]>
      </description-html>
      </property>

            <property name="vmName" type-id-ref="java.lang.String"
      vmodl-name="vmName"
      >
      <description-html>
         <![CDATA[The VM Name]]>
      </description-html>
      </property>

   </fault>
   <fault name="OvfDiskOrderConstraint"
      type-id="vim.fault.OvfDiskOrderConstraint"
      vmodl-name="vim.fault.OvfDiskOrderConstraint"
      version-id-ref="vim.version.version6"
      base-type-id="vim.fault.OvfConstraint"
      >
      <description-html>
         <![CDATA[Class used to indicate that the Disks in a DiskSection was not defined
 in the same order as in the Reference section]]>
      </description-html>
   </fault>
   <fault name="OvfElement"
      type-id="vim.fault.OvfElement"
      vmodl-name="vim.fault.OvfElement"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.OvfInvalidPackage"
      >
      <description-html>
         <![CDATA[A base fault for element exceptions in the Ovf XML descriptor.]]>
      </description-html>
            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      >
      <description-html>
         <![CDATA[The name of the element]]>
      </description-html>
      </property>

   </fault>
   <fault name="OvfElementInvalidValue"
      type-id="vim.fault.OvfElementInvalidValue"
      vmodl-name="vim.fault.OvfElementInvalidValue"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.OvfElement"
      >
      <description-html>
         <![CDATA[A class used if a element node is found to have an invalid value.
 Base class for OvfProperty errors.]]>
      </description-html>
            <property name="value" type-id-ref="java.lang.String"
      vmodl-name="value"
      >
      <description-html>
         <![CDATA[The value of the element]]>
      </description-html>
      </property>

   </fault>
   <fault name="OvfExport"
      type-id="vim.fault.OvfExport"
      vmodl-name="vim.fault.OvfExport"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.OvfFault"
      >
      <description-html>
         <![CDATA[A common base class to host all the Ovf Lib Export Exceptions.]]>
      </description-html>
   </fault>
   <fault name="OvfExportFailed"
      type-id="vim.fault.OvfExportFailed"
      vmodl-name="vim.fault.OvfExportFailed"
      version-id-ref="vim.version.version6"
      base-type-id="vim.fault.OvfExport"
      >
      <description-html>
         <![CDATA[This fault is used if we fail to export an OVF package.]]>
      </description-html>
   </fault>
   <fault name="OvfHardwareCheck"
      type-id="vim.fault.OvfHardwareCheck"
      vmodl-name="vim.fault.OvfHardwareCheck"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.OvfImport"
      >
   </fault>
   <fault name="OvfHardwareExport"
      type-id="vim.fault.OvfHardwareExport"
      vmodl-name="vim.fault.OvfHardwareExport"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.OvfExport"
      >
      <description-html>
         <![CDATA[A common base class to host all the OvfLib Export Exceptions for hardware.]]>
      </description-html>
            <property name="device" type-id-ref="vim.vm.device.VirtualDevice"
      vmodl-name="device"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The virtual device we are exporting to OVF]]>
      </description-html>
      </property>

            <property name="vmPath" type-id-ref="java.lang.String"
      vmodl-name="vmPath"
      >
      <description-html>
         <![CDATA[The path to the VM containing the device.
 <p>
 This path shows the location of the VM in the vApp hierarchy, on the form:
 <p>
 /ParentVApp/ChildVApp/VMName]]>
      </description-html>
      </property>

   </fault>
   <fault name="OvfHostResourceConstraint"
      type-id="vim.fault.OvfHostResourceConstraint"
      vmodl-name="vim.fault.OvfHostResourceConstraint"
      version-id-ref="vim.version.version6"
      base-type-id="vim.fault.OvfConstraint"
      >
      <description-html>
         <![CDATA[Class used to indicate that the value in HostResoruce did not map to
 a valid reference element.]]>
      </description-html>
            <property name="value" type-id-ref="java.lang.String"
      vmodl-name="value"
      >
      <description-html>
         <![CDATA[Value of the element]]>
      </description-html>
      </property>

   </fault>
   <fault name="OvfHostValueNotParsed"
      type-id="vim.fault.OvfHostValueNotParsed"
      vmodl-name="vim.fault.OvfHostValueNotParsed"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.OvfSystemFault"
      >
            <property name="property" type-id-ref="java.lang.String"
      vmodl-name="property"
      >
      <description-html>
         <![CDATA[The host property field that could not be parsed.]]>
      </description-html>
      </property>

            <property name="value" type-id-ref="java.lang.String"
      vmodl-name="value"
      >
      <description-html>
         <![CDATA[Value of the field that could not be parsed.]]>
      </description-html>
      </property>

   </fault>
   <fault name="OvfInternalError"
      type-id="vim.fault.OvfInternalError"
      vmodl-name="vim.fault.OvfInternalError"
      version-id-ref="vim.version.version6"
      base-type-id="vim.fault.OvfSystemFault"
      >
      <description-html>
         <![CDATA[Disk mode not supported]]>
      </description-html>
   </fault>
   <fault name="OvfInvalidValue"
      type-id="vim.fault.OvfInvalidValue"
      vmodl-name="vim.fault.OvfInvalidValue"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.OvfAttribute"
      >
      <description-html>
         <![CDATA[If an invalid value is found in the Ovf descriptor we throw an OvfInvalidValue exception.]]>
      </description-html>
            <property name="value" type-id-ref="java.lang.String"
      vmodl-name="value"
      >
      <description-html>
         <![CDATA[Attribute value]]>
      </description-html>
      </property>

   </fault>
   <fault name="OvfInvalidValueConfiguration"
      type-id="vim.fault.OvfInvalidValueConfiguration"
      vmodl-name="vim.fault.OvfInvalidValueConfiguration"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.OvfInvalidValue"
      >
      <description-html>
         <![CDATA[If an malformed ovf:configuration attribute value is found in the
 Ovf descriptor we throw an OvfInvalidValueConfiguration exception.]]>
      </description-html>
   </fault>
   <fault name="OvfInvalidValueEmpty"
      type-id="vim.fault.OvfInvalidValueEmpty"
      vmodl-name="vim.fault.OvfInvalidValueEmpty"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.OvfInvalidValue"
      >
      <description-html>
         <![CDATA[If an attribute is found with an empty value where it is not allowed.]]>
      </description-html>
   </fault>
   <fault name="OvfInvalidValueFormatMalformed"
      type-id="vim.fault.OvfInvalidValueFormatMalformed"
      vmodl-name="vim.fault.OvfInvalidValueFormatMalformed"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.OvfInvalidValue"
      >
      <description-html>
         <![CDATA[If an malformed value is found in the Ovf descriptor we throw an OvfInvalidValueFormatMalformed
 exception.]]>
      </description-html>
   </fault>
   <fault name="OvfInvalidValueReference"
      type-id="vim.fault.OvfInvalidValueReference"
      vmodl-name="vim.fault.OvfInvalidValueReference"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.OvfInvalidValue"
      >
      <description-html>
         <![CDATA[If a value refer to something that is not found is found in the Ovf descriptor
 we throw an OvfInvalidValueReference exception.]]>
      </description-html>
   </fault>
   <fault name="OvfInvalidVmName"
      type-id="vim.fault.OvfInvalidVmName"
      vmodl-name="vim.fault.OvfInvalidVmName"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.OvfUnsupportedPackage"
      >
      <description-html>
         <![CDATA[This fault is used if we can not normalize the vm name]]>
      </description-html>
            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      >
      <description-html>
         <![CDATA[The name of the invalid Virtual Machine]]>
      </description-html>
      </property>

   </fault>
   <fault name="OvfMissingAttribute"
      type-id="vim.fault.OvfMissingAttribute"
      vmodl-name="vim.fault.OvfMissingAttribute"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.OvfAttribute"
      >
      <description-html>
         <![CDATA[If the Ovf descriptor is missing an attribute this exception is thrown.]]>
      </description-html>
   </fault>
   <fault name="OvfMissingElement"
      type-id="vim.fault.OvfMissingElement"
      vmodl-name="vim.fault.OvfMissingElement"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.OvfElement"
      >
      <description-html>
         <![CDATA[If the Ovf descriptor is missing an Element this exception is thrown.]]>
      </description-html>
   </fault>
   <fault name="OvfMissingElementNormalBoundary"
      type-id="vim.fault.OvfMissingElementNormalBoundary"
      vmodl-name="vim.fault.OvfMissingElementNormalBoundary"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.OvfMissingElement"
      >
      <description-html>
         <![CDATA[If the Ovf descriptor element normal boundary is not met this exception is thrown.]]>
      </description-html>
            <property name="boundary" type-id-ref="java.lang.String"
      vmodl-name="boundary"
      >
      <description-html>
         <![CDATA[The missing bound]]>
      </description-html>
      </property>

   </fault>
   <fault name="OvfNoHostNic"
      type-id="vim.fault.OvfNoHostNic"
      vmodl-name="vim.fault.OvfNoHostNic"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.OvfUnsupportedPackage"
      >
      <description-html>
         <![CDATA[This fault is used if there is no network defined on host]]>
      </description-html>
   </fault>
   <fault name="OvfNoSupportedHardwareFamily"
      type-id="vim.fault.OvfNoSupportedHardwareFamily"
      vmodl-name="vim.fault.OvfNoSupportedHardwareFamily"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.OvfUnsupportedPackage"
      >
            <property name="version" type-id-ref="java.lang.String"
      vmodl-name="version"
      >
      <description-html>
         <![CDATA[Version found that was not supported]]>
      </description-html>
      </property>

   </fault>
   <fault name="OvfPropertyExport"
      type-id="vim.fault.OvfPropertyExport"
      vmodl-name="vim.fault.OvfPropertyExport"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.OvfExport"
      >
      <description-html>
         <![CDATA[VIM property type that can not be converted to OVF]]>
      </description-html>
            <property name="type" type-id-ref="java.lang.String"
      vmodl-name="type"
      >
      <description-html>
         <![CDATA[VIM type]]>
      </description-html>
      </property>

            <property name="value" type-id-ref="java.lang.String"
      vmodl-name="value"
      >
      <description-html>
         <![CDATA[VIM value]]>
      </description-html>
      </property>

   </fault>
   <fault name="OvfPropertyNetworkExport"
      type-id="vim.fault.OvfPropertyNetworkExport"
      vmodl-name="vim.fault.OvfPropertyNetworkExport"
      version-id-ref="vim.version.version7"
      base-type-id="vim.fault.OvfExport"
      >
      <description-html>
         <![CDATA[VIM property type that refers to a network that
 does not exist in the package since no virtual machines
 are hooked up to it.]]>
      </description-html>
            <property name="network" type-id-ref="java.lang.String"
      vmodl-name="network"
      >
      <description-html>
         <![CDATA[name of network]]>
      </description-html>
      </property>

   </fault>
   <fault name="OvfUnableToExportDisk"
      type-id="vim.fault.OvfUnableToExportDisk"
      vmodl-name="vim.fault.OvfUnableToExportDisk"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.OvfHardwareExport"
      >
            <property name="diskName" type-id-ref="java.lang.String"
      vmodl-name="diskName"
      >
      <description-html>
         <![CDATA[disk name]]>
      </description-html>
      </property>

   </fault>
   <fault name="OvfUnexpectedElement"
      type-id="vim.fault.OvfUnexpectedElement"
      vmodl-name="vim.fault.OvfUnexpectedElement"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.OvfElement"
      >
      <description-html>
         <![CDATA[Class used to indicate an unexpected element in the Ovf descriptor]]>
      </description-html>
   </fault>
   <fault name="OvfUnknownDeviceBacking"
      type-id="vim.fault.OvfUnknownDeviceBacking"
      vmodl-name="vim.fault.OvfUnknownDeviceBacking"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.OvfHardwareExport"
      >
            <property name="backing" type-id-ref="vim.vm.device.VirtualDevice.BackingInfo"
      vmodl-name="backing"
      >
      <description-html>
         <![CDATA[The VirtualDevice BackingInfo that is not supported by OVF export.]]>
      </description-html>
      </property>

   </fault>
   <fault name="OvfUnsupportedAttribute"
      type-id="vim.fault.OvfUnsupportedAttribute"
      vmodl-name="vim.fault.OvfUnsupportedAttribute"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.OvfUnsupportedPackage"
      >
      <description-html>
         <![CDATA[If the Ovf descriptor have an unsupported attribute.]]>
      </description-html>
            <property name="elementName" type-id-ref="java.lang.String"
      vmodl-name="elementName"
      >
      <description-html>
         <![CDATA[The name of the element with the unsupported attribute]]>
      </description-html>
      </property>

            <property name="attributeName" type-id-ref="java.lang.String"
      vmodl-name="attributeName"
      >
      <description-html>
         <![CDATA[The name of the unsupported attribute]]>
      </description-html>
      </property>

   </fault>
   <fault name="OvfUnsupportedAttributeValue"
      type-id="vim.fault.OvfUnsupportedAttributeValue"
      vmodl-name="vim.fault.OvfUnsupportedAttributeValue"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.OvfUnsupportedAttribute"
      >
      <description-html>
         <![CDATA[Used when an OVF descriptor attribute has an unsupported value.]]>
      </description-html>
            <property name="value" type-id-ref="java.lang.String"
      vmodl-name="value"
      >
      <description-html>
         <![CDATA[Unsupported attribute value]]>
      </description-html>
      </property>

   </fault>
   <fault name="OvfUnsupportedDeviceExport"
      type-id="vim.fault.OvfUnsupportedDeviceExport"
      vmodl-name="vim.fault.OvfUnsupportedDeviceExport"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.OvfHardwareExport"
      >
   </fault>
   <fault name="OvfUnsupportedElement"
      type-id="vim.fault.OvfUnsupportedElement"
      vmodl-name="vim.fault.OvfUnsupportedElement"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.OvfUnsupportedPackage"
      >
      <description-html>
         <![CDATA[If the Ovf descriptor has an unsupported element where it is not allowed.]]>
      </description-html>
            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      >
      <description-html>
         <![CDATA[The name of the unsupported element]]>
      </description-html>
      </property>

   </fault>
   <fault name="OvfUnsupportedElementValue"
      type-id="vim.fault.OvfUnsupportedElementValue"
      vmodl-name="vim.fault.OvfUnsupportedElementValue"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.OvfUnsupportedElement"
      >
      <description-html>
         <![CDATA[If the Ovf descriptor has an unsupported value of a element in the
 OVF descriptor.]]>
      </description-html>
            <property name="value" type-id-ref="java.lang.String"
      vmodl-name="value"
      >
      <description-html>
         <![CDATA[The unsupported element value]]>
      </description-html>
      </property>

   </fault>
   <fault name="OvfUnsupportedSection"
      type-id="vim.fault.OvfUnsupportedSection"
      vmodl-name="vim.fault.OvfUnsupportedSection"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.OvfUnsupportedElement"
      >
      <description-html>
         <![CDATA[If the Ovf descriptor has an unsupported required section.]]>
      </description-html>
            <property name="info" type-id-ref="java.lang.String"
      vmodl-name="info"
      >
      <description-html>
         <![CDATA[The info of the unsupported section]]>
      </description-html>
      </property>

   </fault>
   <fault name="OvfWrongElement"
      type-id="vim.fault.OvfWrongElement"
      vmodl-name="vim.fault.OvfWrongElement"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.OvfElement"
      >
      <description-html>
         <![CDATA[If the Ovf descriptor has an element that is not accepted, this exception is thrown.]]>
      </description-html>
   </fault>
   <fault name="PatchAlreadyInstalled"
      type-id="vim.fault.PatchAlreadyInstalled"
      vmodl-name="vim.fault.PatchAlreadyInstalled"
      version-id-ref="vim.version.version1"
      internal-before-version-id-ref="vim.version.version2"
      base-type-id="vim.fault.PatchNotApplicable"
      >
      <description-html>
         <![CDATA[This fault is thrown if a patch install fails because the patch
 is already installed on the host.]]>
      </description-html>
   </fault>
   <fault name="PatchInstallFailed"
      type-id="vim.fault.PatchInstallFailed"
      vmodl-name="vim.fault.PatchInstallFailed"
      version-id-ref="vim.version.version1"
      internal-before-version-id-ref="vim.version.version2"
      base-type-id="vim.fault.PlatformConfigFault"
      >
      <description-html>
         <![CDATA[This is a general-purpose fault indicating that some error has
  occurred regarding a patch install.  Data about the fault is
  available and is presented as a platform specific string.]]>
      </description-html>
            <property name="rolledBack" type-id-ref="BOOLEAN"
      vmodl-name="rolledBack"
      >
      <description-html>
         <![CDATA[Whether or not the patch install has been rolled back. If not,
 a manual rollback is required.]]>
      </description-html>
      </property>

   </fault>
   <fault name="PatchIntegrityError"
      type-id="vim.fault.PatchIntegrityError"
      vmodl-name="vim.fault.PatchIntegrityError"
      version-id-ref="vim.version.version1"
      internal-before-version-id-ref="vim.version.version2"
      base-type-id="vim.fault.PlatformConfigFault"
      >
      <description-html>
         <![CDATA[This fault is thrown if a patch operation fails because the signature of
 the patch did not check out.]]>
      </description-html>
   </fault>
   <fault name="PatchMetadataCorrupted"
      type-id="vim.fault.PatchMetadataCorrupted"
      vmodl-name="vim.fault.PatchMetadataCorrupted"
      version-id-ref="vim.version.version1"
      internal-before-version-id-ref="vim.version.version2"
      base-type-id="vim.fault.PatchMetadataInvalid"
      >
      <description-html>
         <![CDATA[This fault is thrown if the metadata associated with a patch is
 corrupted or unreadable when a patch query or install is attempted.]]>
      </description-html>
   </fault>
   <fault name="PatchMissingDependencies"
      type-id="vim.fault.PatchMissingDependencies"
      vmodl-name="vim.fault.PatchMissingDependencies"
      version-id-ref="vim.version.version1"
      internal-before-version-id-ref="vim.version.version2"
      base-type-id="vim.fault.PatchNotApplicable"
      >
      <description-html>
         <![CDATA[This fault is thrown if a patch install fails because the patch
 requires other patches or libraries that are not installed on the host.]]>
      </description-html>
            <property name="prerequisitePatch" type-id-ref="java.lang.String"
      vmodl-name="prerequisitePatch"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The ID of required patches.]]>
      </description-html>
      </property>

            <property name="prerequisiteLib" type-id-ref="java.lang.String"
      vmodl-name="prerequisiteLib"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The names of required libraries or RPMs.]]>
      </description-html>
      </property>

   </fault>
   <fault name="PowerOnFtSecondaryTimedout"
      type-id="vim.fault.PowerOnFtSecondaryTimedout"
      vmodl-name="vim.fault.PowerOnFtSecondaryTimedout"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.Timedout"
      >
      <description-html>
         <![CDATA[PowerOnFtSecondaryTimedout exception is thrown when Virtual Center
  fails the operation to power on a Fault Tolerance secondary virtual
  machine because it is taking longer than expected.]]>
      </description-html>
            <property name="vm" type-id-ref="vim.VirtualMachine"
      vmodl-name="vm"
      >
      <description-html>
         <![CDATA[The primary virtual machine corresponding to the secondary that is to
  be powered on]]>
      </description-html>
      </property>

            <property name="vmName" type-id-ref="java.lang.String"
      vmodl-name="vmName"
      >
      <description-html>
         <![CDATA[The name of the primary virtual machine corresponding to the secondary
  that is to be powered on.]]>
      </description-html>
      </property>

            <property name="timeout" type-id-ref="INT"
      vmodl-name="timeout"
      >
      <description-html>
         <![CDATA[The time out value in seconds]]>
      </description-html>
      </property>

   </fault>
   <fault name="QuiesceDatastoreIOForHAFailed"
      type-id="vim.fault.QuiesceDatastoreIOForHAFailed"
      vmodl-name="vim.fault.QuiesceDatastoreIOForHAFailed"
      version-id-ref="vim.version.version7"
      base-type-id="vim.fault.ResourceInUse"
      >
      <description-html>
         <![CDATA[A QuiesceDatastoreIOForHAFailed fault occurs when the HA agent on a host
  cannot quiesce file activity on a datastore to be unmouonted or removed.]]>
      </description-html>
            <property name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      >
      <description-html>
         <![CDATA[The host.]]>
      </description-html>
      </property>

            <property name="hostName" type-id-ref="java.lang.String"
      vmodl-name="hostName"
      >
      <description-html>
         <![CDATA[Name of the host.]]>
      </description-html>
      </property>

            <property name="ds" type-id-ref="vim.Datastore"
      vmodl-name="ds"
      >
      <description-html>
         <![CDATA[The datastore.]]>
      </description-html>
      </property>

            <property name="dsName" type-id-ref="java.lang.String"
      vmodl-name="dsName"
      >
      <description-html>
         <![CDATA[Name of the datastore.]]>
      </description-html>
      </property>

   </fault>
   <fault name="RDMNotSupported"
      type-id="vim.fault.RDMNotSupported"
      vmodl-name="vim.fault.RDMNotSupported"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.DeviceNotSupported"
      >
      <description-html>
         <![CDATA[The virtual machine is configured with a Raw Disk Mapping. This is not
 supported on the host.]]>
      </description-html>
   </fault>
   <fault name="RawDiskNotSupported"
      type-id="vim.fault.RawDiskNotSupported"
      vmodl-name="vim.fault.RawDiskNotSupported"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.DeviceNotSupported"
      >
      <description-html>
         <![CDATA[The virtual machine has a raw disk attached that is not supported. This is often
 used as a subfault for DisallowedMigrationDeviceAttached or
 DisallowedSnapshotDeviceAttached.]]>
      </description-html>
   </fault>
   <fault name="RemoteDeviceNotSupported"
      type-id="vim.fault.RemoteDeviceNotSupported"
      vmodl-name="vim.fault.RemoteDeviceNotSupported"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.DeviceNotSupported"
      >
      <description-html>
         <![CDATA[The virtual machine has a currently connected device with a remote backing.
 This is an error when migrating a powered-on virtual machine, and can be returned
 as a subfault of DisallowedMigrationDeviceAttached.]]>
      </description-html>
   </fault>
   <fault name="ReplicationConfigFault"
      type-id="vim.fault.ReplicationConfigFault"
      vmodl-name="vim.fault.ReplicationConfigFault"
      version-id-ref="vim.version.version7"
      base-type-id="vim.fault.ReplicationFault"
      >
      <description-html>
         <![CDATA[Base type for Replication-related configuration errors.]]>
      </description-html>
   </fault>
   <fault name="ReplicationDiskConfigFault"
      type-id="vim.fault.ReplicationDiskConfigFault"
      vmodl-name="vim.fault.ReplicationDiskConfigFault"
      version-id-ref="vim.version.version7"
      base-type-id="vim.fault.ReplicationConfigFault"
      >
      <description-html>
         <![CDATA[A ReplicationDiskConfigFault is thrown when there is an issue with
  configuring disk replication properties.]]>
      </description-html>
            <property name="reason" type-id-ref="java.lang.String"
      vmodl-name="reason"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The reason for the failure. One of the above.]]>
      </description-html>
      </property>

            <property name="vmRef" type-id-ref="vim.VirtualMachine"
      vmodl-name="vmRef"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The virtual machine, for identification purposes.]]>
      </description-html>
      </property>

            <property name="key" type-id-ref="INT"
      vmodl-name="key"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The disk (device) key in the parent VM for identification
 purposes.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.fault.ReplicationDiskConfigFault.ReasonForFault</nested-type-id-ref>
   </fault>
   <fault name="ReplicationVmConfigFault"
      type-id="vim.fault.ReplicationVmConfigFault"
      vmodl-name="vim.fault.ReplicationVmConfigFault"
      version-id-ref="vim.version.version7"
      base-type-id="vim.fault.ReplicationConfigFault"
      >
      <description-html>
         <![CDATA[A ReplicationVmConfigFault is thrown when there is an issue with
  configuring VM-wide replication properties.]]>
      </description-html>
            <property name="reason" type-id-ref="java.lang.String"
      vmodl-name="reason"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The reason for the failure. One of the above.]]>
      </description-html>
      </property>

            <property name="vmRef" type-id-ref="vim.VirtualMachine"
      vmodl-name="vmRef"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The virtual machine, for identification purposes.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.fault.ReplicationVmConfigFault.ReasonForFault</nested-type-id-ref>
   </fault>
   <fault name="SharedBusControllerNotSupported"
      type-id="vim.fault.SharedBusControllerNotSupported"
      vmodl-name="vim.fault.SharedBusControllerNotSupported"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.DeviceNotSupported"
      >
      <description-html>
         <![CDATA[The virtual machine has one or more SCSI controllers that are engaged
 in bus sharing. This is an error when migrating a powered-on virtual machine,
 and can be returned as a subfault of DisallowedMigrationDeviceAttached.]]>
      </description-html>
   </fault>
   <fault name="SnapshotCloneNotSupported"
      type-id="vim.fault.SnapshotCloneNotSupported"
      vmodl-name="vim.fault.SnapshotCloneNotSupported"
      version-id-ref="vim.version.version2"
      base-type-id="vim.fault.SnapshotCopyNotSupported"
      >
      <description-html>
         <![CDATA[An attempt is being made to copy a virtual machine's disk that has
  associated snapshots, and preserving the snapshots is not supported by the
  host under any circumstances. This is a warning.]]>
      </description-html>
   </fault>
   <fault name="SnapshotDisabled"
      type-id="vim.fault.SnapshotDisabled"
      vmodl-name="vim.fault.SnapshotDisabled"
      version-id-ref="vim.version.version2"
      base-type-id="vim.fault.SnapshotFault"
      >
      <description-html>
         <![CDATA[Fault thrown if a snapshot operation cannot be performed because
  snapshots are disabled on the virtual machine.]]>
      </description-html>
   </fault>
   <fault name="StorageVmotionIncompatible"
      type-id="vim.fault.StorageVmotionIncompatible"
      vmodl-name="vim.fault.StorageVmotionIncompatible"
      version-id-ref="vim.version.version7"
      base-type-id="vim.fault.VirtualHardwareCompatibilityIssue"
      >
      <description-html>
         <![CDATA[This fault is thrown when Storage DRS tries to migrate disks of a virtual machine to a datastore,
 but finds that the datastore is incompatible with the given virtual machine.]]>
      </description-html>
            <property name="datastore" type-id-ref="vim.Datastore"
      vmodl-name="datastore"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The datastore that is incompatible with a given virtual machine.]]>
      </description-html>
      </property>

   </fault>
   <fault name="SwapDatastoreNotWritableOnHost"
      type-id="vim.fault.SwapDatastoreNotWritableOnHost"
      vmodl-name="vim.fault.SwapDatastoreNotWritableOnHost"
      version-id-ref="vim.version.version2"
      base-type-id="vim.fault.DatastoreNotWritableOnHost"
      >
      <description-html>
         <![CDATA[The compute resource and/or virtual machine configurations indicate that
 when executing on the host the virtual machine should use a specific
 datastore, but host does not have read/write access to that datastore.
 (It may have no access at all, or read-only access.)  If executing on the
 host the virtual machine would instead use its own directory for swapfile
 placement.  This is a compatibility warning, not an error.]]>
      </description-html>
   </fault>
   <fault name="UnSupportedDatastoreForVFlash"
      type-id="vim.fault.UnSupportedDatastoreForVFlash"
      vmodl-name="vim.fault.UnSupportedDatastoreForVFlash"
      version-id-ref="vim.version.version9"
      base-type-id="vim.fault.UnsupportedDatastore"
      >
      <description-html>
         <![CDATA[VFlash is not supported on the datastore.]]>
      </description-html>
            <property name="datastoreName" type-id-ref="java.lang.String"
      vmodl-name="datastoreName"
      >
      <description-html>
         <![CDATA[The name of the Datastore.]]>
      </description-html>
      </property>

            <property name="type" type-id-ref="java.lang.String"
      vmodl-name="type"
      >
      <description-html>
         <![CDATA[Datastore file system volume type.
  See <a href="vim.Datastore.Summary.html#type">type</a>]]>
      </description-html>
      </property>

   </fault>
   <fault name="UnconfiguredPropertyValue"
      type-id="vim.fault.UnconfiguredPropertyValue"
      vmodl-name="vim.fault.UnconfiguredPropertyValue"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.InvalidPropertyValue"
      >
      <description-html>
         <![CDATA[The property value has not been configured by the user, so the application
  cannot be started. This is thrown if a property value is the empty string
  and the types does not allow it. For example, for an integer type or
  a string where the minimum length is 1, and so forth.]]>
      </description-html>
   </fault>
   <fault name="VMINotSupported"
      type-id="vim.fault.VMINotSupported"
      vmodl-name="vim.fault.VMINotSupported"
      version-id-ref="vim.version.version2"
      base-type-id="vim.fault.DeviceNotSupported"
      >
      <description-html>
         <![CDATA[The virtual machine is configured to use a VMI ROM, which is not
 supported on the host.]]>
      </description-html>
   </fault>
   <fault name="VMOnConflictDVPort"
      type-id="vim.fault.VMOnConflictDVPort"
      vmodl-name="vim.fault.VMOnConflictDVPort"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.CannotAccessNetwork"
      >
      <description-html>
         <![CDATA[The virtual machine is using a conflict DVPort, which is a temporary port created
 to avoid conflict with another port. Conflict DVPort cannot be moved.]]>
      </description-html>
   </fault>
   <fault name="VMOnVirtualIntranet"
      type-id="vim.fault.VMOnVirtualIntranet"
      vmodl-name="vim.fault.VMOnVirtualIntranet"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.CannotAccessNetwork"
      >
      <description-html>
         <![CDATA[The virtual machine is using a "virtual intranet", a virtual network
 that exists only within a single host. If returned as part of a migration check, this
 is an error if the virtual machine is currently connected to the network and a
  warning otherwise.]]>
      </description-html>
   </fault>
   <fault name="VirtualDiskModeNotSupported"
      type-id="vim.fault.VirtualDiskModeNotSupported"
      vmodl-name="vim.fault.VirtualDiskModeNotSupported"
      version-id-ref="vim.version.version6"
      base-type-id="vim.fault.DeviceNotSupported"
      >
      <description-html>
         <![CDATA[The disk mode of the specified virtual disk is not supported.
  <p>
  Typically, this fault is returned as part of a parent fault like
  <a href="vim.fault.VmConfigIncompatibleForFaultTolerance.html">VmConfigIncompatibleForFaultTolerance</a>, indicating that the
  virtual disk's mode needs to be changed before fault tolerance can be
  enabled on the associated virtual machine.
  </p>]]>
      </description-html>
            <property name="mode" type-id-ref="java.lang.String"
      vmodl-name="mode"
      >
      <description-html>
         <![CDATA[Disk mode that is not supported]]>
      </description-html>
      </property>

   </fault>
   <fault name="VirtualEthernetCardNotSupported"
      type-id="vim.fault.VirtualEthernetCardNotSupported"
      vmodl-name="vim.fault.VirtualEthernetCardNotSupported"
      version-id-ref="vim.version.version2"
      base-type-id="vim.fault.DeviceNotSupported"
      >
      <description-html>
         <![CDATA[The virtual machine's virtual ethernet card is not supported.]]>
      </description-html>
   </fault>
   <fault name="VmfsAlreadyMounted"
      type-id="vim.fault.VmfsAlreadyMounted"
      vmodl-name="vim.fault.VmfsAlreadyMounted"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.VmfsMountFault"
      >
      <description-html>
         <![CDATA[A VmfsAlreadyMounted fault indicates that VMFS volume with same UUID
  is already mounted on the host.]]>
      </description-html>
   </fault>
   <fault name="VmfsAmbiguousMount"
      type-id="vim.fault.VmfsAmbiguousMount"
      vmodl-name="vim.fault.VmfsAmbiguousMount"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.VmfsMountFault"
      >
      <description-html>
         <![CDATA[An 'VmfsAmbiguousMount' fault occurs when ESX is unable to resolve the
  extents of a VMFS volume unambiguously. This is thrown only when a VMFS
  volume has multiple extents and multiple copies of VMFS volumes are available.
  VMFS layer will not be able to determine how to re-construct the VMFS
  volume as multiple choices are available.]]>
      </description-html>
   </fault>
   <fault name="ConnectedIso"
      type-id="vim.fault.ConnectedIso"
      vmodl-name="vim.fault.ConnectedIso"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.OvfExport"
      >
            <property name="cdrom" type-id-ref="vim.vm.device.VirtualCdrom"
      vmodl-name="cdrom"
      >
      <description-html>
         <![CDATA[The CD-ROM drive that caused the event.]]>
      </description-html>
      </property>

            <property name="filename" type-id-ref="java.lang.String"
      vmodl-name="filename"
      >
      <description-html>
         <![CDATA[The filename of the ISO]]>
      </description-html>
      </property>

   </fault>
   <fault name="CpuCompatibilityUnknown"
      type-id="vim.fault.CpuCompatibilityUnknown"
      vmodl-name="vim.fault.CpuCompatibilityUnknown"
      version-id-ref="vim.version.version1"
      is-deprecated="true"
      base-type-id="vim.fault.CpuIncompatible"
      >
      <description-html>
         <![CDATA[Compatibility between the virtual machine's host and its CPU
  feature requirements cannot be determined, because not enough information
  is available about the CPU features of the host.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of VI API 2.5, use <a href="vim.fault.CpuIncompatible.html">CpuIncompatible</a> and its other subclasses,
              not this one.]]>
      </deprecated-html>
   </fault>
   <fault name="DeviceBackingNotSupported"
      type-id="vim.fault.DeviceBackingNotSupported"
      vmodl-name="vim.fault.DeviceBackingNotSupported"
      version-id-ref="vim.version.version2"
      base-type-id="vim.fault.DeviceNotSupported"
      >
      <description-html>
         <![CDATA[The device is backed by a backing type which is not supported
  for this particular device.
  <p>
  If this fault is returned as a subfault of
  DisallowedMigrationDeviceAttached, this indicates that although
  this backing for the device may be supported on the destination
  host, the hosts do not support the requested migration of the
  virtual machine while using this device with this backing.
  <p>]]>
      </description-html>
            <property name="backing" type-id-ref="java.lang.String"
      vmodl-name="backing"
      >
      <description-html>
         <![CDATA[The type of the backing.]]>
      </description-html>
      </property>

   </fault>
   <fault name="DeviceControllerNotSupported"
      type-id="vim.fault.DeviceControllerNotSupported"
      vmodl-name="vim.fault.DeviceControllerNotSupported"
      version-id-ref="vim.version.version2"
      base-type-id="vim.fault.DeviceNotSupported"
      >
      <description-html>
         <![CDATA[The device in question is supported, but the device-controller
  combination is not supported.
  <p>
  If this fault is returned as a subfault of
  DisallowedMigrationDeviceAttached, this indicates that although
  this device-controller combination may be supported on the
  destination host, the hosts do not support the requested migration
  of the virtual machine while using this device and controller.
  <p>]]>
      </description-html>
            <property name="controller" type-id-ref="java.lang.String"
      vmodl-name="controller"
      >
      <description-html>
         <![CDATA[The type of the controller.]]>
      </description-html>
      </property>

   </fault>
   <fault name="DeviceHotPlugNotSupported"
      type-id="vim.fault.DeviceHotPlugNotSupported"
      vmodl-name="vim.fault.DeviceHotPlugNotSupported"
      version-id-ref="vim.version.version4"
      base-type-id="vim.fault.InvalidDeviceSpec"
      >
      <description-html>
         <![CDATA[A DeviceHotPlugNotSupported exception is thrown if the specified device
  cannot be hot-added or hot-removed from the virtual machine
  at this time.]]>
      </description-html>
   </fault>
   <fault name="DeviceNotFound"
      type-id="vim.fault.DeviceNotFound"
      vmodl-name="vim.fault.DeviceNotFound"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.InvalidDeviceSpec"
      >
      <description-html>
         <![CDATA[A DeviceNotFound exception is thrown if
  a device to be edited or removed
  cannot be found. Most likely, the client incorrectly passed
  the device key.]]>
      </description-html>
   </fault>
   <fault name="DeviceUnsupportedForVmPlatform"
      type-id="vim.fault.DeviceUnsupportedForVmPlatform"
      vmodl-name="vim.fault.DeviceUnsupportedForVmPlatform"
      version-id-ref="vim.version.version4"
      base-type-id="vim.fault.InvalidDeviceSpec"
      >
      <description-html>
         <![CDATA[A DeviceUnsupportedForVmPlatform exception is thrown if the specified device
  is not supported on the platform on which the virtual machine is being
  created/configured. For example, this exception might be thrown if a client
  incorrectly attempts to add a device supported only on ESX Server to a
  virtual machine on a hosted product.]]>
      </description-html>
   </fault>
   <fault name="DeviceUnsupportedForVmVersion"
      type-id="vim.fault.DeviceUnsupportedForVmVersion"
      vmodl-name="vim.fault.DeviceUnsupportedForVmVersion"
      version-id-ref="vim.version.version4"
      base-type-id="vim.fault.InvalidDeviceSpec"
      >
      <description-html>
         <![CDATA[A DeviceUnsupportedForVmVersion exception is thrown if a specific device
  is not supported for a given version of the virtual machine.]]>
      </description-html>
            <property name="currentVersion" type-id-ref="java.lang.String"
      vmodl-name="currentVersion"
      >
      <description-html>
         <![CDATA[The current version of the virtual machine.]]>
      </description-html>
      </property>

            <property name="expectedVersion" type-id-ref="java.lang.String"
      vmodl-name="expectedVersion"
      >
      <description-html>
         <![CDATA[The minimum expected virtual mahcine version needed to
  support this device.]]>
      </description-html>
      </property>

   </fault>
   <fault name="DisallowedDiskModeChange"
      type-id="vim.fault.DisallowedDiskModeChange"
      vmodl-name="vim.fault.DisallowedDiskModeChange"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.InvalidDeviceSpec"
      >
      <description-html>
         <![CDATA[Thrown when the <a href="vim.VirtualMachine.html#reconfigure">ReconfigVM_Task</a> operation
  includes a change to the <a href="vim.vm.device.VirtualDiskOption.DiskMode.html">VirtualDiskMode</a>
  property. This property cannot be changed as long as a virtual machine
  has an existing snapshot.]]>
      </description-html>
   </fault>
   <fault name="GatewayHostNotReachable"
      type-id="vim.fault.GatewayHostNotReachable"
      vmodl-name="vim.fault.GatewayHostNotReachable"
      version-id-ref="vim.version.version10"
      base-type-id="vim.fault.GatewayToHostConnectFault"
      >
      <description-html>
         <![CDATA[GatewayHostNotReachable is thrown by the gateway used to connect to a host,
 if an error occurs while establishing a connection to that host.
 The fault may provide a more detailed message of what caused the problem.]]>
      </description-html>
   </fault>
   <fault name="GatewayToHostAuthFault"
      type-id="vim.fault.GatewayToHostAuthFault"
      vmodl-name="vim.fault.GatewayToHostAuthFault"
      version-id-ref="vim.version.version10"
      base-type-id="vim.fault.GatewayToHostConnectFault"
      >
      <description-html>
         <![CDATA[GatewayToHostAuthFault is thrown by the gateway used to communicate with a
 host, if the gateway cannot authenticate to the host with the provided
 authentication data.

 The fault provides information, which of the properties given in the
 authentication data are invalid or if more properties are required.<br>See <a href="vim.host.GatewaySpec.html#hostAuthParams">hostAuthParams</a><br>]]>
      </description-html>
            <property name="invalidProperties" type-id-ref="java.lang.String"
      vmodl-name="invalidProperties"
      is-array="true"
      >
      <description-html>
         <![CDATA[List of properties that have been provided in the authentication data
 but have wrong values.]]>
      </description-html>
      </property>

            <property name="missingProperties" type-id-ref="java.lang.String"
      vmodl-name="missingProperties"
      is-array="true"
      >
      <description-html>
         <![CDATA[List of properties that do not have their values specified in the
 provided authentication data but are required.]]>
      </description-html>
      </property>

   </fault>
   <fault name="InvalidController"
      type-id="vim.fault.InvalidController"
      vmodl-name="vim.fault.InvalidController"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.InvalidDeviceSpec"
      >
      <description-html>
         <![CDATA[An InvalidController exception is thrown if
  a device refers to a controller that cannot be found.
  For example, an exception might be thrown if the client
  incorrectly passes a controller key,
  or if the client did not specify a controller where one is
  required (such as for disks or CD-ROMs).]]>
      </description-html>
            <property name="controllerKey" type-id-ref="INT"
      vmodl-name="controllerKey"
      >
      </property>

   </fault>
   <fault name="InvalidDeviceBacking"
      type-id="vim.fault.InvalidDeviceBacking"
      vmodl-name="vim.fault.InvalidDeviceBacking"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.InvalidDeviceSpec"
      >
      <description-html>
         <![CDATA[An InvalidDeviceBacking exception is thrown if
  a device with an incompatible
  device backing is added or edited.]]>
      </description-html>
   </fault>
   <fault name="InvalidDeviceOperation"
      type-id="vim.fault.InvalidDeviceOperation"
      vmodl-name="vim.fault.InvalidDeviceOperation"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.InvalidDeviceSpec"
      >
      <description-html>
         <![CDATA[An InvalidDeviceOperation exception is thrown if
  virtual machine creation or configuration fails because an invalid
  operation is attempted on the given device.]]>
      </description-html>
            <property name="badOp" type-id-ref="vim.vm.device.VirtualDeviceSpec.Operation"
      vmodl-name="badOp"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The invalid operation attempted.]]>
      </description-html>
      </property>

            <property name="badFileOp" type-id-ref="vim.vm.device.VirtualDeviceSpec.FileOperation"
      vmodl-name="badFileOp"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The invalid file operation attempted.]]>
      </description-html>
      </property>

   </fault>
   <fault name="InvalidHostConnectionState"
      type-id="vim.fault.InvalidHostConnectionState"
      vmodl-name="vim.fault.InvalidHostConnectionState"
      version-id-ref="vim.version.version8"
      base-type-id="vim.fault.InvalidHostState"
      >
      <description-html>
         <![CDATA[The host has an invalid connection state.]]>
      </description-html>
   </fault>
   <fault name="OvfConnectedDevice"
      type-id="vim.fault.OvfConnectedDevice"
      vmodl-name="vim.fault.OvfConnectedDevice"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.OvfHardwareExport"
      >
   </fault>
   <fault name="OvfConnectedDeviceFloppy"
      type-id="vim.fault.OvfConnectedDeviceFloppy"
      vmodl-name="vim.fault.OvfConnectedDeviceFloppy"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.OvfConnectedDevice"
      >
            <property name="filename" type-id-ref="java.lang.String"
      vmodl-name="filename"
      >
      <description-html>
         <![CDATA[The filename of the floppy image]]>
      </description-html>
      </property>

   </fault>
   <fault name="OvfConnectedDeviceIso"
      type-id="vim.fault.OvfConnectedDeviceIso"
      vmodl-name="vim.fault.OvfConnectedDeviceIso"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.OvfConnectedDevice"
      >
            <property name="filename" type-id-ref="java.lang.String"
      vmodl-name="filename"
      >
      <description-html>
         <![CDATA[The filename of the ISO]]>
      </description-html>
      </property>

   </fault>
   <fault name="OvfDuplicateElement"
      type-id="vim.fault.OvfDuplicateElement"
      vmodl-name="vim.fault.OvfDuplicateElement"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.OvfElement"
      >
      <description-html>
         <![CDATA[OvfDuplicateElement is thrown if Ovf descriptor contains an invalid duplicate element.]]>
      </description-html>
   </fault>
   <fault name="OvfDuplicatedElementBoundary"
      type-id="vim.fault.OvfDuplicatedElementBoundary"
      vmodl-name="vim.fault.OvfDuplicatedElementBoundary"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.OvfElement"
      >
      <description-html>
         <![CDATA[If the Ovf descriptor element have duplicated element bound.]]>
      </description-html>
            <property name="boundary" type-id-ref="java.lang.String"
      vmodl-name="boundary"
      >
      <description-html>
         <![CDATA[Name of duplicated boundary]]>
      </description-html>
      </property>

   </fault>
   <fault name="OvfDuplicatedPropertyIdExport"
      type-id="vim.fault.OvfDuplicatedPropertyIdExport"
      vmodl-name="vim.fault.OvfDuplicatedPropertyIdExport"
      version-id-ref="vim.version.version7"
      base-type-id="vim.fault.OvfExport"
      >
      <description-html>
         <![CDATA[Two or more user-configurable properties are
   found with the same fully-qualified property
   name.]]>
      </description-html>
            <property name="fqid" type-id-ref="java.lang.String"
      vmodl-name="fqid"
      >
      <description-html>
         <![CDATA[The fully qualified property id.]]>
      </description-html>
      </property>

   </fault>
   <fault name="OvfDuplicatedPropertyIdImport"
      type-id="vim.fault.OvfDuplicatedPropertyIdImport"
      vmodl-name="vim.fault.OvfDuplicatedPropertyIdImport"
      version-id-ref="vim.version.version7"
      base-type-id="vim.fault.OvfExport"
      >
      <description-html>
         <![CDATA[Two or more user-configurable properties are
   found with the same fully-qualified property
   name.]]>
      </description-html>
   </fault>
   <fault name="OvfNoSpaceOnController"
      type-id="vim.fault.OvfNoSpaceOnController"
      vmodl-name="vim.fault.OvfNoSpaceOnController"
      version-id-ref="vim.version.version7"
      base-type-id="vim.fault.OvfUnsupportedElement"
      >
      <description-html>
         <![CDATA[If the hardware element (RASD) point to a parent controller where there is no
 space left.]]>
      </description-html>
            <property name="parent" type-id-ref="java.lang.String"
      vmodl-name="parent"
      >
      <description-html>
         <![CDATA[The parent reference]]>
      </description-html>
      </property>

   </fault>
   <fault name="PhysCompatRDMNotSupported"
      type-id="vim.fault.PhysCompatRDMNotSupported"
      vmodl-name="vim.fault.PhysCompatRDMNotSupported"
      version-id-ref="vim.version.version1"
      base-type-id="vim.fault.RDMNotSupported"
      >
      <description-html>
         <![CDATA[The virtual machine is configured with a Raw Disk Mapping in physical compatibility mode.
 This mode is not supported on the host.]]>
      </description-html>
   </fault>
   <fault name="UnusedVirtualDiskBlocksNotScrubbed"
      type-id="vim.fault.UnusedVirtualDiskBlocksNotScrubbed"
      vmodl-name="vim.fault.UnusedVirtualDiskBlocksNotScrubbed"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.DeviceBackingNotSupported"
      >
      <description-html>
         <![CDATA[The unused disk blocks of the specified virtual disk have not been
  scrubbed on the file system.
  <p>
  Typically, this fault is returned as part of a parent fault like
  <a href="vim.fault.VmConfigIncompatibleForFaultTolerance.html">VmConfigIncompatibleForFaultTolerance</a>, indicating that the
  unused blocks of the virtual disk must be zeroed-out on the file system before
  before fault tolerance can be enabled on the associated virtual machine.
  </p>]]>
      </description-html>
   </fault>
   <fault name="VirtualDiskBlocksNotFullyProvisioned"
      type-id="vim.fault.VirtualDiskBlocksNotFullyProvisioned"
      vmodl-name="vim.fault.VirtualDiskBlocksNotFullyProvisioned"
      version-id-ref="vim.version.version5"
      base-type-id="vim.fault.DeviceBackingNotSupported"
      >
      <description-html>
         <![CDATA[The disk blocks of the specified virtual disk have not been fully
  provisioned on the file system.
  <p>
  Typically, this fault is returned as part of a parent fault like
  <a href="vim.fault.VmConfigIncompatibleForFaultTolerance.html">VmConfigIncompatibleForFaultTolerance</a>, indicating that the
  disk blocks of the virtual disk must be fully provisioned on the file system
  before fault tolerance can be enabled on the associated virtual machine.
  </p>]]>
      </description-html>
   </fault>
   <fault name="DVPortNotSupported"
      type-id="vim.fault.DVPortNotSupported"
      vmodl-name="vim.fault.DVPortNotSupported"
      version-id-ref="vim.version.version6"
      base-type-id="vim.fault.DeviceBackingNotSupported"
      >
      <description-html>
         <![CDATA[The virtual machine is configured to use a DVPort, which is not
 supported on the host.  This could be because the host
 does not support VDS at all, or because the host has not
 joined a VDS.]]>
      </description-html>
   </fault>
   </faults>
   <data-objects>
   <data-object name="FaultToleranceVMConfigSpec"
      type-id="vim.vm.FaultToleranceVMConfigSpec"
      vmodl-name="vim.vm.FaultToleranceVMConfigSpec"
      version-id-ref="vim.version.version10"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[FaultToleranceVMConfigSpec contains information about placement of
 fault tolerant VM.]]>
      </description-html>
            <property name="vmConfig" type-id-ref="vim.Datastore"
      vmodl-name="vmConfig"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Datastore for the configuration file for the virtual machine, e.g., the
 .vmx file. This also implicitly defines the configuration directory.]]>
      </description-html>
      </property>

            <property name="disks" type-id-ref="vim.vm.FaultToleranceVMConfigSpec.FaultToleranceDiskSpec"
      vmodl-name="disks"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Array of disks associated with the VM]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.vm.FaultToleranceVMConfigSpec.FaultToleranceDiskSpec</nested-type-id-ref>
   </data-object>
   <data-object name="StringPolicy"
      type-id="vim.StringPolicy"
      vmodl-name="vim.StringPolicy"
      version-id-ref="vim.version.version5"
      base-type-id="vim.InheritablePolicy"
      >
      <description-html>
         <![CDATA[The string type of setting or configuration that may get an
  inherited value.]]>
      </description-html>
            <property name="value" type-id-ref="java.lang.String"
      vmodl-name="value"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The String value that is either set or inherited.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualEthernetCardDistributedVirtualPortBackingInfo"
      type-id="vim.vm.device.VirtualEthernetCard.DistributedVirtualPortBackingInfo"
      vmodl-name="vim.vm.device.VirtualEthernetCard.DistributedVirtualPortBackingInfo"
      enclosing-type-id-ref="vim.vm.device.VirtualEthernetCard"
      version-id-ref="vim.version.version5"
      base-type-id="vim.vm.device.VirtualDevice.BackingInfo"
      >
      <description-html>
         <![CDATA[The <a href="vim.vm.device.VirtualEthernetCard.DistributedVirtualPortBackingInfo.html">VirtualEthernetCardDistributedVirtualPortBackingInfo</a>
 data object defines backing for a virtual Ethernet card that connects
 to a distributed virtual switch port or portgroup.]]>
      </description-html>
            <property name="port" type-id-ref="vim.dvs.PortConnection"
      vmodl-name="port"
      >
      <description-html>
         <![CDATA[<a href="vim.dvs.DistributedVirtualPort.html">DistributedVirtualPort</a> or <a href="vim.dvs.DistributedVirtualPortgroup.html">DistributedVirtualPortgroup</a>
  connection. To specify a port connection, set the
  <a href="vim.dvs.PortConnection.html#portKey">portKey</a> property.
  To specify a portgroup connection, set the
  <a href="vim.dvs.PortConnection.html#portgroupKey">portgroupKey</a> property.
  <p>
  This property will be unset during Virtual Machine or template cloning
  operation unless it's set to a <a href="vim.dvs.PortConnection.html">DistributedVirtualSwitchPortConnection</a>
  object and the portgroup is a late binding portgroup.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="KeyValue"
      type-id="vim.KeyValue"
      vmodl-name="vim.KeyValue"
      version-id-ref="vim.version.version2"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Non-localized key/value pair]]>
      </description-html>
            <property name="key" type-id-ref="java.lang.String"
      vmodl-name="key"
      >
      <description-html>
         <![CDATA[Key.]]>
      </description-html>
      </property>

            <property name="value" type-id-ref="java.lang.String"
      vmodl-name="value"
      >
      <description-html>
         <![CDATA[Value.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualDiskFlatVer1BackingInfo"
      type-id="vim.vm.device.VirtualDisk.FlatVer1BackingInfo"
      vmodl-name="vim.vm.device.VirtualDisk.FlatVer1BackingInfo"
      enclosing-type-id-ref="vim.vm.device.VirtualDisk"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.device.VirtualDevice.FileBackingInfo"
      >
      <description-html>
         <![CDATA[This data object type contains information about backing a virtual disk by
  using a virtual disk file on the host, in the flat file format used by
  GSX Server 2.x.
  <p>
  Flat disks are allocated when created, unlike sparse disks, which
  grow as needed.]]>
      </description-html>
            <property name="diskMode" type-id-ref="java.lang.String"
      vmodl-name="diskMode"
      >
      <description-html>
         <![CDATA[The disk persistence mode. Valid modes are:
  <ul>
  <li>vim.vm.device.VirtualDiskOption.DiskMode#persistent
  <li>vim.vm.device.VirtualDiskOption.DiskMode#nonpersistent
  <li>vim.vm.device.VirtualDiskOption.DiskMode#undoable
  </ul><br>See <a href="vim.vm.device.VirtualDiskOption.DiskMode.html">VirtualDiskMode</a><br>]]>
      </description-html>
      </property>

            <property name="split" type-id-ref="BOOLEAN"
      vmodl-name="split"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Flag to indicate the type of virtual disk file: split or monolithic.
  If true, the virtual disk is stored in multiple files, each 2GB.]]>
      </description-html>
      </property>

            <property name="writeThrough" type-id-ref="BOOLEAN"
      vmodl-name="writeThrough"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Flag to indicate whether writes should go directly to the file system
  or should be buffered.]]>
      </description-html>
      </property>

            <property name="contentId" type-id-ref="java.lang.String"
      vmodl-name="contentId"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Content ID of the virtual disk file, if available.
 <p>
 A content ID indicates the logical contents of the disk backing and its parents.
 <p>
 This property is only guaranteed to be up to date if this disk backing is not
 currently being written to by any virtual machine.
 <p>
 The only supported operation is comparing if two content IDs are equal or not.
 The guarantee provided by the content ID is that if two disk backings have the
 same content ID and are not currently being written to, then reads issued from
 the guest operating system to those disk backings will return the same data.]]>
      </description-html>
      </property>

            <property name="parent" type-id-ref="vim.vm.device.VirtualDisk.FlatVer1BackingInfo"
      vmodl-name="parent"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The parent of this virtual disk file, if this is a delta disk backing.
 This will be unset if this is not a delta disk backing.
 <p>
 A delta disk backing is a way to preserve a virtual disk backing
 at some point in time.  A delta disk backing is a file backing which in
 turn points to the original virtual disk backing (the parent).  After a delta
 disk backing is added, all writes go to the delta disk backing.  All reads
 first try the delta disk backing and then try the parent backing if needed.
 <p>
 A delta disk backing can be added to a disk either implicitly during
 snapshot operations, or explicitly during create or reconfigure of the virtual
 machine.
 <p>
 Note that the type of the backing is consistent throughout the chain; any new
 delta disk backing which is added is of the same type as the original disk .
 Also note that since the parent backing is not being written to,
 it is possible that the parent backing may be shared among multiple
 disks belonging to multiple virtual machines.
 <p>
 During virtual machine <a href="vim.Folder.html#createVm">CreateVM_Task</a> and
 <a href="vim.VirtualMachine.html#reconfigure">ReconfigVM_Task</a> this property is
 only checked if the <a href="vim.vm.device.VirtualDeviceSpec.html">VirtualDeviceConfigSpec</a> specifies
 an add operation with a
 create file operation.
 In this case, a new delta disk backing is created which points to the parent
 disk backing.  Only the <a href="vim.vm.device.VirtualDevice.FileBackingInfo.html#fileName">fileName</a>
 property is important; all other properties will be ignored.  The parent backing
 is assumed to exist and will not be recursively created.
 <p>
 This property may only be set if
 <a href="vim.host.Capability.html#deltaDiskBackingsSupported">deltaDiskBackingsSupported</a>
 is true.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DVPortgroupReconfiguredEvent"
      type-id="vim.event.DVPortgroupReconfiguredEvent"
      vmodl-name="vim.event.DVPortgroupReconfiguredEvent"
      version-id-ref="vim.version.version5"
      base-type-id="vim.event.DVPortgroupEvent"
      >
      <description-html>
         <![CDATA[Two distributed virtual portgroup was reconfigured.]]>
      </description-html>
            <property name="configSpec" type-id-ref="vim.dvs.DistributedVirtualPortgroup.ConfigSpec"
      vmodl-name="configSpec"
      >
      <description-html>
         <![CDATA[The reconfiguration spec.]]>
      </description-html>
      </property>

            <property name="configChanges" type-id-ref="vim.event.ChangesInfoEventArgument"
      vmodl-name="configChanges"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The configuration values changed during the reconfiguration.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ClusterDasVmConfigInfo"
      type-id="vim.cluster.DasVmConfigInfo"
      vmodl-name="vim.cluster.DasVmConfigInfo"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The <a href="vim.cluster.DasVmConfigInfo.html">ClusterDasVmConfigInfo</a> data object contains
  the HA configuration for a single virtual machine.
  <p>
  All fields are optional. If you set the <code>modify</code>
  parameter to <code>true</code> when you call
  <a href="vim.ComputeResource.html#reconfigureEx">ReconfigureComputeResource_Task</a>, an unset property has no effect
  on the existing property value in the cluster configuration on the Server.
  If you set the <code>modify</code> parameter to <code>false</code> when you
  reconfigure a cluster, the cluster configuration is reverted to the default
  values, then the new configuration values are applied.]]>
      </description-html>
            <property name="key" type-id-ref="vim.VirtualMachine"
      vmodl-name="key"
      >
      <description-html>
         <![CDATA[Reference to the virtual machine.]]>
      </description-html>
      </property>

            <property name="restartPriority" type-id-ref="vim.cluster.DasVmConfigInfo.Priority"
      vmodl-name="restartPriority"
      is-deprecated="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Restart priority for a virtual machine.
  <p>
  If there is nothing specified here, then the defaults are picked up from
  <a href="vim.cluster.DasConfigInfo.html#defaultVmSettings">defaultVmSettings</a>.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of VI API 2.5, use
              <a href="vim.cluster.DasVmConfigInfo.html#dasSettings">dasSettings</a>.<a href="vim.cluster.DasVmSettings.html#restartPriority">restartPriority</a>.
              If you specify <a href="vim.cluster.DasVmConfigInfo.html#restartPriority">restartPriority</a> here and in
              <a href="vim.cluster.DasVmSettings.html">ClusterDasVmSettings</a>, the value in <a href="vim.cluster.DasVmSettings.html">ClusterDasVmSettings</a>
              has precedence.]]>
      </deprecated-html>
      </property>

            <property name="powerOffOnIsolation" type-id-ref="BOOLEAN"
      vmodl-name="powerOffOnIsolation"
      is-deprecated="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Flag to indicate whether or not the virtual machine should be powered off if a
  host determines that it is isolated from the rest of the compute resource.
  <p>
  If there is nothing specified here, then the defaults are picked up from
  <a href="vim.cluster.DasConfigInfo.html#defaultVmSettings">defaultVmSettings</a>.
  <p>]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of VI API 2.5, use
              <a href="vim.cluster.DasVmConfigInfo.html#dasSettings">dasSettings</a>.<a href="vim.cluster.DasVmSettings.html#isolationResponse">isolationResponse</a>.
              If you specify both <a href="vim.cluster.DasVmConfigInfo.html#powerOffOnIsolation">powerOffOnIsolation</a> and
              <a href="vim.cluster.DasVmSettings.html#isolationResponse">isolationResponse</a>, the value in
              <a href="vim.cluster.DasVmSettings.html#isolationResponse">isolationResponse</a> has precedence.]]>
      </deprecated-html>
      </property>

            <property name="dasSettings" type-id-ref="vim.cluster.DasVmSettings"
      vmodl-name="dasSettings"
      version-id-ref="vim.version.version2"
      is-optional="true"
      >
      <description-html>
         <![CDATA[HA settings that apply to this virtual machine.
  <p>
  Values specified in this object override the cluster-wide
  defaults for virtual machines (<a href="vim.cluster.DasConfigInfo.html#defaultVmSettings">defaultVmSettings</a>).]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.cluster.DasVmConfigInfo.Priority</nested-type-id-ref>
   </data-object>
   <data-object name="HostFibreChannelTargetTransport"
      type-id="vim.host.FibreChannelTargetTransport"
      vmodl-name="vim.host.FibreChannelTargetTransport"
      version-id-ref="vim.version.version1"
      base-type-id="vim.host.TargetTransport"
      >
      <description-html>
         <![CDATA[Fibre Channel transport information about a SCSI target.]]>
      </description-html>
            <property name="portWorldWideName" type-id-ref="LONG"
      vmodl-name="portWorldWideName"
      >
      <description-html>
         <![CDATA[The world wide port name of the target.]]>
      </description-html>
      </property>

            <property name="nodeWorldWideName" type-id-ref="LONG"
      vmodl-name="nodeWorldWideName"
      >
      <description-html>
         <![CDATA[The world wide node name of the target.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="GuestFileInfo"
      type-id="vim.vm.guest.FileManager.FileInfo"
      vmodl-name="vim.vm.guest.FileManager.FileInfo"
      enclosing-type-id-ref="vim.vm.guest.FileManager"
      version-id-ref="vim.version.version7"
      base-type-id="vmodl.DynamicData"
      >
            <property name="path" type-id-ref="java.lang.String"
      vmodl-name="path"
      >
      <description-html>
         <![CDATA[The complete path to the file]]>
      </description-html>
      </property>

            <property name="type" type-id-ref="java.lang.String"
      vmodl-name="type"
      >
      <description-html>
         <![CDATA[The file type, one of <a href="vim.vm.guest.FileManager.FileInfo.FileType.html">GuestFileType</a>]]>
      </description-html>
      </property>

            <property name="size" type-id-ref="LONG"
      vmodl-name="size"
      >
      <description-html>
         <![CDATA[The file size in bytes]]>
      </description-html>
      </property>

            <property name="attributes" type-id-ref="vim.vm.guest.FileManager.FileAttributes"
      vmodl-name="attributes"
      >
      <description-html>
         <![CDATA[Different attributes of a file.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.vm.guest.FileManager.FileInfo.FileType</nested-type-id-ref>
   </data-object>
   <data-object name="HostIpRouteConfig"
      type-id="vim.host.IpRouteConfig"
      vmodl-name="vim.host.IpRouteConfig"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[IP Route Configuration.  All IPv4 addresses, subnet addresses, and
  netmasks are specified as strings using dotted decimal notation.
  For example, "192.0.2.1".
  IPv6 addresses are 128-bit addresses represented
  as eight fields of up to four hexadecimal digits. A colon separates each
  field (:). For example, 2001:DB8:101::230:6eff:fe04:d9ff. The address can
  also consist of  symbol '::' to represent multiple 16-bit groups of
  contiguous 0's only once in an address as described in RFC 2373.]]>
      </description-html>
            <property name="defaultGateway" type-id-ref="java.lang.String"
      vmodl-name="defaultGateway"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The default gateway address.]]>
      </description-html>
      </property>

            <property name="gatewayDevice" type-id-ref="java.lang.String"
      vmodl-name="gatewayDevice"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The gateway device. This applies to service console gateway only, it
 is ignored otherwise.]]>
      </description-html>
      </property>

            <property name="ipV6DefaultGateway" type-id-ref="java.lang.String"
      vmodl-name="ipV6DefaultGateway"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The default ipv6 gateway address]]>
      </description-html>
      </property>

            <property name="ipV6GatewayDevice" type-id-ref="java.lang.String"
      vmodl-name="ipV6GatewayDevice"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The ipv6 gateway device. This applies to service console gateway only, it]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="PropertyChange"
      type-id="vmodl.query.PropertyCollector.Change"
      vmodl-name="vmodl.query.PropertyCollector.Change"
      enclosing-type-id-ref="vmodl.query.PropertyCollector"
      version-id-ref="vmodl.query.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Describes a change to a property.]]>
      </description-html>
            <property name="name" type-id-ref="vmodl.PropertyPath"
      vmodl-name="name"
      >
      <description-html>
         <![CDATA[Property or nested property to which the change applies.  Nested
  properties are specified by paths; for example,

  <ul>
  <li>foo.bar
  <li>foo.arProp["key val"]
  <li>foo.arProp["key val"].baz
  </ul>]]>
      </description-html>
      </property>

            <property name="op" type-id-ref="vmodl.query.PropertyCollector.Change.Op"
      vmodl-name="op"
      >
      <description-html>
         <![CDATA[Change operation for the property. Valid values are:
  <table>
  <dt>add</dt>
  <dd>The property is a collection and the change inserts an element
      into the collection.</dd>
  <dt>remove</dt>
  <dd>The property is a collection and the change deletes an element
      from the collection.</dd>
  <dt>assign</dt>
  <dd>The change is a new value for the property.</dd>
  <dt>indirectRemove</dt>
  <dd>The property was removed because a containing property was removed
      or unset</dd>
  </table>]]>
      </description-html>
      </property>

            <property name="val" type-id-ref="vmodl.Any"
      vmodl-name="val"
      is-optional="true"
      >
      <description-html>
         <![CDATA[New value for the property when "op" is either "add" or "assign".]]>
      </description-html>
      </property>

      <nested-type-id-ref>vmodl.query.PropertyCollector.Change.Op</nested-type-id-ref>
   </data-object>
   <data-object name="HostSystemSwapConfigurationSystemSwapOption"
      type-id="vim.host.SystemSwapConfiguration.SystemSwapOption"
      vmodl-name="vim.host.SystemSwapConfiguration.SystemSwapOption"
      enclosing-type-id-ref="vim.host.SystemSwapConfiguration"
      version-id-ref="vim.version.version8"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Base class for all system swap options.

 This class is not supposed to be used directly.<br/>
 These values are to be used in a <a href="vim.host.SystemSwapConfiguration.html#option">option</a>
 array.]]>
      </description-html>
            <property name="key" type-id-ref="INT"
      vmodl-name="key"
      >
      <description-html>
         <![CDATA[Specifies the order the options are preferred among each other.

 The lower the value the more important.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostNvmeTopologyInterface"
      type-id="vim.host.NvmeTopology.Interface"
      vmodl-name="vim.host.NvmeTopology.Interface"
      enclosing-type-id-ref="vim.host.NvmeTopology"
      version-id-ref="vim.version.v7_0"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object describes the NVME interface that is
  associated with a list of connected NVME controllers.]]>
      </description-html>
            <property name="key" type-id-ref="java.lang.String"
      vmodl-name="key"
      >
      <description-html>
         <![CDATA[The identifier for the NVME interface.]]>
      </description-html>
      </property>

            <property name="adapter" type-id-ref="vim.host.HostBusAdapter"
      vmodl-name="adapter"
      is-link="true"
      >
      <description-html>
         <![CDATA[The link to data for the NVME interface.]]>
      </description-html>
      </property>

            <property name="connectedController" type-id-ref="vim.host.NvmeController"
      vmodl-name="connectedController"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The list of connected NVME controllers.
 <p>
 This list can be empty if am NVME interface is not connected
 to any controllers. Each NvmeController object contains
 a list of its attached NVME namespaces in
 <a href="vim.host.NvmeController.html#attachedNamespace">attachedNamespace</a>.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostDigestInfo"
      type-id="vim.host.DigestInfo"
      vmodl-name="vim.host.DigestInfo"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object type describes the digest information]]>
      </description-html>
            <property name="digestMethod" type-id-ref="java.lang.String"
      vmodl-name="digestMethod"
      >
      <description-html>
         <![CDATA[Method in which the digest value is calculated. The set of possible
  values is described in <a href="vim.host.DigestInfo.DigestMethodType.html">HostDigestInfoDigestMethodType</a>.]]>
      </description-html>
      </property>

            <property name="digestValue" type-id-ref="BYTE"
      vmodl-name="digestValue"
      is-array="true"
      >
      <description-html>
         <![CDATA[The variable length byte array containing the digest value calculated by
  the specified digestMethod.]]>
      </description-html>
      </property>

            <property name="objectName" type-id-ref="java.lang.String"
      vmodl-name="objectName"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The name of the object from which this digest value is calcaulated.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.host.DigestInfo.DigestMethodType</nested-type-id-ref>
   </data-object>
   <data-object name="DvsUpgradedEvent"
      type-id="vim.event.DvsUpgradedEvent"
      vmodl-name="vim.event.DvsUpgradedEvent"
      version-id-ref="vim.version.version5"
      base-type-id="vim.event.DvsEvent"
      >
      <description-html>
         <![CDATA[The distributed virtual switch was upgraded.]]>
      </description-html>
            <property name="productInfo" type-id-ref="vim.dvs.ProductSpec"
      vmodl-name="productInfo"
      >
      <description-html>
         <![CDATA[The product info of the upgrade.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualCdromIsoBackingInfo"
      type-id="vim.vm.device.VirtualCdrom.IsoBackingInfo"
      vmodl-name="vim.vm.device.VirtualCdrom.IsoBackingInfo"
      enclosing-type-id-ref="vim.vm.device.VirtualCdrom"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.device.VirtualDevice.FileBackingInfo"
      >
      <description-html>
         <![CDATA[The VirtualCdrom.IsoBackingInfo data class represents
  an ISO backing for a virtual CD-ROM.]]>
      </description-html>
   </data-object>
   <data-object name="VMwareVspanSession"
      type-id="vim.dvs.VmwareDistributedVirtualSwitch.VspanSession"
      vmodl-name="vim.dvs.VmwareDistributedVirtualSwitch.VspanSession"
      enclosing-type-id-ref="vim.dvs.VmwareDistributedVirtualSwitch"
      version-id-ref="vim.version.version7"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The <a href="vim.dvs.VmwareDistributedVirtualSwitch.VspanSession.html">VMwareVspanSession</a> data object
  defines the configuration of a VLAN Services and Protocols for Advanced Networks
  (VSPAN) session. You use a VSPAN session for the following operations:
  <ul>
  <li>To mirror network traffic (inbound/outbound) from a set of source
  entities to a set of destination entities.</li>
  <li>To assist in troubleshooting.</li>
  <li>As input for security and other network analysis appliances.
  </ul>
  <p>
  The type of entities that you can specify as source or destination is determined
  by the session type. You can use uplink distributed virtual ports only for
  mixed destination mirror VSPAN sessions (mixedDestMirror).

  For all sessions except mixedDestMirror sessions, you cannot
  use uplink distributed virtual ports as destination ports.

  sessionType is required for vSphere Distributed Switch 5.1 and later,
  ignored for prior version if set.
  </p>

  <table style="border:1 width="100%">
  <tr style="">
     <td style="text-transform:uppercase; font-size:10px;">Session Type</th>
     <td style="text-transform:uppercase; font-size:10px;">Source</th>
     <td style="text-transform:uppercase; font-size:10px;">Destination </th>
  </tr>
  <tr>
     <td>mixedDestMirror</td>
     <td>Distributed Ports</td>
     <td>Distributed Ports + Uplink Ports Name</td>
  </tr>
  <tr>
     <td>dvPortMirror</td>
     <td>Distributed Ports</td>
     <td>Distributed Ports</td>
  </tr>

  <tr>
     <td>remoteMirrorSource</td>
     <td>Distributed Ports</td>
     <td>Uplink Ports Name</td>
  </tr>

  <tr>
     <td>remoteMirrorDest</td>
     <td>VLAN</td>
     <td>Distributed Ports</td>
  </tr>

  <tr>
     <td>encapRemoteMirrorSource</td>
     <td>Distributed Ports</td>
     <td>IP address</td>
  </tr>

  </table>]]>
      </description-html>
            <property name="key" type-id-ref="java.lang.String"
      vmodl-name="key"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The generated key as the identifier for the session.]]>
      </description-html>
      </property>

            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The display name.]]>
      </description-html>
      </property>

            <property name="description" type-id-ref="java.lang.String"
      vmodl-name="description"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The description for the session.]]>
      </description-html>
      </property>

            <property name="enabled" type-id-ref="BOOLEAN"
      vmodl-name="enabled"
      >
      <description-html>
         <![CDATA[Whether the session is enabled.]]>
      </description-html>
      </property>

            <property name="sourcePortTransmitted" type-id-ref="vim.dvs.VmwareDistributedVirtualSwitch.VspanPorts"
      vmodl-name="sourcePortTransmitted"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Source ports for which transmitted packets are mirrored.]]>
      </description-html>
      </property>

            <property name="sourcePortReceived" type-id-ref="vim.dvs.VmwareDistributedVirtualSwitch.VspanPorts"
      vmodl-name="sourcePortReceived"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Source ports for which received packets are mirrored.]]>
      </description-html>
      </property>

            <property name="destinationPort" type-id-ref="vim.dvs.VmwareDistributedVirtualSwitch.VspanPorts"
      vmodl-name="destinationPort"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Destination ports that received the mirrored packets.
  You cannot use wild card ports as destination ports. If <a href="vim.dvs.VmwareDistributedVirtualSwitch.VspanPorts.html#wildcardPortConnecteeType">wildcardPortConnecteeType</a>
  is set in the value, the reconfigure
  operation will raise a fault. Also any port designated in the value of
  this property can not match the wild card source port in any of the
  Distributed Port Mirroring session.]]>
      </description-html>
      </property>

            <property name="encapsulationVlanId" type-id-ref="INT"
      vmodl-name="encapsulationVlanId"
      is-optional="true"
      >
      <description-html>
         <![CDATA[VLAN ID used to encapsulate the mirrored traffic.]]>
      </description-html>
      </property>

            <property name="stripOriginalVlan" type-id-ref="BOOLEAN"
      vmodl-name="stripOriginalVlan"
      >
      <description-html>
         <![CDATA[Whether to strip the original VLAN tag.  if false, the original VLAN tag
  will be preserved on the mirrored traffic.  If <a href="vim.dvs.VmwareDistributedVirtualSwitch.VspanSession.html#encapsulationVlanId">encapsulationVlanId</a>
  has been set and this property is false, the frames will be double tagged
  with the original VLAN ID as the inner tag.]]>
      </description-html>
      </property>

            <property name="mirroredPacketLength" type-id-ref="INT"
      vmodl-name="mirroredPacketLength"
      is-optional="true"
      >
      <description-html>
         <![CDATA[An integer that describes how much of each frame to mirror. If unset, all
  of the frame would be mirrored.  Setting this property to a smaller value
  is useful when the consumer will look only at the headers.
  The value cannot be less than 60.]]>
      </description-html>
      </property>

            <property name="normalTrafficAllowed" type-id-ref="BOOLEAN"
      vmodl-name="normalTrafficAllowed"
      >
      <description-html>
         <![CDATA[Whether or not destination ports can send and receive "normal" traffic.
  Setting this to false will make mirror ports be used solely for mirroring
  and not double as normal access ports.]]>
      </description-html>
      </property>

            <property name="sessionType" type-id-ref="java.lang.String"
      vmodl-name="sessionType"
      version-id-ref="vim.version.version8"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Type of the session. See
  <a href="vim.dvs.VmwareDistributedVirtualSwitch.VspanSessionType.html">VMwareDVSVspanSessionType</a>
  for valid values.
  Default value is mixedDestMirror if unspecified in a VSPAN create operation.]]>
      </description-html>
      </property>

            <property name="samplingRate" type-id-ref="INT"
      vmodl-name="samplingRate"
      version-id-ref="vim.version.version8"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Sampling rate of the session. If its value is n, one of every n
  packets is mirrored.
  Valid values are between 1 to 65535, and default value is 1.]]>
      </description-html>
      </property>

            <property name="encapType" type-id-ref="java.lang.String"
      vmodl-name="encapType"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Encapsulation type of the session. See
  <a href="vim.dvs.VmwareDistributedVirtualSwitch.VspanSessionEncapType.html">VMwareDVSVspanSessionEncapType</a>
  for valid values.
  Default value is encapProtocolGRE if unspecified in a
  VSPAN create operation.]]>
      </description-html>
      </property>

            <property name="erspanId" type-id-ref="INT"
      vmodl-name="erspanId"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[ERSPAN ID of the session.
  Valid values are between 0 to 0x3ff, and default value is 0.
  This value is applicable only if encaptType is
  VspanSessionEncapType#erspan2 or
  VspanSessionEncapType#erspan3]]>
      </description-html>
      </property>

            <property name="erspanCOS" type-id-ref="INT"
      vmodl-name="erspanCOS"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Class of Service of the monitored frame.
  Valid values are between 0 to 7, and default value is 0.
  This value is applicable only if encaptType is
  VspanSessionEncapType#erspan2 or
  VspanSessionEncapType#erspan3]]>
      </description-html>
      </property>

            <property name="erspanGraNanosec" type-id-ref="BOOLEAN"
      vmodl-name="erspanGraNanosec"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Timestamp Granularity.
  If the value is false, timestamp-granularity will be microsecond.
  Otherwise the timestamp-granularity will be nanosecond
  This value is applicable only if encaptType is
  VspanSessionEncapType#erspan3]]>
      </description-html>
      </property>

            <property name="netstack" type-id-ref="java.lang.String"
      vmodl-name="netstack"
      version-id-ref="vim.version.version12"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Netstack instance of the session.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="CustomizationSpec"
      type-id="vim.vm.customization.Specification"
      vmodl-name="vim.vm.customization.Specification"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The Specification data object type contains information required to customize a
  virtual machine when deploying it or migrating it to a new  host.]]>
      </description-html>
            <property name="options" type-id-ref="vim.vm.customization.Options"
      vmodl-name="options"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Optional operations (either LinuxOptions or WinOptions).]]>
      </description-html>
      </property>

            <property name="identity" type-id-ref="vim.vm.customization.IdentitySettings"
      vmodl-name="identity"
      >
      <description-html>
         <![CDATA[Network identity and settings, similar to Microsoft's Sysprep tool. This is a
  Sysprep, LinuxPrep, or SysprepText object.]]>
      </description-html>
      </property>

            <property name="globalIPSettings" type-id-ref="vim.vm.customization.GlobalIPSettings"
      vmodl-name="globalIPSettings"
      >
      <description-html>
         <![CDATA[Global IP settings constitute the IP settings that are not specific to a
  particular virtual network adapter.]]>
      </description-html>
      </property>

            <property name="nicSettingMap" type-id-ref="vim.vm.customization.AdapterMapping"
      vmodl-name="nicSettingMap"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[IP settings that are specific to a particular virtual network adapter. The
  AdapterMapping object maps a network adapter's MAC address to its Adapter
  settings object. May be empty if there are no network adapters, else should
  match number of network adapters in the VM.]]>
      </description-html>
      </property>

            <property name="encryptionKey" type-id-ref="BYTE"
      vmodl-name="encryptionKey"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Byte array containing the public key used to encrypt any passwords stored in the
  specification. Both the client and the server can use this to determine if
  stored passwords can be decrypted by the server or if the passwords need to be
  re-entered and re-encrypted before the specification can be used.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualMachineVFlashModuleInfo"
      type-id="vim.vm.VFlashModuleInfo"
      vmodl-name="vim.vm.VFlashModuleInfo"
      version-id-ref="vim.version.version9"
      base-type-id="vim.vm.TargetInfo"
      >
      <description-html>
         <![CDATA[VFlashModuleInfo class contains information about a vFlash module
  on the host.]]>
      </description-html>
            <property name="vFlashModule" type-id-ref="vim.host.VFlashManager.VFlashCacheConfigInfo.VFlashModuleConfigOption"
      vmodl-name="vFlashModule"
      >
      <description-html>
         <![CDATA[Information about the vFlash module]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualNVMEControllerOption"
      type-id="vim.vm.device.VirtualNVMEControllerOption"
      vmodl-name="vim.vm.device.VirtualNVMEControllerOption"
      version-id-ref="vim.version.version11"
      base-type-id="vim.vm.device.VirtualControllerOption"
      >
      <description-html>
         <![CDATA[VirtualNVMEControllerOption is the data object that contains
 the options for a virtual NVME controller.]]>
      </description-html>
            <property name="numNVMEDisks" type-id-ref="vim.option.IntOption"
      vmodl-name="numNVMEDisks"
      >
      <description-html>
         <![CDATA[Three properties (numNVMEDisks.min, numNVMEDisks.max, and
  numNVMEDisks.defaultValue) define the minimum, maximum, and default
  number of NVME VirtualDisk instances available at any given time in the
  NVME controller. The number of NVME VirtualDisk instances is
  also limited by the number of available namespaces in the NVME controller.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="CustomizationUnknownName"
      type-id="vim.vm.customization.UnknownNameGenerator"
      vmodl-name="vim.vm.customization.UnknownNameGenerator"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.customization.NameGenerator"
      >
      <description-html>
         <![CDATA[Indicates that the name is not specified in advance. The client should prompt the
  user for the value to complete the specification.]]>
      </description-html>
   </data-object>
   <data-object name="ScheduledTaskDescription"
      type-id="vim.scheduler.ScheduledTaskDescription"
      vmodl-name="vim.scheduler.ScheduledTaskDescription"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Static strings for scheduled tasks.  These strings are locale-specific.]]>
      </description-html>
            <property name="action" type-id-ref="vim.TypeDescription"
      vmodl-name="action"
      is-array="true"
      >
      <description-html>
         <![CDATA[Action class descriptions for a scheduled task.]]>
      </description-html>
      </property>

            <property name="schedulerInfo" type-id-ref="vim.scheduler.ScheduledTaskDescription.SchedulerDetail"
      vmodl-name="schedulerInfo"
      is-array="true"
      >
      <description-html>
         <![CDATA[Scheduler class description details.]]>
      </description-html>
      </property>

            <property name="state" type-id-ref="vim.ElementDescription"
      vmodl-name="state"
      is-array="true"
      >
      <description-html>
         <![CDATA[<a href="vim.TaskInfo.State.html">TaskInfo State enum</a>]]>
      </description-html>
      </property>

            <property name="dayOfWeek" type-id-ref="vim.ElementDescription"
      vmodl-name="dayOfWeek"
      is-array="true"
      >
      <description-html>
         <![CDATA[<a href="vim.scheduler.MonthlyByWeekdayTaskScheduler.DayOfWeek.html">MonthlyByWeekdayTaskScheduler Days of the week enum description</a>]]>
      </description-html>
      </property>

            <property name="weekOfMonth" type-id-ref="vim.ElementDescription"
      vmodl-name="weekOfMonth"
      is-array="true"
      >
      <description-html>
         <![CDATA[<a href="vim.scheduler.MonthlyByWeekdayTaskScheduler.WeekOfMonth.html">MonthlyByWeekdayTaskScheduler Week of the month enum description</a>]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.scheduler.ScheduledTaskDescription.SchedulerDetail</nested-type-id-ref>
   </data-object>
   <data-object name="StorageIORMConfigOption"
      type-id="vim.StorageResourceManager.IORMConfigOption"
      vmodl-name="vim.StorageResourceManager.IORMConfigOption"
      enclosing-type-id-ref="vim.StorageResourceManager"
      version-id-ref="vim.version.version6"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Configuration setting ranges for IORMConfigSpec object.]]>
      </description-html>
            <property name="enabledOption" type-id-ref="vim.option.BoolOption"
      vmodl-name="enabledOption"
      >
      <description-html>
         <![CDATA[enabledOption provides default state value for
 <a href="vim.StorageResourceManager.IORMConfigSpec.html#enabled">enabled</a>]]>
      </description-html>
      </property>

            <property name="congestionThresholdOption" type-id-ref="vim.option.IntOption"
      vmodl-name="congestionThresholdOption"
      >
      <description-html>
         <![CDATA[congestionThresholdOption defines value range which can be used for
 <a href="vim.StorageResourceManager.IORMConfigSpec.html#congestionThreshold">congestionThreshold</a>]]>
      </description-html>
      </property>

            <property name="statsCollectionEnabledOption" type-id-ref="vim.option.BoolOption"
      vmodl-name="statsCollectionEnabledOption"
      version-id-ref="vim.version.version7"
      >
      <description-html>
         <![CDATA[statsCollectionEnabledOption provides default value for
 <a href="vim.StorageResourceManager.IORMConfigSpec.html#statsCollectionEnabled">statsCollectionEnabled</a>]]>
      </description-html>
      </property>

            <property name="reservationEnabledOption" type-id-ref="vim.option.BoolOption"
      vmodl-name="reservationEnabledOption"
      version-id-ref="vim.version.version10"
      >
      <description-html>
         <![CDATA[reservationEnabledOption provides default value for
 <a href="vim.StorageResourceManager.IORMConfigSpec.html#reservationEnabled">reservationEnabled</a>]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostProfileConfigInfo"
      type-id="vim.profile.host.HostProfile.ConfigInfo"
      vmodl-name="vim.profile.host.HostProfile.ConfigInfo"
      enclosing-type-id-ref="vim.profile.host.HostProfile"
      version-id-ref="vim.version.version5"
      base-type-id="vim.profile.Profile.ConfigInfo"
      >
      <description-html>
         <![CDATA[The <a href="vim.profile.host.HostProfile.ConfigInfo.html">HostProfileConfigInfo</a> data object
 contains host profile data and information about profile compliance.]]>
      </description-html>
            <property name="applyProfile" type-id-ref="vim.profile.host.HostApplyProfile"
      vmodl-name="applyProfile"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Profile data for host configuration.]]>
      </description-html>
      </property>

            <property name="defaultComplyProfile" type-id-ref="vim.profile.ComplianceProfile"
      vmodl-name="defaultComplyProfile"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Default compliance profile. The ESX Server uses the <code>applyProfile</code>
 (<a href="vim.profile.host.HostProfile.html">HostProfile</a>.<a href="vim.profile.Profile.html#config">Config</a>.<a href="vim.profile.host.HostProfile.ConfigInfo.html#applyProfile">applyProfile</a>)
 to generate the default compliance profile when you create a host profile.
 When the <code>applyProfile</code> is modified, the Server automatically
 updates the compliance profile to match it.]]>
      </description-html>
      </property>

            <property name="defaultComplyLocator" type-id-ref="vim.profile.ComplianceLocator"
      vmodl-name="defaultComplyLocator"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of compliance locators. Each locator specifies an association between
 the <code>applyProfile</code> and the <code>defaultComplyProfile</code>.
 The association identifies a component profile and the expression generated
 by the profile. vSphere clients can use this data to provide contextual
 information to the user.]]>
      </description-html>
      </property>

            <property name="customComplyProfile" type-id-ref="vim.profile.ComplianceProfile"
      vmodl-name="customComplyProfile"
      is-optional="true"
      >
      <description-html>
         <![CDATA[User defined compliance profile.
 Reserved for future use.]]>
      </description-html>
      </property>

            <property name="disabledExpressionList" type-id-ref="java.lang.String"
      vmodl-name="disabledExpressionList"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Disabled expressions in the default compliance profile
 (<code>DefaultComplyProfile</code>).
 Use this property to specify which expressions are disabled.
 All expressions are enabled by default.]]>
      </description-html>
      </property>

            <property name="description" type-id-ref="vim.profile.Profile.Description"
      vmodl-name="description"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Localized description of the profile.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostNvmeDiscoveryLog"
      type-id="vim.host.NvmeDiscoveryLog"
      vmodl-name="vim.host.NvmeDiscoveryLog"
      version-id-ref="vim.version.v7_0"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object represents the Discovery Log returned by
  an NVME over Fabrics Discovery controller.
  <p>
  The Discovery Log consists of pages which contain a number
  of entries. It provides an inventory of NVM subsystems with
  which the host may attempt to form an association through
  an NVME over Fabrics adapter. For details, see:
  <ul>
  <li>"NVM Express over Fabrics 1.0", Section 5.3,
  Discovery Log Page</li>
  </ul>]]>
      </description-html>
            <property name="entry" type-id-ref="vim.host.NvmeDiscoveryLog.Entry"
      vmodl-name="entry"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The list of entries that make up the Discovery Log.]]>
      </description-html>
      </property>

            <property name="complete" type-id-ref="BOOLEAN"
      vmodl-name="complete"
      >
      <description-html>
         <![CDATA[Indicates whether the NvmeDiscoveryLog object completely
  represents the underlying Discovery Log returned by the
  controller.
  <p>
  It is possible some of the entries returned by the Discovery
  Controller contain unsupported transport types or data that
  cannot be interpreted - in that case, those entries will be
  skipped and the log will be marked as incomplete.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.host.NvmeDiscoveryLog.SubsystemType</nested-type-id-ref>
      <nested-type-id-ref>vim.host.NvmeDiscoveryLog.TransportRequirements</nested-type-id-ref>
      <nested-type-id-ref>vim.host.NvmeDiscoveryLog.Entry</nested-type-id-ref>
   </data-object>
   <data-object name="DvsUpgradeAvailableEvent"
      type-id="vim.event.DvsUpgradeAvailableEvent"
      vmodl-name="vim.event.DvsUpgradeAvailableEvent"
      version-id-ref="vim.version.version5"
      base-type-id="vim.event.DvsEvent"
      >
      <description-html>
         <![CDATA[An upgrade for the distributed virtual switch is available.]]>
      </description-html>
            <property name="productInfo" type-id-ref="vim.dvs.ProductSpec"
      vmodl-name="productInfo"
      >
      <description-html>
         <![CDATA[The product info of the upgrade.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="CustomizationVirtualMachineName"
      type-id="vim.vm.customization.VirtualMachineNameGenerator"
      vmodl-name="vim.vm.customization.VirtualMachineNameGenerator"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.customization.NameGenerator"
      >
      <description-html>
         <![CDATA[Specifies that VirtualCenter should generate a virtual machine name from a base
  prefix comprising the virtual machine entity name. A number is appended, if
  necessary, to make it unique.
  <p>
  Virtual machine names are unique across the set of hosts and virtual machines known
  to the VirtualCenter instance. VMware Tools reports the names of existing virtual
  machines.]]>
      </description-html>
   </data-object>
   <data-object name="ClusterComputeResourceDVSSetting"
      type-id="vim.ClusterComputeResource.DVSSetting"
      vmodl-name="vim.ClusterComputeResource.DVSSetting"
      enclosing-type-id-ref="vim.ClusterComputeResource"
      version-id-ref="vim.version.version13"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Contains reference to the DVS, list of physical nics attached to it,
 and list of dvportgroups created on it while initially configuring a
 cluster by calling the <a href="vim.ClusterComputeResource.html#configureHCI">ConfigureHCI_Task</a> method.]]>
      </description-html>
            <property name="dvSwitch" type-id-ref="vim.DistributedVirtualSwitch"
      vmodl-name="dvSwitch"
      >
      <description-html>
         <![CDATA[Managed object reference to the DVS.]]>
      </description-html>
      </property>

            <property name="pnicDevices" type-id-ref="java.lang.String"
      vmodl-name="pnicDevices"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of physical nics attached to the DVS.]]>
      </description-html>
      </property>

            <property name="dvPortgroupSetting" type-id-ref="vim.ClusterComputeResource.DVSSetting.DVPortgroupToServiceMapping"
      vmodl-name="dvPortgroupSetting"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Describes dvportgroups on the DVS and services residing on each one.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.ClusterComputeResource.DVSSetting.DVPortgroupToServiceMapping</nested-type-id-ref>
   </data-object>
   <data-object name="VirtualMachineLegacyNetworkSwitchInfo"
      type-id="vim.vm.LegacyNetworkSwitchInfo"
      vmodl-name="vim.vm.LegacyNetworkSwitchInfo"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The LegacyNetworkSwitchInfo data object type contains information about
 the legacy network switches available on the host.
 <ul>
 <li> VMware Server - Options available for the "custom" NetworkBackingType.
 <li> ESX Server - The "esxnet" NetworkBackingType.
 </ul>]]>
      </description-html>
            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      >
      <description-html>
         <![CDATA[The name of the network switch.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualPCIPassthroughVmiopBackingOption"
      type-id="vim.vm.device.VirtualPCIPassthroughOption.VmiopBackingOption"
      vmodl-name="vim.vm.device.VirtualPCIPassthroughOption.VmiopBackingOption"
      enclosing-type-id-ref="vim.vm.device.VirtualPCIPassthroughOption"
      version-id-ref="vim.version.version10"
      base-type-id="vim.vm.device.VirtualPCIPassthroughOption.PluginBackingOption"
      >
      <description-html>
         <![CDATA[This data object type describes the options for the
  <a href="vim.vm.device.VirtualPCIPassthrough.VmiopBackingInfo.html">VirtualPCIPassthroughVmiopBackingInfo</a> data object type.]]>
      </description-html>
            <property name="vgpu" type-id-ref="vim.option.StringOption"
      vmodl-name="vgpu"
      >
      <description-html>
         <![CDATA[Parameter indicating which GPU profile the plugin should emulate.<br>See <a href="vim.vm.ConfigTarget.html#sharedGpuPassthroughTypes">sharedGpuPassthroughTypes</a><br>]]>
      </description-html>
      </property>

            <property name="maxInstances" type-id-ref="INT"
      vmodl-name="maxInstances"
      >
      <description-html>
         <![CDATA[Maximum number of instances of this backing type allowed
 per virtual machine. This is a parameter of the plugin
 itself, which may support only a limited number of
 instances per virtual machine.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostVvolVolumeSpecification"
      type-id="vim.host.VvolVolume.Specification"
      vmodl-name="vim.host.VvolVolume.Specification"
      enclosing-type-id-ref="vim.host.VvolVolume"
      version-id-ref="vim.version.version10"
      base-type-id="vmodl.DynamicData"
      >
            <property name="maxSizeInMB" type-id-ref="LONG"
      vmodl-name="maxSizeInMB"
      >
      <description-html>
         <![CDATA[Maximum size of the container]]>
      </description-html>
      </property>

            <property name="volumeName" type-id-ref="java.lang.String"
      vmodl-name="volumeName"
      >
      <description-html>
         <![CDATA[Container name.]]>
      </description-html>
      </property>

            <property name="vasaProviderInfo" type-id-ref="vim.VimVasaProviderInfo"
      vmodl-name="vasaProviderInfo"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[VASA Providers that manage this volume]]>
      </description-html>
      </property>

            <property name="storageArray" type-id-ref="vim.VasaStorageArray"
      vmodl-name="storageArray"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Storage Array]]>
      </description-html>
      </property>

            <property name="uuid" type-id-ref="java.lang.String"
      vmodl-name="uuid"
      >
      <description-html>
         <![CDATA[Vendor specified storage-container ID]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="AlarmStatusChangedEvent"
      type-id="vim.event.AlarmStatusChangedEvent"
      vmodl-name="vim.event.AlarmStatusChangedEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.AlarmEvent"
      >
      <description-html>
         <![CDATA[This event records a status change for an alarm.]]>
      </description-html>
            <property name="source" type-id-ref="vim.event.ManagedEntityEventArgument"
      vmodl-name="source"
      >
      <description-html>
         <![CDATA[The entity for which the alarm status has been changed.]]>
      </description-html>
      </property>

            <property name="entity" type-id-ref="vim.event.ManagedEntityEventArgument"
      vmodl-name="entity"
      >
      <description-html>
         <![CDATA[The entity with which the alarm is registered.]]>
      </description-html>
      </property>

            <property name="from" type-id-ref="java.lang.String"
      vmodl-name="from"
      >
      <description-html>
         <![CDATA[The original alarm status.]]>
      </description-html>
      </property>

            <property name="to" type-id-ref="java.lang.String"
      vmodl-name="to"
      >
      <description-html>
         <![CDATA[The new alarm status.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="CryptoSpecDeepRecrypt"
      type-id="vim.encryption.CryptoSpecDeepRecrypt"
      vmodl-name="vim.encryption.CryptoSpecDeepRecrypt"
      version-id-ref="vim.version.version11"
      base-type-id="vim.encryption.CryptoSpec"
      >
      <description-html>
         <![CDATA[This data object type encapsulates virtual machine or disk cryptographic
  settings for deep reencryption operation.]]>
      </description-html>
            <property name="newKeyId" type-id-ref="vim.encryption.CryptoKeyId"
      vmodl-name="newKeyId"
      >
      </property>

   </data-object>
   <data-object name="NetIpRouteConfigSpecIpRouteSpec"
      type-id="vim.net.IpRouteConfigSpec.IpRouteSpec"
      vmodl-name="vim.net.IpRouteConfigSpec.IpRouteSpec"
      enclosing-type-id-ref="vim.net.IpRouteConfigSpec"
      version-id-ref="vim.version.version6"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Specify an individual host, network or default destination network
 reachable through a given gateway.]]>
      </description-html>
            <property name="network" type-id-ref="java.lang.String"
      vmodl-name="network"
      >
      <description-html>
         <![CDATA[IP Address of the destination IP network.
 IPv6 addresses are 128-bit addresses represented
 as eight fields of up to four hexadecimal digits. A colon separates each
 field (:). For example, 2001:DB8:101::230:6eff:fe04:d9ff. The address can
 also consist of  symbol '::' to represent multiple 16-bit groups of
 contiguous 0's only once in an address as described in RFC 2373.

 To Specify a default network use the value: 0 with prefixLenth 0.]]>
      </description-html>
      </property>

            <property name="prefixLength" type-id-ref="INT"
      vmodl-name="prefixLength"
      >
      <description-html>
         <![CDATA[The prefix length. For IPv4 the value range is 0-31.
 For IPv6 prefixLength is a decimal value range 0-127. The property
 represents the number of contiguous, higher-order bits of the address that make
 up the network portion of the IP address.]]>
      </description-html>
      </property>

            <property name="gateway" type-id-ref="vim.net.IpRouteConfigSpec.GatewaySpec"
      vmodl-name="gateway"
      >
      <description-html>
         <![CDATA[Where to send the packets for this route.]]>
      </description-html>
      </property>

            <property name="operation" type-id-ref="java.lang.String"
      vmodl-name="operation"
      >
      <description-html>
         <![CDATA[Requires one of the values from <a href="vim.host.ConfigChange.Operation.html">HostConfigChangeOperation</a>.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="PerfEntityMetric"
      type-id="vim.PerformanceManager.EntityMetric"
      vmodl-name="vim.PerformanceManager.EntityMetric"
      enclosing-type-id-ref="vim.PerformanceManager"
      version-id-ref="vim.version.version1"
      base-type-id="vim.PerformanceManager.EntityMetricBase"
      >
      <description-html>
         <![CDATA[This data object type stores values and metadata for metrics associated
  with a specific entity, in 'normal'  format.]]>
      </description-html>
            <property name="sampleInfo" type-id-ref="vim.PerformanceManager.SampleInfo"
      vmodl-name="sampleInfo"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[A list of objects containing information (an interval and a timestamp)
  about the samples collected.]]>
      </description-html>
      </property>

            <property name="value" type-id-ref="vim.PerformanceManager.MetricSeries"
      vmodl-name="value"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[A list of values that corresponds to the samples collected.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ServiceLocatorCredential"
      type-id="vim.ServiceLocator.Credential"
      vmodl-name="vim.ServiceLocator.Credential"
      enclosing-type-id-ref="vim.ServiceLocator"
      version-id-ref="vim.version.version10"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The data object type is a base type of credential for authentication such
 as username/password or SAML token.]]>
      </description-html>
   </data-object>
   <data-object name="ExitStandbyModeFailedEvent"
      type-id="vim.event.ExitStandbyModeFailedEvent"
      vmodl-name="vim.event.ExitStandbyModeFailedEvent"
      version-id-ref="vim.version.version5"
      base-type-id="vim.event.HostEvent"
      >
      <description-html>
         <![CDATA[This event records that the host failed to exit standby mode.]]>
      </description-html>
   </data-object>
   <data-object name="VirtualMachineVcpuConfig"
      type-id="vim.vm.VcpuConfig"
      vmodl-name="vim.vm.VcpuConfig"
      version-id-ref="vim.version.v7_0"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Vcpu configuration.]]>
      </description-html>
            <property name="latencySensitivity" type-id-ref="vim.LatencySensitivity"
      vmodl-name="latencySensitivity"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Latency sensitivity specification for this vcpu.

 The latency sensitivity can be configured per-vcpu only when the VM
 <a href="vim.vm.ConfigSpec.html#latencySensitivity">latencySensitivity</a> is
 configured to high
 in the same ConfigSpec.
 Setting <a href="vim.vm.ConfigSpec.html#latencySensitivity">latencySensitivity</a>,
 but not setting the vcpu's LatencySensitivity would apply the VM's
 latency sensitivity level to all the vcpus of the VM.

 The latency sensitivity of the vcpu should not exceed the
 latency sensivity level of the VM.
 The only allowed levels for vcpu Latency sensitivity
 are high or
 normal]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualParallelPortDeviceBackingOption"
      type-id="vim.vm.device.VirtualParallelPortOption.DeviceBackingOption"
      vmodl-name="vim.vm.device.VirtualParallelPortOption.DeviceBackingOption"
      enclosing-type-id-ref="vim.vm.device.VirtualParallelPortOption"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.device.VirtualDeviceOption.DeviceBackingOption"
      >
      <description-html>
         <![CDATA[Data object type that represents the options for a device backing
  of a virtual parallel port.]]>
      </description-html>
   </data-object>
   <data-object name="CustomizationSpecInfo"
      type-id="vim.CustomizationSpecInfo"
      vmodl-name="vim.CustomizationSpecInfo"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Information about a specification.]]>
      </description-html>
            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      >
      <description-html>
         <![CDATA[Unique name of the specification.]]>
      </description-html>
      </property>

            <property name="description" type-id-ref="java.lang.String"
      vmodl-name="description"
      >
      <description-html>
         <![CDATA[Description of the specification.]]>
      </description-html>
      </property>

            <property name="type" type-id-ref="java.lang.String"
      vmodl-name="type"
      >
      <description-html>
         <![CDATA[Guest operating system for this specification (Linux or Windows).]]>
      </description-html>
      </property>

            <property name="changeVersion" type-id-ref="java.lang.String"
      vmodl-name="changeVersion"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The changeVersion is a unique identifier for a given version
   of the configuration. Each change to the configuration will
   update this value. This is typically implemented as an ever
   increasing count or a time-stamp. However, a client should
   always treat this as an opaque string.
   <p>
   If specified when updating a specification, the changes will only be
   applied if the current changeVersion matches the specified changeVersion. This
   field can be used to guard against updates that has happened
   between the configInfo was read and until it is applied.]]>
      </description-html>
      </property>

            <property name="lastUpdateTime" type-id-ref="vmodl.DateTime"
      vmodl-name="lastUpdateTime"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Time when the specification was last modified. This time is ignored when
 the CustomizationSpecItem containing this is used as an input to
 CustomizationSpecManager.create.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="InventoryDescription"
      type-id="vim.ResourcePlanningManager.InventoryDescription"
      vmodl-name="vim.ResourcePlanningManager.InventoryDescription"
      enclosing-type-id-ref="vim.ResourcePlanningManager"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Data object to capture all information needed to
 describe a sample inventory.]]>
      </description-html>
            <property name="numHosts" type-id-ref="INT"
      vmodl-name="numHosts"
      >
      <description-html>
         <![CDATA[The number of hosts.]]>
      </description-html>
      </property>

            <property name="numVirtualMachines" type-id-ref="INT"
      vmodl-name="numVirtualMachines"
      >
      <description-html>
         <![CDATA[The number of virtual machines.]]>
      </description-html>
      </property>

            <property name="numResourcePools" type-id-ref="INT"
      vmodl-name="numResourcePools"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The number of resource pools.
 Default value is equal to numHosts]]>
      </description-html>
      </property>

            <property name="numClusters" type-id-ref="INT"
      vmodl-name="numClusters"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The number of clusters.
 Default value is equal to numHosts/5.]]>
      </description-html>
      </property>

            <property name="numCpuDev" type-id-ref="INT"
      vmodl-name="numCpuDev"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The number cpu devices per host.
 Default value is 4.]]>
      </description-html>
      </property>

            <property name="numNetDev" type-id-ref="INT"
      vmodl-name="numNetDev"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The number network devices per host.
 Default value is 2.]]>
      </description-html>
      </property>

            <property name="numDiskDev" type-id-ref="INT"
      vmodl-name="numDiskDev"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The number disk devices per host.
 Default value is 10.]]>
      </description-html>
      </property>

            <property name="numvCpuDev" type-id-ref="INT"
      vmodl-name="numvCpuDev"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The number cpu devices per vm.
 Default value is 2.]]>
      </description-html>
      </property>

            <property name="numvNetDev" type-id-ref="INT"
      vmodl-name="numvNetDev"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The number network devices per vm.
 Default value is 1.]]>
      </description-html>
      </property>

            <property name="numvDiskDev" type-id-ref="INT"
      vmodl-name="numvDiskDev"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The number disk devices per vm.
 Default value is 4.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DistributedVirtualSwitchManagerHostDvsMembershipFilter"
      type-id="vim.dvs.DistributedVirtualSwitchManager.HostDvsMembershipFilter"
      vmodl-name="vim.dvs.DistributedVirtualSwitchManager.HostDvsMembershipFilter"
      enclosing-type-id-ref="vim.dvs.DistributedVirtualSwitchManager"
      version-id-ref="vim.version.version6"
      base-type-id="vim.dvs.DistributedVirtualSwitchManager.HostDvsFilterSpec"
      >
      <description-html>
         <![CDATA[Check host compatibility against all hosts in the DVS (or not in the DVS if
 inclusive flag in base class is false)]]>
      </description-html>
            <property name="distributedVirtualSwitch" type-id-ref="vim.DistributedVirtualSwitch"
      vmodl-name="distributedVirtualSwitch"
      >
      </property>

   </data-object>
   <data-object name="VirtualSCSIPassthroughDeviceBackingOption"
      type-id="vim.vm.device.VirtualSCSIPassthroughOption.DeviceBackingOption"
      vmodl-name="vim.vm.device.VirtualSCSIPassthroughOption.DeviceBackingOption"
      enclosing-type-id-ref="vim.vm.device.VirtualSCSIPassthroughOption"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.device.VirtualDeviceOption.DeviceBackingOption"
      >
      <description-html>
         <![CDATA[This data object type describes
  the options for the
  <a href="vim.vm.device.VirtualSCSIPassthrough.DeviceBackingInfo.html">VirtualSCSIPassthroughDeviceBackingInfo</a> data object type.]]>
      </description-html>
   </data-object>
   <data-object name="VirtualMachinePciSharedGpuPassthroughInfo"
      type-id="vim.vm.PciSharedGpuPassthroughInfo"
      vmodl-name="vim.vm.PciSharedGpuPassthroughInfo"
      version-id-ref="vim.version.version10"
      base-type-id="vim.vm.TargetInfo"
      >
      <description-html>
         <![CDATA[Description of a gpu PCI device that can be shared with a virtual machine.]]>
      </description-html>
            <property name="vgpu" type-id-ref="java.lang.String"
      vmodl-name="vgpu"
      >
      <description-html>
         <![CDATA[The VGPU corresponding to this GPU passthrough device.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DvsCopyNetworkRuleAction"
      type-id="vim.dvs.TrafficRule.CopyAction"
      vmodl-name="vim.dvs.TrafficRule.CopyAction"
      enclosing-type-id-ref="vim.dvs.TrafficRule"
      version-id-ref="vim.version.version9"
      base-type-id="vim.dvs.TrafficRule.Action"
      >
      <description-html>
         <![CDATA[This class defines network rule action to copy the packet to an
  associated slow-path service Virtual Machine and let the original
  frame continue.]]>
      </description-html>
   </data-object>
   <data-object name="EventArgDesc"
      type-id="vim.event.EventDescription.EventArgDesc"
      vmodl-name="vim.event.EventDescription.EventArgDesc"
      enclosing-type-id-ref="vim.event.EventDescription"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Describes an available event argument name for an Event type, which
 can be used in <a href="vim.alarm.EventAlarmExpression.html">EventAlarmExpression</a>.]]>
      </description-html>
            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      >
      <description-html>
         <![CDATA[The name of the argument]]>
      </description-html>
      </property>

            <property name="type" type-id-ref="java.lang.String"
      vmodl-name="type"
      >
      <description-html>
         <![CDATA[The type of the argument.]]>
      </description-html>
      </property>

            <property name="description" type-id-ref="vim.ElementDescription"
      vmodl-name="description"
      is-optional="true"
      is-localizable="true"
      >
      <description-html>
         <![CDATA[The localized description of the event argument. The key holds
 the localization prefix for the argument, which is decided by
 the Event type that it is actually declared in, which may be a
 base type of this event type.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualMachineDiskDeviceInfo"
      type-id="vim.vm.DiskDeviceInfo"
      vmodl-name="vim.vm.DiskDeviceInfo"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.TargetInfo"
      >
      <description-html>
         <![CDATA[The DiskDeviceInfo class contains basic information about a specific disk hardware
  device.]]>
      </description-html>
            <property name="capacity" type-id-ref="LONG"
      vmodl-name="capacity"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Size of disk]]>
      </description-html>
      </property>

            <property name="vm" type-id-ref="vim.VirtualMachine"
      vmodl-name="vm"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of known virtual machines using this physical disk as a backing]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ClusterComputeResourceDvsProfileDVPortgroupSpecToServiceMapping"
      type-id="vim.ClusterComputeResource.DvsProfile.DVPortgroupSpecToServiceMapping"
      vmodl-name="vim.ClusterComputeResource.DvsProfile.DVPortgroupSpecToServiceMapping"
      enclosing-type-id-ref="vim.ClusterComputeResource.DvsProfile"
      version-id-ref="vim.version.version13"
      base-type-id="vmodl.DynamicData"
      >
            <property name="dvPortgroupSpec" type-id-ref="vim.dvs.DistributedVirtualPortgroup.ConfigSpec"
      vmodl-name="dvPortgroupSpec"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Specification for a new <a href="vim.dvs.DistributedVirtualPortgroup.html">DistributedVirtualPortgroup</a>.]]>
      </description-html>
      </property>

            <property name="dvPortgroup" type-id-ref="vim.dvs.DistributedVirtualPortgroup"
      vmodl-name="dvPortgroup"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Managed object reference to an existing <a href="vim.dvs.DistributedVirtualPortgroup.html">DistributedVirtualPortgroup</a>.]]>
      </description-html>
      </property>

            <property name="service" type-id-ref="java.lang.String"
      vmodl-name="service"
      >
      <description-html>
         <![CDATA[Service to be configured on the virtual nics attached to this
 dvportgroup. See <a href="vim.host.VirtualNicManager.NicType.html">HostVirtualNicManagerNicType</a> for
 supported values.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VsanUpgradeSystemPreflightCheckResult"
      type-id="vim.VsanUpgradeSystem.PreflightCheckResult"
      vmodl-name="vim.VsanUpgradeSystem.PreflightCheckResult"
      enclosing-type-id-ref="vim.VsanUpgradeSystem"
      version-id-ref="vim.version.version10"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Captures the result of a VSAN upgrade pre-flight check.]]>
      </description-html>
            <property name="issues" type-id-ref="vim.VsanUpgradeSystem.PreflightCheckIssue"
      vmodl-name="issues"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Detected issues. In some cases, not all possible issues are captured,
 i.e. only the first (few) issues may be captured, and only once those
 are resolved would additional issues be reported.

 Absence of issues means the pre-flight check passed.]]>
      </description-html>
      </property>

            <property name="diskMappingToRestore" type-id-ref="vim.vsan.host.DiskMapping"
      vmodl-name="diskMappingToRestore"
      is-optional="true"
      >
      <description-html>
         <![CDATA[If the upgrade process was previously interrupted, it may have
 removed VSAN from a disk group, but not added the disk group back
 into VSAN. If such a situation is detected, this field will be set
 and contains information about this disk group.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualDiskAntiAffinityRuleSpec"
      type-id="vim.storageDrs.VirtualDiskAntiAffinityRuleSpec"
      vmodl-name="vim.storageDrs.VirtualDiskAntiAffinityRuleSpec"
      version-id-ref="vim.version.version7"
      base-type-id="vim.cluster.RuleInfo"
      >
      <description-html>
         <![CDATA[Pod-wide anit-affinity rule for virtual disks. The set of virtual disks should
  be placed on different datastores.
  <p>]]>
      </description-html>
            <property name="diskId" type-id-ref="INT"
      vmodl-name="diskId"
      is-array="true"
      >
      <description-html>
         <![CDATA[The list of virtual disks.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ClusterGroupSpec"
      type-id="vim.cluster.GroupSpec"
      vmodl-name="vim.cluster.GroupSpec"
      version-id-ref="vim.version.version6"
      base-type-id="vim.option.ArrayUpdateSpec"
      >
      <description-html>
         <![CDATA[An incremental update to the cluster-wide groups.]]>
      </description-html>
            <property name="info" type-id-ref="vim.cluster.GroupInfo"
      vmodl-name="info"
      is-optional="true"
      >
      </property>

   </data-object>
   <data-object name="HostSystemComplianceCheckState"
      type-id="vim.HostSystem.ComplianceCheckState"
      vmodl-name="vim.HostSystem.ComplianceCheckState"
      enclosing-type-id-ref="vim.HostSystem"
      version-id-ref="vim.version.version12"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The host profile compliance check state.]]>
      </description-html>
            <property name="state" type-id-ref="java.lang.String"
      vmodl-name="state"
      >
      <description-html>
         <![CDATA[The compliance check operation state. See
  <a href="vim.profile.ComplianceResult.Status.html">ComplianceResultStatus</a> for the valid values.]]>
      </description-html>
      </property>

            <property name="checkTime" type-id-ref="vmodl.DateTime"
      vmodl-name="checkTime"
      >
      <description-html>
         <![CDATA[The compliance check starting time for running state; compliance
  check finish time for others.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostVirtualNicSpec"
      type-id="vim.host.VirtualNic.Specification"
      vmodl-name="vim.host.VirtualNic.Specification"
      enclosing-type-id-ref="vim.host.VirtualNic"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The <a href="vim.host.VirtualNic.Specification.html">HostVirtualNicSpec</a> data object describes the
  <a href="vim.host.VirtualNic.html">HostVirtualNic</a> configuration containing both the configured
  properties on a virtual NIC and identification information.]]>
      </description-html>
            <property name="ip" type-id-ref="vim.host.IpConfig"
      vmodl-name="ip"
      is-optional="true"
      >
      <description-html>
         <![CDATA[IP configuration on the virtual network adapter.]]>
      </description-html>
      </property>

            <property name="mac" type-id-ref="java.lang.String"
      vmodl-name="mac"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Media access control (MAC) address of the virtual network adapter.]]>
      </description-html>
      </property>

            <property name="distributedVirtualPort" type-id-ref="vim.dvs.PortConnection"
      vmodl-name="distributedVirtualPort"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[<a href="vim.dvs.DistributedVirtualPort.html">DistributedVirtualPort</a> or <a href="vim.dvs.DistributedVirtualPortgroup.html">DistributedVirtualPortgroup</a>
  connection. To specify a port connection, set
  <a href="vim.dvs.PortConnection.html#switchUuid">switchUuid</a> and <a href="vim.dvs.PortConnection.html#portKey">portKey</a>
  properties. To specify a portgroup connection, set
  <a href="vim.dvs.PortConnection.html#switchUuid">switchUuid</a> and <a href="vim.dvs.PortConnection.html#portgroupKey">portgroupKey</a>
  properties.
  <p>
  When reconfiguring a virtual NIC, this property indicates the new portgroup
  to which the virtual NIC should connect. You can specify this property
  only if you do not specify <a href="vim.host.VirtualNic.Specification.html#distributedVirtualPort">distributedVirtualPort</a> and
  <a href="vim.host.VirtualNic.Specification.html#opaqueNetwork">opaqueNetwork</a>]]>
      </description-html>
      </property>

            <property name="portgroup" type-id-ref="java.lang.String"
      vmodl-name="portgroup"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Portgroup (<a href="vim.host.PortGroup.html">HostPortGroup</a>) to which the virtual NIC is connected.
  <p>
  When reconfiguring a virtual NIC, this property indicates the new portgroup
  to which the virtual NIC should connect. You can specify this property
  only if you do not specify <a href="vim.host.VirtualNic.Specification.html#distributedVirtualPort">distributedVirtualPort</a> and
  <a href="vim.host.VirtualNic.Specification.html#opaqueNetwork">opaqueNetwork</a>]]>
      </description-html>
      </property>

            <property name="mtu" type-id-ref="INT"
      vmodl-name="mtu"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Maximum transmission unit for packets size in bytes for the virtual
  NIC. If not specified, the Server will use the system default value.]]>
      </description-html>
      </property>

            <property name="tsoEnabled" type-id-ref="BOOLEAN"
      vmodl-name="tsoEnabled"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Flag enabling or disabling TCP segmentation offset for a virtual NIC.
  If not specified, a default value of true will be used.]]>
      </description-html>
      </property>

            <property name="netStackInstanceKey" type-id-ref="java.lang.String"
      vmodl-name="netStackInstanceKey"
      version-id-ref="vim.version.version9"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The NetStackInstance that the virtual NIC uses, the value of this property
  is default to be vim.host.NetStackInstance.SystemStackKey#defaultTcpipStack]]>
      </description-html>
      </property>

            <property name="opaqueNetwork" type-id-ref="vim.host.VirtualNic.OpaqueNetworkSpec"
      vmodl-name="opaqueNetwork"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Opaque network (<a href="vim.host.OpaqueNetworkInfo.html">HostOpaqueNetworkInfo</a>) to which the
  virtual NIC is connected.
  <p>
  When reconfiguring a virtual NIC, this property indicates the specification
  of opaque network to which the virtual NIC should connect. You can specify
  this property only if you do not specify <a href="vim.host.VirtualNic.Specification.html#distributedVirtualPort">distributedVirtualPort</a>
  and <a href="vim.host.VirtualNic.Specification.html#portgroup">portgroup</a>.]]>
      </description-html>
      </property>

            <property name="externalId" type-id-ref="java.lang.String"
      vmodl-name="externalId"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[An ID assigned to the vmkernel adapter by external management plane.
 The value and format of this property is determined by external management
 plane, and vSphere doesn't do any validation. It's also up to external
 management plane to set, unset or maintain this property.
 <p>
 This property is applicable only when <a href="vim.host.VirtualNic.Specification.html#opaqueNetwork">opaqueNetwork</a> property is set,
 otherwise it's value is ignored.]]>
      </description-html>
      </property>

            <property name="pinnedPnic" type-id-ref="java.lang.String"
      vmodl-name="pinnedPnic"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The physical nic to which the vmkernel adapter is pinned. Setting this value
 ensures that the virtual NIC will access external network only via the
 the specified physical NIC.
 <p>
 This property is applicable only when <a href="vim.host.VirtualNic.Specification.html#opaqueNetwork">opaqueNetwork</a> property is set.
 If the vmkernel adapter is connected to a portgroup or dvPort, then such
 pinning can be achieved by configuring correct teaming policy on the portgroup
 or dvPort or dvPortgroup that is connected to virtual NIC.]]>
      </description-html>
      </property>

            <property name="ipRouteSpec" type-id-ref="vim.host.VirtualNic.IpRouteSpec"
      vmodl-name="ipRouteSpec"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The ip route configuration used by the vmkernel adapter. This attribute
 allows the vmkernel adapter to specify its own default gateway.]]>
      </description-html>
      </property>

            <property name="systemOwned" type-id-ref="BOOLEAN"
      vmodl-name="systemOwned"
      version-id-ref="vim.version.v7_0"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Set to true when the vmkernel adapter is configured by
 other system indirectly other than by the user directly.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="SourceNodeSpec"
      type-id="vim.vcha.FailoverClusterConfigurator.SourceNodeSpec"
      vmodl-name="vim.vcha.FailoverClusterConfigurator.SourceNodeSpec"
      enclosing-type-id-ref="vim.vcha.FailoverClusterConfigurator"
      version-id-ref="vim.version.version11"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The SourceNodeSpec class defines specification of
  the source node that is used to initiate the configuration or
  deployment for VCHA.]]>
      </description-html>
            <property name="managementVc" type-id-ref="vim.ServiceLocator"
      vmodl-name="managementVc"
      >
      <description-html>
         <![CDATA[Credentials for the management vCenter Server that is managing
  this node.]]>
      </description-html>
      </property>

            <property name="activeVc" type-id-ref="vim.VirtualMachine"
      vmodl-name="activeVc"
      >
      <description-html>
         <![CDATA[VirtualMachine reference for this vCenter Server.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="OvfNetworkMapping"
      type-id="vim.OvfManager.NetworkMapping"
      vmodl-name="vim.OvfManager.NetworkMapping"
      enclosing-type-id-ref="vim.OvfManager"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[A NetworkMapping is a choice made by the caller about which VI network to use for a
 specific network in the OVF descriptor.]]>
      </description-html>
            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      >
      </property>

            <property name="network" type-id-ref="vim.Network"
      vmodl-name="network"
      >
      </property>

   </data-object>
   <data-object name="HostDasEnablingEvent"
      type-id="vim.event.HostDasEnablingEvent"
      vmodl-name="vim.event.HostDasEnablingEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.HostEvent"
      >
      <description-html>
         <![CDATA[This event records when HA is being enabled on a host.]]>
      </description-html>
   </data-object>
   <data-object name="MigrationResourceErrorEvent"
      type-id="vim.event.MigrationResourceErrorEvent"
      vmodl-name="vim.event.MigrationResourceErrorEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.MigrationEvent"
      >
      <description-html>
         <![CDATA[A migration error that includes both the destination host and resource pool.]]>
      </description-html>
            <property name="dstPool" type-id-ref="vim.event.ResourcePoolEventArgument"
      vmodl-name="dstPool"
      >
      <description-html>
         <![CDATA[The name of the destination resource pool.]]>
      </description-html>
      </property>

            <property name="dstHost" type-id-ref="vim.event.HostEventArgument"
      vmodl-name="dstHost"
      >
      <description-html>
         <![CDATA[The name of the destination host.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="TemplateConfigFileQuery"
      type-id="vim.host.DatastoreBrowser.TemplateVmConfigQuery"
      vmodl-name="vim.host.DatastoreBrowser.TemplateVmConfigQuery"
      enclosing-type-id-ref="vim.host.DatastoreBrowser"
      version-id-ref="vim.version.version1"
      base-type-id="vim.host.DatastoreBrowser.VmConfigQuery"
      >
      <description-html>
         <![CDATA[This data object type describes the query specification for a template virtual
  machine configuration file.]]>
      </description-html>
   </data-object>
   <data-object name="PhysicalNic"
      type-id="vim.host.PhysicalNic"
      vmodl-name="vim.host.PhysicalNic"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object type describes the physical network adapter
  as seen by the primary operating system.]]>
      </description-html>
            <property name="key" type-id-ref="java.lang.String"
      vmodl-name="key"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The linkable identifier.]]>
      </description-html>
      </property>

            <property name="device" type-id-ref="java.lang.String"
      vmodl-name="device"
      >
      <description-html>
         <![CDATA[The device name of the physical network adapter.]]>
      </description-html>
      </property>

            <property name="pci" type-id-ref="java.lang.String"
      vmodl-name="pci"
      >
      <description-html>
         <![CDATA[Device hash of the PCI device corresponding to this
  physical network adapter.]]>
      </description-html>
      </property>

            <property name="driver" type-id-ref="java.lang.String"
      vmodl-name="driver"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The name of the driver. From command line: esxcli network nic get]]>
      </description-html>
      </property>

            <property name="linkSpeed" type-id-ref="vim.host.PhysicalNic.LinkSpeedDuplex"
      vmodl-name="linkSpeed"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The current link state of the physical network adapter.
  If this object is not set, then the link is down.]]>
      </description-html>
      </property>

            <property name="validLinkSpecification" type-id-ref="vim.host.PhysicalNic.LinkSpeedDuplex"
      vmodl-name="validLinkSpecification"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The valid combinations of speed and duplexity for this
  physical network adapter.
  The speed and the duplex settings usually must be configured
  as a pair.  This array lists all the valid combinations available
  for a physical network adapter.
  <p>
  Autonegotiate is not listed as one of the combinations supported.
  If is implicitly supported by the physical network adapter
  unless <a href="vim.host.PhysicalNic.html#autoNegotiateSupported">autoNegotiateSupported</a> is set to false.]]>
      </description-html>
      </property>

            <property name="spec" type-id-ref="vim.host.PhysicalNic.Specification"
      vmodl-name="spec"
      >
      <description-html>
         <![CDATA[The specification of the physical network adapter.]]>
      </description-html>
      </property>

            <property name="wakeOnLanSupported" type-id-ref="BOOLEAN"
      vmodl-name="wakeOnLanSupported"
      version-id-ref="vim.version.version2"
      >
      <description-html>
         <![CDATA[Flag indicating whether the NIC is wake-on-LAN capable]]>
      </description-html>
      </property>

            <property name="mac" type-id-ref="java.lang.String"
      vmodl-name="mac"
      version-id-ref="vim.version.version2"
      >
      <description-html>
         <![CDATA[The media access control (MAC) address of the physical
  network adapter.]]>
      </description-html>
      </property>

            <property name="fcoeConfiguration" type-id-ref="vim.host.FcoeConfig"
      vmodl-name="fcoeConfiguration"
      version-id-ref="vim.version.version7"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The FCoE configuration of the physical network adapter.]]>
      </description-html>
      </property>

            <property name="vmDirectPathGen2Supported" type-id-ref="BOOLEAN"
      vmodl-name="vmDirectPathGen2Supported"
      version-id-ref="vim.version.version6"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Flag indicating whether the NIC supports VMDirectPath Gen 2. Note that
  this is only an indicator of the capabilities of this NIC, not of the
  whole host.
  <p>
  If the host software is not capable of VMDirectPath Gen 2,
  this property will be unset, as the host cannot provide information on
  the NIC capability.<br>See <a href="vim.host.Capability.html#vmDirectPathGen2Supported">vmDirectPathGen2Supported</a><br>]]>
      </description-html>
      </property>

            <property name="vmDirectPathGen2SupportedMode" type-id-ref="java.lang.String"
      vmodl-name="vmDirectPathGen2SupportedMode"
      version-id-ref="vim.version.version6"
      is-optional="true"
      >
      <description-html>
         <![CDATA[If <a href="vim.host.PhysicalNic.html#vmDirectPathGen2Supported">vmDirectPathGen2Supported</a> is true, this property advertises
  the VMDirectPath Gen 2 mode supported by this NIC (chosen from
  <a href="vim.host.PhysicalNic.VmDirectPathGen2SupportedMode.html">PhysicalNicVmDirectPathGen2SupportedMode</a>).
  A mode may require that the associated vSphere Distributed Switch have
  a particular ProductSpec in order for network passthrough to be possible.]]>
      </description-html>
      </property>

            <property name="resourcePoolSchedulerAllowed" type-id-ref="BOOLEAN"
      vmodl-name="resourcePoolSchedulerAllowed"
      version-id-ref="vim.version.version6"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Flag indicating whether the NIC allows resource pool based scheduling
  for network I/O control.]]>
      </description-html>
      </property>

            <property name="resourcePoolSchedulerDisallowedReason" type-id-ref="java.lang.String"
      vmodl-name="resourcePoolSchedulerDisallowedReason"
      version-id-ref="vim.version.version6"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[If <a href="vim.host.PhysicalNic.html#resourcePoolSchedulerAllowed">resourcePoolSchedulerAllowed</a> is false, this property
  advertises the reason for disallowing resource scheduling on
  this NIC. The reasons may be one of
  <a href="vim.host.PhysicalNic.ResourcePoolSchedulerDisallowedReason.html">PhysicalNicResourcePoolSchedulerDisallowedReason</a>]]>
      </description-html>
      </property>

            <property name="autoNegotiateSupported" type-id-ref="BOOLEAN"
      vmodl-name="autoNegotiateSupported"
      version-id-ref="vim.version.version6"
      is-optional="true"
      >
      <description-html>
         <![CDATA[If set the flag indicates if the physical network adapter supports
  autonegotiate.]]>
      </description-html>
      </property>

            <property name="enhancedNetworkingStackSupported" type-id-ref="BOOLEAN"
      vmodl-name="enhancedNetworkingStackSupported"
      version-id-ref="vim.version.version12"
      is-optional="true"
      >
      <description-html>
         <![CDATA[If set the flag indicates whether a physical nic supports Enhanced
 Networking Stack driver]]>
      </description-html>
      </property>

            <property name="ensInterruptSupported" type-id-ref="BOOLEAN"
      vmodl-name="ensInterruptSupported"
      version-id-ref="vim.version.v7_0"
      is-optional="true"
      >
      <description-html>
         <![CDATA[If set the flag indicates whether a physical nic supports Enhanced
 Networking Stack interrupt mode]]>
      </description-html>
      </property>

            <property name="rdmaDevice" type-id-ref="vim.host.RdmaDevice"
      vmodl-name="rdmaDevice"
      version-id-ref="vim.version.v7_0"
      is-optional="true"
      is-link="true"
      >
      <description-html>
         <![CDATA[Associated RDMA device, if any.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.host.PhysicalNic.Specification</nested-type-id-ref>
      <nested-type-id-ref>vim.host.PhysicalNic.Config</nested-type-id-ref>
      <nested-type-id-ref>vim.host.PhysicalNic.LinkSpeedDuplex</nested-type-id-ref>
      <nested-type-id-ref>vim.host.PhysicalNic.NetworkHint</nested-type-id-ref>
      <nested-type-id-ref>vim.host.PhysicalNic.CdpDeviceCapability</nested-type-id-ref>
      <nested-type-id-ref>vim.host.PhysicalNic.CdpInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.host.PhysicalNic.LldpInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.host.PhysicalNic.VmDirectPathGen2SupportedMode</nested-type-id-ref>
      <nested-type-id-ref>vim.host.PhysicalNic.ResourcePoolSchedulerDisallowedReason</nested-type-id-ref>
   </data-object>
   <data-object name="VirtualSerialPortDeviceBackingInfo"
      type-id="vim.vm.device.VirtualSerialPort.DeviceBackingInfo"
      vmodl-name="vim.vm.device.VirtualSerialPort.DeviceBackingInfo"
      enclosing-type-id-ref="vim.vm.device.VirtualSerialPort"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.device.VirtualDevice.DeviceBackingInfo"
      >
      <description-html>
         <![CDATA[The <code><a href="vim.vm.device.VirtualSerialPort.DeviceBackingInfo.html">VirtualSerialPortDeviceBackingInfo</a></code> data object
  defines information for using a host serial port device as backing for a
  <code><a href="vim.vm.device.VirtualSerialPort.html">VirtualSerialPort</a></code>. On a host, the first virtual machine
  to configure physical device backing for a virtual serial port will obtain
  the mapping. As long as that machine maintains the backing, any additional attempts
  to configure backing using that device will fail (a recoverable error, see
  the connection info <code><a href="vim.vm.device.VirtualDevice.ConnectInfo.html#status">status</a></code>).]]>
      </description-html>
   </data-object>
   <data-object name="StoragePlacementSpec"
      type-id="vim.storageDrs.StoragePlacementSpec"
      vmodl-name="vim.storageDrs.StoragePlacementSpec"
      version-id-ref="vim.version.version7"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[StoragePlacementSpec encapsulates all of the inputs passed to the
   <a href="vim.StorageResourceManager.html#recommendDatastores">RecommendDatastores</a> method.
   <p>]]>
      </description-html>
            <property name="type" type-id-ref="java.lang.String"
      vmodl-name="type"
      >
      <description-html>
         <![CDATA[The storage placement type. The set of possible values is described in
 <a href="vim.storageDrs.StoragePlacementSpec.PlacementType.html">StoragePlacementSpecPlacementType</a>]]>
      </description-html>
      </property>

            <property name="priority" type-id-ref="vim.VirtualMachine.MovePriority"
      vmodl-name="priority"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Priority of this placement operation.]]>
      </description-html>
      </property>

            <property name="vm" type-id-ref="vim.VirtualMachine"
      vmodl-name="vm"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The relevant virtual machine.]]>
      </description-html>
      </property>

            <property name="podSelectionSpec" type-id-ref="vim.storageDrs.PodSelectionSpec"
      vmodl-name="podSelectionSpec"
      >
      <description-html>
         <![CDATA[Specification for moving a virtual machine or a set of virtual disks
  to a different storage pod.]]>
      </description-html>
      </property>

            <property name="cloneSpec" type-id-ref="vim.vm.CloneSpec"
      vmodl-name="cloneSpec"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Specification for a virtual machine cloning operation.]]>
      </description-html>
      </property>

            <property name="cloneName" type-id-ref="java.lang.String"
      vmodl-name="cloneName"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Name for cloned virtual machine.]]>
      </description-html>
      </property>

            <property name="configSpec" type-id-ref="vim.vm.ConfigSpec"
      vmodl-name="configSpec"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Configuration for the virtual machine.]]>
      </description-html>
      </property>

            <property name="relocateSpec" type-id-ref="vim.vm.RelocateSpec"
      vmodl-name="relocateSpec"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Specification for relocating a virtual machine.]]>
      </description-html>
      </property>

            <property name="resourcePool" type-id-ref="vim.ResourcePool"
      vmodl-name="resourcePool"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The resource pool to which this virtual machine should be attached.]]>
      </description-html>
      </property>

            <property name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The target host for the virtual machine.]]>
      </description-html>
      </property>

            <property name="folder" type-id-ref="vim.Folder"
      vmodl-name="folder"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The target virtual machine folder for the virtual machine.
 Note that this is a different folder than the pod(s) that the virtual
 machine belongs to. The pod mapping represents the storage view of
 the virtual machine, while the virtual machine folder mapping
 represents an inventory view of the virtual machine.

 For manual VM provisioning operations, this is specified implicitly
 as the object that the <a href="vim.Folder.html#createVm">CreateVM_Task</a> method is invoked on.]]>
      </description-html>
      </property>

            <property name="disallowPrerequisiteMoves" type-id-ref="BOOLEAN"
      vmodl-name="disallowPrerequisiteMoves"
      version-id-ref="vim.version.version8"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Specification for whether to disable pre-requisite storage vmotions
 for storage placements. If unset, default behavior is to allow such
 prerequisite moves.]]>
      </description-html>
      </property>

            <property name="resourceLeaseDurationSec" type-id-ref="INT"
      vmodl-name="resourceLeaseDurationSec"
      version-id-ref="vim.version.version8"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Resource lease duration in seconds. If the duration is within bounds,
 Storage DRS will hold onto resources needed for applying recommendations
 generated as part of that call.
 Only initial placement recommendations generated by storage DRS can reserve
 resources this way.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.storageDrs.StoragePlacementSpec.PlacementType</nested-type-id-ref>
   </data-object>
   <data-object name="AboutInfo"
      type-id="vim.AboutInfo"
      vmodl-name="vim.AboutInfo"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object type describes system information
  including the name, type, version, and build number.]]>
      </description-html>
            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      is-localizable="true"
      >
      <description-html>
         <![CDATA[Short form of the product name.]]>
      </description-html>
      </property>

            <property name="fullName" type-id-ref="java.lang.String"
      vmodl-name="fullName"
      is-localizable="true"
      >
      <description-html>
         <![CDATA[The complete product name, including the version information.]]>
      </description-html>
      </property>

            <property name="vendor" type-id-ref="java.lang.String"
      vmodl-name="vendor"
      is-localizable="true"
      >
      <description-html>
         <![CDATA[Name of the vendor of this product.]]>
      </description-html>
      </property>

            <property name="version" type-id-ref="java.lang.String"
      vmodl-name="version"
      >
      <description-html>
         <![CDATA[Dot-separated version string. For example, "1.2".]]>
      </description-html>
      </property>

            <property name="build" type-id-ref="java.lang.String"
      vmodl-name="build"
      >
      <description-html>
         <![CDATA[Build string for the server on which this call is made. For example, x.y.z-num.
  This string does not apply to the API.]]>
      </description-html>
      </property>

            <property name="localeVersion" type-id-ref="java.lang.String"
      vmodl-name="localeVersion"
      is-optional="true"
      is-localizable="true"
      >
      <description-html>
         <![CDATA[Version of the message catalog for the current session's locale.]]>
      </description-html>
      </property>

            <property name="localeBuild" type-id-ref="java.lang.String"
      vmodl-name="localeBuild"
      is-optional="true"
      is-localizable="true"
      >
      <description-html>
         <![CDATA[Build number for the current session's locale.
  Typically, this is a small number reflecting a
  localization change from the normal product build.]]>
      </description-html>
      </property>

            <property name="osType" type-id-ref="java.lang.String"
      vmodl-name="osType"
      >
      <description-html>
         <![CDATA[Operating system type and architecture.
  <p>
  Examples of values are:
  <ul>
  <li>"win32-x86" - For x86-based Windows systems.
  <li>"linux-x86" - For x86-based Linux systems.
  <li>"vmnix-x86" - For the x86 ESX Server microkernel.
  </ul>]]>
      </description-html>
      </property>

            <property name="productLineId" type-id-ref="java.lang.String"
      vmodl-name="productLineId"
      >
      <description-html>
         <![CDATA[The product ID is a unique identifier for a product line.
  <p>
  Examples of values are:
  <ul>
  <li>"gsx" - For the VMware Server product.
  <li>"esx" - For the ESX product.
  <li>"embeddedEsx" - For the ESXi product.
  <li>"vpx" - For the VirtualCenter product.
  </ul>]]>
      </description-html>
      </property>

            <property name="apiType" type-id-ref="java.lang.String"
      vmodl-name="apiType"
      >
      <description-html>
         <![CDATA[Indicates whether or not the service instance represents a
  standalone host.
  If the service instance represents a standalone host, then the physical
  inventory for that service instance is fixed to that single host.
  VirtualCenter server provides additional features over single hosts.
  For example, VirtualCenter offers multi-host management.
  <p>
  Examples of values are:
  <ul>
  <li>"VirtualCenter" - For a VirtualCenter instance.
  <li>"HostAgent" - For host agent on an ESX Server or VMware Server host.
  </ul>]]>
      </description-html>
      </property>

            <property name="apiVersion" type-id-ref="java.lang.String"
      vmodl-name="apiVersion"
      >
      <description-html>
         <![CDATA[The version of the API as a dot-separated string. For example, "1.0.0".]]>
      </description-html>
      </property>

            <property name="instanceUuid" type-id-ref="java.lang.String"
      vmodl-name="instanceUuid"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[A globally unique identifier associated with this service instance.]]>
      </description-html>
      </property>

            <property name="licenseProductName" type-id-ref="java.lang.String"
      vmodl-name="licenseProductName"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The license product name]]>
      </description-html>
      </property>

            <property name="licenseProductVersion" type-id-ref="java.lang.String"
      vmodl-name="licenseProductVersion"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The license product version]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostDateTimeSystemTimeZone"
      type-id="vim.host.DateTimeSystem.TimeZone"
      vmodl-name="vim.host.DateTimeSystem.TimeZone"
      enclosing-type-id-ref="vim.host.DateTimeSystem"
      version-id-ref="vim.version.version2"
      base-type-id="vmodl.DynamicData"
      >
            <property name="key" type-id-ref="java.lang.String"
      vmodl-name="key"
      >
      <description-html>
         <![CDATA[The identifier for the time zone.]]>
      </description-html>
      </property>

            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      is-localizable="true"
      >
      <description-html>
         <![CDATA[The time zone name.]]>
      </description-html>
      </property>

            <property name="description" type-id-ref="java.lang.String"
      vmodl-name="description"
      is-localizable="true"
      >
      <description-html>
         <![CDATA[Description of the time zone.]]>
      </description-html>
      </property>

            <property name="gmtOffset" type-id-ref="INT"
      vmodl-name="gmtOffset"
      >
      <description-html>
         <![CDATA[The GMT offset in seconds that is currently applicable to the timezone
  (with respect to the current time on the host).]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VsanHostClusterStatus"
      type-id="vim.vsan.host.ClusterStatus"
      vmodl-name="vim.vsan.host.ClusterStatus"
      version-id-ref="vim.version.version9"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The <a href="vim.vsan.host.ClusterStatus.html">VsanHostClusterStatus</a> data object contains a host's cluster status
 information for the VSAN service.  This data object is used to represent
 read-only state whose values may change during operation.<br>See <a href="vim.host.VsanSystem.html#queryHostStatus">QueryHostStatus</a><br>]]>
      </description-html>
            <property name="uuid" type-id-ref="java.lang.String"
      vmodl-name="uuid"
      is-optional="true"
      >
      <description-html>
         <![CDATA[VSAN service cluster UUID.]]>
      </description-html>
      </property>

            <property name="nodeUuid" type-id-ref="java.lang.String"
      vmodl-name="nodeUuid"
      is-optional="true"
      >
      <description-html>
         <![CDATA[VSAN node UUID for this host.]]>
      </description-html>
      </property>

            <property name="health" type-id-ref="java.lang.String"
      vmodl-name="health"
      >
      <description-html>
         <![CDATA[VSAN health state for this host.<br>See <a href="vim.vsan.host.HealthState.html">VsanHostHealthState</a><br>]]>
      </description-html>
      </property>

            <property name="nodeState" type-id-ref="vim.vsan.host.ClusterStatus.State"
      vmodl-name="nodeState"
      >
      <description-html>
         <![CDATA[VSAN node state for this host.]]>
      </description-html>
      </property>

            <property name="memberUuid" type-id-ref="java.lang.String"
      vmodl-name="memberUuid"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of UUIDs for VSAN nodes known to this host.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.vsan.host.ClusterStatus.State</nested-type-id-ref>
   </data-object>
   <data-object name="FaultToleranceMetaSpec"
      type-id="vim.vm.FaultToleranceMetaSpec"
      vmodl-name="vim.vm.FaultToleranceMetaSpec"
      version-id-ref="vim.version.version10"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object encapsulates the Datastore for the shared metadata file
 for a fault tolerant pair of VMs.]]>
      </description-html>
            <property name="metaDataDatastore" type-id-ref="vim.Datastore"
      vmodl-name="metaDataDatastore"
      >
      <description-html>
         <![CDATA[Datastore for the metadata file]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostInternetScsiHbaIscsiIpv6Address"
      type-id="vim.host.InternetScsiHba.IscsiIpv6Address"
      vmodl-name="vim.host.InternetScsiHba.IscsiIpv6Address"
      enclosing-type-id-ref="vim.host.InternetScsiHba"
      version-id-ref="vim.version.version10"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The IPv6 address.]]>
      </description-html>
            <property name="address" type-id-ref="java.lang.String"
      vmodl-name="address"
      >
      <description-html>
         <![CDATA[IPv6 address.]]>
      </description-html>
      </property>

            <property name="prefixLength" type-id-ref="INT"
      vmodl-name="prefixLength"
      >
      <description-html>
         <![CDATA[IPv6 address prefix length.]]>
      </description-html>
      </property>

            <property name="origin" type-id-ref="java.lang.String"
      vmodl-name="origin"
      >
      <description-html>
         <![CDATA[Type of the address.
 See {]]>
      </description-html>
      </property>

            <property name="operation" type-id-ref="java.lang.String"
      vmodl-name="operation"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Operation to be performed with the IP address.
 See {]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.host.InternetScsiHba.IscsiIpv6Address.AddressConfigurationType</nested-type-id-ref>
      <nested-type-id-ref>vim.host.InternetScsiHba.IscsiIpv6Address.IPv6AddressOperation</nested-type-id-ref>
   </data-object>
   <data-object name="UsbScanCodeSpecModifierType"
      type-id="vim.vm.UsbScanCodeSpec.ModifierType"
      vmodl-name="vim.vm.UsbScanCodeSpec.ModifierType"
      enclosing-type-id-ref="vim.vm.UsbScanCodeSpec"
      version-id-ref="vim.version.version11"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The types of key modifiers to apply to each code.]]>
      </description-html>
            <property name="leftControl" type-id-ref="BOOLEAN"
      vmodl-name="leftControl"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Left control key]]>
      </description-html>
      </property>

            <property name="leftShift" type-id-ref="BOOLEAN"
      vmodl-name="leftShift"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Left shift key]]>
      </description-html>
      </property>

            <property name="leftAlt" type-id-ref="BOOLEAN"
      vmodl-name="leftAlt"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Left alt key]]>
      </description-html>
      </property>

            <property name="leftGui" type-id-ref="BOOLEAN"
      vmodl-name="leftGui"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Left gui key]]>
      </description-html>
      </property>

            <property name="rightControl" type-id-ref="BOOLEAN"
      vmodl-name="rightControl"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Right control key]]>
      </description-html>
      </property>

            <property name="rightShift" type-id-ref="BOOLEAN"
      vmodl-name="rightShift"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Right shift key]]>
      </description-html>
      </property>

            <property name="rightAlt" type-id-ref="BOOLEAN"
      vmodl-name="rightAlt"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Right alt key]]>
      </description-html>
      </property>

            <property name="rightGui" type-id-ref="BOOLEAN"
      vmodl-name="rightGui"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Right gui key]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="UplinkPortVlanTrunkedEvent"
      type-id="vim.event.UplinkPortVlanTrunkedEvent"
      vmodl-name="vim.event.UplinkPortVlanTrunkedEvent"
      version-id-ref="vim.version.version8"
      base-type-id="vim.event.DvsHealthStatusChangeEvent"
      >
      <description-html>
         <![CDATA[Vlans health check status of an uplink port is changed, and in the latest vlan health check,
  all the vlans are trunked by the physical switch connected to the uplink port.]]>
      </description-html>
   </data-object>
   <data-object name="StorageIOAllocationInfo"
      type-id="vim.StorageResourceManager.IOAllocationInfo"
      vmodl-name="vim.StorageResourceManager.IOAllocationInfo"
      enclosing-type-id-ref="vim.StorageResourceManager"
      version-id-ref="vim.version.version6"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The IOAllocationInfo specifies the shares, limit and reservation
  for storage I/O resource.
  <p>
  The storage I/O resource is allocated to virtual machines based on their
  shares, limit and reservation. The reservation is currently exposed only
  at the host level for local and shared datastores.
  We do not support storage I/O resource management on resource pools.
  <p>
  Each virtual machine has one IOAllocationInfo object per virtual
  disk. For example, we can specify that a virtual machine has 500 shares
  on the first virtual disk, 1000 shares on the second virtual disk, etc.]]>
      </description-html>
            <property name="limit" type-id-ref="LONG"
      vmodl-name="limit"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The utilization of a virtual machine will not exceed this limit, even
  if there are available resources. This is typically used to ensure a consistent
  performance of virtual machines independent of available resources.
  If set to -1, then there is no fixed limit on resource usage (only
  bounded by available resources and shares). The unit is number of
  I/O per second.
  While setting the limit for storage I/O resource, if the property is unset,
  it is treated as no change and the property is not updated. While reading
  back the limit information of storage I/O resource, if the property is unset,
  a default value of -1 will be returned, which indicates that there is no
  limit on resource usage.]]>
      </description-html>
      </property>

            <property name="shares" type-id-ref="vim.SharesInfo"
      vmodl-name="shares"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Shares are used in case of resource contention.
  The value should be within a range of 200 to 4000.
  While setting shares for storage I/O resource, if the property is unset,
  it is treated as no change and the property is not updated. While reading
  back the shares information of storage I/O resource, if the property is unset,
  a default value of <a href="vim.SharesInfo.html#level">level</a> = normal,
  <a href="vim.SharesInfo.html#shares">shares</a> = 1000 will be returned.]]>
      </description-html>
      </property>

            <property name="reservation" type-id-ref="INT"
      vmodl-name="reservation"
      version-id-ref="vim.version.version9"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Reservation control is used to provide guaranteed allocation in terms
 of IOPS. Large IO sizes are considered as multiple IOs using a chunk
 size of 32 KB as default. This control is initially supported only
 at host level for local datastores. It future, it may get supported
 on shared storage based on integration with Storage IO Control.
 Also right now we don't do any admission control based on IO
 reservation values.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualNVDIMMControllerOption"
      type-id="vim.vm.device.VirtualNVDIMMControllerOption"
      vmodl-name="vim.vm.device.VirtualNVDIMMControllerOption"
      version-id-ref="vim.version.version12"
      base-type-id="vim.vm.device.VirtualControllerOption"
      >
      <description-html>
         <![CDATA[VirtualNVDIMMControllerOption is the data object that contains
 the options for a virtual NVDIMM controller.]]>
      </description-html>
            <property name="numNVDIMMControllers" type-id-ref="vim.option.IntOption"
      vmodl-name="numNVDIMMControllers"
      >
      <description-html>
         <![CDATA[Minimum, maximum and default number of virtual NVDIMM controllers.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="NvdimmSystemInfo"
      type-id="vim.host.NvdimmSystem.NvdimmSystemInfo"
      vmodl-name="vim.host.NvdimmSystem.NvdimmSystemInfo"
      enclosing-type-id-ref="vim.host.NvdimmSystem"
      version-id-ref="vim.version.version12"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object represents Non-Volatile DIMMs host
  configuration.]]>
      </description-html>
            <property name="summary" type-id-ref="vim.host.NvdimmSystem.Summary"
      vmodl-name="summary"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Host NVDIMM system summary.
 Summary is unset if the system does not support PMem feature.]]>
      </description-html>
      </property>

            <property name="dimms" type-id-ref="INT"
      vmodl-name="dimms"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of NVDIMMs on the host.
 NVDIMM list unset if the system does not support PMem feature.]]>
      </description-html>
      </property>

            <property name="dimmInfo" type-id-ref="vim.host.NvdimmSystem.DimmInfo"
      vmodl-name="dimmInfo"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of DIMM information of all NVDIMMs on the host.
 Dimm information is unset if the system does not support PMem feature.]]>
      </description-html>
      </property>

            <property name="interleaveSet" type-id-ref="INT"
      vmodl-name="interleaveSet"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of NVDIMM Interleave sets on the host.
 Interleave set is unset if the system does not support PMem feature.]]>
      </description-html>
      </property>

            <property name="iSetInfo" type-id-ref="vim.host.NvdimmSystem.InterleaveSetInfo"
      vmodl-name="iSetInfo"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of information of all NVDIMM interleave sets on the host.
 Interleave set information is unset if the system does not
 support PMem feature.]]>
      </description-html>
      </property>

            <property name="namespace" type-id-ref="vim.host.NvdimmSystem.Guid"
      vmodl-name="namespace"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of NVDIMM namespaces on the host.
 Namespace is unset if the system does not support PMem feature.]]>
      </description-html>
      </property>

            <property name="nsInfo" type-id-ref="vim.host.NvdimmSystem.NamespaceInfo"
      vmodl-name="nsInfo"
      is-deprecated="true"
      is-array="true"
      is-optional="true"
      >
      <deprecated-html>
         <![CDATA[As of vSphere 6.7u1, use nsDetails
 List of information of all NVDIMM namespaces on the host.
 Namespace information is unset if the system does not support
 PMem feature.]]>
      </deprecated-html>
      </property>

            <property name="nsDetails" type-id-ref="vim.host.NvdimmSystem.NamespaceDetails"
      vmodl-name="nsDetails"
      version-id-ref="vim.version.version13"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of details of all NVDIMM namespaces on the host.
 Namespace details is unset if the system does not support
 PMem feature.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DrsResourceConfigureFailedEvent"
      type-id="vim.event.DrsResourceConfigureFailedEvent"
      vmodl-name="vim.event.DrsResourceConfigureFailedEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.HostEvent"
      >
      <description-html>
         <![CDATA[This event records when resource configuration
  specification synchronization fails on a host.]]>
      </description-html>
            <property name="reason" type-id-ref="vmodl.LocalizedMethodFault"
      vmodl-name="reason"
      >
      <description-html>
         <![CDATA[The reason for the failure.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostPatchManagerPatchManagerOperationSpec"
      type-id="vim.host.PatchManager.PatchManagerOperationSpec"
      vmodl-name="vim.host.PatchManager.PatchManagerOperationSpec"
      enclosing-type-id-ref="vim.host.PatchManager"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Optional parameters for hostd to pass to exupdate.]]>
      </description-html>
            <property name="proxy" type-id-ref="java.lang.String"
      vmodl-name="proxy"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The name of the possible proxy for esxupdate to use to connect to a server.
  The patch and metadata may be cached within the proxy server.]]>
      </description-html>
      </property>

            <property name="port" type-id-ref="INT"
      vmodl-name="port"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The port of the possible proxy for esxupdate to use to connect to a server.
  The patch and metadata may be cached within the proxy server.]]>
      </description-html>
      </property>

            <property name="userName" type-id-ref="java.lang.String"
      vmodl-name="userName"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The user name used for the proxy server.]]>
      </description-html>
      </property>

            <property name="password" type-id-ref="java.lang.String"
      vmodl-name="password"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The password used for the proxy server. This is passed with ssl through a
 trusted channel.]]>
      </description-html>
      </property>

            <property name="cmdOption" type-id-ref="java.lang.String"
      vmodl-name="cmdOption"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Possible command line options when calling esxupdate.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostPrimaryAgentNotShortNameEvent"
      type-id="vim.event.HostPrimaryAgentNotShortNameEvent"
      vmodl-name="vim.event.HostPrimaryAgentNotShortNameEvent"
      version-id-ref="vim.version.version2"
      is-deprecated="true"
      base-type-id="vim.event.HostDasEvent"
      >
      <description-html>
         <![CDATA[This event records that the primary agent specified is not a short name.
  The name of the primary agent is usually stored as a short name. You should
  not normally see this error. Please check the network configurations of your
  hosts.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 5.0, the event is no longer relevant.]]>
      </deprecated-html>
            <property name="primaryAgent" type-id-ref="java.lang.String"
      vmodl-name="primaryAgent"
      >
      </property>

   </data-object>
   <data-object name="VmFailedStartingSecondaryEvent"
      type-id="vim.event.VmFailedStartingSecondaryEvent"
      vmodl-name="vim.event.VmFailedStartingSecondaryEvent"
      version-id-ref="vim.version.version5"
      base-type-id="vim.event.VmEvent"
      >
      <description-html>
         <![CDATA[This event records vmotion failure when starting a secondary VM.]]>
      </description-html>
            <property name="reason" type-id-ref="java.lang.String"
      vmodl-name="reason"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The reason for the failure.
  See <a href="vim.event.VmFailedStartingSecondaryEvent.FailureReason.html">VmFailedStartingSecondaryEventFailureReason</a>]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.event.VmFailedStartingSecondaryEvent.FailureReason</nested-type-id-ref>
   </data-object>
   <data-object name="ScsiLunCapabilities"
      type-id="vim.host.ScsiLun.Capabilities"
      vmodl-name="vim.host.ScsiLun.Capabilities"
      enclosing-type-id-ref="vim.host.ScsiLun"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Scsi device specific capabilities.]]>
      </description-html>
            <property name="updateDisplayNameSupported" type-id-ref="BOOLEAN"
      vmodl-name="updateDisplayNameSupported"
      >
      <description-html>
         <![CDATA[Can the display name of the SCSI device be updated?]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VmMaxFTRestartCountReached"
      type-id="vim.event.VmMaxFTRestartCountReached"
      vmodl-name="vim.event.VmMaxFTRestartCountReached"
      version-id-ref="vim.version.version5"
      base-type-id="vim.event.VmEvent"
      >
      <description-html>
         <![CDATA[This event is fired when FT VM reached the max restart count]]>
      </description-html>
   </data-object>
   <data-object name="GuestRegKeySpec"
      type-id="vim.vm.guest.WindowsRegistryManager.RegistryKey"
      vmodl-name="vim.vm.guest.WindowsRegistryManager.RegistryKey"
      enclosing-type-id-ref="vim.vm.guest.WindowsRegistryManager"
      version-id-ref="vim.version.version10"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This describes the registry key.]]>
      </description-html>
            <property name="keyName" type-id-ref="vim.vm.guest.WindowsRegistryManager.RegistryKeyName"
      vmodl-name="keyName"
      >
      <description-html>
         <![CDATA[The key name.]]>
      </description-html>
      </property>

            <property name="classType" type-id-ref="java.lang.String"
      vmodl-name="classType"
      >
      <description-html>
         <![CDATA[The user-defined class type of this key.]]>
      </description-html>
      </property>

            <property name="lastWritten" type-id-ref="vmodl.DateTime"
      vmodl-name="lastWritten"
      >
      <description-html>
         <![CDATA[Time stamp of last modification.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="UserGroupProfile"
      type-id="vim.profile.host.UserGroupProfile"
      vmodl-name="vim.profile.host.UserGroupProfile"
      version-id-ref="vim.version.version5"
      base-type-id="vim.profile.ApplyProfile"
      >
      <description-html>
         <![CDATA[The <a href="vim.profile.host.UserGroupProfile.html">UserGroupProfile</a> data object represents a user group.
 Use the <a href="vim.profile.ApplyProfile.html#policy">policy</a> list for access to configuration data
 for the user group profile. Use the <a href="vim.profile.ApplyProfile.html#property">property</a> list for access
 to subprofile configuration data, if any.]]>
      </description-html>
            <property name="key" type-id-ref="java.lang.String"
      vmodl-name="key"
      >
      <description-html>
         <![CDATA[Linkable identifier.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="NsxHostVNicProfile"
      type-id="vim.profile.host.NsxHostVNicProfile"
      vmodl-name="vim.profile.host.NsxHostVNicProfile"
      version-id-ref="vim.version.version12"
      base-type-id="vim.profile.ApplyProfile"
      >
      <description-html>
         <![CDATA[The <a href="vim.profile.host.NsxHostVNicProfile.html">NsxHostVNicProfile</a> data object is the base object
 for host Virtual NIC connected to NSX logic switch subprofiles.
 If a profile plug-in defines additional policies or subprofiles, use the
 <a href="vim.profile.ApplyProfile.html#policy">policy</a> or <a href="vim.profile.ApplyProfile.html#property">property</a>
 list to access the configuration data.]]>
      </description-html>
            <property name="key" type-id-ref="java.lang.String"
      vmodl-name="key"
      >
      <description-html>
         <![CDATA[Linkable identifier.]]>
      </description-html>
      </property>

            <property name="ipConfig" type-id-ref="vim.profile.host.IpAddressProfile"
      vmodl-name="ipConfig"
      >
      <description-html>
         <![CDATA[IP address for the Virtual NIC belonging to a logic switch.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualSoundCardDeviceBackingInfo"
      type-id="vim.vm.device.VirtualSoundCard.DeviceBackingInfo"
      vmodl-name="vim.vm.device.VirtualSoundCard.DeviceBackingInfo"
      enclosing-type-id-ref="vim.vm.device.VirtualSoundCard"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.device.VirtualDevice.DeviceBackingInfo"
      >
      <description-html>
         <![CDATA[The sound card device backing data class.]]>
      </description-html>
   </data-object>
   <data-object name="HostSubSpecificationDeleteEvent"
      type-id="vim.event.HostSubSpecificationDeleteEvent"
      vmodl-name="vim.event.HostSubSpecificationDeleteEvent"
      version-id-ref="vim.version.version11"
      base-type-id="vim.event.HostEvent"
      >
      <description-html>
         <![CDATA[This event suggests that delete the host sub specification specified by
 name.]]>
      </description-html>
            <property name="subSpecName" type-id-ref="java.lang.String"
      vmodl-name="subSpecName"
      >
      </property>

   </data-object>
   <data-object name="VmDasResetFailedEvent"
      type-id="vim.event.VmDasResetFailedEvent"
      vmodl-name="vim.event.VmDasResetFailedEvent"
      version-id-ref="vim.version.version5"
      base-type-id="vim.event.VmEvent"
      >
      <description-html>
         <![CDATA[This event records when HA VM Health Monitoring fails to reset
 a virtual machine after failure]]>
      </description-html>
   </data-object>
   <data-object name="PhysicalNicConfig"
      type-id="vim.host.PhysicalNic.Config"
      vmodl-name="vim.host.PhysicalNic.Config"
      enclosing-type-id-ref="vim.host.PhysicalNic"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The configuration of the physical network adapter containing
  both the configurable properties and identification information.]]>
      </description-html>
            <property name="device" type-id-ref="java.lang.String"
      vmodl-name="device"
      >
      <description-html>
         <![CDATA[PhysicalNic device to which configuration applies.]]>
      </description-html>
      </property>

            <property name="spec" type-id-ref="vim.host.PhysicalNic.Specification"
      vmodl-name="spec"
      >
      <description-html>
         <![CDATA[The specification of the physical network adapter.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ScheduledTaskEmailFailedEvent"
      type-id="vim.event.ScheduledTaskEmailFailedEvent"
      vmodl-name="vim.event.ScheduledTaskEmailFailedEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.ScheduledTaskEvent"
      >
      <description-html>
         <![CDATA[This event records the failure of an attempt to send a notification via email
  for a scheduled task.]]>
      </description-html>
            <property name="to" type-id-ref="java.lang.String"
      vmodl-name="to"
      >
      <description-html>
         <![CDATA[The destination email address.]]>
      </description-html>
      </property>

            <property name="reason" type-id-ref="vmodl.LocalizedMethodFault"
      vmodl-name="reason"
      >
      <description-html>
         <![CDATA[The reason for the failure.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VMwareDVSTeamingHealthCheckConfig"
      type-id="vim.dvs.VmwareDistributedVirtualSwitch.TeamingHealthCheckConfig"
      vmodl-name="vim.dvs.VmwareDistributedVirtualSwitch.TeamingHealthCheckConfig"
      enclosing-type-id-ref="vim.dvs.VmwareDistributedVirtualSwitch"
      version-id-ref="vim.version.version8"
      base-type-id="vim.dvs.VmwareDistributedVirtualSwitch.VmwareHealthCheckConfig"
      >
      <description-html>
         <![CDATA[This class defines the teaming health check configuration.
  Teaming health check is used to check whether the teaming policy configuration
  of the vSphere Distributed Switch matches the physical switch.]]>
      </description-html>
   </data-object>
   <data-object name="HostNetworkSecurityPolicy"
      type-id="vim.host.NetworkPolicy.SecurityPolicy"
      vmodl-name="vim.host.NetworkPolicy.SecurityPolicy"
      enclosing-type-id-ref="vim.host.NetworkPolicy"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object type describes security policy governing ports.]]>
      </description-html>
            <property name="allowPromiscuous" type-id-ref="BOOLEAN"
      vmodl-name="allowPromiscuous"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The flag to indicate whether or not all traffic is seen
  on the port.]]>
      </description-html>
      </property>

            <property name="macChanges" type-id-ref="BOOLEAN"
      vmodl-name="macChanges"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The flag to indicate whether or not the Media Access
  Control (MAC) address can be changed.]]>
      </description-html>
      </property>

            <property name="forgedTransmits" type-id-ref="BOOLEAN"
      vmodl-name="forgedTransmits"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The flag to indicate whether or not the virtual network adapter
  should be allowed to send network traffic with a different MAC
  address than that of the virtual network adapter.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostFileSystemMountInfo"
      type-id="vim.host.FileSystemMountInfo"
      vmodl-name="vim.host.FileSystemMountInfo"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The <a href="vim.host.FileSystemMountInfo.html">HostFileSystemMountInfo</a> data object describes
  a host mount point for a file system.]]>
      </description-html>
            <property name="mountInfo" type-id-ref="vim.host.MountInfo"
      vmodl-name="mountInfo"
      >
      <description-html>
         <![CDATA[Information about the mount point.]]>
      </description-html>
      </property>

            <property name="volume" type-id-ref="vim.host.FileSystemVolume"
      vmodl-name="volume"
      >
      <description-html>
         <![CDATA[Information about the mounted volume.]]>
      </description-html>
      </property>

            <property name="vStorageSupport" type-id-ref="java.lang.String"
      vmodl-name="vStorageSupport"
      version-id-ref="vim.version.version6"
      is-optional="true"
      >
      <description-html>
         <![CDATA[vStorage hardware acceleration support status. This property
  represents the volume's capability for storage acceleration.
  See <a href="vim.host.FileSystemMountInfo.VStorageSupportStatus.html">FileSystemMountInfoVStorageSupportStatus</a> for valid
  values.
  <p>
  If the ESX Server supports hardware acceleration, the Server
  can offload specific virtual machine management operations
  to a storage device with the hardware acceleration feature.
  With hardware assistance, the host performs storage operations
  faster and consumes less CPU, memory, and storage fabric bandwidth.
  <p>
  For vSphere 4.0 or earlier hosts, this value will be unset.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.host.FileSystemMountInfo.VStorageSupportStatus</nested-type-id-ref>
   </data-object>
   <data-object name="CryptoSpecDecrypt"
      type-id="vim.encryption.CryptoSpecDecrypt"
      vmodl-name="vim.encryption.CryptoSpecDecrypt"
      version-id-ref="vim.version.version11"
      base-type-id="vim.encryption.CryptoSpec"
      >
      <description-html>
         <![CDATA[This data object type encapsulates virtual machine or disk encryption
  settings for decryption operation.]]>
      </description-html>
   </data-object>
   <data-object name="HostNatServicePortForwardSpec"
      type-id="vim.host.NatService.PortForwardSpecification"
      vmodl-name="vim.host.NatService.PortForwardSpecification"
      enclosing-type-id-ref="vim.host.NatService"
      version-id-ref="vim.version.version2"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object type describes the
  Network Address Translation (NAT) port forwarding specification.]]>
      </description-html>
            <property name="type" type-id-ref="java.lang.String"
      vmodl-name="type"
      >
      <description-html>
         <![CDATA[Either "tcp" or "udp".]]>
      </description-html>
      </property>

            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      >
      <description-html>
         <![CDATA[The user-defined name to identify the service being forwarded.
  No white spaces are allowed in the string.]]>
      </description-html>
      </property>

            <property name="hostPort" type-id-ref="INT"
      vmodl-name="hostPort"
      >
      <description-html>
         <![CDATA[The port number on the host.  Network traffic sent to the host on this
  TCP/UDP port is forwarded to the guest at the specified IP address
  and port.]]>
      </description-html>
      </property>

            <property name="guestPort" type-id-ref="INT"
      vmodl-name="guestPort"
      >
      <description-html>
         <![CDATA[The port number for the guest.  Network traffic from the host is
  forwarded to this port.]]>
      </description-html>
      </property>

            <property name="guestIpAddress" type-id-ref="java.lang.String"
      vmodl-name="guestIpAddress"
      >
      <description-html>
         <![CDATA[The IP address for the guest.  Network traffic from the host is
  forwarded to this IP address.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ScsiLun"
      type-id="vim.host.ScsiLun"
      vmodl-name="vim.host.ScsiLun"
      version-id-ref="vim.version.version1"
      base-type-id="vim.host.Device"
      >
      <description-html>
         <![CDATA[The <a href="vim.host.ScsiLun.html">ScsiLun</a> data object describes a SCSI logical unit.
  A SCSI logical unit is a host device that an ESX Server or virtual machine
  can use for I/O operations.
  <p>
  An ESX Server creates SCSI logical unit objects to represent
  devices in the host configuration. (See the definition of
  <a href="vim.host.ScsiLun.ScsiLunType.html">ScsiLunType</a> for a list of the supported device types.)
  The vSphere API uses one of two object types to represent a SCSI
  logical unit, depending on the device type.
  <ul>
    <li>Disks containing file system volumes or parts of volumes for hosts
        or raw disks for virtual machines. To represent disks, the ESX Server
        creates a <a href="vim.host.ScsiDisk.html">HostScsiDisk</a> object, which inherits properties from
        the <a href="vim.host.ScsiLun.html">ScsiLun</a> base class.
    </li>
    <li>Other SCSI devices, for example SCSI passthrough devices
        for virtual machines. To represent one of these devices,
        the ESX Server creates a <a href="vim.host.ScsiLun.html">ScsiLun</a> object.
    </li>
  </ul>
  <p>
  When the Server creates a <a href="vim.host.ScsiDisk.html">HostScsiDisk</a> or <a href="vim.host.ScsiLun.html">ScsiLun</a> object,
  it specifies a valid device name and type:
  <ul>
    <li><a href="vim.host.Device.html#deviceName">deviceName</a> - A string representing the name of the device
        that is meaningful to the host. The following are some examples of
        device names. <br />
        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<code>/dev/cdrom</code><br />
        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<code>/vmkdev/vmhba0:0:1:0</code><br />
        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<code>PhysicalDrive0</code><br />
    </li>
    <li><a href="vim.host.Device.html#deviceType">deviceType</a> - A string describing the type of device.
        The following are some examples of device types. <br />
        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<code>scsi-cdrom</code> <br />
        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<code>scsi-tape</code> <br />
        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<code>scsi-disk</code> <br />
        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<code>scsi-processor</code> <br />
        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<code>scsi-unknown</code>
    </li>
  </ul>]]>
      </description-html>
            <property name="key" type-id-ref="java.lang.String"
      vmodl-name="key"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Linkable identifier]]>
      </description-html>
      </property>

            <property name="uuid" type-id-ref="java.lang.String"
      vmodl-name="uuid"
      >
      <description-html>
         <![CDATA[Universally unique identifier for the LUN used to identify ScsiLun across
  multiple servers.
  <p>
  This identifier can be used to identify analogous objects in other views
  such as <a href="vim.host.MultipathInfo.LogicalUnit.html">HostMultipathInfoLogicalUnit</a> and <a href="vim.host.ScsiTopology.Lun.html">HostScsiTopologyLun</a>.
  <p><br>See <a href="vim.host.MultipathInfo.LogicalUnit.html">HostMultipathInfoLogicalUnit</a><br>See <a href="vim.host.ScsiTopology.Lun.html">HostScsiTopologyLun</a><br>]]>
      </description-html>
      </property>

            <property name="descriptor" type-id-ref="vim.host.ScsiLun.Descriptor"
      vmodl-name="descriptor"
      version-id-ref="vim.version.version5"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of descriptors that can be used to identify the LUN object.  The
  uuid will also appear as a descriptor.
  <p>
  The id field in the descriptor is a string that can be used to correlate
  the ScsiLun across multiple servers.  A ScsiLun may have multiple
  descriptors.  The choice and order of these descriptors may be different
  on different servers.
  <p>
  Not all descriptors are suitable for correlation.  Some descriptors are
  only sufficient to identify the ScsiLun within a single host.  Each
  descriptor contains a quality property that indicates whether or not
  the descriptor is suitable for correlation.]]>
      </description-html>
      </property>

            <property name="canonicalName" type-id-ref="java.lang.String"
      vmodl-name="canonicalName"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Canonical name of the SCSI logical unit.
  <p>
  Disk partition or extent identifiers refer to this name when
  referring to a disk.  Use this property to correlate a partition
  or extent to a specific SCSI disk.
  <p><br>See <a href="vim.host.ScsiDisk.Partition.html#diskName">diskName</a><br>]]>
      </description-html>
      </property>

            <property name="displayName" type-id-ref="java.lang.String"
      vmodl-name="displayName"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[User configurable display name of the SCSI logical unit.  A default
  display name will be used if available.  If the display name is not
  supported, it will be unset.  The display name does not have to be
  unique but it is recommended that it be unique.]]>
      </description-html>
      </property>

            <property name="lunType" type-id-ref="java.lang.String"
      vmodl-name="lunType"
      >
      <description-html>
         <![CDATA[The type of SCSI device.  Must be one of the values of
  <a href="vim.host.ScsiLun.ScsiLunType.html">ScsiLunType</a>.]]>
      </description-html>
      </property>

            <property name="vendor" type-id-ref="java.lang.String"
      vmodl-name="vendor"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The vendor of the SCSI device.]]>
      </description-html>
      </property>

            <property name="model" type-id-ref="java.lang.String"
      vmodl-name="model"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The model number of the SCSI device.]]>
      </description-html>
      </property>

            <property name="revision" type-id-ref="java.lang.String"
      vmodl-name="revision"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The revision of the SCSI device.]]>
      </description-html>
      </property>

            <property name="scsiLevel" type-id-ref="INT"
      vmodl-name="scsiLevel"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The SCSI level of the SCSI device.]]>
      </description-html>
      </property>

            <property name="serialNumber" type-id-ref="java.lang.String"
      vmodl-name="serialNumber"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The serial number of the SCSI device.
  For a device that is SCSI-3 compliant, this property is derived
  from page 80h of the Vital Product Data (VPD), as defined by the
  SCSI-3 Primary Commands (SPC-3) spec.  Not all SCSI-3 compliant
  devices provide this information.  For devices that are not
  SCSI-3 compliant, this property is not defined.]]>
      </description-html>
      </property>

            <property name="durableName" type-id-ref="vim.host.ScsiLun.DurableName"
      vmodl-name="durableName"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The durable name of the SCSI device.
  For a SCSI-3 compliant device this property is derived from the
  payloads of pages 80h and 83h of the Vital Product Data (VPD) as
  defined by the T10 and SMI standards. For devices that do not provide
  this information, this property is not defined.]]>
      </description-html>
      </property>

            <property name="alternateName" type-id-ref="vim.host.ScsiLun.DurableName"
      vmodl-name="alternateName"
      version-id-ref="vim.version.version2"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Alternate durable names.
  Records all available durable names derived from page 80h of the Vital
  Product Data (VPD) and the Identification Vital Product Data (VPD) page
  83h as defined by the SCSI-3 Primary Commands. For devices that are not
  SCSI-3 compliant this property is not defined.]]>
      </description-html>
      </property>

            <property name="standardInquiry" type-id-ref="BYTE"
      vmodl-name="standardInquiry"
      version-id-ref="vim.version.version2"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Standard Inquiry payload.
  For a SCSI-3 compliant device this property is derived from the
  standard inquiry data. For devices that are not SCSI-3 compliant this
  property is not defined.]]>
      </description-html>
      </property>

            <property name="queueDepth" type-id-ref="INT"
      vmodl-name="queueDepth"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The queue depth of SCSI device.]]>
      </description-html>
      </property>

            <property name="operationalState" type-id-ref="java.lang.String"
      vmodl-name="operationalState"
      is-array="true"
      >
      <description-html>
         <![CDATA[The operational states of the LUN.
  When more than one item is present in the array, the first state
  should be considered the primary state.  For example, a LUN may
  be "ok" and "degraded" indicating I/O is still possible to the LUN, but
  it is operating in a degraded mode.<br>See <a href="vim.host.ScsiLun.State.html">ScsiLunState</a><br>]]>
      </description-html>
      </property>

            <property name="capabilities" type-id-ref="vim.host.ScsiLun.Capabilities"
      vmodl-name="capabilities"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Capabilities of SCSI device.]]>
      </description-html>
      </property>

            <property name="vStorageSupport" type-id-ref="java.lang.String"
      vmodl-name="vStorageSupport"
      version-id-ref="vim.version.version6"
      is-optional="true"
      >
      <description-html>
         <![CDATA[vStorage hardware acceleration support status. This property
  represents storage acceleration provided by the SCSI logical unit.
  See <a href="vim.host.ScsiLun.VStorageSupportStatus.html">ScsiLunVStorageSupportStatus</a> for valid values.
  <p>
  If a storage device supports hardware acceleration,
  the ESX host can offload specific virtual machine management
  operations to the storage device. With hardware assistance,
  the host performs storage operations faster and consumes
  less CPU, memory, and storage fabric bandwidth.
  <p>
  For vSphere 4.0 or earlier hosts, this value will be unset.]]>
      </description-html>
      </property>

            <property name="protocolEndpoint" type-id-ref="BOOLEAN"
      vmodl-name="protocolEndpoint"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates that this SCSI LUN is protocol endpoint. This
 property will be populated if and only if host supports
 VirtualVolume based Datastore. Check the host capability
 <a href="vim.host.Capability.html#virtualVolumeDatastoreSupported">virtualVolumeDatastoreSupported</a>.

 See <a href="vim.host.ProtocolEndpoint.html">HostProtocolEndpoint</a>.]]>
      </description-html>
      </property>

            <property name="perenniallyReserved" type-id-ref="BOOLEAN"
      vmodl-name="perenniallyReserved"
      version-id-ref="vim.version.version14"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates the state of a perennially reserved flag for a LUN. If
 set for Raw Device Mapped (RDM) LUNs, the host startup or LUN rescan
 take comparatively shorter duration than when it is unset.]]>
      </description-html>
      </property>

            <property name="clusteredVmdkSupported" type-id-ref="BOOLEAN"
      vmodl-name="clusteredVmdkSupported"
      version-id-ref="vim.version.v7_0"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates if LUN has the prequisite properties to enable Clustered Vmdk
 feature once formatted into VMFS Datastore.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.host.ScsiLun.ScsiLunType</nested-type-id-ref>
      <nested-type-id-ref>vim.host.ScsiLun.Capabilities</nested-type-id-ref>
      <nested-type-id-ref>vim.host.ScsiLun.DurableName</nested-type-id-ref>
      <nested-type-id-ref>vim.host.ScsiLun.State</nested-type-id-ref>
      <nested-type-id-ref>vim.host.ScsiLun.DescriptorQuality</nested-type-id-ref>
      <nested-type-id-ref>vim.host.ScsiLun.Descriptor</nested-type-id-ref>
      <nested-type-id-ref>vim.host.ScsiLun.VStorageSupportStatus</nested-type-id-ref>
   </data-object>
   <data-object name="VirtualMachineFileLayoutExDiskLayout"
      type-id="vim.vm.FileLayoutEx.DiskLayout"
      vmodl-name="vim.vm.FileLayoutEx.DiskLayout"
      enclosing-type-id-ref="vim.vm.FileLayoutEx"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Layout of a virtual disk, including the base- and delta- disks.
  <p>
  A virtual disk typically is made up of a chain of disk-units.]]>
      </description-html>
            <property name="key" type-id-ref="INT"
      vmodl-name="key"
      >
      <description-html>
         <![CDATA[Identifier for the virtual disk in <a href="vim.vm.VirtualHardware.html#device">device</a>.]]>
      </description-html>
      </property>

            <property name="chain" type-id-ref="vim.vm.FileLayoutEx.DiskUnit"
      vmodl-name="chain"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The disk-unit chain that makes up this virtual disk.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="CustomizationIdentification"
      type-id="vim.vm.customization.Identification"
      vmodl-name="vim.vm.customization.Identification"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The Identification data object type provides information needed to join a workgroup
  or domain.
  <p>
  The Identification data object type maps to the Identification key in the
  <tt>sysprep.xml</tt> answer file. These values are transferred into the
  <tt>sysprep.xml</tt> file that VirtualCenter stores on the target virtual disk. For
  more detailed information, see <a href =
  "https://technet.microsoft.com/en-us/library/cc771830(v=ws.10).aspx" target="_blank"
  >Performing Unattended Installations</a>.]]>
      </description-html>
            <property name="joinWorkgroup" type-id-ref="java.lang.String"
      vmodl-name="joinWorkgroup"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The workgroup that the virtual machine should join. If this value is supplied,
  then the domain name and authentication fields must be empty.]]>
      </description-html>
      </property>

            <property name="joinDomain" type-id-ref="java.lang.String"
      vmodl-name="joinDomain"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The domain that the virtual machine should join. If this value is supplied, then
  domainAdmin and domainAdminPassword must also be supplied, and the workgroup
  name must be empty.]]>
      </description-html>
      </property>

            <property name="domainAdmin" type-id-ref="java.lang.String"
      vmodl-name="domainAdmin"
      is-optional="true"
      >
      <description-html>
         <![CDATA[This is the domain user account used for authentication if the virtual machine
  is joining a domain. The user does not need to be a domain administrator, but
  the account must have the privileges required to add computers to the domain.]]>
      </description-html>
      </property>

            <property name="domainAdminPassword" type-id-ref="vim.vm.customization.Password"
      vmodl-name="domainAdminPassword"
      is-optional="true"
      >
      <description-html>
         <![CDATA[This is the password for the domain user account used for authentication if the
  virtual machine is joining a domain.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualUSBUSBBackingOption"
      type-id="vim.vm.device.VirtualUSBOption.USBBackingOption"
      vmodl-name="vim.vm.device.VirtualUSBOption.USBBackingOption"
      enclosing-type-id-ref="vim.vm.device.VirtualUSBOption"
      version-id-ref="vim.version.version2"
      base-type-id="vim.vm.device.VirtualDeviceOption.DeviceBackingOption"
      >
      <description-html>
         <![CDATA[The <a href="vim.vm.device.VirtualUSBOption.USBBackingOption.html">VirtualUSBUSBBackingOption</a> data object
  contains the options for virtual backing for a USB device.
  This backing option indicates support for a local connection where
  the virtual machine will remain on the host to which the USB device
  is attached.]]>
      </description-html>
   </data-object>
   <data-object name="HostDiskMappingOption"
      type-id="vim.vm.device.HostDiskMappingOption"
      vmodl-name="vim.vm.device.HostDiskMappingOption"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The HostDiskMappingOption data object type describes
  the options for a virtual disk mapping to a host disk.]]>
      </description-html>
            <property name="physicalPartition" type-id-ref="vim.vm.device.HostDiskMappingOption.PartitionOption"
      vmodl-name="physicalPartition"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Array of valid partitions on this physical disk.
  There is no default for this array.]]>
      </description-html>
      </property>

            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      >
      <description-html>
         <![CDATA[Host resource name.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.vm.device.HostDiskMappingOption.PartitionOption</nested-type-id-ref>
   </data-object>
   <data-object name="PnicUplinkProfile"
      type-id="vim.profile.host.PnicUplinkProfile"
      vmodl-name="vim.profile.host.PnicUplinkProfile"
      version-id-ref="vim.version.version5"
      base-type-id="vim.profile.ApplyProfile"
      >
      <description-html>
         <![CDATA[The <a href="vim.profile.host.PnicUplinkProfile.html">PnicUplinkProfile</a> data object specifies the mapping between
 a physical NIC and an uplink port.
 The <a href="vim.profile.ApplyProfile.html#policy">policy</a> property contains
 the configuration data values.]]>
      </description-html>
            <property name="key" type-id-ref="java.lang.String"
      vmodl-name="key"
      >
      <description-html>
         <![CDATA[Linkable identifier.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DvsPortDisconnectedEvent"
      type-id="vim.event.DvsPortDisconnectedEvent"
      vmodl-name="vim.event.DvsPortDisconnectedEvent"
      version-id-ref="vim.version.version5"
      base-type-id="vim.event.DvsEvent"
      >
      <description-html>
         <![CDATA[A port is disconnected in the distributed virtual switch.]]>
      </description-html>
            <property name="portKey" type-id-ref="java.lang.String"
      vmodl-name="portKey"
      >
      <description-html>
         <![CDATA[The port key.]]>
      </description-html>
      </property>

            <property name="connectee" type-id-ref="vim.dvs.PortConnectee"
      vmodl-name="connectee"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The port's formal connectee.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ResourcePoolDestroyedEvent"
      type-id="vim.event.ResourcePoolDestroyedEvent"
      vmodl-name="vim.event.ResourcePoolDestroyedEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.ResourcePoolEvent"
      >
      <description-html>
         <![CDATA[This event records when a resource pool is destroyed.]]>
      </description-html>
   </data-object>
   <data-object name="VirtualDiskFlatVer2BackingOption"
      type-id="vim.vm.device.VirtualDiskOption.FlatVer2BackingOption"
      vmodl-name="vim.vm.device.VirtualDiskOption.FlatVer2BackingOption"
      enclosing-type-id-ref="vim.vm.device.VirtualDiskOption"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.device.VirtualDeviceOption.FileBackingOption"
      >
      <description-html>
         <![CDATA[This data object type contains the available options when backing a virtual
  disk using a host file with the flat file format used in VMware Server and
  in ESX Server 2.x and greater.
  Flat disks are pre-allocated, whereas sparse disks are grown as needed.]]>
      </description-html>
            <property name="diskMode" type-id-ref="vim.option.ChoiceOption"
      vmodl-name="diskMode"
      >
      <description-html>
         <![CDATA[The disk mode. Valid disk modes are:
  <ul>
  <li>vim.vm.device.VirtualDiskOption.DiskMode#persistent
  <li>vim.vm.device.VirtualDiskOption.DiskMode#independent_persistent
  <li>vim.vm.device.VirtualDiskOption.DiskMode#independent_nonpersistent
  </ul><br>See <a href="vim.vm.device.VirtualDiskOption.DiskMode.html">VirtualDiskMode</a><br>]]>
      </description-html>
      </property>

            <property name="split" type-id-ref="vim.option.BoolOption"
      vmodl-name="split"
      >
      <description-html>
         <![CDATA[Flag to indicate whether or not the host supports
  allowing the client to select whether or not a disk
  should be split.]]>
      </description-html>
      </property>

            <property name="writeThrough" type-id-ref="vim.option.BoolOption"
      vmodl-name="writeThrough"
      >
      <description-html>
         <![CDATA[Flag to indicate whether or not the host supports
  allowing the client to select "writethrough" as a mode for
  virtual disks. Typically, this is available only for VMware Server Linux hosts.]]>
      </description-html>
      </property>

            <property name="growable" type-id-ref="BOOLEAN"
      vmodl-name="growable"
      >
      <description-html>
         <![CDATA[Indicates whether or not this disk backing can be
  extended to larger sizes through a reconfigure operation.
  <p>
  If set to true, reconfiguring this virtual disk
  with a <a href="vim.vm.device.VirtualDisk.html#capacityInKB">capacityInKB</a> value greater
  than its current value will grow the disk to the newly specified size.]]>
      </description-html>
      </property>

            <property name="hotGrowable" type-id-ref="BOOLEAN"
      vmodl-name="hotGrowable"
      version-id-ref="vim.version.version2"
      >
      <description-html>
         <![CDATA[Indicates whether or not this disk backing can be
  extended to larger sizes through a reconfigure operation while
  the virtual machine is powered on.
  <p>
  If set to true, reconfiguring this virtual disk
  with a <a href="vim.vm.device.VirtualDisk.html#capacityInKB">capacityInKB</a> value greater
  than its current value will grow the disk to the newly specified size
  while the virtual machine is powered on.]]>
      </description-html>
      </property>

            <property name="uuid" type-id-ref="BOOLEAN"
      vmodl-name="uuid"
      version-id-ref="vim.version.version2"
      >
      <description-html>
         <![CDATA[Flag to indicate whether this backing supports disk UUID property.]]>
      </description-html>
      </property>

            <property name="thinProvisioned" type-id-ref="vim.option.BoolOption"
      vmodl-name="thinProvisioned"
      version-id-ref="vim.version.version5"
      >
      <description-html>
         <![CDATA[Flag to indicate if this backing supports thin-provisioned disks.
  <p>
  When creating a thin-provisioned disk (or converting an existing disk to
  to a thin-provisioned one), both the target datastore and the
  host accessing it must support thin-provisioning. This flag indicates only
  the host capability. See <a href="vim.Datastore.Capability.html#perFileThinProvisioningSupported">perFileThinProvisioningSupported</a>
  for datastore capability.]]>
      </description-html>
      </property>

            <property name="eagerlyScrub" type-id-ref="vim.option.BoolOption"
      vmodl-name="eagerlyScrub"
      version-id-ref="vim.version.version5"
      >
      <description-html>
         <![CDATA[Flag to indicate if this backing supports eager scrubbing.]]>
      </description-html>
      </property>

            <property name="deltaDiskFormat" type-id-ref="vim.option.ChoiceOption"
      vmodl-name="deltaDiskFormat"
      version-id-ref="vim.version.version7"
      is-deprecated="true"
      >
      <description-html>
         <![CDATA[Delta disk formats supported. Valid values are:
  <ul>
  <li>vim.vm.device.VirtualDisk.DeltaDiskFormat#redoLogFormat
  <li>vim.vm.device.VirtualDisk.DeltaDiskFormat#nativeFormat
  </ul>
  <p>]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 5.1, please use
  <a href="vim.vm.device.VirtualDiskOption.FlatVer2BackingOption.html#deltaDiskFormatsSupported">deltaDiskFormatsSupported</a>.]]>
      </deprecated-html>
      </property>

            <property name="deltaDiskFormatsSupported" type-id-ref="vim.vm.device.VirtualDiskOption.DeltaDiskFormatsSupported"
      vmodl-name="deltaDiskFormatsSupported"
      version-id-ref="vim.version.version8"
      is-array="true"
      >
      <description-html>
         <![CDATA[Delta disk formats supported for each datastore type.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VAppProductInfo"
      type-id="vim.vApp.ProductInfo"
      vmodl-name="vim.vApp.ProductInfo"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Information that describes what product a vApp contains, for example,
  the software that is installed in the contained virtual machines.]]>
      </description-html>
            <property name="key" type-id-ref="INT"
      vmodl-name="key"
      >
      <description-html>
         <![CDATA[A unique key for the product section]]>
      </description-html>
      </property>

            <property name="classId" type-id-ref="java.lang.String"
      vmodl-name="classId"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Class name for this attribute.
 <p>
 Valid values for classId:
 Any string except any white-space characters.]]>
      </description-html>
      </property>

            <property name="instanceId" type-id-ref="java.lang.String"
      vmodl-name="instanceId"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Class name for this attribute.
 <p>
 Valid values for instanceId:
 Any string except any white-space characters.]]>
      </description-html>
      </property>

            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Name of the product.]]>
      </description-html>
      </property>

            <property name="vendor" type-id-ref="java.lang.String"
      vmodl-name="vendor"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Vendor of the product.]]>
      </description-html>
      </property>

            <property name="version" type-id-ref="java.lang.String"
      vmodl-name="version"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Short version of the product, for example, 1.0.]]>
      </description-html>
      </property>

            <property name="fullVersion" type-id-ref="java.lang.String"
      vmodl-name="fullVersion"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Full-version of the product, for example, 1.0-build 12323.]]>
      </description-html>
      </property>

            <property name="vendorUrl" type-id-ref="java.lang.String"
      vmodl-name="vendorUrl"
      is-optional="true"
      >
      <description-html>
         <![CDATA[URL to vendor homepage.]]>
      </description-html>
      </property>

            <property name="productUrl" type-id-ref="java.lang.String"
      vmodl-name="productUrl"
      is-optional="true"
      >
      <description-html>
         <![CDATA[URL to product homepage.]]>
      </description-html>
      </property>

            <property name="appUrl" type-id-ref="java.lang.String"
      vmodl-name="appUrl"
      is-optional="true"
      >
      <description-html>
         <![CDATA[URL to entry-point for application. This is often specified using
  a macro, for example, http://${app.ip}/, where app.ip is a defined property
  on the virtual machine or vApp container.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="SingleMac"
      type-id="vim.SingleMac"
      vmodl-name="vim.SingleMac"
      version-id-ref="vim.version.version9"
      base-type-id="vim.MacAddress"
      >
      <description-html>
         <![CDATA[This class defines a Single MAC address.]]>
      </description-html>
            <property name="address" type-id-ref="java.lang.String"
      vmodl-name="address"
      >
      <description-html>
         <![CDATA[The MAC address. The value for this property should be in the form
  like "00:50:56:bc:ef:ab".]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ComputeResourceHostSPBMLicenseInfo"
      type-id="vim.ComputeResource.HostSPBMLicenseInfo"
      vmodl-name="vim.ComputeResource.HostSPBMLicenseInfo"
      enclosing-type-id-ref="vim.ComputeResource"
      version-id-ref="vim.version.version7"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The <a href="vim.ComputeResource.HostSPBMLicenseInfo.html">ComputeResourceHostSPBMLicenseInfo</a> data object
  encapsulates the SPBM(Storage Policy Based Management) license
  information for a host.]]>
      </description-html>
            <property name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      >
      </property>

            <property name="licenseState" type-id-ref="vim.ComputeResource.HostSPBMLicenseInfo.HostSPBMLicenseState"
      vmodl-name="licenseState"
      >
      </property>

      <nested-type-id-ref>vim.ComputeResource.HostSPBMLicenseInfo.HostSPBMLicenseState</nested-type-id-ref>
   </data-object>
   <data-object name="HostScsiTopology"
      type-id="vim.host.ScsiTopology"
      vmodl-name="vim.host.ScsiTopology"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object type describes the SCSI topology information.  The
  data objects in this data object type model the
  SCSI storage objects from a topological point of view.  The SCSI topological
  view organizes objects by SCSI interface, which contain targets, which in
  turn contain logical units.
  <p>
  SCSI Topology information is not guaranteed to exhaustively enumerate all
  storage devices on the system.  It only shows storage devices that are
  actually enumerable from a host bus adapter.  This means that only storage
  devices that are composed from one or more paths, which are in turn provided
  by a host bus adapter, will appear in this inventory.
  <p>
  Storage devices provided by the native multipathing plugin (NMP) will always
  be represented in this inventory since NMP uses a simple policy to create
  devices out of the paths it claims.
  <p>
  Examples of storage devices that will not appear in this inventory are
  logical devices that are not formed from directly claiming paths.  Specific
  examples of devices that will not appear in this inventory include a device
  backed by a ramdisk or formed from a software RAID plugin.
  <p>
  Legacy note: In hosts where <a href="vim.host.PlugStoreTopology.html">HostPlugStoreTopology</a> is not
  defined or does not exist on the <a href="vim.host.StorageDeviceInfo.html">HostStorageDeviceInfo</a> object,
  only native multipathing exists.  That means for these hosts, the
  ScsiTopology object contains the complete set of LUNs and targets
  available on the host.]]>
      </description-html>
            <property name="adapter" type-id-ref="vim.host.ScsiTopology.Interface"
      vmodl-name="adapter"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The list of SCSI interfaces.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.host.ScsiTopology.Interface</nested-type-id-ref>
      <nested-type-id-ref>vim.host.ScsiTopology.Target</nested-type-id-ref>
      <nested-type-id-ref>vim.host.ScsiTopology.Lun</nested-type-id-ref>
   </data-object>
   <data-object name="CustomizationUserData"
      type-id="vim.vm.customization.UserData"
      vmodl-name="vim.vm.customization.UserData"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Personal data pertaining to the owner of the virtual machine.
  <p>
  The UserData data object type maps to the UserData key in the <tt>sysprep.xml</tt>
  answer file. These values are transferred directly into the <tt>sysprep.xml</tt>
  file that VirtualCenter stores on the target virtual disk. For more detailed
  information, see <a href =
  "https://technet.microsoft.com/en-us/library/cc771830(v=ws.10).aspx" target="_blank"
  >Performing Unattended Installations</a>.]]>
      </description-html>
            <property name="fullName" type-id-ref="java.lang.String"
      vmodl-name="fullName"
      >
      <description-html>
         <![CDATA[User's full name.]]>
      </description-html>
      </property>

            <property name="orgName" type-id-ref="java.lang.String"
      vmodl-name="orgName"
      >
      <description-html>
         <![CDATA[User's organization.]]>
      </description-html>
      </property>

            <property name="computerName" type-id-ref="vim.vm.customization.NameGenerator"
      vmodl-name="computerName"
      >
      <description-html>
         <![CDATA[The computer name of the (Windows) virtual machine. Computer name may contain
 letters (A-Z), numbers(0-9) and hyphens (-) but no spaces or periods (.).
 The name may not consists entirely of digits.

 Computer name is restricted to 15 characters in length. If the computer
 name is longer than 15 characters, it will be truncated to 15 characters.]]>
      </description-html>
      </property>

            <property name="productId" type-id-ref="java.lang.String"
      vmodl-name="productId"
      >
      <description-html>
         <![CDATA[Microsoft Sysprep requires that a valid serial number be included in the answer
  file when mini-setup runs. This serial number is ignored if the original guest
  operating system was installed using a volume-licensed CD.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="GuestPosixFileAttributes"
      type-id="vim.vm.guest.FileManager.PosixFileAttributes"
      vmodl-name="vim.vm.guest.FileManager.PosixFileAttributes"
      enclosing-type-id-ref="vim.vm.guest.FileManager"
      version-id-ref="vim.version.version7"
      base-type-id="vim.vm.guest.FileManager.FileAttributes"
      >
      <description-html>
         <![CDATA[Different attributes for Posix guest file.]]>
      </description-html>
            <property name="ownerId" type-id-ref="INT"
      vmodl-name="ownerId"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The owner ID.
 If this property is not specified when passing a
 <a href="vim.vm.guest.FileManager.PosixFileAttributes.html">GuestPosixFileAttributes</a> object to
 <a href="vim.vm.guest.FileManager.html#initiateFileTransferToGuest">InitiateFileTransferToGuest</a>,
 the default value will be the owner Id of the user who invoked
 the file transfer operation.]]>
      </description-html>
      </property>

            <property name="groupId" type-id-ref="INT"
      vmodl-name="groupId"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The group ID.
 If this property is not specified when passing a
 <a href="vim.vm.guest.FileManager.PosixFileAttributes.html">GuestPosixFileAttributes</a> object to
 <a href="vim.vm.guest.FileManager.html#initiateFileTransferToGuest">InitiateFileTransferToGuest</a>,
 the default value will be the group Id of the user who invoked
 the file transfer operation.]]>
      </description-html>
      </property>

            <property name="permissions" type-id-ref="LONG"
      vmodl-name="permissions"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The file permissions.  When creating a file with
 <a href="vim.vm.guest.FileManager.html#initiateFileTransferToGuest">InitiateFileTransferToGuest</a>,
 these are in chmod(2) format.  When reporting on
 existing files, these are in stat(2) format.

 If this property is not specified when passing a
 <a href="vim.vm.guest.FileManager.PosixFileAttributes.html">GuestPosixFileAttributes</a> object to
 <a href="vim.vm.guest.FileManager.html#initiateFileTransferToGuest">InitiateFileTransferToGuest</a>,
 the file will be created with 0644 permissions.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DvsHealthStatusChangeEvent"
      type-id="vim.event.DvsHealthStatusChangeEvent"
      vmodl-name="vim.event.DvsHealthStatusChangeEvent"
      version-id-ref="vim.version.version8"
      base-type-id="vim.event.HostEvent"
      >
      <description-html>
         <![CDATA[Health check status of an switch is changed.]]>
      </description-html>
            <property name="switchUuid" type-id-ref="java.lang.String"
      vmodl-name="switchUuid"
      >
      <description-html>
         <![CDATA[UUID of the DVS the host is connected to.]]>
      </description-html>
      </property>

            <property name="healthResult" type-id-ref="vim.dvs.HostMember.HealthCheckResult"
      vmodl-name="healthResult"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Health check status.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostConfigSpec"
      type-id="vim.host.ConfigSpec"
      vmodl-name="vim.host.ConfigSpec"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The <a href="vim.host.ConfigSpec.html">HostConfigSpec</a> data object provides access to data objects
  that specify configuration changes to be applied to an ESX host.]]>
      </description-html>
            <property name="nasDatastore" type-id-ref="vim.host.NasVolume.Config"
      vmodl-name="nasDatastore"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Configurations to create NAS datastores.]]>
      </description-html>
      </property>

            <property name="network" type-id-ref="vim.host.NetworkConfig"
      vmodl-name="network"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Network system information.]]>
      </description-html>
      </property>

            <property name="nicTypeSelection" type-id-ref="vim.host.VirtualNicManager.NicTypeSelection"
      vmodl-name="nicTypeSelection"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Type selection for different VirtualNics.]]>
      </description-html>
      </property>

            <property name="service" type-id-ref="vim.host.ServiceConfig"
      vmodl-name="service"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Host service configuration.]]>
      </description-html>
      </property>

            <property name="firewall" type-id-ref="vim.host.FirewallConfig"
      vmodl-name="firewall"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Firewall configuration.]]>
      </description-html>
      </property>

            <property name="option" type-id-ref="vim.option.OptionValue"
      vmodl-name="option"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Host configuration options as defined by the
  <a href="vim.option.OptionValue.html">OptionValue</a> data object type.]]>
      </description-html>
      </property>

            <property name="datastorePrincipal" type-id-ref="java.lang.String"
      vmodl-name="datastorePrincipal"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Datastore principal user.]]>
      </description-html>
      </property>

            <property name="datastorePrincipalPasswd" type-id-ref="java.lang.String"
      vmodl-name="datastorePrincipalPasswd"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Password for the datastore principal.]]>
      </description-html>
      </property>

            <property name="datetime" type-id-ref="vim.host.DateTimeConfig"
      vmodl-name="datetime"
      is-optional="true"
      >
      <description-html>
         <![CDATA[DateTime Configuration.]]>
      </description-html>
      </property>

            <property name="storageDevice" type-id-ref="vim.host.StorageDeviceInfo"
      vmodl-name="storageDevice"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Storage system information.]]>
      </description-html>
      </property>

            <property name="license" type-id-ref="vim.host.LicenseSpec"
      vmodl-name="license"
      is-optional="true"
      >
      <description-html>
         <![CDATA[License configuration for the host.]]>
      </description-html>
      </property>

            <property name="security" type-id-ref="vim.host.SecuritySpec"
      vmodl-name="security"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Security specification.]]>
      </description-html>
      </property>

            <property name="userAccount" type-id-ref="vim.host.LocalAccountManager.AccountSpecification"
      vmodl-name="userAccount"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of users to create/update with new password.]]>
      </description-html>
      </property>

            <property name="usergroupAccount" type-id-ref="vim.host.LocalAccountManager.AccountSpecification"
      vmodl-name="usergroupAccount"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of users to create/update with new password.]]>
      </description-html>
      </property>

            <property name="memory" type-id-ref="vim.host.MemorySpec"
      vmodl-name="memory"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Memory configuration for the host.]]>
      </description-html>
      </property>

            <property name="activeDirectory" type-id-ref="vim.host.ActiveDirectorySpec"
      vmodl-name="activeDirectory"
      version-id-ref="vim.version.version6"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Active Directory configuration change.]]>
      </description-html>
      </property>

            <property name="genericConfig" type-id-ref="vmodl.KeyAnyValue"
      vmodl-name="genericConfig"
      version-id-ref="vim.version.version7"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Advanced configuration.]]>
      </description-html>
      </property>

            <property name="graphicsConfig" type-id-ref="vim.host.GraphicsConfig"
      vmodl-name="graphicsConfig"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Graphics configuration for a host.]]>
      </description-html>
      </property>

            <property name="assignableHardwareConfig" type-id-ref="vim.host.AssignableHardwareConfig"
      vmodl-name="assignableHardwareConfig"
      version-id-ref="vim.version.v7_0"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Assignable Hardware configuration for the host]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualAppLinkInfo"
      type-id="vim.VirtualApp.LinkInfo"
      vmodl-name="vim.VirtualApp.LinkInfo"
      enclosing-type-id-ref="vim.VirtualApp"
      version-id-ref="vim.version.version6"
      is-deprecated="true"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Linked child information.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 5.1.]]>
      </deprecated-html>
            <property name="key" type-id-ref="vim.ManagedEntity"
      vmodl-name="key"
      >
      <description-html>
         <![CDATA[The key contains a reference to the entity that is linked to this vApp]]>
      </description-html>
      </property>

            <property name="destroyWithParent" type-id-ref="BOOLEAN"
      vmodl-name="destroyWithParent"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Whether the entity should be removed, when this vApp is removed]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostShortNameToIpFailedEvent"
      type-id="vim.event.HostShortNameToIpFailedEvent"
      vmodl-name="vim.event.HostShortNameToIpFailedEvent"
      version-id-ref="vim.version.version2"
      is-deprecated="true"
      base-type-id="vim.event.HostEvent"
      >
      <description-html>
         <![CDATA[This event records that the host's short name could not be resolved to an IP address.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 5.0, the event is no longer relevant.]]>
      </deprecated-html>
            <property name="shortName" type-id-ref="java.lang.String"
      vmodl-name="shortName"
      >
      </property>

   </data-object>
   <data-object name="NetIpRouteConfigInfoIpRoute"
      type-id="vim.net.IpRouteConfigInfo.IpRoute"
      vmodl-name="vim.net.IpRouteConfigInfo.IpRoute"
      enclosing-type-id-ref="vim.net.IpRouteConfigInfo"
      version-id-ref="vim.version.version6"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[IpRoute report an individual host, network or default destination network
 reachable through a given gateway.]]>
      </description-html>
            <property name="network" type-id-ref="java.lang.String"
      vmodl-name="network"
      >
      <description-html>
         <![CDATA[IP Address of the destination IP network.
 IPv6 addresses are 128-bit addresses represented
 as eight fields of up to four hexadecimal digits. A colon separates each
 field (:). For example, 2001:DB8:101::230:6eff:fe04:d9ff. The address can
 also consist of  symbol '::' to represent multiple 16-bit groups of
 contiguous 0's only once in an address as described in RFC 2373.]]>
      </description-html>
      </property>

            <property name="prefixLength" type-id-ref="INT"
      vmodl-name="prefixLength"
      >
      <description-html>
         <![CDATA[The prefix length. For IPv4 the value range is 0-31.
 For IPv6 prefixLength is a decimal value range 0-127. The property
 represents the number of contiguous, higher-order bits of the address that make
 up the network portion of the IP address.]]>
      </description-html>
      </property>

            <property name="gateway" type-id-ref="vim.net.IpRouteConfigInfo.Gateway"
      vmodl-name="gateway"
      >
      <description-html>
         <![CDATA[Where to send the packets for this route.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ProfileMetadataProfileOperationMessage"
      type-id="vim.profile.ProfileMetadata.ProfileOperationMessage"
      vmodl-name="vim.profile.ProfileMetadata.ProfileOperationMessage"
      enclosing-type-id-ref="vim.profile.ProfileMetadata"
      version-id-ref="vim.version.version12"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Some operations on host profile documents may cause unexpected result.
 For example, deleting a profile instance of vswitch may break the
 network connectivity.

 This data class provides the localizable message which may be
 presented before or after an operation happens.]]>
      </description-html>
            <property name="operationName" type-id-ref="java.lang.String"
      vmodl-name="operationName"
      >
      <description-html>
         <![CDATA[The operation name.]]>
      </description-html>
      </property>

            <property name="message" type-id-ref="vmodl.LocalizableMessage"
      vmodl-name="message"
      >
      <description-html>
         <![CDATA[The localization message for the operation.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostIsolationIpPingFailedEvent"
      type-id="vim.event.HostIsolationIpPingFailedEvent"
      vmodl-name="vim.event.HostIsolationIpPingFailedEvent"
      version-id-ref="vim.version.version2"
      base-type-id="vim.event.HostDasEvent"
      >
      <description-html>
         <![CDATA[This event records that the isolation address could not be pinged.
  The default isolation address is the service console's default gateway.]]>
      </description-html>
            <property name="isolationIp" type-id-ref="java.lang.String"
      vmodl-name="isolationIp"
      >
      </property>

   </data-object>
   <data-object name="HostPMemVolume"
      type-id="vim.host.PMemVolume"
      vmodl-name="vim.host.PMemVolume"
      version-id-ref="vim.version.version12"
      base-type-id="vim.host.FileSystemVolume"
      >
      <description-html>
         <![CDATA[The VMFS file system.]]>
      </description-html>
            <property name="uuid" type-id-ref="java.lang.String"
      vmodl-name="uuid"
      >
      <description-html>
         <![CDATA[The universally unique identifier assigned to PMem volume.]]>
      </description-html>
      </property>

            <property name="version" type-id-ref="java.lang.String"
      vmodl-name="version"
      >
      <description-html>
         <![CDATA[Version of the PMem FS]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="CustomizationPassword"
      type-id="vim.vm.customization.Password"
      vmodl-name="vim.vm.customization.Password"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Contains a password string and a flag that specifies whether the string is in plain
  text or encrypted.]]>
      </description-html>
            <property name="value" type-id-ref="java.lang.String"
      vmodl-name="value"
      >
      <description-html>
         <![CDATA[The password string. It is encrypted if the associated plainText flag is false.]]>
      </description-html>
      </property>

            <property name="plainText" type-id-ref="BOOLEAN"
      vmodl-name="plainText"
      >
      <description-html>
         <![CDATA[Flag to specify whether or not the password is in plain text, rather than
  encrypted.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="GuestAuthentication"
      type-id="vim.vm.guest.GuestAuthentication"
      vmodl-name="vim.vm.guest.GuestAuthentication"
      version-id-ref="vim.version.version7"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[GuestAuthentication is an abstract base class for authentication
  in the guest.]]>
      </description-html>
            <property name="interactiveSession" type-id-ref="BOOLEAN"
      vmodl-name="interactiveSession"
      >
      <description-html>
         <![CDATA[This is set to true if the client wants an interactive session
  in the guest.

  Setting this is supported only for <a href="vim.vm.guest.NamePasswordAuthentication.html">NamePasswordAuthentication</a>.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualMachineMemoryReservationSpec"
      type-id="vim.host.MemoryManagerSystem.VirtualMachineReservationSpec"
      vmodl-name="vim.host.MemoryManagerSystem.VirtualMachineReservationSpec"
      enclosing-type-id-ref="vim.host.MemoryManagerSystem"
      version-id-ref="vim.version.version2"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The VirtualMachineReservationSpec data object specifies
  configurable parameters for virtual machine memory reservation.]]>
      </description-html>
            <property name="virtualMachineReserved" type-id-ref="LONG"
      vmodl-name="virtualMachineReserved"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The amount of memory reserved for all running virtual machines, in
  bytes.]]>
      </description-html>
      </property>

            <property name="allocationPolicy" type-id-ref="java.lang.String"
      vmodl-name="allocationPolicy"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Policy for allocating additional memory for virtual machines.<br>See VirtualMachineReservationInfo.AllocationPolicy]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostAutoStartManagerConfig"
      type-id="vim.host.AutoStartManager.Config"
      vmodl-name="vim.host.AutoStartManager.Config"
      enclosing-type-id-ref="vim.host.AutoStartManager"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Contains the entire auto-start/auto-stop configuration.]]>
      </description-html>
            <property name="defaults" type-id-ref="vim.host.AutoStartManager.SystemDefaults"
      vmodl-name="defaults"
      is-optional="true"
      >
      <description-html>
         <![CDATA[System defaults for auto-start/auto-stop.]]>
      </description-html>
      </property>

            <property name="powerInfo" type-id-ref="vim.host.AutoStartManager.AutoPowerInfo"
      vmodl-name="powerInfo"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Lists the auto-start/auto-stop configuration. If a virtual machine is not
  mentioned in this array, it does not participate in auto-start/auto-stop
  operations.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostProfileManagerConfigTaskList"
      type-id="vim.profile.host.ProfileManager.ConfigTaskList"
      vmodl-name="vim.profile.host.ProfileManager.ConfigTaskList"
      enclosing-type-id-ref="vim.profile.host.ProfileManager"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The <a href="vim.profile.host.ProfileManager.ConfigTaskList.html">HostProfileManagerConfigTaskList</a> data object
 represents a set of tasks to be performed on a host during host profile application.]]>
      </description-html>
            <property name="configSpec" type-id-ref="vim.host.ConfigSpec"
      vmodl-name="configSpec"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Set of configuration changes to be applied to the host.]]>
      </description-html>
      </property>

            <property name="taskDescription" type-id-ref="vmodl.LocalizableMessage"
      vmodl-name="taskDescription"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Description of tasks that will be performed on the host
 to carry out HostProfile application.]]>
      </description-html>
      </property>

            <property name="taskListRequirement" type-id-ref="java.lang.String"
      vmodl-name="taskListRequirement"
      version-id-ref="vim.version.version10"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[A set of requirements whose actions must be fulfilled before and/or
 after the task list is applied on an ESXi host, e.g. whether the ESXi
 host must be in maintenance mode prior to applying the <code>configSpec</code>,
 or whether the host will need to be rebooted after applying the <code>configSpec</code>.
 See <a href="vim.profile.host.ProfileManager.TaskListRequirement.html">HostProfileManagerTaskListRequirement</a> for
 details of supported values.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="RetrieveResult"
      type-id="vmodl.query.PropertyCollector.RetrieveResult"
      vmodl-name="vmodl.query.PropertyCollector.RetrieveResult"
      enclosing-type-id-ref="vmodl.query.PropertyCollector"
      version-id-ref="vmodl.query.version.version3"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Result of <a href="vmodl.query.PropertyCollector.html#retrievePropertiesEx">RetrievePropertiesEx</a> and <a href="vmodl.query.PropertyCollector.html#continueRetrievePropertiesEx">ContinueRetrievePropertiesEx</a>]]>
      </description-html>
            <property name="token" type-id-ref="java.lang.String"
      vmodl-name="token"
      is-optional="true"
      >
      <description-html>
         <![CDATA[A token used to retrieve further retrieve results.

  <p> If set, the token should be passed to <a href="vmodl.query.PropertyCollector.html#continueRetrievePropertiesEx">ContinueRetrievePropertiesEx</a> to retrieve more results. Each token
  may be passed to continueRetrievePropertiesEx only once, and only in
  the same session in which it was returned and to the same
  <a href="vmodl.query.PropertyCollector.html">PropertyCollector</a> object that returned it.

  <p> If unset, there are no further results to retrieve after this
  <a href="vmodl.query.PropertyCollector.RetrieveResult.html">RetrieveResult</a>.]]>
      </description-html>
      </property>

            <property name="objects" type-id-ref="vmodl.query.PropertyCollector.ObjectContent"
      vmodl-name="objects"
      is-array="true"
      >
      <description-html>
         <![CDATA[retrieved objects.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DvsMergedEvent"
      type-id="vim.event.DvsMergedEvent"
      vmodl-name="vim.event.DvsMergedEvent"
      version-id-ref="vim.version.version5"
      base-type-id="vim.event.DvsEvent"
      >
      <description-html>
         <![CDATA[Two distributed virtual switches was merged.]]>
      </description-html>
            <property name="sourceDvs" type-id-ref="vim.event.DvsEventArgument"
      vmodl-name="sourceDvs"
      >
      <description-html>
         <![CDATA[The source DVS.]]>
      </description-html>
      </property>

            <property name="destinationDvs" type-id-ref="vim.event.DvsEventArgument"
      vmodl-name="destinationDvs"
      >
      <description-html>
         <![CDATA[The destination DVS.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ClusterProactiveDrsConfigInfo"
      type-id="vim.cluster.ProactiveDrsConfigInfo"
      vmodl-name="vim.cluster.ProactiveDrsConfigInfo"
      version-id-ref="vim.version.version11"
      base-type-id="vmodl.DynamicData"
      >
            <property name="enabled" type-id-ref="BOOLEAN"
      vmodl-name="enabled"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Flag indicating whether or not the service is enabled.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostProfileManagerCompositionResult"
      type-id="vim.profile.host.ProfileManager.CompositionResult"
      vmodl-name="vim.profile.host.ProfileManager.CompositionResult"
      enclosing-type-id-ref="vim.profile.host.ProfileManager"
      version-id-ref="vim.version.version11"
      internal-before-version-id-ref="vim.version.version12"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The data class for host profile composition result.]]>
      </description-html>
            <property name="errors" type-id-ref="vmodl.LocalizableMessage"
      vmodl-name="errors"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The composition errors for all targets, for example, the source
 profile doesn't exist.]]>
      </description-html>
      </property>

            <property name="results" type-id-ref="vim.profile.host.ProfileManager.CompositionResult.ResultElement"
      vmodl-name="results"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The array of
 <a href="vim.profile.host.ProfileManager.CompositionResult.ResultElement.html">HostProfileManagerCompositionResultResultElement</a>
 for all the target host profiles.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.profile.host.ProfileManager.CompositionResult.ResultElement</nested-type-id-ref>
   </data-object>
   <data-object name="IpRange"
      type-id="vim.IpRange"
      vmodl-name="vim.IpRange"
      version-id-ref="vim.version.version9"
      base-type-id="vim.IpAddress"
      >
      <description-html>
         <![CDATA[This class specifies a range of IP addresses by using prefix.
  Usage: 128.20.20.10/24. Here 128.20.20.10 is IP address
  and 24 is prefix length.]]>
      </description-html>
            <property name="addressPrefix" type-id-ref="java.lang.String"
      vmodl-name="addressPrefix"
      >
      <description-html>
         <![CDATA[IP address prefix.]]>
      </description-html>
      </property>

            <property name="prefixLength" type-id-ref="INT"
      vmodl-name="prefixLength"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Prefix length with max value of 32 for IPv4 and 128 for IPv6.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VmUnsupportedStartingEvent"
      type-id="vim.event.VmUnsupportedStartingEvent"
      vmodl-name="vim.event.VmUnsupportedStartingEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.VmStartingEvent"
      >
      <description-html>
         <![CDATA[This event records when an unsupported guest is powering on.]]>
      </description-html>
            <property name="guestId" type-id-ref="java.lang.String"
      vmodl-name="guestId"
      >
      </property>

   </data-object>
   <data-object name="HostPortGroupSpec"
      type-id="vim.host.PortGroup.Specification"
      vmodl-name="vim.host.PortGroup.Specification"
      enclosing-type-id-ref="vim.host.PortGroup"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object type describes the PortGroup specification
  representing the properties on a PortGroup that
  can be configured.]]>
      </description-html>
            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      >
      <description-html>
         <![CDATA[The name of the port group.]]>
      </description-html>
      </property>

            <property name="vlanId" type-id-ref="INT"
      vmodl-name="vlanId"
      >
      <description-html>
         <![CDATA[The VLAN ID for ports using this port group. Possible values:
  <ul>
  <li>A value of 0 specifies that you do not want the port group associated
  with a VLAN.
  <li>A value from 1 to 4094 specifies a VLAN ID for the port group.
  <li>A value of 4095 specifies that the port group should use trunk mode,
  which allows the guest operating system to manage its own VLAN tags.]]>
      </description-html>
      </property>

            <property name="vswitchName" type-id-ref="java.lang.String"
      vmodl-name="vswitchName"
      >
      <description-html>
         <![CDATA[The identifier of the virtual switch on which
  this port group is located.]]>
      </description-html>
      </property>

            <property name="policy" type-id-ref="vim.host.NetworkPolicy"
      vmodl-name="policy"
      >
      <description-html>
         <![CDATA[Policies on the port group take precedence over the ones specified
  on the virtual switch.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DistributedVirtualSwitchPortStatistics"
      type-id="vim.dvs.PortStatistics"
      vmodl-name="vim.dvs.PortStatistics"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Statistic data of a DistributedVirtualPort.]]>
      </description-html>
            <property name="packetsInMulticast" type-id-ref="LONG"
      vmodl-name="packetsInMulticast"
      >
      <description-html>
         <![CDATA[The number of multicast packets received.]]>
      </description-html>
      </property>

            <property name="packetsOutMulticast" type-id-ref="LONG"
      vmodl-name="packetsOutMulticast"
      >
      <description-html>
         <![CDATA[The number of multicast packets forwarded.]]>
      </description-html>
      </property>

            <property name="bytesInMulticast" type-id-ref="LONG"
      vmodl-name="bytesInMulticast"
      >
      <description-html>
         <![CDATA[The number of bytes received from multicast packets.]]>
      </description-html>
      </property>

            <property name="bytesOutMulticast" type-id-ref="LONG"
      vmodl-name="bytesOutMulticast"
      >
      <description-html>
         <![CDATA[The number of bytes forwarded from multicast packets.]]>
      </description-html>
      </property>

            <property name="packetsInUnicast" type-id-ref="LONG"
      vmodl-name="packetsInUnicast"
      >
      <description-html>
         <![CDATA[The number of unicast packets received.]]>
      </description-html>
      </property>

            <property name="packetsOutUnicast" type-id-ref="LONG"
      vmodl-name="packetsOutUnicast"
      >
      <description-html>
         <![CDATA[The number of unicast packets forwarded.]]>
      </description-html>
      </property>

            <property name="bytesInUnicast" type-id-ref="LONG"
      vmodl-name="bytesInUnicast"
      >
      <description-html>
         <![CDATA[The number of bytes received from unicast packets.]]>
      </description-html>
      </property>

            <property name="bytesOutUnicast" type-id-ref="LONG"
      vmodl-name="bytesOutUnicast"
      >
      <description-html>
         <![CDATA[The number of bytes forwarded from unicast packets.]]>
      </description-html>
      </property>

            <property name="packetsInBroadcast" type-id-ref="LONG"
      vmodl-name="packetsInBroadcast"
      >
      <description-html>
         <![CDATA[The number of broadcast packets received.]]>
      </description-html>
      </property>

            <property name="packetsOutBroadcast" type-id-ref="LONG"
      vmodl-name="packetsOutBroadcast"
      >
      <description-html>
         <![CDATA[The number of broadcast packets forwarded.]]>
      </description-html>
      </property>

            <property name="bytesInBroadcast" type-id-ref="LONG"
      vmodl-name="bytesInBroadcast"
      >
      <description-html>
         <![CDATA[The number of bytes received from broadcast packets.]]>
      </description-html>
      </property>

            <property name="bytesOutBroadcast" type-id-ref="LONG"
      vmodl-name="bytesOutBroadcast"
      >
      <description-html>
         <![CDATA[The number of bytes forwarded from broadcast packets.]]>
      </description-html>
      </property>

            <property name="packetsInDropped" type-id-ref="LONG"
      vmodl-name="packetsInDropped"
      >
      <description-html>
         <![CDATA[The number of received packets dropped.]]>
      </description-html>
      </property>

            <property name="packetsOutDropped" type-id-ref="LONG"
      vmodl-name="packetsOutDropped"
      >
      <description-html>
         <![CDATA[The number of packets to be forwarded dropped.]]>
      </description-html>
      </property>

            <property name="packetsInException" type-id-ref="LONG"
      vmodl-name="packetsInException"
      >
      <description-html>
         <![CDATA[The number of packets received that cause an exception.]]>
      </description-html>
      </property>

            <property name="packetsOutException" type-id-ref="LONG"
      vmodl-name="packetsOutException"
      >
      <description-html>
         <![CDATA[The number of packets to be forwarded that cause an exception.]]>
      </description-html>
      </property>

            <property name="bytesInFromPnic" type-id-ref="LONG"
      vmodl-name="bytesInFromPnic"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The number of bytes received at a pnic on the behalf of a port's
       connectee (inter-host rx).]]>
      </description-html>
      </property>

            <property name="bytesOutToPnic" type-id-ref="LONG"
      vmodl-name="bytesOutToPnic"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The number of bytes transmitted at a pnic on the behalf of a port's
       connectee (inter-host tx).]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="GuestWindowsProgramSpec"
      type-id="vim.vm.guest.ProcessManager.WindowsProgramSpec"
      vmodl-name="vim.vm.guest.ProcessManager.WindowsProgramSpec"
      enclosing-type-id-ref="vim.vm.guest.ProcessManager"
      version-id-ref="vim.version.version7"
      base-type-id="vim.vm.guest.ProcessManager.ProgramSpec"
      >
      <description-html>
         <![CDATA[This describes the arguments to <a href="vim.vm.guest.ProcessManager.html#startProgram">StartProgramInGuest</a> that apply
 only for Windows guests.]]>
      </description-html>
            <property name="startMinimized" type-id-ref="BOOLEAN"
      vmodl-name="startMinimized"
      >
      <description-html>
         <![CDATA[Makes any program window start minimized.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualDeviceConfigSpec"
      type-id="vim.vm.device.VirtualDeviceSpec"
      vmodl-name="vim.vm.device.VirtualDeviceSpec"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The VirtualDeviceSpec data object type encapsulates change
  specifications for an individual virtual device. The virtual
  device being added or modified must be fully specified.]]>
      </description-html>
            <property name="operation" type-id-ref="vim.vm.device.VirtualDeviceSpec.Operation"
      vmodl-name="operation"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Type of operation being performed on the specified virtual device.
  If no operation is specified, the spec. is ignored.]]>
      </description-html>
      </property>

            <property name="fileOperation" type-id-ref="vim.vm.device.VirtualDeviceSpec.FileOperation"
      vmodl-name="fileOperation"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Type of operation being performed on the backing
  of the specified virtual device.
  If no file operation is specified in the VirtualDeviceSpec,
  then any backing filenames in the
  <a href="vim.vm.device.VirtualDevice.html">VirtualDevice</a>
  must refer to files that already exist.
  The "replace" and "delete" values for this property are only
  applicable to virtual disk backing files.]]>
      </description-html>
      </property>

            <property name="device" type-id-ref="vim.vm.device.VirtualDevice"
      vmodl-name="device"
      >
      <description-html>
         <![CDATA[Device specification, with all necessary properties set.]]>
      </description-html>
      </property>

            <property name="profile" type-id-ref="vim.vm.ProfileSpec"
      vmodl-name="profile"
      version-id-ref="vim.version.version9"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Virtual Device Profile requirement.

 Profiles are solution specifics.

 Storage Profile Based Management(SPBM) is a vSphere server extension.
 The API users who want to provision VMs using Storage Profiles, need to
 interact with SPBM service.

 This is an optional parameter and if user doesn't specify profile,
 the default behavior will apply.]]>
      </description-html>
      </property>

            <property name="backing" type-id-ref="vim.vm.device.VirtualDeviceSpec.BackingSpec"
      vmodl-name="backing"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[BackingInfo configuration options.
 Each BackingSpec corresponds to a BackingInfo object. The member
 <a href="vim.vm.device.VirtualDeviceSpec.html#backing">backing</a> refers to the
 <a href="vim.vm.device.VirtualDeviceSpec.html#device">device</a>.<a href="vim.vm.device.VirtualDevice.html#backing">backing</a>.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.vm.device.VirtualDeviceSpec.Operation</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.device.VirtualDeviceSpec.FileOperation</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.device.VirtualDeviceSpec.BackingSpec</nested-type-id-ref>
   </data-object>
   <data-object name="LinkLayerDiscoveryProtocolInfo"
      type-id="vim.host.PhysicalNic.LldpInfo"
      vmodl-name="vim.host.PhysicalNic.LldpInfo"
      enclosing-type-id-ref="vim.host.PhysicalNic"
      version-id-ref="vim.version.version7"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The Link Layer Discovery Protocol information.]]>
      </description-html>
            <property name="chassisId" type-id-ref="java.lang.String"
      vmodl-name="chassisId"
      >
      <description-html>
         <![CDATA[ChassisId represents the chassis identification for the device that
  transmitted the LLDP frame. The receiving LLDP agent combines the
  Chassis ID and portId to represent the entity connected to the port
  where the frame was received.]]>
      </description-html>
      </property>

            <property name="portId" type-id-ref="java.lang.String"
      vmodl-name="portId"
      >
      <description-html>
         <![CDATA[This property identifies the specific port that transmitted the LLDP
  frame. The receiving LLDP agent combines the Chassis ID and Port to
  represent the entity connected to the port where the frame was received.]]>
      </description-html>
      </property>

            <property name="timeToLive" type-id-ref="INT"
      vmodl-name="timeToLive"
      >
      <description-html>
         <![CDATA[It is the duration of time in seconds for which information contained
  in the received LLDP frame shall be valid. If a value of zero is sent
  it can also identify a device that has shut down or is no longer
  transmitting, prompting deletion of the record from the local database.]]>
      </description-html>
      </property>

            <property name="parameter" type-id-ref="vmodl.KeyAnyValue"
      vmodl-name="parameter"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[LLDP parameters]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="RemoteTSMEnabledEvent"
      type-id="vim.event.RemoteTSMEnabledEvent"
      vmodl-name="vim.event.RemoteTSMEnabledEvent"
      version-id-ref="vim.version.version6"
      base-type-id="vim.event.HostEvent"
      >
      <description-html>
         <![CDATA[Remote Tech Support Mode for the host has been enabled.]]>
      </description-html>
   </data-object>
   <data-object name="DvsHostStatusUpdated"
      type-id="vim.event.DvsHostStatusUpdated"
      vmodl-name="vim.event.DvsHostStatusUpdated"
      version-id-ref="vim.version.version6"
      base-type-id="vim.event.DvsEvent"
      >
      <description-html>
         <![CDATA[A host has it's status or statusDetail updated.]]>
      </description-html>
            <property name="hostMember" type-id-ref="vim.event.HostEventArgument"
      vmodl-name="hostMember"
      >
      <description-html>
         <![CDATA[The host.]]>
      </description-html>
      </property>

            <property name="oldStatus" type-id-ref="java.lang.String"
      vmodl-name="oldStatus"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Host's old status.]]>
      </description-html>
      </property>

            <property name="newStatus" type-id-ref="java.lang.String"
      vmodl-name="newStatus"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Host's new status.]]>
      </description-html>
      </property>

            <property name="oldStatusDetail" type-id-ref="java.lang.String"
      vmodl-name="oldStatusDetail"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Comments regarding host's old status.]]>
      </description-html>
      </property>

            <property name="newStatusDetail" type-id-ref="java.lang.String"
      vmodl-name="newStatusDetail"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Comments regarding host's new status.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="StoragePerformanceSummary"
      type-id="vim.StorageResourceManager.StoragePerformanceSummary"
      vmodl-name="vim.StorageResourceManager.StoragePerformanceSummary"
      enclosing-type-id-ref="vim.StorageResourceManager"
      version-id-ref="vim.version.version8"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Summary statistics for datastore performance
  The statistics are reported in aggregated quantiles over a time period]]>
      </description-html>
            <property name="interval" type-id-ref="INT"
      vmodl-name="interval"
      >
      <description-html>
         <![CDATA[Time period over which statistics are aggregated
 The reported time unit is in seconds]]>
      </description-html>
      </property>

            <property name="percentile" type-id-ref="INT"
      vmodl-name="percentile"
      is-array="true"
      >
      <description-html>
         <![CDATA[Metric percentile specification. A percentile is a value
 between 1 and 100. The metric value reported in the
 aggregated statistics corresponds with the percentile values
 in this field. For example, if the value of percentile[0] is
 P, and the value of the datastoreReadLatency[0] is L, then
 P% of all the read IOs performed during observation interval
 is less than L milliseconds.]]>
      </description-html>
      </property>

            <property name="datastoreReadLatency" type-id-ref="DOUBLE"
      vmodl-name="datastoreReadLatency"
      is-array="true"
      >
      <description-html>
         <![CDATA[Aggregated datastore latency in milliseconds for read operations]]>
      </description-html>
      </property>

            <property name="datastoreWriteLatency" type-id-ref="DOUBLE"
      vmodl-name="datastoreWriteLatency"
      is-array="true"
      >
      <description-html>
         <![CDATA[Aggregated datastore latency in milliseconds for write operations]]>
      </description-html>
      </property>

            <property name="datastoreVmLatency" type-id-ref="DOUBLE"
      vmodl-name="datastoreVmLatency"
      is-array="true"
      >
      <description-html>
         <![CDATA[Aggregated datastore latency as observed by Vms using the datastore
 The reported latency is in milliseconds.]]>
      </description-html>
      </property>

            <property name="datastoreReadIops" type-id-ref="DOUBLE"
      vmodl-name="datastoreReadIops"
      is-array="true"
      >
      <description-html>
         <![CDATA[Aggregated datastore Read IO rate (Reads/second)]]>
      </description-html>
      </property>

            <property name="datastoreWriteIops" type-id-ref="DOUBLE"
      vmodl-name="datastoreWriteIops"
      is-array="true"
      >
      <description-html>
         <![CDATA[Aggregated datastore Write IO rate (Writes/second)]]>
      </description-html>
      </property>

            <property name="siocActivityDuration" type-id-ref="INT"
      vmodl-name="siocActivityDuration"
      >
      <description-html>
         <![CDATA[Cumulative SIOC activity to satisfy SIOC latency threshold
 setting.  This metric indicates the total time that SIOC is
 actively throttling IO requests. The SIOC throttling
 activity occurs whenever the datastore latency exceeds the
 SIOC latency threshold. If SIOC is not enabled on the
 datastore, the metric indicates the total time that SIOC
 would have been active. The unit of reporting is in
 milliseconds.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualSerialPortThinPrintBackingOption"
      type-id="vim.vm.device.VirtualSerialPortOption.ThinPrintBackingOption"
      vmodl-name="vim.vm.device.VirtualSerialPortOption.ThinPrintBackingOption"
      enclosing-type-id-ref="vim.vm.device.VirtualSerialPortOption"
      version-id-ref="vim.version.version8"
      base-type-id="vim.vm.device.VirtualDeviceOption.BackingOption"
      >
      <description-html>
         <![CDATA[The <code><a href="vim.vm.device.VirtualSerialPortOption.ThinPrintBackingOption.html">VirtualSerialPortThinPrintBackingOption</a></code> data
  object type contains the options for backing a serial port with a ThinPrint device.]]>
      </description-html>
   </data-object>
   <data-object name="DatastoreRenamedEvent"
      type-id="vim.event.DatastoreRenamedEvent"
      vmodl-name="vim.event.DatastoreRenamedEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.DatastoreEvent"
      >
      <description-html>
         <![CDATA[This event records the renaming of a datastore.]]>
      </description-html>
            <property name="oldName" type-id-ref="java.lang.String"
      vmodl-name="oldName"
      >
      <description-html>
         <![CDATA[The old datastore name.]]>
      </description-html>
      </property>

            <property name="newName" type-id-ref="java.lang.String"
      vmodl-name="newName"
      >
      <description-html>
         <![CDATA[The new datastore name.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="CustomFieldValue"
      type-id="vim.CustomFieldsManager.Value"
      vmodl-name="vim.CustomFieldsManager.Value"
      enclosing-type-id-ref="vim.CustomFieldsManager"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Base type for storing values.]]>
      </description-html>
            <property name="key" type-id-ref="INT"
      vmodl-name="key"
      >
      <description-html>
         <![CDATA[The ID of the field to which this value belongs.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="StringExpression"
      type-id="vim.StringExpression"
      vmodl-name="vim.StringExpression"
      version-id-ref="vim.version.version9"
      base-type-id="vim.NegatableExpression"
      >
      <description-html>
         <![CDATA[The string type of setting or configuration that may get a
  negated value.]]>
      </description-html>
            <property name="value" type-id-ref="java.lang.String"
      vmodl-name="value"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The String value that is either used as it is or negated.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="NonVIWorkloadDetectedOnDatastoreEvent"
      type-id="vim.event.NonVIWorkloadDetectedOnDatastoreEvent"
      vmodl-name="vim.event.NonVIWorkloadDetectedOnDatastoreEvent"
      version-id-ref="vim.version.version6"
      base-type-id="vim.event.DatastoreEvent"
      >
      <description-html>
         <![CDATA[This event records that non-VI workload is detected on the datastore.]]>
      </description-html>
   </data-object>
   <data-object name="HostImageProfileSummary"
      type-id="vim.host.ImageConfigManager.ImageProfileSummary"
      vmodl-name="vim.host.ImageConfigManager.ImageProfileSummary"
      enclosing-type-id-ref="vim.host.ImageConfigManager"
      version-id-ref="vim.version.version7"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Summary of an image profile]]>
      </description-html>
            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      >
      <description-html>
         <![CDATA[The name of the image profile]]>
      </description-html>
      </property>

            <property name="vendor" type-id-ref="java.lang.String"
      vmodl-name="vendor"
      >
      <description-html>
         <![CDATA[The organization publishing the image profile.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="AutoStartPowerInfo"
      type-id="vim.host.AutoStartManager.AutoPowerInfo"
      vmodl-name="vim.host.AutoStartManager.AutoPowerInfo"
      enclosing-type-id-ref="vim.host.AutoStartManager"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This object type describes the power-on / power-off behavior for a given virtual
  machine. Virtual machines can be configured to wait for a period of time before
  starting or to wait to receive a successful heartbeat from a virtual machine
  before starting the next virtual machine in the sequence.
   <ul>
     <li>For a power-on operation, if waitForHeartbeat is true, then the power-on
         sequence continues after the first heartbeat has been received. If
         waitForHeartbeat is false, the system waits for the specified delay and
         then continues the power-on sequence.
     <li>For a power-off operation, if delay is non-zero, the requested power-off
         action is invoked (powerOff, suspend, guestShutdown) on the virtual
         machine and the system waits until the number of seconds specified in the
         delay have passed.
   </ul>
  If startAction and stopAction for a virtual machine are both set to none, that
  virtual machine is removed from the AutoStart sequence.

  Virtual machines can be configured both to wait for a period of time before
  starting and to wait for a heartbeat. In such a case, the waiting virtual machine
  only waits until either of these conditions are met. In other words, a virtual
  machine starts in either of the following cases:
   <ul>
     <li>After receiving a heartbeat but before the start delay has elapsed
     <li>After the start delay has elapsed but before receiving a heartbeat
   </ul>
  This provides a better experience since as soon as one virtual machine begins
  sending heartbeats, indicating it has successfully started up, the next machine
  will begin starting up. This happens even if the startDelay has not yet elapsed.
  Similarly, if one virtual machine fails to begin sending heartbeats, perhaps
  because it could not start up, other machines are not blocked from starting up
  since the startDelay eventually elapses.]]>
      </description-html>
            <property name="key" type-id-ref="vim.VirtualMachine"
      vmodl-name="key"
      >
      <description-html>
         <![CDATA[Virtual machine to power on or power off.]]>
      </description-html>
      </property>

            <property name="startOrder" type-id-ref="INT"
      vmodl-name="startOrder"
      >
      <description-html>
         <![CDATA[The autostart priority of this virtual machine. Virtual machines with a lower
  number are powered on first. On host shutdown, the virtual machines are
  shut down in reverse order, meaning those with a higher number are powered off
  first.
  <p>
  Positive values indicate a start order and -1 indicates the machine can be
  powered on at any time. Machines with a -1 value are typically powered on and
  off after all virtual machines with positive startOrder values. Failure to
  meet the following requirements results in an InvalidArgument exception:
  <ul>
    <li>startOrder must be set to -1 if startAction is set to none
    <li>startOrder must be -1 or positive integers. Values such as 0 or
        -2 are not valid.
    <li>startOrder is relative to other virtual machines in the autostart
        sequence. Hence specifying a startOrder of 4 when there are only 3
        virtual machines in the Autostart sequence is not valid.
  </ul>
  <p>
  If a newly established or changed startOrder value for a virtual machine
  matches an existing startOrder value, the newly applied value takes
  precedence, and the existing value is incremented by one. The incremented
  startOrder value is checked for collisions, and the same rule is applied if
  one is found. This simple system ensures no two virtual machines ever have the
  same order number.
  <p>
  For example, consider the case where there are three virtual machines with
  different startOrder values. Virtual machine A has not yet established a
  startOrder, virtual machine B has a startOrder value of 1 and Virtual Machine
  C has a startOrder value of 2. If virtual machine A's startOrder is set to 1,
  then virtual machine B's startOrder is incremented to 2. This creates a
  conflict with virtual machine C's startOrder value, which is also incremented,
  this time to 3.]]>
      </description-html>
      </property>

            <property name="startDelay" type-id-ref="INT"
      vmodl-name="startDelay"
      >
      <description-html>
         <![CDATA[Delay in seconds before continuing with the next virtual machine in the order
  of machines to be started. If the delay is specified as -1, then the system
  default is used.]]>
      </description-html>
      </property>

            <property name="waitForHeartbeat" type-id-ref="vim.host.AutoStartManager.AutoPowerInfo.WaitHeartbeatSetting"
      vmodl-name="waitForHeartbeat"
      >
      </property>

            <property name="startAction" type-id-ref="java.lang.String"
      vmodl-name="startAction"
      >
      <description-html>
         <![CDATA[How to start the virtual machine. Valid settings are none or powerOn.
  If set to none, then the virtual machine does not participate in auto-start.]]>
      </description-html>
      </property>

            <property name="stopDelay" type-id-ref="INT"
      vmodl-name="stopDelay"
      >
      <description-html>
         <![CDATA[Delay in seconds before continuing with the next virtual machine in the order
  sequence. If the delay is -1, then the system default is used.]]>
      </description-html>
      </property>

            <property name="stopAction" type-id-ref="java.lang.String"
      vmodl-name="stopAction"
      >
      <description-html>
         <![CDATA[Defines the stop action for the virtual machine. Can be set to none,
  systemDefault, powerOff, or suspend. If set to none, then the virtual machine
  does not participate in auto-stop.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.host.AutoStartManager.AutoPowerInfo.WaitHeartbeatSetting</nested-type-id-ref>
   </data-object>
   <data-object name="VirtualDisk"
      type-id="vim.vm.device.VirtualDisk"
      vmodl-name="vim.vm.device.VirtualDisk"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.device.VirtualDevice"
      >
      <description-html>
         <![CDATA[This data object type contains information about a disk in a virtual machine.
  <p>
  The virtual disk backing object types describe the different virtual disk backings
  available.
  The disk format version in each case describes
  the version of the format that is used.
  <p>
  Supported virtual disk backings:
  <table>
  <dt>Sparse disk format, version 1 and 2</dt>
  <dd>The virtual disk backing grows when needed.
      Supported only for VMware Server.</dd>
  <dt>Flat disk format, version 1 and 2</dt>
  <dd>The virtual disk backing is preallocated.
      Version 1 is supported only for VMware Server.</dd>
  <dt>Space efficient sparse disk format</dt>
  <dd>The virtual disk backing grows on demand and
      incorporates additional space optimizations.</dd>
  <dt>Raw disk format, version 2</dt>
  <dd>The virtual disk backing uses a full physical disk drive
      to back the virtual disk. Supported only for VMware Server.</dd>
  <dt>Partitioned raw disk format, version 2</dt>
  <dd>The virtual disk backing uses one or more partitions on a
      physical disk drive to back a virtual disk. Supported only for VMware Server.</dd>
  <dt>Raw disk mapping, version 1</dt>
  <dd>The virtual disk backing uses a raw device mapping to back the virtual disk.
      Supported for ESX Server 2.5 and 3.x.</dd>
  </table>]]>
      </description-html>
            <property name="capacityInKB" type-id-ref="LONG"
      vmodl-name="capacityInKB"
      is-deprecated="true"
      >
      <description-html>
         <![CDATA[Capacity of this virtual disk in kilobytes.
 Information might be lost when actual disk size is rounded off to kilobytes.
 If the disk is on a Virtual Volume datastore the disk size must be a multiple
 of a megabyte.
 <p />]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 5.5, use <a href="vim.vm.device.VirtualDisk.html#capacityInBytes">capacityInBytes</a>.]]>
      </deprecated-html>
      </property>

            <property name="capacityInBytes" type-id-ref="LONG"
      vmodl-name="capacityInBytes"
      version-id-ref="vim.version.version9"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Capacity of this virtual disk in bytes.
  Server will always populate this property. Clients must initialize it when
  creating a new non -RDM disk or in case they want to change the current
  capacity of an existing virtual disk, but can omit it otherwise.
  If the disk is on a Virtual Volume datastore the disk size must be a multiple
  of a megabyte.]]>
      </description-html>
      </property>

            <property name="shares" type-id-ref="vim.SharesInfo"
      vmodl-name="shares"
      is-deprecated="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Disk shares, used for resource scheduling.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 4.1, use
 <a href="vim.StorageResourceManager.IOAllocationInfo.html#shares">shares</a>.]]>
      </deprecated-html>
      </property>

            <property name="storageIOAllocation" type-id-ref="vim.StorageResourceManager.IOAllocationInfo"
      vmodl-name="storageIOAllocation"
      version-id-ref="vim.version.version6"
      is-deprecated="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Resource allocation for storage I/O.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 6.5, use]]>
      </deprecated-html>
      </property>

            <property name="diskObjectId" type-id-ref="java.lang.String"
      vmodl-name="diskObjectId"
      version-id-ref="vim.version.version9"
      is-deprecated="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Virtual disk durable and unmutable identifier.

 Virtual disk has a UUID field but that can be set through
 VirtualDiskManager APIs.

 This identifier is a universally unique identifier which is not settable.
 VirtualDisk can remain in existence even if it is not associated with VM.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 6.5, use <a href="vim.vm.device.VirtualDisk.html#vDiskId">vDiskId</a>.]]>
      </deprecated-html>
      </property>

            <property name="vFlashCacheConfigInfo" type-id-ref="vim.vm.device.VirtualDisk.VFlashCacheConfigInfo"
      vmodl-name="vFlashCacheConfigInfo"
      version-id-ref="vim.version.version9"
      is-deprecated="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[vFlash cache configuration supported on this virtual disk.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[since vSphere 7.0 because vFlash Read Cache
 end of availability.]]>
      </deprecated-html>
      </property>

            <property name="iofilter" type-id-ref="java.lang.String"
      vmodl-name="iofilter"
      version-id-ref="vim.version.version10"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[IDs of the IO Filters associated with the virtual disk.
 See <a href="vim.IoFilterManager.IoFilterInfo.html#id">id</a>. This information
 is provided when retrieving configuration information for
 an existing virtual machine. The client cannot modify this information
 on a virtual machine.]]>
      </description-html>
      </property>

            <property name="vDiskId" type-id-ref="vim.vslm.ID"
      vmodl-name="vDiskId"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[ID of the virtual disk object as the first class entity.
 See <a href="vim.vslm.ID.html">ID</a>

 The ID is a universally unique identifier for the disk lifecycle,
 even if the virtual disk is not associated with VM.]]>
      </description-html>
      </property>

            <property name="nativeUnmanagedLinkedClone" type-id-ref="BOOLEAN"
      vmodl-name="nativeUnmanagedLinkedClone"
      version-id-ref="vim.version.version12"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates whether a disk with
 <a href="vim.vm.device.VirtualDisk.FlatVer2BackingInfo.html">VirtualDiskFlatVer2BackingInfo</a> backing is a linked
 clone from an unmanaged delta disk and hence the
 <a href="vim.vm.device.VirtualDisk.FlatVer2BackingInfo.html#parent">parent</a> chain to
 this delta disk will not be available.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.vm.device.VirtualDisk.DeltaDiskFormat</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.device.VirtualDisk.DeltaDiskFormatVariant</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.device.VirtualDisk.Sharing</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.device.VirtualDisk.SparseVer1BackingInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.device.VirtualDisk.SparseVer2BackingInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.device.VirtualDisk.FlatVer1BackingInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.device.VirtualDisk.FlatVer2BackingInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.device.VirtualDisk.SeSparseBackingInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.device.VirtualDisk.RawDiskVer2BackingInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.device.VirtualDisk.PartitionedRawDiskVer2BackingInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.device.VirtualDisk.RawDiskMappingVer1BackingInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.device.VirtualDisk.LocalPMemBackingInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.device.VirtualDisk.VFlashCacheConfigInfo</nested-type-id-ref>
   </data-object>
   <data-object name="HostVFlashManagerVFlashCacheConfigSpec"
      type-id="vim.host.VFlashManager.VFlashCacheConfigSpec"
      vmodl-name="vim.host.VFlashManager.VFlashCacheConfigSpec"
      enclosing-type-id-ref="vim.host.VFlashManager"
      version-id-ref="vim.version.version9"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Specification to configure vFlash cache on the host.]]>
      </description-html>
            <property name="defaultVFlashModule" type-id-ref="java.lang.String"
      vmodl-name="defaultVFlashModule"
      >
      <description-html>
         <![CDATA[Name of the default vFlash module for the read-write caches associated
 with the VMs of this host. This setting can be overridden by
 <a href="vim.vm.device.VirtualDisk.VFlashCacheConfigInfo.html#vFlashModule">vFlashModule</a>
 per VMDK.]]>
      </description-html>
      </property>

            <property name="swapCacheReservationInGB" type-id-ref="LONG"
      vmodl-name="swapCacheReservationInGB"
      >
      <description-html>
         <![CDATA[Amount of vFlash resource is allocated to the host swap cache. As long as set,
 reservation will be permanent and retain regardless of host power state. The host
 swap cache will be disabled if the reservation is set to zero.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualE1000"
      type-id="vim.vm.device.VirtualE1000"
      vmodl-name="vim.vm.device.VirtualE1000"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.device.VirtualEthernetCard"
      >
      <description-html>
         <![CDATA[The VirtualE1000 data object type represents an instance
  of the E1000 virtual Ethernet adapter attached to a virtual machine.]]>
      </description-html>
   </data-object>
   <data-object name="CryptoSpecNoOp"
      type-id="vim.encryption.CryptoSpecNoOp"
      vmodl-name="vim.encryption.CryptoSpecNoOp"
      version-id-ref="vim.version.version11"
      base-type-id="vim.encryption.CryptoSpec"
      >
      <description-html>
         <![CDATA[This data object type indicates that the encryption settings of the
  virtual machine or disk should not be modified by the operation.]]>
      </description-html>
   </data-object>
   <data-object name="ClusterRuleInfo"
      type-id="vim.cluster.RuleInfo"
      vmodl-name="vim.cluster.RuleInfo"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The <a href="vim.cluster.RuleInfo.html">ClusterRuleInfo</a> data object is the base type for affinity
 and anti-affinity rules. The affinity and anti-affinity rules
 are DRS (Distributed Resource Scheduling) rules that affect the placement
 of virtual machines in a cluster. Hosts and virtual machines referenced
 in a DRS rule must be in the same cluster.
 <p>
 Note: DRS rules are different than an individual host's CPU affinity rules
 (<a href="vim.vm.AffinityInfo.html">VirtualMachineAffinityInfo</a>).
 <p>
 The Server uses DRS rule objects to describe the current rule configuration
 (<a href="vim.cluster.ConfigInfoEx.html">ClusterConfigInfoEx</a>.<a href="vim.cluster.ConfigInfoEx.html#rule">rule</a>).
 Your client application uses rule objects to configure the affinity and
 anti-affinity rules
 (<a href="vim.cluster.ConfigSpecEx.html">ClusterConfigSpecEx</a>.<a href="vim.cluster.ConfigSpecEx.html#rulesSpec">rulesSpec</a>).
 <p>
 You can create the following types of rules:
 <ul>
 <li>An affinity rule defines a set of virtual machines that should run
 on the same host.
 The <a href="vim.cluster.AffinityRuleSpec.html">ClusterAffinityRuleSpec</a> object describes a rule that
 identifies virtual machines, but does not identify any specific host.</li>
 <li>An anti-affinity rule defines a set of virtual machines that should run
 on different hosts.
 The <a href="vim.cluster.AntiAffinityRuleSpec.html">ClusterAntiAffinityRuleSpec</a> object describes a rule that
 identifies virtual machines, but does not identify any specific host.</li>
 <li>A VM-Host rule defines affinity and anti-affinity relationships between
 virtual machines and hosts.
 The <a href="vim.cluster.VmHostRuleInfo.html">ClusterVmHostRuleInfo</a> object describes a rule that identifies
 a virtual machine group (<a href="vim.cluster.VmGroup.html">ClusterVmGroup</a>) and affinity and
 anti-affinity host groups (<a href="vim.cluster.HostGroup.html">ClusterHostGroup</a>).</li>
 </ul>
 <p>
 Rule configuration is a dynamic process. When you create or modify a DRS rule,
 the Server applies the rule to the cluster. If the existing cluster configuration
 violates the rule, the Server attempts to correct the situation. If that is not
 possible, the Server generates a fault and produces a log event.
 DRS rules do not have precedence; all rules are applied equally.
 DRS does not validate one rule against another. If you create conflicting
 rules, the older rule takes precedence and DRS disables the newer rule.
 <p>
 Improperly used, DRS rules can fragment the cluster and inhibit the proper
 functioning of DRS, HA, and DPM services. vSphere services never
 take any actions that would result in the violation of mandatory DRS rules.
 An operation that violates a mandatory rule would produce the following
 consequences.
 <ul>
   <li>DRS does not evacuate virtual machines to place a host in maintenance
       mode.</li>
   <li>DRS does not place virtual machines for power-on or load balance virtual
       machines.</li>
   <li>HA does not perform failovers.</li>
   <li>DPM does not optimize power management by placing hosts into standby
       mode.</li>
   </ul>
 <p>
 To avoid these situations, exercise caution when creating more than one
 mandatory rule, or consider using only optional rules. Make sure that
 the number of hosts with which a virtual machine is related by affinity rule
 is large enough that losing a host does not prevent the virtual machine
 from running.
 <p>
 For manual and partially automated DRS clusters, the Server produces migration
 recommendations to satisfy the DRS rules. You are not required to act on the
 recommendations, but the Server maintains the recommendations until the rules
 are satisfied.]]>
      </description-html>
            <property name="key" type-id-ref="INT"
      vmodl-name="key"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Unique ID for rules. When adding a new rule, do not specify this property.
  The Server will assign the key.]]>
      </description-html>
      </property>

            <property name="status" type-id-ref="vim.ManagedEntity.Status"
      vmodl-name="status"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Flag to indicate whether or not the rule is currently satisfied.]]>
      </description-html>
      </property>

            <property name="enabled" type-id-ref="BOOLEAN"
      vmodl-name="enabled"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Flag to indicate whether or not the rule is enabled. Set this property
 when you configure the rule. The default value is false (disabled).
 If there is a rule conflict, the Server can override the setting to disable
 a rule.]]>
      </description-html>
      </property>

            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Name of the rule.]]>
      </description-html>
      </property>

            <property name="mandatory" type-id-ref="BOOLEAN"
      vmodl-name="mandatory"
      version-id-ref="vim.version.version6"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Flag to indicate whether compliance with this rule is mandatory or optional.
 The default value is false (optional).
 <ul>
 <li>A mandatory rule will prevent a virtual machine from being powered on
 or migrated to a host that does not satisfy the rule.
 <li>An optional rule specifies a preference. DRS takes an optional rule
 into consideration when it places a virtual machine in the cluster.
 DRS will act on an optional rule as long as it does not impact
 the ability of the host to satisfy current CPU or memory requirements
 for virtual machines on the system. (As long as the operation does not
 cause any host to be more than 100% utilized.)
 </ul>]]>
      </description-html>
      </property>

            <property name="userCreated" type-id-ref="BOOLEAN"
      vmodl-name="userCreated"
      version-id-ref="vim.version.version6"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Flag to indicate whether the rule is created by the user or the system.]]>
      </description-html>
      </property>

            <property name="inCompliance" type-id-ref="BOOLEAN"
      vmodl-name="inCompliance"
      version-id-ref="vim.version.version6"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Flag to indicate whether or not the placement of Virtual Machines is currently
 in compliance with this rule. The Server does not currently use this property.]]>
      </description-html>
      </property>

            <property name="ruleUuid" type-id-ref="java.lang.String"
      vmodl-name="ruleUuid"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[UUID for the rule. When adding a new rule, do not specify this
  property. The Server will assign the key.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostCompliantEvent"
      type-id="vim.event.HostCompliantEvent"
      vmodl-name="vim.event.HostCompliantEvent"
      version-id-ref="vim.version.version5"
      base-type-id="vim.event.HostEvent"
      >
      <description-html>
         <![CDATA[This event records that host is in compliance.]]>
      </description-html>
   </data-object>
   <data-object name="HostCnxFailedNoConnectionEvent"
      type-id="vim.event.HostCnxFailedNoConnectionEvent"
      vmodl-name="vim.event.HostCnxFailedNoConnectionEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.HostEvent"
      >
      <description-html>
         <![CDATA[This event records a failure to connect to a host
  due to a host not being present on the network.]]>
      </description-html>
   </data-object>
   <data-object name="VMwareDvsLagIpfixConfig"
      type-id="vim.dvs.VmwareDistributedVirtualSwitch.LagIpfixConfig"
      vmodl-name="vim.dvs.VmwareDistributedVirtualSwitch.LagIpfixConfig"
      enclosing-type-id-ref="vim.dvs.VmwareDistributedVirtualSwitch"
      version-id-ref="vim.version.version9"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This class defines the ipfix configuration of the Link Aggregation
  Control Protocol group.]]>
      </description-html>
            <property name="ipfixEnabled" type-id-ref="BOOLEAN"
      vmodl-name="ipfixEnabled"
      is-optional="true"
      >
      <description-html>
         <![CDATA[True if ipfix monitoring is enabled in the Link Aggregation Control Protocol group.
  If set, this property will override the ipfix configuration of Uplink Ports
  in the Link Aggregation Control Protocol group.
  Thus they are no longer inheriting ipfix configuration from their Uplink Port Group.
  Setting this property would require
  <a href="vim.dvs.VmwareDistributedVirtualSwitch.VMwarePortgroupPolicy.html#ipfixOverrideAllowed">ipfixOverrideAllowed</a>
  of all the Uplink Port Groups to be true,
  otherwise ConflictingConfiguration fault will be raised.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DvsTrafficRuleset"
      type-id="vim.dvs.TrafficRuleset"
      vmodl-name="vim.dvs.TrafficRuleset"
      version-id-ref="vim.version.version9"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This class defines a ruleset(set of rules) that will be
  applied to network traffic.]]>
      </description-html>
            <property name="key" type-id-ref="java.lang.String"
      vmodl-name="key"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The key of the ruleset.]]>
      </description-html>
      </property>

            <property name="enabled" type-id-ref="BOOLEAN"
      vmodl-name="enabled"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Whether ruleset is enabled or not.]]>
      </description-html>
      </property>

            <property name="precedence" type-id-ref="INT"
      vmodl-name="precedence"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Precedence of the ruleset. Rulesets for a port will be executed
  in the order of their precedence.]]>
      </description-html>
      </property>

            <property name="rules" type-id-ref="vim.dvs.TrafficRule"
      vmodl-name="rules"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of rules belonging to this ruleset.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostInventoryFullEvent"
      type-id="vim.event.HostInventoryFullEvent"
      vmodl-name="vim.event.HostInventoryFullEvent"
      version-id-ref="vim.version.version2"
      base-type-id="vim.event.LicenseEvent"
      >
      <description-html>
         <![CDATA[This event records if the inventory of hosts has reached capacity.]]>
      </description-html>
            <property name="capacity" type-id-ref="INT"
      vmodl-name="capacity"
      >
      </property>

   </data-object>
   <data-object name="DVSTrafficShapingPolicy"
      type-id="vim.dvs.DistributedVirtualPort.TrafficShapingPolicy"
      vmodl-name="vim.dvs.DistributedVirtualPort.TrafficShapingPolicy"
      enclosing-type-id-ref="vim.dvs.DistributedVirtualPort"
      version-id-ref="vim.version.version5"
      base-type-id="vim.InheritablePolicy"
      >
      <description-html>
         <![CDATA[This data object type describes traffic shaping policy.]]>
      </description-html>
            <property name="enabled" type-id-ref="vim.BoolPolicy"
      vmodl-name="enabled"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The flag to indicate whether or not traffic shaper is enabled on
  the port.]]>
      </description-html>
      </property>

            <property name="averageBandwidth" type-id-ref="vim.LongPolicy"
      vmodl-name="averageBandwidth"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The average bandwidth in bits per second if shaping is enabled on
  the port.]]>
      </description-html>
      </property>

            <property name="peakBandwidth" type-id-ref="vim.LongPolicy"
      vmodl-name="peakBandwidth"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The peak bandwidth during bursts in bits per second if traffic
  shaping is enabled on the port.]]>
      </description-html>
      </property>

            <property name="burstSize" type-id-ref="vim.LongPolicy"
      vmodl-name="burstSize"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The maximum burst size allowed in bytes if shaping is enabled on
  the port.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="CryptoKeyPlain"
      type-id="vim.encryption.CryptoKeyPlain"
      vmodl-name="vim.encryption.CryptoKeyPlain"
      version-id-ref="vim.version.version11"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Data Object representing a plain text cryptographic key.]]>
      </description-html>
            <property name="keyId" type-id-ref="vim.encryption.CryptoKeyId"
      vmodl-name="keyId"
      >
      </property>

            <property name="algorithm" type-id-ref="java.lang.String"
      vmodl-name="algorithm"
      >
      </property>

            <property name="keyData" type-id-ref="java.lang.String"
      vmodl-name="keyData"
      >
      </property>

   </data-object>
   <data-object name="VmShutdownOnIsolationEvent"
      type-id="vim.event.VmShutdownOnIsolationEvent"
      vmodl-name="vim.event.VmShutdownOnIsolationEvent"
      version-id-ref="vim.version.version5"
      base-type-id="vim.event.VmPoweredOffEvent"
      >
      <description-html>
         <![CDATA[This event records when a virtual machine has been shut down on an isolated host
  in a HA cluster.]]>
      </description-html>
            <property name="isolatedHost" type-id-ref="vim.event.HostEventArgument"
      vmodl-name="isolatedHost"
      >
      <description-html>
         <![CDATA[The isolated host on which a virtual machine was shutdown.]]>
      </description-html>
      </property>

            <property name="shutdownResult" type-id-ref="java.lang.String"
      vmodl-name="shutdownResult"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates if the shutdown was successful. If the shutdown failed, the virtual
  machine was powered off. see Operation]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.event.VmShutdownOnIsolationEvent.Operation</nested-type-id-ref>
   </data-object>
   <data-object name="DistributedVirtualSwitchHostMemberPnicBacking"
      type-id="vim.dvs.HostMember.PnicBacking"
      vmodl-name="vim.dvs.HostMember.PnicBacking"
      enclosing-type-id-ref="vim.dvs.HostMember"
      version-id-ref="vim.version.version5"
      base-type-id="vim.dvs.HostMember.Backing"
      >
      <description-html>
         <![CDATA[The <a href="vim.dvs.HostMember.PnicBacking.html">DistributedVirtualSwitchHostMemberPnicBacking</a> data object
 specifies a set of physical NICs to use for a proxy switch.
 When you add a host to a distributed virtual switch
 (<a href="vim.dvs.HostMember.ConfigSpec.html">DistributedVirtualSwitchHostMemberConfigSpec</a>.<a href="vim.dvs.HostMember.ConfigSpec.html#host">host</a>),
 the host creates a proxy switch that will use the pNICs as uplinks.]]>
      </description-html>
            <property name="pnicSpec" type-id-ref="vim.dvs.HostMember.PnicSpec"
      vmodl-name="pnicSpec"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of physical NIC specifications. Each entry identifies
 a pNIC to the proxy switch and optionally specifies uplink
 portgroup and port connections for the pNIC.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="NetworkProfileDnsConfigProfile"
      type-id="vim.profile.host.NetworkProfile.DnsConfigProfile"
      vmodl-name="vim.profile.host.NetworkProfile.DnsConfigProfile"
      enclosing-type-id-ref="vim.profile.host.NetworkProfile"
      version-id-ref="vim.version.version5"
      base-type-id="vim.profile.ApplyProfile"
      >
      <description-html>
         <![CDATA[The <a href="vim.profile.host.NetworkProfile.DnsConfigProfile.html">NetworkProfileDnsConfigProfile</a> data object represents DNS configuration
 for the host. Use the <a href="vim.profile.ApplyProfile.html#policy">policy</a> list for
 access to configuration data for the DNS profile. Use the
 <a href="vim.profile.ApplyProfile.html#property">property</a> list for access to subprofiles, if any.]]>
      </description-html>
   </data-object>
   <data-object name="DiagnosticManagerBundleInfo"
      type-id="vim.DiagnosticManager.BundleInfo"
      vmodl-name="vim.DiagnosticManager.BundleInfo"
      enclosing-type-id-ref="vim.DiagnosticManager"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Describes a location of a diagnostic bundle and the server to which it belongs.
  This is a return type for the generateLogBundles operation.]]>
      </description-html>
            <property name="system" type-id-ref="vim.HostSystem"
      vmodl-name="system"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The host to which this diagnostic bundle belongs. If this is for the default
  server, then it is not set.]]>
      </description-html>
      </property>

            <property name="url" type-id-ref="java.lang.String"
      vmodl-name="url"
      >
      <description-html>
         <![CDATA[The location from which the diagnostic bundle can be downloaded. The host part
  of the URL is returned as '*' if the hostname to be used is the name of the
  server to which the call was made. For example, if the call is made to
  vcsrv1.domain1.com, and the bundle is available for download from
  http://vcsrv1.domain1.com/diagnostics/bundle.zip, the URL returned may be
  http:// * /diagnostics/bundle.zip. The client replaces the asterisk with the
  server name on which it invoked the call.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualMachineQuestionInfo"
      type-id="vim.vm.QuestionInfo"
      vmodl-name="vim.vm.QuestionInfo"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object type describes the question that is currently
  blocking a virtual machine.]]>
      </description-html>
            <property name="id" type-id-ref="java.lang.String"
      vmodl-name="id"
      >
      <description-html>
         <![CDATA[Identifier with an opaque value that specifies the pending question.]]>
      </description-html>
      </property>

            <property name="text" type-id-ref="java.lang.String"
      vmodl-name="text"
      is-localizable="true"
      >
      <description-html>
         <![CDATA[Text that describes the pending question.]]>
      </description-html>
      </property>

            <property name="choice" type-id-ref="vim.option.ChoiceOption"
      vmodl-name="choice"
      >
      <description-html>
         <![CDATA[List of key-value pairs that specify possible answers.]]>
      </description-html>
      </property>

            <property name="message" type-id-ref="vim.vm.Message"
      vmodl-name="message"
      version-id-ref="vim.version.version2"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The message data for the individual messages that comprise the question.
 Only available on servers that support localization.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostStorageSystemScsiLunResult"
      type-id="vim.host.StorageSystem.ScsiLunResult"
      vmodl-name="vim.host.StorageSystem.ScsiLunResult"
      enclosing-type-id-ref="vim.host.StorageSystem"
      version-id-ref="vim.version.version10"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Contains the result of SCSI LUN operation requests. Used as return value
 by <a href="vim.host.StorageSystem.html#attachScsiLunEx">AttachScsiLunEx_Task</a>, 
 <a href="vim.host.StorageSystem.html#detachScsiLunEx">DetachScsiLunEx_Task</a> and 
 <a href="vim.host.StorageSystem.html#markPerenniallyReservedEx">MarkPerenniallyReservedEx_Task</a>]]>
      </description-html>
            <property name="key" type-id-ref="java.lang.String"
      vmodl-name="key"
      >
      <description-html>
         <![CDATA[UUID of LUN on which the LUN operation was requested.]]>
      </description-html>
      </property>

            <property name="fault" type-id-ref="vmodl.LocalizedMethodFault"
      vmodl-name="fault"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Fault if operation fails]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="CustomizationUnknownIpV6Generator"
      type-id="vim.vm.customization.UnknownIpV6Generator"
      vmodl-name="vim.vm.customization.UnknownIpV6Generator"
      version-id-ref="vim.version.version5"
      base-type-id="vim.vm.customization.IpV6Generator"
      >
      <description-html>
         <![CDATA[The ipv6 address is left unspecified. The user must be prompted to supply an ipv6
  address.]]>
      </description-html>
   </data-object>
   <data-object name="ResourcePoolSummary"
      type-id="vim.ResourcePool.Summary"
      vmodl-name="vim.ResourcePool.Summary"
      enclosing-type-id-ref="vim.ResourcePool"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object type encapsulates a typical set of resource
  pool information that is useful for list views and summary pages.]]>
      </description-html>
            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      >
      <description-html>
         <![CDATA[Name of resource pool.]]>
      </description-html>
      </property>

            <property name="config" type-id-ref="vim.ResourceConfigSpec"
      vmodl-name="config"
      >
      <description-html>
         <![CDATA[Current configuration of the resource pool.]]>
      </description-html>
      </property>

            <property name="runtime" type-id-ref="vim.ResourcePool.RuntimeInfo"
      vmodl-name="runtime"
      >
      <description-html>
         <![CDATA[Current runtime state of the resource pool.]]>
      </description-html>
      </property>

            <property name="quickStats" type-id-ref="vim.ResourcePool.Summary.QuickStats"
      vmodl-name="quickStats"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[A set of statistics that are typically updated with near real-time regularity.
  This data object type does not support notification, for scalability reasons.
  Therefore, changes in QuickStats do not generate property collector updates.
  To monitor statistics values, use the statistics and alarms modules instead.]]>
      </description-html>
      </property>

            <property name="configuredMemoryMB" type-id-ref="INT"
      vmodl-name="configuredMemoryMB"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Total configured memory of all virtual machines in the resource pool, in MB.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.ResourcePool.Summary.QuickStats</nested-type-id-ref>
   </data-object>
   <data-object name="MonthlyByDayTaskScheduler"
      type-id="vim.scheduler.MonthlyByDayTaskScheduler"
      vmodl-name="vim.scheduler.MonthlyByDayTaskScheduler"
      version-id-ref="vim.version.version1"
      base-type-id="vim.scheduler.MonthlyTaskScheduler"
      >
      <description-html>
         <![CDATA[The <a href="vim.scheduler.MonthlyByDayTaskScheduler.html">MonthlyByDayTaskScheduler</a> data object sets the time for monthly
  task execution. You can set the schedule for task execution
  on one day during the month, and you complete the schedule by
  setting the inherited properties for the hour and minute.
  <p>
  By default the scheduler executes the task on the specified day
  every month. If you set the interval to a value greater than 1,
  the task will execute at the specified monthly interval.
  (For example, an interval of 2 will cause the task to execute
  on the specified day, hour, and minute every 2 months.)]]>
      </description-html>
            <property name="day" type-id-ref="INT"
      vmodl-name="day"
      >
      <description-html>
         <![CDATA[The day in every month to run the scheduled task.
  Valid values are 1 to 31.
  <p>
  In any month where the value of "day" exceeds the total number of days
  in the month, the scheduled task will run on the last day of the month.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostVMotionConfig"
      type-id="vim.host.VMotionConfig"
      vmodl-name="vim.host.VMotionConfig"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object configuring VMotion on the host.
  The runtime information is available from the
  <a href="vim.host.VMotionInfo.html">VMotionInfo</a> data object type.]]>
      </description-html>
            <property name="vmotionNicKey" type-id-ref="java.lang.String"
      vmodl-name="vmotionNicKey"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Key of the VirtualNic used for VMotion.]]>
      </description-html>
      </property>

            <property name="enabled" type-id-ref="BOOLEAN"
      vmodl-name="enabled"
      >
      <description-html>
         <![CDATA[Flag to indicate whether or not VMotion is enabled.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="SessionEvent"
      type-id="vim.event.SessionEvent"
      vmodl-name="vim.event.SessionEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.Event"
      >
      <description-html>
         <![CDATA[These are session events.]]>
      </description-html>
   </data-object>
   <data-object name="NegatableExpression"
      type-id="vim.NegatableExpression"
      vmodl-name="vim.NegatableExpression"
      version-id-ref="vim.version.version9"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The base class for any type of setting or configuration to which negation
  can be applied.
  When used in a configuration information object:
  if <a href="vim.NegatableExpression.html#negate">negate</a> is true, then ~(objectValue) will be used for the
  configuration. If false, then objectValue will be used as it is.]]>
      </description-html>
            <property name="negate" type-id-ref="BOOLEAN"
      vmodl-name="negate"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Whether the configuration needs to be negated or not.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="OvfNetworkInfo"
      type-id="vim.OvfManager.NetworkInfo"
      vmodl-name="vim.OvfManager.NetworkInfo"
      enclosing-type-id-ref="vim.OvfManager"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The name and description of a network as specified by the OVF descriptor.]]>
      </description-html>
            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      >
      </property>

            <property name="description" type-id-ref="java.lang.String"
      vmodl-name="description"
      >
      </property>

   </data-object>
   <data-object name="DasHeartbeatDatastoreInfo"
      type-id="vim.cluster.DasAdvancedRuntimeInfo.HeartbeatDatastoreInfo"
      vmodl-name="vim.cluster.DasAdvancedRuntimeInfo.HeartbeatDatastoreInfo"
      enclosing-type-id-ref="vim.cluster.DasAdvancedRuntimeInfo"
      version-id-ref="vim.version.version7"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Class for the selection of heartbeat datastores]]>
      </description-html>
            <property name="datastore" type-id-ref="vim.Datastore"
      vmodl-name="datastore"
      >
      </property>

            <property name="hosts" type-id-ref="vim.HostSystem"
      vmodl-name="hosts"
      is-array="true"
      >
      </property>

   </data-object>
   <data-object name="VirtualPCIPassthroughDynamicBackingOption"
      type-id="vim.vm.device.VirtualPCIPassthroughOption.DynamicBackingOption"
      vmodl-name="vim.vm.device.VirtualPCIPassthroughOption.DynamicBackingOption"
      enclosing-type-id-ref="vim.vm.device.VirtualPCIPassthroughOption"
      version-id-ref="vim.version.v7_0"
      base-type-id="vim.vm.device.VirtualDeviceOption.DeviceBackingOption"
      >
      <description-html>
         <![CDATA[This data object type describes the options for the
  <a href="vim.vm.device.VirtualPCIPassthrough.DynamicBackingInfo.html">VirtualPCIPassthroughDynamicBackingInfo</a> data object type.]]>
      </description-html>
   </data-object>
   <data-object name="VirtualDiskSeSparseBackingOption"
      type-id="vim.vm.device.VirtualDiskOption.SeSparseBackingOption"
      vmodl-name="vim.vm.device.VirtualDiskOption.SeSparseBackingOption"
      enclosing-type-id-ref="vim.vm.device.VirtualDiskOption"
      version-id-ref="vim.version.version8"
      base-type-id="vim.vm.device.VirtualDeviceOption.FileBackingOption"
      >
      <description-html>
         <![CDATA[Backing options for virtual disks that use the space
  efficient sparse format.
  <p>
  Space for Flex-SE disks is allocated on demand and
  optimizations are applied to achieve additional
  space savings.]]>
      </description-html>
            <property name="diskMode" type-id-ref="vim.option.ChoiceOption"
      vmodl-name="diskMode"
      >
      <description-html>
         <![CDATA[The disk mode. Valid disk modes are:
  <ul>
  <li>vim.vm.device.VirtualDiskOption.DiskMode#persistent
  <li>vim.vm.device.VirtualDiskOption.DiskMode#independent_persistent
  <li>vim.vm.device.VirtualDiskOption.DiskMode#independent_nonpersistent
  </ul><br>See <a href="vim.vm.device.VirtualDiskOption.DiskMode.html">VirtualDiskMode</a><br>]]>
      </description-html>
      </property>

            <property name="writeThrough" type-id-ref="vim.option.BoolOption"
      vmodl-name="writeThrough"
      >
      <description-html>
         <![CDATA[Flag to indicate whether or not the host supports
  allowing the client to select "writethrough" as a mode for
  virtual disks. Typically, this is available only for VMware Server Linux hosts.]]>
      </description-html>
      </property>

            <property name="growable" type-id-ref="BOOLEAN"
      vmodl-name="growable"
      >
      <description-html>
         <![CDATA[Indicates whether or not this disk backing can be
  extended to larger sizes through a reconfigure operation.
  <p>
  If set to true, reconfiguring this virtual disk
  with a <a href="vim.vm.device.VirtualDisk.html#capacityInKB">capacityInKB</a> value greater
  than its current value will grow the disk to the newly specified size.]]>
      </description-html>
      </property>

            <property name="hotGrowable" type-id-ref="BOOLEAN"
      vmodl-name="hotGrowable"
      >
      <description-html>
         <![CDATA[Indicates whether or not this disk backing can be
  extended to larger sizes through a reconfigure operation while
  the virtual machine is powered on.
  <p>
  If set to true, reconfiguring this virtual disk
  with a <a href="vim.vm.device.VirtualDisk.html#capacityInKB">capacityInKB</a> value greater
  than its current value will grow the disk to the newly specified size
  while the virtual machine is powered on.]]>
      </description-html>
      </property>

            <property name="uuid" type-id-ref="BOOLEAN"
      vmodl-name="uuid"
      >
      <description-html>
         <![CDATA[Flag to indicate whether this backing supports disk UUID property.]]>
      </description-html>
      </property>

            <property name="deltaDiskFormatsSupported" type-id-ref="vim.vm.device.VirtualDiskOption.DeltaDiskFormatsSupported"
      vmodl-name="deltaDiskFormatsSupported"
      is-array="true"
      >
      <description-html>
         <![CDATA[Delta disk formats supported for each datastore type.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ApplyStorageRecommendationResult"
      type-id="vim.storageDrs.ApplyRecommendationResult"
      vmodl-name="vim.storageDrs.ApplyRecommendationResult"
      version-id-ref="vim.version.version7"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Both <a href="vim.StorageResourceManager.html#recommendDatastores">RecommendDatastores</a> and
   <a href="vim.Datastore.html#enterMaintenanceMode">DatastoreEnterMaintenanceMode</a> methods may invoke Storage DRS
   for recommendations on placing or evacuating virtual disks.
   All initial placement recommendations, and some enterMaintenanceMode
   recommendations need to be approved by the user. Recommendations that
   are approved will be applied using the
   <a href="vim.StorageResourceManager.html#applyRecommendation">ApplyStorageDrsRecommendation_Task</a>
   method.

   This class encapsulates the result of applying a subset of the
   recommendations.
   <p>]]>
      </description-html>
            <property name="vm" type-id-ref="vim.VirtualMachine"
      vmodl-name="vm"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The result applying the recommendation, if it was successful.
 This is the equivalent of the <a href="vim.TaskInfo.html#result">result</a> key for the
 task launched when the recommendation was applied.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostStorageOperationalInfo"
      type-id="vim.host.HardwareStatusInfo.StorageStatusInfo.OperationalInfo"
      vmodl-name="vim.host.HardwareStatusInfo.StorageStatusInfo.OperationalInfo"
      enclosing-type-id-ref="vim.host.HardwareStatusInfo.StorageStatusInfo"
      version-id-ref="vim.version.version2"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Data class describing operational information of a storage element]]>
      </description-html>
            <property name="property" type-id-ref="java.lang.String"
      vmodl-name="property"
      >
      <description-html>
         <![CDATA[The property of interest for the storage element]]>
      </description-html>
      </property>

            <property name="value" type-id-ref="java.lang.String"
      vmodl-name="value"
      >
      <description-html>
         <![CDATA[The property value for the storage element]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DVSBackupRestoreCapability"
      type-id="vim.DistributedVirtualSwitch.BackupRestoreCapability"
      vmodl-name="vim.DistributedVirtualSwitch.BackupRestoreCapability"
      enclosing-type-id-ref="vim.DistributedVirtualSwitch"
      version-id-ref="vim.version.version8"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The <a href="vim.DistributedVirtualSwitch.BackupRestoreCapability.html">DVSBackupRestoreCapability</a> data object
  describes backup, restore, and rollback capabilities for distributed virtual
  switches and distributed virtual portgroups.
  Backup and restore capabilities are indicated for <a href="vim.DistributedVirtualSwitch.html">DistributedVirtualSwitch</a>.
  Rollback capability is indicated for <a href="vim.DistributedVirtualSwitch.html">DistributedVirtualSwitch</a>
  and <a href="vim.dvs.DistributedVirtualPortgroup.html">DistributedVirtualPortgroup</a>.]]>
      </description-html>
            <property name="backupRestoreSupported" type-id-ref="BOOLEAN"
      vmodl-name="backupRestoreSupported"
      >
      <description-html>
         <![CDATA[Indicates whether backup, restore, and rollback are supported.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualLsiLogicController"
      type-id="vim.vm.device.VirtualLsiLogicController"
      vmodl-name="vim.vm.device.VirtualLsiLogicController"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.device.VirtualSCSIController"
      >
      <description-html>
         <![CDATA[VirtualLsiLogicController is the data object that represents
 a LSI Logic SCSI controller.]]>
      </description-html>
   </data-object>
   <data-object name="VirtualAppSummary"
      type-id="vim.VirtualApp.Summary"
      vmodl-name="vim.VirtualApp.Summary"
      enclosing-type-id-ref="vim.VirtualApp"
      version-id-ref="vim.version.version5"
      base-type-id="vim.ResourcePool.Summary"
      >
      <description-html>
         <![CDATA[This data object type encapsulates a typical set of resource
  pool information that is useful for list views and summary pages.]]>
      </description-html>
            <property name="product" type-id-ref="vim.vApp.ProductInfo"
      vmodl-name="product"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Product information. References to properties in the URLs are expanded.]]>
      </description-html>
      </property>

            <property name="vAppState" type-id-ref="vim.VirtualApp.VAppState"
      vmodl-name="vAppState"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Whether the vApp is running]]>
      </description-html>
      </property>

            <property name="suspended" type-id-ref="BOOLEAN"
      vmodl-name="suspended"
      version-id-ref="vim.version.version6"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Whether a vApp is suspended, in the process of being suspended, or in the
  process of being resumed. A stopped vApp is marked as suspended
  under the following conditions:
  <ul>
  <li>All child virtual machines are either suspended or powered-off.</li>
  <li>There is at least one suspended virtual machine for which the
      stop action is not "suspend".</li>
  </ul>
  If the vAppState property is "stopped", the value is set to true if the vApp is
  suspended (according the the above definition).
  <p>
  If the vAppState property is "stopping" or "starting" and the suspend flag is set to
  true, then the vApp is either in the process of being suspended or resumed
  from a suspended state, respectively.
  <p>
  If the vAppState property is "started", then the suspend flag is set to false.]]>
      </description-html>
      </property>

            <property name="installBootRequired" type-id-ref="BOOLEAN"
      vmodl-name="installBootRequired"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Whether one or more VMs in this vApp require a reboot to finish
 installation.]]>
      </description-html>
      </property>

            <property name="instanceUuid" type-id-ref="java.lang.String"
      vmodl-name="instanceUuid"
      version-id-ref="vim.version.version6"
      is-optional="true"
      >
      <description-html>
         <![CDATA[vCenter-specific UUID of the vApp]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VmRemovedEvent"
      type-id="vim.event.VmRemovedEvent"
      vmodl-name="vim.event.VmRemovedEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.VmEvent"
      >
      <description-html>
         <![CDATA[This event records a virtual machine removed from VirtualCenter management.]]>
      </description-html>
   </data-object>
   <data-object name="IsoImageFileInfo"
      type-id="vim.host.DatastoreBrowser.IsoImageInfo"
      vmodl-name="vim.host.DatastoreBrowser.IsoImageInfo"
      enclosing-type-id-ref="vim.host.DatastoreBrowser"
      version-id-ref="vim.version.version1"
      base-type-id="vim.host.DatastoreBrowser.FileInfo"
      >
      <description-html>
         <![CDATA[This data object type describes a file that is an ISO CD-ROM image.]]>
      </description-html>
   </data-object>
   <data-object name="VmFailedToRebootGuestEvent"
      type-id="vim.event.VmFailedToRebootGuestEvent"
      vmodl-name="vim.event.VmFailedToRebootGuestEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.VmEvent"
      >
      <description-html>
         <![CDATA[This event records a failure to reboot the guest on a virtual machine.]]>
      </description-html>
            <property name="reason" type-id-ref="vmodl.LocalizedMethodFault"
      vmodl-name="reason"
      >
      <description-html>
         <![CDATA[The reason for the failure.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostDatastoreSystemDatastoreResult"
      type-id="vim.host.DatastoreSystem.DatastoreResult"
      vmodl-name="vim.host.DatastoreSystem.DatastoreResult"
      enclosing-type-id-ref="vim.host.DatastoreSystem"
      version-id-ref="vim.version.version10"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Contains result of remove datastore request. Used as return value
 by <a href="vim.host.DatastoreSystem.html#removeDatastoreEx">RemoveDatastoreEx_Task</a>]]>
      </description-html>
            <property name="key" type-id-ref="vim.Datastore"
      vmodl-name="key"
      >
      <description-html>
         <![CDATA[Datastore removed]]>
      </description-html>
      </property>

            <property name="fault" type-id-ref="vmodl.LocalizedMethodFault"
      vmodl-name="fault"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Fault if removal fails]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostNicOrderPolicy"
      type-id="vim.host.NetworkPolicy.NicOrderPolicy"
      vmodl-name="vim.host.NetworkPolicy.NicOrderPolicy"
      enclosing-type-id-ref="vim.host.NetworkPolicy"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object type describes network adapter ordering policy for a
  network adapter team.  A physical network adapter can be in the active
  list, the standby list, or neither.  It cannot be in both lists.

  For a virtual switch, the NicOrderPolicy property is never null when
  retrieved from the server.  When creating a new virtual switch or
  updating an existing virtual switch, the NicOrderPolicy can be null,
  in which case the default NicOrderPolicy from the server will be
  used.

  For a portgroup, a null NicOrderPolicy property means the portgroup
  inherits the policy from its parent.  Otherwise, the NicOrderPolicy
  property defined in the portgroup takes precedence.

  In all cases where the NicOrderPolicy property is set, an empty
  activeNic array means there are no active Ethernet adapters in the team.  An
  empty standbyNic array means there are no standby Ethernet adapters.]]>
      </description-html>
            <property name="activeNic" type-id-ref="java.lang.String"
      vmodl-name="activeNic"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of active network adapters used for load balancing.]]>
      </description-html>
      </property>

            <property name="standbyNic" type-id-ref="java.lang.String"
      vmodl-name="standbyNic"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Standby network adapters used for failover.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostUnresolvedVmfsResolutionSpec"
      type-id="vim.host.UnresolvedVmfsResolutionSpec"
      vmodl-name="vim.host.UnresolvedVmfsResolutionSpec"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[An unresolved VMFS volume is reported when one or more device partitions
  of volume are detected to have copies of extents of the volume.
  Such copies can be created via replication or snapshots, for example.
  This data object type describes how to resolve an unbound VMFS volume.
  The SCSI device path for each of the VMFS volume extent should be
  specified.
  For the current release, only head-extent needs to be specified.
  In future releases, we will allow user to specify explicitly all the
  extents which makes up a new Vmfs Volume.]]>
      </description-html>
            <property name="extentDevicePath" type-id-ref="java.lang.String"
      vmodl-name="extentDevicePath"
      is-array="true"
      >
      <description-html>
         <![CDATA[List of device paths each specifying a VMFS extent.
  <p>
  One extent must be specified.  This property is represented as a
  list to enable future enhancements to the interface.]]>
      </description-html>
      </property>

            <property name="uuidResolution" type-id-ref="java.lang.String"
      vmodl-name="uuidResolution"
      >
      <description-html>
         <![CDATA[When set to Resignature, new Uuid is assigned to the VMFS
 volume. When set to 'forceMount', existing uuid is assigned
 to the Vmfs volume and Vmfs volumes metadata doesn't change.<br>See VmfsUuidResolution]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.host.UnresolvedVmfsResolutionSpec.VmfsUuidResolution</nested-type-id-ref>
   </data-object>
   <data-object name="EnteringStandbyModeEvent"
      type-id="vim.event.EnteringStandbyModeEvent"
      vmodl-name="vim.event.EnteringStandbyModeEvent"
      version-id-ref="vim.version.version2"
      base-type-id="vim.event.HostEvent"
      >
      <description-html>
         <![CDATA[This event records that a host has begun the process of entering
  standby mode. All virtual machine operations
  are blocked, except the following:
  <ul>
  <li>MigrateVM
  <li>PowerOffVM
  <li>SuspendVM
  <li>ShutdownGuest
  <li>StandbyGuest
  </ul>]]>
      </description-html>
   </data-object>
   <data-object name="VirtualMachineCpuIdInfoSpec"
      type-id="vim.vm.ConfigSpec.CpuIdInfoSpec"
      vmodl-name="vim.vm.ConfigSpec.CpuIdInfoSpec"
      enclosing-type-id-ref="vim.vm.ConfigSpec"
      version-id-ref="vim.version.version1"
      base-type-id="vim.option.ArrayUpdateSpec"
      >
      <description-html>
         <![CDATA[Wrapper class to support incremental updates of the cpuFeatureMask.
  As of vSphere API 6.5 <a href="vim.vm.ConfigSpec.html#extraConfig">extraConfig</a> is the recommended method
  for setting the mask for a virtual machine with hardware version 9 and
  above (newer). They can be viewed via
  <a href="vim.vm.RuntimeInfo.html#featureMask">featureMask</a>.]]>
      </description-html>
            <property name="info" type-id-ref="vim.host.CpuIdInfo"
      vmodl-name="info"
      is-optional="true"
      >
      </property>

   </data-object>
   <data-object name="DrsVmMigratedEvent"
      type-id="vim.event.DrsVmMigratedEvent"
      vmodl-name="vim.event.DrsVmMigratedEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.VmMigratedEvent"
      >
      <description-html>
         <![CDATA[This event records a virtual machine migration that was recommended by DRS.]]>
      </description-html>
   </data-object>
   <data-object name="OvfParseDescriptorResult"
      type-id="vim.OvfManager.ParseDescriptorResult"
      vmodl-name="vim.OvfManager.ParseDescriptorResult"
      enclosing-type-id-ref="vim.OvfManager"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
            <property name="eula" type-id-ref="java.lang.String"
      vmodl-name="eula"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The list of all EULAs contained in the OVF]]>
      </description-html>
      </property>

            <property name="network" type-id-ref="vim.OvfManager.NetworkInfo"
      vmodl-name="network"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The list of networks required by the OVF]]>
      </description-html>
      </property>

            <property name="ipAllocationScheme" type-id-ref="java.lang.String"
      vmodl-name="ipAllocationScheme"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The kind of IP allocation supported by the guest.
 <p>
 See <a href="vim.vApp.IPAssignmentInfo.html">VAppIPAssignmentInfo</a>.]]>
      </description-html>
      </property>

            <property name="ipProtocols" type-id-ref="java.lang.String"
      vmodl-name="ipProtocols"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The IP protocols supported by the guest.
 <p>
 See <a href="vim.vApp.IPAssignmentInfo.html">VAppIPAssignmentInfo</a>.]]>
      </description-html>
      </property>

            <property name="property" type-id-ref="vim.vApp.PropertyInfo"
      vmodl-name="property"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Metadata about the properties contained in the OVF]]>
      </description-html>
      </property>

            <property name="productInfo" type-id-ref="vim.vApp.ProductInfo"
      vmodl-name="productInfo"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The product info contained in the OVF]]>
      </description-html>
      </property>

            <property name="annotation" type-id-ref="java.lang.String"
      vmodl-name="annotation"
      >
      <description-html>
         <![CDATA[The annotation info contained in the OVF]]>
      </description-html>
      </property>

            <property name="approximateDownloadSize" type-id-ref="LONG"
      vmodl-name="approximateDownloadSize"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The OVF Manager's best guess as to the total amount
 of data that must be transferred to download the entity.
 <p>
 This may be inaccurate due to disk compression etc.]]>
      </description-html>
      </property>

            <property name="approximateFlatDeploymentSize" type-id-ref="LONG"
      vmodl-name="approximateFlatDeploymentSize"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The OVF Manager's best guess as to the total amount of space required to deploy
 the entity if using flat disks.]]>
      </description-html>
      </property>

            <property name="approximateSparseDeploymentSize" type-id-ref="LONG"
      vmodl-name="approximateSparseDeploymentSize"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The OVF Manager's best guess as to the total amount of space required to deploy
 the entity using sparse disks.]]>
      </description-html>
      </property>

            <property name="defaultEntityName" type-id-ref="java.lang.String"
      vmodl-name="defaultEntityName"
      >
      <description-html>
         <![CDATA[The default name to use for the entity, if a product name is not
 specified. This is the ID of the OVF top-level entity, or taken from a
 ProductSection.]]>
      </description-html>
      </property>

            <property name="virtualApp" type-id-ref="BOOLEAN"
      vmodl-name="virtualApp"
      >
      <description-html>
         <![CDATA[True if the OVF contains a vApp (containing one or more vApps
 and/or virtual machines), as opposed to a single virtual machine.]]>
      </description-html>
      </property>

            <property name="deploymentOption" type-id-ref="vim.OvfManager.DeploymentOption"
      vmodl-name="deploymentOption"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The list of possible deployment options.]]>
      </description-html>
      </property>

            <property name="defaultDeploymentOption" type-id-ref="java.lang.String"
      vmodl-name="defaultDeploymentOption"
      >
      <description-html>
         <![CDATA[The key of the default deployment option. Empty only if there are no
 deployment options.]]>
      </description-html>
      </property>

            <property name="entityName" type-id-ref="vim.KeyValue"
      vmodl-name="entityName"
      version-id-ref="vim.version.version6"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[A list of the child entities contained in this package
   and their location in the vApp hierarchy. Each entry is a
   (key,value) pair, where the key is the display name, and
   the value is a unique path identifier for the entity in
   the vApp. The path is constructed by appending the id
   of each entity of the path down to the entity, separated
   by slashes. For example, the path for a child of the root
   entity with id = "vm1", would simply be "vm1". If the vm is
   the child of a VirtualSystemCollection called "webTier", then
   the path would be "webTier/vm".]]>
      </description-html>
      </property>

            <property name="annotatedOst" type-id-ref="vim.OvfConsumer.OstNode"
      vmodl-name="annotatedOst"
      version-id-ref="vim.version.version7"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The annotated OST for the OVF descriptor, generated by OVF
 consumers. See <a href="vim.OvfConsumer.html">OvfConsumer</a> for details.]]>
      </description-html>
      </property>

            <property name="error" type-id-ref="vmodl.LocalizedMethodFault"
      vmodl-name="error"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Errors that happened during processing. Something
 will be wrong with the result.
 <p>
 For example, during export, devices could be
 missing (in which case this array will contain one
 or more instances of Unsupported-/UnknownDevice).]]>
      </description-html>
      </property>

            <property name="warning" type-id-ref="vmodl.LocalizedMethodFault"
      vmodl-name="warning"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Non-fatal warnings from the processing.
 The result will be valid, but the
 user may choose to reject it based on these
 warnings.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostVirtualNicIpRouteSpec"
      type-id="vim.host.VirtualNic.IpRouteSpec"
      vmodl-name="vim.host.VirtualNic.IpRouteSpec"
      enclosing-type-id-ref="vim.host.VirtualNic"
      version-id-ref="vim.version.version11"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The <a href="vim.host.VirtualNic.IpRouteSpec.html">HostVirtualNicIpRouteSpec</a> data object describes the
 IpRoute configuration used by virtual NIC.]]>
      </description-html>
            <property name="ipRouteConfig" type-id-ref="vim.host.IpRouteConfig"
      vmodl-name="ipRouteConfig"
      is-optional="true"
      >
      <description-html>
         <![CDATA[By default, a host virtual NIC uses default gateway configuration
 from it's <a href="vim.host.NetStackInstance.html">HostNetStackInstance</a>. A custom IPv4 and IPv6
 default gateway can be configured by specifying valid
 <a href="vim.host.IpRouteConfig.html#defaultGateway">defaultGateway</a> and
 <a href="vim.host.IpRouteConfig.html#ipV6DefaultGateway">ipV6DefaultGateway</a> properties.
 A user defined IPv4 and IPv6 default gateway can be removed by
 unsetting corresponding gateway property from ipRouteConfig.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DesiredSoftwareSpecVendorAddOnSpec"
      type-id="vim.DesiredSoftwareSpec.VendorAddOnSpec"
      vmodl-name="vim.DesiredSoftwareSpec.VendorAddOnSpec"
      enclosing-type-id-ref="vim.DesiredSoftwareSpec"
      version-id-ref="vim.version.v7_0"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Vendor specific add-on info for ESX host.]]>
      </description-html>
            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      >
      <description-html>
         <![CDATA[Vendor add-on name.]]>
      </description-html>
      </property>

            <property name="version" type-id-ref="java.lang.String"
      vmodl-name="version"
      >
      <description-html>
         <![CDATA[Vendor add-on version.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VmwareUplinkPortTeamingPolicy"
      type-id="vim.dvs.VmwareDistributedVirtualSwitch.UplinkPortTeamingPolicy"
      vmodl-name="vim.dvs.VmwareDistributedVirtualSwitch.UplinkPortTeamingPolicy"
      enclosing-type-id-ref="vim.dvs.VmwareDistributedVirtualSwitch"
      version-id-ref="vim.version.version5"
      base-type-id="vim.InheritablePolicy"
      >
      <description-html>
         <![CDATA[Policy for a uplink port team.]]>
      </description-html>
            <property name="policy" type-id-ref="vim.StringPolicy"
      vmodl-name="policy"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Network adapter teaming policy. The policy defines the way traffic
   from the clients of the team is routed through the different uplinks
   in the team. The policies supported on the VDS platform is one of
   <a href="vim.DistributedVirtualSwitch.FeatureCapability.html#nicTeamingPolicy">nicTeamingPolicy</a>.]]>
      </description-html>
      </property>

            <property name="reversePolicy" type-id-ref="vim.BoolPolicy"
      vmodl-name="reversePolicy"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The flag to indicate whether or not the teaming policy is applied
  to inbound frames as well. Also see <a href="vim.host.NetworkPolicy.NicTeamingPolicy.html#reversePolicy">reversePolicy</a>]]>
      </description-html>
      </property>

            <property name="notifySwitches" type-id-ref="vim.BoolPolicy"
      vmodl-name="notifySwitches"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Flag to specify whether or not to notify the physical switch
  if a link fails. Also see <a href="vim.host.NetworkPolicy.NicTeamingPolicy.html#notifySwitches">notifySwitches</a>]]>
      </description-html>
      </property>

            <property name="rollingOrder" type-id-ref="vim.BoolPolicy"
      vmodl-name="rollingOrder"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The flag to indicate whether or not to use a rolling policy when
  restoring links. Also see <a href="vim.host.NetworkPolicy.NicTeamingPolicy.html#rollingOrder">rollingOrder</a>]]>
      </description-html>
      </property>

            <property name="failureCriteria" type-id-ref="vim.dvs.VmwareDistributedVirtualSwitch.FailureCriteria"
      vmodl-name="failureCriteria"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Failover detection policy for the uplink port team.]]>
      </description-html>
      </property>

            <property name="uplinkPortOrder" type-id-ref="vim.dvs.VmwareDistributedVirtualSwitch.UplinkPortOrderPolicy"
      vmodl-name="uplinkPortOrder"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Failover order policy for uplink ports on the hosts.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="GuestRegValueSpec"
      type-id="vim.vm.guest.WindowsRegistryManager.RegistryValue"
      vmodl-name="vim.vm.guest.WindowsRegistryManager.RegistryValue"
      enclosing-type-id-ref="vim.vm.guest.WindowsRegistryManager"
      version-id-ref="vim.version.version10"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This describes the registry value.]]>
      </description-html>
            <property name="name" type-id-ref="vim.vm.guest.WindowsRegistryManager.RegistryValueName"
      vmodl-name="name"
      >
      <description-html>
         <![CDATA[The value name.]]>
      </description-html>
      </property>

            <property name="data" type-id-ref="vim.vm.guest.WindowsRegistryManager.RegistryValueData"
      vmodl-name="data"
      >
      <description-html>
         <![CDATA[The value data. Use one of the extended classes to specify data type:
 <a href="vim.vm.guest.WindowsRegistryManager.RegistryValueDword.html">GuestRegValueDwordSpec</a>,
 <a href="vim.vm.guest.WindowsRegistryManager.RegistryValueQword.html">GuestRegValueQwordSpec</a>,
 <a href="vim.vm.guest.WindowsRegistryManager.RegistryValueString.html">GuestRegValueStringSpec</a>,
 <a href="vim.vm.guest.WindowsRegistryManager.RegistryValueExpandString.html">GuestRegValueExpandStringSpec</a>,
 <a href="vim.vm.guest.WindowsRegistryManager.RegistryValueMultiString.html">GuestRegValueMultiStringSpec</a>,
 <a href="vim.vm.guest.WindowsRegistryManager.RegistryValueBinary.html">GuestRegValueBinarySpec</a>.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostRdmaDevicePnicBacking"
      type-id="vim.host.RdmaDevice.PnicBacking"
      vmodl-name="vim.host.RdmaDevice.PnicBacking"
      enclosing-type-id-ref="vim.host.RdmaDevice"
      version-id-ref="vim.version.v7_0"
      base-type-id="vim.host.RdmaDevice.Backing"
      >
      <description-html>
         <![CDATA[This data object represents a physical NIC backing
  for an RDMA device.
  <p>
  When an RDMA device is backed by a physical NIC, it
  can be associated with the virtual NICs
  connected to a virtual switch which has the
  backing physical NIC as an uplink. The actual bindings
  are created and destroyed dynamically based on application
  usage of the RDMA device.]]>
      </description-html>
            <property name="pairedUplink" type-id-ref="vim.host.PhysicalNic"
      vmodl-name="pairedUplink"
      is-link="true"
      >
      <description-html>
         <![CDATA[The associated physical NIC]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostTpmBootSecurityOptionEventDetails"
      type-id="vim.host.TpmBootSecurityOptionEventDetails"
      vmodl-name="vim.host.TpmBootSecurityOptionEventDetails"
      version-id-ref="vim.version.version8"
      base-type-id="vim.host.TpmEventDetails"
      >
      <description-html>
         <![CDATA[Details of a Trusted Platform Module (TPM) event recording kernel security
  option passed at boot time and currently in effect.
  <p />
  This event type exists to simplify parsing of the security-related information
  by internal and third-party solutions. Each boot option may be passed to kernel
  multiple times and/or in different forms. Replicating the parsing logic of the
  kernel would be neither convinient, nor secure for the client applications.
  <p />
  Each instance of this event reports details of a single security-related
  boot option, as set in the kernel.]]>
      </description-html>
            <property name="bootSecurityOption" type-id-ref="java.lang.String"
      vmodl-name="bootSecurityOption"
      >
      <description-html>
         <![CDATA[Security-related options string, reflecting the state of an option set
  in the kernel.
  <p />
  This string is in the form of a KEY=VALUE pair.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="GuestRegValueQwordSpec"
      type-id="vim.vm.guest.WindowsRegistryManager.RegistryValueQword"
      vmodl-name="vim.vm.guest.WindowsRegistryManager.RegistryValueQword"
      enclosing-type-id-ref="vim.vm.guest.WindowsRegistryManager"
      version-id-ref="vim.version.version10"
      base-type-id="vim.vm.guest.WindowsRegistryManager.RegistryValueData"
      >
      <description-html>
         <![CDATA[This describes the registry value qword.]]>
      </description-html>
            <property name="value" type-id-ref="LONG"
      vmodl-name="value"
      >
      <description-html>
         <![CDATA[The data of the registry value.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ServiceLocatorSAMLCredential"
      type-id="vim.ServiceLocator.SAMLCredential"
      vmodl-name="vim.ServiceLocator.SAMLCredential"
      enclosing-type-id-ref="vim.ServiceLocator"
      version-id-ref="vim.version.version10"
      base-type-id="vim.ServiceLocator.Credential"
      >
      <description-html>
         <![CDATA[The data object type specifies the SAML token (SSO) based credential for
 authenticating to a service endpoint.]]>
      </description-html>
            <property name="token" type-id-ref="java.lang.String"
      vmodl-name="token"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The SAML token for authentication]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="PhysicalNicLinkInfo"
      type-id="vim.host.PhysicalNic.LinkSpeedDuplex"
      vmodl-name="vim.host.PhysicalNic.LinkSpeedDuplex"
      enclosing-type-id-ref="vim.host.PhysicalNic"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The <a href="vim.host.PhysicalNic.LinkSpeedDuplex.html">PhysicalNicLinkInfo</a> data object describes
  the link speed and the type of duplex communication.  The link speed indicates
  the bit rate in megabits per second.  The duplex boolean indicates if the link
  is capable of full-duplex or half-duplex communication.]]>
      </description-html>
            <property name="speedMb" type-id-ref="INT"
      vmodl-name="speedMb"
      >
      <description-html>
         <![CDATA[Bit rate on the link.]]>
      </description-html>
      </property>

            <property name="duplex" type-id-ref="BOOLEAN"
      vmodl-name="duplex"
      >
      <description-html>
         <![CDATA[Flag to indicate whether or not the link is capable of
  full-duplex ("true") or only half-duplex ("false").]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="SecurityProfile"
      type-id="vim.profile.host.SecurityProfile"
      vmodl-name="vim.profile.host.SecurityProfile"
      version-id-ref="vim.version.version5"
      base-type-id="vim.profile.ApplyProfile"
      >
      <description-html>
         <![CDATA[The <a href="vim.profile.host.SecurityProfile.html">SecurityProfile</a> data object represents host security configuration.
 If a profile plug-in defines policies or subprofiles, use the
 <a href="vim.profile.ApplyProfile.html#policy">policy</a> or <a href="vim.profile.ApplyProfile.html#property">property</a>
 list to access the additional configuration data.]]>
      </description-html>
            <property name="permission" type-id-ref="vim.profile.host.PermissionProfile"
      vmodl-name="permission"
      version-id-ref="vim.version.version6"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Permission configuration.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ScheduledTaskCreatedEvent"
      type-id="vim.event.ScheduledTaskCreatedEvent"
      vmodl-name="vim.event.ScheduledTaskCreatedEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.ScheduledTaskEvent"
      >
      <description-html>
         <![CDATA[This event records the creation of a scheduled task.]]>
      </description-html>
   </data-object>
   <data-object name="HostConnectInfo"
      type-id="vim.host.ConnectInfo"
      vmodl-name="vim.host.ConnectInfo"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object type contains information about a single host that can be used by
  the connection wizard. This can be returned without adding the host to VirtualCenter.]]>
      </description-html>
            <property name="serverIp" type-id-ref="java.lang.String"
      vmodl-name="serverIp"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The IP address of the VirtualCenter already managing this host, if any.]]>
      </description-html>
      </property>

            <property name="inDasCluster" type-id-ref="BOOLEAN"
      vmodl-name="inDasCluster"
      version-id-ref="vim.version.version7"
      is-optional="true"
      >
      <description-html>
         <![CDATA[If the host is already being managed by a vCenter Server, this property
  reports true if the host is also part of a vSphere HA enabled cluster. If
  this is the case, remove or disconnect the host
  from this cluster before adding it to another vCenter Server.]]>
      </description-html>
      </property>

            <property name="host" type-id-ref="vim.host.Summary"
      vmodl-name="host"
      >
      <description-html>
         <![CDATA[Summary information about the host. The status fields and managed object
  reference is not set when an object of this type is created. These fields and
  references are typically set later when these objects are associated with a host.]]>
      </description-html>
      </property>

            <property name="vm" type-id-ref="vim.vm.Summary"
      vmodl-name="vm"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The list of virtual machines on the host.]]>
      </description-html>
      </property>

            <property name="vimAccountNameRequired" type-id-ref="BOOLEAN"
      vmodl-name="vimAccountNameRequired"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Whether or not the host requires a vimAccountName and password to be set in the
  ConnectSpec. This is normally only required for VMware Server hosts.]]>
      </description-html>
      </property>

            <property name="clusterSupported" type-id-ref="BOOLEAN"
      vmodl-name="clusterSupported"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Whether or not the host supports clustering capabilities such as HA or DRS and
  therefore can be added to a cluster. If false, the host must be added as a
  standalone host.]]>
      </description-html>
      </property>

            <property name="network" type-id-ref="vim.host.ConnectInfo.NetworkInfo"
      vmodl-name="network"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The list of network information for networks configured on this host.]]>
      </description-html>
      </property>

            <property name="datastore" type-id-ref="vim.host.ConnectInfo.DatastoreInfo"
      vmodl-name="datastore"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The list of datastores on the host.]]>
      </description-html>
      </property>

            <property name="license" type-id-ref="vim.host.ConnectInfo.LicenseInfo"
      vmodl-name="license"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[License manager information on the host]]>
      </description-html>
      </property>

            <property name="capability" type-id-ref="vim.host.Capability"
      vmodl-name="capability"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Host capabilities.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.host.ConnectInfo.NetworkInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.host.ConnectInfo.NewNetworkInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.host.ConnectInfo.DatastoreInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.host.ConnectInfo.DatastoreExistsInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.host.ConnectInfo.DatastoreNameConflictInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.host.ConnectInfo.LicenseInfo</nested-type-id-ref>
   </data-object>
   <data-object name="VmfsDatastoreCreateSpec"
      type-id="vim.host.VmfsDatastoreCreateSpec"
      vmodl-name="vim.host.VmfsDatastoreCreateSpec"
      version-id-ref="vim.version.version1"
      base-type-id="vim.host.VmfsDatastoreSpec"
      >
      <description-html>
         <![CDATA[This data object type is used when creating a new VMFS datastore,
  to create a specification for the VMFS datastore.]]>
      </description-html>
            <property name="partition" type-id-ref="vim.host.DiskPartitionInfo.Specification"
      vmodl-name="partition"
      >
      <description-html>
         <![CDATA[Partitioning specification.]]>
      </description-html>
      </property>

            <property name="vmfs" type-id-ref="vim.host.VmfsVolume.Specification"
      vmodl-name="vmfs"
      >
      <description-html>
         <![CDATA[The VMFS creation specification.]]>
      </description-html>
      </property>

            <property name="extent" type-id-ref="vim.host.ScsiDisk.Partition"
      vmodl-name="extent"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Extents to append to VMFS.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="GuestRegValueDataSpec"
      type-id="vim.vm.guest.WindowsRegistryManager.RegistryValueData"
      vmodl-name="vim.vm.guest.WindowsRegistryManager.RegistryValueData"
      enclosing-type-id-ref="vim.vm.guest.WindowsRegistryManager"
      version-id-ref="vim.version.version10"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This describes the registry value data.]]>
      </description-html>
   </data-object>
   <data-object name="LatencySensitivity"
      type-id="vim.LatencySensitivity"
      vmodl-name="vim.LatencySensitivity"
      version-id-ref="vim.version.version8"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Specification of the latency-sensitivity information.
  <p />
  The latency-sensitivity is used to request from the kernel a constraint
  on the scheduling delay of the virtual CPUs or other resources. This allows
  latency-sensitive applications(e.g. VOIP, audio/video streaming, etc.) to run
  in a virtual machine which is configured to use specific scheduling
  latencies and to be scheduled with low latency.
  <p />
  The kernel does not provide any guarantee that it will meet the
  latency-sensitivity requirement of a virtual machine CPU or other resources
  but it will always accept the latency-sensitivity value provided.]]>
      </description-html>
            <property name="level" type-id-ref="vim.LatencySensitivity.SensitivityLevel"
      vmodl-name="level"
      >
      <description-html>
         <![CDATA[The nominal latency-sensitive level of the application.]]>
      </description-html>
      </property>

            <property name="sensitivity" type-id-ref="INT"
      vmodl-name="sensitivity"
      is-deprecated="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The custom absolute latency-sensitivity value of the application.
  This value will be used only when the latency-sensitivity
  <a href="vim.LatencySensitivity.html#level">level</a> property is is set to
  <code>custom</code>. It is ignored in all other cases.
  <p />
  The unit of this value is micro-seconds and the application is more
  latency sensitive when this value is smaller. For example, if the
  absolute latency-sensitivity is 2000us, the kernel will
  try to schedule the virtual machine in a way so that its scheduling
  latency is not more than 2ms.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere version 5.5, this field is deprecated.]]>
      </deprecated-html>
      </property>

      <nested-type-id-ref>vim.LatencySensitivity.SensitivityLevel</nested-type-id-ref>
   </data-object>
   <data-object name="VirtualEthernetCardDVPortBackingOption"
      type-id="vim.vm.device.VirtualEthernetCardOption.DistributedVirtualPortBackingOption"
      vmodl-name="vim.vm.device.VirtualEthernetCardOption.DistributedVirtualPortBackingOption"
      enclosing-type-id-ref="vim.vm.device.VirtualEthernetCardOption"
      version-id-ref="vim.version.version5"
      base-type-id="vim.vm.device.VirtualDeviceOption.BackingOption"
      >
      <description-html>
         <![CDATA[This data object type contains the options for using a distributed
  virtual port virtual network card backing data object type.]]>
      </description-html>
   </data-object>
   <data-object name="VsanHostConfigInfoNetworkInfoPortConfig"
      type-id="vim.vsan.host.ConfigInfo.NetworkInfo.PortConfig"
      vmodl-name="vim.vsan.host.ConfigInfo.NetworkInfo.PortConfig"
      enclosing-type-id-ref="vim.vsan.host.ConfigInfo.NetworkInfo"
      version-id-ref="vim.version.version9"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[A PortConfig represents a virtual network adapter and its
 configuration for use by the VSAN service.<br>See <a href="vim.host.VirtualNic.html">HostVirtualNic</a><br>]]>
      </description-html>
            <property name="ipConfig" type-id-ref="vim.vsan.host.IpConfig"
      vmodl-name="ipConfig"
      is-optional="true"
      >
      <description-html>
         <![CDATA[<a href="vim.vsan.host.IpConfig.html">VsanHostIpConfig</a> for this PortConfig.]]>
      </description-html>
      </property>

            <property name="device" type-id-ref="java.lang.String"
      vmodl-name="device"
      >
      <description-html>
         <![CDATA[Device name which identifies the network adapter for this
 PortConfig.<br>See <a href="vim.host.VirtualNic.html#device">device</a><br>]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ProfileMetadataProfileSortSpec"
      type-id="vim.profile.ProfileMetadata.ProfileSortSpec"
      vmodl-name="vim.profile.ProfileMetadata.ProfileSortSpec"
      enclosing-type-id-ref="vim.profile.ProfileMetadata"
      version-id-ref="vim.version.version7"
      base-type-id="vmodl.DynamicData"
      >
            <property name="policyId" type-id-ref="java.lang.String"
      vmodl-name="policyId"
      >
      <description-html>
         <![CDATA[The id of the policy used to sort instances of the profile]]>
      </description-html>
      </property>

            <property name="parameter" type-id-ref="java.lang.String"
      vmodl-name="parameter"
      >
      <description-html>
         <![CDATA[The parameter to be used for sorting. Note that if the policy to be
 used for sorting has multiple possible policy options, all possible
 policy options defined for that policy type must have this parameter.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ProfileCreatedEvent"
      type-id="vim.event.ProfileCreatedEvent"
      vmodl-name="vim.event.ProfileCreatedEvent"
      version-id-ref="vim.version.version5"
      base-type-id="vim.event.ProfileEvent"
      >
      <description-html>
         <![CDATA[This event records that a Profile was created.]]>
      </description-html>
   </data-object>
   <data-object name="VirtualCdromRemoteAtapiBackingOption"
      type-id="vim.vm.device.VirtualCdromOption.RemoteAtapiBackingOption"
      vmodl-name="vim.vm.device.VirtualCdromOption.RemoteAtapiBackingOption"
      enclosing-type-id-ref="vim.vm.device.VirtualCdromOption"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.device.VirtualDeviceOption.DeviceBackingOption"
      >
      <description-html>
         <![CDATA[The VirtualCdromOption.RemoteAtapiBackingOption data object type
  contains the options for the remote ATAPI CD-ROM device backing.
  Note that the server cannot present a list of valid remote backing devices
  because it is unable to scan remote hosts.]]>
      </description-html>
   </data-object>
   <data-object name="DrsExitingStandbyModeEvent"
      type-id="vim.event.DrsExitingStandbyModeEvent"
      vmodl-name="vim.event.DrsExitingStandbyModeEvent"
      version-id-ref="vim.version.version5"
      base-type-id="vim.event.ExitingStandbyModeEvent"
      >
      <description-html>
         <![CDATA[This event records that a host has begun the process of
  exiting standby mode initiated by Distributed Power Management.]]>
      </description-html>
   </data-object>
   <data-object name="DVSContactInfo"
      type-id="vim.DistributedVirtualSwitch.ContactInfo"
      vmodl-name="vim.DistributedVirtualSwitch.ContactInfo"
      enclosing-type-id-ref="vim.DistributedVirtualSwitch"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Contact information of a human operator.]]>
      </description-html>
            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The name of the person who is responsible for the switch.]]>
      </description-html>
      </property>

            <property name="contact" type-id-ref="java.lang.String"
      vmodl-name="contact"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The contact information for the person.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DatastoreEventArgument"
      type-id="vim.event.DatastoreEventArgument"
      vmodl-name="vim.event.DatastoreEventArgument"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.EntityEventArgument"
      >
      <description-html>
         <![CDATA[The event argument is a Datastore object.]]>
      </description-html>
            <property name="datastore" type-id-ref="vim.Datastore"
      vmodl-name="datastore"
      >
      <description-html>
         <![CDATA[The Datastore object.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DasDisabledEvent"
      type-id="vim.event.DasDisabledEvent"
      vmodl-name="vim.event.DasDisabledEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.ClusterEvent"
      >
      <description-html>
         <![CDATA[This event records when a cluster has been disabled for HA.]]>
      </description-html>
   </data-object>
   <data-object name="VmConnectedEvent"
      type-id="vim.event.VmConnectedEvent"
      vmodl-name="vim.event.VmConnectedEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.VmEvent"
      >
      <description-html>
         <![CDATA[This event records that a virtual machine is connected.]]>
      </description-html>
   </data-object>
   <data-object name="VsanUpgradeSystemAPIBrokenIssue"
      type-id="vim.VsanUpgradeSystem.APIBrokenIssue"
      vmodl-name="vim.VsanUpgradeSystem.APIBrokenIssue"
      enclosing-type-id-ref="vim.VsanUpgradeSystem"
      version-id-ref="vim.version.version10"
      base-type-id="vim.VsanUpgradeSystem.PreflightCheckIssue"
      >
      <description-html>
         <![CDATA[Pre-flight check encountered a VC plumbing issue.]]>
      </description-html>
            <property name="hosts" type-id-ref="vim.HostSystem"
      vmodl-name="hosts"
      is-array="true"
      >
      <description-html>
         <![CDATA[Hosts this issue applies to.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualPCIPassthroughDynamicBackingInfo"
      type-id="vim.vm.device.VirtualPCIPassthrough.DynamicBackingInfo"
      vmodl-name="vim.vm.device.VirtualPCIPassthrough.DynamicBackingInfo"
      enclosing-type-id-ref="vim.vm.device.VirtualPCIPassthrough"
      version-id-ref="vim.version.v7_0"
      base-type-id="vim.vm.device.VirtualDevice.DeviceBackingInfo"
      >
      <description-html>
         <![CDATA[The VirtualPCIPassthrough.DynamicBackingInfo data object type
  contains information about the backing that maps the
  virtual device onto a physical device for a Dynamic DirectPath
  device.]]>
      </description-html>
            <property name="allowedDevice" type-id-ref="vim.vm.device.VirtualPCIPassthrough.AllowedDevice"
      vmodl-name="allowedDevice"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The list of allowed devices for use with a Dynamic DirectPath
 device.]]>
      </description-html>
      </property>

            <property name="customLabel" type-id-ref="java.lang.String"
      vmodl-name="customLabel"
      is-optional="true"
      >
      <description-html>
         <![CDATA[An optional label. If set, the device must also have the same
 customLabel attribute set.]]>
      </description-html>
      </property>

            <property name="assignedId" type-id-ref="java.lang.String"
      vmodl-name="assignedId"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The id of the device assigned when the VM is powered on. This value
 is unset when the VM is powered off.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="NvdimmGuid"
      type-id="vim.host.NvdimmSystem.Guid"
      vmodl-name="vim.host.NvdimmSystem.Guid"
      enclosing-type-id-ref="vim.host.NvdimmSystem"
      version-id-ref="vim.version.version12"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[A unique identifier used for namespaces]]>
      </description-html>
            <property name="uuid" type-id-ref="java.lang.String"
      vmodl-name="uuid"
      >
      <description-html>
         <![CDATA[Universally unique identifier in string format]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ResourcePoolMovedEvent"
      type-id="vim.event.ResourcePoolMovedEvent"
      vmodl-name="vim.event.ResourcePoolMovedEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.ResourcePoolEvent"
      >
      <description-html>
         <![CDATA[This event records when a resource pool is moved.]]>
      </description-html>
            <property name="oldParent" type-id-ref="vim.event.ResourcePoolEventArgument"
      vmodl-name="oldParent"
      >
      <description-html>
         <![CDATA[The old parent of the resource Pool.]]>
      </description-html>
      </property>

            <property name="newParent" type-id-ref="vim.event.ResourcePoolEventArgument"
      vmodl-name="newParent"
      >
      <description-html>
         <![CDATA[The new parent of the resource Pool.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostIpConfigIpV6Address"
      type-id="vim.host.IpConfig.IpV6Address"
      vmodl-name="vim.host.IpConfig.IpV6Address"
      enclosing-type-id-ref="vim.host.IpConfig"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The ipv6 address specification]]>
      </description-html>
            <property name="ipAddress" type-id-ref="java.lang.String"
      vmodl-name="ipAddress"
      >
      <description-html>
         <![CDATA[The ipv6 address. When DHCP is enabled, this property
  reflects the current IP configuration and cannot be set.]]>
      </description-html>
      </property>

            <property name="prefixLength" type-id-ref="INT"
      vmodl-name="prefixLength"
      >
      <description-html>
         <![CDATA[The prefix length. An ipv6 prefixLength is a decimal value that indicates
 the number of contiguous, higher-order bits of the address that make up the
 network portion of the address.
 For example, 10FA:6604:8136:6502::/64 is a possible IPv6 prefix. The prefix
 length in this case is 64.]]>
      </description-html>
      </property>

            <property name="origin" type-id-ref="java.lang.String"
      vmodl-name="origin"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The type of the ipv6 address configuration on the interface.
 This can be one of the types defined my the enum
 <a href="vim.host.IpConfig.IpV6AddressConfigType.html">HostIpConfigIpV6AddressConfigType</a>.]]>
      </description-html>
      </property>

            <property name="dadState" type-id-ref="java.lang.String"
      vmodl-name="dadState"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The state of this ipAddress. Can be one of
 <a href="vim.host.IpConfig.IpV6AddressStatus.html">HostIpConfigIpV6AddressStatus</a>]]>
      </description-html>
      </property>

            <property name="lifetime" type-id-ref="vmodl.DateTime"
      vmodl-name="lifetime"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The time when will this address expire. If not set
 the address lifetime is unlimited.]]>
      </description-html>
      </property>

            <property name="operation" type-id-ref="java.lang.String"
      vmodl-name="operation"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Valid values are "add" and "remove".
 See <a href="vim.host.ConfigChange.Operation.html">HostConfigChangeOperation</a>.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="LicenseFeatureInfo"
      type-id="vim.LicenseManager.FeatureInfo"
      vmodl-name="vim.LicenseManager.FeatureInfo"
      enclosing-type-id-ref="vim.LicenseManager"
      version-id-ref="vim.version.version1"
      is-deprecated="true"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[A single feature that can be licensed. This information is immutable.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 4.0, this is not used by the system.]]>
      </deprecated-html>
            <property name="key" type-id-ref="java.lang.String"
      vmodl-name="key"
      >
      <description-html>
         <![CDATA[Unique identifier for license as defined in License source data.
  Max length of this string is 64 characters of ASCII/ISO Latin-1
  character set.]]>
      </description-html>
      </property>

            <property name="featureName" type-id-ref="java.lang.String"
      vmodl-name="featureName"
      is-localizable="true"
      >
      <description-html>
         <![CDATA[The display string for the feature name.]]>
      </description-html>
      </property>

            <property name="featureDescription" type-id-ref="java.lang.String"
      vmodl-name="featureDescription"
      version-id-ref="vim.version.version2"
      is-optional="true"
      is-localizable="true"
      >
      <description-html>
         <![CDATA[A human readable description of what function this feature enables.]]>
      </description-html>
      </property>

            <property name="state" type-id-ref="vim.LicenseManager.FeatureInfo.State"
      vmodl-name="state"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Describes the state of the feature based on the current edition license. This
  property is unset for an edition license.]]>
      </description-html>
      </property>

            <property name="costUnit" type-id-ref="java.lang.String"
      vmodl-name="costUnit"
      >
      <description-html>
         <![CDATA[Each license has a cost associated with it and the value of costUnit
  specifies the applicable unit.
  <p><br>See <a href="vim.LicenseManager.FeatureInfo.CostUnit.html">LicenseFeatureInfoUnit</a><br>]]>
      </description-html>
      </property>

            <property name="sourceRestriction" type-id-ref="java.lang.String"
      vmodl-name="sourceRestriction"
      version-id-ref="vim.version.version2"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Describe any restriction on the source of a license for this feature.
  <p><br>See <a href="vim.LicenseManager.FeatureInfo.SourceRestriction.html">LicenseFeatureInfoSourceRestriction</a><br>]]>
      </description-html>
      </property>

            <property name="dependentKey" type-id-ref="java.lang.String"
      vmodl-name="dependentKey"
      version-id-ref="vim.version.version2"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Report List of feature keys used by this edition.]]>
      </description-html>
      </property>

            <property name="edition" type-id-ref="BOOLEAN"
      vmodl-name="edition"
      version-id-ref="vim.version.version2"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Flag to indicate whether the feature is an edition.]]>
      </description-html>
      </property>

            <property name="expiresOn" type-id-ref="vmodl.DateTime"
      vmodl-name="expiresOn"
      version-id-ref="vim.version.version2"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Date representing the expiration date]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.LicenseManager.FeatureInfo.CostUnit</nested-type-id-ref>
      <nested-type-id-ref>vim.LicenseManager.FeatureInfo.State</nested-type-id-ref>
      <nested-type-id-ref>vim.LicenseManager.FeatureInfo.SourceRestriction</nested-type-id-ref>
   </data-object>
   <data-object name="NodeNetworkSpec"
      type-id="vim.vcha.FailoverClusterConfigurator.NodeNetworkSpec"
      vmodl-name="vim.vcha.FailoverClusterConfigurator.NodeNetworkSpec"
      enclosing-type-id-ref="vim.vcha.FailoverClusterConfigurator"
      version-id-ref="vim.version.version11"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The NodeNetworkSpec class defines network specification of a node
 in the VCHA Cluster.]]>
      </description-html>
            <property name="ipSettings" type-id-ref="vim.vm.customization.IPSettings"
      vmodl-name="ipSettings"
      >
      <description-html>
         <![CDATA[VCHA Cluster network configuration of the node.
 All cluster communication (state replication, heartbeat,
 cluster messages) happens over this network.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VMwareUplinkPortOrderPolicy"
      type-id="vim.dvs.VmwareDistributedVirtualSwitch.UplinkPortOrderPolicy"
      vmodl-name="vim.dvs.VmwareDistributedVirtualSwitch.UplinkPortOrderPolicy"
      enclosing-type-id-ref="vim.dvs.VmwareDistributedVirtualSwitch"
      version-id-ref="vim.version.version5"
      base-type-id="vim.InheritablePolicy"
      >
      <description-html>
         <![CDATA[This data object type describes uplink port ordering policy for a
  distributed virtual port.  A uplink port can be in the active
  list, the standby list, or neither.  It cannot be in both lists.]]>
      </description-html>
            <property name="activeUplinkPort" type-id-ref="java.lang.String"
      vmodl-name="activeUplinkPort"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of active uplink ports used for load balancing.]]>
      </description-html>
      </property>

            <property name="standbyUplinkPort" type-id-ref="java.lang.String"
      vmodl-name="standbyUplinkPort"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Standby uplink ports used for failover.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HttpNfcLeaseCapabilities"
      type-id="vim.HttpNfcLease.Capabilities"
      vmodl-name="vim.HttpNfcLease.Capabilities"
      enclosing-type-id-ref="vim.HttpNfcLease"
      version-id-ref="vim.version.version12"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Descriptor of the lease capabilities.]]>
      </description-html>
            <property name="pullModeSupported" type-id-ref="BOOLEAN"
      vmodl-name="pullModeSupported"
      >
      <description-html>
         <![CDATA[True if overall this lease can be upgraded to pull mode and
  all hosts in this lease support pull mode.
  Prerequisite before calling pullFromUrls.]]>
      </description-html>
      </property>

            <property name="corsSupported" type-id-ref="BOOLEAN"
      vmodl-name="corsSupported"
      >
      <description-html>
         <![CDATA[True if all hosts in the lease support HTTP CORS.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VMotionLicenseExpiredEvent"
      type-id="vim.event.VMotionLicenseExpiredEvent"
      vmodl-name="vim.event.VMotionLicenseExpiredEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.LicenseEvent"
      >
      <description-html>
         <![CDATA[This event records an expired VMotion license.]]>
      </description-html>
   </data-object>
   <data-object name="VirtualKeyboard"
      type-id="vim.vm.device.VirtualKeyboard"
      vmodl-name="vim.vm.device.VirtualKeyboard"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.device.VirtualDevice"
      >
      <description-html>
         <![CDATA[This data object type contains information about
 the keyboard on a virtual machine.]]>
      </description-html>
   </data-object>
   <data-object name="DvsFilterPolicy"
      type-id="vim.dvs.DistributedVirtualPort.FilterPolicy"
      vmodl-name="vim.dvs.DistributedVirtualPort.FilterPolicy"
      enclosing-type-id-ref="vim.dvs.DistributedVirtualPort"
      version-id-ref="vim.version.version9"
      base-type-id="vim.InheritablePolicy"
      >
      <description-html>
         <![CDATA[This class defines Network Filter Policy.]]>
      </description-html>
            <property name="filterConfig" type-id-ref="vim.dvs.DistributedVirtualPort.FilterConfig"
      vmodl-name="filterConfig"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of Network Filter Configurations.
  In an update operation, the array can contain all
  <a href="vim.dvs.DistributedVirtualPort.TrafficFilterConfigSpec.html">DvsTrafficFilterConfigSpec</a> objects
  or all <a href="vim.dvs.DistributedVirtualPort.FilterConfig.html">DvsFilterConfig</a> and
  <a href="vim.dvs.DistributedVirtualPort.TrafficFilterConfig.html">DvsTrafficFilterConfig</a>
  object, but not mixed of Config and Spec objects. If array of
  FilterConfigSpec and TrafficFilterConfigSpec is used
  for updating Network Filter then only the Network Filters
  matching <a href="vim.dvs.DistributedVirtualPort.html#key">key</a> /
  <a href="vim.dvs.DistributedVirtualPort.html#key">key</a>
  is updated.
  If array of <a href="vim.dvs.DistributedVirtualPort.FilterConfig.html">DvsFilterConfig</a> and
  <a href="vim.dvs.DistributedVirtualPort.TrafficFilterConfig.html">DvsTrafficFilterConfig</a>
  is used for updating port settings, the Network Filter
  settings will be overridden with the new array specified. The
  specified array should only contain FilterConfig and
  TrafficFilterConfig objects with FilterConfig#inherited /
  TrafficFilterConfig#inherited set to false.
  FilterConfig/TrafficFilterConfig  objects with
  FilterConfig#inherited/TrafficFilterConfig#inherited as
  true in the specified array will be ignored. The updated result will
  include FilterConfig/TrafficFilterConfig objects
  inherited from parent, if any.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="FileQueryFlags"
      type-id="vim.host.DatastoreBrowser.FileInfo.Details"
      vmodl-name="vim.host.DatastoreBrowser.FileInfo.Details"
      enclosing-type-id-ref="vim.host.DatastoreBrowser.FileInfo"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The FileInfo.Details data object type is a set of flags for a search request.
  This search request specifies which details to return for each matching file.
  This data object type is here to ensure that there is one flag corresponding to
  each FileInfo property other than the path name, which a search always returns.]]>
      </description-html>
            <property name="fileType" type-id-ref="BOOLEAN"
      vmodl-name="fileType"
      >
      <description-html>
         <![CDATA[The flag to indicate whether or not the files that match this query
  specification are returned along with file type information. This field must
  be set to return specific details about the file type.]]>
      </description-html>
      </property>

            <property name="fileSize" type-id-ref="BOOLEAN"
      vmodl-name="fileSize"
      >
      <description-html>
         <![CDATA[The flag to indicate whether or not the size of the file is returned.]]>
      </description-html>
      </property>

            <property name="modification" type-id-ref="BOOLEAN"
      vmodl-name="modification"
      >
      <description-html>
         <![CDATA[The flag to indicate whether or not to return the date and time the file was
  last modified.]]>
      </description-html>
      </property>

            <property name="fileOwner" type-id-ref="BOOLEAN"
      vmodl-name="fileOwner"
      version-id-ref="vim.version.version5"
      >
      <description-html>
         <![CDATA[The flag to indicate whether or not to return the file owner.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostTpmEventDetails"
      type-id="vim.host.TpmEventDetails"
      vmodl-name="vim.host.TpmEventDetails"
      version-id-ref="vim.version.version8"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This is a base data object for describing an event generated by
  Trusted Platform Module (TPM). It contains parameters common to
  all TPM event types.]]>
      </description-html>
            <property name="dataHash" type-id-ref="BYTE"
      vmodl-name="dataHash"
      is-array="true"
      >
      <description-html>
         <![CDATA[Value of the Platform Configuration Register (PCR) for this event.]]>
      </description-html>
      </property>

            <property name="dataHashMethod" type-id-ref="java.lang.String"
      vmodl-name="dataHashMethod"
      version-id-ref="vim.version.version12"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Method in which the digest hash is calculated. The set of possible
  values is described in <a href="vim.host.DigestInfo.DigestMethodType.html">HostDigestInfoDigestMethodType</a>.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualMachineRelocateSpec"
      type-id="vim.vm.RelocateSpec"
      vmodl-name="vim.vm.RelocateSpec"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Specification for moving or copying a virtual machine to a different datastore
  or host.]]>
      </description-html>
            <property name="service" type-id-ref="vim.ServiceLocator"
      vmodl-name="service"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The service endpoint of vCenter where the virtual machine should be
 located. If not specified, the current vCenter service is used. If the
 virtual machine is relocated to a different vCenter service, the
 destination host, pool, and datastore parameters have to be explicitly
 specified by default when the task is submitted.]]>
      </description-html>
      </property>

            <property name="folder" type-id-ref="vim.Folder"
      vmodl-name="folder"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The folder where the virtual machine should be located. If not specified,
 the root VM folder of the destination datacenter will be used.]]>
      </description-html>
      </property>

            <property name="datastore" type-id-ref="vim.Datastore"
      vmodl-name="datastore"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The datastore where the virtual machine should be located. If
  not specified, the current datastore is used.]]>
      </description-html>
      </property>

            <property name="diskMoveType" type-id-ref="java.lang.String"
      vmodl-name="diskMoveType"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Manner in which to move the virtual disk to the <a href="vim.vm.RelocateSpec.html#datastore">datastore</a>.  The set of possible values is described in
  <a href="vim.vm.RelocateSpec.DiskMoveOptions.html">VirtualMachineRelocateDiskMoveOptions</a>.
  <p>
  This property applies to all the disks which the virtual machine has,
  but can be overridden on a per-disk basis using
  <a href="vim.vm.RelocateSpec.DiskLocator.html#diskMoveType">diskMoveType</a> prior to vSphere
  API 6.0 or using
  <a href="vim.vm.device.VirtualDiskSpec.html#diskMoveType">diskMoveType</a> in vSphere API
  6.0 and later.
  <p>
  This property can only be set if
  <a href="vim.host.Capability.html#deltaDiskBackingsSupported">deltaDiskBackingsSupported</a> is true.
  <p>
  If left unset then
  vim.vm.RelocateSpec.DiskMoveOptions#moveAllDiskBackingsAndDisallowSharing
  is assumed.]]>
      </description-html>
      </property>

            <property name="pool" type-id-ref="vim.ResourcePool"
      vmodl-name="pool"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The resource pool to which this virtual machine should be attached.
  <ul>
    <li> For a relocate or clone operation to a virtual machine, if the
         argument is not supplied, the current resource pool of virtual
         machine is used.
    <li> For a clone operation from a template to a virtual machine,
         this argument is required.
    <li> If the virtual machine is relocated to a different vCenter service,
         both the destination host and resource pool have to be specified
         and cannot be unset.
    <li> If the virtual machine is relocated to a different datacenter
         within the vCenter service, the resource pool has to be specified
         and cannot be unset.
  </ul>]]>
      </description-html>
      </property>

            <property name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The target host for the virtual machine. If not specified,
  <ul>
     <li> if resource pool is not specified, current host is used.
     <li> if resource pool is specified, and the target pool represents
          a stand-alone host, the host is used.
     <li> if resource pool is specified, the virtual machine is powered on,
          and the target pool represents a DRS-enabled cluster, a host
          selected by DRS is used.
     <li> if resource pool is specified, the virtual machine is powered on,
          and the target pool represents a cluster without DRS enabled,
          an InvalidArgument exception is thrown.
     <li> if a resource pool is specified, the target pool represents a
          cluster, and this is a clone or the virtual machine is powered
          off, a random compatible host is chosen.
     <li> if the virtual machine is relocated to a different vCenter
          service, and a resource pool is not specified, the destination
          host must be set.
  </ul>]]>
      </description-html>
      </property>

            <property name="disk" type-id-ref="vim.vm.RelocateSpec.DiskLocator"
      vmodl-name="disk"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[An optional list that allows specifying the datastore location
  for each virtual disk.]]>
      </description-html>
      </property>

            <property name="transform" type-id-ref="vim.vm.RelocateSpec.Transformation"
      vmodl-name="transform"
      is-deprecated="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Transformation to perform on the disks. The backend is free to ignore
 this hint if it is not valid for the current operation.  This can be
 used by clients, for example, to create sparse disks for templates.<br>See <a href="vim.vm.RelocateSpec.Transformation.html">VirtualMachineRelocateTransformation</a><br>]]>
      </description-html>
      <deprecated-html>
         <![CDATA[as of vSphere API 5.0. Use
 <a href="vim.vm.RelocateSpec.DiskLocator.html#diskBackingInfo">diskBackingInfo</a> instead for
 disk format conversions. This setting will be ignored for
 disks with the above property set.]]>
      </deprecated-html>
      </property>

            <property name="deviceChange" type-id-ref="vim.vm.device.VirtualDeviceSpec"
      vmodl-name="deviceChange"
      version-id-ref="vim.version.version9"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[An optional list of virtual device specs that allow specifying the new
  device locations for the relocate operation.<p>

  The supported device changes are:
  <ul>
    <li>For <a href="vim.vm.device.VirtualEthernetCard.html">VirtualEthernetCard</a>, it has to be used
        in <a href="vim.vm.device.VirtualDeviceSpec.html#device">device</a> to specify the
        target network backing.
    <li>For <a href="vim.vm.device.VirtualDisk.html">VirtualDisk</a>, it can be used to specify
        vFlash cache configuration, or the storage profile for destination
        disks. The storage profiles are used to either upgrade the virtual
        disk's storage to a persistent memory, or keep the virtual disk
        in persistent memory when moving the virtual machine's overall
        storage.
    <li>All other specification are ignored.
  </ul>]]>
      </description-html>
      </property>

            <property name="profile" type-id-ref="vim.vm.ProfileSpec"
      vmodl-name="profile"
      version-id-ref="vim.version.version9"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Storage profile requirement for Virtual Machine's home directory.

 Profiles are solution specific.

 Storage Profile Based Management(SPBM) is a vSphere server extension.
 The API users who want to provision VMs using Storage Profiles, need to
 interact with SPBM.

 This is an optional parameter and if user doesn't specify profile,
 the default behavior will apply.]]>
      </description-html>
      </property>

            <property name="cryptoSpec" type-id-ref="vim.encryption.CryptoSpec"
      vmodl-name="cryptoSpec"
      version-id-ref="vim.version.v7_0"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Virtual Machine cryptographic options.

 Encryption requirement for the virtual machine's metadata
 files (non-disk files).]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.vm.RelocateSpec.Transformation</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.RelocateSpec.DiskLocator</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.RelocateSpec.DiskMoveOptions</nested-type-id-ref>
   </data-object>
   <data-object name="VmPoweredOnEvent"
      type-id="vim.event.VmPoweredOnEvent"
      vmodl-name="vim.event.VmPoweredOnEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.VmEvent"
      >
      <description-html>
         <![CDATA[This event records when a virtual machine finished powering on.]]>
      </description-html>
   </data-object>
   <data-object name="DVSMacLearningPolicy"
      type-id="vim.dvs.VmwareDistributedVirtualSwitch.MacLearningPolicy"
      vmodl-name="vim.dvs.VmwareDistributedVirtualSwitch.MacLearningPolicy"
      enclosing-type-id-ref="vim.dvs.VmwareDistributedVirtualSwitch"
      version-id-ref="vim.version.version12"
      base-type-id="vim.InheritablePolicy"
      >
      <description-html>
         <![CDATA[This data object type describes MAC learning policy of a port.]]>
      </description-html>
            <property name="enabled" type-id-ref="BOOLEAN"
      vmodl-name="enabled"
      >
      <description-html>
         <![CDATA[The flag to indicate if source MAC address learning is allowed.]]>
      </description-html>
      </property>

            <property name="allowUnicastFlooding" type-id-ref="BOOLEAN"
      vmodl-name="allowUnicastFlooding"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The flag to allow flooding of unlearned MAC for ingress traffic.]]>
      </description-html>
      </property>

            <property name="limit" type-id-ref="INT"
      vmodl-name="limit"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The maximum number of MAC addresses that can be learned.]]>
      </description-html>
      </property>

            <property name="limitPolicy" type-id-ref="java.lang.String"
      vmodl-name="limitPolicy"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The default switching policy after MAC limit is exceeded.
  See <a href="vim.dvs.VmwareDistributedVirtualSwitch.MacLimitPolicyType.html">DVSMacLimitPolicyType</a>
  for valid values.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostIpRouteEntry"
      type-id="vim.host.IpRouteEntry"
      vmodl-name="vim.host.IpRouteEntry"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[IpRouteEntry.  Routing entries are individual static routes which combined
 with the default route form all of the routing rules for a host.]]>
      </description-html>
            <property name="network" type-id-ref="java.lang.String"
      vmodl-name="network"
      >
      <description-html>
         <![CDATA[Network of the routing entry
 Of the format "10.20.120.0" or "2001:db8::1428:57"]]>
      </description-html>
      </property>

            <property name="prefixLength" type-id-ref="INT"
      vmodl-name="prefixLength"
      >
      <description-html>
         <![CDATA[Prefix length of the network (this is the 22 in 10.20.120.0/22)]]>
      </description-html>
      </property>

            <property name="gateway" type-id-ref="java.lang.String"
      vmodl-name="gateway"
      >
      <description-html>
         <![CDATA[Gateway for the routing entry]]>
      </description-html>
      </property>

            <property name="deviceName" type-id-ref="java.lang.String"
      vmodl-name="deviceName"
      version-id-ref="vim.version.version6"
      is-optional="true"
      >
      <description-html>
         <![CDATA[If available the property indicates the device associated with the
 routing entry. This property can only be read from the server.
 It will be ignored if set by the client.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualVmxnet3"
      type-id="vim.vm.device.VirtualVmxnet3"
      vmodl-name="vim.vm.device.VirtualVmxnet3"
      version-id-ref="vim.version.version4"
      base-type-id="vim.vm.device.VirtualVmxnet"
      >
      <description-html>
         <![CDATA[The VirtualVmxnet3 data object type represents an instance
  of the Vmxnet3 virtual Ethernet adapter attached to a virtual machine.]]>
      </description-html>
   </data-object>
   <data-object name="VirtualDeviceBusSlotOption"
      type-id="vim.vm.device.VirtualDeviceOption.BusSlotOption"
      vmodl-name="vim.vm.device.VirtualDeviceOption.BusSlotOption"
      enclosing-type-id-ref="vim.vm.device.VirtualDeviceOption"
      version-id-ref="vim.version.version8"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The <a href="vim.vm.device.VirtualDeviceOption.BusSlotOption.html">VirtualDeviceBusSlotOption</a> data class
  defines options for device-specific bus slot objects.]]>
      </description-html>
            <property name="type" type-id-ref="vmodl.TypeName"
      vmodl-name="type"
      >
      <description-html>
         <![CDATA[The name of the class the client should use to instantiate bus slot
  object for the virtual device.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ClusterDasAdmissionControlPolicy"
      type-id="vim.cluster.DasAdmissionControlPolicy"
      vmodl-name="vim.cluster.DasAdmissionControlPolicy"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Base class for specifying how admission control should be done for vSphere HA.]]>
      </description-html>
            <property name="resourceReductionToToleratePercent" type-id-ref="INT"
      vmodl-name="resourceReductionToToleratePercent"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Percentage of resource reduction that a cluster of VMs can tolerate
 in case of a failover.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VStorageObjectStateInfo"
      type-id="vim.vslm.StateInfo"
      vmodl-name="vim.vslm.StateInfo"
      version-id-ref="vim.version.version11"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Contains information of a virtual storage object state.

 NOTE: The information obtained with this object is dynamic and it could
 change during the lifetime of the object. For performance purposes some
 of the data may not reflect the immediate state of the object, also there
 is not guarantee that it will be provided.]]>
      </description-html>
            <property name="tentative" type-id-ref="BOOLEAN"
      vmodl-name="tentative"
      is-optional="true"
      >
      <description-html>
         <![CDATA[If set this flag indicates that the object currently is part of
 provisioning operation or the last operation has not finished gracefully.
 There are maintenance procedures that are working on resolving that
 tentative state. Note that this might result in the object to be removed.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostDiskConfigurationResult"
      type-id="vim.host.DiskConfigurationResult"
      vmodl-name="vim.host.DiskConfigurationResult"
      version-id-ref="vim.version.version9"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Disk configuration result returns success or fault of the
 operation on the disk.]]>
      </description-html>
            <property name="devicePath" type-id-ref="java.lang.String"
      vmodl-name="devicePath"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The device path. See <a href="vim.host.ScsiDisk.html">ScsiDisk</a>]]>
      </description-html>
      </property>

            <property name="success" type-id-ref="BOOLEAN"
      vmodl-name="success"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Flag to indicate if the operation is successful]]>
      </description-html>
      </property>

            <property name="fault" type-id-ref="vmodl.LocalizedMethodFault"
      vmodl-name="fault"
      is-optional="true"
      >
      <description-html>
         <![CDATA['fault' would be set if the operation was not successful]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualMachineFileLayoutExFileInfo"
      type-id="vim.vm.FileLayoutEx.FileInfo"
      vmodl-name="vim.vm.FileLayoutEx.FileInfo"
      enclosing-type-id-ref="vim.vm.FileLayoutEx"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Basic information about a file.]]>
      </description-html>
            <property name="key" type-id-ref="INT"
      vmodl-name="key"
      >
      <description-html>
         <![CDATA[Key to reference this file.]]>
      </description-html>
      </property>

            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      >
      <description-html>
         <![CDATA[Name of the file, including the complete datastore path.]]>
      </description-html>
      </property>

            <property name="type" type-id-ref="java.lang.String"
      vmodl-name="type"
      >
      <description-html>
         <![CDATA[Type of the file. <a href="vim.vm.FileLayoutEx.FileType.html">VirtualMachineFileLayoutExFileType</a> lists
  all valid values.]]>
      </description-html>
      </property>

            <property name="size" type-id-ref="LONG"
      vmodl-name="size"
      >
      <description-html>
         <![CDATA[Size of the file in bytes.]]>
      </description-html>
      </property>

            <property name="uniqueSize" type-id-ref="LONG"
      vmodl-name="uniqueSize"
      version-id-ref="vim.version.version8"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Size of the file in bytes corresponding to the file blocks
 that were allocated uniquely. In other words, if the underlying
 storage supports sharing of file blocks across disk files, the
 property corresponds to the size of the file blocks that were
 allocated only in context of this file, i.e. it does not include
 shared blocks that were allocated in other files.

 This property will be unset if the underlying implementation
 is unable to compute this information. One example of this
 is when the file resides on a NAS datastore whose underlying
 storage doesn't support this metric. In some cases the field
 might be set but the value could be over-estimated due to
 the inability of the NAS based storage to provide an
 accurate value.]]>
      </description-html>
      </property>

            <property name="backingObjectId" type-id-ref="java.lang.String"
      vmodl-name="backingObjectId"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Backing object's durable and unmutable identifier.
 Each backing object has a unique identifier which is not settable.
 This property is applied to the file backed by a storage object,
 such as vvol.]]>
      </description-html>
      </property>

            <property name="accessible" type-id-ref="BOOLEAN"
      vmodl-name="accessible"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Flag which indicates the accessibility of the file
 when the file info object was created.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="CryptoManagerKmipCertificateInfo"
      type-id="vim.encryption.CryptoManagerKmip.CertificateInfo"
      vmodl-name="vim.encryption.CryptoManagerKmip.CertificateInfo"
      enclosing-type-id-ref="vim.encryption.CryptoManagerKmip"
      version-id-ref="vim.version.version11"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Basic information of a certificate.]]>
      </description-html>
            <property name="subject" type-id-ref="java.lang.String"
      vmodl-name="subject"
      >
      <description-html>
         <![CDATA[Subject identifies whom the certificate is issued to.]]>
      </description-html>
      </property>

            <property name="issuer" type-id-ref="java.lang.String"
      vmodl-name="issuer"
      >
      <description-html>
         <![CDATA[Issuer identifies the party that issued this certificate.]]>
      </description-html>
      </property>

            <property name="serialNumber" type-id-ref="java.lang.String"
      vmodl-name="serialNumber"
      >
      <description-html>
         <![CDATA[The unique serial number of the certificate given by issuer.]]>
      </description-html>
      </property>

            <property name="notBefore" type-id-ref="vmodl.DateTime"
      vmodl-name="notBefore"
      >
      <description-html>
         <![CDATA[The beginning time of the period of validity.]]>
      </description-html>
      </property>

            <property name="notAfter" type-id-ref="vmodl.DateTime"
      vmodl-name="notAfter"
      >
      <description-html>
         <![CDATA[The ending time of the period of validity.]]>
      </description-html>
      </property>

            <property name="fingerprint" type-id-ref="java.lang.String"
      vmodl-name="fingerprint"
      >
      <description-html>
         <![CDATA[The SSL SHA1 fingerprint of the certificate.]]>
      </description-html>
      </property>

            <property name="checkTime" type-id-ref="vmodl.DateTime"
      vmodl-name="checkTime"
      >
      <description-html>
         <![CDATA[The timestamp when the state of the certificate is checked.]]>
      </description-html>
      </property>

            <property name="secondsSinceValid" type-id-ref="INT"
      vmodl-name="secondsSinceValid"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Total seconds since this certificate has entered valid state.
 It is the time difference between "now" and "notBefore".
 If it is negative value, that means the certificate will become
 valid in a future time.]]>
      </description-html>
      </property>

            <property name="secondsBeforeExpire" type-id-ref="INT"
      vmodl-name="secondsBeforeExpire"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Total seconds before this certificate expires.
 It is the time difference between "notAfter" and "now".
 If it is negative value, that means the certificate has already
 expired.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="BoolOption"
      type-id="vim.option.BoolOption"
      vmodl-name="vim.option.BoolOption"
      version-id-ref="vim.version.version1"
      base-type-id="vim.option.OptionType"
      >
      <description-html>
         <![CDATA[The BoolOption data object type describes if an option
  is supported ("true") and if the option is set to "true" or
  "false" by default.]]>
      </description-html>
            <property name="supported" type-id-ref="BOOLEAN"
      vmodl-name="supported"
      >
      <description-html>
         <![CDATA[The flag to indicate whether or not the
  option is supported.]]>
      </description-html>
      </property>

            <property name="defaultValue" type-id-ref="BOOLEAN"
      vmodl-name="defaultValue"
      >
      <description-html>
         <![CDATA[The default value for the option.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostVFlashManagerVFlashCacheConfigInfoVFlashModuleConfigOption"
      type-id="vim.host.VFlashManager.VFlashCacheConfigInfo.VFlashModuleConfigOption"
      vmodl-name="vim.host.VFlashManager.VFlashCacheConfigInfo.VFlashModuleConfigOption"
      enclosing-type-id-ref="vim.host.VFlashManager.VFlashCacheConfigInfo"
      version-id-ref="vim.version.version9"
      base-type-id="vmodl.DynamicData"
      >
            <property name="vFlashModule" type-id-ref="java.lang.String"
      vmodl-name="vFlashModule"
      >
      <description-html>
         <![CDATA[Name of the vFlash module]]>
      </description-html>
      </property>

            <property name="vFlashModuleVersion" type-id-ref="java.lang.String"
      vmodl-name="vFlashModuleVersion"
      >
      <description-html>
         <![CDATA[Version of the vFlash module]]>
      </description-html>
      </property>

            <property name="minSupportedModuleVersion" type-id-ref="java.lang.String"
      vmodl-name="minSupportedModuleVersion"
      >
      <description-html>
         <![CDATA[Minimum supported version]]>
      </description-html>
      </property>

            <property name="cacheConsistencyType" type-id-ref="vim.option.ChoiceOption"
      vmodl-name="cacheConsistencyType"
      >
      <description-html>
         <![CDATA[Cache data consistency types.
 See <a href="vim.vm.device.VirtualDisk.VFlashCacheConfigInfo.CacheConsistencyType.html">VirtualDiskVFlashCacheConfigInfoCacheConsistencyType</a>]]>
      </description-html>
      </property>

            <property name="cacheMode" type-id-ref="vim.option.ChoiceOption"
      vmodl-name="cacheMode"
      >
      <description-html>
         <![CDATA[Cache modes.
 See <a href="vim.vm.device.VirtualDisk.VFlashCacheConfigInfo.CacheMode.html">VirtualDiskVFlashCacheConfigInfoCacheMode</a>]]>
      </description-html>
      </property>

            <property name="blockSizeInKBOption" type-id-ref="vim.option.LongOption"
      vmodl-name="blockSizeInKBOption"
      >
      <description-html>
         <![CDATA[blockSizeInKBOption defines a range of virtual disk cache block size.]]>
      </description-html>
      </property>

            <property name="reservationInMBOption" type-id-ref="vim.option.LongOption"
      vmodl-name="reservationInMBOption"
      >
      <description-html>
         <![CDATA[reservationInMBOption defines a range of virtual disk cache size.]]>
      </description-html>
      </property>

            <property name="maxDiskSizeInKB" type-id-ref="LONG"
      vmodl-name="maxDiskSizeInKB"
      >
      <description-html>
         <![CDATA[Maximal size of virtual disk supported in kilobytes.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DatastoreEvent"
      type-id="vim.event.DatastoreEvent"
      vmodl-name="vim.event.DatastoreEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.Event"
      >
      <description-html>
         <![CDATA[These are datastore events.]]>
      </description-html>
            <property name="datastore" type-id-ref="vim.event.DatastoreEventArgument"
      vmodl-name="datastore"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The associated datastore.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VslmRelocateSpec"
      type-id="vim.vslm.RelocateSpec"
      vmodl-name="vim.vslm.RelocateSpec"
      version-id-ref="vim.version.version11"
      base-type-id="vim.vslm.MigrateSpec"
      >
      <description-html>
         <![CDATA[Specification for relocating a virtual storage object.]]>
      </description-html>
   </data-object>
   <data-object name="VmEventArgument"
      type-id="vim.event.VmEventArgument"
      vmodl-name="vim.event.VmEventArgument"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.EntityEventArgument"
      >
      <description-html>
         <![CDATA[The event argument is a VirtualMachine object.]]>
      </description-html>
            <property name="vm" type-id-ref="vim.VirtualMachine"
      vmodl-name="vm"
      >
      <description-html>
         <![CDATA[The VirtualMachine object.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostCacheConfigurationSpec"
      type-id="vim.host.CacheConfigurationManager.CacheConfigurationSpec"
      vmodl-name="vim.host.CacheConfigurationManager.CacheConfigurationSpec"
      enclosing-type-id-ref="vim.host.CacheConfigurationManager"
      version-id-ref="vim.version.version7"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Host cache configuration specification.]]>
      </description-html>
            <property name="datastore" type-id-ref="vim.Datastore"
      vmodl-name="datastore"
      >
      <description-html>
         <![CDATA[Datastore used for swap performance enhancement.]]>
      </description-html>
      </property>

            <property name="swapSize" type-id-ref="LONG"
      vmodl-name="swapSize"
      >
      <description-html>
         <![CDATA[Space to allocate on this datastore to implement swap performance
 enhancements, in MB.  This value should be less or equal to free space
 capacity on the datastore <a href="vim.Datastore.Summary.html#freeSpace">freeSpace</a>.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostOpaqueSwitch"
      type-id="vim.host.OpaqueSwitch"
      vmodl-name="vim.host.OpaqueSwitch"
      version-id-ref="vim.version.version9"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The OpaqueSwitch contains basic information about virtual switches that are
  managed by a management plane outside of vSphere.]]>
      </description-html>
            <property name="key" type-id-ref="java.lang.String"
      vmodl-name="key"
      >
      <description-html>
         <![CDATA[The opaque switch ID.]]>
      </description-html>
      </property>

            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The opaque switch name.]]>
      </description-html>
      </property>

            <property name="pnic" type-id-ref="vim.host.PhysicalNic"
      vmodl-name="pnic"
      is-array="true"
      is-optional="true"
      is-link="true"
      >
      <description-html>
         <![CDATA[The set of physical network adapters associated with this switch.]]>
      </description-html>
      </property>

            <property name="pnicZone" type-id-ref="vim.host.OpaqueSwitch.PhysicalNicZone"
      vmodl-name="pnicZone"
      version-id-ref="vim.version.version10"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The IDs of networking zones associated with this switch.]]>
      </description-html>
      </property>

            <property name="status" type-id-ref="java.lang.String"
      vmodl-name="status"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Opaque switch status. See
  <a href="vim.host.OpaqueSwitch.OpaqueSwitchState.html">OpaqueSwitchState</a> for valid values.]]>
      </description-html>
      </property>

            <property name="vtep" type-id-ref="vim.host.VirtualNic"
      vmodl-name="vtep"
      version-id-ref="vim.version.version10"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of VTEPs associated with this switch.]]>
      </description-html>
      </property>

            <property name="extraConfig" type-id-ref="vim.option.OptionValue"
      vmodl-name="extraConfig"
      version-id-ref="vim.version.version11"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Extra NSX specific properties for opaque switch.]]>
      </description-html>
      </property>

            <property name="featureCapability" type-id-ref="vim.host.FeatureCapability"
      vmodl-name="featureCapability"
      version-id-ref="vim.version.version12"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Array of host specific feature capabilities that the switch has.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.host.OpaqueSwitch.OpaqueSwitchState</nested-type-id-ref>
      <nested-type-id-ref>vim.host.OpaqueSwitch.PhysicalNicZone</nested-type-id-ref>
   </data-object>
   <data-object name="HostProxySwitchSpec"
      type-id="vim.host.HostProxySwitch.Specification"
      vmodl-name="vim.host.HostProxySwitch.Specification"
      enclosing-type-id-ref="vim.host.HostProxySwitch"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object type describes the HostProxySwitch specification
  representing the properties on a HostProxySwitch that can be
  configured once the object exists.]]>
      </description-html>
            <property name="backing" type-id-ref="vim.dvs.HostMember.Backing"
      vmodl-name="backing"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The specification describes how physical network adapters
  are bridged to the switch.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ProfileDescription"
      type-id="vim.profile.Profile.Description"
      vmodl-name="vim.profile.Profile.Description"
      enclosing-type-id-ref="vim.profile.Profile"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The <a href="vim.profile.Profile.Description.html">ProfileDescription</a> data object describes a profile.
 The description contains multiple sections. Each section
 describes a part of the profile.]]>
      </description-html>
            <property name="section" type-id-ref="vim.profile.Profile.Description.Section"
      vmodl-name="section"
      is-array="true"
      >
      <description-html>
         <![CDATA[Sections which make up the profile description.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.profile.Profile.Description.Section</nested-type-id-ref>
   </data-object>
   <data-object name="DrsRecoveredFromFailureEvent"
      type-id="vim.event.DrsRecoveredFromFailureEvent"
      vmodl-name="vim.event.DrsRecoveredFromFailureEvent"
      version-id-ref="vim.version.version5"
      base-type-id="vim.event.ClusterEvent"
      >
      <description-html>
         <![CDATA[This event records that DRS has recovered from failure.
 It is triggered by a successful DRS invocation after repeated failure.]]>
      </description-html>
   </data-object>
   <data-object name="VirtualVideoCardOption"
      type-id="vim.vm.device.VirtualVideoCardOption"
      vmodl-name="vim.vm.device.VirtualVideoCardOption"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.device.VirtualDeviceOption"
      >
      <description-html>
         <![CDATA[This data object type contains the options for the
  <a href="vim.vm.device.VirtualVideoCard.html">VirtualVideoCard</a> data object type.]]>
      </description-html>
            <property name="videoRamSizeInKB" type-id-ref="vim.option.LongOption"
      vmodl-name="videoRamSizeInKB"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Minimum, maximum and default size of the video frame buffer.]]>
      </description-html>
      </property>

            <property name="numDisplays" type-id-ref="vim.option.IntOption"
      vmodl-name="numDisplays"
      version-id-ref="vim.version.version4"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Minimum, maximum and default value for the number of displays.]]>
      </description-html>
      </property>

            <property name="useAutoDetect" type-id-ref="vim.option.BoolOption"
      vmodl-name="useAutoDetect"
      version-id-ref="vim.version.version4"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Flag to indicate whether the display settings of the host should
  be used to automatically determine the display settings of the
  virtual machine's video card.]]>
      </description-html>
      </property>

            <property name="support3D" type-id-ref="vim.option.BoolOption"
      vmodl-name="support3D"
      version-id-ref="vim.version.version4"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Flag to indicate whether the virtual video card supports 3D functions.]]>
      </description-html>
      </property>

            <property name="use3dRendererSupported" type-id-ref="vim.option.BoolOption"
      vmodl-name="use3dRendererSupported"
      version-id-ref="vim.version.version8"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Flag to indicate whether the virtual video card can specify how to render 3D graphics.]]>
      </description-html>
      </property>

            <property name="graphicsMemorySizeInKB" type-id-ref="vim.option.LongOption"
      vmodl-name="graphicsMemorySizeInKB"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The minimum, maximum, and default values for graphics memory size.]]>
      </description-html>
      </property>

            <property name="graphicsMemorySizeSupported" type-id-ref="vim.option.BoolOption"
      vmodl-name="graphicsMemorySizeSupported"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Flag to indicate whether the virtual video card can specify the size
  of graphics memory.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DasHostIsolatedEvent"
      type-id="vim.event.DasHostIsolatedEvent"
      vmodl-name="vim.event.DasHostIsolatedEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.ClusterEvent"
      >
      <description-html>
         <![CDATA[This event records that a host has been isolated from the network in a
 HA cluster. Since an isolated host cannot be distinguished from a failed
 host except by the isolated host itself, this event is logged when the
 isolated host regains network connectivity.]]>
      </description-html>
            <property name="isolatedHost" type-id-ref="vim.event.HostEventArgument"
      vmodl-name="isolatedHost"
      >
      <description-html>
         <![CDATA[The host that was isolated.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualNicManagerNetConfig"
      type-id="vim.host.VirtualNicManager.NetConfig"
      vmodl-name="vim.host.VirtualNicManager.NetConfig"
      enclosing-type-id-ref="vim.host.VirtualNicManager"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The NetConfig data object type contains the networking
  configuration.]]>
      </description-html>
            <property name="nicType" type-id-ref="java.lang.String"
      vmodl-name="nicType"
      >
      <description-html>
         <![CDATA[The NicType of this NetConfig.]]>
      </description-html>
      </property>

            <property name="multiSelectAllowed" type-id-ref="BOOLEAN"
      vmodl-name="multiSelectAllowed"
      >
      <description-html>
         <![CDATA[Whether multiple nics can be selected for this nicType.]]>
      </description-html>
      </property>

            <property name="candidateVnic" type-id-ref="vim.host.VirtualNic"
      vmodl-name="candidateVnic"
      is-array="true"
      is-optional="true"
      is-linkable="true"
      >
      <description-html>
         <![CDATA[List of VirtualNic objects that may be used.
  This will be a subset of the list of VirtualNics in
  <a href="vim.host.NetworkInfo.html#vnic">vnic</a>.]]>
      </description-html>
      </property>

            <property name="selectedVnic" type-id-ref="vim.host.VirtualNic"
      vmodl-name="selectedVnic"
      is-array="true"
      is-optional="true"
      is-link="true"
      >
      <description-html>
         <![CDATA[List of VirtualNic objects that are selected for use.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualMachineDeviceRuntimeInfo"
      type-id="vim.vm.DeviceRuntimeInfo"
      vmodl-name="vim.vm.DeviceRuntimeInfo"
      version-id-ref="vim.version.version6"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The DeviceRuntimeInfo data object type provides information about
  the execution state of a single virtual device.]]>
      </description-html>
            <property name="runtimeState" type-id-ref="vim.vm.DeviceRuntimeInfo.DeviceRuntimeState"
      vmodl-name="runtimeState"
      >
      <description-html>
         <![CDATA[The device runtime state.]]>
      </description-html>
      </property>

            <property name="key" type-id-ref="INT"
      vmodl-name="key"
      >
      <description-html>
         <![CDATA[The device key.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.vm.DeviceRuntimeInfo.DeviceRuntimeState</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.DeviceRuntimeInfo.VirtualEthernetCardRuntimeState</nested-type-id-ref>
   </data-object>
   <data-object name="ExitingStandbyModeEvent"
      type-id="vim.event.ExitingStandbyModeEvent"
      vmodl-name="vim.event.ExitingStandbyModeEvent"
      version-id-ref="vim.version.version5"
      base-type-id="vim.event.HostEvent"
      >
      <description-html>
         <![CDATA[This event records that a host has begun the process of
  exiting standby mode.]]>
      </description-html>
   </data-object>
   <data-object name="ApplyProfile"
      type-id="vim.profile.ApplyProfile"
      vmodl-name="vim.profile.ApplyProfile"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The <a href="vim.profile.ApplyProfile.html">ApplyProfile</a> data object is the base class for all data objects
  that define profile configuration data.
  <code>ApplyProfile</code> defines ESX configuration data storage and it
  supports recursive profile definition for the profile plug-in architecture.]]>
      </description-html>
            <property name="enabled" type-id-ref="BOOLEAN"
      vmodl-name="enabled"
      >
      <description-html>
         <![CDATA[Indicates whether the profile is enabled.]]>
      </description-html>
      </property>

            <property name="policy" type-id-ref="vim.profile.Policy"
      vmodl-name="policy"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The list of policies comprising the profile. A <a href="vim.profile.Policy.html">ProfilePolicy</a>
 stores one or more configuration data values in a <a href="vim.profile.PolicyOption.html">PolicyOption</a>.
 The policy option is one of the configuration options from the
 <a href="vim.profile.PolicyMetadata.html">ProfilePolicyMetadata</a>.<a href="vim.profile.PolicyMetadata.html#possibleOption">possibleOption</a>
 list.]]>
      </description-html>
      </property>

            <property name="profileTypeName" type-id-ref="java.lang.String"
      vmodl-name="profileTypeName"
      version-id-ref="vim.version.version7"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Identifies the profile type.]]>
      </description-html>
      </property>

            <property name="profileVersion" type-id-ref="java.lang.String"
      vmodl-name="profileVersion"
      version-id-ref="vim.version.version7"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Profile engine version.]]>
      </description-html>
      </property>

            <property name="property" type-id-ref="vim.profile.ApplyProfileProperty"
      vmodl-name="property"
      version-id-ref="vim.version.version7"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of subprofiles for this profile.
 This list can change depending on which profile plug-ins are available in the system.
 Subprofiles can be nested to arbitrary depths to represent host capabilities.]]>
      </description-html>
      </property>

            <property name="favorite" type-id-ref="BOOLEAN"
      vmodl-name="favorite"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates whether this profile is marked as "favorite".]]>
      </description-html>
      </property>

            <property name="toBeMerged" type-id-ref="BOOLEAN"
      vmodl-name="toBeMerged"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates whether this profile is marked as to-be-merged.]]>
      </description-html>
      </property>

            <property name="toReplaceWith" type-id-ref="BOOLEAN"
      vmodl-name="toReplaceWith"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates whether the selected array elements, with the current
 as one of them, replace the profile array in the target host
 profile.]]>
      </description-html>
      </property>

            <property name="toBeDeleted" type-id-ref="BOOLEAN"
      vmodl-name="toBeDeleted"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates whether this profile is marked as to-be-deleted.]]>
      </description-html>
      </property>

            <property name="copyEnableStatus" type-id-ref="BOOLEAN"
      vmodl-name="copyEnableStatus"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates that the member variable <code>enabled</code> of this profile
 will be copied from source profile to target profiles at host profile
 composition.]]>
      </description-html>
      </property>

            <property name="hidden" type-id-ref="BOOLEAN"
      vmodl-name="hidden"
      version-id-ref="vim.version.version12"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates whether this profile will be displayed or not.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="NetDhcpConfigSpecDhcpOptionsSpec"
      type-id="vim.net.DhcpConfigSpec.DhcpOptionsSpec"
      vmodl-name="vim.net.DhcpConfigSpec.DhcpOptionsSpec"
      enclosing-type-id-ref="vim.net.DhcpConfigSpec"
      version-id-ref="vim.version.version6"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Provides for configuration of IPv6]]>
      </description-html>
            <property name="enable" type-id-ref="BOOLEAN"
      vmodl-name="enable"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Enable or disable dhcp for IPv4.]]>
      </description-html>
      </property>

            <property name="config" type-id-ref="vim.KeyValue"
      vmodl-name="config"
      is-array="true"
      >
      <description-html>
         <![CDATA[Platform specific settings for DHCP Client.
 The key part is a unique number, the value part
 is the platform specific configuration command.
 See <a href="vim.net.DhcpConfigInfo.html">NetDhcpConfigInfo</a> for value formatting.]]>
      </description-html>
      </property>

            <property name="operation" type-id-ref="java.lang.String"
      vmodl-name="operation"
      >
      <description-html>
         <![CDATA[Requires one of the values from <a href="vim.host.ConfigChange.Operation.html">HostConfigChangeOperation</a>.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VmRenamedEvent"
      type-id="vim.event.VmRenamedEvent"
      vmodl-name="vim.event.VmRenamedEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.VmEvent"
      >
      <description-html>
         <![CDATA[This event records the renaming of a virtual machine.]]>
      </description-html>
            <property name="oldName" type-id-ref="java.lang.String"
      vmodl-name="oldName"
      >
      <description-html>
         <![CDATA[The old name of the virtual machine.]]>
      </description-html>
      </property>

            <property name="newName" type-id-ref="java.lang.String"
      vmodl-name="newName"
      >
      <description-html>
         <![CDATA[The new name of the virtual machine.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ClusterAntiAffinityRuleSpec"
      type-id="vim.cluster.AntiAffinityRuleSpec"
      vmodl-name="vim.cluster.AntiAffinityRuleSpec"
      version-id-ref="vim.version.version1"
      base-type-id="vim.cluster.RuleInfo"
      >
      <description-html>
         <![CDATA[The <a href="vim.cluster.AntiAffinityRuleSpec.html">ClusterAntiAffinityRuleSpec</a> data object defines
 a set of virtual machines. DRS will attempt to schedule the virtual
 machines to run on different hosts.]]>
      </description-html>
            <property name="vm" type-id-ref="vim.VirtualMachine"
      vmodl-name="vm"
      is-array="true"
      >
      <description-html>
         <![CDATA[List of virtual machine references.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DVSFailureCriteria"
      type-id="vim.dvs.VmwareDistributedVirtualSwitch.FailureCriteria"
      vmodl-name="vim.dvs.VmwareDistributedVirtualSwitch.FailureCriteria"
      enclosing-type-id-ref="vim.dvs.VmwareDistributedVirtualSwitch"
      version-id-ref="vim.version.version5"
      base-type-id="vim.InheritablePolicy"
      >
      <description-html>
         <![CDATA[This data object type describes the network adapter failover
  detection algorithm for a network adapter team.]]>
      </description-html>
            <property name="checkSpeed" type-id-ref="vim.StringPolicy"
      vmodl-name="checkSpeed"
      is-optional="true"
      >
      <description-html>
         <![CDATA[To use link speed as the criteria, <em>checkSpeed</em> must be one of
  the following values:
  <p>
  <ul>
  <li> <b>exact</b>: Use exact speed to detect link failure.
       <b>speed</b> is the configured exact speed in megabits per second.
  <li> <b>minimum</b>: Use minimum speed to detect failure.
       <b>speed</b> is the configured minimum speed in megabits per second.
  <li> <b>empty string</b>: Do not use link speed to detect failure.
       <b>speed</b> is unused in this case.
  </ul>]]>
      </description-html>
      </property>

            <property name="speed" type-id-ref="vim.IntPolicy"
      vmodl-name="speed"
      is-optional="true"
      >
      <description-html>
         <![CDATA[<br>See <a href="vim.dvs.VmwareDistributedVirtualSwitch.FailureCriteria.html#checkSpeed">checkSpeed</a><br>]]>
      </description-html>
      </property>

            <property name="checkDuplex" type-id-ref="vim.BoolPolicy"
      vmodl-name="checkDuplex"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The flag to indicate whether or not to use the link duplex reported
  by the driver as link selection criteria.
  <p>
  If <b>checkDuplex</b> is true, then fullDuplex is the configured
  duplex mode.  The link is considered bad if the link duplex reported
  by driver is not the same as fullDuplex.
  </p>
  <p>
  If <b>checkDuplex</b> is false, then fullDuplex is unused, and
  link duplexity is not used as a detection method.]]>
      </description-html>
      </property>

            <property name="fullDuplex" type-id-ref="vim.BoolPolicy"
      vmodl-name="fullDuplex"
      is-optional="true"
      >
      <description-html>
         <![CDATA[<br>See <a href="vim.dvs.VmwareDistributedVirtualSwitch.FailureCriteria.html#checkDuplex">checkDuplex</a><br>]]>
      </description-html>
      </property>

            <property name="checkErrorPercent" type-id-ref="vim.BoolPolicy"
      vmodl-name="checkErrorPercent"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The flag to indicate whether or not to use link error percentage
  to detect failure.
  <p>
  If <b>checkErrorPercent</b> is true, then percentage is the configured
  error percentage that is tolerated.  The link is considered bad
  if error rate exceeds percentage.
  <p>
  If <b>checkErrorPercent</b> is false, percentage is unused, and
  error percentage is not used as a detection method.]]>
      </description-html>
      </property>

            <property name="percentage" type-id-ref="vim.IntPolicy"
      vmodl-name="percentage"
      is-optional="true"
      >
      <description-html>
         <![CDATA[<br>See <a href="vim.dvs.VmwareDistributedVirtualSwitch.FailureCriteria.html#checkErrorPercent">checkErrorPercent</a><br>]]>
      </description-html>
      </property>

            <property name="checkBeacon" type-id-ref="vim.BoolPolicy"
      vmodl-name="checkBeacon"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The flag to indicate whether or not to enable this property to
  enable beacon probing as a method to validate
  the link status of a physical network adapter.
  <p>
  <b>checkBeacon</b> can be enabled only if the VirtualSwitch has been
  configured to use the beacon.  Attempting to set <b>checkBeacon</b>
  on a PortGroup or VirtualSwitch that does not have beacon probing
  configured for the applicable VirtualSwitch results in an error.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostPortGroupPort"
      type-id="vim.host.PortGroup.Port"
      vmodl-name="vim.host.PortGroup.Port"
      enclosing-type-id-ref="vim.host.PortGroup"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[A Port data object type is a runtime representation of network
  connectivity between a network service or virtual machine and a
  virtual switch.  This is different from a port group in that
  the port group represents the configuration aspects of the
  network connection.  The Port object provides runtime statistics.]]>
      </description-html>
            <property name="key" type-id-ref="java.lang.String"
      vmodl-name="key"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The linkable identifier.]]>
      </description-html>
      </property>

            <property name="mac" type-id-ref="java.lang.String"
      vmodl-name="mac"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The Media Access Control (MAC) address of network service of
  the virtual machine connected on this port.]]>
      </description-html>
      </property>

            <property name="type" type-id-ref="java.lang.String"
      vmodl-name="type"
      >
      <description-html>
         <![CDATA[The type of component connected on this port.  Must be one of the
  values of <a href="vim.host.PortGroup.PortConnecteeType.html">PortGroupConnecteeType</a>.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualSoundCardOption"
      type-id="vim.vm.device.VirtualSoundCardOption"
      vmodl-name="vim.vm.device.VirtualSoundCardOption"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.device.VirtualDeviceOption"
      >
      <description-html>
         <![CDATA[The VirtualSoundCardOption data class contains the options for the
 virtual sound card class.]]>
      </description-html>
      <nested-type-id-ref>vim.vm.device.VirtualSoundCardOption.DeviceBackingOption</nested-type-id-ref>
   </data-object>
   <data-object name="VmFaultToleranceTurnedOffEvent"
      type-id="vim.event.VmFaultToleranceTurnedOffEvent"
      vmodl-name="vim.event.VmFaultToleranceTurnedOffEvent"
      version-id-ref="vim.version.version5"
      base-type-id="vim.event.VmEvent"
      >
      <description-html>
         <![CDATA[This event records that all secondary virtual machines have
 been removed and fault tolerance protection turned off for
 this virtual machine.]]>
      </description-html>
   </data-object>
   <data-object name="VsanHostVsanDiskInfo"
      type-id="vim.vsan.host.VsanDiskInfo"
      vmodl-name="vim.vsan.host.VsanDiskInfo"
      version-id-ref="vim.version.version10"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[A VsanDiskInfo represents the additional detailed
 information of a ScsiDisk used by VSAN,
 to map physical disk to VSAN disk.<br>See <a href="vim.host.ScsiDisk.html">HostScsiDisk</a><br>]]>
      </description-html>
            <property name="vsanUuid" type-id-ref="java.lang.String"
      vmodl-name="vsanUuid"
      >
      <description-html>
         <![CDATA[Disk UUID in VSAN]]>
      </description-html>
      </property>

            <property name="formatVersion" type-id-ref="INT"
      vmodl-name="formatVersion"
      >
      <description-html>
         <![CDATA[VSAN file system version number]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="GeneralHostWarningEvent"
      type-id="vim.event.GeneralHostWarningEvent"
      vmodl-name="vim.event.GeneralHostWarningEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.GeneralEvent"
      >
      <description-html>
         <![CDATA[This event is the general warning event for a host.]]>
      </description-html>
   </data-object>
   <data-object name="TaskFilterSpec"
      type-id="vim.TaskFilterSpec"
      vmodl-name="vim.TaskFilterSpec"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object type defines the specification for the task filter used
  to query tasks in the history collector database. The client creates a task
  history collector with a filter specification, then retrieves the tasks from
  the task history collector.]]>
      </description-html>
            <property name="entity" type-id-ref="vim.TaskFilterSpec.ByEntity"
      vmodl-name="entity"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The filter specification for retrieving tasks by managed entity.
  If not provided, then the tasks attached to all managed entities are
  collected.]]>
      </description-html>
      </property>

            <property name="time" type-id-ref="vim.TaskFilterSpec.ByTime"
      vmodl-name="time"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The filter specification for retrieving tasks by time.
  If not provided, then the tasks with any time stamp are collected.]]>
      </description-html>
      </property>

            <property name="userName" type-id-ref="vim.TaskFilterSpec.ByUsername"
      vmodl-name="userName"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The filter specification for retrieving tasks by user name.
  If not provided, then the tasks belonging to any user are collected.]]>
      </description-html>
      </property>

            <property name="activationId" type-id-ref="java.lang.String"
      vmodl-name="activationId"
      version-id-ref="vim.version.version10"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[This property, if provided, limits the set of collected tasks to those
  associated with the specified activation Ids.]]>
      </description-html>
      </property>

            <property name="state" type-id-ref="vim.TaskInfo.State"
      vmodl-name="state"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[This property, if provided, limits the set of collected tasks by their states.
  Task states are enumerated in <a href="vim.TaskInfo.html#state">state</a>.
  If not provided, tasks are collected regardless of their state.]]>
      </description-html>
      </property>

            <property name="alarm" type-id-ref="vim.alarm.Alarm"
      vmodl-name="alarm"
      is-optional="true"
      >
      <description-html>
         <![CDATA[This property, if provided, limits the set of collected tasks to those
  associated with the specified alarm.
  If not provided, tasks are collected regardless of their association with alarms.]]>
      </description-html>
      </property>

            <property name="scheduledTask" type-id-ref="vim.scheduler.ScheduledTask"
      vmodl-name="scheduledTask"
      is-optional="true"
      >
      <description-html>
         <![CDATA[This property, if provided, limits the set of collected tasks to those
  associated with the specified scheduled task.
  If not provided, tasks are collected regardless of their association with any
  scheduled task.]]>
      </description-html>
      </property>

            <property name="eventChainId" type-id-ref="INT"
      vmodl-name="eventChainId"
      version-id-ref="vim.version.version5"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The filter specification for retrieving tasks by chain ID. If it is set,
  tasks not with the given <a href="vim.TaskInfo.html#eventChainId">eventChainId</a> will be
  filtered out. If the property is not set, tasks' chain ID is disregarded
  for filtering purposes.]]>
      </description-html>
      </property>

            <property name="tag" type-id-ref="java.lang.String"
      vmodl-name="tag"
      version-id-ref="vim.version.version5"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The filter specification for retrieving tasks by
  <a href="vim.TaskInfo.html#changeTag">changeTag</a>. If it is set, tasks not with the given tag(s)
  will be filtered out. If the property is not set, tasks' tag is disregarded for
  filtering purposes. If it is set, and includes an empty string, tasks without a
  tag will be returned.]]>
      </description-html>
      </property>

            <property name="parentTaskKey" type-id-ref="java.lang.String"
      vmodl-name="parentTaskKey"
      version-id-ref="vim.version.version5"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The filter specification for retrieving tasks by
  <a href="vim.TaskInfo.html#parentTaskKey">parentTaskKey</a>. If it is set, tasks not with the
  given parentTaskKey(s) will be filtered out. If the property is not set,
  tasks' parentTaskKey is disregarded for filtering purposes.]]>
      </description-html>
      </property>

            <property name="rootTaskKey" type-id-ref="java.lang.String"
      vmodl-name="rootTaskKey"
      version-id-ref="vim.version.version5"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The filter specification for retrieving tasks by
  <a href="vim.TaskInfo.html#rootTaskKey">rootTaskKey</a>. If it is set, tasks not with the
  given rootTaskKey(s) will be filtered out. If the property is not set,
  tasks' rootTaskKey is disregarded for filtering purposes.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.TaskFilterSpec.RecursionOption</nested-type-id-ref>
      <nested-type-id-ref>vim.TaskFilterSpec.TimeOption</nested-type-id-ref>
      <nested-type-id-ref>vim.TaskFilterSpec.ByEntity</nested-type-id-ref>
      <nested-type-id-ref>vim.TaskFilterSpec.ByTime</nested-type-id-ref>
      <nested-type-id-ref>vim.TaskFilterSpec.ByUsername</nested-type-id-ref>
   </data-object>
   <data-object name="HostNatServiceNameServiceSpec"
      type-id="vim.host.NatService.NameServiceSpec"
      vmodl-name="vim.host.NatService.NameServiceSpec"
      enclosing-type-id-ref="vim.host.NatService"
      version-id-ref="vim.version.version2"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object type specifies the information for the
  name servers.]]>
      </description-html>
            <property name="dnsAutoDetect" type-id-ref="BOOLEAN"
      vmodl-name="dnsAutoDetect"
      >
      <description-html>
         <![CDATA[The flag to indicate whether or not the DNS server should
  be automatically detected or specified explicitly.]]>
      </description-html>
      </property>

            <property name="dnsPolicy" type-id-ref="java.lang.String"
      vmodl-name="dnsPolicy"
      >
      <description-html>
         <![CDATA[The policy to use when multiple DNS addresses are available
  on the host.]]>
      </description-html>
      </property>

            <property name="dnsRetries" type-id-ref="INT"
      vmodl-name="dnsRetries"
      >
      <description-html>
         <![CDATA[The number of retries before giving up on a DNS request
  from a virtual network.]]>
      </description-html>
      </property>

            <property name="dnsTimeout" type-id-ref="INT"
      vmodl-name="dnsTimeout"
      >
      <description-html>
         <![CDATA[The time (in seconds) before retrying a DNS request to an external
  network.]]>
      </description-html>
      </property>

            <property name="dnsNameServer" type-id-ref="java.lang.String"
      vmodl-name="dnsNameServer"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The list of DNS servers.]]>
      </description-html>
      </property>

            <property name="nbdsTimeout" type-id-ref="INT"
      vmodl-name="nbdsTimeout"
      >
      <description-html>
         <![CDATA[The time (in seconds) allotted for queries to the NetBIOS
  Datagram Server (NBDS).]]>
      </description-html>
      </property>

            <property name="nbnsRetries" type-id-ref="INT"
      vmodl-name="nbnsRetries"
      >
      <description-html>
         <![CDATA[Number of retries for each query to the NBNS.]]>
      </description-html>
      </property>

            <property name="nbnsTimeout" type-id-ref="INT"
      vmodl-name="nbnsTimeout"
      >
      <description-html>
         <![CDATA[The time (in seconds) allotted for queries to the NBNS.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="SiteInfo"
      type-id="vim.SiteInfo"
      vmodl-name="vim.SiteInfo"
      version-id-ref="vim.version.v7_0"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object type represents the external site-related capabilities
  available in the environment managed by this vCenter.]]>
      </description-html>
   </data-object>
   <data-object name="PowerSystemCapability"
      type-id="vim.host.PowerSystem.Capability"
      vmodl-name="vim.host.PowerSystem.Capability"
      enclosing-type-id-ref="vim.host.PowerSystem"
      version-id-ref="vim.version.version6"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Power System Capability data object.

  Exposes policies available in power management system.]]>
      </description-html>
            <property name="availablePolicy" type-id-ref="vim.host.PowerSystem.PowerPolicy"
      vmodl-name="availablePolicy"
      is-array="true"
      >
      <description-html>
         <![CDATA[List of available host power policies.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostVMotionManagerSrcInstantCloneResult"
      type-id="vim.host.VMotionManager.SrcInstantCloneResult"
      vmodl-name="vim.host.VMotionManager.SrcInstantCloneResult"
      enclosing-type-id-ref="vim.host.VMotionManager"
      version-id-ref="vim.version.v7_0"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The result of an InstantClone InitiateSource task. Contains the timestamp
  value at the time of different operations.]]>
      </description-html>
            <property name="startTime" type-id-ref="LONG"
      vmodl-name="startTime"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Time stamp at the start of the InstantClone operation at the
 source VM.]]>
      </description-html>
      </property>

            <property name="quiesceTime" type-id-ref="LONG"
      vmodl-name="quiesceTime"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Time stamp when the source VM enters quiesce state.]]>
      </description-html>
      </property>

            <property name="quiesceDoneTime" type-id-ref="LONG"
      vmodl-name="quiesceDoneTime"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Time stamp when the source VM successfully quiesces.]]>
      </description-html>
      </property>

            <property name="resumeDoneTime" type-id-ref="LONG"
      vmodl-name="resumeDoneTime"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Time stamp when the source VM completes resuming.]]>
      </description-html>
      </property>

            <property name="endTime" type-id-ref="LONG"
      vmodl-name="endTime"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Time stamp when the migration completes on the source VM.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="NamePasswordAuthentication"
      type-id="vim.vm.guest.NamePasswordAuthentication"
      vmodl-name="vim.vm.guest.NamePasswordAuthentication"
      version-id-ref="vim.version.version7"
      base-type-id="vim.vm.guest.GuestAuthentication"
      >
      <description-html>
         <![CDATA[NamePasswordAuthentication contains the information necessary to authenticate
  within a guest using a name and password. This is the typical method for
  authentication within a guest and the one currently used by VIX.
  This method of authentication is stateless.
  <p>
  To use NamePasswordAuthentication, populate username and password with the
  appropriate login information. You should not use <a href="vim.vm.guest.AuthManager.html#acquireCredentials">AcquireCredentialsInGuest</a>
  or <a href="vim.vm.guest.AuthManager.html#releaseCredentials">ReleaseCredentialsInGuest</a> for NamePasswordAuthentication.
  <p>
  Once populated, you can use NamePasswordAuthentication in any guest operations function call.]]>
      </description-html>
            <property name="username" type-id-ref="java.lang.String"
      vmodl-name="username"
      >
      <description-html>
         <![CDATA[The user name for Name-Password authentication.]]>
      </description-html>
      </property>

            <property name="password" type-id-ref="java.lang.String"
      vmodl-name="password"
      >
      <description-html>
         <![CDATA[The password for Name-Password authentication.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="StoragePodSummary"
      type-id="vim.StoragePod.Summary"
      vmodl-name="vim.StoragePod.Summary"
      enclosing-type-id-ref="vim.StoragePod"
      version-id-ref="vim.version.version7"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The <a href="vim.StoragePod.Summary.html">StoragePodSummary</a> data object
  encapsulates runtime properties of a <a href="vim.StoragePod.html">StoragePod</a>.
  <p>]]>
      </description-html>
            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      >
      <description-html>
         <![CDATA[The name of the storage pod.]]>
      </description-html>
      </property>

            <property name="capacity" type-id-ref="LONG"
      vmodl-name="capacity"
      >
      <description-html>
         <![CDATA[Total capacity of this storage pod, in bytes. This value is the sum of the
  capacity of all datastores that are part of this storage pod, and is updated
  periodically by the server.]]>
      </description-html>
      </property>

            <property name="freeSpace" type-id-ref="LONG"
      vmodl-name="freeSpace"
      >
      <description-html>
         <![CDATA[Total free space on this storage pod, in bytes. This value is the sum of the
  free space on all datastores that are part of this storage pod, and is updated
  periodically by the server.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualPCIPassthroughAllowedDevice"
      type-id="vim.vm.device.VirtualPCIPassthrough.AllowedDevice"
      vmodl-name="vim.vm.device.VirtualPCIPassthrough.AllowedDevice"
      enclosing-type-id-ref="vim.vm.device.VirtualPCIPassthrough"
      version-id-ref="vim.version.v7_0"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[A tuple of vendorId and deviceId indicating an allowed device
 for a Dynamic DirectPath device.]]>
      </description-html>
            <property name="vendorId" type-id-ref="INT"
      vmodl-name="vendorId"
      >
      <description-html>
         <![CDATA[The vendor ID for this PCI device. You must use the vendor ID
 retrieved from the vSphere host or cluster.]]>
      </description-html>
      </property>

            <property name="deviceId" type-id-ref="INT"
      vmodl-name="deviceId"
      >
      <description-html>
         <![CDATA[The device ID of this PCI device. You must use the device ID
 retrieved from the vSphere host or cluster.]]>
      </description-html>
      </property>

            <property name="subVendorId" type-id-ref="INT"
      vmodl-name="subVendorId"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The subVendor ID for this PCI device. If specified, you must use
 the subVendor ID retrieved from the vSphere host or cluster.
 Range of legal values is 0x0 to 0xFFFF.]]>
      </description-html>
      </property>

            <property name="subDeviceId" type-id-ref="INT"
      vmodl-name="subDeviceId"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The subDevice ID of this PCI device. If specified, you must use
 the subDevice ID retrieved from the vSphere host or cluster.
 Range of legal values is 0x0 to 0xFFFF.]]>
      </description-html>
      </property>

            <property name="revisionId" type-id-ref="SHORT"
      vmodl-name="revisionId"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The revision ID of this PCI device. If specified, you must use
 the revision ID retrieved from the vSphere host or cluster.
 Range of legal values is 0x0 to 0xFF.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="UserPrivilegeResult"
      type-id="vim.AuthorizationManager.UserPrivilegeResult"
      vmodl-name="vim.AuthorizationManager.UserPrivilegeResult"
      enclosing-type-id-ref="vim.AuthorizationManager"
      version-id-ref="vim.version.version11"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This class is used to provide the list of effective privileges
 set on a given managed entity for a user.]]>
      </description-html>
            <property name="entity" type-id-ref="vim.ManagedEntity"
      vmodl-name="entity"
      >
      <description-html>
         <![CDATA[The entity on which privileges are retrieved.]]>
      </description-html>
      </property>

            <property name="privileges" type-id-ref="java.lang.String"
      vmodl-name="privileges"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[A list of privileges set on the entity.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="AlarmReconfiguredEvent"
      type-id="vim.event.AlarmReconfiguredEvent"
      vmodl-name="vim.event.AlarmReconfiguredEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.AlarmEvent"
      >
      <description-html>
         <![CDATA[This event records the reconfiguration of an alarm.]]>
      </description-html>
            <property name="entity" type-id-ref="vim.event.ManagedEntityEventArgument"
      vmodl-name="entity"
      >
      <description-html>
         <![CDATA[The entity with which the alarm is registered.]]>
      </description-html>
      </property>

            <property name="configChanges" type-id-ref="vim.event.ChangesInfoEventArgument"
      vmodl-name="configChanges"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The configuration values changed during the reconfiguration.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="NodeDeploymentSpec"
      type-id="vim.vcha.FailoverClusterConfigurator.NodeDeploymentSpec"
      vmodl-name="vim.vcha.FailoverClusterConfigurator.NodeDeploymentSpec"
      enclosing-type-id-ref="vim.vcha.FailoverClusterConfigurator"
      version-id-ref="vim.version.version11"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The NodeDeploymentSpec class defines location
  specification of the nodes the VCHA Cluster along with Management
  vCenter Server information that manages node VM.]]>
      </description-html>
            <property name="esxHost" type-id-ref="vim.HostSystem"
      vmodl-name="esxHost"
      is-optional="true"
      >
      <description-html>
         <![CDATA[ESX host on which the VM is to be deployed.
  For behavior when an esxHost is not specified,<br>See <a href="vim.vm.RelocateSpec.html#host">host</a><br>]]>
      </description-html>
      </property>

            <property name="datastore" type-id-ref="vim.Datastore"
      vmodl-name="datastore"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Datastore used for deploying the VM.
  For behavior when a datastore is not specified,<br>See <a href="vim.vm.RelocateSpec.html#datastore">datastore</a><br>]]>
      </description-html>
      </property>

            <property name="publicNetworkPortGroup" type-id-ref="vim.Network"
      vmodl-name="publicNetworkPortGroup"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Name of the portgroup that is associated with the public IP address
 where clients connect to vCenter Server. If a portgroup is not
 specified same portgroup present on source is used to deploy the VM
 with an assumption that portgroup is present on destination.]]>
      </description-html>
      </property>

            <property name="clusterNetworkPortGroup" type-id-ref="vim.Network"
      vmodl-name="clusterNetworkPortGroup"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Name of the portgroup that is associated with the VCHA Cluster IP
 address where clients connect to vCenter Server. If a portgroup is not
 specified same portgroup present on source is used to deploy the VM
 with an assumption that portgroup is present on destination.]]>
      </description-html>
      </property>

            <property name="folder" type-id-ref="vim.Folder"
      vmodl-name="folder"
      >
      <description-html>
         <![CDATA[Folder in which the VM is to be created.]]>
      </description-html>
      </property>

            <property name="resourcePool" type-id-ref="vim.ResourcePool"
      vmodl-name="resourcePool"
      is-optional="true"
      >
      <description-html>
         <![CDATA[ResourcePool that will be used to deploy this node.
  If the ResourcePool is not specified, the root resource pool for the
  host will be used.]]>
      </description-html>
      </property>

            <property name="managementVc" type-id-ref="vim.ServiceLocator"
      vmodl-name="managementVc"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Management vCenter Server managing this VM.
  If the managementVc is not specified, managementVc specified as
  part of SourceNodeSpec is used.]]>
      </description-html>
      </property>

            <property name="nodeName" type-id-ref="java.lang.String"
      vmodl-name="nodeName"
      >
      <description-html>
         <![CDATA[nodeName here refers to a name that will be assigned to the VM to which
 this node will be deployed to.]]>
      </description-html>
      </property>

            <property name="ipSettings" type-id-ref="vim.vm.customization.IPSettings"
      vmodl-name="ipSettings"
      >
      <description-html>
         <![CDATA[VCHA Cluster network configuration of the node.
  All cluster communication (state replication, heartbeat,
  cluster messages) happens over this network.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VchaClusterConfigInfo"
      type-id="vim.vcha.FailoverClusterConfigurator.VchaClusterConfigInfo"
      vmodl-name="vim.vcha.FailoverClusterConfigurator.VchaClusterConfigInfo"
      enclosing-type-id-ref="vim.vcha.FailoverClusterConfigurator"
      version-id-ref="vim.version.version11"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The VchaClusterConfigInfo class contains
  configuration information of the three nodes of a VCHA
  Cluster.]]>
      </description-html>
            <property name="failoverNodeInfo1" type-id-ref="vim.vcha.FailoverClusterConfigurator.FailoverNodeInfo"
      vmodl-name="failoverNodeInfo1"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Node configuration information for the VCHA Cluster]]>
      </description-html>
      </property>

            <property name="failoverNodeInfo2" type-id-ref="vim.vcha.FailoverClusterConfigurator.FailoverNodeInfo"
      vmodl-name="failoverNodeInfo2"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Node configuration information for the VCHA Cluster]]>
      </description-html>
      </property>

            <property name="witnessNodeInfo" type-id-ref="vim.vcha.FailoverClusterConfigurator.WitnessNodeInfo"
      vmodl-name="witnessNodeInfo"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Node configuration information for the VCHA Cluster]]>
      </description-html>
      </property>

            <property name="state" type-id-ref="java.lang.String"
      vmodl-name="state"
      >
      <description-html>
         <![CDATA[Current state of VCHA Cluster.
  <a href="vim.vcha.FailoverClusterConfigurator.VchaState.html">VchaState</a> lists all
  possible states.

  If the state is invalid or notConfigured, the other fields in this
  object will be unset.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualCdromRemotePassthroughBackingOption"
      type-id="vim.vm.device.VirtualCdromOption.RemotePassthroughBackingOption"
      vmodl-name="vim.vm.device.VirtualCdromOption.RemotePassthroughBackingOption"
      enclosing-type-id-ref="vim.vm.device.VirtualCdromOption"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.device.VirtualDeviceOption.RemoteDeviceBackingOption"
      >
      <description-html>
         <![CDATA[The VirtualCdromOption.RemotePassthroughBackingOption data object type
  contains the options for a remote pass-through CD-ROM device backing.
  <p>
  Note that the server cannot present a list of valid remote backing devices
  because it is unable to scan remote hosts.]]>
      </description-html>
            <property name="exclusive" type-id-ref="vim.option.BoolOption"
      vmodl-name="exclusive"
      >
      <description-html>
         <![CDATA[Flag to indicate whether or not exclusive CD-ROM device access is supported.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="FaultToleranceSecondaryOpResult"
      type-id="vim.vm.FaultToleranceSecondaryOpResult"
      vmodl-name="vim.vm.FaultToleranceSecondaryOpResult"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[FaultToleranceSecondaryOpResult is a data object that reports on
  the outcome of the <a href="vim.VirtualMachine.html#createSecondary">CreateSecondaryVM_Task</a> or
  <a href="vim.VirtualMachine.html#enableSecondary">EnableSecondaryVM_Task</a> operation.]]>
      </description-html>
            <property name="vm" type-id-ref="vim.VirtualMachine"
      vmodl-name="vm"
      >
      <description-html>
         <![CDATA[The Secondary VirtualMachine]]>
      </description-html>
      </property>

            <property name="powerOnAttempted" type-id-ref="BOOLEAN"
      vmodl-name="powerOnAttempted"
      >
      <description-html>
         <![CDATA[Whether an attempt was made to power on the secondary. If
  an attempt was made, <a href="vim.vm.FaultToleranceSecondaryOpResult.html#powerOnResult">powerOnResult</a> will report the
  status of this attempt.]]>
      </description-html>
      </property>

            <property name="powerOnResult" type-id-ref="vim.cluster.PowerOnVmResult"
      vmodl-name="powerOnResult"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The powerOnResult property reports the outcome of powering on the
  Secondary VirtualMachine if a power on was required. A power on will
  be attempted if the Primary Virtual Machine is powered on when the
  operation is performed. This object is only reported if <a href="vim.vm.FaultToleranceSecondaryOpResult.html#powerOnAttempted">powerOnAttempted</a> is true. If the outcome of the power-on attempt
  is not successful, the returned <a href="vim.cluster.PowerOnVmResult.html">ClusterPowerOnVmResult</a>
  object will include an instance of <a href="vim.cluster.NotAttemptedVmInfo.html">ClusterNotAttemptedVmInfo</a>
  whereas if the attempt was successful, then an instance of
  <a href="vim.cluster.AttemptedVmInfo.html">ClusterAttemptedVmInfo</a> is returned. When
  <a href="vim.cluster.AttemptedVmInfo.html">ClusterAttemptedVmInfo</a> is returned, its
  <a href="vim.cluster.AttemptedVmInfo.html#task">task</a> property is only set if the cluster
  is a HA-only cluster.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="GuestAliases"
      type-id="vim.vm.guest.AliasManager.GuestAliases"
      vmodl-name="vim.vm.guest.AliasManager.GuestAliases"
      enclosing-type-id-ref="vim.vm.guest.AliasManager"
      version-id-ref="vim.version.version10"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Describes the representation of an alias and the subjects
 that are trusted from that VMware SSO Server.]]>
      </description-html>
            <property name="base64Cert" type-id-ref="java.lang.String"
      vmodl-name="base64Cert"
      >
      <description-html>
         <![CDATA[The associated VMware SSO Server X.509 certificate, in base64
 encoded DER format.]]>
      </description-html>
      </property>

            <property name="aliases" type-id-ref="vim.vm.guest.AliasManager.GuestAuthAliasInfo"
      vmodl-name="aliases"
      is-array="true"
      >
      <description-html>
         <![CDATA[A white list of aliases that the in-guest user account trusts;
 it can be a subset of the subjects known to the identity
 provider.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DiagnosticManagerLogDescriptor"
      type-id="vim.DiagnosticManager.LogDescriptor"
      vmodl-name="vim.DiagnosticManager.LogDescriptor"
      enclosing-type-id-ref="vim.DiagnosticManager"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Describes a log file that is available on a server.]]>
      </description-html>
            <property name="key" type-id-ref="java.lang.String"
      vmodl-name="key"
      >
      <description-html>
         <![CDATA[A key to identify the log file for browsing and download operations.]]>
      </description-html>
      </property>

            <property name="fileName" type-id-ref="java.lang.String"
      vmodl-name="fileName"
      >
      <description-html>
         <![CDATA[The filename of the log.]]>
      </description-html>
      </property>

            <property name="creator" type-id-ref="java.lang.String"
      vmodl-name="creator"
      >
      <description-html>
         <![CDATA[The application that generated the log file. For more information on currently
 supported creators, see <a href="vim.DiagnosticManager.LogDescriptor.Creator.html">DiagnosticManagerLogCreator</a>.]]>
      </description-html>
      </property>

            <property name="format" type-id-ref="java.lang.String"
      vmodl-name="format"
      >
      <description-html>
         <![CDATA[Describes the format of the log file. For more information on currently
  supported formats, see <a href="vim.DiagnosticManager.LogDescriptor.Format.html">DiagnosticManagerLogFormat</a>.]]>
      </description-html>
      </property>

            <property name="mimeType" type-id-ref="java.lang.String"
      vmodl-name="mimeType"
      >
      <description-html>
         <![CDATA[Describes the mime-type of the returned file. Typical
  mime-types include:
  <ul>
  <li>text/plain - for a plain log file</li>
  </ul>]]>
      </description-html>
      </property>

            <property name="info" type-id-ref="vim.Description"
      vmodl-name="info"
      is-localizable="true"
      >
      <description-html>
         <![CDATA[Localized description of log file.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.DiagnosticManager.LogDescriptor.Creator</nested-type-id-ref>
      <nested-type-id-ref>vim.DiagnosticManager.LogDescriptor.Format</nested-type-id-ref>
   </data-object>
   <data-object name="HostTpmEventLogEntry"
      type-id="vim.host.TpmEventLogEntry"
      vmodl-name="vim.host.TpmEventLogEntry"
      version-id-ref="vim.version.version8"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object represents a single entry of an event log created by
  Trusted Platform Module (TPM).
  <p />
  An TPM event log entry represents a single change to the value of
  a Platform Configuration Register (PCR). It contains detailed information
  about the reason of PCR value change, and the specifics of the event.
  <p />
  Multiple objects of this type form an TPM event log. This log allows for
  verification of the both the software stack running on a host and the attestation
  process itself.]]>
      </description-html>
            <property name="pcrIndex" type-id-ref="INT"
      vmodl-name="pcrIndex"
      >
      <description-html>
         <![CDATA[Index of the PCR that was affected by the event.]]>
      </description-html>
      </property>

            <property name="eventDetails" type-id-ref="vim.host.TpmEventDetails"
      vmodl-name="eventDetails"
      >
      <description-html>
         <![CDATA[The details of the event.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ProfileCompositePolicyOptionMetadata"
      type-id="vim.profile.CompositePolicyOptionMetadata"
      vmodl-name="vim.profile.CompositePolicyOptionMetadata"
      version-id-ref="vim.version.version5"
      base-type-id="vim.profile.PolicyOptionMetadata"
      >
      <description-html>
         <![CDATA[The <a href="vim.profile.CompositePolicyOptionMetadata.html">ProfileCompositePolicyOptionMetadata</a> data object represents the metadata information
 for a composite <a href="vim.profile.PolicyOption.html">PolicyOption</a>. The user will retrieve metadata
 information about a composite policy and then combine policy options to produce
 the composite policy option.]]>
      </description-html>
            <property name="option" type-id-ref="java.lang.String"
      vmodl-name="option"
      is-array="true"
      >
      <description-html>
         <![CDATA[List of optional policy option identifiers that could be combined
 in this composite policy option. The policy options should already be
 part of the possible policy options for the policy. See the
 <a href="vim.profile.PolicyMetadata.html">ProfilePolicyMetadata</a>.<a href="vim.profile.PolicyMetadata.html#possibleOption">possibleOption</a>
 list.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostRdmaDeviceConnectionInfo"
      type-id="vim.host.RdmaDevice.ConnectionInfo"
      vmodl-name="vim.host.RdmaDevice.ConnectionInfo"
      enclosing-type-id-ref="vim.host.RdmaDevice"
      version-id-ref="vim.version.v7_0"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Represents connection information for the RDMA device.]]>
      </description-html>
            <property name="state" type-id-ref="java.lang.String"
      vmodl-name="state"
      >
      <description-html>
         <![CDATA[RDMA device connection state. The set of possible values
  is described in <a href="vim.host.RdmaDevice.ConnectionState.html">HostRdmaDeviceConnectionState</a>.]]>
      </description-html>
      </property>

            <property name="mtu" type-id-ref="INT"
      vmodl-name="mtu"
      >
      <description-html>
         <![CDATA[Maximum Transmission Unit in bytes.]]>
      </description-html>
      </property>

            <property name="speedInMbps" type-id-ref="INT"
      vmodl-name="speedInMbps"
      >
      <description-html>
         <![CDATA[Bit rate in Mbps.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DvsSingleIpPort"
      type-id="vim.dvs.TrafficRule.SingleIpPort"
      vmodl-name="vim.dvs.TrafficRule.SingleIpPort"
      enclosing-type-id-ref="vim.dvs.TrafficRule"
      version-id-ref="vim.version.version9"
      base-type-id="vim.dvs.TrafficRule.IpPort"
      >
      <description-html>
         <![CDATA[This class defines a Single Port]]>
      </description-html>
            <property name="portNumber" type-id-ref="INT"
      vmodl-name="portNumber"
      >
      <description-html>
         <![CDATA[The IP port number.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="NetIpRouteConfigInfoGateway"
      type-id="vim.net.IpRouteConfigInfo.Gateway"
      vmodl-name="vim.net.IpRouteConfigInfo.Gateway"
      enclosing-type-id-ref="vim.net.IpRouteConfigInfo"
      version-id-ref="vim.version.version6"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Next hop Gateway for a given route.]]>
      </description-html>
            <property name="ipAddress" type-id-ref="java.lang.String"
      vmodl-name="ipAddress"
      is-optional="true"
      >
      </property>

            <property name="device" type-id-ref="java.lang.String"
      vmodl-name="device"
      is-optional="true"
      >
      </property>

   </data-object>
   <data-object name="HostNumaNode"
      type-id="vim.host.NumaNode"
      vmodl-name="vim.host.NumaNode"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Information about a single NUMA node.
  <p>
  NOTE: This data object is not modeled correctly if the NUMA node
  contains multiple disjoint memory ranges. If there are multiple memory
  ranges, the client will see one memory ranges from this NumaNode
  object, and the memory range may or may not belong to this NUMA node.]]>
      </description-html>
            <property name="typeId" type-id-ref="BYTE"
      vmodl-name="typeId"
      >
      <description-html>
         <![CDATA[Zero-based NUMA ID for the node.]]>
      </description-html>
      </property>

            <property name="cpuID" type-id-ref="SHORT"
      vmodl-name="cpuID"
      is-array="true"
      >
      <description-html>
         <![CDATA[Information about each of the CPUs associated with the node.]]>
      </description-html>
      </property>

            <property name="memoryRangeBegin" type-id-ref="LONG"
      vmodl-name="memoryRangeBegin"
      >
      <description-html>
         <![CDATA[Beginning memory range for this NUMA node.]]>
      </description-html>
      </property>

            <property name="memoryRangeLength" type-id-ref="LONG"
      vmodl-name="memoryRangeLength"
      >
      <description-html>
         <![CDATA[Length of the memory range for this node in bytes, that is, the amount
  of memory on the node.]]>
      </description-html>
      </property>

            <property name="pciId" type-id-ref="java.lang.String"
      vmodl-name="pciId"
      version-id-ref="vim.version.version12"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Information about each of the pci devices associated with the node.
  The string is of SBDF format, "Segment:Bus:Device.Function".]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ClusterDasAamHostInfo"
      type-id="vim.cluster.DasAamHostInfo"
      vmodl-name="vim.cluster.DasAamHostInfo"
      version-id-ref="vim.version.version5"
      is-deprecated="true"
      base-type-id="vim.cluster.DasHostInfo"
      >
      <description-html>
         <![CDATA[The <a href="vim.cluster.DasAamHostInfo.html">ClusterDasAamHostInfo</a> object contains a list of the ESX hosts
  in an HA cluster and a list that identifies the <i>primary</i> hosts.
  (AAM is a component of the HA service.)
  The primary hosts share the joint responsibility of maintaining all cluster
  state and one will initiate failover actions should a failure occur.
  <p>
  When you add an ESX host to a vSphere HA cluster, the host
  downloads HA agent components from the vCenter Server.
  The HA agent maintains communication with the vCenter Server.
  <p>
  When the host downloads the HA agent, the host configures the agent
  to communicate with other agents in the cluster. A host that joins
  the cluster communicates with an existing primary host to complete
  its configuration (except when you are adding the first host to the cluster).
  <ul>
  <li>The first five hosts added to the cluster are designated
  as primary hosts. All subsequent hosts are designated as secondary hosts.</li>
  <li>If a primary host is removed from the cluster,
  the vCenter Server promotes another host to primary status.</li>
  <li>There must be at least one functional primary host for vSphere HA
  to operate correctly. If there is not an available primary host
  (no response), host configuration for HA will fail.
  If there is a total cluster failure, HA will begin restarting virtual
  machines as soon as one host recovers and its HA agent is up and running.</li>
  </ul>
  <p>
  One of the primary hosts assumes the role of the active primary host.
  The active primary host responsibilities include the following activities:
  <ul>
  <li>Decides where to restart virtual machines.</li>
  <li>Tracks failed restart attempts.</li>
  <li>Determines when it is appropriate to continue attempts to restart
  a virtual machine.</li>
  </ul>
  <p>
  If the active primary host fails, another primary host replaces it.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 5.0, this object is no longer returned by
  vCenter Server. Availability information is now reported using
  <a href="vim.host.RuntimeInfo.html#dasHostState">dasHostState</a>.]]>
      </deprecated-html>
            <property name="hostDasState" type-id-ref="vim.cluster.DasAamNodeState"
      vmodl-name="hostDasState"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The state of HA on the hosts.]]>
      </description-html>
      </property>

            <property name="primaryHosts" type-id-ref="java.lang.String"
      vmodl-name="primaryHosts"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The list of primary hosts.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualSIOControllerOption"
      type-id="vim.vm.device.VirtualSIOControllerOption"
      vmodl-name="vim.vm.device.VirtualSIOControllerOption"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.device.VirtualControllerOption"
      >
      <description-html>
         <![CDATA[The VirtualSIOControllerOption data object type contains the options
  for a virtual Super IO Controller.]]>
      </description-html>
            <property name="numFloppyDrives" type-id-ref="vim.option.IntOption"
      vmodl-name="numFloppyDrives"
      >
      <description-html>
         <![CDATA[Three properties (numFloppyDrives.min, numFloppyDrives.max, and
  numFloppyDrives.defaultValue) define the minimum, maximum, and default
  number of floppy drives you can have at any given time in the Super IO
  Controller. This is further constrained by the number of available
  slots in the Super IO Controller.]]>
      </description-html>
      </property>

            <property name="numSerialPorts" type-id-ref="vim.option.IntOption"
      vmodl-name="numSerialPorts"
      >
      <description-html>
         <![CDATA[Three properties (numSerialPorts.min, numSerialPorts.max, and
  numSerialPorts.defaultValue) define the minimum, maximum, and default
  number of serial ports you can
  have at any given time in the Super IO Controller. This is further
  constrained by the number of available slots in the Super IO
  Controller.]]>
      </description-html>
      </property>

            <property name="numParallelPorts" type-id-ref="vim.option.IntOption"
      vmodl-name="numParallelPorts"
      >
      <description-html>
         <![CDATA[Three properties (numParallelPorts.min, numParallelPorts.max, and
  numParallelPorts.defaultValue) define the minimum, maximum, and default
  number of parallel ports you can
  have at any given time in the Super IO controller. This is further
  constrained by the number of available slots in the Super IO
  Controller.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="SharesOption"
      type-id="vim.SharesOption"
      vmodl-name="vim.SharesOption"
      version-id-ref="vim.version.version6"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Specification of shares.
  <p>
  Object of this class specifies value ranges for object of
  instance <a href="vim.SharesInfo.html">SharesInfo</a>]]>
      </description-html>
            <property name="sharesOption" type-id-ref="vim.option.IntOption"
      vmodl-name="sharesOption"
      >
      <description-html>
         <![CDATA[Value range which can be used for share definition
 in <a href="vim.SharesInfo.html#shares">shares</a>]]>
      </description-html>
      </property>

            <property name="defaultLevel" type-id-ref="vim.SharesInfo.Level"
      vmodl-name="defaultLevel"
      >
      <description-html>
         <![CDATA[Default value for <a href="vim.SharesInfo.html#level">level</a>]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualDiskLocalPMemBackingInfo"
      type-id="vim.vm.device.VirtualDisk.LocalPMemBackingInfo"
      vmodl-name="vim.vm.device.VirtualDisk.LocalPMemBackingInfo"
      enclosing-type-id-ref="vim.vm.device.VirtualDisk"
      version-id-ref="vim.version.version12"
      base-type-id="vim.vm.device.VirtualDevice.FileBackingInfo"
      >
      <description-html>
         <![CDATA[This data object type contains information about backing a virtual disk
  using non-volatile memory technologies (persistent memory).
  Supported for ESX Server 6.5 and later.]]>
      </description-html>
            <property name="diskMode" type-id-ref="java.lang.String"
      vmodl-name="diskMode"
      >
      <description-html>
         <![CDATA[The disk persistence mode.<br>See <a href="vim.vm.device.VirtualDiskOption.DiskMode.html">VirtualDiskMode</a><br>]]>
      </description-html>
      </property>

            <property name="uuid" type-id-ref="java.lang.String"
      vmodl-name="uuid"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Disk UUID for the virtual disk, if available.]]>
      </description-html>
      </property>

            <property name="volumeUUID" type-id-ref="java.lang.String"
      vmodl-name="volumeUUID"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Persistent memory volume UUID - UUID which associates this
 virtual disk with a specific host.  This is read only property.<br>See <a href="vim.host.PersistentMemoryInfo.html#volumeUUID">volumeUUID</a><br>]]>
      </description-html>
      </property>

            <property name="contentId" type-id-ref="java.lang.String"
      vmodl-name="contentId"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Content ID of the virtual disk file, if available.
 <p>
 A content ID indicates the logical contents of the disk backing and
 its parents.
 <p>
 This property is only guaranteed to be up to date if this disk backing
 is not currently being written to by any virtual machine.
 <p>
 The only supported operation is comparing if two content IDs are equal
 or not.  The guarantee provided by the content ID is that if two disk
 backings have the same content ID and are not currently being written
 to, then reads issued from the guest operating system to those disk
 backings will return the same data.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="RetrieveVStorageObjSpec"
      type-id="vim.vslm.vcenter.RetrieveVStorageObjSpec"
      vmodl-name="vim.vslm.vcenter.RetrieveVStorageObjSpec"
      version-id-ref="vim.version.version12"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object is a pair of the virtural storage object id and
 its datastore.]]>
      </description-html>
            <property name="id" type-id-ref="vim.vslm.ID"
      vmodl-name="id"
      >
      <description-html>
         <![CDATA[ID of this virtual storage object.]]>
      </description-html>
      </property>

            <property name="datastore" type-id-ref="vim.Datastore"
      vmodl-name="datastore"
      >
      <description-html>
         <![CDATA[Datastore where the object is located.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="TraversalSpec"
      type-id="vmodl.query.PropertyCollector.TraversalSpec"
      vmodl-name="vmodl.query.PropertyCollector.TraversalSpec"
      enclosing-type-id-ref="vmodl.query.PropertyCollector"
      version-id-ref="vmodl.query.version.version1"
      base-type-id="vmodl.query.PropertyCollector.SelectionSpec"
      >
      <description-html>
         <![CDATA[The <a href="vmodl.query.PropertyCollector.TraversalSpec.html">TraversalSpec</a> data object type specifies
  how to derive a new set of objects to add to the filter.

  <p> It specifies a property path whose value is either another managed
  object or an array of managed objects included in the set of objects for
  consideration.  This data object can also be named, using the "name"
  field in the base type.]]>
      </description-html>
            <property name="type" type-id-ref="vmodl.TypeName"
      vmodl-name="type"
      >
      <description-html>
         <![CDATA[Name of the object type containing the property.]]>
      </description-html>
      </property>

            <property name="path" type-id-ref="vmodl.PropertyPath"
      vmodl-name="path"
      >
      <description-html>
         <![CDATA[Name of the property to use in order to select additional objects.]]>
      </description-html>
      </property>

            <property name="skip" type-id-ref="BOOLEAN"
      vmodl-name="skip"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Flag to indicate whether or not to filter the object in the "path"
 field.]]>
      </description-html>
      </property>

            <property name="selectSet" type-id-ref="vmodl.query.PropertyCollector.SelectionSpec"
      vmodl-name="selectSet"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Optional set of selections to specify additional objects to filter.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ClusterDasConfigInfo"
      type-id="vim.cluster.DasConfigInfo"
      vmodl-name="vim.cluster.DasConfigInfo"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The <a href="vim.cluster.DasConfigInfo.html">ClusterDasConfigInfo</a> data object contains configuration data
  about the HA service on a cluster.
  <p>
  All fields are optional. If you set the <code>modify</code>
  parameter to <code>true</code> when you call
  <a href="vim.ComputeResource.html#reconfigureEx">ReconfigureComputeResource_Task</a>, an unset property has no effect
  on the existing property value in the cluster configuration on the Server.
  If you set the <code>modify</code> parameter to <code>false</code> when you
  reconfigure a cluster, the cluster configuration is reverted to the default
  values, then the new configuration values are applied.]]>
      </description-html>
            <property name="enabled" type-id-ref="BOOLEAN"
      vmodl-name="enabled"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Flag to indicate whether or not vSphere HA feature is enabled.]]>
      </description-html>
      </property>

            <property name="vmMonitoring" type-id-ref="java.lang.String"
      vmodl-name="vmMonitoring"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Level of HA Virtual Machine Health Monitoring Service.
  You can monitor both guest and application heartbeats, guest heartbeats only,
  or you can disable the service. See <a href="vim.cluster.DasConfigInfo.VmMonitoringState.html">ClusterDasConfigInfoVmMonitoringState</a>.
  The default value is DasConfigInfo.VmMonitoringState#vmMonitoringDisabled.
 <p>
 The Service level specified for the cluster determines
 the possible monitoring settings that you can use for individual virtual machines.
 See <a href="vim.cluster.VmToolsMonitoringSettings.html">ClusterVmToolsMonitoringSettings</a>.<a href="vim.cluster.VmToolsMonitoringSettings.html#vmMonitoring">vmMonitoring</a>.]]>
      </description-html>
      </property>

            <property name="hostMonitoring" type-id-ref="java.lang.String"
      vmodl-name="hostMonitoring"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Determines whether HA restarts virtual machines after a host fails.
  The default value is
  <a href="vim.cluster.DasConfigInfo.ServiceState.html">ClusterDasConfigInfoServiceState</a>.<a href="vim.cluster.DasConfigInfo.html#enabled">enabled</a>.
  This property is meaningful only when
  <a href="vim.cluster.DasConfigInfo.html">ClusterDasConfigInfo</a>.<a href="vim.cluster.DasConfigInfo.html#enabled">enabled</a> is <code>true</code>.
  <p>
  When <code>hostMonitoring</code> is
  <a href="vim.cluster.DasConfigInfo.html#enabled">enabled</a>, HA restarts virtual machines
  after a host fails.
  <p>
  When <code>hostMonitoring</code> is
  DasConfigInfo.ServiceState#disabled, HA does not restart
  virtual machines after a host fails.
  The status of Host Monitoring does not affect other services such
  as virtual machine Health Monitoring or Fault Tolerance.
  The rest of the cluster operations follow normal processing.
  No configuration information is lost and re-enabling the service
  is a quick operation.]]>
      </description-html>
      </property>

            <property name="vmComponentProtecting" type-id-ref="java.lang.String"
      vmodl-name="vmComponentProtecting"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[This property indicates if vSphere HA VM Component Protection service
  is enabled. The default value is DasConfigInfo.ServiceState#disabled.
  <p>
  When <code>vmComponentProtecting</code> is set to
  DasConfigInfo.ServiceState#disabled, reaction to all types of VM
  component failures is disabled.
  <p>
  When <code>vmComponentProtecting</code> is set to
  <a href="vim.cluster.DasConfigInfo.html#enabled">enabled</a>, VM Component Protection service
  will detect and react to component failures. The actual reaction is determined
  by <a href="vim.cluster.VmComponentProtectionSettings.html">ClusterVmComponentProtectionSettings</a> which is referenced by both cluster
  level configuration (<a href="vim.cluster.DasConfigInfo.html#defaultVmSettings">defaultVmSettings</a>) and per-VM
  override <a href="vim.cluster.ConfigInfoEx.html#dasVmConfig">dasVmConfig</a>.]]>
      </description-html>
      </property>

            <property name="failoverLevel" type-id-ref="INT"
      vmodl-name="failoverLevel"
      is-deprecated="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Configured failover level. This is the number of physical host failures
  that can be tolerated without impacting the ability to satisfy the
  minimums for all running virtual machines. Acceptable values range from one to
  four.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 4.0, use
  <a href="vim.cluster.FailoverLevelAdmissionControlPolicy.html">ClusterFailoverLevelAdmissionControlPolicy</a> to set
  <a href="vim.cluster.DasConfigInfo.html#admissionControlPolicy">admissionControlPolicy</a>.]]>
      </deprecated-html>
      </property>

            <property name="admissionControlPolicy" type-id-ref="vim.cluster.DasAdmissionControlPolicy"
      vmodl-name="admissionControlPolicy"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Virtual machine admission control policy for vSphere HA.
 The policies specify resource availability for failover support.
 <ul>
 <li>Failover host admission policy
     <a href="vim.cluster.FailoverHostAdmissionControlPolicy.html">ClusterFailoverHostAdmissionControlPolicy</a> -
     specify one or more dedicated failover hosts.</li>
 <li>Failover level policy
     <a href="vim.cluster.FailoverLevelAdmissionControlPolicy.html">ClusterFailoverLevelAdmissionControlPolicy</a> -
     the limit of host failures for which resources are reserved.
     When you use the failover level policy,
     HA partitions resources into slots. A slot represents the minimum
     CPU and memory resources that are required to support
     any powered on virtual machine in the cluster.
     To retrieve information about partitioned resources, use the
     <a href="vim.ClusterComputeResource.html#retrieveDasAdvancedRuntimeInfo">RetrieveDasAdvancedRuntimeInfo</a>
     method. </li>
 <li>Resources admission policy
     <a href="vim.cluster.FailoverResourcesAdmissionControlPolicy.html">ClusterFailoverResourcesAdmissionControlPolicy</a> -
     CPU and memory resources reserved for failover support.
     When you use the resources policy, you can reserve
     a percentage of the aggregate cluster resource for failover.
     </li>
 </ul>]]>
      </description-html>
      </property>

            <property name="admissionControlEnabled" type-id-ref="BOOLEAN"
      vmodl-name="admissionControlEnabled"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Flag that determines whether strict admission control is enabled.
  When you use admission control, the following operations are
  prevented, if doing so would violate the <a href="vim.cluster.DasConfigInfo.html#admissionControlPolicy">admissionControlPolicy</a>.
  <ul>
  <li>Powering on a virtual machine in the cluster.</li>
  <li>Migrating a virtual machine into the cluster.</li>
  <li>Increasing the CPU or memory reservation of powered-on
      virtual machines in the cluster.</li>
  </ul>
  <p>
  With admission control disabled, there is no assurance that
  all virtual machines in the HA cluster can be restarted after
  a host failure. VMware recommends that you do not disable
  admission control, but you might need to do so temporarily,
  for the following reasons:
  <ul>
  <li>If you need to violate the failover constraints when there
      are not enough resources to support them (for example,
      if you are placing hosts in standby mode to test them
      for use with DPM).
  </li>
  <li>If an automated process needs to take actions that might
      temporarily violate the failover constraints (for example,
      as part of an upgrade directed by VMware Update Manager).
  </li>
  <li>If you need to perform testing or maintenance operations.</li>
  </ul>]]>
      </description-html>
      </property>

            <property name="defaultVmSettings" type-id-ref="vim.cluster.DasVmSettings"
      vmodl-name="defaultVmSettings"
      version-id-ref="vim.version.version2"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Cluster-wide defaults for virtual machine HA settings.
  When a virtual machine has no HA configuration
  (<a href="vim.cluster.DasVmConfigSpec.html">ClusterDasVmConfigSpec</a>), it uses the values
  specified here.]]>
      </description-html>
      </property>

            <property name="option" type-id-ref="vim.option.OptionValue"
      vmodl-name="option"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Advanced settings.]]>
      </description-html>
      </property>

            <property name="heartbeatDatastore" type-id-ref="vim.Datastore"
      vmodl-name="heartbeatDatastore"
      version-id-ref="vim.version.version7"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The list of preferred datastores to use for storage heartbeating.
 Each of the specified datastores should be active and mounted
 by more than one host. There is no limit on the number of specified
 datastores and no priority among them.
 The specified datastores will replace those previously specified and
 an empty list will delete all such earlier specified ones.
 <p>
 vCenter Server chooses the heartbeat datastores for a host from the
 set specified by <a href="vim.cluster.DasConfigInfo.html#hBDatastoreCandidatePolicy">hBDatastoreCandidatePolicy</a>.
 The choice is made based on datastore connectivity and storage array
 redundancy (in case of VMFS).
 <p>
 The final set of selected heartbeat datastores is reported via
 <a href="vim.cluster.DasAdvancedRuntimeInfo.html#heartbeatDatastoreInfo">heartbeatDatastoreInfo</a>.]]>
      </description-html>
      </property>

            <property name="hBDatastoreCandidatePolicy" type-id-ref="java.lang.String"
      vmodl-name="hBDatastoreCandidatePolicy"
      version-id-ref="vim.version.version7"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The policy on what datastores will be used by vCenter Server to choose
 heartbeat datastores.
 See <a href="vim.cluster.DasConfigInfo.HBDatastoreCandidate.html">ClusterDasConfigInfoHBDatastoreCandidate</a> for all options.
 The default value is
 DasConfigInfo.HBDatastoreCandidate#allFeasibleDsWithUserPreference.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.cluster.DasConfigInfo.ServiceState</nested-type-id-ref>
      <nested-type-id-ref>vim.cluster.DasConfigInfo.VmMonitoringState</nested-type-id-ref>
      <nested-type-id-ref>vim.cluster.DasConfigInfo.HBDatastoreCandidate</nested-type-id-ref>
   </data-object>
   <data-object name="UserPasswordChanged"
      type-id="vim.event.UserPasswordChanged"
      vmodl-name="vim.event.UserPasswordChanged"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.HostEvent"
      >
      <description-html>
         <![CDATA[This event records that a user password changed.]]>
      </description-html>
            <property name="userLogin" type-id-ref="java.lang.String"
      vmodl-name="userLogin"
      >
      </property>

   </data-object>
   <data-object name="VmSnapshotFileInfo"
      type-id="vim.host.DatastoreBrowser.VmSnapshotInfo"
      vmodl-name="vim.host.DatastoreBrowser.VmSnapshotInfo"
      enclosing-type-id-ref="vim.host.DatastoreBrowser"
      version-id-ref="vim.version.version1"
      base-type-id="vim.host.DatastoreBrowser.FileInfo"
      >
      <description-html>
         <![CDATA[This data object type describes a file that is a virtual disk snapshot file.]]>
      </description-html>
   </data-object>
   <data-object name="VmBeingDeployedEvent"
      type-id="vim.event.VmBeingDeployedEvent"
      vmodl-name="vim.event.VmBeingDeployedEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.VmEvent"
      >
      <description-html>
         <![CDATA[This event records a virtual machine being deployed from a template.]]>
      </description-html>
            <property name="srcTemplate" type-id-ref="vim.event.VmEventArgument"
      vmodl-name="srcTemplate"
      >
      <description-html>
         <![CDATA[The template object from which the virtual machine is being deployed.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VmfsDatastoreMultipleExtentOption"
      type-id="vim.host.VmfsDatastoreOption.MultipleExtentInfo"
      vmodl-name="vim.host.VmfsDatastoreOption.MultipleExtentInfo"
      enclosing-type-id-ref="vim.host.VmfsDatastoreOption"
      version-id-ref="vim.version.version1"
      base-type-id="vim.host.VmfsDatastoreOption.Info"
      >
      <description-html>
         <![CDATA[Datastore addition policy to use multiple extents on the disk for a VMFS
  datastore.  Multiple extents implies that more than one disk partition
  will be created on the disk for creating or increasing the capacity of a
  VMFS datastore.
  Multiple extents are needed when unpartitioned space is fragmented in the
  existing partition layout of the disk.]]>
      </description-html>
            <property name="vmfsExtent" type-id-ref="vim.host.DiskPartitionInfo.BlockRange"
      vmodl-name="vmfsExtent"
      is-array="true"
      >
      <description-html>
         <![CDATA[The block ranges to be used as extents in a VMFS datastore.  The first
  block range will be the head partition.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualMachineDeviceRuntimeInfoVirtualEthernetCardRuntimeState"
      type-id="vim.vm.DeviceRuntimeInfo.VirtualEthernetCardRuntimeState"
      vmodl-name="vim.vm.DeviceRuntimeInfo.VirtualEthernetCardRuntimeState"
      enclosing-type-id-ref="vim.vm.DeviceRuntimeInfo"
      version-id-ref="vim.version.version6"
      base-type-id="vim.vm.DeviceRuntimeInfo.DeviceRuntimeState"
      >
      <description-html>
         <![CDATA[Runtime state of a virtual ethernet card device.]]>
      </description-html>
            <property name="vmDirectPathGen2Active" type-id-ref="BOOLEAN"
      vmodl-name="vmDirectPathGen2Active"
      >
      <description-html>
         <![CDATA[Flag to indicate whether VMDirectPath Gen 2 is active on this device.
  If false, the reason(s) for inactivity will be provided in one or
  more of <a href="vim.vm.DeviceRuntimeInfo.VirtualEthernetCardRuntimeState.html#vmDirectPathGen2InactiveReasonVm">vmDirectPathGen2InactiveReasonVm</a>,
  <a href="vim.vm.DeviceRuntimeInfo.VirtualEthernetCardRuntimeState.html#vmDirectPathGen2InactiveReasonOther">vmDirectPathGen2InactiveReasonOther</a>,
  and <a href="vim.vm.DeviceRuntimeInfo.VirtualEthernetCardRuntimeState.html#vmDirectPathGen2InactiveReasonExtended">vmDirectPathGen2InactiveReasonExtended</a>.]]>
      </description-html>
      </property>

            <property name="vmDirectPathGen2InactiveReasonVm" type-id-ref="java.lang.String"
      vmodl-name="vmDirectPathGen2InactiveReasonVm"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[If <a href="vim.vm.DeviceRuntimeInfo.VirtualEthernetCardRuntimeState.html#vmDirectPathGen2Active">vmDirectPathGen2Active</a> is false, this array will be
  populated with reasons for the inactivity that are related to virtual
  machine state or configuration (chosen from
  VmDirectPathGen2InactiveReasonVm). Other reasons for
  inactivity will be provided in
  <a href="vim.vm.DeviceRuntimeInfo.VirtualEthernetCardRuntimeState.html#vmDirectPathGen2InactiveReasonOther">vmDirectPathGen2InactiveReasonOther</a>. If there is a reason
  for inactivity that cannot be described by the available constants,
  <a href="vim.vm.DeviceRuntimeInfo.VirtualEthernetCardRuntimeState.html#vmDirectPathGen2InactiveReasonExtended">vmDirectPathGen2InactiveReasonExtended</a> will be populated
  with an additional explanation provided by the platform.
  <p>
  Note that this list of reasons is not guaranteed to be exhaustive.]]>
      </description-html>
      </property>

            <property name="vmDirectPathGen2InactiveReasonOther" type-id-ref="java.lang.String"
      vmodl-name="vmDirectPathGen2InactiveReasonOther"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[If <a href="vim.vm.DeviceRuntimeInfo.VirtualEthernetCardRuntimeState.html#vmDirectPathGen2Active">vmDirectPathGen2Active</a> is false, this array will be
  populated with reasons for the inactivity that are not related to
  virtual machine state or configuration (chosen from
  VmDirectPathGen2InactiveReasonOther). Virtual machine
  related reasons for inactivity will be provided in
  <a href="vim.vm.DeviceRuntimeInfo.VirtualEthernetCardRuntimeState.html#vmDirectPathGen2InactiveReasonVm">vmDirectPathGen2InactiveReasonVm</a>. If there is a reason
  for inactivity that cannot be described by the available constants,
  <a href="vim.vm.DeviceRuntimeInfo.VirtualEthernetCardRuntimeState.html#vmDirectPathGen2InactiveReasonExtended">vmDirectPathGen2InactiveReasonExtended</a> will be populated
  with an additional explanation provided by the platform.
  <p>
  Note that this list of reasons is not guaranteed to be exhaustive.<br>See <a href="vim.host.Capability.html#vmDirectPathGen2Supported">vmDirectPathGen2Supported</a><br>]]>
      </description-html>
      </property>

            <property name="vmDirectPathGen2InactiveReasonExtended" type-id-ref="java.lang.String"
      vmodl-name="vmDirectPathGen2InactiveReasonExtended"
      is-optional="true"
      >
      <description-html>
         <![CDATA[If <a href="vim.vm.DeviceRuntimeInfo.VirtualEthernetCardRuntimeState.html#vmDirectPathGen2Active">vmDirectPathGen2Active</a> is false, this property may
  contain an explanation provided by the platform, beyond the reasons
  (if any) enumerated in <a href="vim.vm.DeviceRuntimeInfo.VirtualEthernetCardRuntimeState.html#vmDirectPathGen2InactiveReasonVm">vmDirectPathGen2InactiveReasonVm</a>
  and/or <a href="vim.vm.DeviceRuntimeInfo.VirtualEthernetCardRuntimeState.html#vmDirectPathGen2InactiveReasonOther">vmDirectPathGen2InactiveReasonOther</a>.]]>
      </description-html>
      </property>

            <property name="reservationStatus" type-id-ref="java.lang.String"
      vmodl-name="reservationStatus"
      version-id-ref="vim.version.version9"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The status indicating whether network reservation requirement is violated
 or not on the virtual network adapter. See <a href="vim.ManagedEntity.Status.html">ManagedEntityStatus</a>
 for possible values.
 <p>
 vim.ManagedEntity.Status#red indicates that reservation specified on the virtual
 network adapter is not being fulfilled. This can happen if the reservation requested is
 greater than the available capacity reserved for virtual machine traffic on the host.
 <p>
 vim.ManagedEntity.Status#green indicates that the reservation specified on the
 virtual network adapter is being fulfilled.]]>
      </description-html>
      </property>

            <property name="attachmentStatus" type-id-ref="java.lang.String"
      vmodl-name="attachmentStatus"
      version-id-ref="vim.version.version12"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The status indicating the state of virtual network adapter's attachment
 to an opaque network.
 See <a href="vim.ManagedEntity.Status.html">ManagedEntityStatus</a> for possible values.
 <p>
 vim.ManagedEntity.Status#red indicates that the network adapter
 is not yet successfully attached to opaque network. This can happen if
 corresponding attachment port is missing in the kernel.
 <p>
 vim.ManagedEntity.Status#green indicates that the network
 adapater is successfully attached to opaque network.]]>
      </description-html>
      </property>

            <property name="featureRequirement" type-id-ref="vim.vm.FeatureRequirement"
      vmodl-name="featureRequirement"
      version-id-ref="vim.version.version12"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[These network adapter requirements must have equivalent capabilities
  on the virtual switch in order to power on or migrate to the host.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.vm.DeviceRuntimeInfo.VirtualEthernetCardRuntimeState.VmDirectPathGen2InactiveReasonVm</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.DeviceRuntimeInfo.VirtualEthernetCardRuntimeState.VmDirectPathGen2InactiveReasonOther</nested-type-id-ref>
   </data-object>
   <data-object name="PermissionRemovedEvent"
      type-id="vim.event.PermissionRemovedEvent"
      vmodl-name="vim.event.PermissionRemovedEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.PermissionEvent"
      >
      <description-html>
         <![CDATA[This event records the removal of a permission.]]>
      </description-html>
   </data-object>
   <data-object name="VmCloneEvent"
      type-id="vim.event.VmCloneEvent"
      vmodl-name="vim.event.VmCloneEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.VmEvent"
      >
      <description-html>
         <![CDATA[The is the base event for all clone operations.]]>
      </description-html>
   </data-object>
   <data-object name="IScsiBootFailureEvent"
      type-id="vim.event.iScsiBootFailureEvent"
      vmodl-name="vim.event.iScsiBootFailureEvent"
      version-id-ref="vim.version.version6"
      base-type-id="vim.event.HostEvent"
      >
      <description-html>
         <![CDATA[Could not boot from iScsi.]]>
      </description-html>
   </data-object>
   <data-object name="ComputeResourceEventArgument"
      type-id="vim.event.ComputeResourceEventArgument"
      vmodl-name="vim.event.ComputeResourceEventArgument"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.EntityEventArgument"
      >
      <description-html>
         <![CDATA[The event argument is a ComputeResource object.]]>
      </description-html>
            <property name="computeResource" type-id-ref="vim.ComputeResource"
      vmodl-name="computeResource"
      >
      <description-html>
         <![CDATA[The ComputeResource object.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="IscsiStatus"
      type-id="vim.host.IscsiManager.IscsiStatus"
      vmodl-name="vim.host.IscsiManager.IscsiStatus"
      enclosing-type-id-ref="vim.host.IscsiManager"
      version-id-ref="vim.version.version7"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The IscsiStatus data object describes the
  status of an operation.]]>
      </description-html>
            <property name="reason" type-id-ref="vmodl.LocalizedMethodFault"
      vmodl-name="reason"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of failure reason and associated remedy.

  An array of fault codes associated with the failure. The fault itself
  will provide an indication of the actual failure code and
  <a href="vmodl.MethodFault.html#faultMessage">faultMessage</a> will indicate the remedy that
  needs to be taken to correct the failure.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VsanPolicySatisfiability"
      type-id="vim.host.VsanInternalSystem.PolicySatisfiability"
      vmodl-name="vim.host.VsanInternalSystem.PolicySatisfiability"
      enclosing-type-id-ref="vim.host.VsanInternalSystem"
      version-id-ref="vim.version.version9"
      internal-before-version-id-ref="vim.version.version10"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[PolicySatisfiablity --

    Structure to describe whether a policy can be satisfied.]]>
      </description-html>
            <property name="uuid" type-id-ref="java.lang.String"
      vmodl-name="uuid"
      is-optional="true"
      >
      <description-html>
         <![CDATA[UUID of the object.]]>
      </description-html>
      </property>

            <property name="isSatisfiable" type-id-ref="BOOLEAN"
      vmodl-name="isSatisfiable"
      >
      <description-html>
         <![CDATA[Can the policy be satisfied given the assumptions of the API that
 queried satisfiability.<br>See vim.host.VsanInternalSystem#reconfigurationSatisfiable(PolicyChangeBatch[]]]>
      </description-html>
      </property>

            <property name="reason" type-id-ref="vmodl.LocalizableMessage"
      vmodl-name="reason"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Reason for not being able to satisfy the policy; This is unset if
 policy can be satisfied.]]>
      </description-html>
      </property>

            <property name="cost" type-id-ref="vim.host.VsanInternalSystem.PolicyCost"
      vmodl-name="cost"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Cost of satisfying the new policy; This is unset if policy cannot be
 satisfied.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ComplianceFailure"
      type-id="vim.profile.ComplianceResult.ComplianceFailure"
      vmodl-name="vim.profile.ComplianceResult.ComplianceFailure"
      enclosing-type-id-ref="vim.profile.ComplianceResult"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
            <property name="failureType" type-id-ref="java.lang.String"
      vmodl-name="failureType"
      >
      <description-html>
         <![CDATA[String uniquely identifying the failure.]]>
      </description-html>
      </property>

            <property name="message" type-id-ref="vmodl.LocalizableMessage"
      vmodl-name="message"
      >
      <description-html>
         <![CDATA[Message which describes the compliance failures

 message.key serves as a key to the localized
 message catalog.]]>
      </description-html>
      </property>

            <property name="expressionName" type-id-ref="java.lang.String"
      vmodl-name="expressionName"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Name of the Expression which generated the ComplianceFailure]]>
      </description-html>
      </property>

            <property name="failureValues" type-id-ref="vim.profile.ComplianceResult.ComplianceFailure.ComplianceFailureValues"
      vmodl-name="failureValues"
      version-id-ref="vim.version.version11"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[If complianceStatus is non-compliant, failureValues will
 contain values of the non-compliant fields on the host and
 in the profile.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.profile.ComplianceResult.ComplianceFailure.ComplianceFailureValues</nested-type-id-ref>
   </data-object>
   <data-object name="CryptoManagerKmipServerStatus"
      type-id="vim.encryption.CryptoManagerKmip.ServerStatus"
      vmodl-name="vim.encryption.CryptoManagerKmip.ServerStatus"
      enclosing-type-id-ref="vim.encryption.CryptoManagerKmip"
      version-id-ref="vim.version.version11"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Status of a KMIP server.]]>
      </description-html>
            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      >
      <description-html>
         <![CDATA[Name of the KMIP server.]]>
      </description-html>
      </property>

            <property name="status" type-id-ref="vim.ManagedEntity.Status"
      vmodl-name="status"
      >
      <description-html>
         <![CDATA[KMIP server status.]]>
      </description-html>
      </property>

            <property name="connectionStatus" type-id-ref="java.lang.String"
      vmodl-name="connectionStatus"
      >
      <description-html>
         <![CDATA[KMIP server connection status description.]]>
      </description-html>
      </property>

            <property name="certInfo" type-id-ref="vim.encryption.CryptoManagerKmip.CertificateInfo"
      vmodl-name="certInfo"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The basic information about the KMIP server's certificate.]]>
      </description-html>
      </property>

            <property name="clientTrustServer" type-id-ref="BOOLEAN"
      vmodl-name="clientTrustServer"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Whether this KMS server is trusted by local Kmip client.]]>
      </description-html>
      </property>

            <property name="serverTrustClient" type-id-ref="BOOLEAN"
      vmodl-name="serverTrustClient"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Whether this KMS server trusts the local Kmip client.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VimAccountPasswordChangedEvent"
      type-id="vim.event.VimAccountPasswordChangedEvent"
      vmodl-name="vim.event.VimAccountPasswordChangedEvent"
      version-id-ref="vim.version.version2"
      base-type-id="vim.event.HostEvent"
      >
      <description-html>
         <![CDATA[Password for the Vim account user on the host has been changed.
 This is an account created by VirtualCenter and used to manage the host.]]>
      </description-html>
   </data-object>
   <data-object name="PlacementRankSpec"
      type-id="vim.storageDrs.PlacementRankSpec"
      vmodl-name="vim.storageDrs.PlacementRankSpec"
      version-id-ref="vim.version.version10"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[PlacementRankSpec encapsulates all of the inputs passed to
   the <a href="vim.StorageResourceManager.html#rankForPlacement">RankForPlacement</a> method.
   <p>]]>
      </description-html>
            <property name="specs" type-id-ref="vim.cluster.PlacementSpec"
      vmodl-name="specs"
      is-array="true"
      >
      <description-html>
         <![CDATA[List of VM placement specifications for ranking clusters]]>
      </description-html>
      </property>

            <property name="clusters" type-id-ref="vim.ClusterComputeResource"
      vmodl-name="clusters"
      is-array="true"
      >
      <description-html>
         <![CDATA[List of candidate clusters for the placement request]]>
      </description-html>
      </property>

            <property name="rules" type-id-ref="vim.storageDrs.PlacementAffinityRule"
      vmodl-name="rules"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of affinity rules for the placement request]]>
      </description-html>
      </property>

            <property name="placementRankByVm" type-id-ref="vim.storageDrs.PlacementRankVmSpec"
      vmodl-name="placementRankByVm"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of preferred clusters for individual VM placement requests]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DVPortgroupEvent"
      type-id="vim.event.DVPortgroupEvent"
      vmodl-name="vim.event.DVPortgroupEvent"
      version-id-ref="vim.version.version5"
      base-type-id="vim.event.Event"
      >
      <description-html>
         <![CDATA[DVPortgroup related events.]]>
      </description-html>
   </data-object>
   <data-object name="VmDasBeingResetWithScreenshotEvent"
      type-id="vim.event.VmDasBeingResetWithScreenshotEvent"
      vmodl-name="vim.event.VmDasBeingResetWithScreenshotEvent"
      version-id-ref="vim.version.version5"
      base-type-id="vim.event.VmDasBeingResetEvent"
      >
      <description-html>
         <![CDATA[This event records when a virtual machine is reset by
 HA VM Health Monitoring on hosts that support the create screenshot api]]>
      </description-html>
            <property name="screenshotFilePath" type-id-ref="java.lang.String"
      vmodl-name="screenshotFilePath"
      >
      <description-html>
         <![CDATA[The datastore path of the screenshot taken before resetting.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualMachineInstantCloneSpec"
      type-id="vim.vm.InstantCloneSpec"
      vmodl-name="vim.vm.InstantCloneSpec"
      version-id-ref="vim.version.version12"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Specification for creating an Instant Clone of a powered-on virtual machine.]]>
      </description-html>
            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      >
      <description-html>
         <![CDATA[The name of the cloned virtual machine.]]>
      </description-html>
      </property>

            <property name="location" type-id-ref="vim.vm.RelocateSpec"
      vmodl-name="location"
      >
      <description-html>
         <![CDATA[A type of <a href="vim.vm.RelocateSpec.html">VirtualMachineRelocateSpec</a> that specifies the location of
  resources the newly created virtual machine will use.
  The location might be empty or specify:
  <ul>
    <li>The folder where the virtual machine should be located. If not
        specified, the root VM folder of the source VM will be used.</li>
    <li>A datastore where the InstantCloned virtual machine will be located
        on the physical storage.</li>
    <li>A resource pool determines where compute resources will be
        available to the clone.</li>
    <li>A device change specification. The only allowed device changes
        are edits of VirtualEthernetCard and filebacked Serial/Parallel
        ports.</li>
  </ul>
  All other settings are NOT supported.]]>
      </description-html>
      </property>

            <property name="config" type-id-ref="vim.option.OptionValue"
      vmodl-name="config"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[A list of key value pairs that will be passed to the destination VM.
 These pairs should be used to provide user-defined customization to
 differentiate the destination VM from the source VM. Values will be
 queryable via destination VM's <a href="vim.vm.ConfigInfo.html#extraConfig">extraConfig</a>.]]>
      </description-html>
      </property>

            <property name="biosUuid" type-id-ref="java.lang.String"
      vmodl-name="biosUuid"
      is-optional="true"
      >
      <description-html>
         <![CDATA[128-bit SMBIOS UUID of a virtual machine represented as a hexadecimal string
  in "12345678-abcd-1234-cdef-123456789abc" format.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DatacenterCreatedEvent"
      type-id="vim.event.DatacenterCreatedEvent"
      vmodl-name="vim.event.DatacenterCreatedEvent"
      version-id-ref="vim.version.version2"
      base-type-id="vim.event.DatacenterEvent"
      >
            <property name="parent" type-id-ref="vim.event.FolderEventArgument"
      vmodl-name="parent"
      >
      <description-html>
         <![CDATA[The folder where the datacenter is created.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostBlockAdapterTargetTransport"
      type-id="vim.host.BlockAdapterTargetTransport"
      vmodl-name="vim.host.BlockAdapterTargetTransport"
      version-id-ref="vim.version.version1"
      base-type-id="vim.host.TargetTransport"
      >
      <description-html>
         <![CDATA[Block adapter transport information about a SCSI target.]]>
      </description-html>
   </data-object>
   <data-object name="HostCnxFailedTimeoutEvent"
      type-id="vim.event.HostCnxFailedTimeoutEvent"
      vmodl-name="vim.event.HostCnxFailedTimeoutEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.HostEvent"
      >
      <description-html>
         <![CDATA[This event records a failure to connect to a host
  due to a timeout on the connection attempt.]]>
      </description-html>
   </data-object>
   <data-object name="VirtualCdromPassthroughBackingOption"
      type-id="vim.vm.device.VirtualCdromOption.PassthroughBackingOption"
      vmodl-name="vim.vm.device.VirtualCdromOption.PassthroughBackingOption"
      enclosing-type-id-ref="vim.vm.device.VirtualCdromOption"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.device.VirtualDeviceOption.DeviceBackingOption"
      >
      <description-html>
         <![CDATA[The VirtualCdromOption.PassthroughBackingOption data object type
  contains the options for a pass-through CD-ROM device backing.]]>
      </description-html>
            <property name="exclusive" type-id-ref="vim.option.BoolOption"
      vmodl-name="exclusive"
      >
      <description-html>
         <![CDATA[Flag to indicate whether or not exclusive CD-ROM device access is supported.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DVSSelection"
      type-id="vim.dvs.DistributedVirtualSwitchSelection"
      vmodl-name="vim.dvs.DistributedVirtualSwitchSelection"
      version-id-ref="vim.version.version7"
      internal-before-version-id-ref="vim.version.version8"
      base-type-id="vim.SelectionSet"
      >
      <description-html>
         <![CDATA[Class to specify selection criteria of vSphere Distributed Switch.]]>
      </description-html>
            <property name="dvsUuid" type-id-ref="java.lang.String"
      vmodl-name="dvsUuid"
      >
      <description-html>
         <![CDATA[vSphere Distributed Switch uuid]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="FirewallProfileRulesetProfile"
      type-id="vim.profile.host.FirewallProfile.RulesetProfile"
      vmodl-name="vim.profile.host.FirewallProfile.RulesetProfile"
      enclosing-type-id-ref="vim.profile.host.FirewallProfile"
      version-id-ref="vim.version.version5"
      base-type-id="vim.profile.ApplyProfile"
      >
            <property name="key" type-id-ref="java.lang.String"
      vmodl-name="key"
      >
      <description-html>
         <![CDATA[Linkable identifier.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ClusterVmComponentProtectionSettings"
      type-id="vim.cluster.VmComponentProtectionSettings"
      vmodl-name="vim.cluster.VmComponentProtectionSettings"
      version-id-ref="vim.version.version10"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[vSphere HA Virtual Machine Component Protection Service settings.
  <p>
  vSphere HA Virtual Machine Component Protection Service detects
  and reacts to storage failures that do not necessarily cause a
  virtual machine to go down, but may impact the health or QoS of
  the virtual machine.
  <p>
  All fields are defined as optional. In case of a reconfiguration, fields left unset
  are not changed.]]>
      </description-html>
            <property name="vmStorageProtectionForAPD" type-id-ref="java.lang.String"
      vmodl-name="vmStorageProtectionForAPD"
      is-optional="true"
      >
      <description-html>
         <![CDATA[VM storage protection setting for storage failures categorized as All Paths
  Down (APD). APD is a condition where a storage has become inaccessible
  for unknown reasons. It only indicates loss of connectivity and does not indicate
  storage device failure or LUN removal (Permenant Device Loss or PDL). The details
  of APD and PDL are described in <a href="vim.host.MountInfo.InaccessibleReason.html">HostMountInfoInaccessibleReason</a>.
  <p>
  This property is meaningful only when vSphere HA is turned on. Valid values are
  specified by StorageVmReaction. The default value is
  StorageVmReaction#disabled for cluster setting and
  StorageVmReaction#clusterDefault for per-VM setting.
  <p>
  When an APD condition happens and the host begins timing out I/Os
  (@link vim.host.MountInfo.InaccessibleReason#AllPathsDown_Timeout}, VM Component
  Protection service will react based on the specific value of this property:
 <ul>
    <li> <b>StorageVmReaction#disabled</b>, no reaction, i.e., no
         VM failover and no event reporting for the failures.
    <li> <b>StorageVmReaction#warning</b>, service will issue events,
         alarms and/or config issues for component failures.
    <li> <b>StorageVmReaction#restartConservative</b>, service will
         terminate the impacted VMs after a preconfigured time interval
         (<a href="vim.cluster.VmComponentProtectionSettings.html#vmTerminateDelayForAPDSec">vmTerminateDelayForAPDSec</a>) if they are to be restarted.
    <li> <b>StorageVmReaction#restartAggressive</b>, service might
         terminate the impacted VMs after a preconfigured time interval
         (<a href="vim.cluster.VmComponentProtectionSettings.html#vmTerminateDelayForAPDSec">vmTerminateDelayForAPDSec</a>). In some cases, a VM is terminated
         even if it may not able to be restarted or lose Fault Tolerance redundancy.
    <li> <b>StorageVmReaction#clusterDefault</b>, service will implement
         cluster default.
 </ul>]]>
      </description-html>
      </property>

            <property name="enableAPDTimeoutForHosts" type-id-ref="BOOLEAN"
      vmodl-name="enableAPDTimeoutForHosts"
      is-optional="true"
      >
      <description-html>
         <![CDATA[This property indicates if APD timeout will be enabled for all the hosts
  in the cluster when vSphere HA is configured. The details of APD timeout are
  described in <a href="vim.host.MountInfo.InaccessibleReason.html">HostMountInfoInaccessibleReason</a>.
  <p>
  If <a href="vim.cluster.DasConfigInfo.html#vmComponentProtecting">vmComponentProtecting</a> is DasConfigInfo.ServiceState#disabled,
  the property will be ignored. Otherwise, for each host in the cluster,
  APD timeout will be enabled. Note that no change will be made for a host if it
  already had APD timeout enabled.
  <p>
  This property is meaningful only for cluster setting. It is ignored if specified at VM level.
  The default value is false if not specified.
  <p>
  Note that this property is not persisted by vSphere backend. It does not impact any cluster
  reconfiguration or host operation (such as adding a host to a cluster) that might happen later.]]>
      </description-html>
      </property>

            <property name="vmTerminateDelayForAPDSec" type-id-ref="INT"
      vmodl-name="vmTerminateDelayForAPDSec"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The time interval after an APD timeout has been declared and before VM Component
  Protection service will terminate the VM. The value only applies if
  <a href="vim.cluster.VmComponentProtectionSettings.html#vmStorageProtectionForAPD">vmStorageProtectionForAPD</a> is set to StorageVmReaction#restartConservative or
  StorageVmReaction#restartAggressive.
  <p>
  The default value is 180 seconds if not specified. To use cluster setting for a VM override,
  set to -1 in per-VM setting.]]>
      </description-html>
      </property>

            <property name="vmReactionOnAPDCleared" type-id-ref="java.lang.String"
      vmodl-name="vmReactionOnAPDCleared"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Action taken by VM Component Protection service for a powered on VM when APD
  condition clears after APD timeout.
  <p>
  This property is meaningful only when vSphere HA is turned on. Valid values are
  specified by VmReactionOnAPDCleared. The default value is
  VmReactionOnAPDCleared#none for cluster setting and
  VmReactionOnAPDCleared#useClusterDefault for per-VM setting.]]>
      </description-html>
      </property>

            <property name="vmStorageProtectionForPDL" type-id-ref="java.lang.String"
      vmodl-name="vmStorageProtectionForPDL"
      is-optional="true"
      >
      <description-html>
         <![CDATA[VM storage protection setting for storage failures categorized as Permenant Device
  Loss (PDL). PDL indicates storage device failure or LUN removal. In case of PDL,
  the failed datastore or device is unlikely to recover. The details of PDL are
  described in <a href="vim.host.MountInfo.InaccessibleReason.html">HostMountInfoInaccessibleReason</a>.
  <p>
  This property is meaningful only when vSphere HA is turned on. Valid values are
  StorageVmReaction#disabled, StorageVmReaction#warning,
  StorageVmReaction#restartAggressive and StorageVmReaction#clusterDefault.
  The default value is StorageVmReaction#disabled for cluster setting and
  StorageVmReaction#clusterDefault for per-VM setting.
  <p>
  When set to StorageVmReaction#restartAggressive, VM Component Protection service
  will immediately terminate the VMs impacted by PDL and will attempt to restart the VMs
  with best effort. When set to the other values, the behavior is the same as described for
  <a href="vim.cluster.VmComponentProtectionSettings.html#vmStorageProtectionForAPD">vmStorageProtectionForAPD</a>.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.cluster.VmComponentProtectionSettings.StorageVmReaction</nested-type-id-ref>
      <nested-type-id-ref>vim.cluster.VmComponentProtectionSettings.VmReactionOnAPDCleared</nested-type-id-ref>
   </data-object>
   <data-object name="VirtualDiskRuleSpec"
      type-id="vim.storageDrs.VirtualDiskRuleSpec"
      vmodl-name="vim.storageDrs.VirtualDiskRuleSpec"
      version-id-ref="vim.version.version12"
      base-type-id="vim.cluster.RuleInfo"
      >
      <description-html>
         <![CDATA[The set of virtual disks that are currently disabled
  <p>]]>
      </description-html>
            <property name="diskRuleType" type-id-ref="java.lang.String"
      vmodl-name="diskRuleType"
      >
      <description-html>
         <![CDATA[Type of the virtual disks rule. The set of possible values are described
 in <a href="vim.storageDrs.VirtualDiskRuleSpec.RuleType.html">VirtualDiskRuleSpecRuleType</a>]]>
      </description-html>
      </property>

            <property name="diskId" type-id-ref="INT"
      vmodl-name="diskId"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The list of virtual disks for this rule.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.storageDrs.VirtualDiskRuleSpec.RuleType</nested-type-id-ref>
   </data-object>
   <data-object name="VirtualMachineQuickStats"
      type-id="vim.vm.Summary.QuickStats"
      vmodl-name="vim.vm.Summary.QuickStats"
      enclosing-type-id-ref="vim.vm.Summary"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[A set of statistics that are typically updated with near real-time regularity.
  This data object type does not support notification, for scalability reasons.
  Therefore, changes in QuickStats do not generate property collector updates. To
  monitor statistics values, use the statistics and alarms modules instead.]]>
      </description-html>
            <property name="overallCpuUsage" type-id-ref="INT"
      vmodl-name="overallCpuUsage"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Basic CPU performance statistics, in MHz.
  Valid while the virtual machine is running.]]>
      </description-html>
      </property>

            <property name="overallCpuDemand" type-id-ref="INT"
      vmodl-name="overallCpuDemand"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Basic CPU performance statistics, in MHz.
  Valid while the virtual machine is running.]]>
      </description-html>
      </property>

            <property name="overallCpuReadiness" type-id-ref="INT"
      vmodl-name="overallCpuReadiness"
      version-id-ref="vim.version.v7_0"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Percentage of time that the virtual machine was ready, but could not
  get scheduled to run on the physical CPU.
  Valid while the virtual machine is running.]]>
      </description-html>
      </property>

            <property name="guestMemoryUsage" type-id-ref="INT"
      vmodl-name="guestMemoryUsage"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Guest memory utilization statistics, in MB. This
  is also known as active guest memory. The number
  can be between 0 and the configured memory size of
  the virtual machine. Valid while the virtual machine is
  running.]]>
      </description-html>
      </property>

            <property name="hostMemoryUsage" type-id-ref="INT"
      vmodl-name="hostMemoryUsage"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Host memory utilization statistics, in MB. This
  is also known as consumed host memory. This is between 0 and
  the configured resource limit. Valid while the virtual machine is
  running. This includes the overhead memory of the VM.]]>
      </description-html>
      </property>

            <property name="guestHeartbeatStatus" type-id-ref="vim.ManagedEntity.Status"
      vmodl-name="guestHeartbeatStatus"
      >
      <description-html>
         <![CDATA[Guest operating system heartbeat metric.
  See <a href="vim.VirtualMachine.html#guestHeartbeatStatus">GuestHeartbeatStatus</a> for a description.]]>
      </description-html>
      </property>

            <property name="distributedCpuEntitlement" type-id-ref="INT"
      vmodl-name="distributedCpuEntitlement"
      is-optional="true"
      >
      <description-html>
         <![CDATA[This is the amount of CPU resource, in MHz, that this VM is entitled to, as
  calculated by DRS. Valid only for a VM managed by DRS.]]>
      </description-html>
      </property>

            <property name="distributedMemoryEntitlement" type-id-ref="INT"
      vmodl-name="distributedMemoryEntitlement"
      is-optional="true"
      >
      <description-html>
         <![CDATA[This is the amount of memory, in MB, that this VM is entitled to, as
  calculated by DRS. Valid only for a VM managed by DRS.]]>
      </description-html>
      </property>

            <property name="staticCpuEntitlement" type-id-ref="INT"
      vmodl-name="staticCpuEntitlement"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The static CPU resource entitlement for a virtual machine. This value is
  calculated based on this virtual machine's resource reservations, shares
  and limit, and doesn't take into account current usage. This is the worst
  case CPU allocation for this virtual machine, that is, the amount of CPU
  resource this virtual machine would receive if all virtual machines running
  in the cluster went to maximum consumption. Units are MHz.]]>
      </description-html>
      </property>

            <property name="staticMemoryEntitlement" type-id-ref="INT"
      vmodl-name="staticMemoryEntitlement"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The static memory resource entitlement for a virtual machine. This value is
  calculated based on this virtual machine's resource reservations, shares
  and limit, and doesn't take into account current usage. This is the worst
  case memory allocation for this virtual machine, that is, the amount of
  memory this virtual machine would receive if all virtual machines running
  in the cluster went to maximum consumption. Units are MB.]]>
      </description-html>
      </property>

            <property name="grantedMemory" type-id-ref="INT"
      vmodl-name="grantedMemory"
      version-id-ref="vim.version.v7_0"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Amount of host physical memory that is mapped for a virtual machine,
  in MB. The number can be between 0 and the configured memory size of
  the virtual machine. Valid while the virtual machine is running.]]>
      </description-html>
      </property>

            <property name="privateMemory" type-id-ref="INT"
      vmodl-name="privateMemory"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The portion of memory, in MB, that is granted to this VM from non-shared
  host memory.]]>
      </description-html>
      </property>

            <property name="sharedMemory" type-id-ref="INT"
      vmodl-name="sharedMemory"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The portion of memory, in MB, that is granted to this VM from host memory
  that is shared between VMs.]]>
      </description-html>
      </property>

            <property name="swappedMemory" type-id-ref="INT"
      vmodl-name="swappedMemory"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The portion of memory, in MB, that is granted to this VM from the host's swap
  space. This is a sign that there is memory pressure on the host.]]>
      </description-html>
      </property>

            <property name="balloonedMemory" type-id-ref="INT"
      vmodl-name="balloonedMemory"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The size of the balloon driver in the VM, in MB. The host will inflate the
  balloon driver to reclaim physical memory from the VM.  This is a sign that
  there is memory pressure on the host.]]>
      </description-html>
      </property>

            <property name="consumedOverheadMemory" type-id-ref="INT"
      vmodl-name="consumedOverheadMemory"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The amount of consumed overhead memory, in MB, for this VM.]]>
      </description-html>
      </property>

            <property name="ftLogBandwidth" type-id-ref="INT"
      vmodl-name="ftLogBandwidth"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The network bandwidth used for logging between the
  primary and secondary fault tolerance VMs.
  The unit is kilobytes per second.]]>
      </description-html>
      </property>

            <property name="ftSecondaryLatency" type-id-ref="INT"
      vmodl-name="ftSecondaryLatency"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The amount of time in wallclock that the VCPU of the secondary fault
  tolerance VM is behind the VCPU of the primary VM.
  The unit is millisecond.]]>
      </description-html>
      </property>

            <property name="ftLatencyStatus" type-id-ref="vim.ManagedEntity.Status"
      vmodl-name="ftLatencyStatus"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The latency status of the fault tolerance VM.
  ftLatencyStatus is determined by the value of ftSecondaryLatency.
  ftLatencyStatus is:
     green,  if ftSecondaryLatency is less than or equal to 2 seconds;
     yellow, if ftSecondaryLatency is greater than 2 seconds,
             and less than or equal to 6 seconds;
     red,    if ftSecondaryLatency is greater than 6 seconds;
     gray,   if ftSecondaryLatency is unknown.]]>
      </description-html>
      </property>

            <property name="compressedMemory" type-id-ref="LONG"
      vmodl-name="compressedMemory"
      version-id-ref="vim.version.version6"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The amount of compressed memory currently consumed by VM, in Kb.]]>
      </description-html>
      </property>

            <property name="uptimeSeconds" type-id-ref="INT"
      vmodl-name="uptimeSeconds"
      version-id-ref="vim.version.version6"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The system uptime of the VM in seconds.]]>
      </description-html>
      </property>

            <property name="ssdSwappedMemory" type-id-ref="LONG"
      vmodl-name="ssdSwappedMemory"
      version-id-ref="vim.version.version7"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The amount of memory swapped to fast disk device such as
 SSD, in KB.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VmReloadFromPathEvent"
      type-id="vim.event.VmReloadFromPathEvent"
      vmodl-name="vim.event.VmReloadFromPathEvent"
      version-id-ref="vim.version.version6"
      base-type-id="vim.event.VmEvent"
      >
      <description-html>
         <![CDATA[This event records that a virtual machine was successfully reloaded from a
 new configuration path.]]>
      </description-html>
            <property name="configPath" type-id-ref="java.lang.String"
      vmodl-name="configPath"
      >
      </property>

   </data-object>
   <data-object name="VirtualMachineFeatureRequirement"
      type-id="vim.vm.FeatureRequirement"
      vmodl-name="vim.vm.FeatureRequirement"
      version-id-ref="vim.version.version8"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Feature requirement contains a key, featureName and an opaque value]]>
      </description-html>
            <property name="key" type-id-ref="java.lang.String"
      vmodl-name="key"
      >
      <description-html>
         <![CDATA[Accessor name to the feature requirement test]]>
      </description-html>
      </property>

            <property name="featureName" type-id-ref="java.lang.String"
      vmodl-name="featureName"
      >
      <description-html>
         <![CDATA[Name of the feature. Identical to the key.]]>
      </description-html>
      </property>

            <property name="value" type-id-ref="java.lang.String"
      vmodl-name="value"
      >
      <description-html>
         <![CDATA[Opaque value for the feature operation. Operation is contained
 in the value.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ScheduledTaskReconfiguredEvent"
      type-id="vim.event.ScheduledTaskReconfiguredEvent"
      vmodl-name="vim.event.ScheduledTaskReconfiguredEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.ScheduledTaskEvent"
      >
      <description-html>
         <![CDATA[This event records the reconfiguration of a scheduled task.]]>
      </description-html>
            <property name="configChanges" type-id-ref="vim.event.ChangesInfoEventArgument"
      vmodl-name="configChanges"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The configuration values changed during the reconfiguration.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="FolderBatchAddStandaloneHostsResult"
      type-id="vim.Folder.BatchAddStandaloneHostsResult"
      vmodl-name="vim.Folder.BatchAddStandaloneHostsResult"
      enclosing-type-id-ref="vim.Folder"
      version-id-ref="vim.version.version13"
      base-type-id="vmodl.DynamicData"
      >
            <property name="addedHosts" type-id-ref="vim.HostSystem"
      vmodl-name="addedHosts"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of hosts that were successfully added as standalone hosts
  to the inventory.]]>
      </description-html>
      </property>

            <property name="hostsFailedInventoryAdd" type-id-ref="vim.Folder.FailedHostResult"
      vmodl-name="hostsFailedInventoryAdd"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Contains a fault for each host that failed to add. A failed host
  will not be part of addedHosts list.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostNicTeamingPolicy"
      type-id="vim.host.NetworkPolicy.NicTeamingPolicy"
      vmodl-name="vim.host.NetworkPolicy.NicTeamingPolicy"
      enclosing-type-id-ref="vim.host.NetworkPolicy"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Policy for a network adapter team.]]>
      </description-html>
            <property name="policy" type-id-ref="java.lang.String"
      vmodl-name="policy"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Network adapter teaming policy includes failover and load balancing,
  It can be one of the following:
  <p>
  <ul>
  <li><b>loadbalance_ip</b>: route based on ip hash.
  <li><b>loadbalance_srcmac</b>: route based on source MAC hash.
  <li><b>loadbalance_srcid</b>: route based on the source of the port ID.
  <li><b>failover_explicit</b>: use explicit failover order.
  </ul>
  </p><br>See <a href="vim.host.NetCapabilities.html#nicTeamingPolicy">nicTeamingPolicy</a><br>]]>
      </description-html>
      </property>

            <property name="reversePolicy" type-id-ref="BOOLEAN"
      vmodl-name="reversePolicy"
      is-deprecated="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The flag to indicate whether or not the teaming policy is applied
  to inbound frames as well.
  For example, if the policy is explicit failover, a broadcast request goes
  through uplink1 and comes back through uplink2.  Then if the
  reverse policy is set, the frame is dropped when it is
  received from
  uplink2. This reverse policy is useful to prevent the virtual machine
  from getting reflections.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of VI API 5.1, the system default (true) will be used]]>
      </deprecated-html>
      </property>

            <property name="notifySwitches" type-id-ref="BOOLEAN"
      vmodl-name="notifySwitches"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Flag to specify whether or not to notify the physical switch
 if a link fails. If this property is true, ESX Server will
 respond to the failure by sending a RARP packet from a different
 physical adapter, causing the switch to update its cache.]]>
      </description-html>
      </property>

            <property name="rollingOrder" type-id-ref="BOOLEAN"
      vmodl-name="rollingOrder"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The flag to indicate whether or not to use a rolling policy when
 restoring links. For example, assume the explicit link order is
 (vmnic9, vmnic0), therefore vmnic9 goes down, vmnic0 comes
 up. However, when vmnic9 comes backup, if rollingOrder is set
 to be true, vmnic0 continues to be used, otherwise, vmnic9
 is restored as specified in the explicitly order.]]>
      </description-html>
      </property>

            <property name="failureCriteria" type-id-ref="vim.host.NetworkPolicy.NicFailureCriteria"
      vmodl-name="failureCriteria"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Failover detection policy for this network adapter team.
  The bridge must be BondBridge for this property to be valid.]]>
      </description-html>
      </property>

            <property name="nicOrder" type-id-ref="vim.host.NetworkPolicy.NicOrderPolicy"
      vmodl-name="nicOrder"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Failover order policy for network adapters on this switch.
  The bridge must be BondBridge for this property to be valid.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VStorageObjectAssociations"
      type-id="vim.vslm.vcenter.VStorageObjectAssociations"
      vmodl-name="vim.vslm.vcenter.VStorageObjectAssociations"
      version-id-ref="vim.version.version12"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object is a key-value pair whose key is the virtual storage
 object id, and value is the vm association information.]]>
      </description-html>
            <property name="id" type-id-ref="vim.vslm.ID"
      vmodl-name="id"
      >
      <description-html>
         <![CDATA[ID of this virtual storage object.]]>
      </description-html>
      </property>

            <property name="vmDiskAssociations" type-id-ref="vim.vslm.vcenter.VStorageObjectAssociations.VmDiskAssociations"
      vmodl-name="vmDiskAssociations"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Array of vm associations related to the virtual storage object.]]>
      </description-html>
      </property>

            <property name="fault" type-id-ref="vmodl.LocalizedMethodFault"
      vmodl-name="fault"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Received error while generating associations.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.vslm.vcenter.VStorageObjectAssociations.VmDiskAssociations</nested-type-id-ref>
   </data-object>
   <data-object name="GuestAuthAliasInfo"
      type-id="vim.vm.guest.AliasManager.GuestAuthAliasInfo"
      vmodl-name="vim.vm.guest.AliasManager.GuestAuthAliasInfo"
      enclosing-type-id-ref="vim.vm.guest.AliasManager"
      version-id-ref="vim.version.version10"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Describes a subject associated with an X.509 certificate in the alias
 store.]]>
      </description-html>
            <property name="subject" type-id-ref="vim.vm.guest.AliasManager.GuestAuthSubject"
      vmodl-name="subject"
      >
      <description-html>
         <![CDATA[The subject.]]>
      </description-html>
      </property>

            <property name="comment" type-id-ref="java.lang.String"
      vmodl-name="comment"
      >
      <description-html>
         <![CDATA[User-supplied data to describe the subject.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="NetDhcpConfigInfo"
      type-id="vim.net.DhcpConfigInfo"
      vmodl-name="vim.net.DhcpConfigInfo"
      version-id-ref="vim.version.version6"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Dynamic Host Configuration Protocol reporting for IP version 4 and version 6.]]>
      </description-html>
            <property name="ipv6" type-id-ref="vim.net.DhcpConfigInfo.DhcpOptions"
      vmodl-name="ipv6"
      is-optional="true"
      >
      <description-html>
         <![CDATA[IPv6 DHCP client settings.]]>
      </description-html>
      </property>

            <property name="ipv4" type-id-ref="vim.net.DhcpConfigInfo.DhcpOptions"
      vmodl-name="ipv4"
      is-optional="true"
      >
      <description-html>
         <![CDATA[IPv4 DHCP client settings.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.net.DhcpConfigInfo.DhcpOptions</nested-type-id-ref>
   </data-object>
   <data-object name="IpPool"
      type-id="vim.vApp.IpPool"
      vmodl-name="vim.vApp.IpPool"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Specifications of the network configuration to be used on a
  network. This is used to generate IP addresses and for self-customization
  of vApps.]]>
      </description-html>
            <property name="id" type-id-ref="INT"
      vmodl-name="id"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Unique ID, generated by the server. This is used to identify the pool in
 subsequent lookups or updates. The generated value is also returned by the <a href="vim.IpPoolManager.html#createIpPool">CreateIpPool</a> method.]]>
      </description-html>
      </property>

            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Pool name.
 <p>
 The pool name must be unique within the datacenter.
 <p>
 Any / (slash), \ (backslash), character used in this
 name element is escaped. Similarly, any % (percent) character used in
 this name element is escaped, unless it is used to start an escape
 sequence. A slash is escaped as %2F or %2f. A backslash is escaped as %5C or
 %5c, and a percent is escaped as %25.]]>
      </description-html>
      </property>

            <property name="ipv4Config" type-id-ref="vim.vApp.IpPool.IpPoolConfigInfo"
      vmodl-name="ipv4Config"
      is-optional="true"
      >
      <description-html>
         <![CDATA[IPv4 configuration.
 <p>
 This configuration is always present on the pool. To disable allocation, set the
 ipPoolEnabled flag of the config to false.]]>
      </description-html>
      </property>

            <property name="ipv6Config" type-id-ref="vim.vApp.IpPool.IpPoolConfigInfo"
      vmodl-name="ipv6Config"
      is-optional="true"
      >
      <description-html>
         <![CDATA[IPv6 configuration.
 <p>
 This configuration is always present on the pool. To disable allocation, set the
 ipPoolEnabled flag of the config to false.]]>
      </description-html>
      </property>

            <property name="dnsDomain" type-id-ref="java.lang.String"
      vmodl-name="dnsDomain"
      is-optional="true"
      >
      <description-html>
         <![CDATA[DNS Domain. For example, vmware.com. This can be an empty string if no
  domain is configured.]]>
      </description-html>
      </property>

            <property name="dnsSearchPath" type-id-ref="java.lang.String"
      vmodl-name="dnsSearchPath"
      is-optional="true"
      >
      <description-html>
         <![CDATA[DNS Search Path. For example, eng.vmware.com;vmware.com]]>
      </description-html>
      </property>

            <property name="hostPrefix" type-id-ref="java.lang.String"
      vmodl-name="hostPrefix"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Prefix for hostnames.]]>
      </description-html>
      </property>

            <property name="httpProxy" type-id-ref="java.lang.String"
      vmodl-name="httpProxy"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The HTTP proxy to use on this network, e.g., <host>:<port>]]>
      </description-html>
      </property>

            <property name="networkAssociation" type-id-ref="vim.vApp.IpPool.Association"
      vmodl-name="networkAssociation"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The networks that are associated with this IP pool]]>
      </description-html>
      </property>

            <property name="availableIpv4Addresses" type-id-ref="INT"
      vmodl-name="availableIpv4Addresses"
      version-id-ref="vim.version.version8"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The number of IPv4 addresses available for allocation.]]>
      </description-html>
      </property>

            <property name="availableIpv6Addresses" type-id-ref="INT"
      vmodl-name="availableIpv6Addresses"
      version-id-ref="vim.version.version8"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The number of IPv6 addresses available for allocation.]]>
      </description-html>
      </property>

            <property name="allocatedIpv4Addresses" type-id-ref="INT"
      vmodl-name="allocatedIpv4Addresses"
      version-id-ref="vim.version.version8"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The number of allocated IPv4 addresses.]]>
      </description-html>
      </property>

            <property name="allocatedIpv6Addresses" type-id-ref="INT"
      vmodl-name="allocatedIpv6Addresses"
      version-id-ref="vim.version.version8"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The number of allocated IPv6 addresses.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.vApp.IpPool.IpPoolConfigInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.vApp.IpPool.Association</nested-type-id-ref>
   </data-object>
   <data-object name="ElementDescription"
      type-id="vim.ElementDescription"
      vmodl-name="vim.ElementDescription"
      version-id-ref="vim.version.version1"
      base-type-id="vim.Description"
      >
      <description-html>
         <![CDATA[Static strings used for describing an object model string or enumeration.]]>
      </description-html>
            <property name="key" type-id-ref="java.lang.String"
      vmodl-name="key"
      >
      <description-html>
         <![CDATA[Enumeration or literal ID being described.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VsanHostConfigInfoClusterInfo"
      type-id="vim.vsan.host.ConfigInfo.ClusterInfo"
      vmodl-name="vim.vsan.host.ConfigInfo.ClusterInfo"
      enclosing-type-id-ref="vim.vsan.host.ConfigInfo"
      version-id-ref="vim.version.version9"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Host-local VSAN cluster configuration.  This data object is used
 both for specifying and retrieving cluster configuration for a
 host participating in the VSAN service.]]>
      </description-html>
            <property name="uuid" type-id-ref="java.lang.String"
      vmodl-name="uuid"
      is-optional="true"
      >
      <description-html>
         <![CDATA[VSAN service cluster UUID, in the string form
 "nnnnnnnn-nnnn-nnnn-nnnn-nnnnnnnnnnnn", where n are hexadecimal
 digits.

 If provided while enabling the VSAN service, this value will be
 used for the service cluster UUID.  If omitted when enabling the
 VSAN service, a suitable UUID will be generated by the platform.

 This is a read-only value while the VSAN service is enabled.]]>
      </description-html>
      </property>

            <property name="nodeUuid" type-id-ref="java.lang.String"
      vmodl-name="nodeUuid"
      is-optional="true"
      >
      <description-html>
         <![CDATA[VSAN node UUID for this host.

 This is a read-only value which is populated upon enabling of the
 VSAN service.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostInternetScsiHbaIPProperties"
      type-id="vim.host.InternetScsiHba.IPProperties"
      vmodl-name="vim.host.InternetScsiHba.IPProperties"
      enclosing-type-id-ref="vim.host.InternetScsiHba"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The IP properties for the host bus adapter]]>
      </description-html>
            <property name="mac" type-id-ref="java.lang.String"
      vmodl-name="mac"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The MAC address.]]>
      </description-html>
      </property>

            <property name="address" type-id-ref="java.lang.String"
      vmodl-name="address"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The current IPv4 address.]]>
      </description-html>
      </property>

            <property name="dhcpConfigurationEnabled" type-id-ref="BOOLEAN"
      vmodl-name="dhcpConfigurationEnabled"
      >
      <description-html>
         <![CDATA[True if the host bus adapter fetches its IP using DHCP.]]>
      </description-html>
      </property>

            <property name="subnetMask" type-id-ref="java.lang.String"
      vmodl-name="subnetMask"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The current IPv4 subnet mask.]]>
      </description-html>
      </property>

            <property name="defaultGateway" type-id-ref="java.lang.String"
      vmodl-name="defaultGateway"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The current IPv4 gateway.]]>
      </description-html>
      </property>

            <property name="primaryDnsServerAddress" type-id-ref="java.lang.String"
      vmodl-name="primaryDnsServerAddress"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The current primary DNS address.]]>
      </description-html>
      </property>

            <property name="alternateDnsServerAddress" type-id-ref="java.lang.String"
      vmodl-name="alternateDnsServerAddress"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The current secondary DNS address.]]>
      </description-html>
      </property>

            <property name="ipv6Address" type-id-ref="java.lang.String"
      vmodl-name="ipv6Address"
      version-id-ref="vim.version.version5"
      is-deprecated="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The current IPv6 address.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[Since vSphere API 5.5 use {]]>
      </deprecated-html>
      </property>

            <property name="ipv6SubnetMask" type-id-ref="java.lang.String"
      vmodl-name="ipv6SubnetMask"
      version-id-ref="vim.version.version5"
      is-deprecated="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The current IPv6 subnet mask.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[Since vSphere API 5.5 use {]]>
      </deprecated-html>
      </property>

            <property name="ipv6DefaultGateway" type-id-ref="java.lang.String"
      vmodl-name="ipv6DefaultGateway"
      version-id-ref="vim.version.version5"
      is-deprecated="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The current IPv6 default gateway.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[Since vSphere API 5.5 use {]]>
      </deprecated-html>
      </property>

            <property name="arpRedirectEnabled" type-id-ref="BOOLEAN"
      vmodl-name="arpRedirectEnabled"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[True if ARP Redirect is enabled]]>
      </description-html>
      </property>

            <property name="mtu" type-id-ref="INT"
      vmodl-name="mtu"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[True if the host bus adapter supports setting its MTU, (for Jumbo
  Frames, etc)
  Setting enableJumboFrames and not a numeric mtu value implies
  autoselection of appropriate MTU value for Jumbo Frames.]]>
      </description-html>
      </property>

            <property name="jumboFramesEnabled" type-id-ref="BOOLEAN"
      vmodl-name="jumboFramesEnabled"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      </property>

            <property name="ipv4Enabled" type-id-ref="BOOLEAN"
      vmodl-name="ipv4Enabled"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[True if IPv4 is enabled.
 Unset value will keep existing IPv4 enabled state as is.]]>
      </description-html>
      </property>

            <property name="ipv6Enabled" type-id-ref="BOOLEAN"
      vmodl-name="ipv6Enabled"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[True if IPv6 is enabled.
 Unset value will keep existing IPv6 enabled state as is.]]>
      </description-html>
      </property>

            <property name="ipv6properties" type-id-ref="vim.host.InternetScsiHba.IPv6Properties"
      vmodl-name="ipv6properties"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[IPv6 properties.
 It is set only if {]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="NvdimmNamespaceInfo"
      type-id="vim.host.NvdimmSystem.NamespaceInfo"
      vmodl-name="vim.host.NvdimmSystem.NamespaceInfo"
      enclosing-type-id-ref="vim.host.NvdimmSystem"
      version-id-ref="vim.version.version12"
      is-deprecated="true"
      base-type-id="vmodl.DynamicData"
      >
      <deprecated-html>
         <![CDATA[As of vSphere 6.7u1, use NamespaceDetails
 Detailed information about a particular namespace.]]>
      </deprecated-html>
            <property name="uuid" type-id-ref="java.lang.String"
      vmodl-name="uuid"
      >
      <description-html>
         <![CDATA[Universally unique identifier assigned to namespace
  in string format]]>
      </description-html>
      </property>

            <property name="friendlyName" type-id-ref="java.lang.String"
      vmodl-name="friendlyName"
      >
      <description-html>
         <![CDATA[Friendly name of namespace]]>
      </description-html>
      </property>

            <property name="blockSize" type-id-ref="LONG"
      vmodl-name="blockSize"
      >
      <description-html>
         <![CDATA[Size of logical block size.
  For persistent region type, block size is one.
  For block region, block size represents one of the logical block sizes
  of 512, 4096 etc.]]>
      </description-html>
      </property>

            <property name="blockCount" type-id-ref="LONG"
      vmodl-name="blockCount"
      >
      <description-html>
         <![CDATA[Number of blocks in the namespace.
  For persistent region type, blockCount is the size of persistent
  region in bytes.
  For block region type, block count represent number of bytes per
  block size.]]>
      </description-html>
      </property>

            <property name="type" type-id-ref="java.lang.String"
      vmodl-name="type"
      >
      <description-html>
         <![CDATA[Type of the namespace to be created - block or persistent.
  Must be one of the values in
  NamespaceType]]>
      </description-html>
      </property>

            <property name="namespaceHealthStatus" type-id-ref="java.lang.String"
      vmodl-name="namespaceHealthStatus"
      >
      <description-html>
         <![CDATA[Health status of DIMM(s) part of the namespace.
  Must be one of the values of
  NamespaceInfo.NamespaceHealthStatus]]>
      </description-html>
      </property>

            <property name="locationID" type-id-ref="INT"
      vmodl-name="locationID"
      >
      <description-html>
         <![CDATA[This identifier is the interleave set ID if this namespace
 is being used in persistent mode. If in block mode, this
 is a nvdimm device handle.]]>
      </description-html>
      </property>

            <property name="state" type-id-ref="java.lang.String"
      vmodl-name="state"
      >
      <description-html>
         <![CDATA[State of namespace.
  Must be one of
  NamespaceInfo.NamespaceState]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.host.NvdimmSystem.NamespaceInfo.NamespaceHealthStatus</nested-type-id-ref>
      <nested-type-id-ref>vim.host.NvdimmSystem.NamespaceInfo.NamespaceState</nested-type-id-ref>
   </data-object>
   <data-object name="IpPoolManagerIpAllocation"
      type-id="vim.IpPoolManager.IpAllocation"
      vmodl-name="vim.IpPoolManager.IpAllocation"
      enclosing-type-id-ref="vim.IpPoolManager"
      version-id-ref="vim.version.version8"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Describes an IP allocation.]]>
      </description-html>
            <property name="ipAddress" type-id-ref="java.lang.String"
      vmodl-name="ipAddress"
      >
      <description-html>
         <![CDATA[IP address]]>
      </description-html>
      </property>

            <property name="allocationId" type-id-ref="java.lang.String"
      vmodl-name="allocationId"
      >
      <description-html>
         <![CDATA[The allocation ID]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostNvmeDiscoveryLogEntry"
      type-id="vim.host.NvmeDiscoveryLog.Entry"
      vmodl-name="vim.host.NvmeDiscoveryLog.Entry"
      enclosing-type-id-ref="vim.host.NvmeDiscoveryLog"
      version-id-ref="vim.version.v7_0"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object represents a single entry in the Discovery
  Log returned by a Discovery controller.]]>
      </description-html>
            <property name="subnqn" type-id-ref="java.lang.String"
      vmodl-name="subnqn"
      >
      <description-html>
         <![CDATA[NVME Qualified name of the discovered subsystem.
  <p>
  Corresponds to the SUBNQN field in the Discovery Log
  Page Entry as specified by the NVME over Fabrics spec.]]>
      </description-html>
      </property>

            <property name="subsystemType" type-id-ref="java.lang.String"
      vmodl-name="subsystemType"
      >
      <description-html>
         <![CDATA[NVM Subsystem type.
  <p>
  Corresponds to the SUBTYPE field in the Discovery Log
  Page Entry as specified by the NVME over Fabrics spec.
  The set of supported values is described in
  SubsystemType.]]>
      </description-html>
      </property>

            <property name="subsystemPortId" type-id-ref="INT"
      vmodl-name="subsystemPortId"
      >
      <description-html>
         <![CDATA[NVM subsystem port ID.
  <p>
  Corresponds to the PORTID field in the Discovery Log
  Page Entry as specified by the NVME over Fabrics spec.
  For an overview, see:
  <ul>
  <li>"NVM Express over Fabrics 1.0", Section 1.5.2,
  NVM Subsystem</li>
  </ul>]]>
      </description-html>
      </property>

            <property name="controllerId" type-id-ref="INT"
      vmodl-name="controllerId"
      >
      <description-html>
         <![CDATA[NVME Controller ID within the NVM subsystem.
  <p>
  Corresponds to the CNTLID field in the Discovery Log
  Page Entry as specified by the NVME over Fabrics spec.

  In the static controller model, this field may be set
  to a specific controller ID which can be used to connect
  to that particular controller. It could also be set
  to 0xFFFE (65534 in decimal), in which case the controller
  ID will be allocated when a connection is established.

  In the dynamic controller model, this field shall be set
  to 0xFFFF (65535 in decimal).

  Note that this is different from the controllerNumber
  <a href="vim.host.NvmeController.html#controllerNumber">controllerNumber</a>,
  which is the unique identifier of the NVMe controller
  within the entire host and is allocated only after a
  connection is established.]]>
      </description-html>
      </property>

            <property name="adminQueueMaxSize" type-id-ref="INT"
      vmodl-name="adminQueueMaxSize"
      >
      <description-html>
         <![CDATA[The maximum size of the Admin Submission Queue.
  <p>
  Corresponds to the ASQSZ field in the Discovery Log
  Page Entry as specified by the NVME over Fabrics spec.

  This applies to all controllers within the NVM Subsystem.
  When establishing a connection, the value of
  <a href="vim.host.NvmeConnectSpec.html#adminQueueSize">adminQueueSize</a> may not exceed
  this value.]]>
      </description-html>
      </property>

            <property name="transportParameters" type-id-ref="vim.host.NvmeTransportParameters"
      vmodl-name="transportParameters"
      >
      <description-html>
         <![CDATA[Transport specific parameters necessary to establish
  a connection.
  <p>
  Different types of fabrics transports and different
  means to specify a connection target may be supported.
  The transport specific parameters object is constructed
  based on the data in the Transport Type (TRTYPE),
  Address Family (ADRFAM), Transport Service Identifier
  (TRSVCID), Transport Address (TRADDR) and Transport
  Specific Address Subtype (TSAS) fields in the Discovery
  Log Page Entry as specified by the NVME over Fabrics spec.

  When connecting to the controller represented by this
  Discovery Log Page Entry, the transport specific
  parameters can be passed directly as
  NvmeConnectSpec#transportParameters.]]>
      </description-html>
      </property>

            <property name="transportRequirements" type-id-ref="java.lang.String"
      vmodl-name="transportRequirements"
      >
      <description-html>
         <![CDATA[The requirements for NVME Transport.
  <p>
  Corresponds to the TREQ field in the Discovery Log
  Page Entry as specified by the NVME over Fabrics spec
  The set of possible values is described in
  TransportRequirements]]>
      </description-html>
      </property>

            <property name="connected" type-id-ref="BOOLEAN"
      vmodl-name="connected"
      >
      <description-html>
         <![CDATA[Indicates whether the controller represented
  by this Discovery Log Page Entry is already connected
  to the adapter through which the discovery is initiated.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="PermissionProfile"
      type-id="vim.profile.host.PermissionProfile"
      vmodl-name="vim.profile.host.PermissionProfile"
      version-id-ref="vim.version.version6"
      base-type-id="vim.profile.ApplyProfile"
      >
      <description-html>
         <![CDATA[The <a href="vim.profile.host.PermissionProfile.html">PermissionProfile</a> data object represents the profile
 for a permission rule. Use the <a href="vim.profile.ApplyProfile.html#policy">policy</a> list for
 access to configuration data for the permission profile. Use the
 <a href="vim.profile.ApplyProfile.html#property">property</a> list for access to subprofiles, if any.]]>
      </description-html>
            <property name="key" type-id-ref="java.lang.String"
      vmodl-name="key"
      >
      </property>

   </data-object>
   <data-object name="HostShutdownEvent"
      type-id="vim.event.HostShutdownEvent"
      vmodl-name="vim.event.HostShutdownEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.HostEvent"
      >
      <description-html>
         <![CDATA[This event records the shutdown of a host.]]>
      </description-html>
            <property name="reason" type-id-ref="java.lang.String"
      vmodl-name="reason"
      >
      <description-html>
         <![CDATA[The reason for the host shutdown.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DistributedVirtualSwitchInfo"
      type-id="vim.dvs.DistributedVirtualSwitchInfo"
      vmodl-name="vim.dvs.DistributedVirtualSwitchInfo"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This class describes a DistributedVirtualSwitch that a device backing
  can attached to its ports.]]>
      </description-html>
            <property name="switchName" type-id-ref="java.lang.String"
      vmodl-name="switchName"
      >
      <description-html>
         <![CDATA[The name of the switch.]]>
      </description-html>
      </property>

            <property name="switchUuid" type-id-ref="java.lang.String"
      vmodl-name="switchUuid"
      >
      <description-html>
         <![CDATA[The UUID of the switch.]]>
      </description-html>
      </property>

            <property name="distributedVirtualSwitch" type-id-ref="vim.DistributedVirtualSwitch"
      vmodl-name="distributedVirtualSwitch"
      >
      <description-html>
         <![CDATA[The switch.]]>
      </description-html>
      </property>

            <property name="networkReservationSupported" type-id-ref="BOOLEAN"
      vmodl-name="networkReservationSupported"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates whether network bandwidth reservation is supported on
 the switch]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="EventFilterSpec"
      type-id="vim.event.EventFilterSpec"
      vmodl-name="vim.event.EventFilterSpec"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Event filter used to query events in the history collector database.
  The client creates an event history collector with a filter specification,
  then retrieves the events from the event history collector.]]>
      </description-html>
            <property name="entity" type-id-ref="vim.event.EventFilterSpec.ByEntity"
      vmodl-name="entity"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The filter specification for retrieving events by managed entity.
  If the property is not set, then events attached to all managed entities
  are collected.]]>
      </description-html>
      </property>

            <property name="time" type-id-ref="vim.event.EventFilterSpec.ByTime"
      vmodl-name="time"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The filter specification for retrieving tasks by time.
  If the property is not set, then events with any time stamp are collected.]]>
      </description-html>
      </property>

            <property name="userName" type-id-ref="vim.event.EventFilterSpec.ByUsername"
      vmodl-name="userName"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The filter specification for retrieving events by username.
  If the property is not set, then events belonging to any user are collected.]]>
      </description-html>
      </property>

            <property name="eventChainId" type-id-ref="INT"
      vmodl-name="eventChainId"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The filter specification for retrieving events by chain ID.
  If the property is not set, events with any chain ID are collected.]]>
      </description-html>
      </property>

            <property name="alarm" type-id-ref="vim.alarm.Alarm"
      vmodl-name="alarm"
      is-optional="true"
      >
      <description-html>
         <![CDATA[This property, if set, limits the set of collected events to those
  associated with the specified alarm.
  If the property is not set, events are collected regardless of their
  association with alarms.]]>
      </description-html>
      </property>

            <property name="scheduledTask" type-id-ref="vim.scheduler.ScheduledTask"
      vmodl-name="scheduledTask"
      is-optional="true"
      >
      <description-html>
         <![CDATA[This property, if set, limits the set of collected events to those
  associated with the specified scheduled task.
  If the property is not set, events are collected regardless of their
  association with any scheduled task.]]>
      </description-html>
      </property>

            <property name="disableFullMessage" type-id-ref="BOOLEAN"
      vmodl-name="disableFullMessage"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Flag to specify whether or not to prepare the full formatted message
  for each event.
  If the property is not set, the collected events do not include
  the full formatted message.]]>
      </description-html>
      </property>

            <property name="category" type-id-ref="java.lang.String"
      vmodl-name="category"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[This property, if set, limits the set of collected events to those
  associated with the specified category.
  If the property is not set, events are collected regardless of their
  association with any category.

  "category" here is the same as Event.severity.]]>
      </description-html>
      </property>

            <property name="type" type-id-ref="vmodl.TypeName"
      vmodl-name="type"
      is-deprecated="true"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[This property, if set, limits the set of collected events to those
 specified types.
 If the property is not set, events are collected regardless of their
 types.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 4.0, use <a href="vim.event.EventFilterSpec.html#eventTypeId">eventTypeId</a> instead.]]>
      </deprecated-html>
      </property>

            <property name="tag" type-id-ref="java.lang.String"
      vmodl-name="tag"
      version-id-ref="vim.version.version5"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[This property, if set, limits the set of filtered events to those that
 have it. If not set, or the size of it 0, the tag of an event is
 disregarded. A blank string indicates events without tags.]]>
      </description-html>
      </property>

            <property name="eventTypeId" type-id-ref="java.lang.String"
      vmodl-name="eventTypeId"
      version-id-ref="vim.version.version5"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[This property, if set, limits the set of collected events to those
 specified types.
 <p>
 Note: if both <a href="vim.event.EventFilterSpec.html#eventTypeId">eventTypeId</a> and <a href="vim.event.EventFilterSpec.html#type">type</a> are specified, an
 exception may be thrown by <a href="vim.event.EventManager.html#createCollector">CreateCollectorForEvents</a>.
 <p>
 The semantics of how eventTypeId matching is done is as follows:
 <ul>
 <li>If the event being collected is of type <a href="vim.event.EventEx.html">EventEx</a>
 or <a href="vim.event.ExtendedEvent.html">ExtendedEvent</a>, then we match against the
 <code>eventTypeId</code> (for <code>EventEx</code>) or
 <code>eventId</code> (for <code>ExtendedEvent</code>) member of the Event.
 <li>Otherwise, we match against the type of the Event itself.
 </ul>

 If neither this property, nor <code>type</code>, is set, events are
 collected regardless of their types.]]>
      </description-html>
      </property>

            <property name="maxCount" type-id-ref="INT"
      vmodl-name="maxCount"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[This property, if set, specifies the maximum number of returned events.

 If unset, the default maximum number will be used.

 Using this property with <a href="vim.event.EventManager.html#createCollector">CreateCollectorForEvents</a> is more
 efficient than a call to <a href="vim.HistoryCollector.html#setLatestPageSize">SetCollectorPageSize</a>.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.event.EventFilterSpec.RecursionOption</nested-type-id-ref>
      <nested-type-id-ref>vim.event.EventFilterSpec.ByEntity</nested-type-id-ref>
      <nested-type-id-ref>vim.event.EventFilterSpec.ByTime</nested-type-id-ref>
      <nested-type-id-ref>vim.event.EventFilterSpec.ByUsername</nested-type-id-ref>
   </data-object>
   <data-object name="ComputeResourceSummary"
      type-id="vim.ComputeResource.Summary"
      vmodl-name="vim.ComputeResource.Summary"
      enclosing-type-id-ref="vim.ComputeResource"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object type encapsulates a typical set of ComputeResource information
  that is useful for list views and summary pages.]]>
      </description-html>
            <property name="totalCpu" type-id-ref="INT"
      vmodl-name="totalCpu"
      >
      <description-html>
         <![CDATA[Aggregated CPU resources of all hosts, in MHz.]]>
      </description-html>
      </property>

            <property name="totalMemory" type-id-ref="LONG"
      vmodl-name="totalMemory"
      >
      <description-html>
         <![CDATA[Aggregated memory resources of all hosts, in bytes.]]>
      </description-html>
      </property>

            <property name="numCpuCores" type-id-ref="SHORT"
      vmodl-name="numCpuCores"
      >
      <description-html>
         <![CDATA[Number of physical CPU cores. Physical CPU cores are the processors contained
  by a CPU package.]]>
      </description-html>
      </property>

            <property name="numCpuThreads" type-id-ref="SHORT"
      vmodl-name="numCpuThreads"
      >
      <description-html>
         <![CDATA[Aggregated number of CPU threads.]]>
      </description-html>
      </property>

            <property name="effectiveCpu" type-id-ref="INT"
      vmodl-name="effectiveCpu"
      >
      <description-html>
         <![CDATA[Effective CPU resources (in MHz) available to run virtual machines. This is the
  aggregated effective resource level from all running hosts. Hosts that are in
  maintenance mode or are unresponsive are not counted. Resources used by the
  VMware Service Console are not included in the aggregate. This value represents
  the amount of resources available for the root resource pool for running
  virtual machines.]]>
      </description-html>
      </property>

            <property name="effectiveMemory" type-id-ref="LONG"
      vmodl-name="effectiveMemory"
      >
      <description-html>
         <![CDATA[Effective memory resources (in MB) available to run virtual machines.
  This is the aggregated effective resource level from all running hosts. Hosts
  that are in maintenance mode or are unresponsive are not counted.
  Resources used by the VMware Service Console are not included in the aggregate.
  This value represents the amount of resources available for the root
  resource pool for running virtual machines.]]>
      </description-html>
      </property>

            <property name="numHosts" type-id-ref="INT"
      vmodl-name="numHosts"
      >
      <description-html>
         <![CDATA[Total number of hosts.]]>
      </description-html>
      </property>

            <property name="numEffectiveHosts" type-id-ref="INT"
      vmodl-name="numEffectiveHosts"
      >
      <description-html>
         <![CDATA[Total number of effective hosts.]]>
      </description-html>
      </property>

            <property name="overallStatus" type-id-ref="vim.ManagedEntity.Status"
      vmodl-name="overallStatus"
      >
      <description-html>
         <![CDATA[Overall alarm status.

  In releases after vSphere API 5.0, vSphere Servers might not
  generate property collector update notifications for this property.
  To obtain the latest value of the property, you can use
  PropertyCollector methods RetrievePropertiesEx or WaitForUpdatesEx.
  If you use the PropertyCollector.WaitForUpdatesEx method, specify
  an empty string for the version parameter.

  Since this property is on a DataObject, an update returned by WaitForUpdatesEx may
  contain values for this property when some other property on the DataObject changes.
  If this update is a result of a call to WaitForUpdatesEx with a non-empty
  version parameter, the value for this property may not be current.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="SingleIp"
      type-id="vim.SingleIp"
      vmodl-name="vim.SingleIp"
      version-id-ref="vim.version.version9"
      base-type-id="vim.IpAddress"
      >
      <description-html>
         <![CDATA[This class specifies a single IP address.]]>
      </description-html>
            <property name="address" type-id-ref="java.lang.String"
      vmodl-name="address"
      >
      <description-html>
         <![CDATA[The IP address. The value of this property should either be an
  IPv4 address such as "192.168.0.1" or an IPv6 address such as
  "fc00:192:168:0:6cd9:a132:e889:b612"]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostSriovDevicePoolInfo"
      type-id="vim.host.SriovDevicePoolInfo"
      vmodl-name="vim.host.SriovDevicePoolInfo"
      version-id-ref="vim.version.version11"
      base-type-id="vmodl.DynamicData"
      >
            <property name="key" type-id-ref="java.lang.String"
      vmodl-name="key"
      >
      </property>

   </data-object>
   <data-object name="VmConfigFileQuery"
      type-id="vim.host.DatastoreBrowser.VmConfigQuery"
      vmodl-name="vim.host.DatastoreBrowser.VmConfigQuery"
      enclosing-type-id-ref="vim.host.DatastoreBrowser"
      version-id-ref="vim.version.version1"
      base-type-id="vim.host.DatastoreBrowser.Query"
      >
      <description-html>
         <![CDATA[This data object type describes query specification for the virtual machine
  configuration file.]]>
      </description-html>
            <property name="filter" type-id-ref="vim.host.DatastoreBrowser.VmConfigQuery.Filter"
      vmodl-name="filter"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The filter specification for the virtual machine configuration file query.]]>
      </description-html>
      </property>

            <property name="details" type-id-ref="vim.host.DatastoreBrowser.VmConfigQuery.Details"
      vmodl-name="details"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The details specification for the virtual machine configuration file query.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.host.DatastoreBrowser.VmConfigQuery.Filter</nested-type-id-ref>
      <nested-type-id-ref>vim.host.DatastoreBrowser.VmConfigQuery.Details</nested-type-id-ref>
   </data-object>
   <data-object name="EnteringMaintenanceModeEvent"
      type-id="vim.event.EnteringMaintenanceModeEvent"
      vmodl-name="vim.event.EnteringMaintenanceModeEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.HostEvent"
      >
      <description-html>
         <![CDATA[This event records that a host has begun the process of entering
  maintenance mode. All virtual machine operations
  are blocked, except the following:
  <ul>
  <li>MigrateVM
  <li>PowerOffVM
  <li>SuspendVM
  <li>ShutdownGuest
  <li>StandbyGuest
  </ul>]]>
      </description-html>
   </data-object>
   <data-object name="HostPatchManagerStatus"
      type-id="vim.host.PatchManager.Status"
      vmodl-name="vim.host.PatchManager.Status"
      enclosing-type-id-ref="vim.host.PatchManager"
      version-id-ref="vim.version.version1"
      internal-before-version-id-ref="vim.version.version2"
      base-type-id="vmodl.DynamicData"
      >
            <property name="id" type-id-ref="java.lang.String"
      vmodl-name="id"
      >
      <description-html>
         <![CDATA[Unique identifier for this update.]]>
      </description-html>
      </property>

            <property name="applicable" type-id-ref="BOOLEAN"
      vmodl-name="applicable"
      >
      <description-html>
         <![CDATA[Whether or not this update is applicable to this host. An update
  may not be applicable to the ESX host for many reasons - for
  example, it is obsolete, it conflicts with other installed
  patches or libraries, and so on. The <a href="vim.host.PatchManager.Status.html#reason">reason</a> shows some of the reasons
  why the update is not applicable.

  An update could be inapplicable with no reason listed. This is
  because the prerequisite install state is not correct. For example,
  update A is one of the prerequisites of update B. B not only
  requires A to be installed, but also requires the host is
  rebooted after A is installed. When A is installed and the host
  has not been restarted after the installation, B will not be
  applicable. In such a case, the scan on both updates A and B
  would yield a whole picture of the update applicable status.]]>
      </description-html>
      </property>

            <property name="reason" type-id-ref="java.lang.String"
      vmodl-name="reason"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Possible reasons why an update is not applicable to the ESX host.<br>See <a href="vim.host.PatchManager.Status.Reason.html">HostPatchManagerReason</a><br>]]>
      </description-html>
      </property>

            <property name="integrity" type-id-ref="java.lang.String"
      vmodl-name="integrity"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The integrity status of the update's metadata. The value would
  be unset if the integrity status is unknown to the server.<br>See <a href="vim.host.PatchManager.Status.Integrity.html">HostPatchManagerIntegrityStatus</a><br>]]>
      </description-html>
      </property>

            <property name="installed" type-id-ref="BOOLEAN"
      vmodl-name="installed"
      >
      <description-html>
         <![CDATA[Whether the update is installed on the server.]]>
      </description-html>
      </property>

            <property name="installState" type-id-ref="java.lang.String"
      vmodl-name="installState"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The installation state of the update. Unset if the update is not
  installed on the server.<br>See <a href="vim.host.PatchManager.Status.InstallState.html">HostPatchManagerInstallState</a><br>]]>
      </description-html>
      </property>

            <property name="prerequisitePatch" type-id-ref="vim.host.PatchManager.Status.PrerequisitePatch"
      vmodl-name="prerequisitePatch"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Prerequisite update.]]>
      </description-html>
      </property>

            <property name="restartRequired" type-id-ref="BOOLEAN"
      vmodl-name="restartRequired"
      >
      <description-html>
         <![CDATA[Whether or not this update requires a host restart to take effect.]]>
      </description-html>
      </property>

            <property name="reconnectRequired" type-id-ref="BOOLEAN"
      vmodl-name="reconnectRequired"
      >
      <description-html>
         <![CDATA[Whether or not this update requires caller to reconnect to the
  host. This is usually because the update is on the agent that
  running on the host, the agent would thus be restarted when the
  update is applied. Caller can reconnect (and possibly relogin) to
  the host after the agent has been restarted.]]>
      </description-html>
      </property>

            <property name="vmOffRequired" type-id-ref="BOOLEAN"
      vmodl-name="vmOffRequired"
      >
      <description-html>
         <![CDATA[Whether or not this update requires the host in maintenance mode.]]>
      </description-html>
      </property>

            <property name="supersededPatchIds" type-id-ref="java.lang.String"
      vmodl-name="supersededPatchIds"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Patches that are superseded by this update.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.host.PatchManager.Status.Reason</nested-type-id-ref>
      <nested-type-id-ref>vim.host.PatchManager.Status.Integrity</nested-type-id-ref>
      <nested-type-id-ref>vim.host.PatchManager.Status.InstallState</nested-type-id-ref>
      <nested-type-id-ref>vim.host.PatchManager.Status.PrerequisitePatch</nested-type-id-ref>
   </data-object>
   <data-object name="VirtualMachineDefinedProfileSpec"
      type-id="vim.vm.DefinedProfileSpec"
      vmodl-name="vim.vm.DefinedProfileSpec"
      version-id-ref="vim.version.version9"
      base-type-id="vim.vm.ProfileSpec"
      >
      <description-html>
         <![CDATA[Policy specification that carries a pre-defined Storage Policy to be associated
  with a Virtual Machine Home or a Virtual Disk object. Such a pre-defined
  policy can be either be vSphere Storage Administrator defined or may come
  from a set of pre-defined policies from Storage Vendor.

  <p>
  Neither the association nor the policy data is persisted in Virtual Machine
  configuration. This data is managed by the an extension of Virtual Center
  (Storage Policy Based Management).
  <p>]]>
      </description-html>
            <property name="profileId" type-id-ref="java.lang.String"
      vmodl-name="profileId"
      >
      <description-html>
         <![CDATA[Storage Policy Profile identification - Should be
 pbm.profileId but for implementation reasons, could not be.]]>
      </description-html>
      </property>

            <property name="replicationSpec" type-id-ref="vim.vm.replication.ReplicationSpec"
      vmodl-name="replicationSpec"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Specification containing replication related parameters, sent to the Replication Data Service
 provider.]]>
      </description-html>
      </property>

            <property name="profileData" type-id-ref="vim.vm.ProfileRawData"
      vmodl-name="profileData"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Profile data sent to the Storage Backend by vSphere.
  <p>
  This data is provided by the SPBM component of the vSphere platform.
  This field should not be set by Virtual Center users.]]>
      </description-html>
      </property>

            <property name="profileParams" type-id-ref="vim.KeyValue"
      vmodl-name="profileParams"
      version-id-ref="vim.version.version12"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Parameterized Storage Profiles

  Extra configuration that is not expressed as a capability in the Profile
  definition.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="FolderNewHostSpec"
      type-id="vim.Folder.NewHostSpec"
      vmodl-name="vim.Folder.NewHostSpec"
      enclosing-type-id-ref="vim.Folder"
      version-id-ref="vim.version.version13"
      base-type-id="vmodl.DynamicData"
      >
            <property name="hostCnxSpec" type-id-ref="vim.host.ConnectSpec"
      vmodl-name="hostCnxSpec"
      >
      <description-html>
         <![CDATA[Connection Spec for new host that needs to be added to the inventory.]]>
      </description-html>
      </property>

            <property name="esxLicense" type-id-ref="java.lang.String"
      vmodl-name="esxLicense"
      is-optional="true"
      >
      <description-html>
         <![CDATA[LicenseKey. See <a href="vim.LicenseManager.html">LicenseManager</a>. If supplied, new
  host will be updated with the license.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VmWwnChangedEvent"
      type-id="vim.event.VmWwnChangedEvent"
      vmodl-name="vim.event.VmWwnChangedEvent"
      version-id-ref="vim.version.version2"
      base-type-id="vim.event.VmEvent"
      >
      <description-html>
         <![CDATA[This event records a change in a virtual machine's WWN (World Wide Name).]]>
      </description-html>
            <property name="oldNodeWwns" type-id-ref="LONG"
      vmodl-name="oldNodeWwns"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The old node WWN.]]>
      </description-html>
      </property>

            <property name="oldPortWwns" type-id-ref="LONG"
      vmodl-name="oldPortWwns"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The old port WWN.]]>
      </description-html>
      </property>

            <property name="newNodeWwns" type-id-ref="LONG"
      vmodl-name="newNodeWwns"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The new node WWN.]]>
      </description-html>
      </property>

            <property name="newPortWwns" type-id-ref="LONG"
      vmodl-name="newPortWwns"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The new port WWN.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualBusLogicController"
      type-id="vim.vm.device.VirtualBusLogicController"
      vmodl-name="vim.vm.device.VirtualBusLogicController"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.device.VirtualSCSIController"
      >
      <description-html>
         <![CDATA[VirtualBusLogicController is the data object that represents
 a BusLogic SCSI controller.]]>
      </description-html>
   </data-object>
   <data-object name="HostMultipathStateInfo"
      type-id="vim.host.MultipathStateInfo"
      vmodl-name="vim.host.MultipathStateInfo"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object type describes the state of storage paths on the host.
  All storage paths on the host are enumerated in this data object.
  <p>
  The reason all path state information is encapsulated in this data
  object is because the path may actively change.  This data object
  ensures that a request to gather path state changes only needs to
  fetch this data object.]]>
      </description-html>
            <property name="path" type-id-ref="vim.host.MultipathStateInfo.Path"
      vmodl-name="path"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of paths on the system and their path states.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.host.MultipathStateInfo.Path</nested-type-id-ref>
   </data-object>
   <data-object name="ClusterVmGroup"
      type-id="vim.cluster.VmGroup"
      vmodl-name="vim.cluster.VmGroup"
      version-id-ref="vim.version.version6"
      base-type-id="vim.cluster.GroupInfo"
      >
      <description-html>
         <![CDATA[The <a href="vim.cluster.VmGroup.html">ClusterVmGroup</a> data object identifies virtual machines
 for VM-Host rules. VM-Host rules determine placement of virtual machines
 on hosts in a cluster.
 The logic specified in a <a href="vim.cluster.VmHostRuleInfo.html">ClusterVmHostRuleInfo</a> object
 determines where virtual machines can be powered-on.
 <p>
 If a virtual machine is removed from the cluster, it loses its DRS group
 affiliation. The Server does not restore any group affiliations if the
 virtual machine is returned to the cluster.]]>
      </description-html>
            <property name="vm" type-id-ref="vim.VirtualMachine"
      vmodl-name="vm"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of virtual machines that are part of this group.
 A virtual machine group can contain zero or more virtual machines.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="GuestRegValueExpandStringSpec"
      type-id="vim.vm.guest.WindowsRegistryManager.RegistryValueExpandString"
      vmodl-name="vim.vm.guest.WindowsRegistryManager.RegistryValueExpandString"
      enclosing-type-id-ref="vim.vm.guest.WindowsRegistryManager"
      version-id-ref="vim.version.version10"
      base-type-id="vim.vm.guest.WindowsRegistryManager.RegistryValueData"
      >
      <description-html>
         <![CDATA[This describes the registry value expand string.]]>
      </description-html>
            <property name="value" type-id-ref="java.lang.String"
      vmodl-name="value"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The expanded (if applicable) data of the registry value.

 The Windows registry allows this type of value to exist without
 having any data associated with it.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="StorageDrsPodConfigInfo"
      type-id="vim.storageDrs.PodConfigInfo"
      vmodl-name="vim.storageDrs.PodConfigInfo"
      version-id-ref="vim.version.version7"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The <a href="vim.storageDrs.PodConfigInfo.html">StorageDrsPodConfigInfo</a> data object contains pod-wide configuration information
  for the storage DRS service.
  <p>]]>
      </description-html>
            <property name="enabled" type-id-ref="BOOLEAN"
      vmodl-name="enabled"
      >
      <description-html>
         <![CDATA[Flag indicating whether or not storage DRS is enabled.]]>
      </description-html>
      </property>

            <property name="ioLoadBalanceEnabled" type-id-ref="BOOLEAN"
      vmodl-name="ioLoadBalanceEnabled"
      >
      <description-html>
         <![CDATA[Flag indicating whether or not storage DRS takes into account storage I/O
  workload when making load balancing and initial placement recommendations.]]>
      </description-html>
      </property>

            <property name="defaultVmBehavior" type-id-ref="java.lang.String"
      vmodl-name="defaultVmBehavior"
      >
      <description-html>
         <![CDATA[Specifies the pod-wide default storage DRS behavior for virtual machines.
  For currently supported storage DRS behavior, see Behavior.
  You can override the default behavior for a virtual machine
  by using the <a href="vim.storageDrs.VmConfigInfo.html">StorageDrsVmConfigInfo</a> object.]]>
      </description-html>
      </property>

            <property name="loadBalanceInterval" type-id-ref="INT"
      vmodl-name="loadBalanceInterval"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Specify the interval that storage DRS runs to load balance among datastores
  within a storage pod.
  <p>
  Unit: minute.
  The valid values are from 60 (1 hour) to 43200 (30 days).
  If not specified, the default value is 480 (8 hours).]]>
      </description-html>
      </property>

            <property name="defaultIntraVmAffinity" type-id-ref="BOOLEAN"
      vmodl-name="defaultIntraVmAffinity"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Specifies whether or not each virtual machine in this pod should have its virtual
  disks on the same datastore by default. If set to true, virtual machines will have
  all their virtual disks on the same datastore. If set to false, the virtual disks
  of a virtual machine may or may not be placed on the same datastore.
  If not set, the default value is true.
  You can override the default behavior for a virtual machine
  by using the <a href="vim.storageDrs.VmConfigInfo.html">StorageDrsVmConfigInfo</a> object.]]>
      </description-html>
      </property>

            <property name="spaceLoadBalanceConfig" type-id-ref="vim.storageDrs.SpaceLoadBalanceConfig"
      vmodl-name="spaceLoadBalanceConfig"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The configuration settings for load balancing storage space.]]>
      </description-html>
      </property>

            <property name="ioLoadBalanceConfig" type-id-ref="vim.storageDrs.IoLoadBalanceConfig"
      vmodl-name="ioLoadBalanceConfig"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The configuration settings for load balancing I/O workload.
  This takes effect only if <a href="vim.storageDrs.PodConfigInfo.html#ioLoadBalanceEnabled">ioLoadBalanceEnabled</a> is <code>true</code>.]]>
      </description-html>
      </property>

            <property name="automationOverrides" type-id-ref="vim.storageDrs.AutomationConfig"
      vmodl-name="automationOverrides"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Configuration settings for fine-grain automation overrides on
  the cluster level setting.]]>
      </description-html>
      </property>

            <property name="rule" type-id-ref="vim.cluster.RuleInfo"
      vmodl-name="rule"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Pod-wide rules.]]>
      </description-html>
      </property>

            <property name="option" type-id-ref="vim.option.OptionValue"
      vmodl-name="option"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Advanced settings.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.storageDrs.PodConfigInfo.Behavior</nested-type-id-ref>
   </data-object>
   <data-object name="LicenseAssignmentManagerLicenseAssignment"
      type-id="vim.LicenseAssignmentManager.LicenseAssignment"
      vmodl-name="vim.LicenseAssignmentManager.LicenseAssignment"
      enclosing-type-id-ref="vim.LicenseAssignmentManager"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
            <property name="entityId" type-id-ref="java.lang.String"
      vmodl-name="entityId"
      >
      <description-html>
         <![CDATA[Id for the entity]]>
      </description-html>
      </property>

            <property name="scope" type-id-ref="java.lang.String"
      vmodl-name="scope"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Scope of the entityId]]>
      </description-html>
      </property>

            <property name="entityDisplayName" type-id-ref="java.lang.String"
      vmodl-name="entityDisplayName"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Display name of the entity]]>
      </description-html>
      </property>

            <property name="assignedLicense" type-id-ref="vim.LicenseManager.LicenseInfo"
      vmodl-name="assignedLicense"
      >
      <description-html>
         <![CDATA[License assigned to the entity]]>
      </description-html>
      </property>

            <property name="properties" type-id-ref="vmodl.KeyAnyValue"
      vmodl-name="properties"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Additional properties associated with this assignment
 Some of the properties are:
 "inUseFeatures"  -- Features in the license key that are being used by the entity
 "ProductName"    -- Name of the entity. Should match the product name of the assigned license.
 "ProductVersion" -- Version of the entity. Should match the product version of the assigned license.
 "Evaluation" -- EvaluationInfo object representing the evaluation left for the entity.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DVSNameArrayUplinkPortPolicy"
      type-id="vim.DistributedVirtualSwitch.NameArrayUplinkPortPolicy"
      vmodl-name="vim.DistributedVirtualSwitch.NameArrayUplinkPortPolicy"
      enclosing-type-id-ref="vim.DistributedVirtualSwitch"
      version-id-ref="vim.version.version5"
      base-type-id="vim.DistributedVirtualSwitch.UplinkPortPolicy"
      >
      <description-html>
         <![CDATA[The uplink port policy specifies an array of uniform names
  for the uplink ports across the hosts. The size of the array indicates
  the number of uplink ports that will be created for each host in the
  switch.
  <p>
  When the names in this array change, the uplink ports on all the
  hosts are automatically renamed accordingly. Increasing the number
  of names in the array automatically creates additional uplink ports
  bearing the added name on each host. Decreasing the number of name
  automatically deletes the unused uplink ports on each host. Decreasing
  beyond the number of unused uplink port raises a fault.
  <p>
  This policy overrides the portgroup port naming format
  (<a href="vim.dvs.DistributedVirtualPortgroup.ConfigSpec.html">DVPortgroupConfigSpec</a>.<a href="vim.dvs.DistributedVirtualPortgroup.ConfigSpec.html#portNameFormat">portNameFormat</a>),
  if both are defined and the uplink ports are created in a uplink portgroup.]]>
      </description-html>
            <property name="uplinkPortName" type-id-ref="java.lang.String"
      vmodl-name="uplinkPortName"
      is-array="true"
      >
      <description-html>
         <![CDATA[The uniform name of uplink ports on each host.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualMachineImportSpec"
      type-id="vim.vm.VmImportSpec"
      vmodl-name="vim.vm.VmImportSpec"
      version-id-ref="vim.version.version5"
      base-type-id="vim.ImportSpec"
      >
      <description-html>
         <![CDATA[A VmImportSpec is used by <a href="vim.ResourcePool.html#importVApp">ImportVApp</a> when importing entities.
 <p>
 It provides all information needed to import a <a href="vim.VirtualMachine.html">VirtualMachine</a>. So far,
 this coincides with <a href="vim.vm.ConfigSpec.html">VirtualMachineConfigSpec</a>.
 <p>
 A VmImportSpec can be contained in a <a href="vim.vApp.VAppImportSpec.html">VirtualAppImportSpec</a> as part of
 the ImportSpec for an entity.
 <p>
 See also <a href="vim.ImportSpec.html">ImportSpec</a>.]]>
      </description-html>
            <property name="configSpec" type-id-ref="vim.vm.ConfigSpec"
      vmodl-name="configSpec"
      >
      <description-html>
         <![CDATA[Configuration for the virtual machine.]]>
      </description-html>
      </property>

            <property name="resPoolEntity" type-id-ref="vim.ResourcePool"
      vmodl-name="resPoolEntity"
      version-id-ref="vim.version.version6"
      is-deprecated="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[If specified, this resource pool will be used as the parent resource pool and the
 virtual machine will be made a linked child to the parent vApp. This field is ignored
 for the root node in an ImportSpec tree.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 5.1.]]>
      </deprecated-html>
      </property>

   </data-object>
   <data-object name="VirtualMachineMetadataManagerVmMetadataResult"
      type-id="vim.vm.MetadataManager.VmMetadataResult"
      vmodl-name="vim.vm.MetadataManager.VmMetadataResult"
      enclosing-type-id-ref="vim.vm.MetadataManager"
      version-id-ref="vim.version.version9"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[A list of VmMetadataResults are returned for successful and
 non-successful results of an update or retrieve operation.<br>See MetadataManager#updateMetadata(VmMetadataOwner,See MetadataManager#retrieveMetadata(VmMetadataOwner,See MetadataManager#retrieveAllMetadata(VmMetadataOwner,See MetadataManager#clearMetadata(VmMetadataOwner,]]>
      </description-html>
            <property name="vmMetadata" type-id-ref="vim.vm.MetadataManager.VmMetadata"
      vmodl-name="vmMetadata"
      >
      <description-html>
         <![CDATA[The VM-specific metadata]]>
      </description-html>
      </property>

            <property name="error" type-id-ref="vmodl.LocalizedMethodFault"
      vmodl-name="error"
      is-optional="true"
      >
      <description-html>
         <![CDATA[MethodFault set for errors in getting or setting
 the VmMetadata.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostDatastoreSystemCapabilities"
      type-id="vim.host.DatastoreSystem.Capabilities"
      vmodl-name="vim.host.DatastoreSystem.Capabilities"
      enclosing-type-id-ref="vim.host.DatastoreSystem"
      version-id-ref="vim.version.version2"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Capability vector indicating the available product features.]]>
      </description-html>
            <property name="nfsMountCreationRequired" type-id-ref="BOOLEAN"
      vmodl-name="nfsMountCreationRequired"
      >
      <description-html>
         <![CDATA[Indicates whether mounting the NFS volume is required to be done as part
  of NAS datastore creation. If this is set to true, then NAS datastores
  cannot be created for currently mounted NFS volumes.]]>
      </description-html>
      </property>

            <property name="nfsMountCreationSupported" type-id-ref="BOOLEAN"
      vmodl-name="nfsMountCreationSupported"
      >
      <description-html>
         <![CDATA[Indicates whether mounting an NFS volume is supported
  when a NAS datastore is created. If this option is false,
  then NAS datastores corresponding to NFS volumes can be created
  only for already mounted NFS volumes.]]>
      </description-html>
      </property>

            <property name="localDatastoreSupported" type-id-ref="BOOLEAN"
      vmodl-name="localDatastoreSupported"
      >
      <description-html>
         <![CDATA[Indicates whether local datastores are supported.]]>
      </description-html>
      </property>

            <property name="vmfsExtentExpansionSupported" type-id-ref="BOOLEAN"
      vmodl-name="vmfsExtentExpansionSupported"
      version-id-ref="vim.version.version5"
      >
      <description-html>
         <![CDATA[Indicates whether vmfs extent expansion is supported.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ParaVirtualSCSIController"
      type-id="vim.vm.device.ParaVirtualSCSIController"
      vmodl-name="vim.vm.device.ParaVirtualSCSIController"
      version-id-ref="vim.version.version4"
      base-type-id="vim.vm.device.VirtualSCSIController"
      >
      <description-html>
         <![CDATA[ParaVirtualSCSIController is the data object that represents
 a paravirtualized SCSI controller.]]>
      </description-html>
   </data-object>
   <data-object name="VsanUpgradeSystemNotEnoughFreeCapacityIssue"
      type-id="vim.VsanUpgradeSystem.NotEnoughFreeCapacityIssue"
      vmodl-name="vim.VsanUpgradeSystem.NotEnoughFreeCapacityIssue"
      enclosing-type-id-ref="vim.VsanUpgradeSystem"
      version-id-ref="vim.version.version10"
      base-type-id="vim.VsanUpgradeSystem.PreflightCheckIssue"
      >
      <description-html>
         <![CDATA[Pre-flight check encountered not enough free disk capacity to maintain policy compliance.]]>
      </description-html>
            <property name="reducedRedundancyUpgradePossible" type-id-ref="BOOLEAN"
      vmodl-name="reducedRedundancyUpgradePossible"
      >
      <description-html>
         <![CDATA[Indicates that whether upgrade could be processed if option
 allowReducedRedundancy is taken.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="CryptoKeyId"
      type-id="vim.encryption.CryptoKeyId"
      vmodl-name="vim.encryption.CryptoKeyId"
      version-id-ref="vim.version.version11"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Data Object representing a cryptographic key.]]>
      </description-html>
            <property name="keyId" type-id-ref="java.lang.String"
      vmodl-name="keyId"
      >
      <description-html>
         <![CDATA[Unique key ID.
 When creating a key may be replaced with the ID generated by the KMS
 server.

 An empty string must be used when encrypting with a Trusted Key Provider,
 because the key is generated at the time of encryption.]]>
      </description-html>
      </property>

            <property name="providerId" type-id-ref="vim.encryption.KeyProviderId"
      vmodl-name="providerId"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The provider holding the key data.
 May be ignored if the key is known to be stored in another provider.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VVolVmConfigFileUpdateResultFailedVmConfigFileInfo"
      type-id="vim.VVolVmConfigFileUpdateResult.FailedVmConfigFileInfo"
      vmodl-name="vim.VVolVmConfigFileUpdateResult.FailedVmConfigFileInfo"
      enclosing-type-id-ref="vim.VVolVmConfigFileUpdateResult"
      version-id-ref="vim.version.version11"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Information of the failed update on the virtual machine config
 file.]]>
      </description-html>
            <property name="targetConfigVVolId" type-id-ref="java.lang.String"
      vmodl-name="targetConfigVVolId"
      >
      <description-html>
         <![CDATA[The target virtual machine config VVol ID]]>
      </description-html>
      </property>

            <property name="dsPath" type-id-ref="java.lang.String"
      vmodl-name="dsPath"
      version-id-ref="vim.version.v7_0"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Datastore path for the virtual machine that failed to recover]]>
      </description-html>
      </property>

            <property name="fault" type-id-ref="vmodl.LocalizedMethodFault"
      vmodl-name="fault"
      >
      <description-html>
         <![CDATA[The reason why the update failed.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostCnxFailedAlreadyManagedEvent"
      type-id="vim.event.HostCnxFailedAlreadyManagedEvent"
      vmodl-name="vim.event.HostCnxFailedAlreadyManagedEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.HostEvent"
      >
      <description-html>
         <![CDATA[This event records a failure to connect to a host
  due to the host being managed by a different VirtualCenter server.]]>
      </description-html>
            <property name="serverName" type-id-ref="java.lang.String"
      vmodl-name="serverName"
      >
      <description-html>
         <![CDATA[The name of the VirtualCenter server that manages the host.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="Extension"
      type-id="vim.Extension"
      vmodl-name="vim.Extension"
      version-id-ref="vim.version.version2"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object type contains all information about an extension.
  An extension may contain zero or more server interfaces and zero
  or more clients.]]>
      </description-html>
            <property name="description" type-id-ref="vim.Description"
      vmodl-name="description"
      is-localizable="true"
      >
      <description-html>
         <![CDATA[Description of extension.]]>
      </description-html>
      </property>

            <property name="key" type-id-ref="java.lang.String"
      vmodl-name="key"
      >
      <description-html>
         <![CDATA[Extension key. Should follow java package naming conventions
  for uniqueness (e.g. "com.example.management").
  <p>
  Extension names can only contain characters belonging to the
  lower ASCII character set (UTF-7) with the exception of the
  following characters:
  <ol>
  <li>All whitespace characters ("space" - ascii character 0x20 is allowed)</li>
  <li>Control characters</li>
  <li>Comma (ascii 0x2c), Forward slash (ascii 0x2f), Backward slash (ascii 0x5c),
  Hash/Pound (ascii 0x23), Plus (ascii 0x2b), Greater (ascii 0x3e), Lesser (ascii 0x3c),
  Equals (ascii 0x3d), Semi-colon (ascii 0x3b) and Double quote (ascii 0x22).</li>
  </ol>]]>
      </description-html>
      </property>

            <property name="company" type-id-ref="java.lang.String"
      vmodl-name="company"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Company information.]]>
      </description-html>
      </property>

            <property name="type" type-id-ref="java.lang.String"
      vmodl-name="type"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Type of extension (example may include CP-DVS, NUOVA-DVS, etc.).]]>
      </description-html>
      </property>

            <property name="version" type-id-ref="java.lang.String"
      vmodl-name="version"
      >
      <description-html>
         <![CDATA[Extension version number as a dot-separated string. For example, "1.0.0"]]>
      </description-html>
      </property>

            <property name="subjectName" type-id-ref="java.lang.String"
      vmodl-name="subjectName"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Subject name from client certificate.]]>
      </description-html>
      </property>

            <property name="server" type-id-ref="vim.Extension.ServerInfo"
      vmodl-name="server"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Servers for this extension.]]>
      </description-html>
      </property>

            <property name="client" type-id-ref="vim.Extension.ClientInfo"
      vmodl-name="client"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Clients for this extension.]]>
      </description-html>
      </property>

            <property name="taskList" type-id-ref="vim.Extension.TaskTypeInfo"
      vmodl-name="taskList"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Definitions of tasks defined by this extension.]]>
      </description-html>
      </property>

            <property name="eventList" type-id-ref="vim.Extension.EventTypeInfo"
      vmodl-name="eventList"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Definitions of events defined by this extension.]]>
      </description-html>
      </property>

            <property name="faultList" type-id-ref="vim.Extension.FaultTypeInfo"
      vmodl-name="faultList"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Definitions of faults defined by this extension.]]>
      </description-html>
      </property>

            <property name="privilegeList" type-id-ref="vim.Extension.PrivilegeInfo"
      vmodl-name="privilegeList"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Definitions privileges defined by this extension.]]>
      </description-html>
      </property>

            <property name="resourceList" type-id-ref="vim.Extension.ResourceInfo"
      vmodl-name="resourceList"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Resource data for all locales]]>
      </description-html>
      </property>

            <property name="lastHeartbeatTime" type-id-ref="vmodl.DateTime"
      vmodl-name="lastHeartbeatTime"
      >
      <description-html>
         <![CDATA[Last extension heartbeat time.]]>
      </description-html>
      </property>

            <property name="healthInfo" type-id-ref="vim.Extension.HealthInfo"
      vmodl-name="healthInfo"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Health specification provided by this extension.]]>
      </description-html>
      </property>

            <property name="ovfConsumerInfo" type-id-ref="vim.Extension.OvfConsumerInfo"
      vmodl-name="ovfConsumerInfo"
      version-id-ref="vim.version.version7"
      is-optional="true"
      >
      <description-html>
         <![CDATA[OVF consumer specification provided by this extension.]]>
      </description-html>
      </property>

            <property name="extendedProductInfo" type-id-ref="vim.ext.ExtendedProductInfo"
      vmodl-name="extendedProductInfo"
      version-id-ref="vim.version.version7"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Extended product information, such as URLs to vendor, product, etc.]]>
      </description-html>
      </property>

            <property name="managedEntityInfo" type-id-ref="vim.ext.ManagedEntityInfo"
      vmodl-name="managedEntityInfo"
      version-id-ref="vim.version.version7"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Information about entities managed by this extension. An extension can
 register virtual machines as managed by itself, by setting the
 <a href="vim.vm.ConfigSpec.html#managedBy">managedBy</a> property of the virtual
 machine.]]>
      </description-html>
      </property>

            <property name="shownInSolutionManager" type-id-ref="BOOLEAN"
      vmodl-name="shownInSolutionManager"
      version-id-ref="vim.version.version7"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Opt-in to the Solution Manager. If set to true, this extension will be
 shown in the Solution Manager. If not set, or set to false, this extension
 is not shown in the Solution Manager.]]>
      </description-html>
      </property>

            <property name="solutionManagerInfo" type-id-ref="vim.ext.SolutionManagerInfo"
      vmodl-name="solutionManagerInfo"
      version-id-ref="vim.version.version7"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Solution Manager configuration for this extension.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.Extension.ServerInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.Extension.ClientInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.Extension.TaskTypeInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.Extension.EventTypeInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.Extension.FaultTypeInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.Extension.PrivilegeInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.Extension.ResourceInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.Extension.HealthInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.Extension.OvfConsumerInfo</nested-type-id-ref>
   </data-object>
   <data-object name="VAppIPAssignmentInfo"
      type-id="vim.vApp.IPAssignmentInfo"
      vmodl-name="vim.vApp.IPAssignmentInfo"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The IPAssignmentInfo class specifies how the guest software gets
  configured with IP addresses, including protocol type (IPv4 or IPv6)
  and the life-time of those IP addresses.
  <p>
  A vApp/virtual machine can either use DHCP to acquire an IP
  configuration, or it can acquire its IP configuration through the
  use of the vSphere platform using the OVF environment's properties.
  The latter is a known as OVF-environment-assigned IP configuration.
  <p>
  Guest software can be constructed to support DHCP , OVF assigned
  IP configuration, or both. The supportedAssignmentScheme property
  lists the supported schemes. This is typically specified by the author
  of a vApp.
  <p>
  The deployer / operator of a vApp, specifies what IP allocation
  policy should be used:
  <ul>
   <li>Using DHCP, if the vApp and deployed network supports it
   <li>Transient Assignment, if the vApp supports OVF-assigned IP
   configuration and the network has an IP range configured.
   <li>Fixed Assignment, if the vApp supports OVF-assigned IP
   configuration.
   <li>Fixed Allocated, if the vApp supports OVF-assigned IP
   configuration and the network has an IP range configured.
 </ul>
  <p>
  Transient and fixed assignment differs in the life time of the IP
  allocation. For transient, IP addresses are automatically assigned on
  power-on and released on power-off. For fixed, the IP
  addresses are explicitly specified by the deployer and does not change
  between a power-on/power-off.
  Fixed allocated is a hybrid of transient and fixed assignment. IP
  addresses are allocated at first power-on and remain allocated on power-off.
  <p>
  The IPAssignment settings are global to a deployment. Thus, if a vApp or
  virtual machine is part of another vApp, then the settings are ignored,
  and the ones for the top-most vApp container is used.]]>
      </description-html>
            <property name="supportedAllocationScheme" type-id-ref="java.lang.String"
      vmodl-name="supportedAllocationScheme"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Specifies the IP allocation schemes supported by the guest software.
 <p>
 When updating this field, an empty array will be interpreted as no changes.
 An array of the form [""] will clear all settings. Otherwise, the supplied
 value will overwrite the current setting.
 <p>
 Reconfigure privilege: VApp.ApplicationConfig]]>
      </description-html>
      </property>

            <property name="ipAllocationPolicy" type-id-ref="java.lang.String"
      vmodl-name="ipAllocationPolicy"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Specifies how IP allocation should be managed by the VI platform. This is
 typically specified by the deployer. The set of valid options for the policy
 is based on the capabilities of the vApp software, as specified by the
 supportedAllocationSchemes property.
 <p>
 Reconfigure privilege: VApp.InstanceConfig]]>
      </description-html>
      </property>

            <property name="supportedIpProtocol" type-id-ref="java.lang.String"
      vmodl-name="supportedIpProtocol"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Specifies the IP protocols supported by the guest software.
 <p>
 When updating this field, an empty array will be interpreted as no changes.
 An array of the form [""] will clear all settings. Otherwise, the supplied
 value will overwrite the current setting.
 <p>
 Reconfigure privilege: VApp.ApplicationConfig]]>
      </description-html>
      </property>

            <property name="ipProtocol" type-id-ref="java.lang.String"
      vmodl-name="ipProtocol"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Specifies the chosen IP protocol for this deployment. This must be one of the
 values in the supportedIpProtocol field.
 <p>
 Reconfigure privilege: VApp.InstanceConfig]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.vApp.IPAssignmentInfo.IpAllocationPolicy</nested-type-id-ref>
      <nested-type-id-ref>vim.vApp.IPAssignmentInfo.AllocationSchemes</nested-type-id-ref>
      <nested-type-id-ref>vim.vApp.IPAssignmentInfo.Protocols</nested-type-id-ref>
   </data-object>
   <data-object name="ExtendedElementDescription"
      type-id="vim.ExtendedElementDescription"
      vmodl-name="vim.ExtendedElementDescription"
      version-id-ref="vim.version.version5"
      base-type-id="vim.ElementDescription"
      >
            <property name="messageCatalogKeyPrefix" type-id-ref="java.lang.String"
      vmodl-name="messageCatalogKeyPrefix"
      >
      <description-html>
         <![CDATA[Key to the localized message string in the catalog.
 If the localized string contains parameters, values to the
 parameters will be provided in #messageArg.

    E.g: If the message in the catalog is
 "IP address is {address}", value for "address"
 will be provided by #messageArg.

    Both summary and label in ElementDescription will have a corresponding
 entry in the message catalog with the keys
 <messageCatalogKeyPrefix>.summary and <messageCatalogKeyPrefix>.label
 respectively.

 ElementDescription.summary and ElementDescription.label will contain
 the strings in server locale.]]>
      </description-html>
      </property>

            <property name="messageArg" type-id-ref="vmodl.KeyAnyValue"
      vmodl-name="messageArg"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Provides named arguments that can be used to localize the
 message in the catalog.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="OvfParseDescriptorParams"
      type-id="vim.OvfManager.ParseDescriptorParams"
      vmodl-name="vim.OvfManager.ParseDescriptorParams"
      enclosing-type-id-ref="vim.OvfManager"
      version-id-ref="vim.version.version5"
      base-type-id="vim.OvfManager.CommonParams"
      >
   </data-object>
   <data-object name="HostLowLevelProvisioningManagerFileDeleteResult"
      type-id="vim.host.LowLevelProvisioningManager.FileDeleteResult"
      vmodl-name="vim.host.LowLevelProvisioningManager.FileDeleteResult"
      enclosing-type-id-ref="vim.host.LowLevelProvisioningManager"
      version-id-ref="vim.version.version10"
      base-type-id="vmodl.DynamicData"
      >
            <property name="fileName" type-id-ref="java.lang.String"
      vmodl-name="fileName"
      >
      </property>

            <property name="fault" type-id-ref="vmodl.LocalizedMethodFault"
      vmodl-name="fault"
      >
      </property>

   </data-object>
   <data-object name="AlarmEmailFailedEvent"
      type-id="vim.event.AlarmEmailFailedEvent"
      vmodl-name="vim.event.AlarmEmailFailedEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.AlarmEvent"
      >
      <description-html>
         <![CDATA[This event records a failure to complete an alarm email notification.]]>
      </description-html>
            <property name="entity" type-id-ref="vim.event.ManagedEntityEventArgument"
      vmodl-name="entity"
      >
      <description-html>
         <![CDATA[The entity with which the alarm is registered.]]>
      </description-html>
      </property>

            <property name="to" type-id-ref="java.lang.String"
      vmodl-name="to"
      >
      <description-html>
         <![CDATA[The destination email address.]]>
      </description-html>
      </property>

            <property name="reason" type-id-ref="vmodl.LocalizedMethodFault"
      vmodl-name="reason"
      >
      <description-html>
         <![CDATA[The reason for the failure.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="AlarmAction"
      type-id="vim.alarm.AlarmAction"
      vmodl-name="vim.alarm.AlarmAction"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Action invoked by triggered alarm.
  <p>
  This is an abstract type.]]>
      </description-html>
   </data-object>
   <data-object name="IoFilterQueryIssueResult"
      type-id="vim.IoFilterManager.QueryIssueResult"
      vmodl-name="vim.IoFilterManager.QueryIssueResult"
      enclosing-type-id-ref="vim.IoFilterManager"
      version-id-ref="vim.version.version10"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Result for <a href="vim.IoFilterManager.html#queryIssue">QueryIoFilterIssues</a>.]]>
      </description-html>
            <property name="opType" type-id-ref="java.lang.String"
      vmodl-name="opType"
      >
      <description-html>
         <![CDATA[The type of the operation performed on the IO Filter.

 The set of possible values are defined in
 <a href="vim.IoFilterManager.OperationType.html">IoFilterOperation</a>.]]>
      </description-html>
      </property>

            <property name="hostIssue" type-id-ref="vim.IoFilterManager.QueryIssueResult.HostIssue"
      vmodl-name="hostIssue"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The issues on hosts.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.IoFilterManager.QueryIssueResult.HostIssue</nested-type-id-ref>
   </data-object>
   <data-object name="UserSession"
      type-id="vim.UserSession"
      vmodl-name="vim.UserSession"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Information about a current user session.]]>
      </description-html>
            <property name="key" type-id-ref="java.lang.String"
      vmodl-name="key"
      >
      <description-html>
         <![CDATA[A unique identifier for this session,
  also known as the session ID.]]>
      </description-html>
      </property>

            <property name="userName" type-id-ref="java.lang.String"
      vmodl-name="userName"
      >
      <description-html>
         <![CDATA[The user name represented by this session.]]>
      </description-html>
      </property>

            <property name="fullName" type-id-ref="java.lang.String"
      vmodl-name="fullName"
      >
      <description-html>
         <![CDATA[The full name of the user, if available.]]>
      </description-html>
      </property>

            <property name="loginTime" type-id-ref="vmodl.DateTime"
      vmodl-name="loginTime"
      >
      <description-html>
         <![CDATA[Timestamp when the user last logged on to the server.]]>
      </description-html>
      </property>

            <property name="lastActiveTime" type-id-ref="vmodl.DateTime"
      vmodl-name="lastActiveTime"
      >
      <description-html>
         <![CDATA[Timestamp when the user last executed a command.]]>
      </description-html>
      </property>

            <property name="locale" type-id-ref="java.lang.String"
      vmodl-name="locale"
      >
      <description-html>
         <![CDATA[The locale for the session used for data formatting and preferred for messages.]]>
      </description-html>
      </property>

            <property name="messageLocale" type-id-ref="java.lang.String"
      vmodl-name="messageLocale"
      >
      <description-html>
         <![CDATA[The locale used for messages for the session.
 If there are no localized messages for the user-specified locale, then
 the server determines this locale.]]>
      </description-html>
      </property>

            <property name="extensionSession" type-id-ref="BOOLEAN"
      vmodl-name="extensionSession"
      version-id-ref="vim.version.version7"
      >
      <description-html>
         <![CDATA[Whether or not this session belongs to a VC Extension.]]>
      </description-html>
      </property>

            <property name="ipAddress" type-id-ref="java.lang.String"
      vmodl-name="ipAddress"
      version-id-ref="vim.version.version8"
      >
      <description-html>
         <![CDATA[The client identity. It could be IP address, or pipe name depended
 on client binding]]>
      </description-html>
      </property>

            <property name="userAgent" type-id-ref="java.lang.String"
      vmodl-name="userAgent"
      version-id-ref="vim.version.version8"
      >
      <description-html>
         <![CDATA[The name of user agent or application]]>
      </description-html>
      </property>

            <property name="callCount" type-id-ref="LONG"
      vmodl-name="callCount"
      version-id-ref="vim.version.version8"
      >
      <description-html>
         <![CDATA[Number of API invocations since the session started]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="AlarmEmailCompletedEvent"
      type-id="vim.event.AlarmEmailCompletedEvent"
      vmodl-name="vim.event.AlarmEmailCompletedEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.AlarmEvent"
      >
      <description-html>
         <![CDATA[This event records the completion of an alarm email notification.]]>
      </description-html>
            <property name="entity" type-id-ref="vim.event.ManagedEntityEventArgument"
      vmodl-name="entity"
      >
      <description-html>
         <![CDATA[The entity with which the alarm is registered.]]>
      </description-html>
      </property>

            <property name="to" type-id-ref="java.lang.String"
      vmodl-name="to"
      >
      <description-html>
         <![CDATA[The destination email address.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ResourceViolatedEvent"
      type-id="vim.event.ResourceViolatedEvent"
      vmodl-name="vim.event.ResourceViolatedEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.ResourcePoolEvent"
      >
      <description-html>
         <![CDATA[This event records when a conflict with a resource pool's resource
 configuration is detected.]]>
      </description-html>
   </data-object>
   <data-object name="GuestAuthAnySubject"
      type-id="vim.vm.guest.AliasManager.GuestAuthAnySubject"
      vmodl-name="vim.vm.guest.AliasManager.GuestAuthAnySubject"
      enclosing-type-id-ref="vim.vm.guest.AliasManager"
      version-id-ref="vim.version.version10"
      base-type-id="vim.vm.guest.AliasManager.GuestAuthSubject"
      >
      <description-html>
         <![CDATA[The ANY subject.  When an in-guest user account is configured
 to trust an alias using the ANY subject, any vSphere user
 authenticated by that alias will be allowed to impersonate the
 in-guest user.]]>
      </description-html>
   </data-object>
   <data-object name="HostLicensableResourceInfo"
      type-id="vim.LicenseManager.LicensableResourceInfo"
      vmodl-name="vim.LicenseManager.LicensableResourceInfo"
      enclosing-type-id-ref="vim.LicenseManager"
      version-id-ref="vim.version.version7"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Encapsulates information about all licensable resources on the host.]]>
      </description-html>
            <property name="resource" type-id-ref="vmodl.KeyAnyValue"
      vmodl-name="resource"
      is-array="true"
      >
      <description-html>
         <![CDATA[List of currently supported resources.
 The type of every value is long. The key can be one of ResourceKey
 or arbitrary string.
 <p>NOTE:
   The values in this property may not be accurate for pre-5.0 hosts when returned by vCenter 5.0]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.LicenseManager.LicensableResourceInfo.ResourceKey</nested-type-id-ref>
   </data-object>
   <data-object name="HostParallelScsiHba"
      type-id="vim.host.ParallelScsiHba"
      vmodl-name="vim.host.ParallelScsiHba"
      version-id-ref="vim.version.version1"
      base-type-id="vim.host.HostBusAdapter"
      >
      <description-html>
         <![CDATA[The ParallelScsiHba data object type describes a
  parallel SCSI host bus adapter.]]>
      </description-html>
   </data-object>
   <data-object name="UplinkPortMtuNotSupportEvent"
      type-id="vim.event.UplinkPortMtuNotSupportEvent"
      vmodl-name="vim.event.UplinkPortMtuNotSupportEvent"
      version-id-ref="vim.version.version8"
      base-type-id="vim.event.DvsHealthStatusChangeEvent"
      >
      <description-html>
         <![CDATA[Mtu health check status of an uplink port is changed, and in the latest mtu health check,
  not all the vlans' MTU setting on physical switch allows vSphere Distributed Switch
  max MTU size packets passing.]]>
      </description-html>
   </data-object>
   <data-object name="ScheduledTaskEvent"
      type-id="vim.event.ScheduledTaskEvent"
      vmodl-name="vim.event.ScheduledTaskEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.Event"
      >
      <description-html>
         <![CDATA[These events are scheduled task events.]]>
      </description-html>
            <property name="scheduledTask" type-id-ref="vim.event.ScheduledTaskEventArgument"
      vmodl-name="scheduledTask"
      >
      <description-html>
         <![CDATA[The scheduled task object.]]>
      </description-html>
      </property>

            <property name="entity" type-id-ref="vim.event.ManagedEntityEventArgument"
      vmodl-name="entity"
      >
      <description-html>
         <![CDATA[The entity on which the scheduled task registered.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ClusterDpmConfigInfo"
      type-id="vim.cluster.DpmConfigInfo"
      vmodl-name="vim.cluster.DpmConfigInfo"
      version-id-ref="vim.version.version2"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Configuration of the VMware DPM service.
  <p>
  All fields are defined as optional. In case of a reconfiguration,
  unset fields are not changed.]]>
      </description-html>
            <property name="enabled" type-id-ref="BOOLEAN"
      vmodl-name="enabled"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Flag indicating whether or not the service is enabled. This
 service can not be enabled, unless DRS is enabled as well.]]>
      </description-html>
      </property>

            <property name="defaultDpmBehavior" type-id-ref="vim.cluster.DpmConfigInfo.DpmBehavior"
      vmodl-name="defaultDpmBehavior"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Specifies the default VMware DPM behavior for
  hosts. This default behavior can be overridden on a per host
  basis using the <a href="vim.cluster.DpmHostConfigInfo.html">ClusterDpmHostConfigInfo</a> object.]]>
      </description-html>
      </property>

            <property name="hostPowerActionRate" type-id-ref="INT"
      vmodl-name="hostPowerActionRate"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[DPM generates only those recommendations that are above the
  specified rating. Ratings vary from 1 to 5. This setting applies
  to both manual and automated (@link DpmBehavior) DPM clusters.]]>
      </description-html>
      </property>

            <property name="option" type-id-ref="vim.option.OptionValue"
      vmodl-name="option"
      is-deprecated="true"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Advanced settings.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[as of vSphere API 4.1, use
 <a href="vim.cluster.DrsConfigInfo.html#option">option</a>.]]>
      </deprecated-html>
      </property>

      <nested-type-id-ref>vim.cluster.DpmConfigInfo.DpmBehavior</nested-type-id-ref>
   </data-object>
   <data-object name="ClusterComputeResourceDVSConfigurationValidation"
      type-id="vim.ClusterComputeResource.DVSConfigurationValidation"
      vmodl-name="vim.ClusterComputeResource.DVSConfigurationValidation"
      enclosing-type-id-ref="vim.ClusterComputeResource"
      version-id-ref="vim.version.version13"
      base-type-id="vim.ClusterComputeResource.ValidationResultBase"
      >
      <description-html>
         <![CDATA[Describes the validations applicable to the network settings. These
 are based off the information recorded in
 <a href="vim.ClusterComputeResource.HCIConfigInfo.html#dvsSetting">dvsSetting</a>.]]>
      </description-html>
            <property name="isDvsValid" type-id-ref="BOOLEAN"
      vmodl-name="isDvsValid"
      >
      <description-html>
         <![CDATA[Check if the DVS is alive.]]>
      </description-html>
      </property>

            <property name="isDvpgValid" type-id-ref="BOOLEAN"
      vmodl-name="isDvpgValid"
      >
      <description-html>
         <![CDATA[Check if the portgroups are valid.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DvsNetworkRuleAction"
      type-id="vim.dvs.TrafficRule.Action"
      vmodl-name="vim.dvs.TrafficRule.Action"
      enclosing-type-id-ref="vim.dvs.TrafficRule"
      version-id-ref="vim.version.version9"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This class is the base class for network rule action.]]>
      </description-html>
   </data-object>
   <data-object name="DasAgentFoundEvent"
      type-id="vim.event.DasAgentFoundEvent"
      vmodl-name="vim.event.DasAgentFoundEvent"
      version-id-ref="vim.version.version1"
      is-deprecated="true"
      base-type-id="vim.event.ClusterEvent"
      >
      <description-html>
         <![CDATA[This event records that VirtualCenter has re-established contact with a
 primary host in this HA cluster.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 5.0, the event is no longer relevant.]]>
      </deprecated-html>
   </data-object>
   <data-object name="HostDiskMappingPartitionInfo"
      type-id="vim.vm.device.HostDiskMappingInfo.PartitionInfo"
      vmodl-name="vim.vm.device.HostDiskMappingInfo.PartitionInfo"
      enclosing-type-id-ref="vim.vm.device.HostDiskMappingInfo"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The PhysicalPartitionInfo data class.]]>
      </description-html>
            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      >
      <description-html>
         <![CDATA[Partition name.]]>
      </description-html>
      </property>

            <property name="fileSystem" type-id-ref="java.lang.String"
      vmodl-name="fileSystem"
      >
      <description-html>
         <![CDATA[Filesystem, if the partition is formatted.]]>
      </description-html>
      </property>

            <property name="capacityInKb" type-id-ref="LONG"
      vmodl-name="capacityInKb"
      >
      <description-html>
         <![CDATA[Partition capacity, in KB.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="EVCMode"
      type-id="vim.EVCMode"
      vmodl-name="vim.EVCMode"
      version-id-ref="vim.version.version5"
      base-type-id="vim.ElementDescription"
      >
      <description-html>
         <![CDATA[The <a href="vim.EVCMode.html">EVCMode</a> data object describes an Enhanced vMotion Compatibility mode.
  An EVC mode is associated with a set of CPU features. A vCenter Server defines
  the available EVC modes. You use them to establish a common set of features
  for compatibility between hosts in a cluster. An EVC-enabled cluster supports
  safe vMotion of virtual machines across a range of CPU generations.
  You must use the vSphere Client to configure EVC.
  <p>
  When you add a host to an EVC-enabled cluster, the vCenter Server determines
  the CPU compatibility to preserve vMotion compatibility within the cluster.
  If the host CPU is compatible with those already in the cluster, the Server
  adds the host to the cluster and configures it for compatible operation.
  Hosts that are not compatible are not allowed to join the cluster.
  <p>
  The inherited <a href="vim.ElementDescription.html#key">key</a> property is a string value
  that uniquely identifies an EVC mode. The vCenter Server assigns
  the key value; the vSphere API uses the key to identify modes
  in summary and information objects:
  <ul>
    <li><a href="vim.ClusterComputeResource.Summary.html">ClusterComputeResourceSummary</a>.<a href="vim.ClusterComputeResource.Summary.html#currentEVCModeKey">currentEVCModeKey</a></li>
    <li><a href="vim.host.Summary.html">HostListSummary</a>.<a href="vim.host.Summary.html#currentEVCModeKey">currentEVCModeKey</a></li>
    <li><a href="vim.host.Summary.html">HostListSummary</a>.<a href="vim.host.Summary.html#maxEVCModeKey">maxEVCModeKey</a></li>
    <li><a href="vim.vm.RuntimeInfo.html">VirtualMachineRuntimeInfo</a>.<a href="vim.vm.RuntimeInfo.html#minRequiredEVCModeKey">minRequiredEVCModeKey</a></li>
  </ul>
  <p>
  The inherited <a href="vim.Description.html#label">label</a> and <a href="vim.Description.html#summary">summary</a>
  properties are human-readable strings.
  <p>
  You can use the <a href="vim.EVCMode.html#track">track</a> and <a href="vim.EVCMode.html#vendorTier">vendorTier</a> properties to determine
  feature-superset relationships between modes without examining the
  individual feature bits in <a href="vim.EVCMode.html#guaranteedCPUFeatures">guaranteedCPUFeatures</a>.
  The CPU feature baseline of mode A is a superset of mode B's baseline
  if and only if:
  <ul>
  <li>modeA.track is the same as or a superset of modeB.track</li>
  <li>modeA.vendorTier is equal to or greater than modeB.vendorTier</li>
  </ul>
  Use the <a href="vim.EVCMode.html#track">track</a> and <a href="vim.EVCMode.html#vendorTier">vendorTier</a> properties only for the
  purpose of feature-superset calculations as described above. Do not use
  them to infer the presence or absence of specific features. The
  property values for a given mode may change across releases
  as the set of available EVC modes changes, to better represent mode
  relationships.]]>
      </description-html>
            <property name="guaranteedCPUFeatures" type-id-ref="vim.host.CpuIdInfo"
      vmodl-name="guaranteedCPUFeatures"
      version-id-ref="vim.version.version6"
      is-deprecated="true"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Describes the CPU feature baseline associated with the EVC mode.
 On the cluster where a particular EVC mode is configured,
 those CPU features are guaranteed, either because the host
 hardware naturally matches those features or because CPU feature override
 is used to mask out differences and enforce a match.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 6.5 use <a href="vim.EVCMode.html#featureCapability">featureCapability</a>]]>
      </deprecated-html>
      </property>

            <property name="featureCapability" type-id-ref="vim.host.FeatureCapability"
      vmodl-name="featureCapability"
      version-id-ref="vim.version.version8"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Describes the feature capability baseline associated with the EVC mode.
 On the cluster where a particular EVC mode is configured,
 these features capabilities are guaranteed, either because the host
 hardware naturally matches those features or because feature masks
 are used to mask out differences and enforce a match.]]>
      </description-html>
      </property>

            <property name="featureMask" type-id-ref="vim.host.FeatureMask"
      vmodl-name="featureMask"
      version-id-ref="vim.version.version8"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The masks (modifications to a host's feature capabilities) that limit a
 host's capabilities to that of the EVC mode baseline.]]>
      </description-html>
      </property>

            <property name="featureRequirement" type-id-ref="vim.vm.FeatureRequirement"
      vmodl-name="featureRequirement"
      version-id-ref="vim.version.version8"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The conditions that must be true of a host's feature capabilities in order
 for the host to meet the minimum requirements of the EVC mode baseline.]]>
      </description-html>
      </property>

            <property name="vendor" type-id-ref="java.lang.String"
      vmodl-name="vendor"
      >
      <description-html>
         <![CDATA[CPU hardware vendor required for this mode.]]>
      </description-html>
      </property>

            <property name="track" type-id-ref="java.lang.String"
      vmodl-name="track"
      version-id-ref="vim.version.version6"
      is-array="true"
      >
      <description-html>
         <![CDATA[Identifiers for feature groups that are at least partially present in
  the <a href="vim.EVCMode.html#guaranteedCPUFeatures">guaranteedCPUFeatures</a> array for this mode.
  Use this property to compare track values from two modes.
  Do not use this property to determine the presence or absence of
  specific features.]]>
      </description-html>
      </property>

            <property name="vendorTier" type-id-ref="INT"
      vmodl-name="vendorTier"
      >
      <description-html>
         <![CDATA[Index for ordering the set of modes that apply to a given CPU vendor.
  Use this property to compare vendor tier values from two modes.
  Do not use this property to determine the presence or absence
  of specific features.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VMwareDVSPortgroupPolicy"
      type-id="vim.dvs.VmwareDistributedVirtualSwitch.VMwarePortgroupPolicy"
      vmodl-name="vim.dvs.VmwareDistributedVirtualSwitch.VMwarePortgroupPolicy"
      enclosing-type-id-ref="vim.dvs.VmwareDistributedVirtualSwitch"
      version-id-ref="vim.version.version5"
      base-type-id="vim.dvs.DistributedVirtualPortgroup.PortgroupPolicy"
      >
      <description-html>
         <![CDATA[This class defines the VMware specific configuration for
  DistributedVirtualPort.]]>
      </description-html>
            <property name="vlanOverrideAllowed" type-id-ref="BOOLEAN"
      vmodl-name="vlanOverrideAllowed"
      >
      <description-html>
         <![CDATA[Allow the setting of
  <a href="vim.dvs.VmwareDistributedVirtualSwitch.VlanIdSpec.html#vlanId">vlanId</a>, trunk
  <a href="vim.dvs.VmwareDistributedVirtualSwitch.TrunkVlanSpec.html#vlanId">vlanId</a>, or
  <a href="vim.dvs.VmwareDistributedVirtualSwitch.PvlanSpec.html#pvlanId">pvlanId</a>
  for an individual port to override the setting in
  <a href="vim.dvs.DistributedVirtualPortgroup.ConfigInfo.html#defaultPortConfig">defaultPortConfig</a> of
  a portgroup.]]>
      </description-html>
      </property>

            <property name="uplinkTeamingOverrideAllowed" type-id-ref="BOOLEAN"
      vmodl-name="uplinkTeamingOverrideAllowed"
      >
      <description-html>
         <![CDATA[Allow the setting of
  <a href="vim.dvs.VmwareDistributedVirtualSwitch.VmwarePortConfigPolicy.html#uplinkTeamingPolicy">uplinkTeamingPolicy</a>
  for an individual port to override the setting in
  <a href="vim.dvs.DistributedVirtualPortgroup.ConfigInfo.html#defaultPortConfig">defaultPortConfig</a> of
  a portgroup.]]>
      </description-html>
      </property>

            <property name="securityPolicyOverrideAllowed" type-id-ref="BOOLEAN"
      vmodl-name="securityPolicyOverrideAllowed"
      is-deprecated="true"
      >
      <description-html>
         <![CDATA[deprecated As of vSphere API 6.7.1, use
  VMwarePortgroupPolicy#macManagementOverrideAllowed instead.
  Allow the setting of
  <a href="vim.dvs.VmwareDistributedVirtualSwitch.VmwarePortConfigPolicy.html#securityPolicy">securityPolicy</a>
  for an individual port to override the setting in
  <a href="vim.dvs.DistributedVirtualPortgroup.ConfigInfo.html#defaultPortConfig">defaultPortConfig</a> of
  a portgroup.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 6.7.1, use
  VMwarePortgroupPolicy#macManagementOverrideAllowed instead.
  Allow the setting of
  <a href="vim.dvs.VmwareDistributedVirtualSwitch.VmwarePortConfigPolicy.html#securityPolicy">securityPolicy</a>
  for an individual port to override the setting in
  <a href="vim.dvs.DistributedVirtualPortgroup.ConfigInfo.html#defaultPortConfig">defaultPortConfig</a> of
  a portgroup.]]>
      </deprecated-html>
      </property>

            <property name="ipfixOverrideAllowed" type-id-ref="BOOLEAN"
      vmodl-name="ipfixOverrideAllowed"
      version-id-ref="vim.version.version7"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Allow the setting of
  <a href="vim.dvs.VmwareDistributedVirtualSwitch.VmwarePortConfigPolicy.html#ipfixEnabled">ipfixEnabled</a>
  for an individual port to override the setting in
  <a href="vim.dvs.DistributedVirtualPortgroup.ConfigInfo.html#defaultPortConfig">defaultPortConfig</a> of
  a portgroup.]]>
      </description-html>
      </property>

            <property name="macManagementOverrideAllowed" type-id-ref="BOOLEAN"
      vmodl-name="macManagementOverrideAllowed"
      version-id-ref="vim.version.version13"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Allow the setting of
  <a href="vim.dvs.VmwareDistributedVirtualSwitch.VmwarePortConfigPolicy.html#macManagementPolicy">macManagementPolicy</a>
  for an individual port to override the setting in
  <a href="vim.dvs.DistributedVirtualPortgroup.ConfigInfo.html#defaultPortConfig">defaultPortConfig</a> of
  a portgroup.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostLowLevelProvisioningManagerFileReserveSpec"
      type-id="vim.host.LowLevelProvisioningManager.FileReserveSpec"
      vmodl-name="vim.host.LowLevelProvisioningManager.FileReserveSpec"
      enclosing-type-id-ref="vim.host.LowLevelProvisioningManager"
      version-id-ref="vim.version.version10"
      base-type-id="vmodl.DynamicData"
      >
            <property name="baseName" type-id-ref="java.lang.String"
      vmodl-name="baseName"
      >
      </property>

            <property name="parentDir" type-id-ref="java.lang.String"
      vmodl-name="parentDir"
      >
      </property>

            <property name="fileType" type-id-ref="java.lang.String"
      vmodl-name="fileType"
      >
      </property>

            <property name="storageProfile" type-id-ref="java.lang.String"
      vmodl-name="storageProfile"
      >
      </property>

   </data-object>
   <data-object name="HostNetCapabilities"
      type-id="vim.host.NetCapabilities"
      vmodl-name="vim.host.NetCapabilities"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Capability vector indicating the available product features.]]>
      </description-html>
            <property name="canSetPhysicalNicLinkSpeed" type-id-ref="BOOLEAN"
      vmodl-name="canSetPhysicalNicLinkSpeed"
      >
      <description-html>
         <![CDATA[The flag to indicate whether or not a physical network
  adapter's link speed and duplex settings can be changed through
  this API.  For a hosted product, the host uses its physical network
  adapters for network connectivity.  Configuration of link speed is
  done through regular host operations.  In ESX Server, the configuration
  can be changed through this API.]]>
      </description-html>
      </property>

            <property name="supportsNicTeaming" type-id-ref="BOOLEAN"
      vmodl-name="supportsNicTeaming"
      >
      <description-html>
         <![CDATA[The flag to indicate whether or not network adapter teaming is
  available.  Multiple network adapters can be bridged to a
  virtual switch through a BondBridge.  Also, network adapter teaming
  policies such as failover order and detection are enabled.]]>
      </description-html>
      </property>

            <property name="nicTeamingPolicy" type-id-ref="java.lang.String"
      vmodl-name="nicTeamingPolicy"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The available teaming policies if the platform supports network
  adapter teaming.]]>
      </description-html>
      </property>

            <property name="supportsVlan" type-id-ref="BOOLEAN"
      vmodl-name="supportsVlan"
      >
      <description-html>
         <![CDATA[The flag to indicate whether or not VLANs can be configured on
  PortGroups attached to VirtualSwitch objects.
  This allows VLANs for virtual machines without requiring special VLAN
  capable hardware switches.]]>
      </description-html>
      </property>

            <property name="usesServiceConsoleNic" type-id-ref="BOOLEAN"
      vmodl-name="usesServiceConsoleNic"
      >
      <description-html>
         <![CDATA[The flag to indicate whether or not a service
  console network adapter
  is used or required.  This means that the system
  software has two TCP/IP stacks.  As a result, at least two types of
  VirtualNics may be created -- the normal VirtualNic and the service
  console VirtualNic.  If this is not set, then only the VirtualNic type is
  supported.]]>
      </description-html>
      </property>

            <property name="supportsNetworkHints" type-id-ref="BOOLEAN"
      vmodl-name="supportsNetworkHints"
      >
      <description-html>
         <![CDATA[The flag to indicate whether or not the host is able
  to support
  the querying of network hints.]]>
      </description-html>
      </property>

            <property name="maxPortGroupsPerVswitch" type-id-ref="INT"
      vmodl-name="maxPortGroupsPerVswitch"
      version-id-ref="vim.version.version2"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The maximum number of port groups supported per virtual switch.
 This property will not be set if this value is unlimited.]]>
      </description-html>
      </property>

            <property name="vswitchConfigSupported" type-id-ref="BOOLEAN"
      vmodl-name="vswitchConfigSupported"
      version-id-ref="vim.version.version2"
      >
      <description-html>
         <![CDATA[The flag to indicate whether virtual switch configuration is
  supported. This means that operations to add, remove, update virtual
  switches are supported.]]>
      </description-html>
      </property>

            <property name="vnicConfigSupported" type-id-ref="BOOLEAN"
      vmodl-name="vnicConfigSupported"
      version-id-ref="vim.version.version2"
      >
      <description-html>
         <![CDATA[The flag to indicate whether Virtual NIC configuration is supported.
  This means that operations to add, remove, update virtualNic are
  supported.]]>
      </description-html>
      </property>

            <property name="ipRouteConfigSupported" type-id-ref="BOOLEAN"
      vmodl-name="ipRouteConfigSupported"
      version-id-ref="vim.version.version2"
      >
      <description-html>
         <![CDATA[The flag to indicate whether ip route configuration for the host
  is supported.]]>
      </description-html>
      </property>

            <property name="dnsConfigSupported" type-id-ref="BOOLEAN"
      vmodl-name="dnsConfigSupported"
      version-id-ref="vim.version.version2"
      >
      <description-html>
         <![CDATA[The flag to indicate whether DNS configuration for the host is
  supported.]]>
      </description-html>
      </property>

            <property name="dhcpOnVnicSupported" type-id-ref="BOOLEAN"
      vmodl-name="dhcpOnVnicSupported"
      version-id-ref="vim.version.version2"
      >
      <description-html>
         <![CDATA[This flag indicates whether or not the host is able to support
  dhcp configuration for vnics.]]>
      </description-html>
      </property>

            <property name="ipV6Supported" type-id-ref="BOOLEAN"
      vmodl-name="ipV6Supported"
      version-id-ref="vim.version.version5"
      >
      <description-html>
         <![CDATA[The flag to indicate whether the host is capable of communicating
  using ipv6 protocol]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VmwareDistributedVirtualSwitchTrunkVlanSpec"
      type-id="vim.dvs.VmwareDistributedVirtualSwitch.TrunkVlanSpec"
      vmodl-name="vim.dvs.VmwareDistributedVirtualSwitch.TrunkVlanSpec"
      enclosing-type-id-ref="vim.dvs.VmwareDistributedVirtualSwitch"
      version-id-ref="vim.version.version5"
      base-type-id="vim.dvs.VmwareDistributedVirtualSwitch.VlanSpec"
      >
      <description-html>
         <![CDATA[This data type specifies that the port uses trunk mode,
 which allows the guest operating system to manage its own VLAN tags.]]>
      </description-html>
            <property name="vlanId" type-id-ref="vim.NumericRange"
      vmodl-name="vlanId"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The VlanId range for the trunk port. The valid VlanId range is
  from 0 to 4094. Overlapping ranges are allowed.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="FileTransferInformation"
      type-id="vim.vm.guest.FileManager.FileTransferInformation"
      vmodl-name="vim.vm.guest.FileManager.FileTransferInformation"
      enclosing-type-id-ref="vim.vm.guest.FileManager"
      version-id-ref="vim.version.version7"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Represents the information about a
 <a href="vim.vm.guest.FileManager.html#initiateFileTransferFromGuest">InitiateFileTransferFromGuest</a> operation
 of <a href="vim.vm.guest.FileManager.html">GuestFileManager</a> object.
 <p>
 The user can use the URL provided in url property to transfer
 the file from the guest. The user should send a HTTP GET request to the
 URL. Entire file content will be returned in the body of the response
 message.]]>
      </description-html>
            <property name="attributes" type-id-ref="vim.vm.guest.FileManager.FileAttributes"
      vmodl-name="attributes"
      >
      <description-html>
         <![CDATA[File attributes of the file that is being transferred from the guest.]]>
      </description-html>
      </property>

            <property name="size" type-id-ref="LONG"
      vmodl-name="size"
      >
      <description-html>
         <![CDATA[Total size of the file in bytes.]]>
      </description-html>
      </property>

            <property name="url" type-id-ref="java.lang.String"
      vmodl-name="url"
      >
      <description-html>
         <![CDATA[Specifies the URL to which the user has to send HTTP GET request.
 Multiple GET requests cannot be sent to the URL simultaneously. URL
 will become invalid once a successful GET request is sent.

 <br>
 <br>
 The host part of the URL is returned as '*' if the hostname to be used
 is the name of the server to which the call was made. For example, if
 the call is made to esx-svr-1.domain1.com, and the file is available for
 download from
 https://esx-svr-1.domain1.com/guestFile?id=1&token=1234,
 the URL returned may be
 https://&#42;/guestFile?id=1&token=1234.
 The client replaces the asterisk with the server name on which it
 invoked the call.

 <br>
 <br>
 The URL is valid only for 10 minutes from the time it is generated.
 Also, the URL becomes invalid whenever the virtual machine is powered
 off, suspended or unregistered.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostIpRouteTableInfo"
      type-id="vim.host.IpRouteTableInfo"
      vmodl-name="vim.host.IpRouteTableInfo"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[IpRouteTableInfo. This is the list of all static routes on the host]]>
      </description-html>
            <property name="ipRoute" type-id-ref="vim.host.IpRouteEntry"
      vmodl-name="ipRoute"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The array of IpRouteEntry]]>
      </description-html>
      </property>

            <property name="ipv6Route" type-id-ref="vim.host.IpRouteEntry"
      vmodl-name="ipv6Route"
      is-array="true"
      is-optional="true"
      >
      </property>

   </data-object>
   <data-object name="VMwareDVSMtuHealthCheckResult"
      type-id="vim.dvs.VmwareDistributedVirtualSwitch.MtuHealthCheckResult"
      vmodl-name="vim.dvs.VmwareDistributedVirtualSwitch.MtuHealthCheckResult"
      enclosing-type-id-ref="vim.dvs.VmwareDistributedVirtualSwitch"
      version-id-ref="vim.version.version8"
      base-type-id="vim.dvs.HostMember.UplinkHealthCheckResult"
      >
      <description-html>
         <![CDATA[This class defines MTU health check result of an uplink port
  in the VMware vSphered Distributed Switch.]]>
      </description-html>
            <property name="mtuMismatch" type-id-ref="BOOLEAN"
      vmodl-name="mtuMismatch"
      >
      <description-html>
         <![CDATA[True if the MTU configured in the vSphere Distributed Switch is different from
  the value configured in the Physical NIC, else false. If it is true,
  MTU health check is stopped. In this case, <a href="vim.dvs.VmwareDistributedVirtualSwitch.MtuHealthCheckResult.html#vlanSupportSwitchMtu">vlanSupportSwitchMtu</a> and
  <a href="vim.dvs.VmwareDistributedVirtualSwitch.MtuHealthCheckResult.html#vlanNotSupportSwitchMtu">vlanNotSupportSwitchMtu</a> will not have values.]]>
      </description-html>
      </property>

            <property name="vlanSupportSwitchMtu" type-id-ref="vim.NumericRange"
      vmodl-name="vlanSupportSwitchMtu"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The vlan's MTU setting on physical switch allows vSphere Distributed Switch
  max MTU size packets passing.
  If the vlan is not a range, but a single Id,
  both start and end have the same value with the single vlan Id.]]>
      </description-html>
      </property>

            <property name="vlanNotSupportSwitchMtu" type-id-ref="vim.NumericRange"
      vmodl-name="vlanNotSupportSwitchMtu"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The vlan's MTU setting on physical switch does not allow
  vSphere Distributed Switch max MTU size packets passing.
  If the vlan is not a range, but a single Id,
  both start and end have the same value with the single vlan Id.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VsanClusterConfigInfo"
      type-id="vim.vsan.cluster.ConfigInfo"
      vmodl-name="vim.vsan.cluster.ConfigInfo"
      version-id-ref="vim.version.version9"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The <a href="vim.vsan.cluster.ConfigInfo.html">VsanClusterConfigInfo</a> data object contains configuration
 data for the VSAN service in a cluster.  This data object is used both for
 specifying cluster-wide settings when updating the VSAN service, and as an
 output datatype when retrieving current cluster-wide VSAN service settings.<br>See <a href="vim.ComputeResource.html#reconfigureEx">ReconfigureComputeResource_Task</a><br>]]>
      </description-html>
            <property name="enabled" type-id-ref="BOOLEAN"
      vmodl-name="enabled"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Whether the VSAN service is enabled for the cluster.]]>
      </description-html>
      </property>

            <property name="defaultConfig" type-id-ref="vim.vsan.cluster.ConfigInfo.HostDefaultInfo"
      vmodl-name="defaultConfig"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Default VSAN settings to use for hosts admitted to the cluster when the
 VSAN service is enabled.  If omitted, values will default as though the
 fields in the HostDefaultInfo have been omitted.<br>See <a href="vim.vsan.cluster.ConfigInfo.html#enabled">enabled</a><br>See HostDefaultInfo]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.vsan.cluster.ConfigInfo.HostDefaultInfo</nested-type-id-ref>
   </data-object>
   <data-object name="HostInternetScsiHbaStaticTarget"
      type-id="vim.host.InternetScsiHba.StaticTarget"
      vmodl-name="vim.host.InternetScsiHba.StaticTarget"
      enclosing-type-id-ref="vim.host.InternetScsiHba"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The iSCSI static target.]]>
      </description-html>
            <property name="address" type-id-ref="java.lang.String"
      vmodl-name="address"
      >
      <description-html>
         <![CDATA[The IP address or hostname of the storage device.]]>
      </description-html>
      </property>

            <property name="port" type-id-ref="INT"
      vmodl-name="port"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The TCP port of the storage device.
 If not specified, the standard default of 3260 is used.]]>
      </description-html>
      </property>

            <property name="iScsiName" type-id-ref="java.lang.String"
      vmodl-name="iScsiName"
      >
      <description-html>
         <![CDATA[The iSCSI name of the storage device.]]>
      </description-html>
      </property>

            <property name="discoveryMethod" type-id-ref="java.lang.String"
      vmodl-name="discoveryMethod"
      version-id-ref="vim.version.version8"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Discovery method
 each static target is discovered by some method
 define in TargetDiscoveryMethod.]]>
      </description-html>
      </property>

            <property name="authenticationProperties" type-id-ref="vim.host.InternetScsiHba.AuthenticationProperties"
      vmodl-name="authenticationProperties"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The authentication settings for this target.]]>
      </description-html>
      </property>

            <property name="digestProperties" type-id-ref="vim.host.InternetScsiHba.DigestProperties"
      vmodl-name="digestProperties"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The digest settings for this target.]]>
      </description-html>
      </property>

            <property name="supportedAdvancedOptions" type-id-ref="vim.option.OptionDef"
      vmodl-name="supportedAdvancedOptions"
      version-id-ref="vim.version.version5"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[A list of supported key/value pair advanced options for the
  host bus adapter including their type information.]]>
      </description-html>
      </property>

            <property name="advancedOptions" type-id-ref="vim.host.InternetScsiHba.ParamValue"
      vmodl-name="advancedOptions"
      version-id-ref="vim.version.version5"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[A list of the current options settings for the host bus adapter.]]>
      </description-html>
      </property>

            <property name="parent" type-id-ref="java.lang.String"
      vmodl-name="parent"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The parent entity from which settings can be inherited. It can either
 be unset, or set to the device name of the host bus adapter or the
 name of the SendTarget.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.host.InternetScsiHba.StaticTarget.TargetDiscoveryMethod</nested-type-id-ref>
   </data-object>
   <data-object name="VsanPolicyChangeBatch"
      type-id="vim.host.VsanInternalSystem.PolicyChangeBatch"
      vmodl-name="vim.host.VsanInternalSystem.PolicyChangeBatch"
      enclosing-type-id-ref="vim.host.VsanInternalSystem"
      version-id-ref="vim.version.version9"
      internal-before-version-id-ref="vim.version.version10"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[PolicyChangeBatch --

    Structure to specify a list of object uuids and a policy for what-if
    analysis.]]>
      </description-html>
            <property name="uuid" type-id-ref="java.lang.String"
      vmodl-name="uuid"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[UUIDs of the objects.]]>
      </description-html>
      </property>

            <property name="policy" type-id-ref="java.lang.String"
      vmodl-name="policy"
      is-optional="true"
      >
      <description-html>
         <![CDATA[New policy in SPBM or VSAN expression format.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VStorageObjectSnapshotInfoVStorageObjectSnapshot"
      type-id="vim.vslm.VStorageObjectSnapshotInfo.VStorageObjectSnapshot"
      vmodl-name="vim.vslm.VStorageObjectSnapshotInfo.VStorageObjectSnapshot"
      enclosing-type-id-ref="vim.vslm.VStorageObjectSnapshotInfo"
      version-id-ref="vim.version.version12"
      base-type-id="vmodl.DynamicData"
      >
            <property name="id" type-id-ref="vim.vslm.ID"
      vmodl-name="id"
      is-optional="true"
      >
      <description-html>
         <![CDATA[ID of the snapshot object.]]>
      </description-html>
      </property>

            <property name="backingObjectId" type-id-ref="java.lang.String"
      vmodl-name="backingObjectId"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Backing object ID]]>
      </description-html>
      </property>

            <property name="createTime" type-id-ref="vmodl.DateTime"
      vmodl-name="createTime"
      >
      <description-html>
         <![CDATA[The date and time this object was created.]]>
      </description-html>
      </property>

            <property name="description" type-id-ref="java.lang.String"
      vmodl-name="description"
      >
      <description-html>
         <![CDATA[Short description of the snapshot]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="AnswerFile"
      type-id="vim.profile.host.AnswerFile"
      vmodl-name="vim.profile.host.AnswerFile"
      version-id-ref="vim.version.version7"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The <a href="vim.profile.host.AnswerFile.html">AnswerFile</a> data object contains host-specific information that a host
 will use in combination with a <a href="vim.profile.host.HostProfile.html">HostProfile</a> for configuration.
 Answer files are stored on the vCenter Server, along with host profiles.
 An answer file is always associated with a particular host.
 <p>
 To supply host-specific data:
 <ul>
 <li>Specify deferred parameters when you call the
 <a href="vim.profile.host.HostProfile.html">HostProfile</a>.<a href="vim.profile.host.HostProfile.html#execute">ExecuteHostProfile</a>
 method. The host profile engine will verify the set of parameters for the
 additional configuration data.</li><br/>
 <li>Use the complete required input list
 (<a href="vim.profile.host.ExecuteResult.html">ProfileExecuteResult</a>.<a href="vim.profile.host.ExecuteResult.html#requireInput">requireInput</a>[])
 as user input for the
 <a href="vim.profile.host.ProfileManager.html">HostProfileManager</a>.<a href="vim.profile.host.ProfileManager.html#applyHostConfiguration">ApplyHostConfig_Task</a>
 method. When you apply the profile, the vCenter Server saves the additional configuration
 data in the <a href="vim.profile.host.AnswerFile.html#userInput">userInput</a> list.</li><br/>
 <li>Use the <a href="vim.profile.host.ProfileManager.html">HostProfileManager</a>.<a href="vim.profile.host.ProfileManager.html#updateAnswerFile">UpdateAnswerFile_Task</a> method. This method will update an existing answer file or create a new one.</li>
 </ul>]]>
      </description-html>
            <property name="userInput" type-id-ref="vim.profile.DeferredPolicyOptionParameter"
      vmodl-name="userInput"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List containing host-specific configuration data.]]>
      </description-html>
      </property>

            <property name="createdTime" type-id-ref="vmodl.DateTime"
      vmodl-name="createdTime"
      >
      <description-html>
         <![CDATA[Time at which the answer file was created.]]>
      </description-html>
      </property>

            <property name="modifiedTime" type-id-ref="vmodl.DateTime"
      vmodl-name="modifiedTime"
      >
      <description-html>
         <![CDATA[Time at which the answer file was last modified.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ClusterFailoverHostAdmissionControlInfoHostStatus"
      type-id="vim.cluster.FailoverHostAdmissionControlInfo.HostStatus"
      vmodl-name="vim.cluster.FailoverHostAdmissionControlInfo.HostStatus"
      enclosing-type-id-ref="vim.cluster.FailoverHostAdmissionControlInfo"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Data object containing the status of a failover host.]]>
      </description-html>
            <property name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      >
      <description-html>
         <![CDATA[The failover host.]]>
      </description-html>
      </property>

            <property name="status" type-id-ref="vim.ManagedEntity.Status"
      vmodl-name="status"
      >
      <description-html>
         <![CDATA[The status of the failover host.

 The status is green for a connected host with no vSphere HA errors and
 no virtual machines running on it.
 The status is yellow for a connected host with no vSphere HA errors and
 some virtual machines running on it.
 The status red for a disconnected or not responding host, a host that
 is in maintenance or standby mode or that has a vSphere HA error on it.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ComplianceProfile"
      type-id="vim.profile.ComplianceProfile"
      vmodl-name="vim.profile.ComplianceProfile"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[DataObject contains the verifications that need to be done
 to make sure the entity is in compliance.]]>
      </description-html>
            <property name="expression" type-id-ref="vim.profile.Expression"
      vmodl-name="expression"
      is-array="true"
      >
      <description-html>
         <![CDATA[List of expressions that make up the ComplianceChecks.]]>
      </description-html>
      </property>

            <property name="rootExpression" type-id-ref="java.lang.String"
      vmodl-name="rootExpression"
      >
      <description-html>
         <![CDATA[Name of the Expression which is the root of the expression tree.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostApplyProfile"
      type-id="vim.profile.host.HostApplyProfile"
      vmodl-name="vim.profile.host.HostApplyProfile"
      version-id-ref="vim.version.version5"
      base-type-id="vim.profile.ApplyProfile"
      >
      <description-html>
         <![CDATA[The <a href="vim.profile.host.HostApplyProfile.html">HostApplyProfile</a> data object provides access to subprofiles
 that contain configuration data for different host capabilities.
 The Profile Engine will use any configuration data that you supply
 to overwrite the host configuration. See the  <a href="vim.profile.host.HostProfile.html#execute">ExecuteHostProfile</a>
 and <a href="vim.profile.host.ProfileManager.html#applyHostConfiguration">ApplyHostConfig_Task</a> methods.]]>
      </description-html>
            <property name="memory" type-id-ref="vim.profile.host.HostMemoryProfile"
      vmodl-name="memory"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Memory configuration for the host.
 This may not be valid for all versions of the host.]]>
      </description-html>
      </property>

            <property name="storage" type-id-ref="vim.profile.host.StorageProfile"
      vmodl-name="storage"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Host storage configuration.]]>
      </description-html>
      </property>

            <property name="network" type-id-ref="vim.profile.host.NetworkProfile"
      vmodl-name="network"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Network configuration.]]>
      </description-html>
      </property>

            <property name="datetime" type-id-ref="vim.profile.host.DateTimeProfile"
      vmodl-name="datetime"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Date and time configuration.]]>
      </description-html>
      </property>

            <property name="firewall" type-id-ref="vim.profile.host.FirewallProfile"
      vmodl-name="firewall"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Firewall configuration.]]>
      </description-html>
      </property>

            <property name="security" type-id-ref="vim.profile.host.SecurityProfile"
      vmodl-name="security"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Security Configuration of the host.
 The security subprofile can include data such as administrator passwords.]]>
      </description-html>
      </property>

            <property name="service" type-id-ref="vim.profile.host.ServiceProfile"
      vmodl-name="service"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Host configuration for services.
 Use the <a href="vim.profile.host.ServiceProfile.html#key">key</a> property
 to access a subprofile in the list.]]>
      </description-html>
      </property>

            <property name="option" type-id-ref="vim.profile.host.OptionProfile"
      vmodl-name="option"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of subprofiles representing advanced configuration options.
 Use the <a href="vim.profile.host.OptionProfile.html#key">key</a> property to access a subprofile
 in the list.]]>
      </description-html>
      </property>

            <property name="userAccount" type-id-ref="vim.profile.host.UserProfile"
      vmodl-name="userAccount"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of subprofiles for user accounts to be configured on the host.
 Use the <a href="vim.profile.host.UserProfile.html#key">key</a> property to access a subprofile
 in the list.]]>
      </description-html>
      </property>

            <property name="usergroupAccount" type-id-ref="vim.profile.host.UserGroupProfile"
      vmodl-name="usergroupAccount"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of subprofiles for user groups to be configured on the host.
 Use the <a href="vim.profile.host.UserGroupProfile.html#key">key</a> property to access a subprofile
 in the list.]]>
      </description-html>
      </property>

            <property name="authentication" type-id-ref="vim.profile.host.AuthenticationProfile"
      vmodl-name="authentication"
      version-id-ref="vim.version.version6"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Authentication Configuration.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostNoRedundantManagementNetworkEvent"
      type-id="vim.event.HostNoRedundantManagementNetworkEvent"
      vmodl-name="vim.event.HostNoRedundantManagementNetworkEvent"
      version-id-ref="vim.version.version2"
      base-type-id="vim.event.HostDasEvent"
      >
      <description-html>
         <![CDATA[This event records the fact that a host does not have a redundant
 management network.  It is recommended that host management networks
 be configured with redundancy.]]>
      </description-html>
   </data-object>
   <data-object name="DVSCreateSpec"
      type-id="vim.DistributedVirtualSwitch.CreateSpec"
      vmodl-name="vim.DistributedVirtualSwitch.CreateSpec"
      enclosing-type-id-ref="vim.DistributedVirtualSwitch"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Specification to create a <a href="vim.DistributedVirtualSwitch.html">DistributedVirtualSwitch</a>.]]>
      </description-html>
            <property name="configSpec" type-id-ref="vim.DistributedVirtualSwitch.ConfigSpec"
      vmodl-name="configSpec"
      >
      <description-html>
         <![CDATA[Configuration data.]]>
      </description-html>
      </property>

            <property name="productInfo" type-id-ref="vim.dvs.ProductSpec"
      vmodl-name="productInfo"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Product information for this switch implementation. If you
 do not specify this property, the Server will use the latest
 version to create the <a href="vim.DistributedVirtualSwitch.html">DistributedVirtualSwitch</a>.]]>
      </description-html>
      </property>

            <property name="capability" type-id-ref="vim.DistributedVirtualSwitch.Capability"
      vmodl-name="capability"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Capability of the switch.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="CustomizationPrefixName"
      type-id="vim.vm.customization.PrefixNameGenerator"
      vmodl-name="vim.vm.customization.PrefixNameGenerator"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.customization.NameGenerator"
      >
      <description-html>
         <![CDATA[Specifies that a unique name should be generated by concatenating the base string
  with a number.
  <p>
  Virtual machine names are unique across the set of hosts and virtual machines known
  to the VirtualCenter instance. VirtualCenter tracks the network names of virtual
  machines as well as hosts. VMware Tools runs in a guest operating system and
  reports information to VirtualCenter, including the network name of the guest.]]>
      </description-html>
            <property name="base" type-id-ref="java.lang.String"
      vmodl-name="base"
      >
      <description-html>
         <![CDATA[Base prefix, to which a unique number is appended.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualDiskRawDiskMappingVer1BackingOption"
      type-id="vim.vm.device.VirtualDiskOption.RawDiskMappingVer1BackingOption"
      vmodl-name="vim.vm.device.VirtualDiskOption.RawDiskMappingVer1BackingOption"
      enclosing-type-id-ref="vim.vm.device.VirtualDiskOption"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.device.VirtualDeviceOption.DeviceBackingOption"
      >
      <description-html>
         <![CDATA[The VirtualDiskOption.RawDiskMappingVer1BackingOption object type
  contains the available options when backing a virtual disk using
  a raw device mapping on ESX Server 2.5 or 3.x.]]>
      </description-html>
            <property name="descriptorFileNameExtensions" type-id-ref="vim.option.ChoiceOption"
      vmodl-name="descriptorFileNameExtensions"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Valid extensions for the filename of the optional
  raw disk mapping descriptor file.
  This is present only for ESX Server 3.x and greater hosts.]]>
      </description-html>
      </property>

            <property name="compatibilityMode" type-id-ref="vim.option.ChoiceOption"
      vmodl-name="compatibilityMode"
      >
      <description-html>
         <![CDATA[The supported raw disk mapping compatibility modes.<br>See <a href="vim.vm.device.VirtualDiskOption.CompatibilityMode.html">VirtualDiskCompatibilityMode</a><br>]]>
      </description-html>
      </property>

            <property name="diskMode" type-id-ref="vim.option.ChoiceOption"
      vmodl-name="diskMode"
      >
      <description-html>
         <![CDATA[The disk mode. Valid values are:
  <ul>
  <li>vim.vm.device.VirtualDiskOption.DiskMode#persistent
  <li>vim.vm.device.VirtualDiskOption.DiskMode#independent_persistent
  <li>vim.vm.device.VirtualDiskOption.DiskMode#independent_nonpersistent
  </ul><br>See <a href="vim.vm.device.VirtualDiskOption.DiskMode.html">VirtualDiskMode</a><br>]]>
      </description-html>
      </property>

            <property name="uuid" type-id-ref="BOOLEAN"
      vmodl-name="uuid"
      version-id-ref="vim.version.version2"
      >
      <description-html>
         <![CDATA[Flag to indicate whether this backing supports disk UUID property.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="GuestRegKeyRecordSpec"
      type-id="vim.vm.guest.WindowsRegistryManager.RegistryKeyRecord"
      vmodl-name="vim.vm.guest.WindowsRegistryManager.RegistryKeyRecord"
      enclosing-type-id-ref="vim.vm.guest.WindowsRegistryManager"
      version-id-ref="vim.version.version10"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This describes the registry key record.]]>
      </description-html>
            <property name="key" type-id-ref="vim.vm.guest.WindowsRegistryManager.RegistryKey"
      vmodl-name="key"
      >
      <description-html>
         <![CDATA[The key.]]>
      </description-html>
      </property>

            <property name="fault" type-id-ref="vmodl.LocalizedMethodFault"
      vmodl-name="fault"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Any error that occurred while trying to access this key.

 Presence of this fault indicates that a recursive listing failed to
 open this key to find keys below it in the tree. This could be a
 result of insufficient user permissions within the guest.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ExtensionHealthInfo"
      type-id="vim.Extension.HealthInfo"
      vmodl-name="vim.Extension.HealthInfo"
      enclosing-type-id-ref="vim.Extension"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object encapsulates the health specification for the
 extension.]]>
      </description-html>
            <property name="url" type-id-ref="java.lang.String"
      vmodl-name="url"
      >
      </property>

   </data-object>
   <data-object name="DatastoreFileDeletedEvent"
      type-id="vim.event.DatastoreFileDeletedEvent"
      vmodl-name="vim.event.DatastoreFileDeletedEvent"
      version-id-ref="vim.version.version5"
      base-type-id="vim.event.DatastoreFileEvent"
      >
      <description-html>
         <![CDATA[This event records deletion of a file or directory.]]>
      </description-html>
   </data-object>
   <data-object name="ProfileSerializedCreateSpec"
      type-id="vim.profile.Profile.SerializedCreateSpec"
      vmodl-name="vim.profile.Profile.SerializedCreateSpec"
      enclosing-type-id-ref="vim.profile.Profile"
      version-id-ref="vim.version.version5"
      base-type-id="vim.profile.Profile.CreateSpec"
      >
      <description-html>
         <![CDATA[The <a href="vim.profile.Profile.SerializedCreateSpec.html">ProfileSerializedCreateSpec</a> data object
 defines a string that contains a serialized representation of a host profile.]]>
      </description-html>
            <property name="profileConfigString" type-id-ref="java.lang.String"
      vmodl-name="profileConfigString"
      >
      <description-html>
         <![CDATA[Representation of the profile in the string form.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DVSNetworkResourceManagementCapability"
      type-id="vim.DistributedVirtualSwitch.NetworkResourceManagementCapability"
      vmodl-name="vim.DistributedVirtualSwitch.NetworkResourceManagementCapability"
      enclosing-type-id-ref="vim.DistributedVirtualSwitch"
      version-id-ref="vim.version.version7"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Dataobject representing the feature capabilities of network resource management
  supported by the vSphere Distributed Switch.]]>
      </description-html>
            <property name="networkResourceManagementSupported" type-id-ref="BOOLEAN"
      vmodl-name="networkResourceManagementSupported"
      >
      <description-html>
         <![CDATA[Indicates whether network I/O control is
  supported on the vSphere Distributed Switch. Network I/O control
  is supported in vSphere Distributed Switch Version 4.1 or later.]]>
      </description-html>
      </property>

            <property name="networkResourcePoolHighShareValue" type-id-ref="INT"
      vmodl-name="networkResourcePoolHighShareValue"
      >
      <description-html>
         <![CDATA[High share level (<a href="vim.SharesInfo.Level.html">SharesLevel</a>.vim.SharesInfo.Level#high)
  for <a href="vim.dvs.NetworkResourcePool.AllocationInfo.html">DVSNetworkResourcePoolAllocationInfo</a>.<a href="vim.dvs.NetworkResourcePool.AllocationInfo.html#shares">shares</a>.
  <p>
  The <code>networkResourcePoolHighshareValue</code> property implicitly defines
  the legal range of share values to be between 1 and this value.
  This property also defines values for other level types, such as
  vim.SharesInfo.Level#normal being one half of this value and
  vim.SharesInfo.Level#low being one fourth of this value.
  This feature is supported in vSphere Distributed
  Switch Version 4.1 or later.]]>
      </description-html>
      </property>

            <property name="qosSupported" type-id-ref="BOOLEAN"
      vmodl-name="qosSupported"
      >
      <description-html>
         <![CDATA[Indicates whether Qos Tag(802.1p priority tag)is supported on the
  vSphere Distributed Switch. Qos Tag is supported in vSphere
  Distributed Switch Version 5.0 or later.]]>
      </description-html>
      </property>

            <property name="userDefinedNetworkResourcePoolsSupported" type-id-ref="BOOLEAN"
      vmodl-name="userDefinedNetworkResourcePoolsSupported"
      >
      <description-html>
         <![CDATA[Indicates whether the switch supports creating user defined resource
  pools. This feature is supported in vSphere Distributed
  Switch Version 5.0 or later.]]>
      </description-html>
      </property>

            <property name="networkResourceControlVersion3Supported" type-id-ref="BOOLEAN"
      vmodl-name="networkResourceControlVersion3Supported"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Flag to indicate whether Network Resource Control version 3 is supported.
  The API supported by Network Resouce Control version 3 include:
  <ol>
  <li>VM virtual NIC network resource specification
  <a href="vim.vm.device.VirtualEthernetCard.ResourceAllocation.html">VirtualEthernetCardResourceAllocation</a></li>
  <li>VM virtual NIC network resource pool specification
  <a href="vim.dvs.VmVnicNetworkResourcePool.html">DVSVmVnicNetworkResourcePool</a></li>
  <li>Host infrastructure traffic network resource specification
  <a href="vim.DistributedVirtualSwitch.HostInfrastructureTrafficResource.html">DvsHostInfrastructureTrafficResource</a></li>
  </ol>
  Network Resource Control version 3 is supported for Switch Version 6.0 or later.]]>
      </description-html>
      </property>

            <property name="userDefinedInfraTrafficPoolSupported" type-id-ref="BOOLEAN"
      vmodl-name="userDefinedInfraTrafficPoolSupported"
      version-id-ref="vim.version.version12"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates whether user defined infrastructure traffic pool
  supported in vSphere Distributed Switch.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VsanUpgradeSystemUpgradeStatus"
      type-id="vim.VsanUpgradeSystem.UpgradeStatus"
      vmodl-name="vim.VsanUpgradeSystem.UpgradeStatus"
      enclosing-type-id-ref="vim.VsanUpgradeSystem"
      version-id-ref="vim.version.version10"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Captures the status of a VSAN cluster on-disk format upgrade. Contains
 information about progress, result, and a detailed log of operations.]]>
      </description-html>
            <property name="inProgress" type-id-ref="BOOLEAN"
      vmodl-name="inProgress"
      >
      <description-html>
         <![CDATA[True if there is an active upgrade process. If true, other fields
 are guaranteed to be populated. If false, other fields may reflect
 a previous upgrade process run, or they may be unset.]]>
      </description-html>
      </property>

            <property name="history" type-id-ref="vim.VsanUpgradeSystem.UpgradeHistoryItem"
      vmodl-name="history"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Log of a single upgrade task. Lists all operations performed by the
 upgrade process in chronological order.]]>
      </description-html>
      </property>

            <property name="aborted" type-id-ref="BOOLEAN"
      vmodl-name="aborted"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Set if the upgrade process was aborted.]]>
      </description-html>
      </property>

            <property name="completed" type-id-ref="BOOLEAN"
      vmodl-name="completed"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Set if the upgrade process has completed successfully.]]>
      </description-html>
      </property>

            <property name="progress" type-id-ref="INT"
      vmodl-name="progress"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Progress in percent.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostNvmeConnectSpec"
      type-id="vim.host.NvmeConnectSpec"
      vmodl-name="vim.host.NvmeConnectSpec"
      version-id-ref="vim.version.v7_0"
      base-type-id="vim.host.NvmeSpec"
      >
      <description-html>
         <![CDATA[Specifies the parameters necessary to connect to a regular NVME over Fabrics
  controller.
  <p>
  Here the transportParameters are used to establish a transport level
  connection to the specified controller. For reference, see:
  <ul>
  <li>"NVM Express over Fabrics 1.0", Section 3.3,
  "Connect command and response"</li>
  </ul>]]>
      </description-html>
            <property name="subnqn" type-id-ref="java.lang.String"
      vmodl-name="subnqn"
      >
      <description-html>
         <![CDATA[NVME Qualified Name of the NVM subsystem to connect to.
  <p>
  Corresponds to the SUBNQN field in the Connect command as
  referenced above.]]>
      </description-html>
      </property>

            <property name="controllerId" type-id-ref="INT"
      vmodl-name="controllerId"
      is-optional="true"
      >
      <description-html>
         <![CDATA[ID of the controller to connect to within the NVM subsystem.
  <p>
  This field corresponds to CNTLID in the Connect command.
  Its usage depends on whether the NVM Subsystem supports
  a static or dynamic controller model.

  In the static model, a number of controllers
  may be exposed. A connection to a specific one may be requested
  by specifying its controller ID (which is unique only within the
  NVM subsystem). If a value of 0xFFFE (65534 in decimal) is provided,
  any one of the controllers may be allocated for the connection. In
  the static model a value of 0xFFFF (65535 in decimal) or above is
  invalid.

  In the dynamic model, the NVM Subsystem will dynamically allocate
  a controller. Any value other than 0xFFFF (65535 in decimal) specified
  will be consider invalid.

  If the controllerId is unset, it defaults to 0xFFFF (the value used in
  the dynamic model).

  Whether the NVM subsystem supports the dynamic or static model can be
  determined by examining the corresponding
  <a href="vim.host.NvmeDiscoveryLog.Entry.html">HostNvmeDiscoveryLogEntry</a> returned for it.]]>
      </description-html>
      </property>

            <property name="adminQueueSize" type-id-ref="INT"
      vmodl-name="adminQueueSize"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Size of the admin queue which will be created once connection
  is established.
  <p>
  This field corresponds to SQSIZE in the Connect command (see above).
  If unset, a default value of 16 is assumed.]]>
      </description-html>
      </property>

            <property name="keepAliveTimeout" type-id-ref="INT"
      vmodl-name="keepAliveTimeout"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Timeout for the keep alive feature in seconds.
  <p>
  This field corresponds to KATO in the Connect command (see above).
  If unset, it defaults to 60 (seconds).
  For further information, see:
  <ul>
  <li>"NVM Express 1.3", Section 5.21.1.15, "Keep Alive Timer"</li>
  </ul>]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="MethodAction"
      type-id="vim.action.MethodAction"
      vmodl-name="vim.action.MethodAction"
      version-id-ref="vim.version.version1"
      base-type-id="vim.action.Action"
      >
      <description-html>
         <![CDATA[This data object type defines an operation and its arguments, invoked
 on a particular entity.]]>
      </description-html>
            <property name="name" type-id-ref="vmodl.MethodName"
      vmodl-name="name"
      >
      <description-html>
         <![CDATA[Name of the operation.]]>
      </description-html>
      </property>

            <property name="argument" type-id-ref="vim.action.MethodActionArgument"
      vmodl-name="argument"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[An array consisting of the arguments for the operation.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualSriovEthernetCardSriovBackingInfo"
      type-id="vim.vm.device.VirtualSriovEthernetCard.SriovBackingInfo"
      vmodl-name="vim.vm.device.VirtualSriovEthernetCard.SriovBackingInfo"
      enclosing-type-id-ref="vim.vm.device.VirtualSriovEthernetCard"
      version-id-ref="vim.version.version9"
      base-type-id="vim.vm.device.VirtualDevice.BackingInfo"
      >
      <description-html>
         <![CDATA[The <a href="vim.vm.device.VirtualSriovEthernetCard.SriovBackingInfo.html">VirtualSriovEthernetCardSriovBackingInfo</a>
  data object contains information about the SR-IOV physical function and
  virtual function backing for a passthrough NIC.]]>
      </description-html>
            <property name="physicalFunctionBacking" type-id-ref="vim.vm.device.VirtualPCIPassthrough.DeviceBackingInfo"
      vmodl-name="physicalFunctionBacking"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Physical function backing for this device.
 <p>
 A specific physical function can be assigned to the device by specifying
 its id but the VirtualSriovNetworkCard can also be configured for automatic physical
 function assignment by providing a special value "Automatic-0000:00:00.0"
 as <a href="vim.vm.device.VirtualPCIPassthrough.DeviceBackingInfo.html#id">id</a>. This is supported if there is
 an associated SR-IOV network device pool for the network specified in
 VirtualSriovEthernetCard#backing - in that case a physical function from
 the pool, if available, will be assigned to this device during power on.

 During reconfigure, if an SR-IOV backing is provided, the physical function backing
 may not be left unset.

 A value of "Automatic-" followed by a valid physical function id
 in <a href="vim.vm.device.VirtualPCIPassthrough.DeviceBackingInfo.html#id">id</a> indicates that assignment
 is automatic and the physical function in question is the one that has currently
 been assigned.]]>
      </description-html>
      </property>

            <property name="virtualFunctionBacking" type-id-ref="vim.vm.device.VirtualPCIPassthrough.DeviceBackingInfo"
      vmodl-name="virtualFunctionBacking"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Virtual function backing for this device.
 <p>
 During reconfigure, if this is unset, any currently assigned virtual function
 will be overwritten and a new one will be selected. If
 <a href="vim.vm.device.VirtualPCIPassthrough.DeviceBackingInfo.html#id">id</a> contains a valid id for
 a virtual function of the currently assigned physical function, this acts as
 a hint and, if possible, the specified virtual function will be the one
 allocated for the device.

 When a virtual function is yet to be assigned to the device (e.g. if the VM
 has not been powered on yet), the virtual function backing will be unset.]]>
      </description-html>
      </property>

            <property name="virtualFunctionIndex" type-id-ref="INT"
      vmodl-name="virtualFunctionIndex"
      is-optional="true"
      >
      </property>

   </data-object>
   <data-object name="GeneralHostInfoEvent"
      type-id="vim.event.GeneralHostInfoEvent"
      vmodl-name="vim.event.GeneralHostInfoEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.GeneralEvent"
      >
      <description-html>
         <![CDATA[This event is the general information event for a host.]]>
      </description-html>
   </data-object>
   <data-object name="LicenseAvailabilityInfo"
      type-id="vim.LicenseManager.AvailabilityInfo"
      vmodl-name="vim.LicenseManager.AvailabilityInfo"
      enclosing-type-id-ref="vim.LicenseManager"
      version-id-ref="vim.version.version1"
      is-deprecated="true"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Describes how many licenses of a particular feature is provided by the licensing
  source.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 4.0, this is not used by the system.]]>
      </deprecated-html>
            <property name="feature" type-id-ref="vim.LicenseManager.FeatureInfo"
      vmodl-name="feature"
      >
      <description-html>
         <![CDATA[Describes the feature.]]>
      </description-html>
      </property>

            <property name="total" type-id-ref="INT"
      vmodl-name="total"
      >
      <description-html>
         <![CDATA[Total number of licenses for this given type that are installed on the source.]]>
      </description-html>
      </property>

            <property name="available" type-id-ref="INT"
      vmodl-name="available"
      >
      <description-html>
         <![CDATA[The number of licenses that have not yet been reserved on the source.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="GuestMappedAliases"
      type-id="vim.vm.guest.AliasManager.GuestMappedAliases"
      vmodl-name="vim.vm.guest.AliasManager.GuestMappedAliases"
      enclosing-type-id-ref="vim.vm.guest.AliasManager"
      version-id-ref="vim.version.version10"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Represents a mapping between an external subject, as
 authenticated by a given VMware SSO Server, and an in-guest user.]]>
      </description-html>
            <property name="base64Cert" type-id-ref="java.lang.String"
      vmodl-name="base64Cert"
      >
      <description-html>
         <![CDATA[The associated VMware SSO Server X.509 certificate, in base64
 encoded DER format.]]>
      </description-html>
      </property>

            <property name="username" type-id-ref="java.lang.String"
      vmodl-name="username"
      >
      <description-html>
         <![CDATA[The in-guest user associated with the mapping.]]>
      </description-html>
      </property>

            <property name="subjects" type-id-ref="vim.vm.guest.AliasManager.GuestAuthSubject"
      vmodl-name="subjects"
      is-array="true"
      >
      <description-html>
         <![CDATA[The list of subjects associated with the mapping.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DVSHealthCheckCapability"
      type-id="vim.DistributedVirtualSwitch.HealthCheckFeatureCapability"
      vmodl-name="vim.DistributedVirtualSwitch.HealthCheckFeatureCapability"
      enclosing-type-id-ref="vim.DistributedVirtualSwitch"
      version-id-ref="vim.version.version8"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Health check capabilities of health check supported by the
 vSphere Distributed Switch]]>
      </description-html>
   </data-object>
   <data-object name="ResourcePoolReconfiguredEvent"
      type-id="vim.event.ResourcePoolReconfiguredEvent"
      vmodl-name="vim.event.ResourcePoolReconfiguredEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.ResourcePoolEvent"
      >
      <description-html>
         <![CDATA[This event records when a resource pool configuration is changed.]]>
      </description-html>
            <property name="configChanges" type-id-ref="vim.event.ChangesInfoEventArgument"
      vmodl-name="configChanges"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The configuration values changed during the reconfiguration.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VmDiskFileEncryptionInfo"
      type-id="vim.host.DatastoreBrowser.VmDiskInfo.VmDiskEncryptionInfo"
      vmodl-name="vim.host.DatastoreBrowser.VmDiskInfo.VmDiskEncryptionInfo"
      enclosing-type-id-ref="vim.host.DatastoreBrowser.VmDiskInfo"
      version-id-ref="vim.version.version11"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The encryption information of a virtual disk.]]>
      </description-html>
            <property name="keyId" type-id-ref="vim.encryption.CryptoKeyId"
      vmodl-name="keyId"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The key identifier for an encrypted virtual disk.

  If the virtual disk is encrypted, then the keyId is set and
  indicates the identifier that can be used to lookup the key
  material. Unset if the virtual disk is not encrypted.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DVSNetworkResourcePool"
      type-id="vim.dvs.NetworkResourcePool"
      vmodl-name="vim.dvs.NetworkResourcePool"
      version-id-ref="vim.version.version6"
      is-deprecated="true"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The <a href="vim.dvs.NetworkResourcePool.html">DVSNetworkResourcePool</a> data object
  describes the resource configuration and management
  of network resource pools.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[as of vSphere API 6.0
  Use <a href="vim.DistributedVirtualSwitch.HostInfrastructureTrafficResource.html">DvsHostInfrastructureTrafficResource</a>
  to manage resource allocation for host infrastructure traffic.
  Use <a href="vim.dvs.VmVnicNetworkResourcePool.html">DVSVmVnicNetworkResourcePool</a> to manage
  resource allocation for user defined pools.]]>
      </deprecated-html>
            <property name="key" type-id-ref="java.lang.String"
      vmodl-name="key"
      >
      <description-html>
         <![CDATA[Key of the network resource pool.]]>
      </description-html>
      </property>

            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Name of the network resource pool.]]>
      </description-html>
      </property>

            <property name="description" type-id-ref="java.lang.String"
      vmodl-name="description"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Description of the network resource pool.]]>
      </description-html>
      </property>

            <property name="configVersion" type-id-ref="java.lang.String"
      vmodl-name="configVersion"
      >
      <description-html>
         <![CDATA[Configuration version for the network resource pool.]]>
      </description-html>
      </property>

            <property name="allocationInfo" type-id-ref="vim.dvs.NetworkResourcePool.AllocationInfo"
      vmodl-name="allocationInfo"
      >
      <description-html>
         <![CDATA[Resource settings of the resource pool.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.dvs.NetworkResourcePool.AllocationInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.dvs.NetworkResourcePool.ConfigSpec</nested-type-id-ref>
   </data-object>
   <data-object name="VirtualMachineIdeDiskDevicePartitionInfo"
      type-id="vim.vm.IdeDiskDeviceInfo.PartitionInfo"
      vmodl-name="vim.vm.IdeDiskDeviceInfo.PartitionInfo"
      enclosing-type-id-ref="vim.vm.IdeDiskDeviceInfo"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Describes the partition sizes]]>
      </description-html>
            <property name="id" type-id-ref="INT"
      vmodl-name="id"
      >
      <description-html>
         <![CDATA[Identification of the partition]]>
      </description-html>
      </property>

            <property name="capacity" type-id-ref="INT"
      vmodl-name="capacity"
      >
      <description-html>
         <![CDATA[Size of partition]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualMachineSummary"
      type-id="vim.vm.Summary"
      vmodl-name="vim.vm.Summary"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The summary data object type encapsulates a typical set of virtual machine
  information that is useful for list views and summary pages.
  <p>
  VirtualCenter can retrieve this information very efficiently,
  even for large sets of virtual machines.]]>
      </description-html>
            <property name="vm" type-id-ref="vim.VirtualMachine"
      vmodl-name="vm"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Reference to the virtual machine managed object.]]>
      </description-html>
      </property>

            <property name="runtime" type-id-ref="vim.vm.RuntimeInfo"
      vmodl-name="runtime"
      >
      <description-html>
         <![CDATA[Runtime and state information of a running virtual machine.
  Most of this information is also available when a virtual machine is powered off.
  In that case, it contains information from the last run, if available.]]>
      </description-html>
      </property>

            <property name="guest" type-id-ref="vim.vm.Summary.GuestSummary"
      vmodl-name="guest"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Guest operating system and VMware Tools information. See <a href="vim.VirtualMachine.html#guest">Guest</a> for more information.]]>
      </description-html>
      </property>

            <property name="config" type-id-ref="vim.vm.Summary.ConfigSummary"
      vmodl-name="config"
      >
      <description-html>
         <![CDATA[Basic configuration information about the virtual machine. This information
 is not available when the virtual machine is unavailable, for instance, when
 it is being created or deleted.]]>
      </description-html>
      </property>

            <property name="storage" type-id-ref="vim.vm.Summary.StorageSummary"
      vmodl-name="storage"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Storage information of the virtual machine. It can be explicitly refreshed
  with the <a href="vim.VirtualMachine.html#refreshStorageInfo">RefreshStorageInfo</a> operation.

  In releases after vSphere API 5.0, vSphere Servers might not
  generate property collector update notifications for this property.
  To obtain the latest value of the property, you can use
  PropertyCollector methods RetrievePropertiesEx or WaitForUpdatesEx.
  If you use the PropertyCollector.WaitForUpdatesEx method, specify
  an empty string for the version parameter.

  Since this property is on a DataObject, an update returned by WaitForUpdatesEx may
  contain values for this property when some other property on the DataObject changes.
  If this update is a result of a call to WaitForUpdatesEx with a non-empty
  version parameter, the value for this property may not be current.]]>
      </description-html>
      </property>

            <property name="quickStats" type-id-ref="vim.vm.Summary.QuickStats"
      vmodl-name="quickStats"
      >
      <description-html>
         <![CDATA[A set of statistics that are typically updated with near real-time regularity.
  This data object type does not support notification, for scalability reasons.
  Therefore, changes in QuickStats do not generate property collector updates. To
  monitor statistics values, use the statistics and alarms modules instead.]]>
      </description-html>
      </property>

            <property name="overallStatus" type-id-ref="vim.ManagedEntity.Status"
      vmodl-name="overallStatus"
      >
      <description-html>
         <![CDATA[Overall alarm status on this node.

  In releases after vSphere API 5.0, vSphere Servers might not
  generate property collector update notifications for this property.
  To obtain the latest value of the property, you can use
  PropertyCollector methods RetrievePropertiesEx or WaitForUpdatesEx.
  If you use the PropertyCollector.WaitForUpdatesEx method, specify
  an empty string for the version parameter.

  Since this property is on a DataObject, an update returned by WaitForUpdatesEx may
  contain values for this property when some other property on the DataObject changes.
  If this update is a result of a call to WaitForUpdatesEx with a non-empty
  version parameter, the value for this property may not be current.]]>
      </description-html>
      </property>

            <property name="customValue" type-id-ref="vim.CustomFieldsManager.Value"
      vmodl-name="customValue"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Custom field values.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.vm.Summary.ConfigSummary</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.Summary.QuickStats</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.Summary.GuestSummary</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.Summary.StorageSummary</nested-type-id-ref>
   </data-object>
   <data-object name="ClusterFailoverResourcesAdmissionControlInfo"
      type-id="vim.cluster.FailoverResourcesAdmissionControlInfo"
      vmodl-name="vim.cluster.FailoverResourcesAdmissionControlInfo"
      version-id-ref="vim.version.version5"
      base-type-id="vim.cluster.DasAdmissionControlInfo"
      >
      <description-html>
         <![CDATA[The current admission control related information if the cluster was configured
 with a FailoverResourcesAdmissionControlPolicy.]]>
      </description-html>
            <property name="currentCpuFailoverResourcesPercent" type-id-ref="INT"
      vmodl-name="currentCpuFailoverResourcesPercent"
      >
      <description-html>
         <![CDATA[The percentage of cpu resources in the cluster available for failover.]]>
      </description-html>
      </property>

            <property name="currentMemoryFailoverResourcesPercent" type-id-ref="INT"
      vmodl-name="currentMemoryFailoverResourcesPercent"
      >
      <description-html>
         <![CDATA[The percentage of memory resources in the cluster available for failover.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VmDiskFileQueryFilter"
      type-id="vim.host.DatastoreBrowser.VmDiskQuery.Filter"
      vmodl-name="vim.host.DatastoreBrowser.VmDiskQuery.Filter"
      enclosing-type-id-ref="vim.host.DatastoreBrowser.VmDiskQuery"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The filter for the virtual disk primary file.]]>
      </description-html>
            <property name="diskType" type-id-ref="vmodl.TypeName"
      vmodl-name="diskType"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[If this optional property is set, only the virtual disk primary files that
  match one of the specified disk types are selected. If no disk types are
  specified, this search criteria is ignored.
  <p>
  The specified disk type is one of the backing information types for a
  virtual disk.<br>See <a href="vim.vm.device.VirtualDisk.html">VirtualDisk</a><br>]]>
      </description-html>
      </property>

            <property name="matchHardwareVersion" type-id-ref="INT"
      vmodl-name="matchHardwareVersion"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[If this optional property is set, only virtual disk primary files that match
  one of the specified hardware versions are selected.  If no versions are
  specified, this search criteria is ignored.]]>
      </description-html>
      </property>

            <property name="controllerType" type-id-ref="vmodl.TypeName"
      vmodl-name="controllerType"
      version-id-ref="vim.version.version2"
      is-deprecated="true"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[If this optional property is set, only virtual disk files that have a
  controller type that matches one of the controller types specified
  are returned. If no controller types are specified, this search criteria
  is ignored.
  <p>
  The specified controller type is one of the controller types for a
  virtual disk.<br>See <a href="vim.vm.device.VirtualIDEController.html">VirtualIDEController</a><br>See <a href="vim.vm.device.VirtualSCSIController.html">VirtualSCSIController</a><br>]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 5.0, this property is no longer
      relevant and should not be used.
      With the current state of emulation, we don't care about the
      adapter type a disk is connected to, as disks may be shuffled
      around. For example, a disk may be unplugged from a buslogic
      controller and plugged into an lsilogic controller.]]>
      </deprecated-html>
      </property>

            <property name="thin" type-id-ref="BOOLEAN"
      vmodl-name="thin"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[This optional property can be used to filter disks based on whether
  they are thin-provsioned or not: if set to true, only thin-provisioned
  disks are returned, and vice-versa.]]>
      </description-html>
      </property>

            <property name="encrypted" type-id-ref="BOOLEAN"
      vmodl-name="encrypted"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[This optional property can be used to filter disks based on
  whether they are encrypted or not.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="CustomFieldDefEvent"
      type-id="vim.event.CustomFieldDefEvent"
      vmodl-name="vim.event.CustomFieldDefEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.CustomFieldEvent"
      >
      <description-html>
         <![CDATA[This event records a custom field definition event.]]>
      </description-html>
            <property name="fieldKey" type-id-ref="INT"
      vmodl-name="fieldKey"
      >
      <description-html>
         <![CDATA[The unique identifier of the custom field definition.]]>
      </description-html>
      </property>

            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      >
      <description-html>
         <![CDATA[The name of the custom field.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualDeviceRemoteDeviceBackingInfo"
      type-id="vim.vm.device.VirtualDevice.RemoteDeviceBackingInfo"
      vmodl-name="vim.vm.device.VirtualDevice.RemoteDeviceBackingInfo"
      enclosing-type-id-ref="vim.vm.device.VirtualDevice"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.device.VirtualDevice.BackingInfo"
      >
      <description-html>
         <![CDATA[<code><a href="vim.vm.device.VirtualDevice.RemoteDeviceBackingInfo.html">VirtualDeviceRemoteDeviceBackingInfo</a></code> is a data object type
  for information
  about a remote device backing used by a device in a virtual machine.
  The primary difference between a remote device backing and a
  local device backing is that the VirtualCenter server cannot provide a list
  of remote host devices available for this virtual device backing.]]>
      </description-html>
            <property name="deviceName" type-id-ref="java.lang.String"
      vmodl-name="deviceName"
      >
      <description-html>
         <![CDATA[The name of the device on the remote system.]]>
      </description-html>
      </property>

            <property name="useAutoDetect" type-id-ref="BOOLEAN"
      vmodl-name="useAutoDetect"
      version-id-ref="vim.version.version2"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates whether the device should be auto detected
 instead of directly specified. If this value is set to TRUE,
 <code>deviceName</code> is ignored.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DVPortSetting"
      type-id="vim.dvs.DistributedVirtualPort.Setting"
      vmodl-name="vim.dvs.DistributedVirtualPort.Setting"
      enclosing-type-id-ref="vim.dvs.DistributedVirtualPort"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The <a href="vim.dvs.DistributedVirtualPort.Setting.html">DVPortSetting</a> data object
 describes the network configuration of a <a href="vim.dvs.DistributedVirtualPort.html">DistributedVirtualPort</a>.]]>
      </description-html>
            <property name="blocked" type-id-ref="vim.BoolPolicy"
      vmodl-name="blocked"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates whether this port is blocked. If a port is blocked,
 packet forwarding is stopped.]]>
      </description-html>
      </property>

            <property name="vmDirectPathGen2Allowed" type-id-ref="vim.BoolPolicy"
      vmodl-name="vmDirectPathGen2Allowed"
      version-id-ref="vim.version.version6"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates whether this port is allowed to do VMDirectPath Gen2 network passthrough.
 Direct path capability is defined at host, switch, and device levels.
 See the <code>vmDirectPathGen2Supported</code> properties on the
 <a href="vim.DistributedVirtualSwitch.FeatureCapability.html">DVSFeatureCapability</a>,
 <a href="vim.host.Capability.html">HostCapability</a>, <a href="vim.host.PhysicalNic.html">PhysicalNic</a>,
 and <a href="vim.vm.device.VirtualEthernetCardOption.html">VirtualEthernetCardOption</a> objects.]]>
      </description-html>
      </property>

            <property name="inShapingPolicy" type-id-ref="vim.dvs.DistributedVirtualPort.TrafficShapingPolicy"
      vmodl-name="inShapingPolicy"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Network shaping policy for controlling throughput of inbound traffic.]]>
      </description-html>
      </property>

            <property name="outShapingPolicy" type-id-ref="vim.dvs.DistributedVirtualPort.TrafficShapingPolicy"
      vmodl-name="outShapingPolicy"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Network shaping policy for controlling throughput of outbound traffic.]]>
      </description-html>
      </property>

            <property name="vendorSpecificConfig" type-id-ref="vim.dvs.DistributedVirtualPort.VendorSpecificConfig"
      vmodl-name="vendorSpecificConfig"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Opaque binary blob that stores vendor specific configuration.]]>
      </description-html>
      </property>

            <property name="networkResourcePoolKey" type-id-ref="vim.StringPolicy"
      vmodl-name="networkResourcePoolKey"
      version-id-ref="vim.version.version7"
      is-deprecated="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The key of user defined network resource pool to be associated with a port.
 The default value for this property is "-1", indicating that
 this port is not associated with any network resource pool.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[as of vSphere API 6.0
 Use <a href="vim.dvs.DistributedVirtualPortgroup.ConfigInfo.html#vmVnicNetworkResourcePoolKey">vmVnicNetworkResourcePoolKey</a> instead
 to reference the virtual NIC network resource pool.]]>
      </deprecated-html>
      </property>

            <property name="filterPolicy" type-id-ref="vim.dvs.DistributedVirtualPort.FilterPolicy"
      vmodl-name="filterPolicy"
      version-id-ref="vim.version.version9"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Configuration for Network Filter Policy.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VmStoppingEvent"
      type-id="vim.event.VmStoppingEvent"
      vmodl-name="vim.event.VmStoppingEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.VmEvent"
      >
      <description-html>
         <![CDATA[This event records a virtual machine stopping.]]>
      </description-html>
   </data-object>
   <data-object name="PrivilegeAvailability"
      type-id="vim.AuthorizationManager.PrivilegeAvailability"
      vmodl-name="vim.AuthorizationManager.PrivilegeAvailability"
      enclosing-type-id-ref="vim.AuthorizationManager"
      version-id-ref="vim.version.version9"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This class defines whether a specific privilege is granted.]]>
      </description-html>
            <property name="privId" type-id-ref="java.lang.String"
      vmodl-name="privId"
      >
      <description-html>
         <![CDATA[The privilege ID.]]>
      </description-html>
      </property>

            <property name="isGranted" type-id-ref="BOOLEAN"
      vmodl-name="isGranted"
      >
      <description-html>
         <![CDATA[True if the privilege is granted.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostNvmeDiscoverSpec"
      type-id="vim.host.NvmeDiscoverSpec"
      vmodl-name="vim.host.NvmeDiscoverSpec"
      version-id-ref="vim.version.v7_0"
      base-type-id="vim.host.NvmeSpec"
      >
      <description-html>
         <![CDATA[Specifies the parameters necessary to connect to a Discovery Service and
  retrieve a Discovery Log Page.
  <p>
  Here the transportParameters are used to establish a transport level
  connection to a Discovery Controller. Further details can be found here:
  <ul>
  <li>"NVM Express over Fabrics 1.0", Section 5, "Discovery service"</li>
  </ul>]]>
      </description-html>
            <property name="autoConnect" type-id-ref="BOOLEAN"
      vmodl-name="autoConnect"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates whether the specified adapter should automatically be
  connected to all the discovered controllers.
  <p>
  It is possible to automatically connect to all discovered controllers.
  This will only be attempted if this flag is set to true. Whether the
  connection attempt for an entry succeeded can then be determined
  via the corresponding <a href="vim.host.NvmeDiscoveryLog.Entry.html#connected">connected</a> field.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostVsanInternalSystemVsanObjectOperationResult"
      type-id="vim.host.VsanInternalSystem.VsanObjectOperationResult"
      vmodl-name="vim.host.VsanInternalSystem.VsanObjectOperationResult"
      enclosing-type-id-ref="vim.host.VsanInternalSystem"
      version-id-ref="vim.version.version10"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Operation result for a VSAN object upon failure.]]>
      </description-html>
            <property name="uuid" type-id-ref="java.lang.String"
      vmodl-name="uuid"
      >
      <description-html>
         <![CDATA[The UUID of the in question VSAN object.]]>
      </description-html>
      </property>

            <property name="failureReason" type-id-ref="vmodl.LocalizableMessage"
      vmodl-name="failureReason"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of LocalizableMessages with the failure vobs.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ExtensionTaskTypeInfo"
      type-id="vim.Extension.TaskTypeInfo"
      vmodl-name="vim.Extension.TaskTypeInfo"
      enclosing-type-id-ref="vim.Extension"
      version-id-ref="vim.version.version2"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object type describes task types defined by the extension.]]>
      </description-html>
            <property name="taskID" type-id-ref="java.lang.String"
      vmodl-name="taskID"
      >
      <description-html>
         <![CDATA[The ID of the task type. Should follow java package
  naming conventions for uniqueness.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostLocalFileSystemVolume"
      type-id="vim.host.LocalFileSystemVolume"
      vmodl-name="vim.host.LocalFileSystemVolume"
      version-id-ref="vim.version.version1"
      base-type-id="vim.host.FileSystemVolume"
      >
      <description-html>
         <![CDATA[Local file system volume.]]>
      </description-html>
            <property name="device" type-id-ref="java.lang.String"
      vmodl-name="device"
      >
      <description-html>
         <![CDATA[The device of the local file system.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.host.LocalFileSystemVolume.Specification</nested-type-id-ref>
   </data-object>
   <data-object name="HostReliableMemoryInfo"
      type-id="vim.host.ReliableMemoryInfo"
      vmodl-name="vim.host.ReliableMemoryInfo"
      version-id-ref="vim.version.version9"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Information about reliable memory installed on this host.]]>
      </description-html>
            <property name="memorySize" type-id-ref="LONG"
      vmodl-name="memorySize"
      >
      </property>

   </data-object>
   <data-object name="PermissionAddedEvent"
      type-id="vim.event.PermissionAddedEvent"
      vmodl-name="vim.event.PermissionAddedEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.PermissionEvent"
      >
      <description-html>
         <![CDATA[This event records the creation of a permission.]]>
      </description-html>
            <property name="role" type-id-ref="vim.event.RoleEventArgument"
      vmodl-name="role"
      >
      <description-html>
         <![CDATA[The associated role.]]>
      </description-html>
      </property>

            <property name="propagate" type-id-ref="BOOLEAN"
      vmodl-name="propagate"
      >
      <description-html>
         <![CDATA[Whether or not the permission applies to sub-entities.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="LicenseManagerLicenseInfo"
      type-id="vim.LicenseManager.LicenseInfo"
      vmodl-name="vim.LicenseManager.LicenseInfo"
      enclosing-type-id-ref="vim.LicenseManager"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Encapsulates information about a license]]>
      </description-html>
            <property name="licenseKey" type-id-ref="java.lang.String"
      vmodl-name="licenseKey"
      >
      <description-html>
         <![CDATA[Key for the license. E.g. serial number.]]>
      </description-html>
      </property>

            <property name="editionKey" type-id-ref="java.lang.String"
      vmodl-name="editionKey"
      >
      <description-html>
         <![CDATA[Edition key.]]>
      </description-html>
      </property>

            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      >
      <description-html>
         <![CDATA[Display name for the license]]>
      </description-html>
      </property>

            <property name="total" type-id-ref="INT"
      vmodl-name="total"
      >
      <description-html>
         <![CDATA[Total number of units contain in the license]]>
      </description-html>
      </property>

            <property name="used" type-id-ref="INT"
      vmodl-name="used"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Number of units used from this license]]>
      </description-html>
      </property>

            <property name="costUnit" type-id-ref="java.lang.String"
      vmodl-name="costUnit"
      >
      <description-html>
         <![CDATA[The cost unit for this license]]>
      </description-html>
      </property>

            <property name="properties" type-id-ref="vmodl.KeyAnyValue"
      vmodl-name="properties"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Additional properties associated with this license]]>
      </description-html>
      </property>

            <property name="labels" type-id-ref="vim.KeyValue"
      vmodl-name="labels"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Key-value lables for this license]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DistributedVirtualSwitchManagerCompatibilityResult"
      type-id="vim.dvs.DistributedVirtualSwitchManager.CompatibilityResult"
      vmodl-name="vim.dvs.DistributedVirtualSwitchManager.CompatibilityResult"
      enclosing-type-id-ref="vim.dvs.DistributedVirtualSwitchManager"
      version-id-ref="vim.version.version6"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This is the return type for the checkCompatibility method. This object
  has a host property and optionally a fault which would
  be populated only if that host is not compatible with a given dvsProductSpec.
  If the host is compatible then the error property would be unset.]]>
      </description-html>
            <property name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      >
      <description-html>
         <![CDATA[The host for which results are annotated. The whole object will be
 filtered out if the caller did not have view permissions on the
 host entity.]]>
      </description-html>
      </property>

            <property name="error" type-id-ref="vmodl.LocalizedMethodFault"
      vmodl-name="error"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[This property contains the faults that makes the host not compatible
 with a given DvsProductSpec. For example, a host might not be compatible
 because it's an older version of ESX that doesn't support DVS.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostInternetScsiHbaDigestCapabilities"
      type-id="vim.host.InternetScsiHba.DigestCapabilities"
      vmodl-name="vim.host.InternetScsiHba.DigestCapabilities"
      enclosing-type-id-ref="vim.host.InternetScsiHba"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The digest capabilities for this host bus adapter.]]>
      </description-html>
            <property name="headerDigestSettable" type-id-ref="BOOLEAN"
      vmodl-name="headerDigestSettable"
      is-optional="true"
      >
      <description-html>
         <![CDATA[True if this host bus adapter supports the configuration
 of the use of header digest. Defaults to false, in which
 case no header digests will be used.]]>
      </description-html>
      </property>

            <property name="dataDigestSettable" type-id-ref="BOOLEAN"
      vmodl-name="dataDigestSettable"
      is-optional="true"
      >
      <description-html>
         <![CDATA[True if this host bus adapter supports the configuration
 of the use of data digest. Defaults to false, in which
 case no data digests will be used.]]>
      </description-html>
      </property>

            <property name="targetHeaderDigestSettable" type-id-ref="BOOLEAN"
      vmodl-name="targetHeaderDigestSettable"
      is-optional="true"
      >
      <description-html>
         <![CDATA[True if configuration of the use of header digest is supported
 on the targets associated with the host bus adapter. Defaults to
 false, in which case no header digests will be used.]]>
      </description-html>
      </property>

            <property name="targetDataDigestSettable" type-id-ref="BOOLEAN"
      vmodl-name="targetDataDigestSettable"
      is-optional="true"
      >
      <description-html>
         <![CDATA[True if configuration of the use of data digest is supported
 on the targets associated with the host bus adapter. Defaults to
 false, in which case no data digests will be used.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostProfileManagerHostToConfigSpecMap"
      type-id="vim.profile.host.ProfileManager.HostToConfigSpecMap"
      vmodl-name="vim.profile.host.ProfileManager.HostToConfigSpecMap"
      enclosing-type-id-ref="vim.profile.host.ProfileManager"
      version-id-ref="vim.version.version11"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Data class for <code>HostSystem</code>-<code>AnswerFileCreateSpec</code>
 mapping.]]>
      </description-html>
            <property name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      >
      <description-html>
         <![CDATA[The host]]>
      </description-html>
      </property>

            <property name="configSpec" type-id-ref="vim.profile.host.ProfileManager.AnswerFileCreateSpec"
      vmodl-name="configSpec"
      >
      <description-html>
         <![CDATA[The corresponding <code>AnswerFileCreateSpec</code>.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ClusterProfileCompleteConfigSpec"
      type-id="vim.profile.cluster.ClusterProfile.CompleteConfigSpec"
      vmodl-name="vim.profile.cluster.ClusterProfile.CompleteConfigSpec"
      enclosing-type-id-ref="vim.profile.cluster.ClusterProfile"
      version-id-ref="vim.version.version5"
      base-type-id="vim.profile.cluster.ClusterProfile.ConfigSpec"
      >
      <description-html>
         <![CDATA[DataObject completely specifying the configuration of
 the profile.]]>
      </description-html>
            <property name="complyProfile" type-id-ref="vim.profile.ComplianceProfile"
      vmodl-name="complyProfile"
      is-optional="true"
      >
      <description-html>
         <![CDATA[User defined compliance profile for the cluster.
 If unset, clear the complyProfile.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="LicenseUsageInfo"
      type-id="vim.LicenseManager.LicenseUsageInfo"
      vmodl-name="vim.LicenseManager.LicenseUsageInfo"
      enclosing-type-id-ref="vim.LicenseManager"
      version-id-ref="vim.version.version1"
      is-deprecated="true"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Contains source information, licensed features, and usage.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 4.0, this is not used by the system.]]>
      </deprecated-html>
            <property name="source" type-id-ref="vim.LicenseManager.LicenseSource"
      vmodl-name="source"
      >
      <description-html>
         <![CDATA[The source from which licensing data is acquired.<br>See <a href="vim.LicenseManager.LicenseSource.html">LicenseSource</a><br>]]>
      </description-html>
      </property>

            <property name="sourceAvailable" type-id-ref="BOOLEAN"
      vmodl-name="sourceAvailable"
      >
      <description-html>
         <![CDATA[Returns whether or not the source is currently available.<br>See <a href="vim.LicenseManager.html#sourceAvailable">SourceAvailable</a><br>]]>
      </description-html>
      </property>

            <property name="reservationInfo" type-id-ref="vim.LicenseManager.ReservationInfo"
      vmodl-name="reservationInfo"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[A list of feature reservations.]]>
      </description-html>
      </property>

            <property name="featureInfo" type-id-ref="vim.LicenseManager.FeatureInfo"
      vmodl-name="featureInfo"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Includes all the features that are referenced in the reservation array.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostSystemSwapConfigurationDatastoreOption"
      type-id="vim.host.SystemSwapConfiguration.DatastoreOption"
      vmodl-name="vim.host.SystemSwapConfiguration.DatastoreOption"
      enclosing-type-id-ref="vim.host.SystemSwapConfiguration"
      version-id-ref="vim.version.version8"
      base-type-id="vim.host.SystemSwapConfiguration.SystemSwapOption"
      >
      <description-html>
         <![CDATA[Use option to indicate that a user specified datastore may be used for
 system swap.]]>
      </description-html>
            <property name="datastore" type-id-ref="java.lang.String"
      vmodl-name="datastore"
      >
      <description-html>
         <![CDATA[The datastore to be used with this swap option.

 This value should be always set when the encapsulating option is used,
 otherwise a call to <a href="vim.HostSystem.html#updateSystemSwapConfiguration">UpdateSystemSwapConfiguration</a> will
 result in a <a href="vmodl.fault.InvalidArgument.html">InvalidArgument</a> fault.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DvsReconfiguredEvent"
      type-id="vim.event.DvsReconfiguredEvent"
      vmodl-name="vim.event.DvsReconfiguredEvent"
      version-id-ref="vim.version.version5"
      base-type-id="vim.event.DvsEvent"
      >
      <description-html>
         <![CDATA[A distributed virtual switch was reconfigured.]]>
      </description-html>
            <property name="configSpec" type-id-ref="vim.DistributedVirtualSwitch.ConfigSpec"
      vmodl-name="configSpec"
      >
      <description-html>
         <![CDATA[The reconfiguration spec.]]>
      </description-html>
      </property>

            <property name="configChanges" type-id-ref="vim.event.ChangesInfoEventArgument"
      vmodl-name="configChanges"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The configuration values changed during the reconfiguration.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VAppCloneSpec"
      type-id="vim.vApp.CloneSpec"
      vmodl-name="vim.vApp.CloneSpec"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Specification for a vApp cloning operation.]]>
      </description-html>
            <property name="location" type-id-ref="vim.Datastore"
      vmodl-name="location"
      privilege="Datastore.AllocateSpace"
      >
      <description-html>
         <![CDATA[Location where the destination vApp must be stored]]>
      </description-html>
      </property>

            <property name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      is-optional="true"
      privilege="VApp.Create"
      >
      <description-html>
         <![CDATA[The target host for the virtual machines. This is often not a required
  parameter. If not specified, the behavior is as follows:
  <ul>
     <li> If the target pool represents a stand-alone host, that host is used.
     <li> If the target pool represents a DRS-enabled cluster, a host selected
          by DRS is used.
     <li> If the target pool represents a cluster without DRS enabled or a
          DRS-enabled cluster in manual mode, an InvalidArgument exception is
          thrown.
  </ul>]]>
      </description-html>
      </property>

            <property name="resourceSpec" type-id-ref="vim.ResourceConfigSpec"
      vmodl-name="resourceSpec"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The resource configuration for the vApp.]]>
      </description-html>
      </property>

            <property name="vmFolder" type-id-ref="vim.Folder"
      vmodl-name="vmFolder"
      is-optional="true"
      privilege="VApp.Create"
      >
      <description-html>
         <![CDATA[The VM Folder to associate the vApp with]]>
      </description-html>
      </property>

            <property name="networkMapping" type-id-ref="vim.vApp.CloneSpec.NetworkMappingPair"
      vmodl-name="networkMapping"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Network mappings. See NetworkMappingPair.]]>
      </description-html>
      </property>

            <property name="property" type-id-ref="vim.KeyValue"
      vmodl-name="property"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[A set of property values to override.]]>
      </description-html>
      </property>

            <property name="resourceMapping" type-id-ref="vim.vApp.CloneSpec.ResourceMap"
      vmodl-name="resourceMapping"
      version-id-ref="vim.version.version6"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The resource configuration for the cloned vApp.]]>
      </description-html>
      </property>

            <property name="provisioning" type-id-ref="java.lang.String"
      vmodl-name="provisioning"
      version-id-ref="vim.version.version6"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Specify how the VMs in the vApp should be provisioned.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.vApp.CloneSpec.NetworkMappingPair</nested-type-id-ref>
      <nested-type-id-ref>vim.vApp.CloneSpec.ResourceMap</nested-type-id-ref>
      <nested-type-id-ref>vim.vApp.CloneSpec.ProvisioningType</nested-type-id-ref>
   </data-object>
   <data-object name="DvsNetworkRuleQualifier"
      type-id="vim.dvs.TrafficRule.Qualifier"
      vmodl-name="vim.dvs.TrafficRule.Qualifier"
      enclosing-type-id-ref="vim.dvs.TrafficRule"
      version-id-ref="vim.version.version9"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This class is the base class for identifying network traffic.]]>
      </description-html>
            <property name="key" type-id-ref="java.lang.String"
      vmodl-name="key"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The key of the Qualifier]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DatastoreVVolContainerFailoverPair"
      type-id="vim.Datastore.VVolContainerFailoverPair"
      vmodl-name="vim.Datastore.VVolContainerFailoverPair"
      enclosing-type-id-ref="vim.Datastore"
      version-id-ref="vim.version.version11"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[A pair of source and target VVol containers and mapping of VVol
 IDs from source to target.]]>
      </description-html>
            <property name="srcContainer" type-id-ref="java.lang.String"
      vmodl-name="srcContainer"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Storage container on the source side.]]>
      </description-html>
      </property>

            <property name="tgtContainer" type-id-ref="java.lang.String"
      vmodl-name="tgtContainer"
      >
      <description-html>
         <![CDATA[Storage container on the target side.]]>
      </description-html>
      </property>

            <property name="vvolMapping" type-id-ref="vim.KeyValue"
      vmodl-name="vvolMapping"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Mapping of VVol IDs from source to target corresponding to the
 given set of containers.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostConnectionLostEvent"
      type-id="vim.event.HostConnectionLostEvent"
      vmodl-name="vim.event.HostConnectionLostEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.HostEvent"
      >
      <description-html>
         <![CDATA[This event records the loss of a host connection.]]>
      </description-html>
   </data-object>
   <data-object name="UpgradeEvent"
      type-id="vim.event.UpgradeEvent"
      vmodl-name="vim.event.UpgradeEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.Event"
      >
      <description-html>
         <![CDATA[These event types represent events converted from VirtualCenter 1.x.
  All upgraded events are converted to string values.]]>
      </description-html>
            <property name="message" type-id-ref="java.lang.String"
      vmodl-name="message"
      >
      <description-html>
         <![CDATA[The formatted message from the upgrade.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualCdromAtapiBackingInfo"
      type-id="vim.vm.device.VirtualCdrom.AtapiBackingInfo"
      vmodl-name="vim.vm.device.VirtualCdrom.AtapiBackingInfo"
      enclosing-type-id-ref="vim.vm.device.VirtualCdrom"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.device.VirtualDevice.DeviceBackingInfo"
      >
      <description-html>
         <![CDATA[The VirtualCdrom.AtapiBackingInfo data object type
  represents an ATAPI device backing for a virtual CD-ROM.]]>
      </description-html>
   </data-object>
   <data-object name="HostNetworkConfig"
      type-id="vim.host.NetworkConfig"
      vmodl-name="vim.host.NetworkConfig"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object type describes networking host configuration data objects.
  These objects contain only the configuration information for networking.
  The runtime information is available from the
  <a href="vim.host.NetworkInfo.html">NetworkInfo</a> data object type.<br>See <a href="vim.host.NetworkInfo.html">HostNetworkInfo</a><br>]]>
      </description-html>
            <property name="vswitch" type-id-ref="vim.host.VirtualSwitch.Config"
      vmodl-name="vswitch"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Virtual switches configured on the host.]]>
      </description-html>
      </property>

            <property name="proxySwitch" type-id-ref="vim.host.HostProxySwitch.Config"
      vmodl-name="proxySwitch"
      version-id-ref="vim.version.version5"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Host proxy switches configured on the host.]]>
      </description-html>
      </property>

            <property name="portgroup" type-id-ref="vim.host.PortGroup.Config"
      vmodl-name="portgroup"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Port groups configured on the host.]]>
      </description-html>
      </property>

            <property name="pnic" type-id-ref="vim.host.PhysicalNic.Config"
      vmodl-name="pnic"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Physical network adapters as seen by the primary operating system.]]>
      </description-html>
      </property>

            <property name="vnic" type-id-ref="vim.host.VirtualNic.Config"
      vmodl-name="vnic"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Virtual network adapters configured for use by the host
  operating system network adapter.]]>
      </description-html>
      </property>

            <property name="consoleVnic" type-id-ref="vim.host.VirtualNic.Config"
      vmodl-name="consoleVnic"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Virtual network adapters configured for use by the Service
  Console.]]>
      </description-html>
      </property>

            <property name="dnsConfig" type-id-ref="vim.host.DnsConfig"
      vmodl-name="dnsConfig"
      is-deprecated="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Client-side DNS configuration for the host.  The DNS configuration is
  global to the entire host.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 5.5, which is moved to
  the default NetStackInstance]]>
      </deprecated-html>
      </property>

            <property name="ipRouteConfig" type-id-ref="vim.host.IpRouteConfig"
      vmodl-name="ipRouteConfig"
      is-deprecated="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[IP route configuration of the host.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 5.5, which is moved to
  the default NetStackInstance]]>
      </deprecated-html>
      </property>

            <property name="consoleIpRouteConfig" type-id-ref="vim.host.IpRouteConfig"
      vmodl-name="consoleIpRouteConfig"
      is-optional="true"
      >
      <description-html>
         <![CDATA[IP route configuration of the service console.]]>
      </description-html>
      </property>

            <property name="routeTableConfig" type-id-ref="vim.host.IpRouteTableConfig"
      vmodl-name="routeTableConfig"
      version-id-ref="vim.version.version5"
      is-deprecated="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[IP routing table configuration of the host.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 5.5, which is moved to
  the default NetStackInstance]]>
      </deprecated-html>
      </property>

            <property name="dhcp" type-id-ref="vim.host.DhcpService.Config"
      vmodl-name="dhcp"
      version-id-ref="vim.version.version2"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Dynamic Host Control Protocol (DHCP) Service instances configured
  on the host.]]>
      </description-html>
      </property>

            <property name="nat" type-id-ref="vim.host.NatService.Config"
      vmodl-name="nat"
      version-id-ref="vim.version.version2"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Network address translation (NAT) Service instances configured
  on the host.]]>
      </description-html>
      </property>

            <property name="ipV6Enabled" type-id-ref="BOOLEAN"
      vmodl-name="ipV6Enabled"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Enable or disable IPv6 protocol on this system.
 This property must be set by itself, no other property can accompany
 this change. Following the successful change, the system should be rebooted to
 have the change take effect.]]>
      </description-html>
      </property>

            <property name="netStackSpec" type-id-ref="vim.host.NetworkConfig.NetStackSpec"
      vmodl-name="netStackSpec"
      version-id-ref="vim.version.version9"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The list of network stack instance spec]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.host.NetworkConfig.Result</nested-type-id-ref>
      <nested-type-id-ref>vim.host.NetworkConfig.NetStackSpec</nested-type-id-ref>
   </data-object>
   <data-object name="HostInventoryUnreadableEvent"
      type-id="vim.event.HostInventoryUnreadableEvent"
      vmodl-name="vim.event.HostInventoryUnreadableEvent"
      version-id-ref="vim.version.version5"
      base-type-id="vim.event.Event"
      >
      <description-html>
         <![CDATA[Event indicating that the virtual machine inventory
  file on the host is damaged or unreadable.]]>
      </description-html>
   </data-object>
   <data-object name="DasHostFailedEvent"
      type-id="vim.event.DasHostFailedEvent"
      vmodl-name="vim.event.DasHostFailedEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.ClusterEvent"
      >
      <description-html>
         <![CDATA[This event records when a host failure has been detected by HA.]]>
      </description-html>
            <property name="failedHost" type-id-ref="vim.event.HostEventArgument"
      vmodl-name="failedHost"
      >
      <description-html>
         <![CDATA[The host that failed.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostNotInClusterEvent"
      type-id="vim.event.HostNotInClusterEvent"
      vmodl-name="vim.event.HostNotInClusterEvent"
      version-id-ref="vim.version.version2"
      base-type-id="vim.event.HostDasEvent"
      >
      <description-html>
         <![CDATA[This event records that the host is not a cluster member.]]>
      </description-html>
   </data-object>
   <data-object name="HostMultipathInfoLogicalUnitPolicy"
      type-id="vim.host.MultipathInfo.LogicalUnitPolicy"
      vmodl-name="vim.host.MultipathInfo.LogicalUnitPolicy"
      enclosing-type-id-ref="vim.host.MultipathInfo"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The <a href="vim.host.MultipathInfo.LogicalUnitPolicy.html">HostMultipathInfoLogicalUnitPolicy</a> data object
  describes a path selection policy for a device. This policy determines
  how paths should be utilized when accessing a device.]]>
      </description-html>
            <property name="policy" type-id-ref="java.lang.String"
      vmodl-name="policy"
      >
      <description-html>
         <![CDATA[String representing the path selection policy for a device. Use one of the following
  strings:
  For NMP plugin
  <p>
  <ul>
  <li><code>VMW_PSP_FIXED</code> - Use a preferred path whenever possible.
  <li><code>VMW_PSP_RR</code> -  Load balance.
  <li><code>VMW_PSP_MRU</code> -  Use the most recently used path.
  </ul>

 For HPP plugin
 <ul>
 <li><code>FIXED</code> - Use a preferred path whenever possible.
 <li><code>LB-RR</code> - Load Balance - round robin.
 <li><code>LB-IOPS</code> -  Load Balance - iops.
 <li><code>LB-BYTES</code> - Load Balance - bytes.
 <li><code>LB--Latency</code> -  Load balance - least latency.
 </ul>

  You can also use the
  <a href="vim.host.StorageSystem.html#queryPathSelectionPolicyOptions">QueryPathSelectionPolicyOptions</a> method
  to retrieve the set of valid strings.
  Use the key from the resulting structure
  <a href="vim.host.PathSelectionPolicyOption.html">HostPathSelectionPolicyOption</a>.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VMwareVspanPort"
      type-id="vim.dvs.VmwareDistributedVirtualSwitch.VspanPorts"
      vmodl-name="vim.dvs.VmwareDistributedVirtualSwitch.VspanPorts"
      enclosing-type-id-ref="vim.dvs.VmwareDistributedVirtualSwitch"
      version-id-ref="vim.version.version7"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This class defines the ports, uplink ports name, vlans and IP addresses participating in a
  Distributed Port Mirroring session. See VspanSession.]]>
      </description-html>
            <property name="portKey" type-id-ref="java.lang.String"
      vmodl-name="portKey"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Individual ports to participate in the Distributed Port Mirroring session.]]>
      </description-html>
      </property>

            <property name="uplinkPortName" type-id-ref="java.lang.String"
      vmodl-name="uplinkPortName"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Uplink ports used as destination ports to participate in the Distributed Port Mirroring session.
  A fault will be raised if uplinkPortName is used as source ports
  in any Distributed Port Mirroring session.]]>
      </description-html>
      </property>

            <property name="wildcardPortConnecteeType" type-id-ref="java.lang.String"
      vmodl-name="wildcardPortConnecteeType"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Wild card specification for source ports participating in the Distributed Port Mirroring session.
  See <a href="vim.dvs.PortConnectee.ConnecteeType.html">DistributedVirtualSwitchPortConnecteeConnecteeType</a> for valid values.
  Any port that has a connectee of the specified type has its receive traffic
  mirrored. A fault will be raised if wildcards are specified as destination
  ports or source ports mirroring traffic on the transmit side.
  It is to be not used.]]>
      </description-html>
      </property>

            <property name="vlans" type-id-ref="INT"
      vmodl-name="vlans"
      version-id-ref="vim.version.version8"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Vlan Ids for ingress source of Remote Mirror destination
  session.]]>
      </description-html>
      </property>

            <property name="ipAddress" type-id-ref="java.lang.String"
      vmodl-name="ipAddress"
      version-id-ref="vim.version.version8"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[IP address for the destination of encapsulated remote mirror source session,
  IPv4 address is specified using dotted decimal notation.
  For example, "192.0.2.1".
  IPv6 addresses are 128-bit addresses represented as eight fields
  of up to four hexadecimal digits.
  A colon separates each field (:). For example,
  2001:DB8:101::230:6eff:fe04:d9ff.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ManagedObjectReference"
      type-id="vmodl.ManagedObjectReference"
      vmodl-name="vmodl.ManagedObjectReference"
      version-id-ref="vmodl.version.version0"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This class is used to refer to a server-side Managed Object.]]>
      </description-html>
            <property name="type" type-id-ref="java.lang.String"
      vmodl-name="type"
      >
      <description-html>
         <![CDATA[The name of the Managed Object type this ManagedObjectReference refers to.]]>
      </description-html>
      </property>

            <property name="value" type-id-ref="java.lang.String"
      vmodl-name="value"
      >
      <description-html>
         <![CDATA[The specific instance of Managed Object this ManagedObjectReference refers to.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="NetworkSummary"
      type-id="vim.Network.Summary"
      vmodl-name="vim.Network.Summary"
      enclosing-type-id-ref="vim.Network"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[General information about a network.]]>
      </description-html>
            <property name="network" type-id-ref="vim.Network"
      vmodl-name="network"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Reference to the associated managed object.]]>
      </description-html>
      </property>

            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      >
      <description-html>
         <![CDATA[Name of the network.]]>
      </description-html>
      </property>

            <property name="accessible" type-id-ref="BOOLEAN"
      vmodl-name="accessible"
      >
      <description-html>
         <![CDATA[At least one host is configured to provide this network.]]>
      </description-html>
      </property>

            <property name="ipPoolName" type-id-ref="java.lang.String"
      vmodl-name="ipPoolName"
      version-id-ref="vim.version.version5"
      >
      <description-html>
         <![CDATA[Name of the associated IP pool. Empty if the network is not associated with an
 IP pool.]]>
      </description-html>
      </property>

            <property name="ipPoolId" type-id-ref="INT"
      vmodl-name="ipPoolId"
      version-id-ref="vim.version.version8"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Identifier of the associated IP pool. Zero if the network is not associated
 with an IP pool.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VmRestartedOnAlternateHostEvent"
      type-id="vim.event.VmRestartedOnAlternateHostEvent"
      vmodl-name="vim.event.VmRestartedOnAlternateHostEvent"
      version-id-ref="vim.version.version1"
      is-deprecated="true"
      base-type-id="vim.event.VmPoweredOnEvent"
      >
      <description-html>
         <![CDATA[This event records that the virtual machine was restarted on a host, since
  its original host had failed.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 5.0, the Server will generate the <a href="vim.event.EventEx.html">EventEx</a> event
  with the <a href="vim.event.EventEx.html#eventTypeId">eventTypeId</a> property set to "com.vmware.vc.ha.VmRestartedByHAEvent".]]>
      </deprecated-html>
            <property name="sourceHost" type-id-ref="vim.event.HostEventArgument"
      vmodl-name="sourceHost"
      >
      <description-html>
         <![CDATA[The host that failed.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ClusterHostPowerAction"
      type-id="vim.cluster.HostPowerAction"
      vmodl-name="vim.cluster.HostPowerAction"
      version-id-ref="vim.version.version2"
      base-type-id="vim.cluster.Action"
      >
      <description-html>
         <![CDATA[Describes a single host power action.]]>
      </description-html>
            <property name="operationType" type-id-ref="vim.cluster.HostPowerAction.OperationType"
      vmodl-name="operationType"
      >
      <description-html>
         <![CDATA[Specify whether the action is power on or power off]]>
      </description-html>
      </property>

            <property name="powerConsumptionWatt" type-id-ref="INT"
      vmodl-name="powerConsumptionWatt"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Estimated power consumption of the host. In case of power-on,
 this is the projected increase in the cluster's power
 consumption. In case of power off, this is the projected
 decrease in the cluster's power consumption]]>
      </description-html>
      </property>

            <property name="cpuCapacityMHz" type-id-ref="INT"
      vmodl-name="cpuCapacityMHz"
      is-optional="true"
      >
      <description-html>
         <![CDATA[CPU capacity of the host in units of MHz. In case of power-on
 action, this is the projected increase in the cluster's CPU
 capacity. In case of power off, this is the projected decrease
 in the cluster's CPU capacity.]]>
      </description-html>
      </property>

            <property name="memCapacityMB" type-id-ref="INT"
      vmodl-name="memCapacityMB"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Memory capacity of the host in units of MM. In case of power-on
 action, this is the projected increase in the cluster's memory
 capacity. In case of power off, this is the projected decrease
 in the cluster's memory capacity.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.cluster.HostPowerAction.OperationType</nested-type-id-ref>
   </data-object>
   <data-object name="VmConfigFileInfo"
      type-id="vim.host.DatastoreBrowser.VmConfigInfo"
      vmodl-name="vim.host.DatastoreBrowser.VmConfigInfo"
      enclosing-type-id-ref="vim.host.DatastoreBrowser"
      version-id-ref="vim.version.version1"
      base-type-id="vim.host.DatastoreBrowser.FileInfo"
      >
      <description-html>
         <![CDATA[This data object type describes a virtual machine configuration file.]]>
      </description-html>
            <property name="configVersion" type-id-ref="INT"
      vmodl-name="configVersion"
      is-optional="true"
      >
      </property>

            <property name="encryption" type-id-ref="vim.host.DatastoreBrowser.VmConfigInfo.VmConfigEncryptionInfo"
      vmodl-name="encryption"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The encryption information of the virtual machine
  configuration file.

  If encryption was selected in VmConfigFileQueryFlags then this
  field is always set. Inspect the VmConfigEncryptionInfo to
  determine if the virtual machine configuration file is encrypted.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.host.DatastoreBrowser.VmConfigInfo.VmConfigEncryptionInfo</nested-type-id-ref>
   </data-object>
   <data-object name="VirtualFloppyImageBackingOption"
      type-id="vim.vm.device.VirtualFloppyOption.ImageBackingOption"
      vmodl-name="vim.vm.device.VirtualFloppyOption.ImageBackingOption"
      enclosing-type-id-ref="vim.vm.device.VirtualFloppyOption"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.device.VirtualDeviceOption.FileBackingOption"
      >
      <description-html>
         <![CDATA[The ImageBackingOption data object type contains the options
  for the floppy image backing type.]]>
      </description-html>
   </data-object>
   <data-object name="VmCreatedEvent"
      type-id="vim.event.VmCreatedEvent"
      vmodl-name="vim.event.VmCreatedEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.VmEvent"
      >
      <description-html>
         <![CDATA[This event records that a virtual machine was successfully created.]]>
      </description-html>
   </data-object>
   <data-object name="GuestInfo"
      type-id="vim.vm.GuestInfo"
      vmodl-name="vim.vm.GuestInfo"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Information about the guest operating system.
  <p>
  Most of this information is collected by VMware Tools.
  In general, be sure you have VMware Tools installed
  and that the virtual machine is running when you access this information.]]>
      </description-html>
            <property name="toolsStatus" type-id-ref="vim.vm.GuestInfo.ToolsStatus"
      vmodl-name="toolsStatus"
      is-deprecated="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Current status of VMware Tools in the guest operating system, if known.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 4.0 use <a href="vim.vm.GuestInfo.html#toolsVersionStatus">toolsVersionStatus</a> and
  <a href="vim.vm.GuestInfo.html#toolsRunningStatus">toolsRunningStatus</a>.]]>
      </deprecated-html>
      </property>

            <property name="toolsVersionStatus" type-id-ref="java.lang.String"
      vmodl-name="toolsVersionStatus"
      version-id-ref="vim.version.version5"
      is-deprecated="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Current version status of VMware Tools in the guest operating system,
  if known. The set of possible values is described in
  <a href="vim.vm.GuestInfo.ToolsVersionStatus.html">VirtualMachineToolsVersionStatus</a> for vSphere API 5.0.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[as of vSphere API 5.1 use <a href="vim.vm.GuestInfo.html#toolsVersionStatus2">toolsVersionStatus2</a>.]]>
      </deprecated-html>
      </property>

            <property name="toolsVersionStatus2" type-id-ref="java.lang.String"
      vmodl-name="toolsVersionStatus2"
      version-id-ref="vim.version.version7"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Current version status of VMware Tools in the guest operating system,
  if known. The set of possible values is described in
  <a href="vim.vm.GuestInfo.ToolsVersionStatus.html">VirtualMachineToolsVersionStatus</a>]]>
      </description-html>
      </property>

            <property name="toolsRunningStatus" type-id-ref="java.lang.String"
      vmodl-name="toolsRunningStatus"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Current running status of VMware Tools in the guest operating system,
  if known. The set of possible values is described in
  <a href="vim.vm.GuestInfo.ToolsRunningStatus.html">VirtualMachineToolsRunningStatus</a>]]>
      </description-html>
      </property>

            <property name="toolsVersion" type-id-ref="java.lang.String"
      vmodl-name="toolsVersion"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Current version of VMware Tools, if known.]]>
      </description-html>
      </property>

            <property name="toolsInstallType" type-id-ref="java.lang.String"
      vmodl-name="toolsInstallType"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Current installation type of VMware Tools in the guest operating system.
 The set of possible values is described in
 <a href="vim.vm.GuestInfo.ToolsInstallType.html">VirtualMachineToolsInstallType</a>]]>
      </description-html>
      </property>

            <property name="guestId" type-id-ref="java.lang.String"
      vmodl-name="guestId"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Guest operating system identifier (short name), if known.]]>
      </description-html>
      </property>

            <property name="guestFamily" type-id-ref="java.lang.String"
      vmodl-name="guestFamily"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Guest operating system family, if known.]]>
      </description-html>
      </property>

            <property name="guestFullName" type-id-ref="java.lang.String"
      vmodl-name="guestFullName"
      is-optional="true"
      is-localizable="true"
      >
      <description-html>
         <![CDATA[Guest operating system full name, if known.]]>
      </description-html>
      </property>

            <property name="hostName" type-id-ref="java.lang.String"
      vmodl-name="hostName"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Hostname of the guest operating system, if known.]]>
      </description-html>
      </property>

            <property name="ipAddress" type-id-ref="java.lang.String"
      vmodl-name="ipAddress"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Primary IP address assigned to the guest operating system, if known.]]>
      </description-html>
      </property>

            <property name="net" type-id-ref="vim.vm.GuestInfo.NicInfo"
      vmodl-name="net"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Guest information about network adapters, if known.]]>
      </description-html>
      </property>

            <property name="ipStack" type-id-ref="vim.vm.GuestInfo.StackInfo"
      vmodl-name="ipStack"
      version-id-ref="vim.version.version6"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Guest information about IP networking stack, if known.]]>
      </description-html>
      </property>

            <property name="disk" type-id-ref="vim.vm.GuestInfo.DiskInfo"
      vmodl-name="disk"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Guest information about disks.
 <p>
 You can obtain Linux guest disk information for the following file system
 types: Ext2, Ext3, Ext4, ReiserFS, XFS, Btrfs, NTFS, VFAT, UFS, PCFS, HFS,
 and MS-DOS.
 <p>
 NOTE: Installing a more recent version of VMware Tools in the guest may help
 obtain disk information for more file system types. Please refer the VMware Tools
 User Guide for up-to-date supported file system types.]]>
      </description-html>
      </property>

            <property name="screen" type-id-ref="vim.vm.GuestInfo.ScreenInfo"
      vmodl-name="screen"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Guest screen resolution info, if known.]]>
      </description-html>
      </property>

            <property name="guestState" type-id-ref="java.lang.String"
      vmodl-name="guestState"
      >
      <description-html>
         <![CDATA[Operation mode of guest operating system. One of:
  <ul>
   <li> "running" - Guest is running normally.
   <li> "shuttingdown" - Guest has a pending shutdown command.
   <li> "resetting" - Guest has a pending reset command.
   <li> "standby" - Guest has a pending standby command.
   <li> "notrunning" - Guest is not running.
   <li> "unknown" - Guest information is not available.
  </ul>]]>
      </description-html>
      </property>

            <property name="appHeartbeatStatus" type-id-ref="java.lang.String"
      vmodl-name="appHeartbeatStatus"
      version-id-ref="vim.version.version6"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Application heartbeat status.
 Please see <a href="vim.VirtualMachine.AppHeartbeatStatusType.html">VirtualMachineAppHeartbeatStatusType</a>]]>
      </description-html>
      </property>

            <property name="guestKernelCrashed" type-id-ref="BOOLEAN"
      vmodl-name="guestKernelCrashed"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Guest operating system's kernel crash state.

 If true, the guest operating system's kernel has crashed.]]>
      </description-html>
      </property>

            <property name="appState" type-id-ref="java.lang.String"
      vmodl-name="appState"
      version-id-ref="vim.version.version9"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Application state.

 If vSphere HA is enabled and the vm is configured for Application Monitoring
 and this field's value is "appStateNeedReset" then HA will attempt immediately reset
 the vm.

 There are some system conditions which may delay the immediate reset. The immediate
 reset will be performed as soon as allowed by vSphere HA and ESX. If during these
 conditions the value is changed to appStateOk the reset will be cancelled.<br>See <a href="vim.vm.GuestInfo.AppStateType.html">GuestInfoAppStateType</a><br>]]>
      </description-html>
      </property>

            <property name="guestOperationsReady" type-id-ref="BOOLEAN"
      vmodl-name="guestOperationsReady"
      version-id-ref="vim.version.version7"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Guest Operations availability.

 If true, the virtual machine is ready to process guest operations.]]>
      </description-html>
      </property>

            <property name="interactiveGuestOperationsReady" type-id-ref="BOOLEAN"
      vmodl-name="interactiveGuestOperationsReady"
      version-id-ref="vim.version.version7"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Interactive Guest Operations availability.

 If true, the virtual machine is ready to process guest operations
 as the user interacting with the guest desktop.]]>
      </description-html>
      </property>

            <property name="guestStateChangeSupported" type-id-ref="BOOLEAN"
      vmodl-name="guestStateChangeSupported"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[State change support.

 If true, the virtual machine is ready to process soft power operations.]]>
      </description-html>
      </property>

            <property name="generationInfo" type-id-ref="vim.vm.GuestInfo.NamespaceGenerationInfo"
      vmodl-name="generationInfo"
      version-id-ref="vim.version.version8"
      is-array="true"
      is-optional="true"
      privilege="VirtualMachine.Namespace.EventNotify"
      >
      <description-html>
         <![CDATA[A list of namespaces and their corresponding generation numbers.
 Only namespaces with non-zero
 <a href="vim.vm.NamespaceManager.CreateSpec.html#maxSizeEventsFromGuest">maxSizeEventsFromGuest</a>
 are guaranteed to be present here.
 Use <a href="vim.vm.NamespaceManager.html#listNamespaces">ListNamespaces</a> to retrieve list of
 namespaces.]]>
      </description-html>
      </property>

            <property name="hwVersion" type-id-ref="java.lang.String"
      vmodl-name="hwVersion"
      version-id-ref="vim.version.v6_9_1"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The hardware version string for this virtual machine.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.vm.GuestInfo.ToolsStatus</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.GuestInfo.ToolsVersionStatus</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.GuestInfo.ToolsRunningStatus</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.GuestInfo.ToolsInstallType</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.GuestInfo.VirtualDiskMapping</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.GuestInfo.DiskInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.GuestInfo.NicInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.GuestInfo.StackInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.GuestInfo.ScreenInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.GuestInfo.GuestState</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.GuestInfo.AppStateType</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.GuestInfo.NamespaceGenerationInfo</nested-type-id-ref>
   </data-object>
   <data-object name="NumericRange"
      type-id="vim.NumericRange"
      vmodl-name="vim.NumericRange"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The class that describe an integer range.]]>
      </description-html>
            <property name="start" type-id-ref="INT"
      vmodl-name="start"
      >
      <description-html>
         <![CDATA[The starting number.]]>
      </description-html>
      </property>

            <property name="end" type-id-ref="INT"
      vmodl-name="end"
      >
      <description-html>
         <![CDATA[The ending number (inclusive).]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DVPortgroupDestroyedEvent"
      type-id="vim.event.DVPortgroupDestroyedEvent"
      vmodl-name="vim.event.DVPortgroupDestroyedEvent"
      version-id-ref="vim.version.version5"
      base-type-id="vim.event.DVPortgroupEvent"
      >
      <description-html>
         <![CDATA[Two distributed virtual portgroup was destroyed.]]>
      </description-html>
   </data-object>
   <data-object name="BaseConfigInfo"
      type-id="vim.vslm.BaseConfigInfo"
      vmodl-name="vim.vslm.BaseConfigInfo"
      version-id-ref="vim.version.version11"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object type contains the basic configuration for
 a virtual storage object or a virtual storage object snapshot.]]>
      </description-html>
            <property name="id" type-id-ref="vim.vslm.ID"
      vmodl-name="id"
      >
      <description-html>
         <![CDATA[ID of this object.]]>
      </description-html>
      </property>

            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      >
      <description-html>
         <![CDATA[Descriptive name of this object.]]>
      </description-html>
      </property>

            <property name="createTime" type-id-ref="vmodl.DateTime"
      vmodl-name="createTime"
      >
      <description-html>
         <![CDATA[The date and time this object was created.]]>
      </description-html>
      </property>

            <property name="keepAfterDeleteVm" type-id-ref="BOOLEAN"
      vmodl-name="keepAfterDeleteVm"
      version-id-ref="vim.version.version12"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Choice of the deletion behavior of this virtual storage object.
 If not set, the default value is false.]]>
      </description-html>
      </property>

            <property name="relocationDisabled" type-id-ref="BOOLEAN"
      vmodl-name="relocationDisabled"
      version-id-ref="vim.version.version12"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Is virtual storage object relocation disabled.
 If not set, the default value is false.]]>
      </description-html>
      </property>

            <property name="nativeSnapshotSupported" type-id-ref="BOOLEAN"
      vmodl-name="nativeSnapshotSupported"
      version-id-ref="vim.version.version12"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Is virtual storage object supports native snapshot.
 If not set, the default value is false.]]>
      </description-html>
      </property>

            <property name="changedBlockTrackingEnabled" type-id-ref="BOOLEAN"
      vmodl-name="changedBlockTrackingEnabled"
      version-id-ref="vim.version.version12"
      is-optional="true"
      >
      <description-html>
         <![CDATA[If Virtua storage object has changed block tracking enabled.
 If not set, the default value is false.]]>
      </description-html>
      </property>

            <property name="backing" type-id-ref="vim.vslm.BaseConfigInfo.BackingInfo"
      vmodl-name="backing"
      >
      <description-html>
         <![CDATA[Backing of this object.]]>
      </description-html>
      </property>

            <property name="iofilter" type-id-ref="java.lang.String"
      vmodl-name="iofilter"
      version-id-ref="vim.version.version12"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[IDs of the IO Filters associated with the virtual disk.
 See <a href="vim.IoFilterManager.IoFilterInfo.html#id">id</a>.
 The client cannot modify this information on a virtual machine.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.vslm.BaseConfigInfo.BackingInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.vslm.BaseConfigInfo.FileBackingInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.vslm.BaseConfigInfo.DiskFileBackingInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.vslm.BaseConfigInfo.RawDiskMappingBackingInfo</nested-type-id-ref>
   </data-object>
   <data-object name="CustomizationFixedIp"
      type-id="vim.vm.customization.FixedIp"
      vmodl-name="vim.vm.customization.FixedIp"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.customization.IpGenerator"
      >
      <description-html>
         <![CDATA[Use a static IP Address for the virtual network adapter.]]>
      </description-html>
            <property name="ipAddress" type-id-ref="java.lang.String"
      vmodl-name="ipAddress"
      >
      </property>

   </data-object>
   <data-object name="ClusterComputeResourceClusterConfigResult"
      type-id="vim.ClusterComputeResource.ClusterConfigResult"
      vmodl-name="vim.ClusterComputeResource.ClusterConfigResult"
      enclosing-type-id-ref="vim.ClusterComputeResource"
      version-id-ref="vim.version.version13"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[ClusterConfigResult is the result returned for the <a href="vim.ClusterComputeResource.html#configureHCI">ConfigureHCI_Task</a>
 method.]]>
      </description-html>
            <property name="failedHosts" type-id-ref="vim.Folder.FailedHostResult"
      vmodl-name="failedHosts"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of failed hosts.]]>
      </description-html>
      </property>

            <property name="configuredHosts" type-id-ref="vim.HostSystem"
      vmodl-name="configuredHosts"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of successfully configured hosts.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="PhysicalNicHintInfo"
      type-id="vim.host.PhysicalNic.NetworkHint"
      vmodl-name="vim.host.PhysicalNic.NetworkHint"
      enclosing-type-id-ref="vim.host.PhysicalNic"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The NetworkHint data object type is some information about
  the network to which the
  physical network adapter is attached.]]>
      </description-html>
            <property name="device" type-id-ref="java.lang.String"
      vmodl-name="device"
      >
      <description-html>
         <![CDATA[The physical network adapter device to which
  this hint applies.]]>
      </description-html>
      </property>

            <property name="subnet" type-id-ref="vim.host.PhysicalNic.NetworkHint.IpNetwork"
      vmodl-name="subnet"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The list of subnets that were detected on this
  physical network adapter.]]>
      </description-html>
      </property>

            <property name="network" type-id-ref="vim.host.PhysicalNic.NetworkHint.NamedNetwork"
      vmodl-name="network"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The list of network names that were detected on this
  physical network adapter.]]>
      </description-html>
      </property>

            <property name="connectedSwitchPort" type-id-ref="vim.host.PhysicalNic.CdpInfo"
      vmodl-name="connectedSwitchPort"
      version-id-ref="vim.version.version2"
      is-optional="true"
      >
      <description-html>
         <![CDATA[If the uplink directly connects to a CDP-awared network device
  and the device's CDP broadcast is enabled, this property will be
  set to return the CDP information that vmkernel received on this
  Physical NIC. CDP data contains the device information and port ID that
  the Physical NIC connects to. If the uplink is not connecting to a
  CDP-awared device or CDP is not enabled on the device, this
  property will be unset.
  <a href="vim.host.PhysicalNic.CdpInfo.html">PhysicalNicCdpInfo</a>]]>
      </description-html>
      </property>

            <property name="lldpInfo" type-id-ref="vim.host.PhysicalNic.LldpInfo"
      vmodl-name="lldpInfo"
      version-id-ref="vim.version.version7"
      is-optional="true"
      >
      <description-html>
         <![CDATA[If the uplink directly connects to an LLDP-aware network device and
  the device's LLDP broadcast is enabled, this property will be set to
  return the LLDP information that is received on this physical network
  adapter. If the uplink is not connecting to a LLDP-aware device or
  LLDP is not enabled on the device, this property will be unset.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.host.PhysicalNic.NetworkHint.HintElement</nested-type-id-ref>
      <nested-type-id-ref>vim.host.PhysicalNic.NetworkHint.IpNetwork</nested-type-id-ref>
      <nested-type-id-ref>vim.host.PhysicalNic.NetworkHint.NamedNetwork</nested-type-id-ref>
   </data-object>
   <data-object name="VirtualDiskOptionVFlashCacheConfigOption"
      type-id="vim.vm.device.VirtualDiskOption.VFlashCacheConfigOption"
      vmodl-name="vim.vm.device.VirtualDiskOption.VFlashCacheConfigOption"
      enclosing-type-id-ref="vim.vm.device.VirtualDiskOption"
      version-id-ref="vim.version.version9"
      is-deprecated="true"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Options for vFlash cache configuration.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[since vSphere 7.0 because vFlash Read Cache
 end of availability.]]>
      </deprecated-html>
            <property name="cacheConsistencyType" type-id-ref="vim.option.ChoiceOption"
      vmodl-name="cacheConsistencyType"
      >
      <description-html>
         <![CDATA[Cache data consistency type.
 See <a href="vim.vm.device.VirtualDisk.VFlashCacheConfigInfo.CacheConsistencyType.html">VirtualDiskVFlashCacheConfigInfoCacheConsistencyType</a>]]>
      </description-html>
      </property>

            <property name="cacheMode" type-id-ref="vim.option.ChoiceOption"
      vmodl-name="cacheMode"
      >
      <description-html>
         <![CDATA[Cache mode
 See <a href="vim.vm.device.VirtualDisk.VFlashCacheConfigInfo.CacheMode.html">VirtualDiskVFlashCacheConfigInfoCacheMode</a>]]>
      </description-html>
      </property>

            <property name="reservationInMB" type-id-ref="vim.option.LongOption"
      vmodl-name="reservationInMB"
      >
      <description-html>
         <![CDATA[Cache reservation]]>
      </description-html>
      </property>

            <property name="blockSizeInKB" type-id-ref="vim.option.LongOption"
      vmodl-name="blockSizeInKB"
      >
      <description-html>
         <![CDATA[Cache block size]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="MethodActionArgument"
      type-id="vim.action.MethodActionArgument"
      vmodl-name="vim.action.MethodActionArgument"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object type defines a named argument for an operation.]]>
      </description-html>
            <property name="value" type-id-ref="vmodl.Any"
      vmodl-name="value"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The value of the argument.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ClusterResourceUsageSummary"
      type-id="vim.cluster.ResourceUsageSummary"
      vmodl-name="vim.cluster.ResourceUsageSummary"
      version-id-ref="vim.version.version10"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This class contains cpu, memory and storage usage information at cluster
 level.]]>
      </description-html>
            <property name="cpuUsedMHz" type-id-ref="INT"
      vmodl-name="cpuUsedMHz"
      >
      </property>

            <property name="cpuCapacityMHz" type-id-ref="INT"
      vmodl-name="cpuCapacityMHz"
      >
      </property>

            <property name="memUsedMB" type-id-ref="INT"
      vmodl-name="memUsedMB"
      >
      </property>

            <property name="memCapacityMB" type-id-ref="INT"
      vmodl-name="memCapacityMB"
      >
      </property>

            <property name="pMemAvailableMB" type-id-ref="LONG"
      vmodl-name="pMemAvailableMB"
      version-id-ref="vim.version.version12"
      is-optional="true"
      >
      </property>

            <property name="pMemCapacityMB" type-id-ref="LONG"
      vmodl-name="pMemCapacityMB"
      version-id-ref="vim.version.version12"
      is-optional="true"
      >
      </property>

            <property name="storageUsedMB" type-id-ref="LONG"
      vmodl-name="storageUsedMB"
      >
      </property>

            <property name="storageCapacityMB" type-id-ref="LONG"
      vmodl-name="storageCapacityMB"
      >
      </property>

   </data-object>
   <data-object name="HostNetworkPolicy"
      type-id="vim.host.NetworkPolicy"
      vmodl-name="vim.host.NetworkPolicy"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object type describes network policies that can be configured for
  both virtual switches and port groups.  The policy settings on the
  port group can inherit policy settings from their containing virtual
  switch.  These policy settings are inherited if
  the settings on the port group are not set.  Since every policy
  setting on a port group is optional, every individual policy setting
  can be inherited.
  <p>
  By contrast, if a host is capable of implementing a policy setting, every
  virtual switch has some value assigned to the policy setting.  In this
  case, although all of the policy settings are optional,
  they always have some value either by inheritance or by direct
  setting.
  <p>
  Policy settings are organized into policy groups such as SecurityPolicy.
  Policy groups are optional since it is possible that a host may not implement
  such policies.  If a host does not support a policy group, the policy group
  is not set on both the virtual switches and the port groups.<br>See <a href="vim.host.NetCapabilities.html">HostNetCapabilities</a><br>]]>
      </description-html>
            <property name="security" type-id-ref="vim.host.NetworkPolicy.SecurityPolicy"
      vmodl-name="security"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The security policy governing ports on this virtual switch.]]>
      </description-html>
      </property>

            <property name="nicTeaming" type-id-ref="vim.host.NetworkPolicy.NicTeamingPolicy"
      vmodl-name="nicTeaming"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The network adapter teaming policy. The bridge must be BondBridge
  for this property to be valid.]]>
      </description-html>
      </property>

            <property name="offloadPolicy" type-id-ref="vim.host.NetOffloadCapabilities"
      vmodl-name="offloadPolicy"
      is-deprecated="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Offload capabilities are used to optimize virtual machine network
  performance.  When a virtual machine is transmitting on a network,
  some operations can be offloaded to either the host or the physical
  hardware.  This policy indicates what networking related operations
  should be offloaded.
  <p>
  All virtual machines using this PortGroup are subject to this
  policy.  There is no setting for an individual virtual machine
  to determine if an operation should be offloaded.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of VI API 4.0, the system defaults will be used.]]>
      </deprecated-html>
      </property>

            <property name="shapingPolicy" type-id-ref="vim.host.NetworkPolicy.TrafficShapingPolicy"
      vmodl-name="shapingPolicy"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The traffic shaping policy.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.host.NetworkPolicy.SecurityPolicy</nested-type-id-ref>
      <nested-type-id-ref>vim.host.NetworkPolicy.TrafficShapingPolicy</nested-type-id-ref>
      <nested-type-id-ref>vim.host.NetworkPolicy.NicFailureCriteria</nested-type-id-ref>
      <nested-type-id-ref>vim.host.NetworkPolicy.NicOrderPolicy</nested-type-id-ref>
      <nested-type-id-ref>vim.host.NetworkPolicy.NicTeamingPolicy</nested-type-id-ref>
   </data-object>
   <data-object name="HostCnxFailedAccountFailedEvent"
      type-id="vim.event.HostCnxFailedAccountFailedEvent"
      vmodl-name="vim.event.HostCnxFailedAccountFailedEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.HostEvent"
      >
      <description-html>
         <![CDATA[This event records a failure to connect to a host
  due to a failure to set up a management account.]]>
      </description-html>
   </data-object>
   <data-object name="LocalLicenseSource"
      type-id="vim.LicenseManager.LocalLicense"
      vmodl-name="vim.LicenseManager.LocalLicense"
      enclosing-type-id-ref="vim.LicenseManager"
      version-id-ref="vim.version.version1"
      is-deprecated="true"
      base-type-id="vim.LicenseManager.LicenseSource"
      >
      <description-html>
         <![CDATA[Specify license key data to store locally.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 4.0, this is not used by the system.]]>
      </deprecated-html>
            <property name="licenseKeys" type-id-ref="java.lang.String"
      vmodl-name="licenseKeys"
      >
      <description-html>
         <![CDATA[The size of this string is implementation dependent.
  It must contain ASCII or ISO Latin-1 characters only.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualMachineDefaultProfileSpec"
      type-id="vim.vm.DefaultProfileSpec"
      vmodl-name="vim.vm.DefaultProfileSpec"
      version-id-ref="vim.version.version10"
      base-type-id="vim.vm.ProfileSpec"
      >
      <description-html>
         <![CDATA[Used to indicate that the Default Storage Policy of the target datastore
  be used for a Virtual Machine Home or a Virtual Disk object.
  <p>
  Neither the association nor the policy data is persisted in Virtual Machine
  configuration. This data is managed by an extension of Virtual Center
  (Storage Policy Based Management).
  <p>]]>
      </description-html>
   </data-object>
   <data-object name="VirtualPCIPassthroughDeviceBackingOption"
      type-id="vim.vm.device.VirtualPCIPassthroughOption.DeviceBackingOption"
      vmodl-name="vim.vm.device.VirtualPCIPassthroughOption.DeviceBackingOption"
      enclosing-type-id-ref="vim.vm.device.VirtualPCIPassthroughOption"
      version-id-ref="vim.version.version5"
      base-type-id="vim.vm.device.VirtualDeviceOption.DeviceBackingOption"
      >
      <description-html>
         <![CDATA[This data object type describes the options for the
  <a href="vim.vm.device.VirtualPCIPassthrough.DeviceBackingInfo.html">VirtualPCIPassthroughDeviceBackingInfo</a> data object type.]]>
      </description-html>
   </data-object>
   <data-object name="HostDasDisabledEvent"
      type-id="vim.event.HostDasDisabledEvent"
      vmodl-name="vim.event.HostDasDisabledEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.HostEvent"
      >
      <description-html>
         <![CDATA[This event records when HA has been disabled on a host.]]>
      </description-html>
   </data-object>
   <data-object name="DistributedVirtualPortgroupInfo"
      type-id="vim.dvs.DistributedVirtualPortgroupInfo"
      vmodl-name="vim.dvs.DistributedVirtualPortgroupInfo"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This class describes a DistributedVirtualPortgroup that a device backing
  can be attached to.]]>
      </description-html>
            <property name="switchName" type-id-ref="java.lang.String"
      vmodl-name="switchName"
      >
      <description-html>
         <![CDATA[The name of the switch.]]>
      </description-html>
      </property>

            <property name="switchUuid" type-id-ref="java.lang.String"
      vmodl-name="switchUuid"
      >
      <description-html>
         <![CDATA[The UUID of the switch.]]>
      </description-html>
      </property>

            <property name="portgroupName" type-id-ref="java.lang.String"
      vmodl-name="portgroupName"
      >
      <description-html>
         <![CDATA[The name of the portgroup.]]>
      </description-html>
      </property>

            <property name="portgroupKey" type-id-ref="java.lang.String"
      vmodl-name="portgroupKey"
      >
      <description-html>
         <![CDATA[The key of the portgroup.]]>
      </description-html>
      </property>

            <property name="portgroupType" type-id-ref="java.lang.String"
      vmodl-name="portgroupType"
      >
      <description-html>
         <![CDATA[The type of portgroup.
  See <a href="vim.dvs.DistributedVirtualPortgroup.PortgroupType.html">DistributedVirtualPortgroupPortgroupType</a>]]>
      </description-html>
      </property>

            <property name="uplinkPortgroup" type-id-ref="BOOLEAN"
      vmodl-name="uplinkPortgroup"
      >
      <description-html>
         <![CDATA[Whether this portgroup is an uplink portgroup.]]>
      </description-html>
      </property>

            <property name="portgroup" type-id-ref="vim.dvs.DistributedVirtualPortgroup"
      vmodl-name="portgroup"
      >
      <description-html>
         <![CDATA[The portgroup.]]>
      </description-html>
      </property>

            <property name="networkReservationSupported" type-id-ref="BOOLEAN"
      vmodl-name="networkReservationSupported"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates whether network bandwidth reservation is supported on
 the portgroup]]>
      </description-html>
      </property>

            <property name="backingType" type-id-ref="java.lang.String"
      vmodl-name="backingType"
      version-id-ref="vim.version.v7_0"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Backing type of portgroup.
 See
 <a href="vim.dvs.DistributedVirtualPortgroup.html">DistributedVirtualPortgroup</a>.<a href="vim.dvs.DistributedVirtualPortgroup.BackingType.html">DistributedVirtualPortgroupBackingType</a>
 for possible values.
 The default value is "standard".]]>
      </description-html>
      </property>

            <property name="logicalSwitchUuid" type-id-ref="java.lang.String"
      vmodl-name="logicalSwitchUuid"
      version-id-ref="vim.version.v7_0"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The logical switch UUID, which is used by NSX portgroup]]>
      </description-html>
      </property>

            <property name="segmentId" type-id-ref="java.lang.String"
      vmodl-name="segmentId"
      version-id-ref="vim.version.v7_0"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The segment ID of logical switch, which is used by NSX portroup]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostProfileSerializedHostProfileSpec"
      type-id="vim.profile.host.HostProfile.SerializedHostProfileSpec"
      vmodl-name="vim.profile.host.HostProfile.SerializedHostProfileSpec"
      enclosing-type-id-ref="vim.profile.host.HostProfile"
      version-id-ref="vim.version.version7"
      base-type-id="vim.profile.Profile.SerializedCreateSpec"
      >
      <description-html>
         <![CDATA[The <a href="vim.profile.host.HostProfile.SerializedHostProfileSpec.html">HostProfileSerializedHostProfileSpec</a> data object
 contains a string representation of a host profile. Use this object when you
 create a host profile from a file.]]>
      </description-html>
            <property name="validatorHost" type-id-ref="vim.HostSystem"
      vmodl-name="validatorHost"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Host for profile validation. This can be a host on which
 the profile is intended to be used.]]>
      </description-html>
      </property>

            <property name="validating" type-id-ref="BOOLEAN"
      vmodl-name="validating"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[If "false", then the host profile will be saved without being validated.
 The default if not specified is "true".
 This option should be used with caution, since the resulting host profile
 will not be checked for errors.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualDiskOption"
      type-id="vim.vm.device.VirtualDiskOption"
      vmodl-name="vim.vm.device.VirtualDiskOption"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.device.VirtualDeviceOption"
      >
      <description-html>
         <![CDATA[The VirtualDiskOption data class contains the options for the
  virtual disk data object type.]]>
      </description-html>
            <property name="capacityInKB" type-id-ref="vim.option.LongOption"
      vmodl-name="capacityInKB"
      >
      <description-html>
         <![CDATA[Minimum, maximum, and default capacity of the disk.]]>
      </description-html>
      </property>

            <property name="ioAllocationOption" type-id-ref="vim.StorageResourceManager.IOAllocationOption"
      vmodl-name="ioAllocationOption"
      version-id-ref="vim.version.version6"
      >
      <description-html>
         <![CDATA[Minimum, maximum, and default values for Storage I/O allocation.<br>See <a href="vim.StorageResourceManager.IOAllocationInfo.html">StorageIOAllocationInfo</a><br>]]>
      </description-html>
      </property>

            <property name="vFlashCacheConfigOption" type-id-ref="vim.vm.device.VirtualDiskOption.VFlashCacheConfigOption"
      vmodl-name="vFlashCacheConfigOption"
      version-id-ref="vim.version.version9"
      is-deprecated="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[vFlash cache configuration on the disk.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[since vSphere 7.0 because vFlash Read Cache
 end of availability.]]>
      </deprecated-html>
      </property>

      <nested-type-id-ref>vim.vm.device.VirtualDiskOption.DiskMode</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.device.VirtualDiskOption.CompatibilityMode</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.device.VirtualDiskOption.SparseVer1BackingOption</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.device.VirtualDiskOption.SparseVer2BackingOption</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.device.VirtualDiskOption.FlatVer1BackingOption</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.device.VirtualDiskOption.DeltaDiskFormatsSupported</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.device.VirtualDiskOption.FlatVer2BackingOption</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.device.VirtualDiskOption.SeSparseBackingOption</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.device.VirtualDiskOption.RawDiskVer2BackingOption</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.device.VirtualDiskOption.PartitionedRawDiskVer2BackingOption</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.device.VirtualDiskOption.RawDiskMappingVer1BackingOption</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.device.VirtualDiskOption.LocalPMemBackingOption</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.device.VirtualDiskOption.VFlashCacheConfigOption</nested-type-id-ref>
   </data-object>
   <data-object name="HostSecuritySpec"
      type-id="vim.host.SecuritySpec"
      vmodl-name="vim.host.SecuritySpec"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[DataObject used for configuring the Security settings]]>
      </description-html>
            <property name="adminPassword" type-id-ref="java.lang.String"
      vmodl-name="adminPassword"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Administrator password to configure]]>
      </description-html>
      </property>

            <property name="removePermission" type-id-ref="vim.AuthorizationManager.Permission"
      vmodl-name="removePermission"
      version-id-ref="vim.version.version6"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Permissions to remove]]>
      </description-html>
      </property>

            <property name="addPermission" type-id-ref="vim.AuthorizationManager.Permission"
      vmodl-name="addPermission"
      version-id-ref="vim.version.version6"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Permissions to add]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostNetworkInfo"
      type-id="vim.host.NetworkInfo"
      vmodl-name="vim.host.NetworkInfo"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object type describes networking host
  configuration data objects.]]>
      </description-html>
            <property name="vswitch" type-id-ref="vim.host.VirtualSwitch"
      vmodl-name="vswitch"
      is-array="true"
      is-optional="true"
      is-linkable="true"
      >
      <description-html>
         <![CDATA[Virtual switches configured on the host.]]>
      </description-html>
      </property>

            <property name="proxySwitch" type-id-ref="vim.host.HostProxySwitch"
      vmodl-name="proxySwitch"
      version-id-ref="vim.version.version5"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Proxy switches configured on the host.]]>
      </description-html>
      </property>

            <property name="portgroup" type-id-ref="vim.host.PortGroup"
      vmodl-name="portgroup"
      is-array="true"
      is-optional="true"
      is-linkable="true"
      >
      <description-html>
         <![CDATA[Port groups configured on the host.]]>
      </description-html>
      </property>

            <property name="pnic" type-id-ref="vim.host.PhysicalNic"
      vmodl-name="pnic"
      is-array="true"
      is-optional="true"
      is-linkable="true"
      >
      <description-html>
         <![CDATA[Physical network adapters as seen by the primary operating system.]]>
      </description-html>
      </property>

            <property name="rdmaDevice" type-id-ref="vim.host.RdmaDevice"
      vmodl-name="rdmaDevice"
      version-id-ref="vim.version.v7_0"
      is-array="true"
      is-optional="true"
      is-linkable="true"
      >
      <description-html>
         <![CDATA[Remote direct memory access devices, if any are present on the host.]]>
      </description-html>
      </property>

            <property name="vnic" type-id-ref="vim.host.VirtualNic"
      vmodl-name="vnic"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Virtual network adapters configured on the host (hosted products)
  or the vmkernel.
  In the hosted architecture, these network adapters are used by the
  host to
  communicate with the virtual machines running on that host.  In the
  VMkernel architecture, these virtual network adapters provide the
  ESX Server with
  external network access through a virtual switch that is bridged to a
  physical network adapter.  The VMkernel uses these network adapters
  for features such as VMotion, NAS, iSCSI, and remote MKS connections.]]>
      </description-html>
      </property>

            <property name="consoleVnic" type-id-ref="vim.host.VirtualNic"
      vmodl-name="consoleVnic"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Virtual network adapters configured for use by the service console.
  The service
  console uses this network access for system management and bootstrapping
  services like network boot.

  The two sets of virtual network adapters are mutually exclusive.
  A virtual network adapter
  in this list cannot be used for things like VMotion.  Likewise, a
  virtual network adapter in the other list cannot be used by the
  service console.]]>
      </description-html>
      </property>

            <property name="dnsConfig" type-id-ref="vim.host.DnsConfig"
      vmodl-name="dnsConfig"
      is-deprecated="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Client-side DNS configuration.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 5.5, which is moved to
  each NetStackInstance. For this property in NetworkInfo,
  Get operation will only return its value of default NetStackInstance.]]>
      </deprecated-html>
      </property>

            <property name="ipRouteConfig" type-id-ref="vim.host.IpRouteConfig"
      vmodl-name="ipRouteConfig"
      is-deprecated="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[IP route configuration.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 5.5, which is moved to
  each NetStackInstance. For this property in NetworkInfo,
  Get operation will only return its value of default NetStackInstance.]]>
      </deprecated-html>
      </property>

            <property name="consoleIpRouteConfig" type-id-ref="vim.host.IpRouteConfig"
      vmodl-name="consoleIpRouteConfig"
      is-optional="true"
      >
      <description-html>
         <![CDATA[IP route configuration of the service console.]]>
      </description-html>
      </property>

            <property name="routeTableInfo" type-id-ref="vim.host.IpRouteTableInfo"
      vmodl-name="routeTableInfo"
      version-id-ref="vim.version.version5"
      is-deprecated="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[IP routing table]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 5.5, which is moved to
  each NetStackInstance. For this property in NetworkInfo,
  Get operation will only return its value of default NetStackInstance.]]>
      </deprecated-html>
      </property>

            <property name="dhcp" type-id-ref="vim.host.DhcpService"
      vmodl-name="dhcp"
      version-id-ref="vim.version.version2"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[DHCP Service instances configured on the host.]]>
      </description-html>
      </property>

            <property name="nat" type-id-ref="vim.host.NatService"
      vmodl-name="nat"
      version-id-ref="vim.version.version2"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[NAT service instances configured on the host.]]>
      </description-html>
      </property>

            <property name="ipV6Enabled" type-id-ref="BOOLEAN"
      vmodl-name="ipV6Enabled"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Enable or disable IPv6 protocol on this system.]]>
      </description-html>
      </property>

            <property name="atBootIpV6Enabled" type-id-ref="BOOLEAN"
      vmodl-name="atBootIpV6Enabled"
      version-id-ref="vim.version.version6"
      is-optional="true"
      >
      <description-html>
         <![CDATA[If true then dual IPv4/IPv6 stack enabled else IPv4 only.]]>
      </description-html>
      </property>

            <property name="netStackInstance" type-id-ref="vim.host.NetStackInstance"
      vmodl-name="netStackInstance"
      version-id-ref="vim.version.version9"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of NetStackInstances]]>
      </description-html>
      </property>

            <property name="opaqueSwitch" type-id-ref="vim.host.OpaqueSwitch"
      vmodl-name="opaqueSwitch"
      version-id-ref="vim.version.version9"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of opaque switches configured on the host.]]>
      </description-html>
      </property>

            <property name="opaqueNetwork" type-id-ref="vim.host.OpaqueNetworkInfo"
      vmodl-name="opaqueNetwork"
      version-id-ref="vim.version.version9"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of opaque networks]]>
      </description-html>
      </property>

            <property name="nsxTransportNodeId" type-id-ref="java.lang.String"
      vmodl-name="nsxTransportNodeId"
      version-id-ref="vim.version.v7_0"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The nsx transport node Id]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VslmCloneSpec"
      type-id="vim.vslm.CloneSpec"
      vmodl-name="vim.vslm.CloneSpec"
      version-id-ref="vim.version.version11"
      base-type-id="vim.vslm.MigrateSpec"
      >
      <description-html>
         <![CDATA[Specification of cloning a virtual storage object.]]>
      </description-html>
            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      >
      <description-html>
         <![CDATA[Descriptive name of the cloned virtual storage object.]]>
      </description-html>
      </property>

            <property name="keepAfterDeleteVm" type-id-ref="BOOLEAN"
      vmodl-name="keepAfterDeleteVm"
      version-id-ref="vim.version.version12"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Choice of the deletion behavior of this virtual storage object.
 If not set, the default value is false.]]>
      </description-html>
      </property>

            <property name="metadata" type-id-ref="vim.KeyValue"
      vmodl-name="metadata"
      version-id-ref="vim.version.version14"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The metadata KV pairs that are supposed to be updated on the destination
 virtual storage object. The clone task is atomic by design. That being
 said, failing to update the specified metadata pairs leads to the failure
 of the clone task. If unset, no metadata will be updated. An empty string
 value is indicative of a vcenter tag.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostNvmeController"
      type-id="vim.host.NvmeController"
      vmodl-name="vim.host.NvmeController"
      version-id-ref="vim.version.v7_0"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object represents an NVME controller.
 <p>
 Some terminology is borrowed from the NVM Express over Fabrics
 and the NVM Express 1.3 specifications, which are available
 at the following address:
 https://nvmexpress.org/resources/specifications/]]>
      </description-html>
            <property name="key" type-id-ref="java.lang.String"
      vmodl-name="key"
      >
      <description-html>
         <![CDATA[The linkable identifier.]]>
      </description-html>
      </property>

            <property name="controllerNumber" type-id-ref="INT"
      vmodl-name="controllerNumber"
      >
      <description-html>
         <![CDATA[The controller number uniquely identifies the NVME Controller
  within its HostSystem.
  <p>
  This should not be confused with Controller ID (see
  "NVM Express over Fabrics 1.0", Section 4.2, "Controller model"
  for details), which only serves as an identifier
  within a particular NVME subsystem.]]>
      </description-html>
      </property>

            <property name="subnqn" type-id-ref="java.lang.String"
      vmodl-name="subnqn"
      >
      <description-html>
         <![CDATA[The NVME subsystem qualified name.
  <p>
  Each NVME controller is associated with an NVME subsystem
  which can present a collection of controllers to the adapter.

  For more details, refer to:
  <ul>
  <li>"NVM Express over Fabrics 1.0", Section 1.5.2,
  "NVM Subsystem".</li>
  </ul>]]>
      </description-html>
      </property>

            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      >
      <description-html>
         <![CDATA[Name of the controller.
  <p>
  Each controller has a name. For NVME over Fabrics controllers,
  it is generated when the controller is connected to an NVME
  over Fabrics adapter.]]>
      </description-html>
      </property>

            <property name="associatedAdapter" type-id-ref="vim.host.HostBusAdapter"
      vmodl-name="associatedAdapter"
      is-link="true"
      >
      <description-html>
         <![CDATA[Associated NVME over Fabrics host bus adapter.
  <p>
  A controller is associated with exactly one host at a time through
  an NVME over Fabrics host bus adapter.]]>
      </description-html>
      </property>

            <property name="transportType" type-id-ref="java.lang.String"
      vmodl-name="transportType"
      >
      <description-html>
         <![CDATA[The transport type supported by the controller.
  <p>
  The set of possible values is described in <a href="vim.host.NvmeTransportType.html">HostNvmeTransportType</a>.
  For details, see:
  <ul>
  <li>"NVM Express over Fabrics 1.0", Section 1.5.1,
  "Fabrics and Transports".</li>
  </ul>]]>
      </description-html>
      </property>

            <property name="fusedOperationSupported" type-id-ref="BOOLEAN"
      vmodl-name="fusedOperationSupported"
      >
      <description-html>
         <![CDATA[Indicates whether fused operations are supported by the controller.
  <p>
  An NVME controller may support fused operations. This is required
  to support shared storage, otherwise data corruption may occur.
  For more details, see:
  <ul>
  <li>"NVM Express 1.3", Section 6.2, "Fused Operations".</li>
  </ul>]]>
      </description-html>
      </property>

            <property name="numberOfQueues" type-id-ref="INT"
      vmodl-name="numberOfQueues"
      >
      <description-html>
         <![CDATA[The number of I/O queues allocated for the controller.]]>
      </description-html>
      </property>

            <property name="queueSize" type-id-ref="INT"
      vmodl-name="queueSize"
      >
      <description-html>
         <![CDATA[The size of each of the I/O queues.
  <p>
  This will not be greater than the Maximum Queue Entries Supported
  (mqes) value for the controller. For more information, see:
  <ul>
  <li>"NVM Express 1.3", section 3.1, "Register definition".</li>
  </ul>]]>
      </description-html>
      </property>

            <property name="attachedNamespace" type-id-ref="vim.host.NvmeNamespace"
      vmodl-name="attachedNamespace"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of NVME namespaces attached to the controller.
  <p>
  Namespaces provide access to a non-volatile storage medium
  which is part of the NVM subsystem. For an overview, see:
  <ul>
  <li>"NVM Express over Fabrics 1.0", Section 1.5.2,
  "NVM Subsystem".</li>
  <li>"NVM Express 1.3", section 6.1, "Namespaces".</li>
  </ul>]]>
      </description-html>
      </property>

            <property name="vendorId" type-id-ref="java.lang.String"
      vmodl-name="vendorId"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The vendor ID of the controller, if available.]]>
      </description-html>
      </property>

            <property name="model" type-id-ref="java.lang.String"
      vmodl-name="model"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The model name of the controller, if available.]]>
      </description-html>
      </property>

            <property name="serialNumber" type-id-ref="java.lang.String"
      vmodl-name="serialNumber"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The serial number of the controller, if available.]]>
      </description-html>
      </property>

            <property name="firmwareVersion" type-id-ref="java.lang.String"
      vmodl-name="firmwareVersion"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The firmware version of the controller, if available.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VmResettingEvent"
      type-id="vim.event.VmResettingEvent"
      vmodl-name="vim.event.VmResettingEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.VmEvent"
      >
      <description-html>
         <![CDATA[This event records a virtual machine resetting.]]>
      </description-html>
   </data-object>
   <data-object name="ClusterPowerOnVmResult"
      type-id="vim.cluster.PowerOnVmResult"
      vmodl-name="vim.cluster.PowerOnVmResult"
      version-id-ref="vim.version.version2"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[PowerOnVmResult is the base class of the result returned to the
   <a href="vim.Datacenter.html#powerOnVm">PowerOnMultiVM_Task</a> method.]]>
      </description-html>
            <property name="attempted" type-id-ref="vim.cluster.AttemptedVmInfo"
      vmodl-name="attempted"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The list of virtual machines the Virtual Center has attempted to power on.
 For a virtual machine not managed by DRS, a task ID is also returned.]]>
      </description-html>
      </property>

            <property name="notAttempted" type-id-ref="vim.cluster.NotAttemptedVmInfo"
      vmodl-name="notAttempted"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The list of virtual machines DRS can not find suitable hosts for powering on.
 There is one fault associated with each virtual machine.]]>
      </description-html>
      </property>

            <property name="recommendations" type-id-ref="vim.cluster.Recommendation"
      vmodl-name="recommendations"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The list of recommendations that need the client to approve manually.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DvsHostJoinedEvent"
      type-id="vim.event.DvsHostJoinedEvent"
      vmodl-name="vim.event.DvsHostJoinedEvent"
      version-id-ref="vim.version.version5"
      base-type-id="vim.event.DvsEvent"
      >
      <description-html>
         <![CDATA[A host joined the distributed virtual switch.]]>
      </description-html>
            <property name="hostJoined" type-id-ref="vim.event.HostEventArgument"
      vmodl-name="hostJoined"
      >
      <description-html>
         <![CDATA[The host that joined DVS.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VchaClusterRuntimeInfo"
      type-id="vim.vcha.FailoverClusterManager.VchaClusterRuntimeInfo"
      vmodl-name="vim.vcha.FailoverClusterManager.VchaClusterRuntimeInfo"
      enclosing-type-id-ref="vim.vcha.FailoverClusterManager"
      version-id-ref="vim.version.version11"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The VchaClusterRuntimeInfo class describes the
 runtime information of a VCHA Cluster. This includes the last known
 state of the cluster and last known states of each node.]]>
      </description-html>
            <property name="clusterState" type-id-ref="java.lang.String"
      vmodl-name="clusterState"
      >
      <description-html>
         <![CDATA[Last known state of the VCHA Cluster.
 <a href="vim.vcha.FailoverClusterManager.VchaClusterState.html">VchaClusterState</a> lists all possible states.]]>
      </description-html>
      </property>

            <property name="nodeInfo" type-id-ref="vim.vcha.FailoverClusterManager.VchaNodeRuntimeInfo"
      vmodl-name="nodeInfo"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Runtime information for each node in the VCHA Cluster.]]>
      </description-html>
      </property>

            <property name="clusterMode" type-id-ref="java.lang.String"
      vmodl-name="clusterMode"
      >
      <description-html>
         <![CDATA[Operational mode of the VCHA Cluster.
 <a href="vim.vcha.FailoverClusterManager.VchaClusterMode.html">VchaClusterMode</a>
 lists all possible modes.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualFloppyDeviceBackingOption"
      type-id="vim.vm.device.VirtualFloppyOption.DeviceBackingOption"
      vmodl-name="vim.vm.device.VirtualFloppyOption.DeviceBackingOption"
      enclosing-type-id-ref="vim.vm.device.VirtualFloppyOption"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.device.VirtualDeviceOption.DeviceBackingOption"
      >
      <description-html>
         <![CDATA[The DeviceBackingOption data object type contains the options
  for the floppy device backing type.]]>
      </description-html>
   </data-object>
   <data-object name="HostNetworkResourceRuntime"
      type-id="vim.host.RuntimeInfo.NetworkResourceRuntimeInfo"
      vmodl-name="vim.host.RuntimeInfo.NetworkResourceRuntimeInfo"
      enclosing-type-id-ref="vim.host.RuntimeInfo"
      version-id-ref="vim.version.version10"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data type describes the network resource runtime information]]>
      </description-html>
            <property name="pnicResourceInfo" type-id-ref="vim.host.RuntimeInfo.PnicNetworkResourceInfo"
      vmodl-name="pnicResourceInfo"
      is-array="true"
      >
      <description-html>
         <![CDATA[The network resource related information on each
 physical NIC]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VmGuestShutdownEvent"
      type-id="vim.event.VmGuestShutdownEvent"
      vmodl-name="vim.event.VmGuestShutdownEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.VmEvent"
      >
      <description-html>
         <![CDATA[This is a virtual machine guest shutdown request event.]]>
      </description-html>
   </data-object>
   <data-object name="ClusterCreatedEvent"
      type-id="vim.event.ClusterCreatedEvent"
      vmodl-name="vim.event.ClusterCreatedEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.ClusterEvent"
      >
      <description-html>
         <![CDATA[This event records when a cluster is created.]]>
      </description-html>
            <property name="parent" type-id-ref="vim.event.FolderEventArgument"
      vmodl-name="parent"
      >
      <description-html>
         <![CDATA[The folder where the cluster is created.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualNVDIMMBackingInfo"
      type-id="vim.vm.device.VirtualNVDIMM.BackingInfo"
      vmodl-name="vim.vm.device.VirtualNVDIMM.BackingInfo"
      enclosing-type-id-ref="vim.vm.device.VirtualNVDIMM"
      version-id-ref="vim.version.version12"
      base-type-id="vim.vm.device.VirtualDevice.FileBackingInfo"
      >
      <description-html>
         <![CDATA[The <code><a href="vim.vm.device.VirtualNVDIMM.BackingInfo.html">VirtualNVDIMMBackingInfo</a></code> data object type
  defines information about a resource that backs a device
  in a virtual machine.]]>
      </description-html>
            <property name="parent" type-id-ref="vim.vm.device.VirtualNVDIMM.BackingInfo"
      vmodl-name="parent"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Parent object in snapshot chain.]]>
      </description-html>
      </property>

            <property name="changeId" type-id-ref="java.lang.String"
      vmodl-name="changeId"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The change ID of the virtual NVDIMM for the corresponding
 snapshot of virtual machine. This can be used to track
 incremental changes.

 See <a href="vim.VirtualMachine.html#queryChangedDiskAreas">QueryChangedDiskAreas</a>.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="GuestAuthSubject"
      type-id="vim.vm.guest.AliasManager.GuestAuthSubject"
      vmodl-name="vim.vm.guest.AliasManager.GuestAuthSubject"
      enclosing-type-id-ref="vim.vm.guest.AliasManager"
      version-id-ref="vim.version.version10"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[A Subject.]]>
      </description-html>
   </data-object>
   <data-object name="VAppEntityConfigInfo"
      type-id="vim.vApp.EntityConfigInfo"
      vmodl-name="vim.vApp.EntityConfigInfo"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This object type describes the  behavior of an entity (virtual machine or
  sub-vApp container) in a vApp container.
  <p>
 The auto-start/auto-stop configurations control the behavior of the
  start/stop vApp operations.
  <p>
  An virtual machine entity can be configured to wait for a period of time before
  starting or to wait to receive a successful heartbeat from a virtual machine
  before starting the next virtual machine in the sequence.
   <ul>
     <li>For a power-on operation, if waitForHeartbeat is true, then the power-on
         sequence continues after the the first heartbeat has been received. If
         waitingForGuest is false, the system waits for the specified delay and
         then continues the power-on sequence.
     <li>For a power-off operation, if delay is non-zero, the requested power-off
         action is invoked (powerOff, suspend, guestShutdown) on the virtual
         machine and the system waits until the number of seconds specified in the
         delay have passed.
   </ul>
  If startAction and stopAction for an entity are both set to none, that
  entity does not participate in the sequence.
  <p>
  The start/stop delay and waitingForGuest is not used if the entity is a
  vApp container. For a vApp the only value values for startAction is none
  or powerOn, and the valid values for stopAction is none or powerOff.]]>
      </description-html>
            <property name="key" type-id-ref="vim.ManagedEntity"
      vmodl-name="key"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Entity to power on or power off. This can be a virtual machine or a vApp.]]>
      </description-html>
      </property>

            <property name="tag" type-id-ref="java.lang.String"
      vmodl-name="tag"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Tag for entity.
 <p>
 Reconfigure privilege: VApp.ApplicationConfig]]>
      </description-html>
      </property>

            <property name="startOrder" type-id-ref="INT"
      vmodl-name="startOrder"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Specifies the start order for this entity. Entities are started from lower
  numbers to higher-numbers and reverse on shutdown. Multiple entities with the
  same start-order can be started in parallel and the order is unspecified. This
  value must be 0 or higher.
 <p>
 Reconfigure privilege: VApp.ApplicationConfig]]>
      </description-html>
      </property>

            <property name="startDelay" type-id-ref="INT"
      vmodl-name="startDelay"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Delay in seconds before continuing with the next entity in the order of entities
  to be started.
 <p>
 Reconfigure privilege: VApp.ApplicationConfig]]>
      </description-html>
      </property>

            <property name="waitingForGuest" type-id-ref="BOOLEAN"
      vmodl-name="waitingForGuest"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Determines if the virtual machine should start after receiving a heartbeat,
  from the guest. When a virtual machine is next in the start
  order, the system either waits a specified period of time for a virtual
  machine to power on or it waits until it receives a successful heartbeat from a
  powered on virtual machine. By default, this is set to false.
  <p>
  This property has no effect for vApps.
 <p>
 Reconfigure privilege: VApp.ApplicationConfig]]>
      </description-html>
      </property>

            <property name="startAction" type-id-ref="java.lang.String"
      vmodl-name="startAction"
      is-optional="true"
      >
      <description-html>
         <![CDATA[How to start the entity. Valid settings are none or powerOn.  If set to none, then
  the entity does not participate in auto-start.
 <p>
 Reconfigure privilege: VApp.ApplicationConfig]]>
      </description-html>
      </property>

            <property name="stopDelay" type-id-ref="INT"
      vmodl-name="stopDelay"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Delay in seconds before continuing with the next entity in the order
  sequence. This is only used if the stopAction is guestShutdown.
 <p>
 Reconfigure privilege: VApp.ApplicationConfig]]>
      </description-html>
      </property>

            <property name="stopAction" type-id-ref="java.lang.String"
      vmodl-name="stopAction"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Defines the stop action for the entity. Can be set to none, powerOff,
 guestShutdown, or suspend. If set to none, then the entity does not participate in
 auto-stop.
 <p>
 Reconfigure privilege: VApp.ApplicationConfig]]>
      </description-html>
      </property>

            <property name="destroyWithParent" type-id-ref="BOOLEAN"
      vmodl-name="destroyWithParent"
      version-id-ref="vim.version.version6"
      is-deprecated="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Whether the entity should be removed, when this vApp is removed.
 This is only set for linked children.
 <p>
 Reconfigure privilege: VApp.ApplicationConfig]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 5.1.]]>
      </deprecated-html>
      </property>

      <nested-type-id-ref>vim.vApp.EntityConfigInfo.Action</nested-type-id-ref>
   </data-object>
   <data-object name="VmFailedToPowerOnEvent"
      type-id="vim.event.VmFailedToPowerOnEvent"
      vmodl-name="vim.event.VmFailedToPowerOnEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.VmEvent"
      >
      <description-html>
         <![CDATA[This event records a failure to power on a virtual machine.]]>
      </description-html>
            <property name="reason" type-id-ref="vmodl.LocalizedMethodFault"
      vmodl-name="reason"
      >
      <description-html>
         <![CDATA[The reason for the failure.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="LocalDatastoreInfo"
      type-id="vim.host.LocalDatastoreInfo"
      vmodl-name="vim.host.LocalDatastoreInfo"
      version-id-ref="vim.version.version1"
      base-type-id="vim.Datastore.Info"
      >
      <description-html>
         <![CDATA[The information details about a datastore that is local to a host.]]>
      </description-html>
            <property name="path" type-id-ref="java.lang.String"
      vmodl-name="path"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The local path on a host.  May not
  be available when the datastore is not accessible.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ClusterVmOrchestrationSpec"
      type-id="vim.cluster.VmOrchestrationSpec"
      vmodl-name="vim.cluster.VmOrchestrationSpec"
      version-id-ref="vim.version.version11"
      base-type-id="vim.option.ArrayUpdateSpec"
      >
      <description-html>
         <![CDATA[An incremental update to the per-VM orchestration config.]]>
      </description-html>
            <property name="info" type-id-ref="vim.cluster.VmOrchestrationInfo"
      vmodl-name="info"
      is-optional="true"
      >
      </property>

   </data-object>
   <data-object name="DVSConfigSpec"
      type-id="vim.DistributedVirtualSwitch.ConfigSpec"
      vmodl-name="vim.DistributedVirtualSwitch.ConfigSpec"
      enclosing-type-id-ref="vim.DistributedVirtualSwitch"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The <a href="vim.DistributedVirtualSwitch.ConfigSpec.html">DVSConfigSpec</a>
 data object contains configuration data for a
 <a href="vim.DistributedVirtualSwitch.html">DistributedVirtualSwitch</a>.
 Use the <a href="vim.DistributedVirtualSwitch.html#reconfigure">ReconfigureDvs_Task</a>
 method to apply the configuration to the
 switch.]]>
      </description-html>
            <property name="configVersion" type-id-ref="java.lang.String"
      vmodl-name="configVersion"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The version string of the configuration that this spec is trying to
  change. This property is required in reconfiguring a switch
  and should be set to the same value as
  <a href="vim.DistributedVirtualSwitch.ConfigInfo.html#configVersion">configVersion</a>.
  This property is ignored during switch creation.]]>
      </description-html>
      </property>

            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The name of the switch. Must be unique in the parent folder.]]>
      </description-html>
      </property>

            <property name="numStandalonePorts" type-id-ref="INT"
      vmodl-name="numStandalonePorts"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The number of standalone ports in the switch. Standalone ports are
  ports that do not belong to any portgroup. If set to a number larger
  than number of existing standalone ports in the switch, new ports get
  created to meet the number. If set to a number smaller than the number
  of existing standalone ports, free ports (uplink ports excluded) are
  deleted to meet the number. If the set number cannot be met by
  deleting free standalone ports, a fault is raised.]]>
      </description-html>
      </property>

            <property name="maxPorts" type-id-ref="INT"
      vmodl-name="maxPorts"
      is-deprecated="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The maximum number of DistributedVirtualPorts allowed in the switch.
  If specified in a reconfigure operation, this number cannot be smaller
  than the number of existing DistributedVirtualPorts.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 5.0
  The default value of this propoerty is maxint and there is no reason
  for users to change it to a lower value]]>
      </deprecated-html>
      </property>

            <property name="uplinkPortPolicy" type-id-ref="vim.DistributedVirtualSwitch.UplinkPortPolicy"
      vmodl-name="uplinkPortPolicy"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The uplink port policy.]]>
      </description-html>
      </property>

            <property name="uplinkPortgroup" type-id-ref="vim.dvs.DistributedVirtualPortgroup"
      vmodl-name="uplinkPortgroup"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The uplink portgroups.]]>
      </description-html>
      </property>

            <property name="defaultPortConfig" type-id-ref="vim.dvs.DistributedVirtualPort.Setting"
      vmodl-name="defaultPortConfig"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The default configuration for ports.]]>
      </description-html>
      </property>

            <property name="host" type-id-ref="vim.dvs.HostMember.ConfigSpec"
      vmodl-name="host"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The host member specification. A particular host should have only one entry
  in this array. Duplicate entries for the same host will raise a fault.
  The host version should be compatible with the version of
  <a href="vim.DistributedVirtualSwitch.html">DistributedVirtualSwitch</a>. Use
  <a href="vim.dvs.DistributedVirtualSwitchManager.html#checkCompatibility">QueryDvsCheckCompatibility</a>
  to check for compatibility.]]>
      </description-html>
      </property>

            <property name="extensionKey" type-id-ref="java.lang.String"
      vmodl-name="extensionKey"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The key of the extension registered by a remote server that
  controls the switch.]]>
      </description-html>
      </property>

            <property name="description" type-id-ref="java.lang.String"
      vmodl-name="description"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Set the description string of the switch.]]>
      </description-html>
      </property>

            <property name="policy" type-id-ref="vim.DistributedVirtualSwitch.SwitchPolicy"
      vmodl-name="policy"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The usage policy of the switch.]]>
      </description-html>
      </property>

            <property name="vendorSpecificConfig" type-id-ref="vim.dvs.KeyedOpaqueBlob"
      vmodl-name="vendorSpecificConfig"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Set the opaque blob that stores vendor specific configuration.]]>
      </description-html>
      </property>

            <property name="contact" type-id-ref="vim.DistributedVirtualSwitch.ContactInfo"
      vmodl-name="contact"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Set the human operator contact information.]]>
      </description-html>
      </property>

            <property name="switchIpAddress" type-id-ref="java.lang.String"
      vmodl-name="switchIpAddress"
      version-id-ref="vim.version.version7"
      is-optional="true"
      >
      <description-html>
         <![CDATA[IP address for the switch, specified using IPv4 dot notation.
  IPv6 address is not supported for this property.
  The utility of this address is defined by other switch features.
  switchIpAddress would be ignored when IPFIX collector uses IPv6.]]>
      </description-html>
      </property>

            <property name="defaultProxySwitchMaxNumPorts" type-id-ref="INT"
      vmodl-name="defaultProxySwitchMaxNumPorts"
      version-id-ref="vim.version.version8"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The default host proxy switch maximum port number]]>
      </description-html>
      </property>

            <property name="infrastructureTrafficResourceConfig" type-id-ref="vim.DistributedVirtualSwitch.HostInfrastructureTrafficResource"
      vmodl-name="infrastructureTrafficResourceConfig"
      version-id-ref="vim.version.version10"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The host infrastructure traffic resource allocation specification.
  Only the traffic class resource allocations identified in the list
  will be updated. The other traffic class resource allocations that are not
  specified will not change.]]>
      </description-html>
      </property>

            <property name="netResourcePoolTrafficResourceConfig" type-id-ref="vim.DistributedVirtualSwitch.HostInfrastructureTrafficResource"
      vmodl-name="netResourcePoolTrafficResourceConfig"
      version-id-ref="vim.version.version12"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The dynamic host infrastructure traffic resource allocation
  specification.]]>
      </description-html>
      </property>

            <property name="networkResourceControlVersion" type-id-ref="java.lang.String"
      vmodl-name="networkResourceControlVersion"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates the Network Resource Control APIs that are supported on the switch.
 Possible value can be of
 <a href="vim.DistributedVirtualSwitch.NetworkResourceControlVersion.html">DistributedVirtualSwitchNetworkResourceControlVersion</a>.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ID"
      type-id="vim.vslm.ID"
      vmodl-name="vim.vslm.ID"
      version-id-ref="vim.version.version11"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object type describes an identifier class which
 is globally unique to identify the associated object.]]>
      </description-html>
            <property name="id" type-id-ref="java.lang.String"
      vmodl-name="id"
      >
      <description-html>
         <![CDATA[Id string which is globally unique to identify
 an object.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ClusterDasAdvancedRuntimeInfoVmcpCapabilityInfo"
      type-id="vim.cluster.DasAdvancedRuntimeInfo.VmcpCapabilityInfo"
      vmodl-name="vim.cluster.DasAdvancedRuntimeInfo.VmcpCapabilityInfo"
      enclosing-type-id-ref="vim.cluster.DasAdvancedRuntimeInfo"
      version-id-ref="vim.version.version10"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Class for capability to support VM Component Protection]]>
      </description-html>
            <property name="storageAPDSupported" type-id-ref="BOOLEAN"
      vmodl-name="storageAPDSupported"
      >
      <description-html>
         <![CDATA[If all hosts in the cluster support the reaction of VM Component Protection
  to storage All Paths Down timeout
  (@link vim.host.MountInfo.InaccessibleReason#AllPathsDown_Timeout}]]>
      </description-html>
      </property>

            <property name="storagePDLSupported" type-id-ref="BOOLEAN"
      vmodl-name="storagePDLSupported"
      >
      <description-html>
         <![CDATA[If all hosts in the cluster support the reaction of VM Component Protection
  to storage Permanent Device Loss
  (@link vim.host.MountInfo.InaccessibleReason#PermanentDeviceLoss}]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="UserAssignedToGroup"
      type-id="vim.event.UserAssignedToGroup"
      vmodl-name="vim.event.UserAssignedToGroup"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.HostEvent"
      >
      <description-html>
         <![CDATA[This event records that a user account membership was added to a group.]]>
      </description-html>
            <property name="userLogin" type-id-ref="java.lang.String"
      vmodl-name="userLogin"
      >
      </property>

            <property name="group" type-id-ref="java.lang.String"
      vmodl-name="group"
      >
      </property>

   </data-object>
   <data-object name="DvsPuntNetworkRuleAction"
      type-id="vim.dvs.TrafficRule.PuntAction"
      vmodl-name="vim.dvs.TrafficRule.PuntAction"
      enclosing-type-id-ref="vim.dvs.TrafficRule"
      version-id-ref="vim.version.version9"
      base-type-id="vim.dvs.TrafficRule.Action"
      >
      <description-html>
         <![CDATA[This class defines network rule action to punt. i.e, forward packets
  to an associated slow-path service Virtual Machine.]]>
      </description-html>
   </data-object>
   <data-object name="AuthenticationProfile"
      type-id="vim.profile.host.AuthenticationProfile"
      vmodl-name="vim.profile.host.AuthenticationProfile"
      version-id-ref="vim.version.version6"
      base-type-id="vim.profile.ApplyProfile"
      >
      <description-html>
         <![CDATA[The <a href="vim.profile.host.AuthenticationProfile.html">AuthenticationProfile</a> data object represents the host configuration
 for authentication. If a profile plug-in defines policies or subprofiles, use the
 <a href="vim.profile.ApplyProfile.html#policy">policy</a> or <a href="vim.profile.ApplyProfile.html#property">property</a>
 list to access the additional configuration data.]]>
      </description-html>
            <property name="activeDirectory" type-id-ref="vim.profile.host.ActiveDirectoryProfile"
      vmodl-name="activeDirectory"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Subprofile representing the Active Directory configuration.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="CustomizationIpV6Generator"
      type-id="vim.vm.customization.IpV6Generator"
      vmodl-name="vim.vm.customization.IpV6Generator"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Base type for the various IpV6 specification possibilities]]>
      </description-html>
   </data-object>
   <data-object name="VmReconfiguredEvent"
      type-id="vim.event.VmReconfiguredEvent"
      vmodl-name="vim.event.VmReconfiguredEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.VmEvent"
      >
      <description-html>
         <![CDATA[This event records a reconfiguration of the virtual machine.]]>
      </description-html>
            <property name="configSpec" type-id-ref="vim.vm.ConfigSpec"
      vmodl-name="configSpec"
      >
      <description-html>
         <![CDATA[The configuration specification that was used for the reconfiguration.]]>
      </description-html>
      </property>

            <property name="configChanges" type-id-ref="vim.event.ChangesInfoEventArgument"
      vmodl-name="configChanges"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The configuration values changed during the reconfiguration.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualDeviceURIBackingOption"
      type-id="vim.vm.device.VirtualDeviceOption.URIBackingOption"
      vmodl-name="vim.vm.device.VirtualDeviceOption.URIBackingOption"
      enclosing-type-id-ref="vim.vm.device.VirtualDeviceOption"
      version-id-ref="vim.version.version6"
      base-type-id="vim.vm.device.VirtualDeviceOption.BackingOption"
      >
      <description-html>
         <![CDATA[The URIBackingOption data object type describes network communication
  options for virtual devices.
  When establishing a connection with a remote system on the network,
  the virtual machine can act as a server or a client.
  When the virtual machine acts as a server, it accepts a connection.
  When the virtual machine acts as a client, it initiates the connection.]]>
      </description-html>
            <property name="directions" type-id-ref="vim.option.ChoiceOption"
      vmodl-name="directions"
      >
      <description-html>
         <![CDATA[List of possible directions. Valid directions are:
  <ul>
  <li>vim.vm.device.VirtualDeviceOption.URIBackingOption.Direction#server
  <li>vim.vm.device.VirtualDeviceOption.URIBackingOption.Direction#client
  </ul>]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.vm.device.VirtualDeviceOption.URIBackingOption.Direction</nested-type-id-ref>
   </data-object>
   <data-object name="HostDnsConfig"
      type-id="vim.host.DnsConfig"
      vmodl-name="vim.host.DnsConfig"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object type describes the DNS configuration.
  <p>
  All IPv4 addresses, subnet addresses, and netmasks are specified using
  dotted decimal notation.  For example, "192.0.2.1".
  IPv6 addresses are 128-bit addresses represented as
  eight fields of up to four hexadecimal digits.
  A colon separates each field (:). For example,
  2001:DB8:101::230:6eff:fe04:d9ff. The address can also consist of the
  symbol '::' to represent multiple 16-bit groups of
  contiguous 0's only once in an address as described in RFC 2373.]]>
      </description-html>
            <property name="dhcp" type-id-ref="BOOLEAN"
      vmodl-name="dhcp"
      >
      <description-html>
         <![CDATA[The flag to indicate whether or not DHCP (dynamic host control
  protocol) is used to determine DNS configuration automatically.]]>
      </description-html>
      </property>

            <property name="virtualNicDevice" type-id-ref="java.lang.String"
      vmodl-name="virtualNicDevice"
      is-optional="true"
      >
      <description-html>
         <![CDATA[If DHCP is enabled, the DHCP DNS of the vmkernel nic will override
  the system's DNS. This field applies to both IPv4 and IPv6 DNS settings
  if <a href="vim.host.DnsConfig.html#ipv6VirtualNicDevice">ipv6VirtualNicDevice</a>
  is unset, otherwise it is applicable only for IPv4 setting.
  This field is ignored if DHCP is disabled by the
  <a href="vim.host.DnsConfig.html#dhcp">dhcp</a> property.]]>
      </description-html>
      </property>

            <property name="ipv6VirtualNicDevice" type-id-ref="java.lang.String"
      vmodl-name="ipv6VirtualNicDevice"
      version-id-ref="vim.version.version12"
      is-optional="true"
      >
      <description-html>
         <![CDATA[If DHCP is enabled, the IPv6 DHCP DNS of the vmkernel nic will override
  the system's IPv6 DNS. This field is ignored if DHCP is disabled by the
  <a href="vim.host.DnsConfig.html#dhcp">dhcp</a> property.]]>
      </description-html>
      </property>

            <property name="hostName" type-id-ref="java.lang.String"
      vmodl-name="hostName"
      >
      <description-html>
         <![CDATA[The host name portion of DNS name.  For example, "esx01".
  <p>
  <b>Note</b>:  When DHCP is not enabled, the property can be set
  explicitly.  When DHCP is enabled, the property reflects the current
  DNS configuration, but cannot be set.
  The hostName can't have character '.' in it when set explicitly.]]>
      </description-html>
      </property>

            <property name="domainName" type-id-ref="java.lang.String"
      vmodl-name="domainName"
      >
      <description-html>
         <![CDATA[The domain name portion of the DNS name.  For example, "vmware.com".
  <p>
  <b>Note</b>:  When DHCP is not enabled, the property can be set
  explicitly.  When DHCP is enabled, the property reflects the current
  DNS configuration, but cannot be set.]]>
      </description-html>
      </property>

            <property name="address" type-id-ref="java.lang.String"
      vmodl-name="address"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The IP addresses of the DNS servers, placed in order of preference.
  <p>
  <b>Note</b>:  When DHCP is not enabled, the property can be set
  explicitly.  When DHCP is enabled, the property reflects the current
  DNS configuration, but cannot be set.]]>
      </description-html>
      </property>

            <property name="searchDomain" type-id-ref="java.lang.String"
      vmodl-name="searchDomain"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The domain in which to search for hosts, placed in order of preference.
  <p>
  <b>Note</b>:  When DHCP is not enabled, the property can be set
  explicitly.  When DHCP is enabled, the property reflects the current
  DNS configuration, but cannot be set.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VmFaultToleranceStateChangedEvent"
      type-id="vim.event.VmFaultToleranceStateChangedEvent"
      vmodl-name="vim.event.VmFaultToleranceStateChangedEvent"
      version-id-ref="vim.version.version5"
      base-type-id="vim.event.VmEvent"
      >
      <description-html>
         <![CDATA[This event records a fault tolerance state change.
  A default alarm will be triggered upon this event, which would
  change the vm state:
  the vm state is red if the newState is needSecondary;
  the vm state is yellow if the newState is disabled;
  the vm state is green if the newState is notConfigured, starting,
  enabled or running]]>
      </description-html>
            <property name="oldState" type-id-ref="vim.VirtualMachine.FaultToleranceState"
      vmodl-name="oldState"
      >
      <description-html>
         <![CDATA[The old fault toleeance state.]]>
      </description-html>
      </property>

            <property name="newState" type-id-ref="vim.VirtualMachine.FaultToleranceState"
      vmodl-name="newState"
      >
      <description-html>
         <![CDATA[The new fault tolerance state.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="TaskReasonSchedule"
      type-id="vim.TaskReasonSchedule"
      vmodl-name="vim.TaskReasonSchedule"
      version-id-ref="vim.version.version1"
      base-type-id="vim.TaskReason"
      >
      <description-html>
         <![CDATA[Indicates that the task was queued by a scheduled task.]]>
      </description-html>
            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      >
      <description-html>
         <![CDATA[The name of the scheduled task that queued this task.]]>
      </description-html>
      </property>

            <property name="scheduledTask" type-id-ref="vim.scheduler.ScheduledTask"
      vmodl-name="scheduledTask"
      >
      <description-html>
         <![CDATA[The scheduledTask object that queued this task.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostAdminDisableEvent"
      type-id="vim.event.HostAdminDisableEvent"
      vmodl-name="vim.event.HostAdminDisableEvent"
      version-id-ref="vim.version.version2"
      base-type-id="vim.event.HostEvent"
      >
      <description-html>
         <![CDATA[This event records that the permission on the host has been changed such
 that only the user account used for VirtualCenter operation will have
 Administrator permission.]]>
      </description-html>
   </data-object>
   <data-object name="ScsiLunDurableName"
      type-id="vim.host.ScsiLun.DurableName"
      vmodl-name="vim.host.ScsiLun.DurableName"
      enclosing-type-id-ref="vim.host.ScsiLun"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object type represents an SMI-S "Correlatable and
  Durable Name" which is an
  identifier for a logical unit number (LUN) that is generated using
  a common algorithm.  The algorithm divides the identifier into
  multiple namespaces where each
  namespace uses a different set of properties of the LUN to generate
  the identifier.  The namespace itself is encoded in the identifier.]]>
      </description-html>
            <property name="namespace" type-id-ref="java.lang.String"
      vmodl-name="namespace"
      >
      <description-html>
         <![CDATA[The string describing the namespace used for the durable name.]]>
      </description-html>
      </property>

            <property name="namespaceId" type-id-ref="BYTE"
      vmodl-name="namespaceId"
      >
      <description-html>
         <![CDATA[The byte used by the ESX Server product to represent the namespace.]]>
      </description-html>
      </property>

            <property name="data" type-id-ref="BYTE"
      vmodl-name="data"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The variable length byte array containing the namespace-specific data.
  For a SCSI-3 compliant device this field is the descriptor header
  along with the payload for data obtained from page 83h, and is the
  payload for data obtained from page 80h of the Vital Product Data
  (VPD).]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostPatchManagerResult"
      type-id="vim.host.PatchManager.Result"
      vmodl-name="vim.host.PatchManager.Result"
      enclosing-type-id-ref="vim.host.PatchManager"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The result of the operation. Some of the fields are only valid for
 specific operations.]]>
      </description-html>
            <property name="version" type-id-ref="java.lang.String"
      vmodl-name="version"
      >
      <description-html>
         <![CDATA[The version of the scan result schema.]]>
      </description-html>
      </property>

            <property name="status" type-id-ref="vim.host.PatchManager.Status"
      vmodl-name="status"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The scan results for each patch.]]>
      </description-html>
      </property>

            <property name="xmlResult" type-id-ref="java.lang.String"
      vmodl-name="xmlResult"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The scan results in XML format.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="TaskFilterSpecByUsername"
      type-id="vim.TaskFilterSpec.ByUsername"
      vmodl-name="vim.TaskFilterSpec.ByUsername"
      enclosing-type-id-ref="vim.TaskFilterSpec"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object type enables you to filter task history according to
  the users who performed the tasks.]]>
      </description-html>
            <property name="systemUser" type-id-ref="BOOLEAN"
      vmodl-name="systemUser"
      >
      <description-html>
         <![CDATA[Whether or not to filter by system user.
  If set to true, filters for system user event.]]>
      </description-html>
      </property>

            <property name="userList" type-id-ref="java.lang.String"
      vmodl-name="userList"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Specifies the username list to use in the filter.
  If not set, then all regular user tasks are collected.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostFirewallDefaultPolicy"
      type-id="vim.host.FirewallInfo.DefaultPolicy"
      vmodl-name="vim.host.FirewallInfo.DefaultPolicy"
      enclosing-type-id-ref="vim.host.FirewallInfo"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Default settings for the firewall, used for ports
  that are not explicitly opened.]]>
      </description-html>
            <property name="incomingBlocked" type-id-ref="BOOLEAN"
      vmodl-name="incomingBlocked"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Flag indicating whether incoming traffic should be blocked by default.]]>
      </description-html>
      </property>

            <property name="outgoingBlocked" type-id-ref="BOOLEAN"
      vmodl-name="outgoingBlocked"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Flag indicating whether outgoing traffic should be blocked by default.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VsanHostFaultDomainInfo"
      type-id="vim.vsan.host.ConfigInfo.FaultDomainInfo"
      vmodl-name="vim.vsan.host.ConfigInfo.FaultDomainInfo"
      enclosing-type-id-ref="vim.vsan.host.ConfigInfo"
      version-id-ref="vim.version.version10"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Host-local VSAN fault domain configuration. This data object is used
 both for specifying and retrieving fault domain configuration for a
 host participating in the VSAN service.]]>
      </description-html>
            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      >
      <description-html>
         <![CDATA[The configured VSAN fault domain.
 The length of fault domain name should not exceed 256.
 Empty string indicates that the default fault domain is used.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ClusterIoFilterInfo"
      type-id="vim.IoFilterManager.ClusterIoFilterInfo"
      vmodl-name="vim.IoFilterManager.ClusterIoFilterInfo"
      enclosing-type-id-ref="vim.IoFilterManager"
      version-id-ref="vim.version.version10"
      base-type-id="vim.IoFilterManager.IoFilterInfo"
      >
      <description-html>
         <![CDATA[Information about an IO Filter on a compute resource.]]>
      </description-html>
            <property name="opType" type-id-ref="java.lang.String"
      vmodl-name="opType"
      >
      <description-html>
         <![CDATA[The operation that was performed for the IO Filter.
 The set of possible values are described in
 <a href="vim.IoFilterManager.OperationType.html">IoFilterOperation</a>.

 If opType is vim.IoFilterManager.OperationType#uninstall,
 and the uninstallation of the filter was sucessful on all the hosts
 in the cluster, the filter will be removed from the cluster's filter
 list.]]>
      </description-html>
      </property>

            <property name="vibUrl" type-id-ref="java.lang.String"
      vmodl-name="vibUrl"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The URL of the VIB package that the IO Filter is installed from.

 The property is unset if the information is not available.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DesiredSoftwareSpec"
      type-id="vim.DesiredSoftwareSpec"
      vmodl-name="vim.DesiredSoftwareSpec"
      version-id-ref="vim.version.v7_0"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Desired Software Spec is defined as combination of base-image and add-on
 component which user wants to install on ESX host or cluster.]]>
      </description-html>
            <property name="baseImageSpec" type-id-ref="vim.DesiredSoftwareSpec.BaseImageSpec"
      vmodl-name="baseImageSpec"
      >
      <description-html>
         <![CDATA[Describes a specific base-image spec for the ESX host.]]>
      </description-html>
      </property>

            <property name="vendorAddOnSpec" type-id-ref="vim.DesiredSoftwareSpec.VendorAddOnSpec"
      vmodl-name="vendorAddOnSpec"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Vendor add-on info for desired software spec.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.DesiredSoftwareSpec.BaseImageSpec</nested-type-id-ref>
      <nested-type-id-ref>vim.DesiredSoftwareSpec.VendorAddOnSpec</nested-type-id-ref>
   </data-object>
   <data-object name="PMemDatastoreInfo"
      type-id="vim.host.PMemDatastoreInfo"
      vmodl-name="vim.host.PMemDatastoreInfo"
      version-id-ref="vim.version.version12"
      base-type-id="vim.Datastore.Info"
      >
            <property name="pmem" type-id-ref="vim.host.PMemVolume"
      vmodl-name="pmem"
      >
      </property>

   </data-object>
   <data-object name="ClusterDrsFaultsFaultsByVm"
      type-id="vim.cluster.DrsFaults.FaultsByVm"
      vmodl-name="vim.cluster.DrsFaults.FaultsByVm"
      enclosing-type-id-ref="vim.cluster.DrsFaults"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[FaultsByVm is the faults generated by DRS when it tries to
 move a VM.]]>
      </description-html>
            <property name="vm" type-id-ref="vim.VirtualMachine"
      vmodl-name="vm"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The VM that DRS was trying to migrate when it generated the faults.
 If this property is NULL, the fault is not associated with a particular VM.]]>
      </description-html>
      </property>

            <property name="fault" type-id-ref="vmodl.LocalizedMethodFault"
      vmodl-name="fault"
      is-array="true"
      >
      <description-html>
         <![CDATA[The faults generated by DRS when it was trying to move the given VM.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VmMacConflictEvent"
      type-id="vim.event.VmMacConflictEvent"
      vmodl-name="vim.event.VmMacConflictEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.VmEvent"
      >
      <description-html>
         <![CDATA[This event records a MAC address conflict for a virtual machine.]]>
      </description-html>
            <property name="conflictedVm" type-id-ref="vim.event.VmEventArgument"
      vmodl-name="conflictedVm"
      >
      <description-html>
         <![CDATA[The virtual machine whose MAC address conflicts with
  the current virtual machine's address.]]>
      </description-html>
      </property>

            <property name="mac" type-id-ref="java.lang.String"
      vmodl-name="mac"
      >
      <description-html>
         <![CDATA[The MAC address that is in conflict.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ProfileParameterMetadataParameterRelationMetadata"
      type-id="vim.profile.ParameterMetadata.ParameterRelationMetadata"
      vmodl-name="vim.profile.ParameterMetadata.ParameterRelationMetadata"
      enclosing-type-id-ref="vim.profile.ParameterMetadata"
      version-id-ref="vim.version.version12"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This class to define a relation between the parameter and a profile
 or a parameter, or a constant list of values.]]>
      </description-html>
            <property name="relationTypes" type-id-ref="java.lang.String"
      vmodl-name="relationTypes"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The types of this relation.]]>
      </description-html>
      </property>

            <property name="values" type-id-ref="vmodl.Any"
      vmodl-name="values"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The valid value list.]]>
      </description-html>
      </property>

            <property name="path" type-id-ref="vim.profile.ProfilePropertyPath"
      vmodl-name="path"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The property path of the related profile/parameter.]]>
      </description-html>
      </property>

            <property name="minCount" type-id-ref="INT"
      vmodl-name="minCount"
      >
      <description-html>
         <![CDATA[The minimal count of values to map to.]]>
      </description-html>
      </property>

            <property name="maxCount" type-id-ref="INT"
      vmodl-name="maxCount"
      >
      <description-html>
         <![CDATA[The maximum count of values to map to.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="UplinkPortMtuSupportEvent"
      type-id="vim.event.UplinkPortMtuSupportEvent"
      vmodl-name="vim.event.UplinkPortMtuSupportEvent"
      version-id-ref="vim.version.version8"
      base-type-id="vim.event.DvsHealthStatusChangeEvent"
      >
      <description-html>
         <![CDATA[Mtu health check status of an uplink port is changed, and in the latest mtu health check,
  all the vlans' MTU setting on physical switch allows vSphere Distributed Switch
  max MTU size packets passing.]]>
      </description-html>
   </data-object>
   <data-object name="GuestRegValueNameSpec"
      type-id="vim.vm.guest.WindowsRegistryManager.RegistryValueName"
      vmodl-name="vim.vm.guest.WindowsRegistryManager.RegistryValueName"
      enclosing-type-id-ref="vim.vm.guest.WindowsRegistryManager"
      version-id-ref="vim.version.version10"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This describes the registry value name.]]>
      </description-html>
            <property name="keyName" type-id-ref="vim.vm.guest.WindowsRegistryManager.RegistryKeyName"
      vmodl-name="keyName"
      >
      <description-html>
         <![CDATA[The key name that contains this value.]]>
      </description-html>
      </property>

            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      >
      <description-html>
         <![CDATA[The name of the value.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="AlarmInfo"
      type-id="vim.alarm.AlarmInfo"
      vmodl-name="vim.alarm.AlarmInfo"
      version-id-ref="vim.version.version1"
      base-type-id="vim.alarm.AlarmSpec"
      >
      <description-html>
         <![CDATA[Attributes of an alarm.]]>
      </description-html>
            <property name="key" type-id-ref="java.lang.String"
      vmodl-name="key"
      >
      <description-html>
         <![CDATA[The unique key.]]>
      </description-html>
      </property>

            <property name="alarm" type-id-ref="vim.alarm.Alarm"
      vmodl-name="alarm"
      >
      <description-html>
         <![CDATA[The alarm object.]]>
      </description-html>
      </property>

            <property name="entity" type-id-ref="vim.ManagedEntity"
      vmodl-name="entity"
      >
      <description-html>
         <![CDATA[The entity on which the alarm is registered.]]>
      </description-html>
      </property>

            <property name="lastModifiedTime" type-id-ref="vmodl.DateTime"
      vmodl-name="lastModifiedTime"
      >
      <description-html>
         <![CDATA[The time the alarm was created or modified.]]>
      </description-html>
      </property>

            <property name="lastModifiedUser" type-id-ref="java.lang.String"
      vmodl-name="lastModifiedUser"
      >
      <description-html>
         <![CDATA[User name that modified the alarm most recently.]]>
      </description-html>
      </property>

            <property name="creationEventId" type-id-ref="INT"
      vmodl-name="creationEventId"
      >
      <description-html>
         <![CDATA[The event ID that records the alarm creation.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="CustomizationCustomName"
      type-id="vim.vm.customization.CustomNameGenerator"
      vmodl-name="vim.vm.customization.CustomNameGenerator"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.customization.NameGenerator"
      >
      <description-html>
         <![CDATA[Specifies that the VirtualCenter server will launch an external application to
  generate the (hostname/IP). The command line for this application must be specified
  in the server configuration file (vpxd.cfg) in the vpxd/name-ip-generator key.]]>
      </description-html>
            <property name="argument" type-id-ref="java.lang.String"
      vmodl-name="argument"
      is-optional="true"
      >
      <description-html>
         <![CDATA[An optional argument that is passed to the utility for this IP address. The
  meaning of this field is user-defined in the script.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DatastoreDestroyedEvent"
      type-id="vim.event.DatastoreDestroyedEvent"
      vmodl-name="vim.event.DatastoreDestroyedEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.DatastoreEvent"
      >
      <description-html>
         <![CDATA[This event records when a datastore is removed from VirtualCenter.]]>
      </description-html>
   </data-object>
   <data-object name="AnswerFileSerializedCreateSpec"
      type-id="vim.profile.host.ProfileManager.AnswerFileSerializedCreateSpec"
      vmodl-name="vim.profile.host.ProfileManager.AnswerFileSerializedCreateSpec"
      enclosing-type-id-ref="vim.profile.host.ProfileManager"
      version-id-ref="vim.version.version7"
      base-type-id="vim.profile.host.ProfileManager.AnswerFileCreateSpec"
      >
      <description-html>
         <![CDATA[The <a href="vim.profile.host.ProfileManager.AnswerFileSerializedCreateSpec.html">AnswerFileSerializedCreateSpec</a> data object
 contains a serialized string representation of host-specific data for an answer file.]]>
      </description-html>
            <property name="answerFileConfigString" type-id-ref="java.lang.String"
      vmodl-name="answerFileConfigString"
      >
      <description-html>
         <![CDATA[Host-specific user input.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="RunScriptAction"
      type-id="vim.action.RunScriptAction"
      vmodl-name="vim.action.RunScriptAction"
      version-id-ref="vim.version.version1"
      base-type-id="vim.action.Action"
      >
      <description-html>
         <![CDATA[This data object type specifies a script that is triggered by an alarm.
  You can use any elements of the
  <a href="vim.action.Action.ActionParameter.html">ActionParameter</a> enumerated list
  as part of your script to provide information available at runtime.]]>
      </description-html>
            <property name="script" type-id-ref="java.lang.String"
      vmodl-name="script"
      >
      <description-html>
         <![CDATA[The fully-qualified path to a shell script that runs on the
  VirtualCenter server as a result of an alarm.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VAppProductSpec"
      type-id="vim.vApp.ProductSpec"
      vmodl-name="vim.vApp.ProductSpec"
      version-id-ref="vim.version.version5"
      base-type-id="vim.option.ArrayUpdateSpec"
      >
      <description-html>
         <![CDATA[An incremental update to the Product information list.]]>
      </description-html>
            <property name="info" type-id-ref="vim.vApp.ProductInfo"
      vmodl-name="info"
      is-optional="true"
      >
      </property>

   </data-object>
   <data-object name="ConflictingConfigurationConfig"
      type-id="vim.fault.ConflictingConfiguration.Config"
      vmodl-name="vim.fault.ConflictingConfiguration.Config"
      enclosing-type-id-ref="vim.fault.ConflictingConfiguration"
      version-id-ref="vim.version.version9"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This class defines the configuration that is in conflict.]]>
      </description-html>
            <property name="entity" type-id-ref="vim.ManagedEntity"
      vmodl-name="entity"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The entity on which the configuration is in conflict.]]>
      </description-html>
      </property>

            <property name="propertyPath" type-id-ref="java.lang.String"
      vmodl-name="propertyPath"
      >
      <description-html>
         <![CDATA[The property paths that are in conflict.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ClusterUsageSummary"
      type-id="vim.cluster.UsageSummary"
      vmodl-name="vim.cluster.UsageSummary"
      version-id-ref="vim.version.version10"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This class contains cluster usage summary that is populated
 by DRS and used by Cloud Placement Engine in VCD.]]>
      </description-html>
            <property name="totalCpuCapacityMhz" type-id-ref="INT"
      vmodl-name="totalCpuCapacityMhz"
      >
      <description-html>
         <![CDATA[Total CPU capacity of the cluster.]]>
      </description-html>
      </property>

            <property name="totalMemCapacityMB" type-id-ref="INT"
      vmodl-name="totalMemCapacityMB"
      >
      <description-html>
         <![CDATA[Total memory capacity of the cluster.]]>
      </description-html>
      </property>

            <property name="cpuReservationMhz" type-id-ref="INT"
      vmodl-name="cpuReservationMhz"
      >
      <description-html>
         <![CDATA[Sum of CPU reservation of all the Resource Pools and powered-on VMs in the cluster.]]>
      </description-html>
      </property>

            <property name="memReservationMB" type-id-ref="INT"
      vmodl-name="memReservationMB"
      >
      <description-html>
         <![CDATA[Sum of memory reservation of all the Resource Pools and powered-on VMs in the cluster.]]>
      </description-html>
      </property>

            <property name="poweredOffCpuReservationMhz" type-id-ref="INT"
      vmodl-name="poweredOffCpuReservationMhz"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Sum of CPU reservation of all the powered-off VMs in the cluster.]]>
      </description-html>
      </property>

            <property name="poweredOffMemReservationMB" type-id-ref="INT"
      vmodl-name="poweredOffMemReservationMB"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Sum of memory reservation of all the powered-off VMs in the cluster.]]>
      </description-html>
      </property>

            <property name="cpuDemandMhz" type-id-ref="INT"
      vmodl-name="cpuDemandMhz"
      >
      <description-html>
         <![CDATA[Sum of CPU demand of all the powered-on VMs in the cluster.]]>
      </description-html>
      </property>

            <property name="memDemandMB" type-id-ref="INT"
      vmodl-name="memDemandMB"
      >
      <description-html>
         <![CDATA[Sum of memory demand of all the powered-on VMs in the cluster.]]>
      </description-html>
      </property>

            <property name="statsGenNumber" type-id-ref="LONG"
      vmodl-name="statsGenNumber"
      >
      <description-html>
         <![CDATA[Generation number of the usage stats. Updated during every DRS load
 balancing call.]]>
      </description-html>
      </property>

            <property name="cpuEntitledMhz" type-id-ref="INT"
      vmodl-name="cpuEntitledMhz"
      >
      <description-html>
         <![CDATA[This is the current CPU entitlement across the cluster]]>
      </description-html>
      </property>

            <property name="memEntitledMB" type-id-ref="INT"
      vmodl-name="memEntitledMB"
      >
      <description-html>
         <![CDATA[This is the current memory entitlement across the cluster]]>
      </description-html>
      </property>

            <property name="poweredOffVmCount" type-id-ref="INT"
      vmodl-name="poweredOffVmCount"
      >
      <description-html>
         <![CDATA[The number of powered off VMs in the cluster]]>
      </description-html>
      </property>

            <property name="totalVmCount" type-id-ref="INT"
      vmodl-name="totalVmCount"
      >
      <description-html>
         <![CDATA[The number of VMs in the cluster]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostEnableAdminFailedEvent"
      type-id="vim.event.HostEnableAdminFailedEvent"
      vmodl-name="vim.event.HostEnableAdminFailedEvent"
      version-id-ref="vim.version.version2"
      base-type-id="vim.event.HostEvent"
      >
      <description-html>
         <![CDATA[This event records the failure to restore some of the administrator's permissions.]]>
      </description-html>
            <property name="permissions" type-id-ref="vim.AuthorizationManager.Permission"
      vmodl-name="permissions"
      is-array="true"
      >
      </property>

   </data-object>
   <data-object name="IoFilterHostIssue"
      type-id="vim.IoFilterManager.QueryIssueResult.HostIssue"
      vmodl-name="vim.IoFilterManager.QueryIssueResult.HostIssue"
      enclosing-type-id-ref="vim.IoFilterManager.QueryIssueResult"
      version-id-ref="vim.version.version10"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The issues on a host.]]>
      </description-html>
            <property name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      >
      <description-html>
         <![CDATA[Host.]]>
      </description-html>
      </property>

            <property name="issue" type-id-ref="vmodl.LocalizedMethodFault"
      vmodl-name="issue"
      is-array="true"
      >
      <description-html>
         <![CDATA[The issues.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostNtpConfig"
      type-id="vim.host.NtpConfig"
      vmodl-name="vim.host.NtpConfig"
      version-id-ref="vim.version.version2"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Configuration information for the NTP (Network Time Protocol) service.]]>
      </description-html>
            <property name="server" type-id-ref="java.lang.String"
      vmodl-name="server"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of time servers, specified as either IP addresses or
  fully qualified domain names (FQDNs). Each entry may optionally
  specify one or more space separated 'server' ntp.conf command options.
  Any comments appended to an entry after a '#' will not be retained.
  To reset any previously configured servers, submit an NtpConfig
  without the server or configFile property set to method
 <a href="vim.host.DateTimeSystem.html#updateConfig">UpdateDateTimeConfig</a>]]>
      </description-html>
      </property>

            <property name="configFile" type-id-ref="java.lang.String"
      vmodl-name="configFile"
      version-id-ref="vim.version.version10"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Content of ntp.conf host configuration file, split by lines for ntpd version 4.2.8.
  Comment lines start with comment marker '#' as per ntp.conf are kept.
  When submitting a new ntp commands to this property via
  <a href="vim.host.DateTimeSystem.html#updateConfig">UpdateDateTimeConfig</a> method, any 'restrict'
  or 'drift' commands will be ignored as the those are set to fixed defaults.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="StorageMigrationAction"
      type-id="vim.storageDrs.StorageMigrationAction"
      vmodl-name="vim.storageDrs.StorageMigrationAction"
      version-id-ref="vim.version.version7"
      base-type-id="vim.cluster.Action"
      >
      <description-html>
         <![CDATA[Describes a single storage migration action. The storage migration
  action applies either to a virtual machine or a set of virtual disks.
  <p>]]>
      </description-html>
            <property name="vm" type-id-ref="vim.VirtualMachine"
      vmodl-name="vm"
      >
      <description-html>
         <![CDATA[Virtual machine reference.]]>
      </description-html>
      </property>

            <property name="relocateSpec" type-id-ref="vim.vm.RelocateSpec"
      vmodl-name="relocateSpec"
      >
      <description-html>
         <![CDATA[Specification for moving a virtual machine or a set of virtual disks
  to a different datastore.]]>
      </description-html>
      </property>

            <property name="source" type-id-ref="vim.Datastore"
      vmodl-name="source"
      >
      <description-html>
         <![CDATA[Source datastore.]]>
      </description-html>
      </property>

            <property name="destination" type-id-ref="vim.Datastore"
      vmodl-name="destination"
      >
      <description-html>
         <![CDATA[Destination datastore.]]>
      </description-html>
      </property>

            <property name="sizeTransferred" type-id-ref="LONG"
      vmodl-name="sizeTransferred"
      >
      <description-html>
         <![CDATA[The amount of data to be transferred.
  Unit: KB.]]>
      </description-html>
      </property>

            <property name="spaceUtilSrcBefore" type-id-ref="FLOAT"
      vmodl-name="spaceUtilSrcBefore"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Space utilization on the source datastore before storage migration.
  Unit: percentage. For example, if set to 70.0, space utilization is 70%.
  If not set, the value is not available.]]>
      </description-html>
      </property>

            <property name="spaceUtilDstBefore" type-id-ref="FLOAT"
      vmodl-name="spaceUtilDstBefore"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Space utilization on the destination datastore before storage migration.
  Unit: percentage. For example, if set to 70.0, space utilization is 70%.
  If not set, the value is not available.]]>
      </description-html>
      </property>

            <property name="spaceUtilSrcAfter" type-id-ref="FLOAT"
      vmodl-name="spaceUtilSrcAfter"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Expected space utilization on the source datastore after storage migration.
  Unit: percentage. For example, if set to 70.0, space utilization is 70%.
  If not set, the value is not available.]]>
      </description-html>
      </property>

            <property name="spaceUtilDstAfter" type-id-ref="FLOAT"
      vmodl-name="spaceUtilDstAfter"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Expected space utilization on the destination datastore after storage migration.
  Unit: percentage. For example, if set to 70.0, space utilization is 70%.
  If not set, the value is not available.]]>
      </description-html>
      </property>

            <property name="ioLatencySrcBefore" type-id-ref="FLOAT"
      vmodl-name="ioLatencySrcBefore"
      is-optional="true"
      >
      <description-html>
         <![CDATA[I/O latency on the source datastore before storage migration.
  Unit: millisecond.
  If not set, the value is not available.]]>
      </description-html>
      </property>

            <property name="ioLatencyDstBefore" type-id-ref="FLOAT"
      vmodl-name="ioLatencyDstBefore"
      is-optional="true"
      >
      <description-html>
         <![CDATA[I/O latency on the destination datastore before storage migration.
  Unit: millisecond.
  If not set, the value is not available.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="EnteredStandbyModeEvent"
      type-id="vim.event.EnteredStandbyModeEvent"
      vmodl-name="vim.event.EnteredStandbyModeEvent"
      version-id-ref="vim.version.version2"
      base-type-id="vim.event.HostEvent"
      >
      <description-html>
         <![CDATA[This event records that the host has successfully entered
  standby mode. A host in this mode has no running virtual machines and no
  provisioning operations are occurring.]]>
      </description-html>
   </data-object>
   <data-object name="VmfsDatastoreSingleExtentOption"
      type-id="vim.host.VmfsDatastoreOption.SingleExtentInfo"
      vmodl-name="vim.host.VmfsDatastoreOption.SingleExtentInfo"
      enclosing-type-id-ref="vim.host.VmfsDatastoreOption"
      version-id-ref="vim.version.version1"
      base-type-id="vim.host.VmfsDatastoreOption.Info"
      >
      <description-html>
         <![CDATA[Datastore addition policy to use a single extent on the disk for a VMFS
  datastore.  A single extent implies that one disk partition will be
  created on the disk for creating or increasing the capacity of a VMFS datastore.]]>
      </description-html>
            <property name="vmfsExtent" type-id-ref="vim.host.DiskPartitionInfo.BlockRange"
      vmodl-name="vmfsExtent"
      >
      <description-html>
         <![CDATA[The block range to be used as an extent in a VMFS datastore.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostGetShortNameFailedEvent"
      type-id="vim.event.HostGetShortNameFailedEvent"
      vmodl-name="vim.event.HostGetShortNameFailedEvent"
      version-id-ref="vim.version.version2"
      is-deprecated="true"
      base-type-id="vim.event.HostEvent"
      >
      <description-html>
         <![CDATA[This event records that hostname -s failed or returned a name containing '.'.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 5.0, the event is no longer relevant.]]>
      </deprecated-html>
   </data-object>
   <data-object name="ResourceAllocationOption"
      type-id="vim.ResourceAllocationOption"
      vmodl-name="vim.ResourceAllocationOption"
      version-id-ref="vim.version.version6"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The ResourceAllocationOption data object specifies value ranges and
  default values for <a href="vim.ResourceAllocationInfo.html">ResourceAllocationInfo</a>.]]>
      </description-html>
            <property name="sharesOption" type-id-ref="vim.SharesOption"
      vmodl-name="sharesOption"
      >
      <description-html>
         <![CDATA[Default value and value range for <a href="vim.ResourceAllocationInfo.html#shares">shares</a>.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ClusterDasVmSettings"
      type-id="vim.cluster.DasVmSettings"
      vmodl-name="vim.cluster.DasVmSettings"
      version-id-ref="vim.version.version2"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The <a href="vim.cluster.DasVmSettings.html">ClusterDasVmSettings</a> data object contains the HA configuration
  settings specified for a single virtual machine (identified by
  <a href="vim.cluster.DasVmConfigInfo.html">ClusterDasVmConfigInfo</a>.<a href="vim.cluster.DasVmConfigInfo.html#key">key</a>)
  or as cluster-wide defaults
  <a href="vim.cluster.DasConfigInfo.html">ClusterDasConfigInfo</a>.<a href="vim.cluster.DasConfigInfo.html#defaultVmSettings">defaultVmSettings</a>
  <p>
  All fields are optional. If you set the <code>modify</code> parameter to
  <code>true</code> when you call <a href="vim.ComputeResource.html#reconfigureEx">ReconfigureComputeResource_Task</a>,
  an unset property has no effect on the existing property value in the
  cluster configuration on the Server. If you set the <code>modify</code>
  parameter to <code>false</code> when you reconfigure a cluster, the cluster
  configuration is reverted to the default values, then the new configuration
  values are applied.]]>
      </description-html>
            <property name="restartPriority" type-id-ref="java.lang.String"
      vmodl-name="restartPriority"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Restart priority for a virtual machine.
  <p>
  If not specified at either the cluster level or
  the virtual machine level, this will default to <code>medium</code>.
  <p><br>See <a href="vim.cluster.DasVmSettings.RestartPriority.html">ClusterDasVmSettingsRestartPriority</a><br>]]>
      </description-html>
      </property>

            <property name="restartPriorityTimeout" type-id-ref="INT"
      vmodl-name="restartPriorityTimeout"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[This setting is used to specify a maximum time the lower priority VMs
  should wait for the higher priority VMs to be ready. If the higher
  priority Vms are not ready by this time, then the lower priority VMs
  are restarted irrespective of the VM ready state. This timeout can be
  used to prevent the failover of lower priority VMs to be stuck
  infinitely.
  <p>
  This timeout is not used if ready condition is
  vim.cluster.VmReadiness.ReadyCondition#none
  <p>
  Timeout specified in seconds. To use cluster setting for a VM override,
  set to -1 in per-VM.
  setting.
  <p>]]>
      </description-html>
      </property>

            <property name="isolationResponse" type-id-ref="java.lang.String"
      vmodl-name="isolationResponse"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates whether or not the virtual machine should be powered off if a
  host determines that it is isolated from the rest of the compute
  resource.
  <p>
  If not specified at either the cluster level or
  the virtual machine level, this will default to <code>powerOff</code>.
  <p><br>See <a href="vim.cluster.DasVmSettings.IsolationResponse.html">ClusterDasVmSettingsIsolationResponse</a><br>]]>
      </description-html>
      </property>

            <property name="vmToolsMonitoringSettings" type-id-ref="vim.cluster.VmToolsMonitoringSettings"
      vmodl-name="vmToolsMonitoringSettings"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Configuration for the VM Health Monitoring Service.]]>
      </description-html>
      </property>

            <property name="vmComponentProtectionSettings" type-id-ref="vim.cluster.VmComponentProtectionSettings"
      vmodl-name="vmComponentProtectionSettings"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Configuration for the VM Component Protection Service.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.cluster.DasVmSettings.RestartPriority</nested-type-id-ref>
      <nested-type-id-ref>vim.cluster.DasVmSettings.IsolationResponse</nested-type-id-ref>
   </data-object>
   <data-object name="HostPatchManagerLocator"
      type-id="vim.host.PatchManager.Locator"
      vmodl-name="vim.host.PatchManager.Locator"
      enclosing-type-id-ref="vim.host.PatchManager"
      version-id-ref="vim.version.version1"
      internal-before-version-id-ref="vim.version.version2"
      base-type-id="vmodl.DynamicData"
      >
            <property name="url" type-id-ref="java.lang.String"
      vmodl-name="url"
      >
      <description-html>
         <![CDATA[The URL that will be used to access the patch repository.]]>
      </description-html>
      </property>

            <property name="proxy" type-id-ref="java.lang.String"
      vmodl-name="proxy"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The proxy setting required to access the URL from the host.
  If unset, a direct URL connection will be attempted.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="TaskEvent"
      type-id="vim.event.TaskEvent"
      vmodl-name="vim.event.TaskEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.Event"
      >
      <description-html>
         <![CDATA[This event records the creation of a Task.

 Note that the embedded TaskInfo object is a <i>snapshot</i> of the
 Task state at the time of its creation, so its state will always be
 "queued".  To find the current status of the task, query for the
 current state of the Task using the eventChainId in the embedded
 TaskInfo object.]]>
      </description-html>
            <property name="info" type-id-ref="vim.TaskInfo"
      vmodl-name="info"
      >
      <description-html>
         <![CDATA[The information about the task.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DVSUplinkPortPolicy"
      type-id="vim.DistributedVirtualSwitch.UplinkPortPolicy"
      vmodl-name="vim.DistributedVirtualSwitch.UplinkPortPolicy"
      enclosing-type-id-ref="vim.DistributedVirtualSwitch"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The base class for uplink port policy.]]>
      </description-html>
   </data-object>
   <data-object name="HostIpRouteConfigSpec"
      type-id="vim.host.IpRouteConfigSpec"
      vmodl-name="vim.host.IpRouteConfigSpec"
      version-id-ref="vim.version.version5"
      base-type-id="vim.host.IpRouteConfig"
      >
      <description-html>
         <![CDATA[Dataobject specifying the configuration for IpRoute]]>
      </description-html>
            <property name="gatewayDeviceConnection" type-id-ref="vim.host.VirtualNicConnection"
      vmodl-name="gatewayDeviceConnection"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Choose a gateway device based on what the VirtualNic is connected to.
  This applies to service console gateway only, it
     is ignored otherwise.]]>
      </description-html>
      </property>

            <property name="ipV6GatewayDeviceConnection" type-id-ref="vim.host.VirtualNicConnection"
      vmodl-name="ipV6GatewayDeviceConnection"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The ipv6 gateway device based on what the VirtualNic is connected to.
 This applies to service console gateway only, it
    is ignored otherwise.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VmSecondaryDisabledBySystemEvent"
      type-id="vim.event.VmSecondaryDisabledBySystemEvent"
      vmodl-name="vim.event.VmSecondaryDisabledBySystemEvent"
      version-id-ref="vim.version.version5"
      base-type-id="vim.event.VmEvent"
      >
      <description-html>
         <![CDATA[This event records that a fault tolerance secondary VM has been
  disabled by vCenter because the VM could not be powered on.]]>
      </description-html>
            <property name="reason" type-id-ref="vmodl.LocalizedMethodFault"
      vmodl-name="reason"
      is-optional="true"
      >
      </property>

   </data-object>
   <data-object name="HostDhcpServiceConfig"
      type-id="vim.host.DhcpService.Config"
      vmodl-name="vim.host.DhcpService.Config"
      enclosing-type-id-ref="vim.host.DhcpService"
      version-id-ref="vim.version.version2"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object type describes the configuration of a DHCP service
  instance representing both the configured properties
  on the instance and identification information.]]>
      </description-html>
            <property name="changeOperation" type-id-ref="java.lang.String"
      vmodl-name="changeOperation"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates the change operation to apply on this configuration
  specification.<br>See <a href="vim.host.ConfigChange.Operation.html">HostConfigChangeOperation</a><br>]]>
      </description-html>
      </property>

            <property name="key" type-id-ref="java.lang.String"
      vmodl-name="key"
      >
      <description-html>
         <![CDATA[The instance ID of the DHCP service.]]>
      </description-html>
      </property>

            <property name="spec" type-id-ref="vim.host.DhcpService.Specification"
      vmodl-name="spec"
      >
      <description-html>
         <![CDATA[Specification of the DHCP service.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ClusterNotAttemptedVmInfo"
      type-id="vim.cluster.NotAttemptedVmInfo"
      vmodl-name="vim.cluster.NotAttemptedVmInfo"
      version-id-ref="vim.version.version2"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data class reports one virtual machine powerOn failure.]]>
      </description-html>
            <property name="vm" type-id-ref="vim.VirtualMachine"
      vmodl-name="vm"
      >
      <description-html>
         <![CDATA[The virtual machine that can not be powered on.]]>
      </description-html>
      </property>

            <property name="fault" type-id-ref="vmodl.LocalizedMethodFault"
      vmodl-name="fault"
      >
      <description-html>
         <![CDATA[The exception returned.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostHardwareStatusInfo"
      type-id="vim.host.HardwareStatusInfo"
      vmodl-name="vim.host.HardwareStatusInfo"
      version-id-ref="vim.version.version2"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Data object representing the status of the
  hardware components of the host.]]>
      </description-html>
            <property name="memoryStatusInfo" type-id-ref="vim.host.HardwareStatusInfo.HardwareElementInfo"
      vmodl-name="memoryStatusInfo"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Status of the physical memory]]>
      </description-html>
      </property>

            <property name="cpuStatusInfo" type-id-ref="vim.host.HardwareStatusInfo.HardwareElementInfo"
      vmodl-name="cpuStatusInfo"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Status of the CPU packages]]>
      </description-html>
      </property>

            <property name="storageStatusInfo" type-id-ref="vim.host.HardwareStatusInfo.StorageStatusInfo"
      vmodl-name="storageStatusInfo"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Status of the physical storage system]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.host.HardwareStatusInfo.Status</nested-type-id-ref>
      <nested-type-id-ref>vim.host.HardwareStatusInfo.HardwareElementInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.host.HardwareStatusInfo.StorageStatusInfo</nested-type-id-ref>
   </data-object>
   <data-object name="HostPcieHba"
      type-id="vim.host.PcieHba"
      vmodl-name="vim.host.PcieHba"
      version-id-ref="vim.version.v7_0"
      base-type-id="vim.host.HostBusAdapter"
      >
      <description-html>
         <![CDATA[This data object describes the Peripheral Component Interconnect Express
 (PCIe) host bus adapter interface.]]>
      </description-html>
   </data-object>
   <data-object name="RoleAddedEvent"
      type-id="vim.event.RoleAddedEvent"
      vmodl-name="vim.event.RoleAddedEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.RoleEvent"
      >
      <description-html>
         <![CDATA[This event records the creation of a role.]]>
      </description-html>
            <property name="privilegeList" type-id-ref="java.lang.String"
      vmodl-name="privilegeList"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The privileges granted to the role.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualSoundCardDeviceBackingOption"
      type-id="vim.vm.device.VirtualSoundCardOption.DeviceBackingOption"
      vmodl-name="vim.vm.device.VirtualSoundCardOption.DeviceBackingOption"
      enclosing-type-id-ref="vim.vm.device.VirtualSoundCardOption"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.device.VirtualDeviceOption.DeviceBackingOption"
      >
      <description-html>
         <![CDATA[The VirtualSoundCardBackingOption class contains the options
 for the virtual sound card backing class.]]>
      </description-html>
   </data-object>
   <data-object name="HostVffsVolume"
      type-id="vim.host.VffsVolume"
      vmodl-name="vim.host.VffsVolume"
      version-id-ref="vim.version.version9"
      base-type-id="vim.host.FileSystemVolume"
      >
      <description-html>
         <![CDATA[vFlash File System Volume.]]>
      </description-html>
            <property name="majorVersion" type-id-ref="INT"
      vmodl-name="majorVersion"
      >
      <description-html>
         <![CDATA[Major version number of VFFS.]]>
      </description-html>
      </property>

            <property name="version" type-id-ref="java.lang.String"
      vmodl-name="version"
      >
      <description-html>
         <![CDATA[Version string. Contains major and minor version numbers.]]>
      </description-html>
      </property>

            <property name="uuid" type-id-ref="java.lang.String"
      vmodl-name="uuid"
      >
      <description-html>
         <![CDATA[The universally unique identifier assigned to VFFS.]]>
      </description-html>
      </property>

            <property name="extent" type-id-ref="vim.host.ScsiDisk.Partition"
      vmodl-name="extent"
      is-array="true"
      >
      <description-html>
         <![CDATA[The list of partition names that comprise this disk's
  VFFS extents.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.host.VffsVolume.Specification</nested-type-id-ref>
   </data-object>
   <data-object name="VirtualDeviceRemoteDeviceBackingOption"
      type-id="vim.vm.device.VirtualDeviceOption.RemoteDeviceBackingOption"
      vmodl-name="vim.vm.device.VirtualDeviceOption.RemoteDeviceBackingOption"
      enclosing-type-id-ref="vim.vm.device.VirtualDeviceOption"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.device.VirtualDeviceOption.BackingOption"
      >
      <description-html>
         <![CDATA[VirtualDeviceOption.RemoteDeviceBackingOption describes the options
  for a remote device backing. The primary difference
  between a remote device backing and a local device backing is that
  the VirtualCenter server cannot provide a list of remote host devices
  available for this virtual device backing.]]>
      </description-html>
            <property name="autoDetectAvailable" type-id-ref="vim.option.BoolOption"
      vmodl-name="autoDetectAvailable"
      version-id-ref="vim.version.version2"
      >
      <description-html>
         <![CDATA[Flag to indicate whether the specific instance of this device can
 be auto-detected on the host instead of having to specify a
 particular physical device.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VmPoweredOffEvent"
      type-id="vim.event.VmPoweredOffEvent"
      vmodl-name="vim.event.VmPoweredOffEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.VmEvent"
      >
      <description-html>
         <![CDATA[This event records when a virtual machine finished powering off.]]>
      </description-html>
   </data-object>
   <data-object name="HostPlugStoreTopologyPlugin"
      type-id="vim.host.PlugStoreTopology.Plugin"
      vmodl-name="vim.host.PlugStoreTopology.Plugin"
      enclosing-type-id-ref="vim.host.PlugStoreTopology"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object type represents a Plugin in the plug store architecture.
  A Plugin claims a set of paths and groups them into Devices.]]>
      </description-html>
            <property name="key" type-id-ref="java.lang.String"
      vmodl-name="key"
      >
      <description-html>
         <![CDATA[The identifier of the plugin.]]>
      </description-html>
      </property>

            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      >
      <description-html>
         <![CDATA[The name of the plugin.]]>
      </description-html>
      </property>

            <property name="device" type-id-ref="vim.host.PlugStoreTopology.Device"
      vmodl-name="device"
      is-array="true"
      is-optional="true"
      is-link="true"
      >
      <description-html>
         <![CDATA[The set of devices formed by this plugin.]]>
      </description-html>
      </property>

            <property name="claimedPath" type-id-ref="vim.host.PlugStoreTopology.Path"
      vmodl-name="claimedPath"
      is-array="true"
      is-optional="true"
      is-link="true"
      >
      <description-html>
         <![CDATA[The set of paths claimed by this plugin.  Not every claimed path
  will necessarily appear as part of a Device.  Claimed paths will
  only appear under Devices if the device identifier of the path
  matches up with the device identifier exposed by the Device.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="Relation"
      type-id="vim.host.SoftwarePackage.Relation"
      vmodl-name="vim.host.SoftwarePackage.Relation"
      enclosing-type-id-ref="vim.host.SoftwarePackage"
      version-id-ref="vim.version.version11"
      base-type-id="vmodl.DynamicData"
      >
            <property name="constraint" type-id-ref="java.lang.String"
      vmodl-name="constraint"
      is-optional="true"
      >
      <description-html>
         <![CDATA[If contraint is not set, the relation holds for all versions.
 and if a constraint is defined it will be one of
 <a href="vim.host.SoftwarePackage.Constraint.html">SoftwarePackageConstraint</a>.]]>
      </description-html>
      </property>

            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      >
      </property>

            <property name="version" type-id-ref="java.lang.String"
      vmodl-name="version"
      is-optional="true"
      >
      </property>

   </data-object>
   <data-object name="ComplianceResult"
      type-id="vim.profile.ComplianceResult"
      vmodl-name="vim.profile.ComplianceResult"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[DataObject representing the result from a ComplianceCheck]]>
      </description-html>
            <property name="profile" type-id-ref="vim.profile.Profile"
      vmodl-name="profile"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Profile for which the ComplianceResult applies]]>
      </description-html>
      </property>

            <property name="complianceStatus" type-id-ref="java.lang.String"
      vmodl-name="complianceStatus"
      >
      <description-html>
         <![CDATA[Indicates the compliance status of the entity.
 See]]>
      </description-html>
      </property>

            <property name="entity" type-id-ref="vim.ManagedEntity"
      vmodl-name="entity"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Entity on which the compliance check was carried out.
 Entity can be a Cluster, Host and so on.]]>
      </description-html>
      </property>

            <property name="checkTime" type-id-ref="vmodl.DateTime"
      vmodl-name="checkTime"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Time at which compliance check was last run on the entity]]>
      </description-html>
      </property>

            <property name="failure" type-id-ref="vim.profile.ComplianceResult.ComplianceFailure"
      vmodl-name="failure"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[If complianceStatus is non-compliant, failure will
 contain additional information about the compliance errors.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.profile.ComplianceResult.Status</nested-type-id-ref>
      <nested-type-id-ref>vim.profile.ComplianceResult.ComplianceFailure</nested-type-id-ref>
   </data-object>
   <data-object name="VmVnicPoolReservationViolationRaiseEvent"
      type-id="vim.event.VmVnicPoolReservationViolationRaiseEvent"
      vmodl-name="vim.event.VmVnicPoolReservationViolationRaiseEvent"
      version-id-ref="vim.version.version10"
      base-type-id="vim.event.DvsEvent"
      >
      <description-html>
         <![CDATA[This event is generated when the reservations used by all
 the virtual network adapters belonging to the virtual NIC network
 resource pool exceeds the reservation allocated to the resource pool]]>
      </description-html>
            <property name="vmVnicResourcePoolKey" type-id-ref="java.lang.String"
      vmodl-name="vmVnicResourcePoolKey"
      >
      <description-html>
         <![CDATA[The key of the Virtual NIC network resource pool]]>
      </description-html>
      </property>

            <property name="vmVnicResourcePoolName" type-id-ref="java.lang.String"
      vmodl-name="vmVnicResourcePoolName"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The name of the Virtual NIC network resource pool]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualUSBControllerPciBusSlotInfo"
      type-id="vim.vm.device.VirtualUSBController.PciBusSlotInfo"
      vmodl-name="vim.vm.device.VirtualUSBController.PciBusSlotInfo"
      enclosing-type-id-ref="vim.vm.device.VirtualUSBController"
      version-id-ref="vim.version.version8"
      base-type-id="vim.vm.device.VirtualDevice.PciBusSlotInfo"
      >
      <description-html>
         <![CDATA[The <code>PciBusSlotInfo</code> data object type
  defines information about the pci bus slots of usb controller device
  in a virtual machine.]]>
      </description-html>
            <property name="ehciPciSlotNumber" type-id-ref="INT"
      vmodl-name="ehciPciSlotNumber"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The pci slot number of eHCI controller.
  <p>
  This property should be used only when the ehciEnabled property
  is set to true.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualHdAudioCardOption"
      type-id="vim.vm.device.VirtualHdAudioCardOption"
      vmodl-name="vim.vm.device.VirtualHdAudioCardOption"
      version-id-ref="vim.version.version7"
      base-type-id="vim.vm.device.VirtualSoundCardOption"
      >
      <description-html>
         <![CDATA[The VirtualHdAudioCardOption data object type contains the options for a
  virtual HD Audio sound card.]]>
      </description-html>
   </data-object>
   <data-object name="HostSubSpecificationUpdateEvent"
      type-id="vim.event.HostSubSpecificationUpdateEvent"
      vmodl-name="vim.event.HostSubSpecificationUpdateEvent"
      version-id-ref="vim.version.version11"
      base-type-id="vim.event.HostEvent"
      >
      <description-html>
         <![CDATA[This event suggests that update the host sub specification with the
 encapsulated copy.]]>
      </description-html>
            <property name="hostSubSpec" type-id-ref="vim.profile.host.HostSubSpecification"
      vmodl-name="hostSubSpec"
      >
      </property>

   </data-object>
   <data-object name="StorageDrsVmConfigSpec"
      type-id="vim.storageDrs.VmConfigSpec"
      vmodl-name="vim.storageDrs.VmConfigSpec"
      version-id-ref="vim.version.version7"
      base-type-id="vim.option.ArrayUpdateSpec"
      >
      <description-html>
         <![CDATA[Updates the per-virtual-machine storage DRS configuration.
  <p>]]>
      </description-html>
            <property name="info" type-id-ref="vim.storageDrs.VmConfigInfo"
      vmodl-name="info"
      is-optional="true"
      >
      </property>

   </data-object>
   <data-object name="StringOption"
      type-id="vim.option.StringOption"
      vmodl-name="vim.option.StringOption"
      version-id-ref="vim.version.version1"
      base-type-id="vim.option.OptionType"
      >
      <description-html>
         <![CDATA[The StringOption data object type is used to define an open-ended
  string value based on an optional subset of valid characters.]]>
      </description-html>
            <property name="defaultValue" type-id-ref="java.lang.String"
      vmodl-name="defaultValue"
      >
      <description-html>
         <![CDATA[The default value.]]>
      </description-html>
      </property>

            <property name="validCharacters" type-id-ref="java.lang.String"
      vmodl-name="validCharacters"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The string containing the set of valid characters. If a string
  option is not specified, all strings are allowed.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostAssignableHardwareConfig"
      type-id="vim.host.AssignableHardwareConfig"
      vmodl-name="vim.host.AssignableHardwareConfig"
      version-id-ref="vim.version.v7_0"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The AssignableHardwareConfig data object describes properties
  of all assignable devices on the host.]]>
      </description-html>
            <property name="attributeOverride" type-id-ref="vim.host.AssignableHardwareConfig.AttributeOverride"
      vmodl-name="attributeOverride"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of attribute overrides.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.host.AssignableHardwareConfig.AttributeOverride</nested-type-id-ref>
   </data-object>
   <data-object name="ScheduledHardwareUpgradeInfo"
      type-id="vim.vm.ScheduledHardwareUpgradeInfo"
      vmodl-name="vim.vm.ScheduledHardwareUpgradeInfo"
      version-id-ref="vim.version.version8"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Data object type containing settings for the scheduled hardware upgrades.]]>
      </description-html>
            <property name="upgradePolicy" type-id-ref="java.lang.String"
      vmodl-name="upgradePolicy"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Scheduled hardware upgrade policy setting for the virtual machine.<br>See <a href="vim.vm.ScheduledHardwareUpgradeInfo.HardwareUpgradePolicy.html">ScheduledHardwareUpgradeInfoHardwareUpgradePolicy</a><br>]]>
      </description-html>
      </property>

            <property name="versionKey" type-id-ref="java.lang.String"
      vmodl-name="versionKey"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Key for target hardware version to be used on next scheduled upgrade
  in the format of <a href="vim.vm.ConfigOptionDescriptor.html#key">key</a>.]]>
      </description-html>
      </property>

            <property name="scheduledHardwareUpgradeStatus" type-id-ref="java.lang.String"
      vmodl-name="scheduledHardwareUpgradeStatus"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Status for last attempt to run scheduled hardware upgrade.<br>See <a href="vim.vm.ScheduledHardwareUpgradeInfo.HardwareUpgradeStatus.html">ScheduledHardwareUpgradeInfoHardwareUpgradeStatus</a><br>]]>
      </description-html>
      </property>

            <property name="fault" type-id-ref="vmodl.LocalizedMethodFault"
      vmodl-name="fault"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Contains information about the failure of last attempt to run
  scheduled hardware upgrade.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.vm.ScheduledHardwareUpgradeInfo.HardwareUpgradePolicy</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.ScheduledHardwareUpgradeInfo.HardwareUpgradeStatus</nested-type-id-ref>
   </data-object>
   <data-object name="VmConfigSpec"
      type-id="vim.vApp.VmConfigSpec"
      vmodl-name="vim.vApp.VmConfigSpec"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[vApp related configuration of a VM.]]>
      </description-html>
            <property name="product" type-id-ref="vim.vApp.ProductSpec"
      vmodl-name="product"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Information about the product.
 <p>
 Reconfigure privilege: VApp.ApplicationConfig]]>
      </description-html>
      </property>

            <property name="property" type-id-ref="vim.vApp.PropertySpec"
      vmodl-name="property"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of properties.
 <p>
 Adding and editing properties requires various privileges depending on which fields
 are affected. See <a href="vim.vApp.PropertyInfo.html">VAppPropertyInfo</a> for details.
 <p>
 Deleting properties requires the privilege VApp.ApplicationConfig.]]>
      </description-html>
      </property>

            <property name="ipAssignment" type-id-ref="vim.vApp.IPAssignmentInfo"
      vmodl-name="ipAssignment"
      is-optional="true"
      >
      <description-html>
         <![CDATA[IP assignment policy and DHCP support configuration.
 <p>
 Reconfigure privilege: See <a href="vim.vApp.IPAssignmentInfo.html">VAppIPAssignmentInfo</a>]]>
      </description-html>
      </property>

            <property name="eula" type-id-ref="java.lang.String"
      vmodl-name="eula"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[End User Liceses Agreements.
 <p>
 If this list is set, it replaces all exiting  licenses. An empty list will not
 make any changes to installed licenses. A list with a single element {""} will
 remove all licenses and leave an empty list.
 <p>
 Reconfigure privilege: VApp.ApplicationConfig]]>
      </description-html>
      </property>

            <property name="ovfSection" type-id-ref="vim.vApp.OvfSectionSpec"
      vmodl-name="ovfSection"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of uninterpreted OVF meta-data sections.
 <p>
 Reconfigure privilege: VApp.ApplicationConfig]]>
      </description-html>
      </property>

            <property name="ovfEnvironmentTransport" type-id-ref="java.lang.String"
      vmodl-name="ovfEnvironmentTransport"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List the transports to use for properties. Supported values are: iso and
 com.vmware.guestInfo.
 <p>
 If this list is set, it replaces all exiting entries. An empty list will not make
 any changes. A list with a single element {""} will clear the list of transports.
 <p>
 Reconfigure privilege: VApp.ApplicationConfig]]>
      </description-html>
      </property>

            <property name="installBootRequired" type-id-ref="BOOLEAN"
      vmodl-name="installBootRequired"
      is-optional="true"
      >
      <description-html>
         <![CDATA[If this is on a VirtualMachine object, it specifies whether the VM needs an
  initial boot before the deployment is complete. If this is on a vApp object,
  it indicates than one or more VMs needs an initial reboot. This flag is
  automatically reset once the reboot has happened.
 <p>
 Reconfigure privilege: VApp.ApplicationConfig]]>
      </description-html>
      </property>

            <property name="installBootStopDelay" type-id-ref="INT"
      vmodl-name="installBootStopDelay"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Specifies the delay in seconds to wait for the VM to power off after the initial
 boot (used only if installBootRequired is true). A value of 0 means wait forever.
 <p>
 Reconfigure privilege: VApp.ApplicationConfig]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualSerialPortPipeBackingOption"
      type-id="vim.vm.device.VirtualSerialPortOption.PipeBackingOption"
      vmodl-name="vim.vm.device.VirtualSerialPortOption.PipeBackingOption"
      enclosing-type-id-ref="vim.vm.device.VirtualSerialPortOption"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.device.VirtualDeviceOption.PipeBackingOption"
      >
      <description-html>
         <![CDATA[The <code><a href="vim.vm.device.VirtualSerialPortOption.PipeBackingOption.html">VirtualSerialPortPipeBackingOption</a></code> data object contains
  the options for backing a serial port device with a pipe to another process.]]>
      </description-html>
            <property name="endpoint" type-id-ref="vim.option.ChoiceOption"
      vmodl-name="endpoint"
      >
      <description-html>
         <![CDATA[Indicates the choices available and the default setting
  for the pipe endpoint. As an endpoint, the virtual machine can act
  as a client or a server.]]>
      </description-html>
      </property>

            <property name="noRxLoss" type-id-ref="vim.option.BoolOption"
      vmodl-name="noRxLoss"
      >
      <description-html>
         <![CDATA[Indicates whether the server supports optimized data transfer
  over the pipe and also specifies default behavior.
  <p>
  When this feature is supported and enabled, the server buffers data
  to prevent data overrun. This allows the virtual machine to read all
  of the data transferred over the pipe with no data loss.
  <p>
  If optimized data transfer is supported (<code>noRxLoss.supported</code>
  is <code>true</code>):
  <ul>
    <li>You can enable (or disable) the feature explicitly by setting the
        <code><a href="vim.vm.device.VirtualSerialPort.PipeBackingInfo.html#noRxLoss">noRxLoss</a></code>
        property on the pipe backing information object.
    <li>If you do not set the
        <code><a href="vim.vm.device.VirtualSerialPort.PipeBackingInfo.html#noRxLoss">noRxLoss</a></code>
        property on the
        the pipe backing information object, the server enables
        optimized data transfer if the <code>noRxLoss.defaultValue</code>
        property on the pipe backing options object is <code>true</code>.
  </ul>
  <p>
  If <code>noRxLoss.supported</code> is <code>false</code>, the server
  ignores the optimization settings.
  <p>
  <b>Note</b>: You can use this feature even if the other end of the pipe
  is not an application, but it is more likely to fail.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualDiskFlatVer1BackingOption"
      type-id="vim.vm.device.VirtualDiskOption.FlatVer1BackingOption"
      vmodl-name="vim.vm.device.VirtualDiskOption.FlatVer1BackingOption"
      enclosing-type-id-ref="vim.vm.device.VirtualDiskOption"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.device.VirtualDeviceOption.FileBackingOption"
      >
      <description-html>
         <![CDATA[This data object type contains the available options when backing a virtual disk
  using a host file with the flat file format from GSX Server 2.x.
  Flat disks are pre-allocated, whereas sparse disks are grown as needed.]]>
      </description-html>
            <property name="diskMode" type-id-ref="vim.option.ChoiceOption"
      vmodl-name="diskMode"
      >
      <description-html>
         <![CDATA[The disk mode. Valid disk modes are:
  <ul>
  <li>vim.vm.device.VirtualDiskOption.DiskMode#persistent
  <li>vim.vm.device.VirtualDiskOption.DiskMode#nonpersistent
  <li>vim.vm.device.VirtualDiskOption.DiskMode#undoable
  <li>vim.vm.device.VirtualDiskOption.DiskMode#independent_persistent
  <li>vim.vm.device.VirtualDiskOption.DiskMode#independent_nonpersistent
  <li>vim.vm.device.VirtualDiskOption.DiskMode#append
  </ul><br>See <a href="vim.vm.device.VirtualDiskOption.DiskMode.html">VirtualDiskMode</a><br>]]>
      </description-html>
      </property>

            <property name="split" type-id-ref="vim.option.BoolOption"
      vmodl-name="split"
      >
      <description-html>
         <![CDATA[Flag to indicate whether or not the host supports
  allowing the client to select whether or not a disk
  should be split.]]>
      </description-html>
      </property>

            <property name="writeThrough" type-id-ref="vim.option.BoolOption"
      vmodl-name="writeThrough"
      >
      <description-html>
         <![CDATA[Flag to indicate whether or not the host supports
  allowing the client to select "writethrough" as a mode for
  virtual disks. Typically, this is available only for GSX Server Linux hosts.]]>
      </description-html>
      </property>

            <property name="growable" type-id-ref="BOOLEAN"
      vmodl-name="growable"
      >
      <description-html>
         <![CDATA[Flag to indicate whether this backing can have its size changed.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DrsEnteringStandbyModeEvent"
      type-id="vim.event.DrsEnteringStandbyModeEvent"
      vmodl-name="vim.event.DrsEnteringStandbyModeEvent"
      version-id-ref="vim.version.version5"
      base-type-id="vim.event.EnteringStandbyModeEvent"
      >
      <description-html>
         <![CDATA[This event records that a host has begun the process of
  entering standby mode initiated by Distributed Power Management.]]>
      </description-html>
   </data-object>
   <data-object name="HostOpaqueNetworkInfo"
      type-id="vim.host.OpaqueNetworkInfo"
      vmodl-name="vim.host.OpaqueNetworkInfo"
      version-id-ref="vim.version.version9"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Information on opaque networks that are available on the host.]]>
      </description-html>
            <property name="opaqueNetworkId" type-id-ref="java.lang.String"
      vmodl-name="opaqueNetworkId"
      >
      <description-html>
         <![CDATA[The ID of the opaque network.]]>
      </description-html>
      </property>

            <property name="opaqueNetworkName" type-id-ref="java.lang.String"
      vmodl-name="opaqueNetworkName"
      >
      <description-html>
         <![CDATA[The name of the opaque network.]]>
      </description-html>
      </property>

            <property name="opaqueNetworkType" type-id-ref="java.lang.String"
      vmodl-name="opaqueNetworkType"
      >
      <description-html>
         <![CDATA[The type of the opaque network.]]>
      </description-html>
      </property>

            <property name="pnicZone" type-id-ref="java.lang.String"
      vmodl-name="pnicZone"
      version-id-ref="vim.version.version10"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[IDs of networking zones that back the opaque network.]]>
      </description-html>
      </property>

            <property name="capability" type-id-ref="vim.OpaqueNetwork.Capability"
      vmodl-name="capability"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The capability of the opaque network.
 Refer <a href="vim.OpaqueNetwork.Capability.html">OpaqueNetworkCapability</a>]]>
      </description-html>
      </property>

            <property name="extraConfig" type-id-ref="vim.option.OptionValue"
      vmodl-name="extraConfig"
      version-id-ref="vim.version.version11"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Extra NSX specific properties for opaque networks.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostConfigAppliedEvent"
      type-id="vim.event.HostConfigAppliedEvent"
      vmodl-name="vim.event.HostConfigAppliedEvent"
      version-id-ref="vim.version.version5"
      base-type-id="vim.event.HostEvent"
      >
      <description-html>
         <![CDATA[This event records that a configuration was applied on a host]]>
      </description-html>
   </data-object>
   <data-object name="ClusterOrchestrationInfo"
      type-id="vim.cluster.OrchestrationInfo"
      vmodl-name="vim.cluster.OrchestrationInfo"
      version-id-ref="vim.version.version11"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[vSphere cluster VM orchestration settings.
  <p>
  Used by vSphere HA when restarting failed VMs. For example, if a host
  fails, vSphere HA identifies the list of VMs to be restarted. The order in
  which the failed VMs to be restarted is determined by:
  <ul>
  <li> VM restart priority setting (<a href="vim.cluster.DasVmSettings.html#restartPriority">restartPriority</a>).
  Lower priority VMs are restarted only after higher priority VMs are
  restarted and ready (<a href="vim.cluster.VmReadiness.html">ClusterVmReadiness</a>).
  <li> VM dependency rule (<a href="vim.cluster.DependencyRuleInfo.html">ClusterDependencyRuleInfo</a>). If a VM
  depends on other VMs, then it will be restarted only after all the VMs in
  its dependency list are ready. Cyclic dependency is not permitted across
  VMs. Also, higher priority VMs cannot depend on lower priority VMs.
  </ul>]]>
      </description-html>
            <property name="defaultVmReadiness" type-id-ref="vim.cluster.VmReadiness"
      vmodl-name="defaultVmReadiness"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Cluster-wide defaults for virtual machine readiness]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostNasVolumeUserInfo"
      type-id="vim.host.NasVolume.UserInfo"
      vmodl-name="vim.host.NasVolume.UserInfo"
      enclosing-type-id-ref="vim.host.NasVolume"
      version-id-ref="vim.version.version10"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[NFS user authentication information]]>
      </description-html>
            <property name="user" type-id-ref="java.lang.String"
      vmodl-name="user"
      >
      <description-html>
         <![CDATA[User name for authentication.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="NetworkEventArgument"
      type-id="vim.event.NetworkEventArgument"
      vmodl-name="vim.event.NetworkEventArgument"
      version-id-ref="vim.version.version5"
      base-type-id="vim.event.EntityEventArgument"
      >
      <description-html>
         <![CDATA[The event argument is a Network object.]]>
      </description-html>
            <property name="network" type-id-ref="vim.Network"
      vmodl-name="network"
      >
      <description-html>
         <![CDATA[The Network object.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostNasVolumeConfig"
      type-id="vim.host.NasVolume.Config"
      vmodl-name="vim.host.NasVolume.Config"
      enclosing-type-id-ref="vim.host.NasVolume"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This describes the NAS Volume configuration containing
  the configurable properties on a NAS Volume]]>
      </description-html>
            <property name="changeOperation" type-id-ref="java.lang.String"
      vmodl-name="changeOperation"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates the change operation to apply on this configuration
  specification.<br>See <a href="vim.host.ConfigChange.Operation.html">HostConfigChangeOperation</a><br>]]>
      </description-html>
      </property>

            <property name="spec" type-id-ref="vim.host.NasVolume.Specification"
      vmodl-name="spec"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The specification volume.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualPrecisionClockOption"
      type-id="vim.vm.device.VirtualPrecisionClockOption"
      vmodl-name="vim.vm.device.VirtualPrecisionClockOption"
      version-id-ref="vim.version.v7_0"
      base-type-id="vim.vm.device.VirtualDeviceOption"
      >
      <description-html>
         <![CDATA[The VirtualPrecisionClockOption data object type describes the
  options for the <a href="vim.vm.device.VirtualPrecisionClock.html">VirtualPrecisionClock</a> data
  object type.]]>
      </description-html>
      <nested-type-id-ref>vim.vm.device.VirtualPrecisionClockOption.SystemClockBackingOption</nested-type-id-ref>
   </data-object>
   <data-object name="DvsPortLeavePortgroupEvent"
      type-id="vim.event.DvsPortLeavePortgroupEvent"
      vmodl-name="vim.event.DvsPortLeavePortgroupEvent"
      version-id-ref="vim.version.version5"
      base-type-id="vim.event.DvsEvent"
      >
      <description-html>
         <![CDATA[A port was moved out of the distributed virtual portgroup.]]>
      </description-html>
            <property name="portKey" type-id-ref="java.lang.String"
      vmodl-name="portKey"
      >
      <description-html>
         <![CDATA[The port key.]]>
      </description-html>
      </property>

            <property name="portgroupKey" type-id-ref="java.lang.String"
      vmodl-name="portgroupKey"
      >
      <description-html>
         <![CDATA[The portgroup key.]]>
      </description-html>
      </property>

            <property name="portgroupName" type-id-ref="java.lang.String"
      vmodl-name="portgroupName"
      >
      <description-html>
         <![CDATA[The portgroup name.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostSystemSwapConfigurationDisabledOption"
      type-id="vim.host.SystemSwapConfiguration.DisabledOption"
      vmodl-name="vim.host.SystemSwapConfiguration.DisabledOption"
      enclosing-type-id-ref="vim.host.SystemSwapConfiguration"
      version-id-ref="vim.version.version8"
      base-type-id="vim.host.SystemSwapConfiguration.SystemSwapOption"
      >
      <description-html>
         <![CDATA[Indicates that the system swap on the host is currently disabled.

 This value is used with the
 <a href="vim.HostSystem.html#updateSystemSwapConfiguration">UpdateSystemSwapConfiguration</a> managed method to
 disable system swap. Presence of this value in <a href="vim.host.SystemSwapConfiguration.html#option">option</a> excludes appearance of any other
 options. Specifying additional options will result in a <a href="vmodl.fault.InvalidArgument.html">InvalidArgument</a> fault being thrown from the <a href="vim.HostSystem.html#updateSystemSwapConfiguration">UpdateSystemSwapConfiguration</a> method.]]>
      </description-html>
   </data-object>
   <data-object name="GeneralVmErrorEvent"
      type-id="vim.event.GeneralVmErrorEvent"
      vmodl-name="vim.event.GeneralVmErrorEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.GeneralEvent"
      >
      <description-html>
         <![CDATA[This event is the general error event for a virtual machine.]]>
      </description-html>
   </data-object>
   <data-object name="VirtualIDEControllerOption"
      type-id="vim.vm.device.VirtualIDEControllerOption"
      vmodl-name="vim.vm.device.VirtualIDEControllerOption"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.device.VirtualControllerOption"
      >
      <description-html>
         <![CDATA[The VirtualIDEControllerOption data object type contains the options
  for a virtual IDE controller.]]>
      </description-html>
            <property name="numIDEDisks" type-id-ref="vim.option.IntOption"
      vmodl-name="numIDEDisks"
      >
      <description-html>
         <![CDATA[The minimum, maximum, and default number of IDE VirtualDisk instances you can
  have, at any given time, in the IDE controller. The number is further constrained
  by the number of available slots in the virtual IDE controller.]]>
      </description-html>
      </property>

            <property name="numIDECdroms" type-id-ref="vim.option.IntOption"
      vmodl-name="numIDECdroms"
      >
      <description-html>
         <![CDATA[The minimum, maximum, and default number of IDE VirtualCdrom instances you can
  have, at any given time, in the IDE controller. The number is further constrained
  by the number of available slots in the virtual IDE controller.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="GuestRegValueStringSpec"
      type-id="vim.vm.guest.WindowsRegistryManager.RegistryValueString"
      vmodl-name="vim.vm.guest.WindowsRegistryManager.RegistryValueString"
      enclosing-type-id-ref="vim.vm.guest.WindowsRegistryManager"
      version-id-ref="vim.version.version10"
      base-type-id="vim.vm.guest.WindowsRegistryManager.RegistryValueData"
      >
      <description-html>
         <![CDATA[This describes the registry value string.]]>
      </description-html>
            <property name="value" type-id-ref="java.lang.String"
      vmodl-name="value"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The data of the registry value.

 The Windows registry allows this type of value to exist without
 having any data associated with it.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="StoragePlacementResult"
      type-id="vim.storageDrs.StoragePlacementResult"
      vmodl-name="vim.storageDrs.StoragePlacementResult"
      version-id-ref="vim.version.version7"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Both <a href="vim.StorageResourceManager.html#recommendDatastores">RecommendDatastores</a> and
   <a href="vim.Datastore.html#enterMaintenanceMode">DatastoreEnterMaintenanceMode</a> methods may invoke Storage DRS
   for recommendations on placing or evacuating virtual disks.
   StoragePlacementResult is the class of the result returned by
   the methods.
   <p>]]>
      </description-html>
            <property name="recommendations" type-id-ref="vim.cluster.Recommendation"
      vmodl-name="recommendations"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The list of recommendations that the client needs to approve manually.]]>
      </description-html>
      </property>

            <property name="drsFault" type-id-ref="vim.cluster.DrsFaults"
      vmodl-name="drsFault"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Information about any fault in case Storage DRS failed to make a recommendation.]]>
      </description-html>
      </property>

            <property name="task" type-id-ref="vim.Task"
      vmodl-name="task"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The ID of the task, which monitors the storage placement or datastore entering
  maintennace mode operation.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ApplyHostProfileConfigurationSpec"
      type-id="vim.profile.host.ProfileManager.ApplyHostConfigSpec"
      vmodl-name="vim.profile.host.ProfileManager.ApplyHostConfigSpec"
      enclosing-type-id-ref="vim.profile.host.ProfileManager"
      version-id-ref="vim.version.version11"
      base-type-id="vim.profile.host.ExecuteResult"
      >
      <description-html>
         <![CDATA[The data object that contains the objects needed to remediate a host
  in host profile batch apply.]]>
      </description-html>
            <property name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      >
      <description-html>
         <![CDATA[The host to be remediated.]]>
      </description-html>
      </property>

            <property name="taskListRequirement" type-id-ref="java.lang.String"
      vmodl-name="taskListRequirement"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The task requirements from the results of
 <a href="vim.profile.host.ProfileManager.html#generateConfigTaskList">GenerateConfigTaskList</a> method]]>
      </description-html>
      </property>

            <property name="taskDescription" type-id-ref="vmodl.LocalizableMessage"
      vmodl-name="taskDescription"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Description of tasks that will be performed on the host
 to carry out HostProfile application.]]>
      </description-html>
      </property>

            <property name="rebootStateless" type-id-ref="BOOLEAN"
      vmodl-name="rebootStateless"
      is-optional="true"
      >
      <description-html>
         <![CDATA[For a stateless host, there are two approaches to apply a host
 profile:

 (1) Reboot the host and apply the host profile at boot time.

 (2) Apply the host profile directly from VC.  We call this as
 regular apply.

 The variable rebootStateless allows users to choose the first
 approach from the two approaches above:
 apply host profile by rebooting this host.]]>
      </description-html>
      </property>

            <property name="rebootHost" type-id-ref="BOOLEAN"
      vmodl-name="rebootHost"
      is-optional="true"
      >
      <description-html>
         <![CDATA[For regular apply, when some of the tasks requires reboot,
 that this variable is<code>true</code> indicates that the
 reboot automatically happens in the batch profile apply
 than that the user will manually reboot the system later.

 For stateless host, this variable takes effect only when
 the variable <code>rebootStateless</code> above is
 <code>false</code>.]]>
      </description-html>
      </property>

            <property name="faultData" type-id-ref="vmodl.LocalizedMethodFault"
      vmodl-name="faultData"
      is-optional="true"
      >
      <description-html>
         <![CDATA[This contains the error details.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualMachineGuestQuiesceSpec"
      type-id="vim.vm.GuestQuiesceSpec"
      vmodl-name="vim.vm.GuestQuiesceSpec"
      version-id-ref="vim.version.version11"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object type encapsulates configuration settings
   when creating a virtual machine quiesced snapshot.]]>
      </description-html>
            <property name="timeout" type-id-ref="INT"
      vmodl-name="timeout"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The property to indicate maximum time in minutes for snapshot operation
  to be performed on the virtual machine.
  The timeout can not be less than 5 minutes or more than 240 minutes.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostNasVolume"
      type-id="vim.host.NasVolume"
      vmodl-name="vim.host.NasVolume"
      version-id-ref="vim.version.version1"
      base-type-id="vim.host.FileSystemVolume"
      >
            <property name="remoteHost" type-id-ref="java.lang.String"
      vmodl-name="remoteHost"
      >
      <description-html>
         <![CDATA[The host that runs the NFS/CIFS server.
  Clients must plan to use remoteHostNames for both NFS v3
  as well as NFS v4.1 because this field remoteHost may be
  deprecated in future.]]>
      </description-html>
      </property>

            <property name="remotePath" type-id-ref="java.lang.String"
      vmodl-name="remotePath"
      >
      <description-html>
         <![CDATA[The remote path of NFS/CIFS mount point.]]>
      </description-html>
      </property>

            <property name="userName" type-id-ref="java.lang.String"
      vmodl-name="userName"
      version-id-ref="vim.version.version2"
      is-optional="true"
      >
      <description-html>
         <![CDATA[In case of CIFS, the user name used while connecting to the server.]]>
      </description-html>
      </property>

            <property name="remoteHostNames" type-id-ref="java.lang.String"
      vmodl-name="remoteHostNames"
      version-id-ref="vim.version.version10"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[This field will hold host names (or ip addresses) of all
  remote hosts configured for the datastore.
  In case of NFS v3 it will have one hostname which will be
  the same value as in remoteHost defined above.
  In case of NFS v4.1 if the NFS Client detects additional
  hostnames or ip addresses during its negotiations with the
  NFS server, those additional host names (connections) will be
  added to this list after the datastore is created.
  Addition of hostnames to this list is limited to MDS server host names
  or the IP addresses. In other words, the Data Server host names IP addresses
  will not be appended to this list.]]>
      </description-html>
      </property>

            <property name="securityType" type-id-ref="java.lang.String"
      vmodl-name="securityType"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Security type the volume is currently using.
  See <a href="vim.host.NasVolume.SecurityType.html">HostNasVolumeSecurityType</a>]]>
      </description-html>
      </property>

            <property name="protocolEndpoint" type-id-ref="BOOLEAN"
      vmodl-name="protocolEndpoint"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates that this NAS volume is protocol endpoint. This
 property will be populated if and only if host supports
 VirtualVolume based Datastore. Check the host capability
 <a href="vim.host.Capability.html#virtualVolumeDatastoreSupported">virtualVolumeDatastoreSupported</a>.

 See <a href="vim.host.ProtocolEndpoint.html">HostProtocolEndpoint</a>.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.host.NasVolume.UserInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.host.NasVolume.SecurityType</nested-type-id-ref>
      <nested-type-id-ref>vim.host.NasVolume.Specification</nested-type-id-ref>
      <nested-type-id-ref>vim.host.NasVolume.Config</nested-type-id-ref>
   </data-object>
   <data-object name="VmMaxRestartCountReached"
      type-id="vim.event.VmMaxRestartCountReached"
      vmodl-name="vim.event.VmMaxRestartCountReached"
      version-id-ref="vim.version.version5"
      base-type-id="vim.event.VmEvent"
      >
      <description-html>
         <![CDATA[This event is fired when the VM reached the max restart count]]>
      </description-html>
   </data-object>
   <data-object name="ExtSolutionManagerInfo"
      type-id="vim.ext.SolutionManagerInfo"
      vmodl-name="vim.ext.SolutionManagerInfo"
      version-id-ref="vim.version.version7"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object encapsulates the Solution Manager configuration for
 this extension.]]>
      </description-html>
            <property name="tab" type-id-ref="vim.ext.SolutionManagerInfo.TabInfo"
      vmodl-name="tab"
      is-deprecated="true"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of tabs that must be shown in the Solution Manager for this extension.
 Tabs are shown ordered by their position in this array.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 5.1, see client documentation for the
             preferred way to integrate custom user interfaces.]]>
      </deprecated-html>
      </property>

            <property name="smallIconUrl" type-id-ref="java.lang.String"
      vmodl-name="smallIconUrl"
      is-optional="true"
      >
      <description-html>
         <![CDATA[URL for an icon for this extension. The icon will be shown in the Solution
 Manager for this extension. The icon must be 16x16, and should be in PNG
 format.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.ext.SolutionManagerInfo.TabInfo</nested-type-id-ref>
   </data-object>
   <data-object name="ClusterHostRecommendation"
      type-id="vim.cluster.HostRecommendation"
      vmodl-name="vim.cluster.HostRecommendation"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[A DRS recommended host for either powering on, resuming or
 reverting a virtual machine, or migrating a virtual machine from
 outside the cluster.]]>
      </description-html>
            <property name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      >
      <description-html>
         <![CDATA[The recommended host.]]>
      </description-html>
      </property>

            <property name="rating" type-id-ref="INT"
      vmodl-name="rating"
      >
      <description-html>
         <![CDATA[Rating for the recommendation. Ratings range from 1 to 5, and
  the higher the rating, the stronger DRS suggests this host is
  picked for the operation.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="LicenseReservationInfo"
      type-id="vim.LicenseManager.ReservationInfo"
      vmodl-name="vim.LicenseManager.ReservationInfo"
      enclosing-type-id-ref="vim.LicenseManager"
      version-id-ref="vim.version.version1"
      is-deprecated="true"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[A reservation describes how many licenses of a particular feature are being used
  by a particular feature.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 4.0, this is not used by the system.]]>
      </deprecated-html>
            <property name="key" type-id-ref="java.lang.String"
      vmodl-name="key"
      >
      <description-html>
         <![CDATA[Key of the License Feature.
  <p><br>See <a href="vim.LicenseManager.FeatureInfo.html#key">key</a><br>]]>
      </description-html>
      </property>

            <property name="state" type-id-ref="vim.LicenseManager.ReservationInfo.State"
      vmodl-name="state"
      >
      <description-html>
         <![CDATA[Describes the reservation state of a license.]]>
      </description-html>
      </property>

            <property name="required" type-id-ref="INT"
      vmodl-name="required"
      >
      <description-html>
         <![CDATA[Contains the required number of licenses of the particular type that the
  product needs in its current configuration.
  <p>
  Licenses are normally allocated at the same time as they are needed, so the
  value of required is set at the time the license is needed. For example,
  in the case of the number of licenses based on virtual machines, the required
  count is set at the time a virtual machine is powered on, just before the
  license is checked out.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.LicenseManager.ReservationInfo.State</nested-type-id-ref>
   </data-object>
   <data-object name="UserLoginSessionEvent"
      type-id="vim.event.UserLoginSessionEvent"
      vmodl-name="vim.event.UserLoginSessionEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.SessionEvent"
      >
      <description-html>
         <![CDATA[This event records a user logon.]]>
      </description-html>
            <property name="ipAddress" type-id-ref="java.lang.String"
      vmodl-name="ipAddress"
      >
      <description-html>
         <![CDATA[The IP address of the peer that initiated the connection. This may
  be the client that originated the session, or it may be an intervening
  proxy if the binding uses a protocol that supports proxies, such as HTTP.]]>
      </description-html>
      </property>

            <property name="userAgent" type-id-ref="java.lang.String"
      vmodl-name="userAgent"
      version-id-ref="vim.version.version8"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The user agent or application]]>
      </description-html>
      </property>

            <property name="locale" type-id-ref="java.lang.String"
      vmodl-name="locale"
      >
      <description-html>
         <![CDATA[The locale of the session.]]>
      </description-html>
      </property>

            <property name="sessionId" type-id-ref="java.lang.String"
      vmodl-name="sessionId"
      >
      <description-html>
         <![CDATA[The unique identifier for the session.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VmFaultToleranceVmTerminatedEvent"
      type-id="vim.event.VmFaultToleranceVmTerminatedEvent"
      vmodl-name="vim.event.VmFaultToleranceVmTerminatedEvent"
      version-id-ref="vim.version.version5"
      base-type-id="vim.event.VmEvent"
      >
      <description-html>
         <![CDATA[This event records a secondary or primary VM is terminated.
  The reason could be : divergence, lost connection to secondary, partial
  hardware failure of secondary, or by user.]]>
      </description-html>
            <property name="reason" type-id-ref="java.lang.String"
      vmodl-name="reason"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The reason for the failure.
 see <a href="vim.VirtualMachine.NeedSecondaryReason.html">VirtualMachineNeedSecondaryReason</a>]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostScsiDiskPartition"
      type-id="vim.host.ScsiDisk.Partition"
      vmodl-name="vim.host.ScsiDisk.Partition"
      enclosing-type-id-ref="vim.host.ScsiDisk"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object type describes the specification of a Disk partition.]]>
      </description-html>
            <property name="diskName" type-id-ref="java.lang.String"
      vmodl-name="diskName"
      >
      <description-html>
         <![CDATA[The SCSI disk device on which a VMware File System (VMFS)
  extent resides.<br>See <a href="vim.host.ScsiDisk.html">HostScsiDisk</a><br>See <a href="vim.host.ScsiLun.html#canonicalName">canonicalName</a><br>]]>
      </description-html>
      </property>

            <property name="partition" type-id-ref="INT"
      vmodl-name="partition"
      >
      <description-html>
         <![CDATA[The partition number of the partition on the ScsiDisk.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VmwareDistributedVirtualSwitchVlanIdSpec"
      type-id="vim.dvs.VmwareDistributedVirtualSwitch.VlanIdSpec"
      vmodl-name="vim.dvs.VmwareDistributedVirtualSwitch.VlanIdSpec"
      enclosing-type-id-ref="vim.dvs.VmwareDistributedVirtualSwitch"
      version-id-ref="vim.version.version5"
      base-type-id="vim.dvs.VmwareDistributedVirtualSwitch.VlanSpec"
      >
      <description-html>
         <![CDATA[This data type defines the configuration when single vlanId is used for
 the port.]]>
      </description-html>
            <property name="vlanId" type-id-ref="INT"
      vmodl-name="vlanId"
      >
      <description-html>
         <![CDATA[The VLAN ID for ports. Possible values:
  <ul>
  <li>A value of 0 specifies that you do not want the port associated
  with a VLAN.
  <li>A value from 1 to 4094 specifies a VLAN ID for the port.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualHdAudioCard"
      type-id="vim.vm.device.VirtualHdAudioCard"
      vmodl-name="vim.vm.device.VirtualHdAudioCard"
      version-id-ref="vim.version.version7"
      base-type-id="vim.vm.device.VirtualSoundCard"
      >
      <description-html>
         <![CDATA[The VirtualHdAudioCard data object type represents a HD Audio
  sound card in a virtual machine.]]>
      </description-html>
   </data-object>
   <data-object name="ComplianceFailureComplianceFailureValues"
      type-id="vim.profile.ComplianceResult.ComplianceFailure.ComplianceFailureValues"
      vmodl-name="vim.profile.ComplianceResult.ComplianceFailure.ComplianceFailureValues"
      enclosing-type-id-ref="vim.profile.ComplianceResult.ComplianceFailure"
      version-id-ref="vim.version.version11"
      base-type-id="vmodl.DynamicData"
      >
            <property name="comparisonIdentifier" type-id-ref="java.lang.String"
      vmodl-name="comparisonIdentifier"
      >
      <description-html>
         <![CDATA[Unique key to a message in the localized message catalog,
 identifying the fields being compared.]]>
      </description-html>
      </property>

            <property name="profileInstance" type-id-ref="java.lang.String"
      vmodl-name="profileInstance"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Name of the profile instance, in case of non-singleton profiles.]]>
      </description-html>
      </property>

            <property name="hostValue" type-id-ref="vmodl.Any"
      vmodl-name="hostValue"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Value of the non-compliant field on the host.]]>
      </description-html>
      </property>

            <property name="profileValue" type-id-ref="vmodl.Any"
      vmodl-name="profileValue"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Value of the non-compliant field in the profile.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostInternetScsiTargetTransport"
      type-id="vim.host.InternetScsiTargetTransport"
      vmodl-name="vim.host.InternetScsiTargetTransport"
      version-id-ref="vim.version.version1"
      base-type-id="vim.host.TargetTransport"
      >
      <description-html>
         <![CDATA[Internet SCSI transport information about a SCSI target.]]>
      </description-html>
            <property name="iScsiName" type-id-ref="java.lang.String"
      vmodl-name="iScsiName"
      >
      <description-html>
         <![CDATA[The iSCSI name of the target.]]>
      </description-html>
      </property>

            <property name="iScsiAlias" type-id-ref="java.lang.String"
      vmodl-name="iScsiAlias"
      >
      <description-html>
         <![CDATA[The iSCSI alias of the target.]]>
      </description-html>
      </property>

            <property name="address" type-id-ref="java.lang.String"
      vmodl-name="address"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The IP addresses through which the target may be reached.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VsanHostMembershipInfo"
      type-id="vim.vsan.host.MembershipInfo"
      vmodl-name="vim.vsan.host.MembershipInfo"
      version-id-ref="vim.version.version9"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The <a href="vim.vsan.host.MembershipInfo.html">VsanHostMembershipInfo</a> data object contains VSAN cluster
 membership information for a single host, as observed from a
 given host.  This data object is used to represent read-only
 state whose values may change during operation.<br>See <a href="vim.host.RuntimeInfo.html#vsanRuntimeInfo">vsanRuntimeInfo</a><br>]]>
      </description-html>
            <property name="nodeUuid" type-id-ref="java.lang.String"
      vmodl-name="nodeUuid"
      >
      <description-html>
         <![CDATA[VSAN node UUID for the host of this MembershipInfo.<br>See <a href="vim.vsan.host.ClusterStatus.html#nodeUuid">nodeUuid</a><br>]]>
      </description-html>
      </property>

            <property name="hostname" type-id-ref="java.lang.String"
      vmodl-name="hostname"
      >
      <description-html>
         <![CDATA[Hostname for the host of this MembershipInfo.

 May be the empty string "" if the hostname is unavailable.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualSerialPortFileBackingOption"
      type-id="vim.vm.device.VirtualSerialPortOption.FileBackingOption"
      vmodl-name="vim.vm.device.VirtualSerialPortOption.FileBackingOption"
      enclosing-type-id-ref="vim.vm.device.VirtualSerialPortOption"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.device.VirtualDeviceOption.FileBackingOption"
      >
      <description-html>
         <![CDATA[The <code><a href="vim.vm.device.VirtualSerialPortOption.FileBackingOption.html">VirtualSerialPortFileBackingOption</a></code> data object type
  contains the options for backing a serial port with a host file.]]>
      </description-html>
   </data-object>
   <data-object name="VirtualMachineDisplayTopology"
      type-id="vim.VirtualMachine.DisplayTopology"
      vmodl-name="vim.VirtualMachine.DisplayTopology"
      enclosing-type-id-ref="vim.VirtualMachine"
      version-id-ref="vim.version.version4"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object defines a two-dimensional, rectangular
  display area.]]>
      </description-html>
            <property name="x" type-id-ref="INT"
      vmodl-name="x"
      >
      <description-html>
         <![CDATA[The x co-ordinate defining the start of the display rectangle.]]>
      </description-html>
      </property>

            <property name="y" type-id-ref="INT"
      vmodl-name="y"
      >
      <description-html>
         <![CDATA[The y co-ordinate defining the start of the display rectangle.]]>
      </description-html>
      </property>

            <property name="width" type-id-ref="INT"
      vmodl-name="width"
      >
      <description-html>
         <![CDATA[The width of the display rectangle.]]>
      </description-html>
      </property>

            <property name="height" type-id-ref="INT"
      vmodl-name="height"
      >
      <description-html>
         <![CDATA[The height of the display rectangle.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="KernelModuleInfo"
      type-id="vim.host.KernelModuleSystem.ModuleInfo"
      vmodl-name="vim.host.KernelModuleSystem.ModuleInfo"
      enclosing-type-id-ref="vim.host.KernelModuleSystem"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Information about a kernel module.]]>
      </description-html>
            <property name="id" type-id-ref="INT"
      vmodl-name="id"
      >
      <description-html>
         <![CDATA[Module ID.]]>
      </description-html>
      </property>

            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      >
      <description-html>
         <![CDATA[Module name.]]>
      </description-html>
      </property>

            <property name="version" type-id-ref="java.lang.String"
      vmodl-name="version"
      >
      <description-html>
         <![CDATA[Version string.]]>
      </description-html>
      </property>

            <property name="filename" type-id-ref="java.lang.String"
      vmodl-name="filename"
      >
      <description-html>
         <![CDATA[Module filename, without the path.]]>
      </description-html>
      </property>

            <property name="optionString" type-id-ref="java.lang.String"
      vmodl-name="optionString"
      >
      <description-html>
         <![CDATA[Option string configured to be passed to the kernel module when loaded.
  Note that this is not necessarily the option string currently in use by
  the kernel module.]]>
      </description-html>
      </property>

            <property name="loaded" type-id-ref="BOOLEAN"
      vmodl-name="loaded"
      >
      <description-html>
         <![CDATA[Is the module loaded?]]>
      </description-html>
      </property>

            <property name="enabled" type-id-ref="BOOLEAN"
      vmodl-name="enabled"
      >
      <description-html>
         <![CDATA[Is the module enabled?]]>
      </description-html>
      </property>

            <property name="useCount" type-id-ref="INT"
      vmodl-name="useCount"
      >
      <description-html>
         <![CDATA[Number of references to this module.]]>
      </description-html>
      </property>

            <property name="readOnlySection" type-id-ref="vim.host.KernelModuleSystem.ModuleInfo.SectionInfo"
      vmodl-name="readOnlySection"
      >
      <description-html>
         <![CDATA[Read-only section information.]]>
      </description-html>
      </property>

            <property name="writableSection" type-id-ref="vim.host.KernelModuleSystem.ModuleInfo.SectionInfo"
      vmodl-name="writableSection"
      >
      <description-html>
         <![CDATA[Writable section information.]]>
      </description-html>
      </property>

            <property name="textSection" type-id-ref="vim.host.KernelModuleSystem.ModuleInfo.SectionInfo"
      vmodl-name="textSection"
      >
      <description-html>
         <![CDATA[Text section information.]]>
      </description-html>
      </property>

            <property name="dataSection" type-id-ref="vim.host.KernelModuleSystem.ModuleInfo.SectionInfo"
      vmodl-name="dataSection"
      >
      <description-html>
         <![CDATA[Data section information.]]>
      </description-html>
      </property>

            <property name="bssSection" type-id-ref="vim.host.KernelModuleSystem.ModuleInfo.SectionInfo"
      vmodl-name="bssSection"
      >
      <description-html>
         <![CDATA[BSS section information.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.host.KernelModuleSystem.ModuleInfo.SectionInfo</nested-type-id-ref>
   </data-object>
   <data-object name="VmfsDatastoreSpec"
      type-id="vim.host.VmfsDatastoreSpec"
      vmodl-name="vim.host.VmfsDatastoreSpec"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Base class for VMFS datastore addition specification.  Used as a generic
  way to point to one of the creation specifications that can be used to
  apply a specification to effect the creation or extension of a VMFS
  datastore.]]>
      </description-html>
            <property name="diskUuid" type-id-ref="java.lang.String"
      vmodl-name="diskUuid"
      >
      <description-html>
         <![CDATA[The UUID of the SCSI disk on which the VMFS datastore is located.<br>See <a href="vim.host.ScsiDisk.html">HostScsiDisk</a><br>See <a href="vim.host.ScsiLun.html#uuid">uuid</a><br>]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualDiskLocalPMemBackingOption"
      type-id="vim.vm.device.VirtualDiskOption.LocalPMemBackingOption"
      vmodl-name="vim.vm.device.VirtualDiskOption.LocalPMemBackingOption"
      enclosing-type-id-ref="vim.vm.device.VirtualDiskOption"
      version-id-ref="vim.version.version12"
      base-type-id="vim.vm.device.VirtualDeviceOption.FileBackingOption"
      >
      <description-html>
         <![CDATA[This data object type contains the available options when backing
  a virtualdisk using persistent memory.]]>
      </description-html>
            <property name="diskMode" type-id-ref="vim.option.ChoiceOption"
      vmodl-name="diskMode"
      >
      <description-html>
         <![CDATA[The disk mode.<br>See <a href="vim.vm.device.VirtualDiskOption.DiskMode.html">VirtualDiskMode</a><br>]]>
      </description-html>
      </property>

            <property name="growable" type-id-ref="BOOLEAN"
      vmodl-name="growable"
      >
      <description-html>
         <![CDATA[Indicates whether or not this disk backing can be
  extended to larger sizes through a reconfigure operation.
  <p>
  If set to true, reconfiguring this virtual disk
  with a <a href="vim.vm.device.VirtualDisk.html#capacityInKB">capacityInKB</a> value greater
  than its current value will grow the disk to the newly specified size.]]>
      </description-html>
      </property>

            <property name="hotGrowable" type-id-ref="BOOLEAN"
      vmodl-name="hotGrowable"
      >
      <description-html>
         <![CDATA[Indicates whether or not this disk backing can be
  extended to larger sizes through a reconfigure operation while
  the virtual machine is powered on.
  <p>
  If set to true, reconfiguring this virtual disk
  with a <a href="vim.vm.device.VirtualDisk.html#capacityInKB">capacityInKB</a> value greater
  than its current value will grow the disk to the newly specified size
  while the virtual machine is powered on.]]>
      </description-html>
      </property>

            <property name="uuid" type-id-ref="BOOLEAN"
      vmodl-name="uuid"
      >
      <description-html>
         <![CDATA[Flag to indicate whether this backing supports disk UUID property.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostPcieTargetTransport"
      type-id="vim.host.PcieTargetTransport"
      vmodl-name="vim.host.PcieTargetTransport"
      version-id-ref="vim.version.v7_0"
      base-type-id="vim.host.TargetTransport"
      >
      <description-html>
         <![CDATA[Peripheral Component Interconnect Express (PCIe)
  transport information about a target.]]>
      </description-html>
   </data-object>
   <data-object name="DvsOutOfSyncHostArgument"
      type-id="vim.event.DvsOutOfSyncHostArgument"
      vmodl-name="vim.event.DvsOutOfSyncHostArgument"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The host on which the DVS configuration is different from that
  of Virtual Center server.]]>
      </description-html>
            <property name="outOfSyncHost" type-id-ref="vim.event.HostEventArgument"
      vmodl-name="outOfSyncHost"
      >
      <description-html>
         <![CDATA[The host.]]>
      </description-html>
      </property>

            <property name="configParamters" type-id-ref="java.lang.String"
      vmodl-name="configParamters"
      is-array="true"
      >
      <description-html>
         <![CDATA[The DVS configuration parameters that are different between
  Virtual Center server and the host.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="PhysicalNicSpec"
      type-id="vim.host.PhysicalNic.Specification"
      vmodl-name="vim.host.PhysicalNic.Specification"
      enclosing-type-id-ref="vim.host.PhysicalNic"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object type describes the physical network adapter specification
  representing the properties on a physical network adapter that
  can be configured once the object exists.]]>
      </description-html>
            <property name="ip" type-id-ref="vim.host.IpConfig"
      vmodl-name="ip"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The IP configuration on the physical network adapter (applies
  only to a hosted network adapter).
  The data object will be NULL on an ESX Server system.]]>
      </description-html>
      </property>

            <property name="linkSpeed" type-id-ref="vim.host.PhysicalNic.LinkSpeedDuplex"
      vmodl-name="linkSpeed"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The link speed and duplexity that this physical network
  adapter is currently
  configured to use.  If this property is not set, the physical
  network adapter autonegotiates its proper settings.]]>
      </description-html>
      </property>

            <property name="enableEnhancedNetworkingStack" type-id-ref="BOOLEAN"
      vmodl-name="enableEnhancedNetworkingStack"
      version-id-ref="vim.version.version12"
      is-optional="true"
      >
      <description-html>
         <![CDATA[If set the flag indicates if the physical network adapter is
 configured for Enhanced Networking Stack]]>
      </description-html>
      </property>

            <property name="ensInterruptEnabled" type-id-ref="BOOLEAN"
      vmodl-name="ensInterruptEnabled"
      version-id-ref="vim.version.v7_0"
      is-optional="true"
      >
      <description-html>
         <![CDATA[If set the flag indicates if the physical network adapter is
 configured for Enhanced Networking Stack interrupt mode]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ConfigTarget"
      type-id="vim.vm.ConfigTarget"
      vmodl-name="vim.vm.ConfigTarget"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The ConfigTarget class contains information about "physical" devices that can
  be used to back virtual devices.]]>
      </description-html>
            <property name="numCpus" type-id-ref="INT"
      vmodl-name="numCpus"
      >
      <description-html>
         <![CDATA[Number of logical CPUs that can be used to run virtual machines.
 If invoked against a cluster, this is the total number of logical CPUs
 available in the cluster.]]>
      </description-html>
      </property>

            <property name="numCpuCores" type-id-ref="INT"
      vmodl-name="numCpuCores"
      >
      <description-html>
         <![CDATA[Number of physical CPU cores that are available to run virtual machines.
 If invoked against a cluster, this is the total number of physical CPUs
 available in the cluster.]]>
      </description-html>
      </property>

            <property name="numNumaNodes" type-id-ref="INT"
      vmodl-name="numNumaNodes"
      >
      <description-html>
         <![CDATA[Number of NUMA nodes.
 If invoked against a cluster, this is the total number of NUMA nodes
 available in the cluster.]]>
      </description-html>
      </property>

            <property name="maxCpusPerHost" type-id-ref="INT"
      vmodl-name="maxCpusPerHost"
      version-id-ref="vim.version.v7_0"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Maximum number of CPUs available on a single host.
 For standalone hosts, this value will be the same as numCpus.]]>
      </description-html>
      </property>

            <property name="smcPresent" type-id-ref="BOOLEAN"
      vmodl-name="smcPresent"
      version-id-ref="vim.version.version7"
      >
      <description-html>
         <![CDATA[Presence of System Management Controller, indicates the host is
 Apple hardware, and thus capable of running Mac OS guest as VM.]]>
      </description-html>
      </property>

            <property name="datastore" type-id-ref="vim.vm.DatastoreInfo"
      vmodl-name="datastore"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of datastores available for virtual disks and associated storage.]]>
      </description-html>
      </property>

            <property name="network" type-id-ref="vim.vm.NetworkInfo"
      vmodl-name="network"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of networks available for virtual network adapters.]]>
      </description-html>
      </property>

            <property name="opaqueNetwork" type-id-ref="vim.vm.OpaqueNetworkInfo"
      vmodl-name="opaqueNetwork"
      version-id-ref="vim.version.version9"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of opaque networks available for virtual network adapters.]]>
      </description-html>
      </property>

            <property name="distributedVirtualPortgroup" type-id-ref="vim.dvs.DistributedVirtualPortgroupInfo"
      vmodl-name="distributedVirtualPortgroup"
      version-id-ref="vim.version.version5"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of networks available from DistributedVirtualSwitch for virtual
  network adapters.]]>
      </description-html>
      </property>

            <property name="distributedVirtualSwitch" type-id-ref="vim.dvs.DistributedVirtualSwitchInfo"
      vmodl-name="distributedVirtualSwitch"
      version-id-ref="vim.version.version5"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of distributed virtual switch available for virtual network
  adapters.]]>
      </description-html>
      </property>

            <property name="cdRom" type-id-ref="vim.vm.CdromInfo"
      vmodl-name="cdRom"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of CD-ROM devices available for use by virtual CD-ROMs.
  Used for
  <a href="vim.vm.device.VirtualCdrom.AtapiBackingInfo.html">VirtualCdromAtapiBackingInfo</a>.]]>
      </description-html>
      </property>

            <property name="serial" type-id-ref="vim.vm.SerialInfo"
      vmodl-name="serial"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of serial devices available to support virtualization.
  Used for
  <a href="vim.vm.device.VirtualSerialPort.DeviceBackingInfo.html">VirtualSerialPortDeviceBackingInfo</a>.]]>
      </description-html>
      </property>

            <property name="parallel" type-id-ref="vim.vm.ParallelInfo"
      vmodl-name="parallel"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of parallel devices available to support virtualization.
  Used for
  <a href="vim.vm.device.VirtualParallelPort.DeviceBackingInfo.html">VirtualParallelPortDeviceBackingInfo</a>.]]>
      </description-html>
      </property>

            <property name="sound" type-id-ref="vim.vm.SoundInfo"
      vmodl-name="sound"
      version-id-ref="vim.version.version2"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of sound devices available to support virtualization.
 Used for
 <a href="vim.vm.device.VirtualSoundCard.DeviceBackingInfo.html">VirtualSoundCardDeviceBackingInfo</a>.]]>
      </description-html>
      </property>

            <property name="usb" type-id-ref="vim.vm.UsbInfo"
      vmodl-name="usb"
      version-id-ref="vim.version.version2"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of USB devices on the host that are available to support
 virtualization.
 Used for
 <a href="vim.vm.device.VirtualUSB.USBBackingInfo.html">VirtualUSBUSBBackingInfo</a>.]]>
      </description-html>
      </property>

            <property name="floppy" type-id-ref="vim.vm.FloppyInfo"
      vmodl-name="floppy"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of floppy devices available for use by virtual floppies.
  Used for
  <a href="vim.vm.device.VirtualFloppy.DeviceBackingInfo.html">VirtualFloppyDeviceBackingInfo</a>.]]>
      </description-html>
      </property>

            <property name="legacyNetworkInfo" type-id-ref="vim.vm.LegacyNetworkSwitchInfo"
      vmodl-name="legacyNetworkInfo"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Legacy switch names when using the LegacyNetworkBacking types.]]>
      </description-html>
      </property>

            <property name="scsiPassthrough" type-id-ref="vim.vm.ScsiPassthroughInfo"
      vmodl-name="scsiPassthrough"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of generic SCSI devices.]]>
      </description-html>
      </property>

            <property name="scsiDisk" type-id-ref="vim.vm.ScsiDiskDeviceInfo"
      vmodl-name="scsiDisk"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of physical SCSI disks that can be used as targets for raw disk mapping
  backings.]]>
      </description-html>
      </property>

            <property name="ideDisk" type-id-ref="vim.vm.IdeDiskDeviceInfo"
      vmodl-name="ideDisk"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of physical IDE disks that can be used as targets for raw disk backings.]]>
      </description-html>
      </property>

            <property name="maxMemMBOptimalPerf" type-id-ref="INT"
      vmodl-name="maxMemMBOptimalPerf"
      >
      <description-html>
         <![CDATA[Maximum recommended memory size, in MB, for creating a new virtual machine.]]>
      </description-html>
      </property>

            <property name="supportedMaxMemMB" type-id-ref="INT"
      vmodl-name="supportedMaxMemMB"
      version-id-ref="vim.version.v7_0"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Maximum supported memory size, in MB, for creating a new virtual machine.
 Maximum allowed size is smaller of this and limit in
 <a href="vim.vm.GuestOsDescriptor.html#supportedMaxMemMB">supportedMaxMemMB</a>.  When invoked on the
 cluster, maximum size that can be created on at least one host
 in the cluster is reported.]]>
      </description-html>
      </property>

            <property name="resourcePool" type-id-ref="vim.ResourcePool.RuntimeInfo"
      vmodl-name="resourcePool"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Information about the current available resources on the current resource pool
  for a virtual machine. This field is only populated from an Environment browser
  obtained from a virtual machine.]]>
      </description-html>
      </property>

            <property name="autoVmotion" type-id-ref="BOOLEAN"
      vmodl-name="autoVmotion"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Information whether a virtual machine with this ConfigTarget can auto vmotion.
 This field is only populated from an Environment browser obtained from a
 virtual machine.]]>
      </description-html>
      </property>

            <property name="pciPassthrough" type-id-ref="vim.vm.PciPassthroughInfo"
      vmodl-name="pciPassthrough"
      version-id-ref="vim.version.version5"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of generic PCI devices.]]>
      </description-html>
      </property>

            <property name="sriov" type-id-ref="vim.vm.SriovInfo"
      vmodl-name="sriov"
      version-id-ref="vim.version.version9"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of SRIOV devices.]]>
      </description-html>
      </property>

            <property name="vFlashModule" type-id-ref="vim.vm.VFlashModuleInfo"
      vmodl-name="vFlashModule"
      version-id-ref="vim.version.version9"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of vFlash modules.]]>
      </description-html>
      </property>

            <property name="sharedGpuPassthroughTypes" type-id-ref="vim.vm.PciSharedGpuPassthroughInfo"
      vmodl-name="sharedGpuPassthroughTypes"
      version-id-ref="vim.version.version10"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of shared GPU passthrough types.]]>
      </description-html>
      </property>

            <property name="availablePersistentMemoryReservationMB" type-id-ref="LONG"
      vmodl-name="availablePersistentMemoryReservationMB"
      version-id-ref="vim.version.version12"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Maximum available persistent memory reservation on a compute resource
 in MB.]]>
      </description-html>
      </property>

            <property name="dynamicPassthrough" type-id-ref="vim.vm.DynamicPassthroughInfo"
      vmodl-name="dynamicPassthrough"
      version-id-ref="vim.version.v7_0"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of Dynamic DirectPath PCI devices.]]>
      </description-html>
      </property>

            <property name="sgxTargetInfo" type-id-ref="vim.vm.SgxTargetInfo"
      vmodl-name="sgxTargetInfo"
      version-id-ref="vim.version.v7_0"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Intel SGX information.]]>
      </description-html>
      </property>

            <property name="precisionClockInfo" type-id-ref="vim.vm.PrecisionClockInfo"
      vmodl-name="precisionClockInfo"
      version-id-ref="vim.version.v7_0"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of host clock resources available to support virtual precision
  clock device. Used for
  <a href="vim.vm.device.VirtualPrecisionClock.SystemClockBackingInfo.html">VirtualPrecisionClockSystemClockBackingInfo</a>]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualMachineMetadataManagerVmMetadataOwner"
      type-id="vim.vm.MetadataManager.VmMetadataOwner"
      vmodl-name="vim.vm.MetadataManager.VmMetadataOwner"
      enclosing-type-id-ref="vim.vm.MetadataManager"
      version-id-ref="vim.version.version9"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[VmMetadataOwner defines the namespace for an owner]]>
      </description-html>
            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      >
      <description-html>
         <![CDATA[A string representing the owner. Valid values come
 from Owner for vSAN datastores.  Otherwise, the
 owner field is interpreted by the implementation based on
 the datastore type.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.vm.MetadataManager.VmMetadataOwner.Owner</nested-type-id-ref>
   </data-object>
   <data-object name="ClusterComputeResourceHostConfigurationProfile"
      type-id="vim.ClusterComputeResource.HostConfigurationProfile"
      vmodl-name="vim.ClusterComputeResource.HostConfigurationProfile"
      enclosing-type-id-ref="vim.ClusterComputeResource"
      version-id-ref="vim.version.version13"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[HostConfigurationProfile describes the configuration of services
 and settings which gets applied on every host in the HCI cluster.]]>
      </description-html>
            <property name="dateTimeConfig" type-id-ref="vim.host.DateTimeConfig"
      vmodl-name="dateTimeConfig"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Date and time settings]]>
      </description-html>
      </property>

            <property name="lockdownMode" type-id-ref="vim.host.HostAccessManager.LockdownMode"
      vmodl-name="lockdownMode"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Desired lockdown mode]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VmRelocatedEvent"
      type-id="vim.event.VmRelocatedEvent"
      vmodl-name="vim.event.VmRelocatedEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.VmRelocateSpecEvent"
      >
      <description-html>
         <![CDATA[This event records the completion of a virtual machine relocation.]]>
      </description-html>
            <property name="sourceHost" type-id-ref="vim.event.HostEventArgument"
      vmodl-name="sourceHost"
      >
      <description-html>
         <![CDATA[The source host from which the virtual machine was relocated.]]>
      </description-html>
      </property>

            <property name="sourceDatacenter" type-id-ref="vim.event.DatacenterEventArgument"
      vmodl-name="sourceDatacenter"
      version-id-ref="vim.version.version7"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The source datacenter from which the virtual machine relocated]]>
      </description-html>
      </property>

            <property name="sourceDatastore" type-id-ref="vim.event.DatastoreEventArgument"
      vmodl-name="sourceDatastore"
      version-id-ref="vim.version.version7"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The source primary datastore from which the virtual machine relocated]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="PassiveNodeDeploymentSpec"
      type-id="vim.vcha.FailoverClusterConfigurator.PassiveNodeDeploymentSpec"
      vmodl-name="vim.vcha.FailoverClusterConfigurator.PassiveNodeDeploymentSpec"
      enclosing-type-id-ref="vim.vcha.FailoverClusterConfigurator"
      version-id-ref="vim.version.version11"
      base-type-id="vim.vcha.FailoverClusterConfigurator.NodeDeploymentSpec"
      >
      <description-html>
         <![CDATA[The PassiveNodeDeploymentSpec class defines VCHA Cluster configuration
  of the Passive node VM in the VCHA Cluster.]]>
      </description-html>
            <property name="failoverIpSettings" type-id-ref="vim.vm.customization.IPSettings"
      vmodl-name="failoverIpSettings"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Failover IP address that this node must assume after the failover
  to serve client requests. If not specified, it will assume the public
  IP address of the Active vCenter Server.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="Capability"
      type-id="vim.Capability"
      vmodl-name="vim.Capability"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[A particular product may or may not support certain features. This data object
  indicates whether or not a service instance implements these features. This data
  object type indicates the circumstances under which an operation throws a
  <a href="vmodl.fault.NotSupported.html">NotSupported</a> fault.
  <p>
  Support for some features is indicated by the presence or absence of
  the manager object from the service instance. For example, the AlarmManager manager
  object indicates collecting alarms is supported.
  Other features indicate whether or not a given operation on an
  object throws a <a href="vmodl.fault.NotSupported.html">NotSupported</a> fault.
  <p>
  Some capabilities depend on the host or virtual machine
  version. These are specified by using the vim.host.Capability and
  vim.vm.Capability objects.]]>
      </description-html>
            <property name="provisioningSupported" type-id-ref="BOOLEAN"
      vmodl-name="provisioningSupported"
      >
      <description-html>
         <![CDATA[Indicates whether or not the service instance supports provisioning.
  For example, the <a href="vim.VirtualMachine.html#clone">CloneVM_Task</a> operation.]]>
      </description-html>
      </property>

            <property name="multiHostSupported" type-id-ref="BOOLEAN"
      vmodl-name="multiHostSupported"
      >
      <description-html>
         <![CDATA[Indicates whether or not the service instance supports multiple hosts.]]>
      </description-html>
      </property>

            <property name="userShellAccessSupported" type-id-ref="BOOLEAN"
      vmodl-name="userShellAccessSupported"
      version-id-ref="vim.version.version2"
      >
      <description-html>
         <![CDATA[Flag indicating whether host user accounts should have the option to
  be granted shell access]]>
      </description-html>
      </property>

            <property name="supportedEVCMode" type-id-ref="vim.EVCMode"
      vmodl-name="supportedEVCMode"
      version-id-ref="vim.version.version5"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[All supported Enhanced VMotion Compatibility modes.]]>
      </description-html>
      </property>

            <property name="networkBackupAndRestoreSupported" type-id-ref="BOOLEAN"
      vmodl-name="networkBackupAndRestoreSupported"
      version-id-ref="vim.version.version8"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates whether network backup and restore feature is supported.]]>
      </description-html>
      </property>

            <property name="ftDrsWithoutEvcSupported" type-id-ref="BOOLEAN"
      vmodl-name="ftDrsWithoutEvcSupported"
      version-id-ref="vim.version.version12"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Is DRS supported for Fault Tolerance VMs without enabling EVC.]]>
      </description-html>
      </property>

            <property name="hciWorkflowSupported" type-id-ref="BOOLEAN"
      vmodl-name="hciWorkflowSupported"
      version-id-ref="vim.version.version13"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Specifies if the workflow for setting up a HCI cluster is supported.]]>
      </description-html>
      </property>

            <property name="computePolicyVersion" type-id-ref="INT"
      vmodl-name="computePolicyVersion"
      version-id-ref="vim.version.v6_8_7"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Specifies the supported compute policy version.]]>
      </description-html>
      </property>

            <property name="clusterPlacementSupported" type-id-ref="BOOLEAN"
      vmodl-name="clusterPlacementSupported"
      version-id-ref="vim.version.v7_0"
      is-optional="true"
      >
      </property>

            <property name="lifecycleManagementSupported" type-id-ref="BOOLEAN"
      vmodl-name="lifecycleManagementSupported"
      version-id-ref="vim.version.v7_0"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Specifies if lifecycle management of a Cluster is supported.]]>
      </description-html>
      </property>

            <property name="scalableSharesSupported" type-id-ref="BOOLEAN"
      vmodl-name="scalableSharesSupported"
      version-id-ref="vim.version.v7_0"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Specifies if scalable shares for resource pools is supported.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="IpPoolAssociation"
      type-id="vim.vApp.IpPool.Association"
      vmodl-name="vim.vApp.IpPool.Association"
      enclosing-type-id-ref="vim.vApp.IpPool"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Information about a network or portgroup that is associated to an IP pool.]]>
      </description-html>
            <property name="network" type-id-ref="vim.Network"
      vmodl-name="network"
      is-optional="true"
      privilege="System.Read"
      >
      <description-html>
         <![CDATA[The network object]]>
      </description-html>
      </property>

            <property name="networkName" type-id-ref="java.lang.String"
      vmodl-name="networkName"
      >
      <description-html>
         <![CDATA[The name of the network or portgroup
 <p>
 This field is only used when querying existing IP pools. It is ignored when
 creating or updating pools.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualNVDIMMOption"
      type-id="vim.vm.device.VirtualNVDIMMOption"
      vmodl-name="vim.vm.device.VirtualNVDIMMOption"
      version-id-ref="vim.version.version12"
      base-type-id="vim.vm.device.VirtualDeviceOption"
      >
      <description-html>
         <![CDATA[The VirtualNVDIMMOption contains information about
  a virtual NVDIMM capacity limits and rules for
  capacity growth operations.]]>
      </description-html>
            <property name="capacityInMB" type-id-ref="vim.option.LongOption"
      vmodl-name="capacityInMB"
      >
      <description-html>
         <![CDATA[Minimum and maximum capacity in MB.]]>
      </description-html>
      </property>

            <property name="growable" type-id-ref="BOOLEAN"
      vmodl-name="growable"
      >
      <description-html>
         <![CDATA[Option to show if device capacity growth is supported for
 powered off VMs.]]>
      </description-html>
      </property>

            <property name="hotGrowable" type-id-ref="BOOLEAN"
      vmodl-name="hotGrowable"
      >
      <description-html>
         <![CDATA[Option to show if device capacity growth is supported for
 powered on VMs.]]>
      </description-html>
      </property>

            <property name="granularityInMB" type-id-ref="LONG"
      vmodl-name="granularityInMB"
      >
      <description-html>
         <![CDATA[Option to show capacity growth granularity if growth operation
 is supported in MB.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualMachineWipeResult"
      type-id="vim.VirtualMachine.WipeResult"
      vmodl-name="vim.VirtualMachine.WipeResult"
      enclosing-type-id-ref="vim.VirtualMachine"
      version-id-ref="vim.version.version8"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Data structure used by wipeDisk to return the amount of disk space that
 can be saved on an Flex-SE disk if a subsequent shrinkDisk API is invoked
 on that disk.]]>
      </description-html>
            <property name="diskId" type-id-ref="INT"
      vmodl-name="diskId"
      >
      <description-html>
         <![CDATA[The disk id for the disk that was wiped.]]>
      </description-html>
      </property>

            <property name="shrinkableDiskSpace" type-id-ref="LONG"
      vmodl-name="shrinkableDiskSpace"
      >
      <description-html>
         <![CDATA[The amount of shrinkable disk space in kB.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="NetIpRouteConfigSpecGatewaySpec"
      type-id="vim.net.IpRouteConfigSpec.GatewaySpec"
      vmodl-name="vim.net.IpRouteConfigSpec.GatewaySpec"
      enclosing-type-id-ref="vim.net.IpRouteConfigSpec"
      version-id-ref="vim.version.version6"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[IpRoute report an individual host, network or default destination network
 reachable through a given gateway.]]>
      </description-html>
            <property name="ipAddress" type-id-ref="java.lang.String"
      vmodl-name="ipAddress"
      is-optional="true"
      >
      </property>

            <property name="device" type-id-ref="java.lang.String"
      vmodl-name="device"
      is-optional="true"
      >
      </property>

   </data-object>
   <data-object name="HostServiceConfig"
      type-id="vim.host.ServiceConfig"
      vmodl-name="vim.host.ServiceConfig"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[DataObject representing configuration for a particular
  service.]]>
      </description-html>
            <property name="serviceId" type-id-ref="java.lang.String"
      vmodl-name="serviceId"
      >
      <description-html>
         <![CDATA[Key of the service to configure.]]>
      </description-html>
      </property>

            <property name="startupPolicy" type-id-ref="java.lang.String"
      vmodl-name="startupPolicy"
      >
      <description-html>
         <![CDATA[Startup policy which defines how the service be configured.
     See]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="LocalTSMEnabledEvent"
      type-id="vim.event.LocalTSMEnabledEvent"
      vmodl-name="vim.event.LocalTSMEnabledEvent"
      version-id-ref="vim.version.version6"
      base-type-id="vim.event.HostEvent"
      >
      <description-html>
         <![CDATA[Local Tech Support Mode for the host has been enabled.]]>
      </description-html>
   </data-object>
   <data-object name="NvdimmNamespaceDetails"
      type-id="vim.host.NvdimmSystem.NamespaceDetails"
      vmodl-name="vim.host.NvdimmSystem.NamespaceDetails"
      enclosing-type-id-ref="vim.host.NvdimmSystem"
      version-id-ref="vim.version.version13"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Detailed information about a particular namespace.]]>
      </description-html>
            <property name="uuid" type-id-ref="java.lang.String"
      vmodl-name="uuid"
      >
      <description-html>
         <![CDATA[Universally unique identifier assigned to namespace
  in string format]]>
      </description-html>
      </property>

            <property name="friendlyName" type-id-ref="java.lang.String"
      vmodl-name="friendlyName"
      >
      <description-html>
         <![CDATA[Human readable name of namespace]]>
      </description-html>
      </property>

            <property name="size" type-id-ref="LONG"
      vmodl-name="size"
      >
      <description-html>
         <![CDATA[Size of namespace in bytes.]]>
      </description-html>
      </property>

            <property name="type" type-id-ref="java.lang.String"
      vmodl-name="type"
      >
      <description-html>
         <![CDATA[Type of the namespace to be created - block or persistent.
  Must be one of the values in
  NamespaceType]]>
      </description-html>
      </property>

            <property name="namespaceHealthStatus" type-id-ref="java.lang.String"
      vmodl-name="namespaceHealthStatus"
      >
      <description-html>
         <![CDATA[Health status of DIMM(s) part of the namespace.
  Must be one of the values of
  NamespaceDetails.NamespaceHealthStatus]]>
      </description-html>
      </property>

            <property name="interleavesetID" type-id-ref="INT"
      vmodl-name="interleavesetID"
      >
      <description-html>
         <![CDATA[The interleave set ID of the namespace.]]>
      </description-html>
      </property>

            <property name="state" type-id-ref="java.lang.String"
      vmodl-name="state"
      >
      <description-html>
         <![CDATA[State of namespace.
  Must be one of
  NamespaceDetails.NamespaceState]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.host.NvdimmSystem.NamespaceDetails.NamespaceHealthStatus</nested-type-id-ref>
      <nested-type-id-ref>vim.host.NvdimmSystem.NamespaceDetails.NamespaceState</nested-type-id-ref>
   </data-object>
   <data-object name="LocalDatastoreCreatedEvent"
      type-id="vim.event.LocalDatastoreCreatedEvent"
      vmodl-name="vim.event.LocalDatastoreCreatedEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.HostEvent"
      >
      <description-html>
         <![CDATA[This event records when a local datastore is created.]]>
      </description-html>
            <property name="datastore" type-id-ref="vim.event.DatastoreEventArgument"
      vmodl-name="datastore"
      >
      <description-html>
         <![CDATA[The associated datastore.]]>
      </description-html>
      </property>

            <property name="datastoreUrl" type-id-ref="java.lang.String"
      vmodl-name="datastoreUrl"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Url of the associated datastore.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="OptionProfile"
      type-id="vim.profile.host.OptionProfile"
      vmodl-name="vim.profile.host.OptionProfile"
      version-id-ref="vim.version.version5"
      base-type-id="vim.profile.ApplyProfile"
      >
      <description-html>
         <![CDATA[The <a href="vim.profile.host.OptionProfile.html">OptionProfile</a> data object encapsulates one advanced configuration.
 Use the <a href="vim.profile.ApplyProfile.html#policy">policy</a> list for access to configuration data
 for the option profile. Use the <a href="vim.profile.ApplyProfile.html#property">property</a> list for access
 to subprofile configuration data, if any.]]>
      </description-html>
            <property name="key" type-id-ref="java.lang.String"
      vmodl-name="key"
      >
      <description-html>
         <![CDATA[Linkable identifier.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostLicenseConnectInfo"
      type-id="vim.host.ConnectInfo.LicenseInfo"
      vmodl-name="vim.host.ConnectInfo.LicenseInfo"
      enclosing-type-id-ref="vim.host.ConnectInfo"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object type describes license information stored on the host.]]>
      </description-html>
            <property name="license" type-id-ref="vim.LicenseManager.LicenseInfo"
      vmodl-name="license"
      >
      <description-html>
         <![CDATA[License information.]]>
      </description-html>
      </property>

            <property name="evaluation" type-id-ref="vim.LicenseManager.EvaluationInfo"
      vmodl-name="evaluation"
      >
      <description-html>
         <![CDATA[Evaluation information.]]>
      </description-html>
      </property>

            <property name="resource" type-id-ref="vim.LicenseManager.LicensableResourceInfo"
      vmodl-name="resource"
      version-id-ref="vim.version.version7"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Licensable resources information.
 <p>NOTE:
   The values in this property may not be accurate for pre-5.0 hosts when returned by vCenter 5.0]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="SessionTerminatedEvent"
      type-id="vim.event.SessionTerminatedEvent"
      vmodl-name="vim.event.SessionTerminatedEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.SessionEvent"
      >
      <description-html>
         <![CDATA[This event records the termination of a session.]]>
      </description-html>
            <property name="sessionId" type-id-ref="java.lang.String"
      vmodl-name="sessionId"
      >
      <description-html>
         <![CDATA[The unique identifier of the terminated session.]]>
      </description-html>
      </property>

            <property name="terminatedUsername" type-id-ref="java.lang.String"
      vmodl-name="terminatedUsername"
      >
      <description-html>
         <![CDATA[The name of the user owning the terminated session.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostTpmCommandEventDetails"
      type-id="vim.host.TpmCommandEventDetails"
      vmodl-name="vim.host.TpmCommandEventDetails"
      version-id-ref="vim.version.version8"
      base-type-id="vim.host.TpmEventDetails"
      >
      <description-html>
         <![CDATA[Details of an Trusted Platform Module (TPM) event recording options entered
  manually on the command line prompt at boot time.]]>
      </description-html>
            <property name="commandLine" type-id-ref="java.lang.String"
      vmodl-name="commandLine"
      >
      <description-html>
         <![CDATA[Boot options as entered on the command line prompt at boot time.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ProfileMetadata"
      type-id="vim.profile.ProfileMetadata"
      vmodl-name="vim.profile.ProfileMetadata"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object represents the metadata information of a Profile.]]>
      </description-html>
            <property name="key" type-id-ref="vmodl.TypeName"
      vmodl-name="key"
      >
      <description-html>
         <![CDATA[Type of the Profile]]>
      </description-html>
      </property>

            <property name="profileTypeName" type-id-ref="java.lang.String"
      vmodl-name="profileTypeName"
      version-id-ref="vim.version.version7"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Type identifier for the ApplyProfile]]>
      </description-html>
      </property>

            <property name="description" type-id-ref="vim.ExtendedDescription"
      vmodl-name="description"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Property which describes the profile]]>
      </description-html>
      </property>

            <property name="sortSpec" type-id-ref="vim.profile.ProfileMetadata.ProfileSortSpec"
      vmodl-name="sortSpec"
      version-id-ref="vim.version.version7"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Property that determines a sorting order for display purposes. If
 the list contains more than one sort spec, then the precedence should
 be determined by the list order (i.e. sort first by the first spec in
 the list, then sort by the second spec in the list, etc).]]>
      </description-html>
      </property>

            <property name="profileCategory" type-id-ref="java.lang.String"
      vmodl-name="profileCategory"
      version-id-ref="vim.version.version8"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Identifies the profile category that this subprofile is a part of. The
 value of this string should correspond to the key value of a
 <a href="vim.profile.ProfileCategoryMetadata.html">ProfileCategoryMetadata</a> object's <a href="vim.ElementDescription.html#key">key</a>
 in its <a href="vim.profile.ProfileCategoryMetadata.html#id">id</a> property.]]>
      </description-html>
      </property>

            <property name="profileComponent" type-id-ref="java.lang.String"
      vmodl-name="profileComponent"
      version-id-ref="vim.version.version8"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Property indicating that the subprofile described by this
 <code>ProfileMetadata</code> object is declared in the
 <a href="vim.profile.ProfileComponentMetadata.html#profileTypeNames">profileTypeNames</a> of the specified
 profile component. The value of this property should correspond to the key
 value of the <a href="vim.profile.ProfileComponentMetadata.html">ProfileComponentMetadata</a> object's
 <a href="vim.ElementDescription.html#key">key</a> in its
 <a href="vim.profile.ProfileComponentMetadata.html#id">id</a> property.

 This property should not be present for subprofiles that are not directly
 declared in the <a href="vim.profile.ProfileComponentMetadata.html#profileTypeNames">profileTypeNames</a>
 property of a <a href="vim.profile.ProfileComponentMetadata.html">ProfileComponentMetadata</a> object.]]>
      </description-html>
      </property>

            <property name="operationMessages" type-id-ref="vim.profile.ProfileMetadata.ProfileOperationMessage"
      vmodl-name="operationMessages"
      version-id-ref="vim.version.version12"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[A list of <code>ProfileOperationMessage</code> for this profile.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.profile.ProfileMetadata.ProfileSortSpec</nested-type-id-ref>
      <nested-type-id-ref>vim.profile.ProfileMetadata.ProfileOperationMessage</nested-type-id-ref>
   </data-object>
   <data-object name="HostAdminEnableEvent"
      type-id="vim.event.HostAdminEnableEvent"
      vmodl-name="vim.event.HostAdminEnableEvent"
      version-id-ref="vim.version.version2"
      base-type-id="vim.event.HostEvent"
      >
      <description-html>
         <![CDATA[This event records that the administrator permission has been restored.]]>
      </description-html>
   </data-object>
   <data-object name="ClusterSlotPolicy"
      type-id="vim.cluster.SlotPolicy"
      vmodl-name="vim.cluster.SlotPolicy"
      version-id-ref="vim.version.version8"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The base class <a href="vim.cluster.SlotPolicy.html">ClusterSlotPolicy</a> is used for specifying how
 the slot size is to be computed for the failover level HA admission control
 policy. By default, vSphere HA defines the slot size using the largest memory
 and cpu reservations of any powered on virtual machine in the cluster.
 Subclasses of this class define various policies to modify how the slot size
 is chosen to prevent outlier virtual machines (i.e. those with much larger
 reservations than the average) from skewing the slot size. If such a policy is chosen,
 outlier virtual machines will use multiple slots. Using such a policy introduces
 a risk that vSphere HA will be unable to failover these virtual machines because
 of resource fragmentation.]]>
      </description-html>
   </data-object>
   <data-object name="HostRdmaDeviceCapability"
      type-id="vim.host.RdmaDevice.Capability"
      vmodl-name="vim.host.RdmaDevice.Capability"
      enclosing-type-id-ref="vim.host.RdmaDevice"
      version-id-ref="vim.version.v7_0"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Represents device capabilies, e.g. supported protocols.]]>
      </description-html>
            <property name="roceV1Capable" type-id-ref="BOOLEAN"
      vmodl-name="roceV1Capable"
      >
      <description-html>
         <![CDATA[Indicates whether ROCEv1 is supported by the device.]]>
      </description-html>
      </property>

            <property name="roceV2Capable" type-id-ref="BOOLEAN"
      vmodl-name="roceV2Capable"
      >
      <description-html>
         <![CDATA[Indicates whether ROCEv2 is supported by the device.]]>
      </description-html>
      </property>

            <property name="iWarpCapable" type-id-ref="BOOLEAN"
      vmodl-name="iWarpCapable"
      >
      <description-html>
         <![CDATA[Indicates whether iWARP is supported by the device.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="FolderBatchAddHostsToClusterResult"
      type-id="vim.Folder.BatchAddHostsToClusterResult"
      vmodl-name="vim.Folder.BatchAddHostsToClusterResult"
      enclosing-type-id-ref="vim.Folder"
      version-id-ref="vim.version.version13"
      base-type-id="vmodl.DynamicData"
      >
            <property name="hostsAddedToCluster" type-id-ref="vim.HostSystem"
      vmodl-name="hostsAddedToCluster"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of hosts that were successfully added to the cluster
  in the desired state.]]>
      </description-html>
      </property>

            <property name="hostsFailedInventoryAdd" type-id-ref="vim.Folder.FailedHostResult"
      vmodl-name="hostsFailedInventoryAdd"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Contains a fault for each host that failed addition to the inventory.
  A failed host will not be part of hostsAddedToCluster list.]]>
      </description-html>
      </property>

            <property name="hostsFailedMoveToCluster" type-id-ref="vim.Folder.FailedHostResult"
      vmodl-name="hostsFailedMoveToCluster"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of hosts that are part of inventory but failed to move to the
  cluster in the desired state.
  A failed host will not be part of hostsAddedToCluster list however,
  a failed host will be part of inventory as it might have been added
  as a standalone host but failed to move to cluster in the desired
  state.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualMachineVMIROM"
      type-id="vim.vm.device.VirtualVMIROM"
      vmodl-name="vim.vm.device.VirtualVMIROM"
      version-id-ref="vim.version.version2"
      is-deprecated="true"
      base-type-id="vim.vm.device.VirtualDevice"
      >
      <description-html>
         <![CDATA[The VirtualVMIROM data object type represents the ROM on the
 virtual machine's PCI bus that provides support for VMI.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 6.0. On vSphere 6.0 and later
 platforms, the VMIROM device does not provide any functionality.]]>
      </deprecated-html>
   </data-object>
   <data-object name="VAppCloneSpecResourceMap"
      type-id="vim.vApp.CloneSpec.ResourceMap"
      vmodl-name="vim.vApp.CloneSpec.ResourceMap"
      enclosing-type-id-ref="vim.vApp.CloneSpec"
      version-id-ref="vim.version.version6"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Maps source child entities to destination resource pools
  and resource settings. If a mapping is not specified,
  a child is copied as a direct child of the parent.]]>
      </description-html>
            <property name="source" type-id-ref="vim.ManagedEntity"
      vmodl-name="source"
      >
      <description-html>
         <![CDATA[Source entity]]>
      </description-html>
      </property>

            <property name="parent" type-id-ref="vim.ResourcePool"
      vmodl-name="parent"
      is-optional="true"
      privilege="Resource.AssignVAppToPool"
      >
      <description-html>
         <![CDATA[Resource pool to use for the cloned entity of source. This must specify a
  resource pool that is not part of the vApp. If this is specified, a linked
  child (as opposed to a direct child) is created for the vApp.]]>
      </description-html>
      </property>

            <property name="resourceSpec" type-id-ref="vim.ResourceConfigSpec"
      vmodl-name="resourceSpec"
      is-optional="true"
      >
      <description-html>
         <![CDATA[An optional resource configuration for the cloned entity of the source. If
  not specified, the same resource configuration as the source is used.]]>
      </description-html>
      </property>

            <property name="location" type-id-ref="vim.Datastore"
      vmodl-name="location"
      is-optional="true"
      privilege="Datastore.AllocateSpace"
      >
      <description-html>
         <![CDATA[A client can optionally specify a datastore in the resource map to
  override the default datastore location set in <a href="vim.vApp.CloneSpec.ResourceMap.html#location">location</a> field. This
  enables cloning to different compute resources that do not have shared
  datastores.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VmBeingMigratedEvent"
      type-id="vim.event.VmBeingMigratedEvent"
      vmodl-name="vim.event.VmBeingMigratedEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.VmEvent"
      >
      <description-html>
         <![CDATA[This event records that a virtual machine is being migrated.]]>
      </description-html>
            <property name="destHost" type-id-ref="vim.event.HostEventArgument"
      vmodl-name="destHost"
      >
      <description-html>
         <![CDATA[The destination host.]]>
      </description-html>
      </property>

            <property name="destDatacenter" type-id-ref="vim.event.DatacenterEventArgument"
      vmodl-name="destDatacenter"
      version-id-ref="vim.version.version7"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The destination datacenter]]>
      </description-html>
      </property>

            <property name="destDatastore" type-id-ref="vim.event.DatastoreEventArgument"
      vmodl-name="destDatastore"
      version-id-ref="vim.version.version7"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The destination primary datastore]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualPCNet32"
      type-id="vim.vm.device.VirtualPCNet32"
      vmodl-name="vim.vm.device.VirtualPCNet32"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.device.VirtualEthernetCard"
      >
      <description-html>
         <![CDATA[This data object type defines the properties
  of an AMD Lance PCNet32 Ethernet card attached to a virtual machine.]]>
      </description-html>
   </data-object>
   <data-object name="PlacementAction"
      type-id="vim.cluster.PlacementAction"
      vmodl-name="vim.cluster.PlacementAction"
      version-id-ref="vim.version.version10"
      base-type-id="vim.cluster.Action"
      >
      <description-html>
         <![CDATA[Describes a placement action of a single virtual machine.
 One or more of such actions can be included in a placement recommendation,
 and such recommendations can be generated by the
 <a href="vim.ClusterComputeResource.html#placeVm">PlaceVm</a> method.]]>
      </description-html>
            <property name="vm" type-id-ref="vim.VirtualMachine"
      vmodl-name="vm"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Virtual machine reference.
  Unset if the VM has not been created.]]>
      </description-html>
      </property>

            <property name="targetHost" type-id-ref="vim.HostSystem"
      vmodl-name="targetHost"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The host where the virtual machine should be placed.
  Unset if no host recommendation is provided.]]>
      </description-html>
      </property>

            <property name="relocateSpec" type-id-ref="vim.vm.RelocateSpec"
      vmodl-name="relocateSpec"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Specification for placing the configuration files and the virtual
  disks of the virtual machine on one or more datastores.
  Unset if no datastore recommendation is provided.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="BaseConfigInfoRawDiskMappingBackingInfo"
      type-id="vim.vslm.BaseConfigInfo.RawDiskMappingBackingInfo"
      vmodl-name="vim.vslm.BaseConfigInfo.RawDiskMappingBackingInfo"
      enclosing-type-id-ref="vim.vslm.BaseConfigInfo"
      version-id-ref="vim.version.version11"
      base-type-id="vim.vslm.BaseConfigInfo.FileBackingInfo"
      >
      <description-html>
         <![CDATA[This data object type contains information about raw device mapping.]]>
      </description-html>
            <property name="lunUuid" type-id-ref="java.lang.String"
      vmodl-name="lunUuid"
      >
      <description-html>
         <![CDATA[Unique identifier of the LUN accessed by the raw disk mapping.]]>
      </description-html>
      </property>

            <property name="compatibilityMode" type-id-ref="java.lang.String"
      vmodl-name="compatibilityMode"
      >
      <description-html>
         <![CDATA[The compatibility mode of the raw disk mapping (RDM). This must be
  specified when a new virtual disk with an RDM backing is created.<br>See <a href="vim.vm.device.VirtualDiskOption.CompatibilityMode.html">VirtualDiskCompatibilityMode</a><br>]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="EventFilterSpecByEntity"
      type-id="vim.event.EventFilterSpec.ByEntity"
      vmodl-name="vim.event.EventFilterSpec.ByEntity"
      enclosing-type-id-ref="vim.event.EventFilterSpec"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This option specifies a managed entity used to filter event history.

  If the specified managed entity is a Folder or a ResourcePool, the query
  will actually be performed on the entities contained within that Folder
  or ResourcePool, so you cannot query for events on Folders and
  ResourcePools themselves this way.]]>
      </description-html>
            <property name="entity" type-id-ref="vim.ManagedEntity"
      vmodl-name="entity"
      privilege="System.View"
      >
      <description-html>
         <![CDATA[The managed entity to which the event pertains.]]>
      </description-html>
      </property>

            <property name="recursion" type-id-ref="vim.event.EventFilterSpec.RecursionOption"
      vmodl-name="recursion"
      >
      <description-html>
         <![CDATA[Specification of related managed entities in the inventory hierarchy.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="EvaluationLicenseSource"
      type-id="vim.LicenseManager.EvaluationLicense"
      vmodl-name="vim.LicenseManager.EvaluationLicense"
      enclosing-type-id-ref="vim.LicenseManager"
      version-id-ref="vim.version.version2"
      is-deprecated="true"
      base-type-id="vim.LicenseManager.LicenseSource"
      >
      <description-html>
         <![CDATA[Specify an evaluation license source.
 Feature licensing is not required while the remaining hours is greater than zero.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 4.0, this is not used by the system.]]>
      </deprecated-html>
            <property name="remainingHours" type-id-ref="LONG"
      vmodl-name="remainingHours"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The number of remaining hours before product evaluation expires]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ExtExtendedProductInfo"
      type-id="vim.ext.ExtendedProductInfo"
      vmodl-name="vim.ext.ExtendedProductInfo"
      version-id-ref="vim.version.version7"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object encapsulates extended product information for an extension.]]>
      </description-html>
            <property name="companyUrl" type-id-ref="java.lang.String"
      vmodl-name="companyUrl"
      is-optional="true"
      >
      <description-html>
         <![CDATA[URL to extension vendor.]]>
      </description-html>
      </property>

            <property name="productUrl" type-id-ref="java.lang.String"
      vmodl-name="productUrl"
      is-optional="true"
      >
      <description-html>
         <![CDATA[URL to vendor's description of this extension.]]>
      </description-html>
      </property>

            <property name="managementUrl" type-id-ref="java.lang.String"
      vmodl-name="managementUrl"
      is-optional="true"
      >
      <description-html>
         <![CDATA[URL to management UI for this extension.]]>
      </description-html>
      </property>

            <property name="self" type-id-ref="vim.ManagedEntity"
      vmodl-name="self"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The VirtualMachine or VirtualApp that is running this extension.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="TaskInfo"
      type-id="vim.TaskInfo"
      vmodl-name="vim.TaskInfo"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object type contains all information about a task. A task
  represents an operation performed by VirtualCenter or ESX.]]>
      </description-html>
            <property name="key" type-id-ref="java.lang.String"
      vmodl-name="key"
      >
      <description-html>
         <![CDATA[The unique key for the task.]]>
      </description-html>
      </property>

            <property name="task" type-id-ref="vim.Task"
      vmodl-name="task"
      >
      <description-html>
         <![CDATA[The managed object that represents this task.]]>
      </description-html>
      </property>

            <property name="description" type-id-ref="vmodl.LocalizableMessage"
      vmodl-name="description"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The description field of the task describes the current phase of
  operation of the task. For a task that does a single monolithic
  activity, this will be fixed and unchanging.
  For tasks that have various substeps, this field will change
  as the task progresses from one phase to another.]]>
      </description-html>
      </property>

            <property name="name" type-id-ref="vmodl.MethodName"
      vmodl-name="name"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The name of the operation that created the task. This is not set
  for internal tasks.]]>
      </description-html>
      </property>

            <property name="descriptionId" type-id-ref="java.lang.String"
      vmodl-name="descriptionId"
      >
      <description-html>
         <![CDATA[An identifier for this operation. This includes publicly visible
 internal tasks and is a lookup in the TaskDescription methodInfo
 data object.]]>
      </description-html>
      </property>

            <property name="entity" type-id-ref="vim.ManagedEntity"
      vmodl-name="entity"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Managed entity to which the operation applies.]]>
      </description-html>
      </property>

            <property name="entityName" type-id-ref="java.lang.String"
      vmodl-name="entityName"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The name of the managed entity, locale-specific, retained for the
  history collector database.]]>
      </description-html>
      </property>

            <property name="locked" type-id-ref="vim.ManagedEntity"
      vmodl-name="locked"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[If the state of the task is "running", then this property is a list of
  managed entities that the operation has locked, with a shared lock.]]>
      </description-html>
      </property>

            <property name="state" type-id-ref="vim.TaskInfo.State"
      vmodl-name="state"
      >
      <description-html>
         <![CDATA[Runtime status of the task.]]>
      </description-html>
      </property>

            <property name="cancelled" type-id-ref="BOOLEAN"
      vmodl-name="cancelled"
      >
      <description-html>
         <![CDATA[Flag to indicate whether or not the client requested
  cancellation of the task.]]>
      </description-html>
      </property>

            <property name="cancelable" type-id-ref="BOOLEAN"
      vmodl-name="cancelable"
      >
      <description-html>
         <![CDATA[Flag to indicate whether or not the cancel task operation is supported.]]>
      </description-html>
      </property>

            <property name="error" type-id-ref="vmodl.LocalizedMethodFault"
      vmodl-name="error"
      is-optional="true"
      >
      <description-html>
         <![CDATA[If the task state is "error", then this property contains the fault code.]]>
      </description-html>
      </property>

            <property name="result" type-id-ref="vmodl.Any"
      vmodl-name="result"
      is-optional="true"
      >
      <description-html>
         <![CDATA[If the task state is "success", then this property may be used
  to hold a return value.]]>
      </description-html>
      </property>

            <property name="progress" type-id-ref="INT"
      vmodl-name="progress"
      is-optional="true"
      >
      <description-html>
         <![CDATA[If the task state is "running", then this property contains a
  progress measurement, expressed as percentage completed, from 0 to 100.
  <p>
  If this property is not set, then the command does not report progress.]]>
      </description-html>
      </property>

            <property name="reason" type-id-ref="vim.TaskReason"
      vmodl-name="reason"
      >
      <description-html>
         <![CDATA[Kind of entity responsible for creating this task.]]>
      </description-html>
      </property>

            <property name="queueTime" type-id-ref="vmodl.DateTime"
      vmodl-name="queueTime"
      >
      <description-html>
         <![CDATA[Time stamp when the task was created.]]>
      </description-html>
      </property>

            <property name="startTime" type-id-ref="vmodl.DateTime"
      vmodl-name="startTime"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Time stamp when the task started running.]]>
      </description-html>
      </property>

            <property name="completeTime" type-id-ref="vmodl.DateTime"
      vmodl-name="completeTime"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Time stamp when the task was completed (whether success or failure).]]>
      </description-html>
      </property>

            <property name="eventChainId" type-id-ref="INT"
      vmodl-name="eventChainId"
      >
      <description-html>
         <![CDATA[Event chain ID that leads to the corresponding events.]]>
      </description-html>
      </property>

            <property name="changeTag" type-id-ref="java.lang.String"
      vmodl-name="changeTag"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The user entered tag to identify the operations and their side effects]]>
      </description-html>
      </property>

            <property name="parentTaskKey" type-id-ref="java.lang.String"
      vmodl-name="parentTaskKey"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Tasks can be created by another task. This shows <a href="vim.TaskInfo.html#key">key</a> of the task spun off this task. This is to
 track causality between tasks.]]>
      </description-html>
      </property>

            <property name="rootTaskKey" type-id-ref="java.lang.String"
      vmodl-name="rootTaskKey"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Tasks can be created by another task and such creation can go on for
 multiple levels. This is the <a href="vim.TaskInfo.html#key">key</a> of the task
 that started the chain of tasks.]]>
      </description-html>
      </property>

            <property name="activationId" type-id-ref="java.lang.String"
      vmodl-name="activationId"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The activation Id is a client-provided token to link an API call with a task.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.TaskInfo.State</nested-type-id-ref>
   </data-object>
   <data-object name="ProfileApplyProfileElement"
      type-id="vim.profile.ApplyProfileElement"
      vmodl-name="vim.profile.ApplyProfileElement"
      version-id-ref="vim.version.version7"
      base-type-id="vim.profile.ApplyProfile"
      >
      <description-html>
         <![CDATA[DataObject which represents an ApplyProfile element.
 An ApplyProfile element is an ApplyProfile for a set of host
 configuration settings which may be instanced.
 For example, there may be multiple virtual switch instances
 represented by individual ApplyProfileElement DataObjects.]]>
      </description-html>
            <property name="key" type-id-ref="java.lang.String"
      vmodl-name="key"
      >
      <description-html>
         <![CDATA[The linkable identifier.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostMultipathInfoPath"
      type-id="vim.host.MultipathInfo.Path"
      vmodl-name="vim.host.MultipathInfo.Path"
      enclosing-type-id-ref="vim.host.MultipathInfo"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The <a href="vim.host.MultipathInfo.Path.html">HostMultipathInfoPath</a> data object
  is a storage entity that represents a topological path from a
  host bus adapter to a SCSI logical unit.  Each path is unique although each
  host bus adapter/SCSI logical unit pair can have multiple paths.
  <p>
  Path objects are identified by a key.  The specifics of how
  the key is formatted are dependent on the implementation.  Example
  implementations include using strings like "vmhba1:0:0:0".]]>
      </description-html>
            <property name="key" type-id-ref="java.lang.String"
      vmodl-name="key"
      >
      <description-html>
         <![CDATA[Identifier of the path.]]>
      </description-html>
      </property>

            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      >
      <description-html>
         <![CDATA[Name of path.
  <p>
  Use this name to configure LogicalUnit multipathing policy using <a href="vim.host.StorageSystem.html#enableMultipathPath">EnableMultipathPath</a> and <a href="vim.host.StorageSystem.html#disableMultipathPath">DisableMultipathPath</a>.]]>
      </description-html>
      </property>

            <property name="pathState" type-id-ref="java.lang.String"
      vmodl-name="pathState"
      is-deprecated="true"
      >
      <description-html>
         <![CDATA[State of the path.  Must be one of the values of
  <a href="vim.host.MultipathInfo.PathState.html">MultipathState</a>
  <dl>
    <dt>active</dt>
    <dd>Path can be used for I/O and is currently a working path.</dd>
    <dt>standby</dt>
    <dd>Path can be used for I/O but is not a working path or can be
    used if active paths fail.</dd>
    <dt>disabled</dt>
    <dd>Path has been administratively disabled.</dd>
    <dt>dead</dt>
    <dd>Path cannot be used for I/O.</dd>
    <dt>unknown</dt>
    <dd>Path is in unknown error state.</dd>
  </dl>]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of VI API 4.0:
  <ul>
  <li>System reported path states are available in <a href="vim.host.MultipathInfo.Path.html#state">state</a>.</li>
  <li>Paths slated for I/O can be found using <a href="vim.host.MultipathInfo.Path.html#isWorkingPath">isWorkingPath</a>.</li>
  </ul>]]>
      </deprecated-html>
      </property>

            <property name="state" type-id-ref="java.lang.String"
      vmodl-name="state"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[System-reported state of the path. Must be one of the values of
  <a href="vim.host.MultipathInfo.PathState.html">MultipathState</a>
 <dl>
    <dt>active</dt>
    <dd>Path can be used for I/O.</dd>
    <dt>standby</dt>
    <dd>Path can be used for I/O if active paths fail.</dd>
    <dt>disabled</dt>
    <dd>Path has been administratively disabled.</dd>
    <dt>dead</dt>
    <dd>Path cannot be used for I/O.</dd>
    <dt>unknown</dt>
    <dd>Path is in unknown error state.</dd>
 </dl>]]>
      </description-html>
      </property>

            <property name="isWorkingPath" type-id-ref="BOOLEAN"
      vmodl-name="isWorkingPath"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[A path, managed by a given path selection policy(psp) plugin, is
 denoted to be a Working Path if the psp plugin is likely to select the
 path for performing I/O in the near future.]]>
      </description-html>
      </property>

            <property name="adapter" type-id-ref="vim.host.HostBusAdapter"
      vmodl-name="adapter"
      is-link="true"
      >
      <description-html>
         <![CDATA[The host bus adapter at one endpoint of this path.]]>
      </description-html>
      </property>

            <property name="lun" type-id-ref="vim.host.MultipathInfo.LogicalUnit"
      vmodl-name="lun"
      is-link="true"
      >
      <description-html>
         <![CDATA[The logical unit at one endpoint of this path.]]>
      </description-html>
      </property>

            <property name="transport" type-id-ref="vim.host.TargetTransport"
      vmodl-name="transport"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Transport information for the target end of the path.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="GuestOsDescriptor"
      type-id="vim.vm.GuestOsDescriptor"
      vmodl-name="vim.vm.GuestOsDescriptor"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object type contains information to describe a
  particular guest operating system.]]>
      </description-html>
            <property name="id" type-id-ref="java.lang.String"
      vmodl-name="id"
      >
      <description-html>
         <![CDATA[Identifier (short name) for the guest operating system.]]>
      </description-html>
      </property>

            <property name="family" type-id-ref="java.lang.String"
      vmodl-name="family"
      >
      <description-html>
         <![CDATA[Family to which this guest operating system belongs.]]>
      </description-html>
      </property>

            <property name="fullName" type-id-ref="java.lang.String"
      vmodl-name="fullName"
      is-localizable="true"
      >
      <description-html>
         <![CDATA[Full name of the guest operating system.
  For example, if the value of "id" is "win2000Pro", then
  the value of "fullName" is "Windows 2000 Professional".]]>
      </description-html>
      </property>

            <property name="supportedMaxCPUs" type-id-ref="INT"
      vmodl-name="supportedMaxCPUs"
      >
      <description-html>
         <![CDATA[Maximum number of processors supported for this guest.]]>
      </description-html>
      </property>

            <property name="numSupportedPhysicalSockets" type-id-ref="INT"
      vmodl-name="numSupportedPhysicalSockets"
      version-id-ref="vim.version.version7"
      >
      <description-html>
         <![CDATA[Maximum number of sockets supported for this guest.]]>
      </description-html>
      </property>

            <property name="numSupportedCoresPerSocket" type-id-ref="INT"
      vmodl-name="numSupportedCoresPerSocket"
      version-id-ref="vim.version.version7"
      >
      <description-html>
         <![CDATA[Maximum number of cores per socket for this guest.]]>
      </description-html>
      </property>

            <property name="supportedMinMemMB" type-id-ref="INT"
      vmodl-name="supportedMinMemMB"
      >
      <description-html>
         <![CDATA[Minimum memory requirements supported for this guest, in MB.]]>
      </description-html>
      </property>

            <property name="supportedMaxMemMB" type-id-ref="INT"
      vmodl-name="supportedMaxMemMB"
      >
      <description-html>
         <![CDATA[Maximum memory requirements supported for this guest, in MB.]]>
      </description-html>
      </property>

            <property name="recommendedMemMB" type-id-ref="INT"
      vmodl-name="recommendedMemMB"
      >
      <description-html>
         <![CDATA[Recommended default memory size for this guest, in MB.]]>
      </description-html>
      </property>

            <property name="recommendedColorDepth" type-id-ref="INT"
      vmodl-name="recommendedColorDepth"
      >
      <description-html>
         <![CDATA[Recommended default color depth for this guest.]]>
      </description-html>
      </property>

            <property name="supportedDiskControllerList" type-id-ref="vmodl.TypeName"
      vmodl-name="supportedDiskControllerList"
      is-array="true"
      >
      <description-html>
         <![CDATA[List of supported disk controller types for this guest.]]>
      </description-html>
      </property>

            <property name="recommendedSCSIController" type-id-ref="vmodl.TypeName"
      vmodl-name="recommendedSCSIController"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Recommended default SCSI controller type for this guest.]]>
      </description-html>
      </property>

            <property name="recommendedDiskController" type-id-ref="vmodl.TypeName"
      vmodl-name="recommendedDiskController"
      >
      <description-html>
         <![CDATA[Recommended default disk controller type for this guest.]]>
      </description-html>
      </property>

            <property name="supportedNumDisks" type-id-ref="INT"
      vmodl-name="supportedNumDisks"
      >
      <description-html>
         <![CDATA[Number of disks supported for this guest.]]>
      </description-html>
      </property>

            <property name="recommendedDiskSizeMB" type-id-ref="INT"
      vmodl-name="recommendedDiskSizeMB"
      >
      <description-html>
         <![CDATA[Recommended default disk size for this guest, in MB.]]>
      </description-html>
      </property>

            <property name="recommendedCdromController" type-id-ref="vmodl.TypeName"
      vmodl-name="recommendedCdromController"
      version-id-ref="vim.version.version9"
      >
      <description-html>
         <![CDATA[Recommended default CD-ROM type for this guest.]]>
      </description-html>
      </property>

            <property name="supportedEthernetCard" type-id-ref="vmodl.TypeName"
      vmodl-name="supportedEthernetCard"
      is-array="true"
      >
      <description-html>
         <![CDATA[List of supported ethernet cards for this guest.]]>
      </description-html>
      </property>

            <property name="recommendedEthernetCard" type-id-ref="vmodl.TypeName"
      vmodl-name="recommendedEthernetCard"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Recommended default ethernet controller type for this guest.]]>
      </description-html>
      </property>

            <property name="supportsSlaveDisk" type-id-ref="BOOLEAN"
      vmodl-name="supportsSlaveDisk"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Flag to indicate whether or not this guest can support
  a disk configured as a slave.]]>
      </description-html>
      </property>

            <property name="cpuFeatureMask" type-id-ref="vim.host.CpuIdInfo"
      vmodl-name="cpuFeatureMask"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Specifies the CPU feature compatibility masks.]]>
      </description-html>
      </property>

            <property name="smcRequired" type-id-ref="BOOLEAN"
      vmodl-name="smcRequired"
      version-id-ref="vim.version.version7"
      >
      <description-html>
         <![CDATA[Flag that indicates wether the guest requires an SMC (Apple hardware).
 This is logically equivalent to GuestOS = Mac OS]]>
      </description-html>
      </property>

            <property name="supportsWakeOnLan" type-id-ref="BOOLEAN"
      vmodl-name="supportsWakeOnLan"
      >
      <description-html>
         <![CDATA[Flag to indicate whether or not this guest can support Wake-on-LAN.]]>
      </description-html>
      </property>

            <property name="supportsVMI" type-id-ref="BOOLEAN"
      vmodl-name="supportsVMI"
      version-id-ref="vim.version.version4"
      >
      <description-html>
         <![CDATA[Flag indicating whether or not this guest supports the virtual
  machine interface.]]>
      </description-html>
      </property>

            <property name="supportsMemoryHotAdd" type-id-ref="BOOLEAN"
      vmodl-name="supportsMemoryHotAdd"
      version-id-ref="vim.version.version4"
      >
      <description-html>
         <![CDATA[Whether the memory size for this guest can be changed
  while the virtual machine is running.]]>
      </description-html>
      </property>

            <property name="supportsCpuHotAdd" type-id-ref="BOOLEAN"
      vmodl-name="supportsCpuHotAdd"
      version-id-ref="vim.version.version4"
      >
      <description-html>
         <![CDATA[Whether virtual CPUs can be added to this guest
  while the virtual machine is running.]]>
      </description-html>
      </property>

            <property name="supportsCpuHotRemove" type-id-ref="BOOLEAN"
      vmodl-name="supportsCpuHotRemove"
      version-id-ref="vim.version.version4"
      >
      <description-html>
         <![CDATA[Whether virtual CPUs can be removed from this guest
  while the virtual machine is running.]]>
      </description-html>
      </property>

            <property name="supportedFirmware" type-id-ref="java.lang.String"
      vmodl-name="supportedFirmware"
      version-id-ref="vim.version.version7"
      is-array="true"
      >
      <description-html>
         <![CDATA[Supported firmware types for this guest.

  Possible values are described in
  <a href="vim.vm.GuestOsDescriptor.FirmwareType.html">GuestOsDescriptorFirmwareType</a>]]>
      </description-html>
      </property>

            <property name="recommendedFirmware" type-id-ref="java.lang.String"
      vmodl-name="recommendedFirmware"
      version-id-ref="vim.version.version7"
      >
      <description-html>
         <![CDATA[Recommended firmware type for this guest.

  Possible values are described in
  <a href="vim.vm.GuestOsDescriptor.FirmwareType.html">GuestOsDescriptorFirmwareType</a>]]>
      </description-html>
      </property>

            <property name="supportedUSBControllerList" type-id-ref="vmodl.TypeName"
      vmodl-name="supportedUSBControllerList"
      version-id-ref="vim.version.version7"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of supported USB controllers for this guest.]]>
      </description-html>
      </property>

            <property name="recommendedUSBController" type-id-ref="vmodl.TypeName"
      vmodl-name="recommendedUSBController"
      version-id-ref="vim.version.version7"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Recommended default USB controller type for this guest.]]>
      </description-html>
      </property>

            <property name="supports3D" type-id-ref="BOOLEAN"
      vmodl-name="supports3D"
      version-id-ref="vim.version.version7"
      >
      <description-html>
         <![CDATA[Whether this guest supports 3D graphics.]]>
      </description-html>
      </property>

            <property name="recommended3D" type-id-ref="BOOLEAN"
      vmodl-name="recommended3D"
      version-id-ref="vim.version.version8"
      >
      <description-html>
         <![CDATA[Recommended 3D graphics for this guest.]]>
      </description-html>
      </property>

            <property name="smcRecommended" type-id-ref="BOOLEAN"
      vmodl-name="smcRecommended"
      version-id-ref="vim.version.version7"
      >
      <description-html>
         <![CDATA[Whether SMC (Apple hardware) is recommended for this guest.]]>
      </description-html>
      </property>

            <property name="ich7mRecommended" type-id-ref="BOOLEAN"
      vmodl-name="ich7mRecommended"
      version-id-ref="vim.version.version7"
      >
      <description-html>
         <![CDATA[Whether I/O Controller Hub is recommended for this guest.]]>
      </description-html>
      </property>

            <property name="usbRecommended" type-id-ref="BOOLEAN"
      vmodl-name="usbRecommended"
      version-id-ref="vim.version.version7"
      >
      <description-html>
         <![CDATA[Whether USB controller is recommended for this guest.]]>
      </description-html>
      </property>

            <property name="supportLevel" type-id-ref="java.lang.String"
      vmodl-name="supportLevel"
      version-id-ref="vim.version.version7"
      >
      <description-html>
         <![CDATA[Support level of this Guest

  Possible values are described in
  <a href="vim.vm.GuestOsDescriptor.SupportLevel.html">GuestOsDescriptorSupportLevel</a>]]>
      </description-html>
      </property>

            <property name="supportedForCreate" type-id-ref="BOOLEAN"
      vmodl-name="supportedForCreate"
      version-id-ref="vim.version.version7"
      >
      <description-html>
         <![CDATA[Whether or not this guest should be allowed for selection
 during virtual machine creation.]]>
      </description-html>
      </property>

            <property name="vRAMSizeInKB" type-id-ref="vim.option.IntOption"
      vmodl-name="vRAMSizeInKB"
      version-id-ref="vim.version.version7"
      >
      <description-html>
         <![CDATA[Video RAM size limits supported by this guest, in KB.]]>
      </description-html>
      </property>

            <property name="numSupportedFloppyDevices" type-id-ref="INT"
      vmodl-name="numSupportedFloppyDevices"
      version-id-ref="vim.version.version10"
      >
      <description-html>
         <![CDATA[Maximum number of floppies supported by this guest.]]>
      </description-html>
      </property>

            <property name="wakeOnLanEthernetCard" type-id-ref="vmodl.TypeName"
      vmodl-name="wakeOnLanEthernetCard"
      version-id-ref="vim.version.version10"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of NICs supported by this guest that support Wake-On-Lan.]]>
      </description-html>
      </property>

            <property name="supportsPvscsiControllerForBoot" type-id-ref="BOOLEAN"
      vmodl-name="supportsPvscsiControllerForBoot"
      version-id-ref="vim.version.version10"
      >
      <description-html>
         <![CDATA[Whether or not this guest can use pvscsi as boot adapter.]]>
      </description-html>
      </property>

            <property name="diskUuidEnabled" type-id-ref="BOOLEAN"
      vmodl-name="diskUuidEnabled"
      version-id-ref="vim.version.version10"
      >
      <description-html>
         <![CDATA[Whether or not this guest should have disk uuid enabled by default.]]>
      </description-html>
      </property>

            <property name="supportsHotPlugPCI" type-id-ref="BOOLEAN"
      vmodl-name="supportsHotPlugPCI"
      version-id-ref="vim.version.version10"
      >
      <description-html>
         <![CDATA[Whether or not this guest supports hot plug of PCI devices.]]>
      </description-html>
      </property>

            <property name="supportsSecureBoot" type-id-ref="BOOLEAN"
      vmodl-name="supportsSecureBoot"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Whether or not this guest supports Secure Boot.  If some of the OS
 releases that fall under this guest OS descriptor support Secure Boot, it
 is reasonable to offer the ability to enable Secure Boot.  Only
 meaningful when virtual EFI firmware is in use.]]>
      </description-html>
      </property>

            <property name="defaultSecureBoot" type-id-ref="BOOLEAN"
      vmodl-name="defaultSecureBoot"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Whether or not Secure Boot should be enabled by default for this
 guest OS.  If all OS releases that fall under this guest OS descriptor
 support Secure Boot and are known to operate correctly with Secure Boot
 enabled, it is reasonable to enable it by default.  Only meaningful when
 virtual EFI firmware is in use.]]>
      </description-html>
      </property>

            <property name="persistentMemorySupported" type-id-ref="BOOLEAN"
      vmodl-name="persistentMemorySupported"
      version-id-ref="vim.version.version12"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Support of persistent memory (virtual NVDIMM device).<br>See <a href="vim.vm.device.VirtualNVDIMM.html">VirtualNVDIMM</a><br>]]>
      </description-html>
      </property>

            <property name="supportedMinPersistentMemoryMB" type-id-ref="LONG"
      vmodl-name="supportedMinPersistentMemoryMB"
      version-id-ref="vim.version.version12"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Minimum persistent memory supported for this guest, in MB.]]>
      </description-html>
      </property>

            <property name="supportedMaxPersistentMemoryMB" type-id-ref="LONG"
      vmodl-name="supportedMaxPersistentMemoryMB"
      version-id-ref="vim.version.version12"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Maximum persistent memory supported for this guest, in MB.
 Total size of all the virtual NVDIMM devices should be less
 than this value.]]>
      </description-html>
      </property>

            <property name="recommendedPersistentMemoryMB" type-id-ref="LONG"
      vmodl-name="recommendedPersistentMemoryMB"
      version-id-ref="vim.version.version12"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Recommended default persistent memory size for this guest, in MB.]]>
      </description-html>
      </property>

            <property name="persistentMemoryHotAddSupported" type-id-ref="BOOLEAN"
      vmodl-name="persistentMemoryHotAddSupported"
      version-id-ref="vim.version.version12"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Support of persistent memory hot-add operation.]]>
      </description-html>
      </property>

            <property name="persistentMemoryHotRemoveSupported" type-id-ref="BOOLEAN"
      vmodl-name="persistentMemoryHotRemoveSupported"
      version-id-ref="vim.version.version12"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Support of persistent memory hot-remove operation.]]>
      </description-html>
      </property>

            <property name="persistentMemoryColdGrowthSupported" type-id-ref="BOOLEAN"
      vmodl-name="persistentMemoryColdGrowthSupported"
      version-id-ref="vim.version.version12"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Support of virtual NVDIMM cold-growth operation.]]>
      </description-html>
      </property>

            <property name="persistentMemoryColdGrowthGranularityMB" type-id-ref="LONG"
      vmodl-name="persistentMemoryColdGrowthGranularityMB"
      version-id-ref="vim.version.version12"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Virtual NVDIMM cold-growth granularity in MB.]]>
      </description-html>
      </property>

            <property name="persistentMemoryHotGrowthSupported" type-id-ref="BOOLEAN"
      vmodl-name="persistentMemoryHotGrowthSupported"
      version-id-ref="vim.version.version12"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Support of virtual NVDIMM hot-growth operation.]]>
      </description-html>
      </property>

            <property name="persistentMemoryHotGrowthGranularityMB" type-id-ref="LONG"
      vmodl-name="persistentMemoryHotGrowthGranularityMB"
      version-id-ref="vim.version.version12"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Virtual NVDIMM hot-growth granularity in MB.]]>
      </description-html>
      </property>

            <property name="numRecommendedPhysicalSockets" type-id-ref="INT"
      vmodl-name="numRecommendedPhysicalSockets"
      version-id-ref="vim.version.version12"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Recommended number of sockets for this guest.]]>
      </description-html>
      </property>

            <property name="numRecommendedCoresPerSocket" type-id-ref="INT"
      vmodl-name="numRecommendedCoresPerSocket"
      version-id-ref="vim.version.version12"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Recommended number of cores per socket for this guest.]]>
      </description-html>
      </property>

            <property name="vvtdSupported" type-id-ref="vim.option.BoolOption"
      vmodl-name="vvtdSupported"
      version-id-ref="vim.version.version12"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Support of Intel Virtualization Technology for Directed I/O.]]>
      </description-html>
      </property>

            <property name="vbsSupported" type-id-ref="vim.option.BoolOption"
      vmodl-name="vbsSupported"
      version-id-ref="vim.version.version12"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Support of Virtualization-based security.]]>
      </description-html>
      </property>

            <property name="vsgxSupported" type-id-ref="vim.option.BoolOption"
      vmodl-name="vsgxSupported"
      version-id-ref="vim.version.v7_0"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Support for Intel Software Guard Extensions]]>
      </description-html>
      </property>

            <property name="supportsTPM20" type-id-ref="BOOLEAN"
      vmodl-name="supportsTPM20"
      version-id-ref="vim.version.version12"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Support for TPM 2.0.]]>
      </description-html>
      </property>

            <property name="vwdtSupported" type-id-ref="BOOLEAN"
      vmodl-name="vwdtSupported"
      version-id-ref="vim.version.v7_0"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Support for Virtual Watchdog Timer.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.vm.GuestOsDescriptor.GuestOsFamily</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.GuestOsDescriptor.GuestOsIdentifier</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.GuestOsDescriptor.FirmwareType</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.GuestOsDescriptor.SupportLevel</nested-type-id-ref>
   </data-object>
   <data-object name="DvsPortEnteredPassthruEvent"
      type-id="vim.event.DvsPortEnteredPassthruEvent"
      vmodl-name="vim.event.DvsPortEnteredPassthruEvent"
      version-id-ref="vim.version.version6"
      base-type-id="vim.event.DvsEvent"
      >
      <description-html>
         <![CDATA[A port has entered passthrough mode on the distributed virtual switch.]]>
      </description-html>
            <property name="portKey" type-id-ref="java.lang.String"
      vmodl-name="portKey"
      >
      <description-html>
         <![CDATA[The port key.]]>
      </description-html>
      </property>

            <property name="runtimeInfo" type-id-ref="vim.dvs.DistributedVirtualPort.RuntimeInfo"
      vmodl-name="runtimeInfo"
      version-id-ref="vim.version.version8"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The port runtime information.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DvsUpgradeInProgressEvent"
      type-id="vim.event.DvsUpgradeInProgressEvent"
      vmodl-name="vim.event.DvsUpgradeInProgressEvent"
      version-id-ref="vim.version.version5"
      base-type-id="vim.event.DvsEvent"
      >
      <description-html>
         <![CDATA[An upgrade for the distributed virtual switch is in progress.]]>
      </description-html>
            <property name="productInfo" type-id-ref="vim.dvs.ProductSpec"
      vmodl-name="productInfo"
      >
      <description-html>
         <![CDATA[The product info of the upgrade.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="InheritablePolicy"
      type-id="vim.InheritablePolicy"
      vmodl-name="vim.InheritablePolicy"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The base class for any type of setting or configuration that may get a
  inherited value.
  <p>
  When used in a reconfigure operation specification, if <a href="vim.InheritablePolicy.html#inherited">inherited</a> is true,
  it specifies the intention to change the values of subclass's properties to the
  inherited values from the level above. In this case, users don't need to specify
  the values and any set property in the subclass will be ignored.
  if <a href="vim.InheritablePolicy.html#inherited">inherited</a> is false, it specifies the intention to explicitly set
  subclass's properties to user specified values. Users should set the properties in
  the subclass with the desired values.
  <p>
  When used in a configuration information object, The values of the properties in
  the subclass are the effective values. if <a href="vim.InheritablePolicy.html#inherited">inherited</a> is true, the object
  is getting the effective values from upper level. If false, the values are
  explicitly set by a user.]]>
      </description-html>
            <property name="inherited" type-id-ref="BOOLEAN"
      vmodl-name="inherited"
      >
      <description-html>
         <![CDATA[Whether the configuration is set to inherited value.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VchaClusterDeploymentSpec"
      type-id="vim.vcha.FailoverClusterConfigurator.VchaClusterDeploymentSpec"
      vmodl-name="vim.vcha.FailoverClusterConfigurator.VchaClusterDeploymentSpec"
      enclosing-type-id-ref="vim.vcha.FailoverClusterConfigurator"
      version-id-ref="vim.version.version11"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The VchaClusterDeploymentSpec class contains
  deployment information for creating and configuring a VCHA Cluster.]]>
      </description-html>
            <property name="passiveDeploymentSpec" type-id-ref="vim.vcha.FailoverClusterConfigurator.PassiveNodeDeploymentSpec"
      vmodl-name="passiveDeploymentSpec"
      >
      <description-html>
         <![CDATA[Deployment spec for the Passive node]]>
      </description-html>
      </property>

            <property name="witnessDeploymentSpec" type-id-ref="vim.vcha.FailoverClusterConfigurator.NodeDeploymentSpec"
      vmodl-name="witnessDeploymentSpec"
      >
      <description-html>
         <![CDATA[Deployment spec for the Witness node]]>
      </description-html>
      </property>

            <property name="activeVcSpec" type-id-ref="vim.vcha.FailoverClusterConfigurator.SourceNodeSpec"
      vmodl-name="activeVcSpec"
      >
      <description-html>
         <![CDATA[Active vCenter Server specification required to deploy
 VCHA Cluster.]]>
      </description-html>
      </property>

            <property name="activeVcNetworkConfig" type-id-ref="vim.vcha.FailoverClusterConfigurator.ClusterNetworkConfigSpec"
      vmodl-name="activeVcNetworkConfig"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The Cluster network config spec allows creation and configuration of
 the second Network adapter of the Active or Source VCenter.
 The second network adapter is used for communication between
 the nodes of a VCHA cluster.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="CheckResult"
      type-id="vim.vm.check.Result"
      vmodl-name="vim.vm.check.Result"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The result of a call to any of the methods in either
  <a href="vim.vm.check.CompatibilityChecker.html">VirtualMachineCompatibilityChecker</a> or <a href="vim.vm.check.ProvisioningChecker.html">VirtualMachineProvisioningChecker</a>.]]>
      </description-html>
            <property name="vm" type-id-ref="vim.VirtualMachine"
      vmodl-name="vm"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The virtual machine involved in the testing.]]>
      </description-html>
      </property>

            <property name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The host involved in the testing.]]>
      </description-html>
      </property>

            <property name="warning" type-id-ref="vmodl.LocalizedMethodFault"
      vmodl-name="warning"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[A list of faults representing problems which may
 require attention, but which are not fatal.]]>
      </description-html>
      </property>

            <property name="error" type-id-ref="vmodl.LocalizedMethodFault"
      vmodl-name="error"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[A list of faults representing problems which are fatal
 to the operation.

 For <a href="vim.vm.check.ProvisioningChecker.html">VirtualMachineProvisioningChecker</a> an error means that the
 given provisioning operation would fail.

 For <a href="vim.vm.check.CompatibilityChecker.html">VirtualMachineCompatibilityChecker</a> an error means that either
 a power-on of this virtual machine would fail, or that the
 virtual machine would not run correctly once powered-on.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DvpgRestoreEvent"
      type-id="vim.event.DvpgRestoreEvent"
      vmodl-name="vim.event.DvpgRestoreEvent"
      version-id-ref="vim.version.version8"
      base-type-id="vim.event.DVPortgroupEvent"
      >
      <description-html>
         <![CDATA[This event is generated when a restore operation is
 performed on a distributed virtual portgroup]]>
      </description-html>
   </data-object>
   <data-object name="ClusterProfileConfigSpec"
      type-id="vim.profile.cluster.ClusterProfile.ConfigSpec"
      vmodl-name="vim.profile.cluster.ClusterProfile.ConfigSpec"
      enclosing-type-id-ref="vim.profile.cluster.ClusterProfile"
      version-id-ref="vim.version.version5"
      base-type-id="vim.profile.cluster.ClusterProfile.CreateSpec"
      >
      <description-html>
         <![CDATA[DataObject which is a baseclass for other configuration
 specifications.]]>
      </description-html>
   </data-object>
   <data-object name="ClusterDependencyRuleInfo"
      type-id="vim.cluster.DependencyRuleInfo"
      vmodl-name="vim.cluster.DependencyRuleInfo"
      version-id-ref="vim.version.version11"
      base-type-id="vim.cluster.RuleInfo"
      >
      <description-html>
         <![CDATA[The <a href="vim.cluster.DependencyRuleInfo.html">ClusterDependencyRuleInfo</a> data object indentifies VM-to-VM
  dependencies.
  <p>
  A VM-VM Dependency rule identifies the following groups.
  <ul>
    <li>A virtual machine group - <a href="vim.cluster.DependencyRuleInfo.html#vmGroup">vmGroup</a>
    <li>A "depends on" virtual machine group - <a href="vim.cluster.DependencyRuleInfo.html#dependsOnVmGroup">dependsOnVmGroup</a>.
  </ul>
  <p>
  The VMs in <a href="vim.cluster.DependencyRuleInfo.html#vmGroup">vmGroup</a> depends on the list of VMs specified in <a href="vim.cluster.DependencyRuleInfo.html#dependsOnVmGroup">dependsOnVmGroup</a>.
  <p>
  For example, this rule is used during vSphere HA VM recovery
  orchestration. vSphere HA will not restart the VMs in <a href="vim.cluster.DependencyRuleInfo.html#vmGroup">vmGroup</a>
  until all the VMs in <a href="vim.cluster.DependencyRuleInfo.html#dependsOnVmGroup">dependsOnVmGroup</a> are deemded "ready" (See
  <a href="vim.cluster.VmReadiness.html">ClusterVmReadiness</a>).
  <p>
  All the virtual machines referenced by this rule must be in
  the same cluster.]]>
      </description-html>
            <property name="vmGroup" type-id-ref="java.lang.String"
      vmodl-name="vmGroup"
      >
      <description-html>
         <![CDATA[Virtual group name. The virtual group may contain one or more virtual
 machines.
 <a href="vim.cluster.VmGroup.html">ClusterVmGroup</a>.<a href="vim.cluster.GroupInfo.html#name">name</a>]]>
      </description-html>
      </property>

            <property name="dependsOnVmGroup" type-id-ref="java.lang.String"
      vmodl-name="dependsOnVmGroup"
      >
      <description-html>
         <![CDATA[Depdendency virtual group name
 (<a href="vim.cluster.VmGroup.html">ClusterVmGroup</a>.<a href="vim.cluster.GroupInfo.html#name">name</a>).
 The virtual group may contain one or more virtual machines.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostSystemSwapConfigurationHostLocalSwapOption"
      type-id="vim.host.SystemSwapConfiguration.HostLocalSwapOption"
      vmodl-name="vim.host.SystemSwapConfiguration.HostLocalSwapOption"
      enclosing-type-id-ref="vim.host.SystemSwapConfiguration"
      version-id-ref="vim.version.version8"
      base-type-id="vim.host.SystemSwapConfiguration.SystemSwapOption"
      >
      <description-html>
         <![CDATA[Use option to indicate that the datastore configured for host local swap
 may be used for system swap.]]>
      </description-html>
   </data-object>
   <data-object name="VmfsDatastoreOption"
      type-id="vim.host.VmfsDatastoreOption"
      vmodl-name="vim.host.VmfsDatastoreOption"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[VMFS datastore provisioning option that can be applied on a disk.  VMFS
  datastores can be created or have their capacity increased using storage
  from a disk.
  There are often multiple ways in which extents can be allocated on a disk.
  Each instance of this structure represents one of the possible options
  that can be applied to provisiong VMFS datastore storage.  Only options
  that follow ESX Server best practice guidelines will be presented.]]>
      </description-html>
            <property name="info" type-id-ref="vim.host.VmfsDatastoreOption.Info"
      vmodl-name="info"
      >
      <description-html>
         <![CDATA[Information about this VMFS datastore provisioniing option.  This
  structure describes the extent allocation policy represented by
  this option.]]>
      </description-html>
      </property>

            <property name="spec" type-id-ref="vim.host.VmfsDatastoreSpec"
      vmodl-name="spec"
      >
      <description-html>
         <![CDATA[Specification to create or increase the capacity of a VMFS datastore.
  This property contains a configuration specification that can be
  applied to effect the creation or capacity increase.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.host.VmfsDatastoreOption.Info</nested-type-id-ref>
      <nested-type-id-ref>vim.host.VmfsDatastoreOption.SingleExtentInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.host.VmfsDatastoreOption.AllExtentInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.host.VmfsDatastoreOption.MultipleExtentInfo</nested-type-id-ref>
   </data-object>
   <data-object name="HealthSystemRuntime"
      type-id="vim.host.HealthStatusSystem.Runtime"
      vmodl-name="vim.host.HealthStatusSystem.Runtime"
      enclosing-type-id-ref="vim.host.HealthStatusSystem"
      version-id-ref="vim.version.version2"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The system health runtime information]]>
      </description-html>
            <property name="systemHealthInfo" type-id-ref="vim.host.SystemHealthInfo"
      vmodl-name="systemHealthInfo"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Available system health information]]>
      </description-html>
      </property>

            <property name="hardwareStatusInfo" type-id-ref="vim.host.HardwareStatusInfo"
      vmodl-name="hardwareStatusInfo"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Available hardware health information]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ExtensionOvfConsumerInfo"
      type-id="vim.Extension.OvfConsumerInfo"
      vmodl-name="vim.Extension.OvfConsumerInfo"
      enclosing-type-id-ref="vim.Extension"
      version-id-ref="vim.version.version7"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object contains configuration for extensions that also extend the OVF
 functionality of vCenter server.
 <p>
 <b>Note:</b> This feature is for internal use only.]]>
      </description-html>
            <property name="callbackUrl" type-id-ref="java.lang.String"
      vmodl-name="callbackUrl"
      >
      <description-html>
         <![CDATA[Callback url for the OVF consumer. This URL must point to a SOAP API
 implementing the OVF consumer interface.
 <p>
 Example: https://extension-host:8081/
 </p>
 <p>
 This callback is for internal use only.]]>
      </description-html>
      </property>

            <property name="sectionType" type-id-ref="java.lang.String"
      vmodl-name="sectionType"
      is-array="true"
      >
      <description-html>
         <![CDATA[A list of fully qualified OVF section types that this consumer handles.
 <p>
 Fully qualified means that each section type must be prefixed with its namespace
 enclosed in curly braces. See the examples below.
 <p>
 An InvalidArgument error is thrown if there is overlap between OVF consumers,
 meaning that the same section type appears in the sectionType list of more than
 one OVF consumer.
 <p>
 Example: [ "{http://www.vmware.com/schema/vServiceManager}vServiceDependency",
            "{http://www.vmware.com/schema/vServiceManager}vServiceBinding" ]]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VMwareDVSTeamingHealthCheckResult"
      type-id="vim.dvs.VmwareDistributedVirtualSwitch.TeamingHealthCheckResult"
      vmodl-name="vim.dvs.VmwareDistributedVirtualSwitch.TeamingHealthCheckResult"
      enclosing-type-id-ref="vim.dvs.VmwareDistributedVirtualSwitch"
      version-id-ref="vim.version.version8"
      base-type-id="vim.dvs.HostMember.HealthCheckResult"
      >
      <description-html>
         <![CDATA[This class defines teaming health check result of a host that
  joined the VMware vSphered Distributed Switch.]]>
      </description-html>
            <property name="teamingStatus" type-id-ref="java.lang.String"
      vmodl-name="teamingStatus"
      >
      <description-html>
         <![CDATA[Teaming check status. See TeamingMatchStatus
  for valid values.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostNetworkConfigResult"
      type-id="vim.host.NetworkConfig.Result"
      vmodl-name="vim.host.NetworkConfig.Result"
      enclosing-type-id-ref="vim.host.NetworkConfig"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The result returned by updateNetworkConfig call.<br>See <a href="vim.host.NetworkSystem.html#updateNetworkConfig">UpdateNetworkConfig</a><br>]]>
      </description-html>
            <property name="vnicDevice" type-id-ref="java.lang.String"
      vmodl-name="vnicDevice"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Virtual network adapter keys.]]>
      </description-html>
      </property>

            <property name="consoleVnicDevice" type-id-ref="java.lang.String"
      vmodl-name="consoleVnicDevice"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Service console virtual network adapter keys.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="SoftwarePackageCapability"
      type-id="vim.host.SoftwarePackage.Capability"
      vmodl-name="vim.host.SoftwarePackage.Capability"
      enclosing-type-id-ref="vim.host.SoftwarePackage"
      version-id-ref="vim.version.version11"
      base-type-id="vmodl.DynamicData"
      >
            <property name="liveInstallAllowed" type-id-ref="BOOLEAN"
      vmodl-name="liveInstallAllowed"
      is-optional="true"
      >
      <description-html>
         <![CDATA[True if live installs of this VIB are supported.]]>
      </description-html>
      </property>

            <property name="liveRemoveAllowed" type-id-ref="BOOLEAN"
      vmodl-name="liveRemoveAllowed"
      is-optional="true"
      >
      <description-html>
         <![CDATA[True if live removals of this VIB are supported.]]>
      </description-html>
      </property>

            <property name="statelessReady" type-id-ref="BOOLEAN"
      vmodl-name="statelessReady"
      is-optional="true"
      >
      <description-html>
         <![CDATA[True if the package supports host profiles or other technologies
 that make it suitable for use in conjunction with vSphere Auto Deploy.]]>
      </description-html>
      </property>

            <property name="overlay" type-id-ref="BOOLEAN"
      vmodl-name="overlay"
      is-optional="true"
      >
      <description-html>
         <![CDATA[True if this vib will supplant files from another package at runtime.
 When False this prevents two packages from installing the same file.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="PerfEntityMetricCSV"
      type-id="vim.PerformanceManager.EntityMetricCSV"
      vmodl-name="vim.PerformanceManager.EntityMetricCSV"
      enclosing-type-id-ref="vim.PerformanceManager"
      version-id-ref="vim.version.version1"
      base-type-id="vim.PerformanceManager.EntityMetricBase"
      >
      <description-html>
         <![CDATA[This data object type stores metric values for a specific entity in CSV
  format.]]>
      </description-html>
            <property name="sampleInfoCSV" type-id-ref="java.lang.String"
      vmodl-name="sampleInfoCSV"
      >
      <description-html>
         <![CDATA[The <a href="vim.PerformanceManager.SampleInfo.html">PerfSampleInfo</a> encoded in the following CSV
  format: [interval1], [date1], [interval2], [date2], and so on.]]>
      </description-html>
      </property>

            <property name="value" type-id-ref="vim.PerformanceManager.MetricSeriesCSV"
      vmodl-name="value"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Metric values corresponding to the samples collected in this list.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostVirtualSwitchAutoBridge"
      type-id="vim.host.VirtualSwitch.AutoBridge"
      vmodl-name="vim.host.VirtualSwitch.AutoBridge"
      enclosing-type-id-ref="vim.host.VirtualSwitch"
      version-id-ref="vim.version.version1"
      base-type-id="vim.host.VirtualSwitch.Bridge"
      >
      <description-html>
         <![CDATA[This data type describes a bridge that automatically selects
  a particular physical network adapter on the host
  according to some predetermined policy.  Used primarily to support mobility
  scenarios.]]>
      </description-html>
            <property name="excludedNicDevice" type-id-ref="java.lang.String"
      vmodl-name="excludedNicDevice"
      version-id-ref="vim.version.version2"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of physical network adapters that have been excluded from
  participating in the AutoBridge]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostLicenseSpec"
      type-id="vim.host.LicenseSpec"
      vmodl-name="vim.host.LicenseSpec"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
            <property name="source" type-id-ref="vim.LicenseManager.LicenseSource"
      vmodl-name="source"
      is-optional="true"
      >
      <description-html>
         <![CDATA[License source to be used]]>
      </description-html>
      </property>

            <property name="editionKey" type-id-ref="java.lang.String"
      vmodl-name="editionKey"
      is-optional="true"
      >
      <description-html>
         <![CDATA[License edition to use]]>
      </description-html>
      </property>

            <property name="disabledFeatureKey" type-id-ref="java.lang.String"
      vmodl-name="disabledFeatureKey"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Disabled features. When an edition is set, all the features in it
 are enabled by default. The following parameter gives a finer
 control on which features are disabled.]]>
      </description-html>
      </property>

            <property name="enabledFeatureKey" type-id-ref="java.lang.String"
      vmodl-name="enabledFeatureKey"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Enabled features]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DvsPortCreatedEvent"
      type-id="vim.event.DvsPortCreatedEvent"
      vmodl-name="vim.event.DvsPortCreatedEvent"
      version-id-ref="vim.version.version5"
      base-type-id="vim.event.DvsEvent"
      >
      <description-html>
         <![CDATA[New ports are created in the distributed virtual switch.]]>
      </description-html>
            <property name="portKey" type-id-ref="java.lang.String"
      vmodl-name="portKey"
      is-array="true"
      >
      <description-html>
         <![CDATA[The key of the ports that are created.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualDevice"
      type-id="vim.vm.device.VirtualDevice"
      vmodl-name="vim.vm.device.VirtualDevice"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[VirtualDevice is the base data object type for devices in a virtual machine.
  This type contains enough information about a virtual device to allow clients
  to display devices they do not recognize. For example, a client with an
  older version than the server to which it connects may see a device
  without knowing what it is.]]>
      </description-html>
            <property name="key" type-id-ref="INT"
      vmodl-name="key"
      >
      <description-html>
         <![CDATA[A unique key that distinguishes this device from other
  devices in the same virtual machine. Keys are immutable but may be
  recycled; that is, a key does not change as long as the device is
  associated with a particular virtual machine. However, once a device is
  removed, its key may be used when another device is added.
  <p>
  This property is not read-only, but the client cannot control its value.
  Persistent device keys are always assigned and managed by the server, which
  guarantees that all devices will have non-negative key values.
  <p>
  When adding new devices, it may be necessary for a client to assign keys
  temporarily in order to associate controllers with devices in
  configuring a virtual machine. However, the server does not allow a
  client to reassign a device key, and the server may assign a different
  value from the one passed during configuration. Clients should ensure
  that existing device keys are not reused as temporary key values for the
  new device to be added (for example, by using unique negative integers as
  temporary keys).
  <p>
  When editing or deleting a device, clients must use the server-provided key
  to refer to an existing device.]]>
      </description-html>
      </property>

            <property name="deviceInfo" type-id-ref="vim.Description"
      vmodl-name="deviceInfo"
      is-optional="true"
      is-localizable="true"
      >
      <description-html>
         <![CDATA[Provides a label and summary information for the device.]]>
      </description-html>
      </property>

            <property name="backing" type-id-ref="vim.vm.device.VirtualDevice.BackingInfo"
      vmodl-name="backing"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Information about the backing of this virtual device presented
  in the context of the virtual machine's environment.
  Not all devices are required to have backing information.<br>See <a href="vim.vm.ConfigOption.html">VirtualMachineConfigOption</a><br>]]>
      </description-html>
      </property>

            <property name="connectable" type-id-ref="vim.vm.device.VirtualDevice.ConnectInfo"
      vmodl-name="connectable"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Provides information about restrictions on removing this device while
  a virtual machine is running. If the device is not removable, then
  this property is null.]]>
      </description-html>
      </property>

            <property name="slotInfo" type-id-ref="vim.vm.device.VirtualDevice.BusSlotInfo"
      vmodl-name="slotInfo"
      version-id-ref="vim.version.version8"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Information about the bus slot of a device in a virtual machine.]]>
      </description-html>
      </property>

            <property name="controllerKey" type-id-ref="INT"
      vmodl-name="controllerKey"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Object key for the controller object for this device.

  This property contains the key property value of the controller device
  object.]]>
      </description-html>
      </property>

            <property name="unitNumber" type-id-ref="INT"
      vmodl-name="unitNumber"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The unit number of this device on its controller. This property is null if
  the controller property is null (for example, when the device is not
  attached to a specific controller object).
  <p>
  Normally, two devices on the same controller
  may not be assigned the same unit number. If
  multiple devices could exist on a controller,
  then unit number has to be specified to
  configure respective devices.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.vm.device.VirtualDevice.BackingInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.device.VirtualDevice.FileBackingInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.device.VirtualDevice.DeviceBackingInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.device.VirtualDevice.RemoteDeviceBackingInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.device.VirtualDevice.PipeBackingInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.device.VirtualDevice.URIBackingInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.device.VirtualDevice.ConnectInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.device.VirtualDevice.BusSlotInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.device.VirtualDevice.PciBusSlotInfo</nested-type-id-ref>
   </data-object>
   <data-object name="VmDiskFailedEvent"
      type-id="vim.event.VmDiskFailedEvent"
      vmodl-name="vim.event.VmDiskFailedEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.VmEvent"
      >
      <description-html>
         <![CDATA[This event records a failure to create a virtual disk in a virtual machine.]]>
      </description-html>
            <property name="disk" type-id-ref="java.lang.String"
      vmodl-name="disk"
      >
      <description-html>
         <![CDATA[The name of the virtual disk.]]>
      </description-html>
      </property>

            <property name="reason" type-id-ref="vmodl.LocalizedMethodFault"
      vmodl-name="reason"
      >
      <description-html>
         <![CDATA[The reason for the failure.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualMachineEmptyProfileSpec"
      type-id="vim.vm.EmptyProfileSpec"
      vmodl-name="vim.vm.EmptyProfileSpec"
      version-id-ref="vim.version.version9"
      base-type-id="vim.vm.ProfileSpec"
      >
      <description-html>
         <![CDATA[Specifies an empty Storage Policy for a Virtual Machine Home or a
  Virtual Disk object.
  <p>
  The object is left without any profile association, and hence has no
  explicit policy driven requirements.
  This implies that object's policy driven SLAs are always met trivially.]]>
      </description-html>
   </data-object>
   <data-object name="HostService"
      type-id="vim.host.Service"
      vmodl-name="vim.host.Service"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Data object that describes a single service that runs on the host.]]>
      </description-html>
            <property name="key" type-id-ref="java.lang.String"
      vmodl-name="key"
      >
      <description-html>
         <![CDATA[Brief identifier for the service.]]>
      </description-html>
      </property>

            <property name="label" type-id-ref="java.lang.String"
      vmodl-name="label"
      is-localizable="true"
      >
      <description-html>
         <![CDATA[Display label for the service.]]>
      </description-html>
      </property>

            <property name="required" type-id-ref="BOOLEAN"
      vmodl-name="required"
      >
      <description-html>
         <![CDATA[Flag indicating whether the service is required and cannot be disabled.]]>
      </description-html>
      </property>

            <property name="uninstallable" type-id-ref="BOOLEAN"
      vmodl-name="uninstallable"
      is-deprecated="true"
      >
      <description-html>
         <![CDATA[Flag indicating whether the service can be uninstalled.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[This flag is unimplemented and will always be set to false.]]>
      </deprecated-html>
      </property>

            <property name="running" type-id-ref="BOOLEAN"
      vmodl-name="running"
      >
      <description-html>
         <![CDATA[Flag indicating whether the service is currently running.]]>
      </description-html>
      </property>

            <property name="ruleset" type-id-ref="java.lang.String"
      vmodl-name="ruleset"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of firewall rulesets used by this service.  Must come from the
  list of rulesets in <a href="vim.host.FirewallInfo.html#ruleset">ruleset</a>.]]>
      </description-html>
      </property>

            <property name="policy" type-id-ref="java.lang.String"
      vmodl-name="policy"
      >
      <description-html>
         <![CDATA[Service activation policy.<br>See Policy]]>
      </description-html>
      </property>

            <property name="sourcePackage" type-id-ref="vim.host.Service.SourcePackage"
      vmodl-name="sourcePackage"
      version-id-ref="vim.version.version7"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The source package associated with the service]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.host.Service.Policy</nested-type-id-ref>
      <nested-type-id-ref>vim.host.Service.SourcePackage</nested-type-id-ref>
   </data-object>
   <data-object name="HostVffsSpec"
      type-id="vim.host.VffsVolume.Specification"
      vmodl-name="vim.host.VffsVolume.Specification"
      enclosing-type-id-ref="vim.host.VffsVolume"
      version-id-ref="vim.version.version9"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object type describes the VFFS
  creation specification.]]>
      </description-html>
            <property name="devicePath" type-id-ref="java.lang.String"
      vmodl-name="devicePath"
      >
      <description-html>
         <![CDATA[The device path of the SSD disk.<br>See <a href="vim.host.ScsiDisk.html#devicePath">devicePath</a><br>]]>
      </description-html>
      </property>

            <property name="partition" type-id-ref="vim.host.DiskPartitionInfo.Specification"
      vmodl-name="partition"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Partition specification of the SSD disk. If this property
 is not provided, partition information will be computed
 and generated.]]>
      </description-html>
      </property>

            <property name="majorVersion" type-id-ref="INT"
      vmodl-name="majorVersion"
      >
      <description-html>
         <![CDATA[Major version number of VFFS.  This can be changed if the VFFS is
  upgraded, but this is an irreversible change.]]>
      </description-html>
      </property>

            <property name="volumeName" type-id-ref="java.lang.String"
      vmodl-name="volumeName"
      >
      <description-html>
         <![CDATA[Volume name of VFFS.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostIpConfig"
      type-id="vim.host.IpConfig"
      vmodl-name="vim.host.IpConfig"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The IP configuration.]]>
      </description-html>
            <property name="dhcp" type-id-ref="BOOLEAN"
      vmodl-name="dhcp"
      >
      <description-html>
         <![CDATA[The flag to indicate whether or not DHCP (dynamic host
  control protocol) is enabled.  If this property is set to true,
  the ipAddress and the subnetMask strings cannot be set explicitly.]]>
      </description-html>
      </property>

            <property name="ipAddress" type-id-ref="java.lang.String"
      vmodl-name="ipAddress"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The IP address currently used by the network adapter.
  All IP addresses are specified using IPv4 dot notation.
  For example, "192.168.0.1". Subnet addresses and netmasks are
  specified using the same notation.
  <p>
  <b>Note</b>: When DHCP is enabled, this property reflects the
  current IP configuration and cannot be set.  When DHCP is not
  enabled, this property can be set explicitly.]]>
      </description-html>
      </property>

            <property name="subnetMask" type-id-ref="java.lang.String"
      vmodl-name="subnetMask"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The subnet mask.
  <p>
  <b>Note</b>: When DHCP is not enabled, this property can be
  set explicitly.  When DHCP is enabled, this property reflects the
  current IP configuration and cannot be set.]]>
      </description-html>
      </property>

            <property name="ipV6Config" type-id-ref="vim.host.IpConfig.IpV6AddressConfiguration"
      vmodl-name="ipV6Config"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The ipv6 configuration]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.host.IpConfig.IpV6AddressConfigType</nested-type-id-ref>
      <nested-type-id-ref>vim.host.IpConfig.IpV6AddressStatus</nested-type-id-ref>
      <nested-type-id-ref>vim.host.IpConfig.IpV6Address</nested-type-id-ref>
      <nested-type-id-ref>vim.host.IpConfig.IpV6AddressConfiguration</nested-type-id-ref>
   </data-object>
   <data-object name="CustomizationSysprepText"
      type-id="vim.vm.customization.SysprepText"
      vmodl-name="vim.vm.customization.SysprepText"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.customization.IdentitySettings"
      >
      <description-html>
         <![CDATA[An alternate way to specify the <tt>sysprep.xml</tt> answer file. This string is
  written to the <tt>sysprep.xml</tt> answer file on the target virtual disk.]]>
      </description-html>
            <property name="value" type-id-ref="java.lang.String"
      vmodl-name="value"
      >
      <description-html>
         <![CDATA[Text for the <tt>sysprep.xml</tt> answer file.
  <p>
  See additional information when <a href =
  "https://kb.vmware.com/selfservice/microsites/search.do?language=en_US&cmd=displayKC&externalId=2151684" target="_blank"
  >Using custom sysprep.xml for vCenter Guest Customization</a>.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualSCSIPassthroughOption"
      type-id="vim.vm.device.VirtualSCSIPassthroughOption"
      vmodl-name="vim.vm.device.VirtualSCSIPassthroughOption"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.device.VirtualDeviceOption"
      >
      <description-html>
         <![CDATA[The VirtualSCSIPassthroughOption data object type describes the options
  for the
  <a href="vim.vm.device.VirtualSCSIPassthrough.html">VirtualSCSIPassthrough</a>
  data object type.]]>
      </description-html>
      <nested-type-id-ref>vim.vm.device.VirtualSCSIPassthroughOption.DeviceBackingOption</nested-type-id-ref>
   </data-object>
   <data-object name="GlobalMessageChangedEvent"
      type-id="vim.event.GlobalMessageChangedEvent"
      vmodl-name="vim.event.GlobalMessageChangedEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.SessionEvent"
      >
      <description-html>
         <![CDATA[This event records a change to the global message.]]>
      </description-html>
            <property name="message" type-id-ref="java.lang.String"
      vmodl-name="message"
      >
      <description-html>
         <![CDATA[The new message that was set.]]>
      </description-html>
      </property>

            <property name="prevMessage" type-id-ref="java.lang.String"
      vmodl-name="prevMessage"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The previous message that was set.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostDiskDimensionsLba"
      type-id="vim.host.DiskDimensions.Lba"
      vmodl-name="vim.host.DiskDimensions.Lba"
      enclosing-type-id-ref="vim.host.DiskDimensions"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object type describes the logical block addressing system
  that uses block numbers and block sizes to refer to a block.  This
  scheme is employed by SCSI.  If a SCSI disk is not involved,
  then blockSize is 512 bytes.]]>
      </description-html>
            <property name="blockSize" type-id-ref="INT"
      vmodl-name="blockSize"
      >
      <description-html>
         <![CDATA[The size of the blocks.]]>
      </description-html>
      </property>

            <property name="block" type-id-ref="LONG"
      vmodl-name="block"
      >
      <description-html>
         <![CDATA[The number of blocks.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualE1000Option"
      type-id="vim.vm.device.VirtualE1000Option"
      vmodl-name="vim.vm.device.VirtualE1000Option"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.device.VirtualEthernetCardOption"
      >
      <description-html>
         <![CDATA[The VirtualE1000 option data object type contains the options for the
  <a href="vim.vm.device.VirtualE1000.html">VirtualE1000</a> data object type.]]>
      </description-html>
   </data-object>
   <data-object name="VmPodConfigForPlacement"
      type-id="vim.storageDrs.PodSelectionSpec.VmPodConfig"
      vmodl-name="vim.storageDrs.PodSelectionSpec.VmPodConfig"
      enclosing-type-id-ref="vim.storageDrs.PodSelectionSpec"
      version-id-ref="vim.version.version7"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Initial VM configuration for the specified pod.
  This configuration will be saved to the pod config
  <a href="vim.storageDrs.ConfigInfo.html">StorageDrsConfigInfo</a>
  when the placement recommendations are applied.
  <p>]]>
      </description-html>
            <property name="storagePod" type-id-ref="vim.StoragePod"
      vmodl-name="storagePod"
      >
      <description-html>
         <![CDATA[The pod that this initial configuration applies to.
 Since there could be multiple pods in a single placement request,
 we may need to specify multiple initial VM configurations, one per
 pod.]]>
      </description-html>
      </property>

            <property name="disk" type-id-ref="vim.storageDrs.PodSelectionSpec.DiskLocator"
      vmodl-name="disk"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Array of PodDiskLocator objects.]]>
      </description-html>
      </property>

            <property name="vmConfig" type-id-ref="vim.storageDrs.VmConfigInfo"
      vmodl-name="vmConfig"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The VM configuration for the VM that is being placed.]]>
      </description-html>
      </property>

            <property name="interVmRule" type-id-ref="vim.cluster.RuleInfo"
      vmodl-name="interVmRule"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The initial interVmRules that should during placement of this
 virtual machine. It may not always be possible to specify that the
 virtual machine being placed is part of the rule because the
 virtual machine may not have been created yet. So for simplicity,
 we assume the virtual machine being placed is always implicitly
 part of any rule specified. It will be explicitly added to the
 rule before it is saved to the pod config.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DvsHostLeftEvent"
      type-id="vim.event.DvsHostLeftEvent"
      vmodl-name="vim.event.DvsHostLeftEvent"
      version-id-ref="vim.version.version5"
      base-type-id="vim.event.DvsEvent"
      >
      <description-html>
         <![CDATA[A host left the distributed virtual switch.]]>
      </description-html>
            <property name="hostLeft" type-id-ref="vim.event.HostEventArgument"
      vmodl-name="hostLeft"
      >
      <description-html>
         <![CDATA[The host that left DVS.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ExtSolutionManagerInfoTabInfo"
      type-id="vim.ext.SolutionManagerInfo.TabInfo"
      vmodl-name="vim.ext.SolutionManagerInfo.TabInfo"
      enclosing-type-id-ref="vim.ext.SolutionManagerInfo"
      version-id-ref="vim.version.version7"
      is-deprecated="true"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object contains information about a tab to show in the
 Solution Manager for this extension.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 5.1.]]>
      </deprecated-html>
            <property name="label" type-id-ref="java.lang.String"
      vmodl-name="label"
      is-localizable="true"
      >
      <description-html>
         <![CDATA[The name of the tab.]]>
      </description-html>
      </property>

            <property name="url" type-id-ref="java.lang.String"
      vmodl-name="url"
      >
      <description-html>
         <![CDATA[The URL for the webpage to show in the tab. Extra parameters will be added
 to this URL when vSphere Client loads it. See the "Customizing the vSphere
 Client" technical note for more information.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="TaskFilterSpecByTime"
      type-id="vim.TaskFilterSpec.ByTime"
      vmodl-name="vim.TaskFilterSpec.ByTime"
      enclosing-type-id-ref="vim.TaskFilterSpec"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object type specifies a time range used to filter task history.]]>
      </description-html>
            <property name="timeType" type-id-ref="vim.TaskFilterSpec.TimeOption"
      vmodl-name="timeType"
      >
      <description-html>
         <![CDATA[The time stamp to filter: queued, started, or completed time.]]>
      </description-html>
      </property>

            <property name="beginTime" type-id-ref="vmodl.DateTime"
      vmodl-name="beginTime"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The beginning of the time range.
  If this property is not specified, then tasks are collected from
  the earliest time in the database.
  <p>
  When this property is specified, the time type field must also be specified.]]>
      </description-html>
      </property>

            <property name="endTime" type-id-ref="vmodl.DateTime"
      vmodl-name="endTime"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The end of the time range.
  If this property is not specified, then tasks are collected up to
  the latest time in the database.
  <p>
  When this property is specified, the time type field must also be specified.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VmMigratedEvent"
      type-id="vim.event.VmMigratedEvent"
      vmodl-name="vim.event.VmMigratedEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.VmEvent"
      >
      <description-html>
         <![CDATA[This event records a virtual machine migration.]]>
      </description-html>
            <property name="sourceHost" type-id-ref="vim.event.HostEventArgument"
      vmodl-name="sourceHost"
      >
      <description-html>
         <![CDATA[The source host.  (Because this is after a successful migration,
  the destination host is recorded in the inherited "host" property.)]]>
      </description-html>
      </property>

            <property name="sourceDatacenter" type-id-ref="vim.event.DatacenterEventArgument"
      vmodl-name="sourceDatacenter"
      version-id-ref="vim.version.version7"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The source datacenter]]>
      </description-html>
      </property>

            <property name="sourceDatastore" type-id-ref="vim.event.DatastoreEventArgument"
      vmodl-name="sourceDatastore"
      version-id-ref="vim.version.version7"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The source primary datastore]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VmfsDatastoreAllExtentOption"
      type-id="vim.host.VmfsDatastoreOption.AllExtentInfo"
      vmodl-name="vim.host.VmfsDatastoreOption.AllExtentInfo"
      enclosing-type-id-ref="vim.host.VmfsDatastoreOption"
      version-id-ref="vim.version.version1"
      base-type-id="vim.host.VmfsDatastoreOption.SingleExtentInfo"
      >
      <description-html>
         <![CDATA[Datastore addition policy to use the entire disk as a single extent for
  a VMFS datastore.  If there is any data on the disk, it will be
  overwritten.]]>
      </description-html>
   </data-object>
   <data-object name="VmStaticMacConflictEvent"
      type-id="vim.event.VmStaticMacConflictEvent"
      vmodl-name="vim.event.VmStaticMacConflictEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.VmEvent"
      >
      <description-html>
         <![CDATA[This event records a static MAC address conflict for a virtual machine.]]>
      </description-html>
            <property name="conflictedVm" type-id-ref="vim.event.VmEventArgument"
      vmodl-name="conflictedVm"
      >
      <description-html>
         <![CDATA[The virtual machine whose static MAC address conflicts with
  the current virtual machine's address.]]>
      </description-html>
      </property>

            <property name="mac" type-id-ref="java.lang.String"
      vmodl-name="mac"
      >
      <description-html>
         <![CDATA[The static MAC address that is in conflict.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ClusterDpmHostConfigSpec"
      type-id="vim.cluster.DpmHostConfigSpec"
      vmodl-name="vim.cluster.DpmHostConfigSpec"
      version-id-ref="vim.version.version2"
      base-type-id="vim.option.ArrayUpdateSpec"
      >
      <description-html>
         <![CDATA[The <a href="vim.cluster.DpmHostConfigSpec.html">ClusterDpmHostConfigSpec</a> data object provides information
  that the Server uses to update the DPM configuration for a
  single host (identified by the
  <a href="vim.cluster.DpmHostConfigInfo.html#key">key</a> property).
  The host DPM configuration overrides the cluster
  default DPM setting
  (<a href="vim.cluster.ConfigSpecEx.html">ClusterConfigSpecEx</a>.<a href="vim.cluster.ConfigSpecEx.html#dpmConfig">dpmConfig</a>).
  <p>
  The vSphere API defines three update operations
(<a href="vim.option.ArrayUpdateSpec.html">ArrayUpdateSpec</a>.<a href="vim.option.ArrayUpdateSpec.html#operation">operation</a>).
  <ul>
   <li> add: Define DPM behavior for a host. If the cluster
       configuration already includes a DPM behavior override
       for the specified host, this operation
       removes the existing override and adds the new one.
       The new DPM override will use the cluster default value
       if you do not specify the behavior property
       (<a href="vim.cluster.DpmConfigInfo.html#defaultDpmBehavior">defaultDpmBehavior</a>).
   </li>
   <li> edit: Perform an incremental update to an existing
       DPM configuration entry for a host.
       The reconfigure method changes only the properties
       that you set in the data object. The entry must exist
       in the
       <a href="vim.cluster.ConfigSpecEx.html">ClusterConfigSpecEx</a>.<a href="vim.cluster.ConfigSpecEx.html#dpmHostConfigSpec">dpmHostConfigSpec</a> array.
   </li>
   <li> remove: Remove the DPM override for the specified
       host. To identify the host to delete, use the
       <a href="vim.option.ArrayUpdateSpec.html#removeKey">removeKey</a> property
       to specify the <a href="vim.cluster.DpmHostConfigInfo.html#key">key</a>
       in the host override.
   </li>
  </ul>
  <p>
  Use the <a href="vim.ComputeResource.html#reconfigureEx">ReconfigureComputeResource_Task</a> method
  to update the DPM configuration. If you set the modify parameter
  to true, you can use any of the three operations (add, edit, or remove).
  If you set the modify parameter to false, you can use only the
  add operation.]]>
      </description-html>
            <property name="info" type-id-ref="vim.cluster.DpmHostConfigInfo"
      vmodl-name="info"
      is-optional="true"
      >
      </property>

   </data-object>
   <data-object name="HostDisconnectedEvent"
      type-id="vim.event.HostDisconnectedEvent"
      vmodl-name="vim.event.HostDisconnectedEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.HostEvent"
      >
      <description-html>
         <![CDATA[This event records a disconnection from a host.]]>
      </description-html>
            <property name="reason" type-id-ref="java.lang.String"
      vmodl-name="reason"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Reason why the host was disconnected.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.event.HostDisconnectedEvent.ReasonCode</nested-type-id-ref>
   </data-object>
   <data-object name="VsanHostConfigInfoNetworkInfo"
      type-id="vim.vsan.host.ConfigInfo.NetworkInfo"
      vmodl-name="vim.vsan.host.ConfigInfo.NetworkInfo"
      enclosing-type-id-ref="vim.vsan.host.ConfigInfo"
      version-id-ref="vim.version.version9"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Host-local VSAN network configuration.  This data object is used
 both for specifying and retrieving network configuration for a
 host participating in the VSAN service.]]>
      </description-html>
            <property name="port" type-id-ref="vim.vsan.host.ConfigInfo.NetworkInfo.PortConfig"
      vmodl-name="port"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Set of PortConfig entries for use by the VSAN service, one per
 "virtual network" as used by VSAN.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.vsan.host.ConfigInfo.NetworkInfo.PortConfig</nested-type-id-ref>
   </data-object>
   <data-object name="FileBackedVirtualDiskSpec"
      type-id="vim.VirtualDiskManager.FileBackedVirtualDiskSpec"
      vmodl-name="vim.VirtualDiskManager.FileBackedVirtualDiskSpec"
      enclosing-type-id-ref="vim.VirtualDiskManager"
      version-id-ref="vim.version.version2"
      base-type-id="vim.VirtualDiskManager.VirtualDiskSpec"
      >
      <description-html>
         <![CDATA[Specification used to create a file based virtual disk]]>
      </description-html>
            <property name="capacityKb" type-id-ref="LONG"
      vmodl-name="capacityKb"
      >
      <description-html>
         <![CDATA[Specify the capacity of the virtual disk in Kb.]]>
      </description-html>
      </property>

            <property name="profile" type-id-ref="vim.vm.ProfileSpec"
      vmodl-name="profile"
      version-id-ref="vim.version.version9"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Virtual Disk Profile requirement.

 Profiles are solution specifics.

 Profile Based Storage Management is a vSphere server extension.
 The API users who want to provision VMs using Storage Profiles, need to
 interact with it.

 This is an optional parameter and if user doesn't specify profile,
 the default behavior will apply.]]>
      </description-html>
      </property>

            <property name="crypto" type-id-ref="vim.encryption.CryptoSpec"
      vmodl-name="crypto"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Encryption options for the new virtual disk.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostComplianceCheckedEvent"
      type-id="vim.event.HostComplianceCheckedEvent"
      vmodl-name="vim.event.HostComplianceCheckedEvent"
      version-id-ref="vim.version.version5"
      base-type-id="vim.event.HostEvent"
      >
      <description-html>
         <![CDATA[This event records that a compliance check was triggered
  on the host.]]>
      </description-html>
            <property name="profile" type-id-ref="vim.event.ProfileEventArgument"
      vmodl-name="profile"
      >
      </property>

   </data-object>
   <data-object name="ClusterOvercommittedEvent"
      type-id="vim.event.ClusterOvercommittedEvent"
      vmodl-name="vim.event.ClusterOvercommittedEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.ClusterEvent"
      >
      <description-html>
         <![CDATA[This event records when a cluster's host capacity cannot satisfy resource
 configuration constraints.]]>
      </description-html>
   </data-object>
   <data-object name="DvsDestroyedEvent"
      type-id="vim.event.DvsDestroyedEvent"
      vmodl-name="vim.event.DvsDestroyedEvent"
      version-id-ref="vim.version.version5"
      base-type-id="vim.event.DvsEvent"
      >
      <description-html>
         <![CDATA[A distributed virtual switch was destroyed.]]>
      </description-html>
   </data-object>
   <data-object name="VirtualCdromRemoteAtapiBackingInfo"
      type-id="vim.vm.device.VirtualCdrom.RemoteAtapiBackingInfo"
      vmodl-name="vim.vm.device.VirtualCdrom.RemoteAtapiBackingInfo"
      enclosing-type-id-ref="vim.vm.device.VirtualCdrom"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.device.VirtualDevice.RemoteDeviceBackingInfo"
      >
      <description-html>
         <![CDATA[The VirtualCdrom.RemoteAtapiBackingInfo data class
  represents a remote ATAPI device backing for a virtual CD-ROM.]]>
      </description-html>
   </data-object>
   <data-object name="HostNonCompliantEvent"
      type-id="vim.event.HostNonCompliantEvent"
      vmodl-name="vim.event.HostNonCompliantEvent"
      version-id-ref="vim.version.version5"
      base-type-id="vim.event.HostEvent"
      >
      <description-html>
         <![CDATA[This event records that host went out of compliance.]]>
      </description-html>
   </data-object>
   <data-object name="CustomizationUnknownIpGenerator"
      type-id="vim.vm.customization.UnknownIpGenerator"
      vmodl-name="vim.vm.customization.UnknownIpGenerator"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.customization.IpGenerator"
      >
      <description-html>
         <![CDATA[The IP address is left unspecified. The user must be prompted to supply an IP
  address.]]>
      </description-html>
   </data-object>
   <data-object name="GeneralHostErrorEvent"
      type-id="vim.event.GeneralHostErrorEvent"
      vmodl-name="vim.event.GeneralHostErrorEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.GeneralEvent"
      >
      <description-html>
         <![CDATA[This event is the general error event for a host.]]>
      </description-html>
   </data-object>
   <data-object name="HostFirewallRuleset"
      type-id="vim.host.Ruleset"
      vmodl-name="vim.host.Ruleset"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Data object that describes a single network ruleset that can be
  allowed or blocked by the firewall using the <a href="vim.host.FirewallSystem.html">HostFirewallSystem</a> object.]]>
      </description-html>
            <property name="key" type-id-ref="java.lang.String"
      vmodl-name="key"
      >
      <description-html>
         <![CDATA[Brief identifier for the ruleset.]]>
      </description-html>
      </property>

            <property name="label" type-id-ref="java.lang.String"
      vmodl-name="label"
      is-localizable="true"
      >
      <description-html>
         <![CDATA[Display label for the ruleset.]]>
      </description-html>
      </property>

            <property name="required" type-id-ref="BOOLEAN"
      vmodl-name="required"
      >
      <description-html>
         <![CDATA[Flag indicating whether the ruleset is required and cannot be disabled.]]>
      </description-html>
      </property>

            <property name="rule" type-id-ref="vim.host.Ruleset.Rule"
      vmodl-name="rule"
      is-array="true"
      >
      <description-html>
         <![CDATA[List of rules within the ruleset.]]>
      </description-html>
      </property>

            <property name="service" type-id-ref="java.lang.String"
      vmodl-name="service"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Managed service (if any) that uses this ruleset. Must be one of
  the services listed in <a href="vim.host.ServiceInfo.html#service">service</a>.]]>
      </description-html>
      </property>

            <property name="enabled" type-id-ref="BOOLEAN"
      vmodl-name="enabled"
      >
      <description-html>
         <![CDATA[Flag indicating whether the ruleset is enabled.  If the
  ruleset is enabled, all ports specified in the ruleset are
  opened by the firewall.]]>
      </description-html>
      </property>

            <property name="allowedHosts" type-id-ref="vim.host.Ruleset.IpList"
      vmodl-name="allowedHosts"
      version-id-ref="vim.version.version7"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of ipaddress to allow access to the service]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.host.Ruleset.IpNetwork</nested-type-id-ref>
      <nested-type-id-ref>vim.host.Ruleset.IpList</nested-type-id-ref>
      <nested-type-id-ref>vim.host.Ruleset.RulesetSpec</nested-type-id-ref>
      <nested-type-id-ref>vim.host.Ruleset.Rule</nested-type-id-ref>
   </data-object>
   <data-object name="AdminPasswordNotChangedEvent"
      type-id="vim.event.AdminPasswordNotChangedEvent"
      vmodl-name="vim.event.AdminPasswordNotChangedEvent"
      version-id-ref="vim.version.version2"
      base-type-id="vim.event.HostEvent"
      >
      <description-html>
         <![CDATA[Default password for the Admin user on the host has not been changed.]]>
      </description-html>
   </data-object>
   <data-object name="HostPathSelectionPolicyOption"
      type-id="vim.host.PathSelectionPolicyOption"
      vmodl-name="vim.host.PathSelectionPolicyOption"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Description of options associated with a native multipathing
  path selection policy plugin.]]>
      </description-html>
            <property name="policy" type-id-ref="vim.ElementDescription"
      vmodl-name="policy"
      >
      <description-html>
         <![CDATA[Description of the paths selection policy.  Use the key as the
  identifier.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostCnxFailedNotFoundEvent"
      type-id="vim.event.HostCnxFailedNotFoundEvent"
      vmodl-name="vim.event.HostCnxFailedNotFoundEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.HostEvent"
      >
      <description-html>
         <![CDATA[This event records a failure to connect to a host
  due to a failure to resolve the host name.]]>
      </description-html>
   </data-object>
   <data-object name="DatastoreSummary"
      type-id="vim.Datastore.Summary"
      vmodl-name="vim.Datastore.Summary"
      enclosing-type-id-ref="vim.Datastore"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Summary information about the datastore. The status fields and managed object
  reference is not set when an object of this type is created. These fields and
  references are typically set later when these objects are associated with a host.]]>
      </description-html>
            <property name="datastore" type-id-ref="vim.Datastore"
      vmodl-name="datastore"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The reference to the managed object.]]>
      </description-html>
      </property>

            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      >
      <description-html>
         <![CDATA[The name of the datastore.]]>
      </description-html>
      </property>

            <property name="url" type-id-ref="java.lang.String"
      vmodl-name="url"
      >
      <description-html>
         <![CDATA[The unique locator for the datastore. This property is guaranteed to be valid
  only if <a href="vim.Datastore.Summary.html#accessible">accessible</a> is true.]]>
      </description-html>
      </property>

            <property name="capacity" type-id-ref="LONG"
      vmodl-name="capacity"
      >
      <description-html>
         <![CDATA[Maximum capacity of this datastore, in bytes. This value is updated
  periodically by the server. It can be explicitly refreshed with the Refresh
  operation. This property is guaranteed to be valid only if <a href="vim.Datastore.Summary.html#accessible">accessible</a>
  is true.]]>
      </description-html>
      </property>

            <property name="freeSpace" type-id-ref="LONG"
      vmodl-name="freeSpace"
      >
      <description-html>
         <![CDATA[Available space of this datastore, in bytes. The server periodically
  updates this value. It can be explicitly refreshed with the Refresh operation.
  This property is guaranteed to be valid only if <a href="vim.Datastore.Summary.html#accessible">accessible</a> is true.]]>
      </description-html>
      </property>

            <property name="uncommitted" type-id-ref="LONG"
      vmodl-name="uncommitted"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Total additional storage space, in bytes, potentially used by all
  virtual machines on this datastore. The server periodically updates this
  value.
  It can be explicitly refreshed with the <a href="vim.Datastore.html#refreshStorageInfo">RefreshDatastoreStorageInfo</a> operation.
  This property is valid only if <a href="vim.Datastore.Summary.html#accessible">accessible</a> is true.]]>
      </description-html>
      </property>

            <property name="accessible" type-id-ref="BOOLEAN"
      vmodl-name="accessible"
      >
      <description-html>
         <![CDATA[The connectivity status of this datastore. If this is set to false, meaning the
  datastore is not accessible, this datastore's capacity and freespace properties
  cannot be validated. Furthermore, if this property is set to false, some of the
  properties in this summary and in <a href="vim.Datastore.Info.html">DatastoreInfo</a> should not be
  used. Refer to the documentation for the property of your interest.

  For datastores accessed from multiple hosts, vCenter Server reports
  <a href="vim.Datastore.Summary.html#accessible">accessible</a> as an aggregated value of the
  properties reported in MountInfo. For instance,
  if a datastore is accessible through a subset of hosts, then the value of
  <a href="vim.Datastore.Summary.html#accessible">accessible</a> will be reported as true by
  vCenter Server. And the reason for a daastore being inaccessible from a host
  will be reported in <a href="vim.host.MountInfo.html#inaccessibleReason">inaccessibleReason</a>]]>
      </description-html>
      </property>

            <property name="multipleHostAccess" type-id-ref="BOOLEAN"
      vmodl-name="multipleHostAccess"
      is-optional="true"
      >
      <description-html>
         <![CDATA[More than one host in the datacenter has been configured with access to the
 datastore. This is only provided by VirtualCenter.]]>
      </description-html>
      </property>

            <property name="type" type-id-ref="java.lang.String"
      vmodl-name="type"
      >
      <description-html>
         <![CDATA[Type of file system volume, such as VMFS or NFS.<br>See <a href="vim.host.FileSystemVolume.html#type">type</a><br>]]>
      </description-html>
      </property>

            <property name="maintenanceMode" type-id-ref="java.lang.String"
      vmodl-name="maintenanceMode"
      version-id-ref="vim.version.version7"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The current maintenance mode state of the datastore. The set of
  possible values is described in <a href="vim.Datastore.Summary.MaintenanceModeState.html">DatastoreSummaryMaintenanceModeState</a>.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.Datastore.Summary.MaintenanceModeState</nested-type-id-ref>
   </data-object>
   <data-object name="DVPortgroupPolicy"
      type-id="vim.dvs.DistributedVirtualPortgroup.PortgroupPolicy"
      vmodl-name="vim.dvs.DistributedVirtualPortgroup.PortgroupPolicy"
      enclosing-type-id-ref="vim.dvs.DistributedVirtualPortgroup"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The DistributedVirtualPortgroup policies. This field is not applicable
  when queried directly against an ESX host.]]>
      </description-html>
            <property name="blockOverrideAllowed" type-id-ref="BOOLEAN"
      vmodl-name="blockOverrideAllowed"
      >
      <description-html>
         <![CDATA[Allow the <a href="vim.dvs.DistributedVirtualPort.Setting.html#blocked">blocked</a> setting
  of an individual port to override the setting in
  <a href="vim.dvs.DistributedVirtualPortgroup.ConfigInfo.html#defaultPortConfig">defaultPortConfig</a> of
  a portgroup.]]>
      </description-html>
      </property>

            <property name="shapingOverrideAllowed" type-id-ref="BOOLEAN"
      vmodl-name="shapingOverrideAllowed"
      >
      <description-html>
         <![CDATA[Allow the <a href="vim.dvs.DistributedVirtualPort.Setting.html#inShapingPolicy">inShapingPolicy</a> or
  <a href="vim.dvs.DistributedVirtualPort.Setting.html#outShapingPolicy">outShapingPolicy</a> settings
  of an individual port to override the setting in
  <a href="vim.dvs.DistributedVirtualPortgroup.ConfigInfo.html#defaultPortConfig">defaultPortConfig</a> of
  a portgroup.]]>
      </description-html>
      </property>

            <property name="vendorConfigOverrideAllowed" type-id-ref="BOOLEAN"
      vmodl-name="vendorConfigOverrideAllowed"
      >
      <description-html>
         <![CDATA[Allow the <a href="vim.dvs.DistributedVirtualPort.Setting.html#vendorSpecificConfig">vendorSpecificConfig</a>
  setting of an individual port to override the setting in
  <a href="vim.dvs.DistributedVirtualPortgroup.ConfigInfo.html#defaultPortConfig">defaultPortConfig</a> of
  a portgroup.]]>
      </description-html>
      </property>

            <property name="livePortMovingAllowed" type-id-ref="BOOLEAN"
      vmodl-name="livePortMovingAllowed"
      >
      <description-html>
         <![CDATA[Allow a live port to be moved in and out of the portgroup.]]>
      </description-html>
      </property>

            <property name="portConfigResetAtDisconnect" type-id-ref="BOOLEAN"
      vmodl-name="portConfigResetAtDisconnect"
      >
      <description-html>
         <![CDATA[If true, reset the port network setting back to the portgroup setting
  (thus removing the per-port setting) when the port is disconnected from
  the connectee.]]>
      </description-html>
      </property>

            <property name="networkResourcePoolOverrideAllowed" type-id-ref="BOOLEAN"
      vmodl-name="networkResourcePoolOverrideAllowed"
      version-id-ref="vim.version.version7"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Allow the setting of
  <a href="vim.dvs.DistributedVirtualPort.Setting.html#networkResourcePoolKey">networkResourcePoolKey</a> of an
  individual port to override the setting in
  <a href="vim.dvs.DistributedVirtualPortgroup.ConfigInfo.html#defaultPortConfig">defaultPortConfig</a>
  of a portgroup.]]>
      </description-html>
      </property>

            <property name="trafficFilterOverrideAllowed" type-id-ref="BOOLEAN"
      vmodl-name="trafficFilterOverrideAllowed"
      version-id-ref="vim.version.version9"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Allow the setting of
  <a href="vim.dvs.DistributedVirtualPort.Setting.html#filterPolicy">filterPolicy</a>,
  for an individual port to override the setting in
  <a href="vim.dvs.DistributedVirtualPortgroup.ConfigInfo.html#defaultPortConfig">defaultPortConfig</a> of
  a portgroup.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VMwareDVSVspanCapability"
      type-id="vim.dvs.VmwareDistributedVirtualSwitch.VspanFeatureCapability"
      vmodl-name="vim.dvs.VmwareDistributedVirtualSwitch.VspanFeatureCapability"
      enclosing-type-id-ref="vim.dvs.VmwareDistributedVirtualSwitch"
      version-id-ref="vim.version.version8"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Indicators of support for version-specific Distributed Port Mirroring sessions.]]>
      </description-html>
            <property name="mixedDestSupported" type-id-ref="BOOLEAN"
      vmodl-name="mixedDestSupported"
      >
      <description-html>
         <![CDATA[Flag to indicate whether mixed dest mirror session is supported on the
  vSphere Distributed Switch.]]>
      </description-html>
      </property>

            <property name="dvportSupported" type-id-ref="BOOLEAN"
      vmodl-name="dvportSupported"
      >
      <description-html>
         <![CDATA[Flag to indicate whether dvport mirror session is supported on the
  vSphere Distributed Switch.]]>
      </description-html>
      </property>

            <property name="remoteSourceSupported" type-id-ref="BOOLEAN"
      vmodl-name="remoteSourceSupported"
      >
      <description-html>
         <![CDATA[Flag to indicate whether remote mirror source session is supported on the
  vSphere Distributed Switch.]]>
      </description-html>
      </property>

            <property name="remoteDestSupported" type-id-ref="BOOLEAN"
      vmodl-name="remoteDestSupported"
      >
      <description-html>
         <![CDATA[Flag to indicate whether remote mirror destination session is supported on the
  vSphere Distributed Switch.]]>
      </description-html>
      </property>

            <property name="encapRemoteSourceSupported" type-id-ref="BOOLEAN"
      vmodl-name="encapRemoteSourceSupported"
      >
      <description-html>
         <![CDATA[Flag to indicate whether encapsulated remote mirror source session is supported on the
  vSphere Distributed Switch.]]>
      </description-html>
      </property>

            <property name="erspanProtocolSupported" type-id-ref="BOOLEAN"
      vmodl-name="erspanProtocolSupported"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Flag to indicate whether ERSPAN protocol encapsulation is supported
  on the vSphere Distributed Switch.]]>
      </description-html>
      </property>

            <property name="mirrorNetstackSupported" type-id-ref="BOOLEAN"
      vmodl-name="mirrorNetstackSupported"
      version-id-ref="vim.version.version12"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Flag to indicate whether dvport mirror can be configured to use a
  dedicated network stack instance.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VMwareDvsLagVlanConfig"
      type-id="vim.dvs.VmwareDistributedVirtualSwitch.LagVlanConfig"
      vmodl-name="vim.dvs.VmwareDistributedVirtualSwitch.LagVlanConfig"
      enclosing-type-id-ref="vim.dvs.VmwareDistributedVirtualSwitch"
      version-id-ref="vim.version.version9"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This class defines the vlan configuration of the Link Aggregation
  Control Protocol group.]]>
      </description-html>
            <property name="vlanId" type-id-ref="vim.NumericRange"
      vmodl-name="vlanId"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The VlanId range for the Uplink Ports in the Link Aggregation
  Control Protocol group.
  The valid VlanId range is from 0 to 4094. Overlapping ranges are allowed.
  If set, this property will override the VLAN configuration of Uplink Ports
  in the Link Aggregation Control Protocol group.
  Thus they are no longer inheriting VLAN configuration from their Uplink Port Group.
  Setting this property would require
  <a href="vim.dvs.VmwareDistributedVirtualSwitch.VMwarePortgroupPolicy.html#vlanOverrideAllowed">vlanOverrideAllowed</a>
  of all the Uplink Port Groups to be true,
  otherwise ConflictingConfiguration fault will be raised.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ClusterRecommendation"
      type-id="vim.cluster.Recommendation"
      vmodl-name="vim.cluster.Recommendation"
      version-id-ref="vim.version.version2"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Recommendation is the base class for any packaged group of
   actions that are intended to take the system from one
   state to another one.]]>
      </description-html>
            <property name="key" type-id-ref="java.lang.String"
      vmodl-name="key"
      >
      <description-html>
         <![CDATA[Key to identify the recommendation when calling applyRecommendation.]]>
      </description-html>
      </property>

            <property name="type" type-id-ref="java.lang.String"
      vmodl-name="type"
      >
      <description-html>
         <![CDATA[Type of the recommendation. This differentiates between various
 of recommendations aimed at achieving different goals.]]>
      </description-html>
      </property>

            <property name="time" type-id-ref="vmodl.DateTime"
      vmodl-name="time"
      >
      <description-html>
         <![CDATA[The time this recommendation was computed.]]>
      </description-html>
      </property>

            <property name="rating" type-id-ref="INT"
      vmodl-name="rating"
      >
      <description-html>
         <![CDATA[A rating of the recommendation.
  Valid values range from 1 (lowest confidence) to 5 (highest confidence).]]>
      </description-html>
      </property>

            <property name="reason" type-id-ref="java.lang.String"
      vmodl-name="reason"
      >
      <description-html>
         <![CDATA[A reason code explaining why this set of migrations is being suggested.]]>
      </description-html>
      </property>

            <property name="reasonText" type-id-ref="java.lang.String"
      vmodl-name="reasonText"
      is-localizable="true"
      >
      <description-html>
         <![CDATA[Text that provides more information about the reason code for the suggested
 set of migrations.]]>
      </description-html>
      </property>

            <property name="warningText" type-id-ref="java.lang.String"
      vmodl-name="warningText"
      version-id-ref="vim.version.version10"
      is-optional="true"
      is-localizable="true"
      >
      <description-html>
         <![CDATA[Text that provides warnings about potential adverse implications of
 applying this recommendation]]>
      </description-html>
      </property>

            <property name="warningDetails" type-id-ref="vmodl.LocalizableMessage"
      vmodl-name="warningDetails"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Warning about potential adverse implications of applying a recommendation]]>
      </description-html>
      </property>

            <property name="prerequisite" type-id-ref="java.lang.String"
      vmodl-name="prerequisite"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[This recommendation may depend on some other recommendations.
 The prerequisite recommendations are listed by their keys.]]>
      </description-html>
      </property>

            <property name="action" type-id-ref="vim.cluster.Action"
      vmodl-name="action"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of actions that are executed as part of this recommendation]]>
      </description-html>
      </property>

            <property name="target" type-id-ref="vmodl.ManagedObject"
      vmodl-name="target"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The target object of this recommendation.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.cluster.Recommendation.RecommendationType</nested-type-id-ref>
      <nested-type-id-ref>vim.cluster.Recommendation.ReasonCode</nested-type-id-ref>
   </data-object>
   <data-object name="VirtualUSB"
      type-id="vim.vm.device.VirtualUSB"
      vmodl-name="vim.vm.device.VirtualUSB"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.device.VirtualDevice"
      >
      <description-html>
         <![CDATA[The <a href="vim.vm.device.VirtualUSB.html">VirtualUSB</a> data object describes the USB device configuration
 for a virtual machine. You can attach a USB device to an ESX host.
 The device is available to only one virtual machine at a time. When you remove
 the device from the virtual machine, it becomes available to other virtual machines
 located on the host. You can add up to 20 USB devices to a virtual machine.
 Virtual USB support requires virtual machine hardware version 7 or later.
 <p>
 The <a href="vim.vm.device.VirtualUSB.html">VirtualUSB</a> object represents either a configuration to be applied to
 the virtual machine or the current device configuration on the virtual machine.
 <ul>
 <li>To configure a USB connection for the virtual machine, add a <a href="vim.vm.device.VirtualUSB.html">VirtualUSB</a>
 object to the <a href="vim.vm.device.VirtualDeviceSpec.html">VirtualDeviceConfigSpec</a>.
 Use USB backing (<a href="vim.vm.device.VirtualUSB.USBBackingInfo.html">VirtualUSBUSBBackingInfo</a>) to establish
 a connection with a virtual machine that will remain on the host to which
 the USB device is attached.
 The vSphere Server does not support vMotion for standard USB backing.
 To configure vMotion support for a virtual machine with a USB connection,
 use remote host backing for the USB connection
 (<a href="vim.vm.device.VirtualUSB.RemoteHostBackingInfo.html">VirtualUSBRemoteHostBackingInfo</a>).
 <p>
 To configure a USB device for a virtual machine, the virtual machine
 must have a USB controller. To add a controller, include a
 <a href="vim.vm.device.VirtualUSBController.html">VirtualUSBController</a> object in the virtual device
 specification for your virtual machine configuration. You can add only one
 USB controller to a virtual machine.</li>
 <li>To determine USB device configuration status for the virtual machine,
 check the virtual hardware device list
 (<a href="vim.vm.VirtualHardware.html">VirtualHardware</a>.<a href="vim.vm.VirtualHardware.html#device">device</a>).
 The presence of the <a href="vim.vm.device.VirtualUSB.html">VirtualUSB</a> object in the hardware device list
 indicates that the virtual machine is configured to use a USB device.
 The <a href="vim.vm.device.VirtualUSB.html#connected">connected</a> property indicates
 whether the virtual machine is connected to the device.</li>
 </ul>
 <p>
 To determine the USB options available on the host, use the
 <a href="vim.EnvironmentBrowser.html#queryConfigOption">QueryConfigOption</a> method to retrieve the virtual
 machine configuration. The presence of the <a href="vim.vm.device.VirtualUSBOption.html">VirtualUSBOption</a>
 object in the retrieved configuration
 (<a href="vim.vm.ConfigOption.html">VirtualMachineConfigOption</a>.<a href="vim.vm.ConfigOption.html#hardwareOptions">hardwareOptions</a>.<a href="vim.vm.VirtualHardwareOption.html#virtualDeviceOption">virtualDeviceOption</a>)
 indicates that the host supports USB connections.
 <p>
 The following operations will disconnect a USB device, losing data if data transfer
 is in progress over the USB connection.
 <ul>
 <li>Hot add of memory, CPU, or PCI devices. A hot add operation disconnects only
     USB devices for virtual machines that use a local connection to the device
     (<a href="vim.vm.device.VirtualUSB.USBBackingInfo.html">VirtualUSBUSBBackingInfo</a>).
 <li>Suspend and resume on a virtual machine.
 <li>vMotion of a virtual machine with a USB connection,
     if you are not using remote host USB backing.
 </ul>
 <p>
 The following services do not support USB connections.
 <ul>
 <li>Fault Tolerance virtual machines cannot use USB devices.</li>
 <li>DPM (Distributed Power Management) will put a host into standby,
     regardless of any connections to USB devices on the host.
 <li>DRS (Distributed Resource Scheduling) may power-off hosts that have
     USB connections to virtual machines.</li>
 </ul>]]>
      </description-html>
            <property name="connected" type-id-ref="BOOLEAN"
      vmodl-name="connected"
      version-id-ref="vim.version.version2"
      >
      <description-html>
         <![CDATA[Flag indicating whether the device is currently connected.
  The virtual machine is not connected to the device if the autoconnect pattern
  specified in the USB device backing
  (<a href="vim.vm.device.VirtualDevice.DeviceBackingInfo.html">VirtualDeviceDeviceBackingInfo</a>.<a href="vim.vm.device.VirtualDevice.DeviceBackingInfo.html#deviceName">deviceName</a>)
  can not be satisfied, either
  because there is no such device, or the matching device is not
  available. Valid only while the virtual machine is running.]]>
      </description-html>
      </property>

            <property name="vendor" type-id-ref="INT"
      vmodl-name="vendor"
      version-id-ref="vim.version.version6"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Vendor ID of the USB device.]]>
      </description-html>
      </property>

            <property name="product" type-id-ref="INT"
      vmodl-name="product"
      version-id-ref="vim.version.version6"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Product ID of the USB device.]]>
      </description-html>
      </property>

            <property name="family" type-id-ref="java.lang.String"
      vmodl-name="family"
      version-id-ref="vim.version.version6"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Device class families.
  For possible values see
  <a href="vim.vm.UsbInfo.Family.html">VirtualMachineUsbInfoFamily</a>.]]>
      </description-html>
      </property>

            <property name="speed" type-id-ref="java.lang.String"
      vmodl-name="speed"
      version-id-ref="vim.version.version6"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Device speeds detected by server.
  For possible values see
  <a href="vim.vm.UsbInfo.Speed.html">VirtualMachineUsbInfoSpeed</a>.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.vm.device.VirtualUSB.USBBackingInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.device.VirtualUSB.RemoteHostBackingInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.device.VirtualUSB.RemoteClientBackingInfo</nested-type-id-ref>
   </data-object>
   <data-object name="HostNvmeOpaqueTransportParameters"
      type-id="vim.host.NvmeOpaqueTransportParameters"
      vmodl-name="vim.host.NvmeOpaqueTransportParameters"
      version-id-ref="vim.version.v7_0"
      base-type-id="vim.host.NvmeTransportParameters"
      >
      <description-html>
         <![CDATA[This data object represents the raw transport specific parameters
  returned in a Discovery Log Page Entry, when they cannot be
  interpreted as one of the known common types of parameters.
  <p>
  For details, see:
  <ul>
  <li>"NVM Express over Fabrics 1.0", Section 5.3,
  Discovery Log Page</li>
  </ul>]]>
      </description-html>
            <property name="trtype" type-id-ref="java.lang.String"
      vmodl-name="trtype"
      >
      <description-html>
         <![CDATA[The transport type.
  <p>
  Corresponds to the TRTYPE field in the Discovery Log Page Entry
  as specified by the NVME over Fabrics spec.
  The set of possible values is desribed in <a href="vim.host.NvmeTransportType.html">HostNvmeTransportType</a>.]]>
      </description-html>
      </property>

            <property name="traddr" type-id-ref="java.lang.String"
      vmodl-name="traddr"
      >
      <description-html>
         <![CDATA[The transport address.
  <p>
  Corresponds to the TRADDR field in the Discovery Log Page Entry
  as specified by the NVME over Fabrics spec.]]>
      </description-html>
      </property>

            <property name="adrfam" type-id-ref="java.lang.String"
      vmodl-name="adrfam"
      >
      <description-html>
         <![CDATA[Indicates the address family of the address specified above.
  <p>
  Corresponds to the ADRFAM field in the Discovery Log Page Entry
  as specified by the NVME over Fabrics spec.
  The set of supported values is described in
  <a href="vim.host.NvmeTransportParameters.NvmeAddressFamily.html">HostNvmeTransportParametersNvmeAddressFamily</a>.]]>
      </description-html>
      </property>

            <property name="trsvcid" type-id-ref="java.lang.String"
      vmodl-name="trsvcid"
      >
      <description-html>
         <![CDATA[Transport service identifier.
  <p>
  Corresponds to the TRSVCID field in the Discovery Log Page Entry
  as specified by the NVME over Fabrics spec.
  Its interpretation varies depending on the transport type.]]>
      </description-html>
      </property>

            <property name="tsas" type-id-ref="vmodl.Binary"
      vmodl-name="tsas"
      >
      <description-html>
         <![CDATA[Transport specific address subtype.
  <p>
  Corresponds to the TSAS field in the Discovery Log Page Entry
  as specified by the NVME over Fabrics spec.
  Its interpretation varies depending on the transport type.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostDiagnosticPartitionCreateOption"
      type-id="vim.host.DiagnosticPartition.CreateOption"
      vmodl-name="vim.host.DiagnosticPartition.CreateOption"
      enclosing-type-id-ref="vim.host.DiagnosticPartition"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object describes a disk that can be used to create a
  diagnostic partition.]]>
      </description-html>
            <property name="storageType" type-id-ref="java.lang.String"
      vmodl-name="storageType"
      >
      <description-html>
         <![CDATA[Indicates the storage type of diagnostic partition to be created.<br>See <a href="vim.host.DiagnosticPartition.StorageType.html">DiagnosticPartitionStorageType</a><br>]]>
      </description-html>
      </property>

            <property name="diagnosticType" type-id-ref="java.lang.String"
      vmodl-name="diagnosticType"
      >
      <description-html>
         <![CDATA[Indicates the type of the diagnostic partition to be created.<br>See <a href="vim.host.DiagnosticPartition.DiagnosticType.html">DiagnosticPartitionType</a><br>]]>
      </description-html>
      </property>

            <property name="disk" type-id-ref="vim.host.ScsiDisk"
      vmodl-name="disk"
      >
      <description-html>
         <![CDATA[The disk which has sufficient free space to contain a diagnostic
  partition.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DvsDropNetworkRuleAction"
      type-id="vim.dvs.TrafficRule.DropAction"
      vmodl-name="vim.dvs.TrafficRule.DropAction"
      enclosing-type-id-ref="vim.dvs.TrafficRule"
      version-id-ref="vim.version.version9"
      base-type-id="vim.dvs.TrafficRule.Action"
      >
      <description-html>
         <![CDATA[This class defines network rule action to drop packets.]]>
      </description-html>
   </data-object>
   <data-object name="VirtualSwitchProfile"
      type-id="vim.profile.host.VirtualSwitchProfile"
      vmodl-name="vim.profile.host.VirtualSwitchProfile"
      version-id-ref="vim.version.version5"
      base-type-id="vim.profile.ApplyProfile"
      >
      <description-html>
         <![CDATA[The <a href="vim.profile.host.VirtualSwitchProfile.html">VirtualSwitchProfile</a> data object represents a subprofile
  for a virtual switch. If a profile plug-in defines policies or subprofiles, use the
 <a href="vim.profile.ApplyProfile.html#policy">policy</a> or <a href="vim.profile.ApplyProfile.html#property">property</a>
 list to access the additional configuration data.]]>
      </description-html>
            <property name="key" type-id-ref="java.lang.String"
      vmodl-name="key"
      >
      <description-html>
         <![CDATA[Linkable identifier.]]>
      </description-html>
      </property>

            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      >
      <description-html>
         <![CDATA[Name of the standard virtual switch(VSS).]]>
      </description-html>
      </property>

            <property name="link" type-id-ref="vim.profile.host.VirtualSwitchProfile.LinkProfile"
      vmodl-name="link"
      >
      <description-html>
         <![CDATA[Links that are connected to the virtual switch.]]>
      </description-html>
      </property>

            <property name="numPorts" type-id-ref="vim.profile.host.VirtualSwitchProfile.NumPortsProfile"
      vmodl-name="numPorts"
      >
      <description-html>
         <![CDATA[Number of ports on the virtual switch.]]>
      </description-html>
      </property>

            <property name="networkPolicy" type-id-ref="vim.profile.host.NetworkPolicyProfile"
      vmodl-name="networkPolicy"
      >
      <description-html>
         <![CDATA[Network policy/policies for the virtual switch.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.profile.host.VirtualSwitchProfile.LinkProfile</nested-type-id-ref>
      <nested-type-id-ref>vim.profile.host.VirtualSwitchProfile.NumPortsProfile</nested-type-id-ref>
   </data-object>
   <data-object name="CustomizationDhcpIpV6Generator"
      type-id="vim.vm.customization.DhcpIpV6Generator"
      vmodl-name="vim.vm.customization.DhcpIpV6Generator"
      version-id-ref="vim.version.version5"
      base-type-id="vim.vm.customization.IpV6Generator"
      >
      <description-html>
         <![CDATA[Use a DHCP server to configure ipv6 address]]>
      </description-html>
   </data-object>
   <data-object name="HostSharedGpuCapabilities"
      type-id="vim.host.SharedGpuCapabilities"
      vmodl-name="vim.host.SharedGpuCapabilities"
      version-id-ref="vim.version.version12"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Capability vector indicating the available shared graphics features.]]>
      </description-html>
            <property name="vgpu" type-id-ref="java.lang.String"
      vmodl-name="vgpu"
      >
      <description-html>
         <![CDATA[Name of a particular VGPU available as a shared GPU device.<br>See <a href="vim.vm.PciSharedGpuPassthroughInfo.html">VirtualMachinePciSharedGpuPassthroughInfo</a><br>]]>
      </description-html>
      </property>

            <property name="diskSnapshotSupported" type-id-ref="BOOLEAN"
      vmodl-name="diskSnapshotSupported"
      >
      <description-html>
         <![CDATA[Indicates whether the GPU plugin on this host is capable of
 disk-only snapshots when VM is not powered off. Disk Snaphosts
 on powered off VM are always supported.]]>
      </description-html>
      </property>

            <property name="memorySnapshotSupported" type-id-ref="BOOLEAN"
      vmodl-name="memorySnapshotSupported"
      >
      <description-html>
         <![CDATA[Indicates whether the GPU plugin on this host is capable of
 memory snapshots.]]>
      </description-html>
      </property>

            <property name="suspendSupported" type-id-ref="BOOLEAN"
      vmodl-name="suspendSupported"
      >
      <description-html>
         <![CDATA[Indicates whether the GPU plugin on this host is capable of
 suspend-resume.]]>
      </description-html>
      </property>

            <property name="migrateSupported" type-id-ref="BOOLEAN"
      vmodl-name="migrateSupported"
      >
      <description-html>
         <![CDATA[Indicates whether the GPU plugin on this host is capable of
 migration.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VmConfigFileQueryFilter"
      type-id="vim.host.DatastoreBrowser.VmConfigQuery.Filter"
      vmodl-name="vim.host.DatastoreBrowser.VmConfigQuery.Filter"
      enclosing-type-id-ref="vim.host.DatastoreBrowser.VmConfigQuery"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The filter for the virtual machine configuration file.]]>
      </description-html>
            <property name="matchConfigVersion" type-id-ref="INT"
      vmodl-name="matchConfigVersion"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[If this property is set, only the virtual machine configuration files that
  match one of the specified configuration versions are selected. If no
  versions are specified, this search criteria is ignored.]]>
      </description-html>
      </property>

            <property name="encrypted" type-id-ref="BOOLEAN"
      vmodl-name="encrypted"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[This optional property can be used to filter virtual
  machine configuration files based on whether they are
  encrypted or not.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ArrayUpdateSpec"
      type-id="vim.option.ArrayUpdateSpec"
      vmodl-name="vim.option.ArrayUpdateSpec"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[An ArrayUpdateSpec data object type is a common superclass
  for supporting incremental updates to arrays.
  <p>
  The common code pattern is:
  <pre>
     class MyTypeSpec extrends ArrayUpdateSpec {
           MyTypeInfo info;
     }
  </pre>
  The ArrayUpdateSpec contains the following:
  <p>
  <ul>
  <li><b>operation</b>: the type of operation being performed.
  <li><b>removeKey</b>: In the case of a remove operation, the
  key value that identifies the array to be removed.
  </ul>]]>
      </description-html>
            <property name="operation" type-id-ref="vim.option.ArrayUpdateSpec.Operation"
      vmodl-name="operation"
      >
      <description-html>
         <![CDATA[The type of operation being performed on the specified virtual device.]]>
      </description-html>
      </property>

            <property name="removeKey" type-id-ref="vmodl.Any"
      vmodl-name="removeKey"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Key for the element to be removed. Only used if the operation
  is "remove".]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.option.ArrayUpdateSpec.Operation</nested-type-id-ref>
   </data-object>
   <data-object name="HostRdmaHba"
      type-id="vim.host.RdmaHba"
      vmodl-name="vim.host.RdmaHba"
      version-id-ref="vim.version.v7_0"
      base-type-id="vim.host.HostBusAdapter"
      >
      <description-html>
         <![CDATA[This data object describes the Remote Direct Memory Access
 (RDMA) host bus adapter interface.]]>
      </description-html>
            <property name="associatedRdmaDevice" type-id-ref="java.lang.String"
      vmodl-name="associatedRdmaDevice"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Device name of the associated RDMA device, if any.
  <p>
  Should match the <a href="vim.host.RdmaDevice.html#device">device</a> property
  of the corresponding RDMA device.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualPCIPassthroughPluginBackingInfo"
      type-id="vim.vm.device.VirtualPCIPassthrough.PluginBackingInfo"
      vmodl-name="vim.vm.device.VirtualPCIPassthrough.PluginBackingInfo"
      enclosing-type-id-ref="vim.vm.device.VirtualPCIPassthrough"
      version-id-ref="vim.version.version10"
      base-type-id="vim.vm.device.VirtualDevice.BackingInfo"
      >
      <description-html>
         <![CDATA[The VirtualPCIPassthrough.PluginBackingInfo is a base data object type
  for encoding plugin-specific information. This base type does not define
  any properties. Specific plugin types are represented by subtypes which
  define properties for subtype-specific backing information.]]>
      </description-html>
   </data-object>
   <data-object name="HostDiskPartitionSpec"
      type-id="vim.host.DiskPartitionInfo.Specification"
      vmodl-name="vim.host.DiskPartitionInfo.Specification"
      enclosing-type-id-ref="vim.host.DiskPartitionInfo"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object type describes the disk partition table
  specification used to configure the partitions on a
  disk.  This data object represents the fundamental data needed to specify
  a partition table.]]>
      </description-html>
            <property name="partitionFormat" type-id-ref="java.lang.String"
      vmodl-name="partitionFormat"
      version-id-ref="vim.version.version7"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Partition format type on the disk.]]>
      </description-html>
      </property>

            <property name="chs" type-id-ref="vim.host.DiskDimensions.Chs"
      vmodl-name="chs"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Disk dimensions expressed as cylinder, head, sector (CHS)
  coordinates.]]>
      </description-html>
      </property>

            <property name="totalSectors" type-id-ref="LONG"
      vmodl-name="totalSectors"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Disk dimensions expressed in total number of
  512-byte sectors.]]>
      </description-html>
      </property>

            <property name="partition" type-id-ref="vim.host.DiskPartitionInfo.Partition"
      vmodl-name="partition"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of partitions on the disk.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostCpuIdInfo"
      type-id="vim.host.CpuIdInfo"
      vmodl-name="vim.host.CpuIdInfo"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The CpuIdInfo data object type is used to represent the CPU features of
   a particular host or product, or to specify what the CPU feature
   requirements are for a particular virtual machine or guest operating
   system.
   <p>
   As of vSphere API 5.1 <a href="vim.host.FeatureMask.html">FeatureMask</a> must be
   used for masking all hosts and is the recommended method for masking
   virtual machines with hardware version 9 and above (newer). CpuIdInfo
   should be used only to mask hardware version 8 and lower (older)
   virtual machines.  Although CpuIdInfo can mask all virtual machines
   regardless of hardware version, its application is limited and has been
   superceded by FeatureMask.
   <p>
   For each register (eax,ebx,ecx,edx), the string is a bit mask of the form:
   <pre>
       ????:????:????:????:????:????:????:????
   </pre>
    <p>
   When used to represent the features of a specific processor package
   (<a href="vim.host.HardwareInfo.html#cpuPkg">cpuPkg</a>), the features common to all
   processors on a host (<a href="vim.host.HardwareInfo.html#cpuFeature">cpuFeature</a>), or the
   features supported by a virtualization platform
   (<a href="vim.host.Capability.html#supportedCpuFeature">supportedCpuFeature</a>), each bit is either '0'
   or '1', or '-' for unknown/unspecified. In these feature vectors, the
   vendor field is never set.
   <p>
   Optional values in these feature vectors default to
   '----:----:----:----:----:----:----:----'.
   <p>
   When specifying the required feature set for a virtual machine or a guest
   operating system, the bits can take on the values as described below, and
   the vendor field may be set. The total feature requirements for a virtual
   machine are composed by using any requirements listed in the virtual
   machine's configuration to override the requirements listed in the
   descriptor for the virtual machine's guest OS.
   <p>
   Bits used for specifying requirements:
   <ul>
   <li><b>x</b>: Unused by guest software.
   <li><b>T</b>: Feature that the guest software requires to be enabled.
   <li><b>F</b>: Feature that the guest software requires to be disabled.
   <li><b>1</b>: Feature will be reported as enabled if queried by the guest
                 software.
   <li><b>0</b>: Feature will be reported as disabled if queried by the guest
                 software.
   <li><b>R</b>: Feature will be reported as disabled if queried by the guest
                 software; however, for VMotion the actual value of this
                 feature is required to be the same on both hosts.
   <li><b>H</b>: Used by guest software. For VMotion the value of this
                 feature is required to be the same on both hosts.
   <li><b>-</b>: This bit type is only used in the requirements stored in
                 the virtual machine's configuration. It indicates that, for
                 this bit position, the requirement from the guest OS
                 descriptor should be used instead.
   </ul>
   The values 'F' and '1' are rarely used but included for completeness. The
   '0' and '1' values do not promise a faithful virtualization of these
   features; whether the features work when forced to 0 or 1 is highly
   dependent on the guest software.
   <p>
   Optional values in the requirements from the virtual machine's
   configuration default to '----:----:----:----:----:----:----:----'.
   Optional values in the requirements from the guest OS descriptor default
   to 'xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx'.
   <p>
   Once the feature requirements for a virtual machine have been composed
   from the virtual machine's configuration and guest OS descriptor, the bit
   types above are used to identify whether or not the virtual machine
   can be powered on or be migrated with VMotion to a particular host.
   The rules are as follows:
   <ul>
   <li><b>Power-on</b>: Requirements marked as 'T' or 'F' must match bits
   '1' or '0', respectively, in the features advertised by the HardwareInfo
   of the power-on host.
   <li><b>VMotion</b>: Requirements marked as 'T' or 'F' must match bits
   '1' or '0', respectively, in the features advertised by the HardwareInfo
   of the destination host. Also, at the positions where requirements are
   marked 'H' or 'R', the advertised value of that feature for the source
   host must match that of the destination host.
   </ul>]]>
      </description-html>
            <property name="level" type-id-ref="INT"
      vmodl-name="level"
      >
      <description-html>
         <![CDATA[Level (EAX input to CPUID).]]>
      </description-html>
      </property>

            <property name="vendor" type-id-ref="java.lang.String"
      vmodl-name="vendor"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Used if this mask is for a particular vendor.]]>
      </description-html>
      </property>

            <property name="eax" type-id-ref="java.lang.String"
      vmodl-name="eax"
      is-optional="true"
      >
      <description-html>
         <![CDATA[String representing the required EAX bits.]]>
      </description-html>
      </property>

            <property name="ebx" type-id-ref="java.lang.String"
      vmodl-name="ebx"
      is-optional="true"
      >
      <description-html>
         <![CDATA[String representing the required EBX bits.]]>
      </description-html>
      </property>

            <property name="ecx" type-id-ref="java.lang.String"
      vmodl-name="ecx"
      is-optional="true"
      >
      <description-html>
         <![CDATA[String representing the required ECX bits.]]>
      </description-html>
      </property>

            <property name="edx" type-id-ref="java.lang.String"
      vmodl-name="edx"
      is-optional="true"
      >
      <description-html>
         <![CDATA[String representing the required EDX bits.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DVSVendorSpecificConfig"
      type-id="vim.dvs.DistributedVirtualPort.VendorSpecificConfig"
      vmodl-name="vim.dvs.DistributedVirtualPort.VendorSpecificConfig"
      enclosing-type-id-ref="vim.dvs.DistributedVirtualPort"
      version-id-ref="vim.version.version5"
      base-type-id="vim.InheritablePolicy"
      >
      <description-html>
         <![CDATA[This data object type describes vendor specific configuration.]]>
      </description-html>
            <property name="keyValue" type-id-ref="vim.dvs.KeyedOpaqueBlob"
      vmodl-name="keyValue"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[An opaque binary blob that stores vendor specific configuration.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DrsRuleComplianceEvent"
      type-id="vim.event.DrsRuleComplianceEvent"
      vmodl-name="vim.event.DrsRuleComplianceEvent"
      version-id-ref="vim.version.version6"
      base-type-id="vim.event.VmEvent"
      >
      <description-html>
         <![CDATA[This event records when a virtual machine comes into compliance with DRS rules.]]>
      </description-html>
   </data-object>
   <data-object name="ScheduledTaskDetail"
      type-id="vim.scheduler.ScheduledTaskDescription.SchedulerDetail"
      vmodl-name="vim.scheduler.ScheduledTaskDescription.SchedulerDetail"
      enclosing-type-id-ref="vim.scheduler.ScheduledTaskDescription"
      version-id-ref="vim.version.version1"
      base-type-id="vim.TypeDescription"
      >
      <description-html>
         <![CDATA[Descriptive detail for each scheduler type.]]>
      </description-html>
            <property name="frequency" type-id-ref="java.lang.String"
      vmodl-name="frequency"
      >
      <description-html>
         <![CDATA[Scheduler frequency description.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualMachineContentLibraryItemInfo"
      type-id="vim.vm.ContentLibraryItemInfo"
      vmodl-name="vim.vm.ContentLibraryItemInfo"
      version-id-ref="vim.version.v7_0"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Describes the content library item information
  associated with the virtual machine.]]>
      </description-html>
            <property name="contentLibraryItemUuid" type-id-ref="java.lang.String"
      vmodl-name="contentLibraryItemUuid"
      >
      <description-html>
         <![CDATA[The content library item UUID]]>
      </description-html>
      </property>

            <property name="contentLibraryItemVersion" type-id-ref="java.lang.String"
      vmodl-name="contentLibraryItemVersion"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The content library item version is determined and
 managed by content library and this field stamps the version
 provided by CL to the VM.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ClusterConfigInfo"
      type-id="vim.cluster.ConfigInfo"
      vmodl-name="vim.cluster.ConfigInfo"
      version-id-ref="vim.version.version1"
      is-deprecated="true"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[A complete cluster configuration.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of VI API 2.5, use <a href="vim.cluster.ConfigInfoEx.html">ClusterConfigInfoEx</a>.]]>
      </deprecated-html>
            <property name="dasConfig" type-id-ref="vim.cluster.DasConfigInfo"
      vmodl-name="dasConfig"
      >
      <description-html>
         <![CDATA[Cluster-wide configuration of the vSphere HA service.]]>
      </description-html>
      </property>

            <property name="dasVmConfig" type-id-ref="vim.cluster.DasVmConfigInfo"
      vmodl-name="dasVmConfig"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of virtual machine configurations for the vSphere HA
  service. Each entry applies to one virtual machine.
  <p>
  If a virtual machine is not specified in this array, the service uses
  the default settings for that virtual machine.]]>
      </description-html>
      </property>

            <property name="drsConfig" type-id-ref="vim.cluster.DrsConfigInfo"
      vmodl-name="drsConfig"
      >
      <description-html>
         <![CDATA[Cluster-wide configuration of the VMware DRS service.]]>
      </description-html>
      </property>

            <property name="drsVmConfig" type-id-ref="vim.cluster.DrsVmConfigInfo"
      vmodl-name="drsVmConfig"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of virtual machine configurations for the VMware DRS
  service. Each entry applies to one virtual machine.
  <p>
  If a virtual machine is not specified in this array, the service uses
  the default settings for that virtual machine.]]>
      </description-html>
      </property>

            <property name="rule" type-id-ref="vim.cluster.RuleInfo"
      vmodl-name="rule"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Cluster-wide rules.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VmOrphanedEvent"
      type-id="vim.event.VmOrphanedEvent"
      vmodl-name="vim.event.VmOrphanedEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.VmEvent"
      >
      <description-html>
         <![CDATA[This event records a virtual machine for which no host is responsible.]]>
      </description-html>
   </data-object>
   <data-object name="VMwareIpfixConfig"
      type-id="vim.dvs.VmwareDistributedVirtualSwitch.IpfixConfig"
      vmodl-name="vim.dvs.VmwareDistributedVirtualSwitch.IpfixConfig"
      enclosing-type-id-ref="vim.dvs.VmwareDistributedVirtualSwitch"
      version-id-ref="vim.version.version7"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Configuration for IPFIX monitoring of distributed virtual switch traffic.
  IPFIX monitoring must be enabled to use this capability. See
  <a href="vim.dvs.VmwareDistributedVirtualSwitch.VmwarePortConfigPolicy.html">VMwareDVSPortSetting</a>.<a href="vim.dvs.VmwareDistributedVirtualSwitch.VmwarePortConfigPolicy.html#ipfixEnabled">ipfixEnabled</a>.]]>
      </description-html>
            <property name="collectorIpAddress" type-id-ref="java.lang.String"
      vmodl-name="collectorIpAddress"
      is-optional="true"
      >
      <description-html>
         <![CDATA[IP address for the ipfix collector, using IPv4 or IPv6.
  IPv6 is supported in vSphere Distributed Switch Version 6.0 or later.
  This must be set before ipfix monitoring can be enabled for the
  switch, or for any portgroup or port of the switch.]]>
      </description-html>
      </property>

            <property name="collectorPort" type-id-ref="INT"
      vmodl-name="collectorPort"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Port for the ipfix collector. This must be set before ipfix monitoring
  can be enabled for the switch, or for any portgroup or port of the
  switch. Legal value range is 0-65535.]]>
      </description-html>
      </property>

            <property name="observationDomainId" type-id-ref="LONG"
      vmodl-name="observationDomainId"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Observation Domain Id for the ipfix collector. Observation Domain Id is supported
  in vSphere Distributed Switch Version 6.0 or later.
  Legal value range is 0-((2^32)-1)]]>
      </description-html>
      </property>

            <property name="activeFlowTimeout" type-id-ref="INT"
      vmodl-name="activeFlowTimeout"
      >
      <description-html>
         <![CDATA[The number of seconds after which "active" flows are forced to be
  exported to the collector. Legal value range is 60-3600. Default: 60.]]>
      </description-html>
      </property>

            <property name="idleFlowTimeout" type-id-ref="INT"
      vmodl-name="idleFlowTimeout"
      >
      <description-html>
         <![CDATA[The number of seconds after which "idle" flows are forced to be
  exported to the collector. Legal value range is 10-600. Default: 15.]]>
      </description-html>
      </property>

            <property name="samplingRate" type-id-ref="INT"
      vmodl-name="samplingRate"
      >
      <description-html>
         <![CDATA[The ratio of total number of packets to the number of packets
  analyzed. Set to 0 to disable sampling. Legal value range is 0-16384.
  Default: 4096.]]>
      </description-html>
      </property>

            <property name="internalFlowsOnly" type-id-ref="BOOLEAN"
      vmodl-name="internalFlowsOnly"
      >
      <description-html>
         <![CDATA[Whether to limit analysis to traffic that has both source and
  destination served by the same host. Default: false.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="NvdimmDimmInfo"
      type-id="vim.host.NvdimmSystem.DimmInfo"
      vmodl-name="vim.host.NvdimmSystem.DimmInfo"
      enclosing-type-id-ref="vim.host.NvdimmSystem"
      version-id-ref="vim.version.version12"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Get detailed information of a nvdimm]]>
      </description-html>
            <property name="dimmHandle" type-id-ref="INT"
      vmodl-name="dimmHandle"
      >
      <description-html>
         <![CDATA[Unique device identifier]]>
      </description-html>
      </property>

            <property name="healthInfo" type-id-ref="vim.host.NvdimmSystem.HealthInfo"
      vmodl-name="healthInfo"
      >
      <description-html>
         <![CDATA[Health status of nvdimm.
  HealthInfo]]>
      </description-html>
      </property>

            <property name="totalCapacity" type-id-ref="LONG"
      vmodl-name="totalCapacity"
      >
      <description-html>
         <![CDATA[Total capacity of NVDIMM in bytes]]>
      </description-html>
      </property>

            <property name="persistentCapacity" type-id-ref="LONG"
      vmodl-name="persistentCapacity"
      >
      <description-html>
         <![CDATA[Total persistent capacity in DIMM (in bytes)]]>
      </description-html>
      </property>

            <property name="availablePersistentCapacity" type-id-ref="LONG"
      vmodl-name="availablePersistentCapacity"
      >
      <description-html>
         <![CDATA[Persistent Capacity in DIMM currently not allocated]]>
      </description-html>
      </property>

            <property name="volatileCapacity" type-id-ref="LONG"
      vmodl-name="volatileCapacity"
      >
      <description-html>
         <![CDATA[Total volatile capacity in DIMM (in bytes)]]>
      </description-html>
      </property>

            <property name="availableVolatileCapacity" type-id-ref="LONG"
      vmodl-name="availableVolatileCapacity"
      >
      <description-html>
         <![CDATA[Volatile capacity in DIMM currently not allocated]]>
      </description-html>
      </property>

            <property name="blockCapacity" type-id-ref="LONG"
      vmodl-name="blockCapacity"
      >
      <description-html>
         <![CDATA[Total block capacity in DIMM (in bytes)]]>
      </description-html>
      </property>

            <property name="regionInfo" type-id-ref="vim.host.NvdimmSystem.RegionInfo"
      vmodl-name="regionInfo"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[NVDIMM region information.
 List of regions in the NVDIMM. These regions may or maynot
 be a part of an interleave set.]]>
      </description-html>
      </property>

            <property name="representationString" type-id-ref="java.lang.String"
      vmodl-name="representationString"
      >
      <description-html>
         <![CDATA[NVDIMM Representation string which is a sequence of
 numbers to uniquely identify the DIMM.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostStorageElementInfo"
      type-id="vim.host.HardwareStatusInfo.StorageStatusInfo"
      vmodl-name="vim.host.HardwareStatusInfo.StorageStatusInfo"
      enclosing-type-id-ref="vim.host.HardwareStatusInfo"
      version-id-ref="vim.version.version2"
      base-type-id="vim.host.HardwareStatusInfo.HardwareElementInfo"
      >
      <description-html>
         <![CDATA[Data object describing the operational status of various storage
  elements.]]>
      </description-html>
            <property name="operationalInfo" type-id-ref="vim.host.HardwareStatusInfo.StorageStatusInfo.OperationalInfo"
      vmodl-name="operationalInfo"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Other information regarding the operational state of the
  storage element.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.host.HardwareStatusInfo.StorageStatusInfo.OperationalInfo</nested-type-id-ref>
   </data-object>
   <data-object name="VirtualMachineMetadataManagerVmMetadataInput"
      type-id="vim.vm.MetadataManager.VmMetadataInput"
      vmodl-name="vim.vm.MetadataManager.VmMetadataInput"
      enclosing-type-id-ref="vim.vm.MetadataManager"
      version-id-ref="vim.version.version9"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[VmMetadataInput specifies the operation and metadata for a
 specific VM.]]>
      </description-html>
            <property name="operation" type-id-ref="java.lang.String"
      vmodl-name="operation"
      >
      <description-html>
         <![CDATA[The input operation type.  The values come from VmMetadataOp]]>
      </description-html>
      </property>

            <property name="vmMetadata" type-id-ref="vim.vm.MetadataManager.VmMetadata"
      vmodl-name="vmMetadata"
      >
      <description-html>
         <![CDATA[the VM and optional metadata]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VmUuidAssignedEvent"
      type-id="vim.event.VmUuidAssignedEvent"
      vmodl-name="vim.event.VmUuidAssignedEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.VmEvent"
      >
      <description-html>
         <![CDATA[This event records the assignment of a new BIOS UUID
  to a virtual machine.]]>
      </description-html>
            <property name="uuid" type-id-ref="java.lang.String"
      vmodl-name="uuid"
      >
      <description-html>
         <![CDATA[The new BIOS UUID.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="CustomizationFailed"
      type-id="vim.event.CustomizationFailed"
      vmodl-name="vim.event.CustomizationFailed"
      version-id-ref="vim.version.version2"
      base-type-id="vim.event.CustomizationEvent"
      >
      <description-html>
         <![CDATA[The customization sequence in the guest failed.]]>
      </description-html>
            <property name="reason" type-id-ref="java.lang.String"
      vmodl-name="reason"
      version-id-ref="vim.version.v7_0"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Reason why the customization failed<br>See CustomizationFailed.ReasonCode.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.event.CustomizationFailed.ReasonCode</nested-type-id-ref>
   </data-object>
   <data-object name="DateTimeProfile"
      type-id="vim.profile.host.DateTimeProfile"
      vmodl-name="vim.profile.host.DateTimeProfile"
      version-id-ref="vim.version.version5"
      base-type-id="vim.profile.ApplyProfile"
      >
      <description-html>
         <![CDATA[The <a href="vim.profile.host.DateTimeProfile.html">DateTimeProfile</a> data object represents host date and time configuration.
 Use the <a href="vim.profile.ApplyProfile.html#policy">policy</a> list for access to configuration data
 for the date and time profile. Use the <a href="vim.profile.ApplyProfile.html#property">property</a> list
 for access to subprofiles, if any.]]>
      </description-html>
   </data-object>
   <data-object name="HostNetworkConfigNetStackSpec"
      type-id="vim.host.NetworkConfig.NetStackSpec"
      vmodl-name="vim.host.NetworkConfig.NetStackSpec"
      enclosing-type-id-ref="vim.host.NetworkConfig"
      version-id-ref="vim.version.version9"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data type describes Network Stack Spec]]>
      </description-html>
            <property name="netStackInstance" type-id-ref="vim.host.NetStackInstance"
      vmodl-name="netStackInstance"
      >
      <description-html>
         <![CDATA[Network stack instance]]>
      </description-html>
      </property>

            <property name="operation" type-id-ref="java.lang.String"
      vmodl-name="operation"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Operation type, see
  <a href="vim.ConfigSpecOperation.html">ConfigSpecOperation</a> for valid values.
  Only edit operation is supported currently.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostEsxAgentHostManagerConfigInfo"
      type-id="vim.host.EsxAgentHostManager.ConfigInfo"
      vmodl-name="vim.host.EsxAgentHostManager.ConfigInfo"
      enclosing-type-id-ref="vim.host.EsxAgentHostManager"
      version-id-ref="vim.version.version7"
      base-type-id="vmodl.DynamicData"
      >
            <property name="agentVmDatastore" type-id-ref="vim.Datastore"
      vmodl-name="agentVmDatastore"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Datastore used for deploying Agent VMs on this host.]]>
      </description-html>
      </property>

            <property name="agentVmNetwork" type-id-ref="vim.Network"
      vmodl-name="agentVmNetwork"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Management Network for Agent VMs on this host.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="NetworkPolicyProfile"
      type-id="vim.profile.host.NetworkPolicyProfile"
      vmodl-name="vim.profile.host.NetworkPolicyProfile"
      version-id-ref="vim.version.version5"
      base-type-id="vim.profile.ApplyProfile"
      >
      <description-html>
         <![CDATA[The <a href="vim.profile.host.NetworkPolicyProfile.html">NetworkPolicyProfile</a> data object represents a
 network policy. The <a href="vim.profile.ApplyProfile.html#policy">policy</a> property
 contains network configuration data values.]]>
      </description-html>
   </data-object>
   <data-object name="StorageIORMInfo"
      type-id="vim.StorageResourceManager.IORMConfigInfo"
      vmodl-name="vim.StorageResourceManager.IORMConfigInfo"
      enclosing-type-id-ref="vim.StorageResourceManager"
      version-id-ref="vim.version.version6"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Configuration of storage I/O resource management.]]>
      </description-html>
            <property name="enabled" type-id-ref="BOOLEAN"
      vmodl-name="enabled"
      >
      <description-html>
         <![CDATA[Flag indicating whether or not the service is enabled.]]>
      </description-html>
      </property>

            <property name="congestionThresholdMode" type-id-ref="java.lang.String"
      vmodl-name="congestionThresholdMode"
      version-id-ref="vim.version.version8"
      >
      <description-html>
         <![CDATA[Mode of congestion threshold specification
 For more information, see
 <a href="vim.StorageResourceManager.CongestionThresholdMode.html">StorageIORMThresholdMode</a>]]>
      </description-html>
      </property>

            <property name="congestionThreshold" type-id-ref="INT"
      vmodl-name="congestionThreshold"
      >
      <description-html>
         <![CDATA[The latency beyond which the storage array is considered congested.
  <p>
  If storage I/O resource management is enabled on a datastore,
  the algorithm tries to maintain the latency to be below or
  close to this value. The unit is millisecond. The range of
  this value is between 5 to 100 milliseconds.]]>
      </description-html>
      </property>

            <property name="percentOfPeakThroughput" type-id-ref="INT"
      vmodl-name="percentOfPeakThroughput"
      version-id-ref="vim.version.version8"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The percentage of peak throughput to be used for setting congestion threshold
 of a datastore. Valid values are between 50 to 100. Default value is 90%
 <p>
 For more information, see
  <a href="vim.StorageResourceManager.IORMConfigInfo.html#congestionThreshold">congestionThreshold</a>]]>
      </description-html>
      </property>

            <property name="statsCollectionEnabled" type-id-ref="BOOLEAN"
      vmodl-name="statsCollectionEnabled"
      version-id-ref="vim.version.version7"
      is-deprecated="true"
      >
      <description-html>
         <![CDATA[Flag indicating whether service is running in stats collection mode.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 6.5, use <a href="vim.StorageResourceManager.IORMConfigInfo.html#enabled">enabled</a> instead.]]>
      </deprecated-html>
      </property>

            <property name="reservationEnabled" type-id-ref="BOOLEAN"
      vmodl-name="reservationEnabled"
      version-id-ref="vim.version.version10"
      >
      <description-html>
         <![CDATA[Flag indicating whether IO reservations support is enabled.]]>
      </description-html>
      </property>

            <property name="statsAggregationDisabled" type-id-ref="BOOLEAN"
      vmodl-name="statsAggregationDisabled"
      version-id-ref="vim.version.version7"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Flag indicating whether stats aggregation is disabled.]]>
      </description-html>
      </property>

            <property name="reservableIopsThreshold" type-id-ref="INT"
      vmodl-name="reservableIopsThreshold"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Storage DRS makes storage migration recommendations
 if total IOPs reservation for all VMs running on the
 datastore is higher than specified threshold value.
 This value (if present) overrides]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VmSecondaryAddedEvent"
      type-id="vim.event.VmSecondaryAddedEvent"
      vmodl-name="vim.event.VmSecondaryAddedEvent"
      version-id-ref="vim.version.version5"
      base-type-id="vim.event.VmEvent"
      >
      <description-html>
         <![CDATA[This event records a secondary VM is added.]]>
      </description-html>
   </data-object>
   <data-object name="VmUpgradeFailedEvent"
      type-id="vim.event.VmUpgradeFailedEvent"
      vmodl-name="vim.event.VmUpgradeFailedEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.VmEvent"
      >
      <description-html>
         <![CDATA[This event records a failure to upgrade virtual hardware.]]>
      </description-html>
   </data-object>
   <data-object name="VirtualDeviceDeviceBackingOption"
      type-id="vim.vm.device.VirtualDeviceOption.DeviceBackingOption"
      vmodl-name="vim.vm.device.VirtualDeviceOption.DeviceBackingOption"
      enclosing-type-id-ref="vim.vm.device.VirtualDeviceOption"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.device.VirtualDeviceOption.BackingOption"
      >
      <description-html>
         <![CDATA[The DeviceBackingOption data class contains device-specific backing options.]]>
      </description-html>
            <property name="autoDetectAvailable" type-id-ref="vim.option.BoolOption"
      vmodl-name="autoDetectAvailable"
      version-id-ref="vim.version.version2"
      >
      <description-html>
         <![CDATA[Flag to indicate whether the specific instance of this device can
 be auto-detected on the host instead of having to specify a
 particular physical device.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostPortGroupProfile"
      type-id="vim.profile.host.HostPortGroupProfile"
      vmodl-name="vim.profile.host.HostPortGroupProfile"
      version-id-ref="vim.version.version5"
      base-type-id="vim.profile.host.PortGroupProfile"
      >
      <description-html>
         <![CDATA[The <a href="vim.profile.host.HostPortGroupProfile.html">HostPortGroupProfile</a> data object represents the subprofile
  for a port group that will be used by the ESX host.
  If a profile plug-in defines policies or subprofiles, use the
  <a href="vim.profile.ApplyProfile.html#policy">policy</a> or <a href="vim.profile.ApplyProfile.html#property">property</a>
  list to access the additional configuration data.]]>
      </description-html>
            <property name="ipConfig" type-id-ref="vim.profile.host.IpAddressProfile"
      vmodl-name="ipConfig"
      >
      <description-html>
         <![CDATA[IP address configuration for the Host network.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualUSBUSBBackingInfo"
      type-id="vim.vm.device.VirtualUSB.USBBackingInfo"
      vmodl-name="vim.vm.device.VirtualUSB.USBBackingInfo"
      enclosing-type-id-ref="vim.vm.device.VirtualUSB"
      version-id-ref="vim.version.version2"
      base-type-id="vim.vm.device.VirtualDevice.DeviceBackingInfo"
      >
      <description-html>
         <![CDATA[The <a href="vim.vm.device.VirtualUSB.USBBackingInfo.html">VirtualUSBUSBBackingInfo</a> data object
 identifies a USB device on the host where the virtual machine
 is located. This type of backing supports only a local connection
 where the virtual machine will remain on the host to which the
 USB device is attached.
 <p>
 To identify the USB device, you specify an autoconnect pattern
 for the <a href="vim.vm.device.VirtualDevice.DeviceBackingInfo.html#deviceName">deviceName</a>.
 The virtual machine can connect to the USB device if the ESX server
 can find a USB device described by the autoconnect pattern.
 The autoconnect pattern consists of name:value pairs. You can
 use any combination of the following fields.
 <ul>
 <li>path - USB connection path on the host</li>
 <li>pid - idProduct field in the USB device descriptor</li>
 <li>vid - idVendor field in the USB device descriptor</li>
 <li>hostId - unique ID for the host</li>
 <li>speed - device speed (low, full, or high)</li>
 </ul>
 <p>
 For example, the following pattern identifies a USB device:
 <p>
 &nbsp;&nbsp;&nbsp;&nbsp;<code>"path:1/3/0 hostId:44\ 45\ 4c\ 43\ 00\ 10\ 54-80\ 35\ ca\ c0\ 4f\ 4d\ 37\ 31"</code>
 <p>
 This pattern identifies the USB device connected to port 1/3/0 on the
 host with the unique id <code>0x44454c4c430010548035cac04f4d3731</code>.
 <p>
 Special characters for autoconnect pattern values:
 <ul>
 <li>The name and value are separated by a colon (:). </li>
 <li>Name:value pairs are separated by spaces. </li>
 <li>The escape character is a backslash (\). Use a single backslash to embed
 a space in a value. Use a double blackslash to embed a single backslash
 in the value.</li>
 </ul>]]>
      </description-html>
   </data-object>
   <data-object name="TaskReason"
      type-id="vim.TaskReason"
      vmodl-name="vim.TaskReason"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Base type for all task reasons.
  Task reasons represent the kind of entity responsible for a task's creation.]]>
      </description-html>
   </data-object>
   <data-object name="AlarmEventArgument"
      type-id="vim.event.AlarmEventArgument"
      vmodl-name="vim.event.AlarmEventArgument"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.EntityEventArgument"
      >
      <description-html>
         <![CDATA[The event argument is an Alarm object.]]>
      </description-html>
            <property name="alarm" type-id-ref="vim.alarm.Alarm"
      vmodl-name="alarm"
      >
      <description-html>
         <![CDATA[The Alarm object.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VmMessageWarningEvent"
      type-id="vim.event.VmMessageWarningEvent"
      vmodl-name="vim.event.VmMessageWarningEvent"
      version-id-ref="vim.version.version5"
      base-type-id="vim.event.VmEvent"
      >
      <description-html>
         <![CDATA[This event records when a warning message (consisting of a collection of "observations")
 is thrown by the virtual machine. This is a generic event for such messages.]]>
      </description-html>
            <property name="message" type-id-ref="java.lang.String"
      vmodl-name="message"
      is-localizable="true"
      >
      <description-html>
         <![CDATA[A raw message returned by the virtualization platform.]]>
      </description-html>
      </property>

            <property name="messageInfo" type-id-ref="vim.vm.Message"
      vmodl-name="messageInfo"
      is-array="true"
      is-optional="true"
      >
      </property>

   </data-object>
   <data-object name="DatastoreDuplicatedEvent"
      type-id="vim.event.DatastoreDuplicatedEvent"
      vmodl-name="vim.event.DatastoreDuplicatedEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.DatastoreEvent"
      >
      <description-html>
         <![CDATA[This event records when a duplicate datastore name is found.
 This event is used in VirtualCenter 1.x and is included for
 backward compatibility.]]>
      </description-html>
   </data-object>
   <data-object name="VirtualSerialPortDeviceBackingOption"
      type-id="vim.vm.device.VirtualSerialPortOption.DeviceBackingOption"
      vmodl-name="vim.vm.device.VirtualSerialPortOption.DeviceBackingOption"
      enclosing-type-id-ref="vim.vm.device.VirtualSerialPortOption"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.device.VirtualDeviceOption.DeviceBackingOption"
      >
      <description-html>
         <![CDATA[The <code><a href="vim.vm.device.VirtualSerialPortOption.DeviceBackingOption.html">VirtualSerialPortDeviceBackingOption</a></code> data object type
  contains the options for backing a serial port with a host serial port device.]]>
      </description-html>
   </data-object>
   <data-object name="ProfileDissociatedEvent"
      type-id="vim.event.ProfileDissociatedEvent"
      vmodl-name="vim.event.ProfileDissociatedEvent"
      version-id-ref="vim.version.version5"
      base-type-id="vim.event.ProfileEvent"
      >
      <description-html>
         <![CDATA[This event records that a Profile was dissociated from a  managed entity]]>
      </description-html>
   </data-object>
   <data-object name="VASAStorageArray"
      type-id="vim.VasaStorageArray"
      vmodl-name="vim.VasaStorageArray"
      version-id-ref="vim.version.version10"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Represent Storage Array]]>
      </description-html>
            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      >
      <description-html>
         <![CDATA[Name]]>
      </description-html>
      </property>

            <property name="uuid" type-id-ref="java.lang.String"
      vmodl-name="uuid"
      >
      <description-html>
         <![CDATA[Unique identifier]]>
      </description-html>
      </property>

            <property name="vendorId" type-id-ref="java.lang.String"
      vmodl-name="vendorId"
      >
      <description-html>
         <![CDATA[Vendor Id]]>
      </description-html>
      </property>

            <property name="modelId" type-id-ref="java.lang.String"
      vmodl-name="modelId"
      >
      <description-html>
         <![CDATA[Model Id]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VmFailedRelayoutEvent"
      type-id="vim.event.VmFailedRelayoutEvent"
      vmodl-name="vim.event.VmFailedRelayoutEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.VmEvent"
      >
      <description-html>
         <![CDATA[This event records a specific failure to relay out a virtual machine,
 such as a failure to access the disk.]]>
      </description-html>
            <property name="reason" type-id-ref="vmodl.LocalizedMethodFault"
      vmodl-name="reason"
      >
      </property>

   </data-object>
   <data-object name="UserUnassignedFromGroup"
      type-id="vim.event.UserUnassignedFromGroup"
      vmodl-name="vim.event.UserUnassignedFromGroup"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.HostEvent"
      >
      <description-html>
         <![CDATA[This event records that a user account membership was removed from a group.]]>
      </description-html>
            <property name="userLogin" type-id-ref="java.lang.String"
      vmodl-name="userLogin"
      >
      </property>

            <property name="group" type-id-ref="java.lang.String"
      vmodl-name="group"
      >
      </property>

   </data-object>
   <data-object name="HostRuntimeInfoNetStackInstanceRuntimeInfo"
      type-id="vim.host.RuntimeInfo.NetStackInstanceRuntimeInfo"
      vmodl-name="vim.host.RuntimeInfo.NetStackInstanceRuntimeInfo"
      enclosing-type-id-ref="vim.host.RuntimeInfo"
      version-id-ref="vim.version.version9"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data type describes network stack instance runtime info]]>
      </description-html>
            <property name="netStackInstanceKey" type-id-ref="java.lang.String"
      vmodl-name="netStackInstanceKey"
      >
      <description-html>
         <![CDATA[Key of the instance]]>
      </description-html>
      </property>

            <property name="state" type-id-ref="java.lang.String"
      vmodl-name="state"
      is-optional="true"
      >
      <description-html>
         <![CDATA[State of the instance
  See State for valid values.]]>
      </description-html>
      </property>

            <property name="vmknicKeys" type-id-ref="java.lang.String"
      vmodl-name="vmknicKeys"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The keys of vmknics that are using this stack]]>
      </description-html>
      </property>

            <property name="maxNumberOfConnections" type-id-ref="INT"
      vmodl-name="maxNumberOfConnections"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The maximum number of socket connections can be worked on this
  instance currently after booting up.]]>
      </description-html>
      </property>

            <property name="currentIpV6Enabled" type-id-ref="BOOLEAN"
      vmodl-name="currentIpV6Enabled"
      is-optional="true"
      >
      <description-html>
         <![CDATA[If true then dual IPv4/IPv6 stack enabled else IPv4 only.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.host.RuntimeInfo.NetStackInstanceRuntimeInfo.State</nested-type-id-ref>
   </data-object>
   <data-object name="VirtualPCIPassthroughPluginBackingOption"
      type-id="vim.vm.device.VirtualPCIPassthroughOption.PluginBackingOption"
      vmodl-name="vim.vm.device.VirtualPCIPassthroughOption.PluginBackingOption"
      enclosing-type-id-ref="vim.vm.device.VirtualPCIPassthroughOption"
      version-id-ref="vim.version.version10"
      base-type-id="vim.vm.device.VirtualDeviceOption.BackingOption"
      >
      <description-html>
         <![CDATA[This data object type describes the options for the
  <a href="vim.vm.device.VirtualPCIPassthrough.PluginBackingInfo.html">VirtualPCIPassthroughPluginBackingInfo</a> data object type.]]>
      </description-html>
   </data-object>
   <data-object name="PerfCounterInfo"
      type-id="vim.PerformanceManager.CounterInfo"
      vmodl-name="vim.PerformanceManager.CounterInfo"
      enclosing-type-id-ref="vim.PerformanceManager"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object type contains metadata for a performance counter. See
  <a href="vim.PerformanceManager.html">PerformanceManager</a> for definitions of available counters.]]>
      </description-html>
            <property name="key" type-id-ref="INT"
      vmodl-name="key"
      >
      <description-html>
         <![CDATA[A system-generated number that uniquely identifies the counter in the
  context of the system. The performance counter ID.]]>
      </description-html>
      </property>

            <property name="nameInfo" type-id-ref="vim.ElementDescription"
      vmodl-name="nameInfo"
      is-localizable="true"
      >
      <description-html>
         <![CDATA[The name of the counter with label and summary details. For example,
  the counter with name "usage" for the "cpu" group of performance
  counters.]]>
      </description-html>
      </property>

            <property name="groupInfo" type-id-ref="vim.ElementDescription"
      vmodl-name="groupInfo"
      is-localizable="true"
      >
      <description-html>
         <![CDATA[The group of the performance counter with its label and summary
  details. Counter groups include "cpu," "mem," "net," "disk," "system,"
  "rescpu," and "clusterServices," for example.]]>
      </description-html>
      </property>

            <property name="unitInfo" type-id-ref="vim.ElementDescription"
      vmodl-name="unitInfo"
      is-localizable="true"
      >
      <description-html>
         <![CDATA[The unit for the values of the performance counter with its label and
  summary details. See <a href="vim.PerformanceManager.CounterInfo.Unit.html">PerformanceManagerUnit</a> for a
  description of the valid values.]]>
      </description-html>
      </property>

            <property name="rollupType" type-id-ref="vim.PerformanceManager.CounterInfo.RollupType"
      vmodl-name="rollupType"
      >
      <description-html>
         <![CDATA[The counter type. Valid values include average, maximum, minimum,
  latest, summation, or none. This determines the type of statistical
  values that are returned for the counter. None means that the counter
  is never rolled up.]]>
      </description-html>
      </property>

            <property name="statsType" type-id-ref="vim.PerformanceManager.CounterInfo.StatsType"
      vmodl-name="statsType"
      >
      <description-html>
         <![CDATA[Statistics type for the counter. Valid values include absolute, delta,
  or rate.]]>
      </description-html>
      </property>

            <property name="level" type-id-ref="INT"
      vmodl-name="level"
      version-id-ref="vim.version.version2"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Minimum level at which metrics of this type will be collected by
  VirtualCenter Server. The value for this property for any performance
  counter is a number from 1 to 4. The higher the setting, the more data
  is collected by VirtualCenter Server. The default setting for
  VirtualCenter Server is 1, which collects the minimal amount of
  performance data that is typically useful to administrators and
  developers alike. The specific level of each counter is documented in
  the respective counter-documentation pages, by group. See <a href="vim.PerformanceManager.html">PerformanceManager</a> for links to the counter group pages.]]>
      </description-html>
      </property>

            <property name="perDeviceLevel" type-id-ref="INT"
      vmodl-name="perDeviceLevel"
      version-id-ref="vim.version.version6"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Minimum level at which the per device metrics of this type will be
  collected by vCenter Server. The value for this property for any
  performance counter is a number from 1 to 4. By default all per device
  metrics are calculated at level 3 or more. If a certain per device
  counter is collected at a certain level, the aggregate metric is also
  calculated at that level, i.e., perDeviceLevel is greater than or
  equal to level.]]>
      </description-html>
      </property>

            <property name="associatedCounterId" type-id-ref="INT"
      vmodl-name="associatedCounterId"
      is-deprecated="true"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The counter IDs associated with the same performance counter name for
  the same device type. For example, the rollup types for CPU Usage for
  a host are average, minimum, and maximum&#46; Therefore, their counter
  IDs are associated.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of VI API 2.5, this property is not used.]]>
      </deprecated-html>
      </property>

      <nested-type-id-ref>vim.PerformanceManager.CounterInfo.RollupType</nested-type-id-ref>
      <nested-type-id-ref>vim.PerformanceManager.CounterInfo.StatsType</nested-type-id-ref>
      <nested-type-id-ref>vim.PerformanceManager.CounterInfo.Unit</nested-type-id-ref>
   </data-object>
   <data-object name="VirtualMachineSriovNetworkDevicePoolInfo"
      type-id="vim.vm.SriovNetworkDevicePoolInfo"
      vmodl-name="vim.vm.SriovNetworkDevicePoolInfo"
      version-id-ref="vim.version.version11"
      base-type-id="vim.vm.SriovDevicePoolInfo"
      >
      <description-html>
         <![CDATA[This class is networking specific SR-IOV device pool info]]>
      </description-html>
            <property name="switchKey" type-id-ref="java.lang.String"
      vmodl-name="switchKey"
      is-optional="true"
      >
      <description-html>
         <![CDATA[vSwitch key]]>
      </description-html>
      </property>

            <property name="switchUuid" type-id-ref="java.lang.String"
      vmodl-name="switchUuid"
      is-optional="true"
      >
      <description-html>
         <![CDATA[DVSwitch Uuid]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostConnectSpec"
      type-id="vim.host.ConnectSpec"
      vmodl-name="vim.host.ConnectSpec"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Specifies the parameters needed to add a single host. This includes
  a small set of optional information about the host configuration.
  This allows the network and datastore configuration of the host to
  be synchronized with the naming conventions of the datacenter, as well
  as the configuration of a vim account (the username/password for the
  virtual machine files that is created on disk).]]>
      </description-html>
            <property name="hostName" type-id-ref="java.lang.String"
      vmodl-name="hostName"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The DNS name or IP address of the host. (Required for adding
  a host.)]]>
      </description-html>
      </property>

            <property name="port" type-id-ref="INT"
      vmodl-name="port"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The port number for the connection. If this is not specified,
  the default port number is used. For ESX 2.x hosts this is the authd
  port (902 by default). For ESX 3.x and above and VMware Server hosts
  this is the https port (443 by default).
  If this is a reconnect, the port number is unchanged.]]>
      </description-html>
      </property>

            <property name="sslThumbprint" type-id-ref="java.lang.String"
      vmodl-name="sslThumbprint"
      version-id-ref="vim.version.version2"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The thumbprint of the SSL certificate, which the host is
  expected to have.  If this value is set and matches the
  certificate thumbprint presented by the host, then the host is
  authenticated. If this value is not set or does not match the
  certificate thumbprint presented by the host, then the host's
  certificate is verified by checking whether it was signed by a
  recognized CA.
  <p>
  The thumbprint is always computed using the SHA1 hash and is
  the string representation of that hash in the format:
  xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx
  where, 'x' represents a hexadecimal digit]]>
      </description-html>
      </property>

            <property name="userName" type-id-ref="java.lang.String"
      vmodl-name="userName"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The administration account on the host. (Required for adding
  a host.)]]>
      </description-html>
      </property>

            <property name="password" type-id-ref="java.lang.String"
      vmodl-name="password"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The password for the administration account. (Required for adding
  a host.)]]>
      </description-html>
      </property>

            <property name="vmFolder" type-id-ref="vim.Folder"
      vmodl-name="vmFolder"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The folder in which to store the existing virtual machines on the host.
  If this folder is not specified, a default folder is chosen
  (and possibly created) by the VirtualCenter.  This folder exists (or
  is possibly created) on the
  VirtualCenter server and is called "Discovered VM".]]>
      </description-html>
      </property>

            <property name="force" type-id-ref="BOOLEAN"
      vmodl-name="force"
      >
      <description-html>
         <![CDATA[If this flag is set to "true", then the connection succeeds even
  if the host is already being managed by another VirtualCenter server.
  The original VirtualCenter server loses connection to the host.]]>
      </description-html>
      </property>

            <property name="vimAccountName" type-id-ref="java.lang.String"
      vmodl-name="vimAccountName"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The username to be used for accessing the virtual
  machine files on the disk.]]>
      </description-html>
      </property>

            <property name="vimAccountPassword" type-id-ref="java.lang.String"
      vmodl-name="vimAccountPassword"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The password to be used  with the
  <a href="vim.host.ConnectSpec.html#vimAccountName">vimAccountName</a>
  property for accessing the virtual
  machine files on the disk.]]>
      </description-html>
      </property>

            <property name="managementIp" type-id-ref="java.lang.String"
      vmodl-name="managementIp"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The IP address of the VirtualCenter server that will manage this host.
  This field can be used to control which IP address the VirtualCenter agent
  will send heartbeats to. If it is not set, VirtualCenter will use the local IP
  address used when communicating with the host. Setting this field is useful
  when the VirtualCenter server is behind a NAT in which case the external NAT
  address must be used.]]>
      </description-html>
      </property>

            <property name="lockdownMode" type-id-ref="vim.host.HostAccessManager.LockdownMode"
      vmodl-name="lockdownMode"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[If this is set then the host will be put in the specified lockdown mode
  when the host is added and connected.
  <p>
  It is used only when calling the APIs
  <a href="vim.Folder.html#addStandaloneHost">AddStandaloneHost_Task</a> with parameter 'addConnected' set to true,
  or <a href="vim.ClusterComputeResource.html#addHost">AddHost_Task</a> with parameter 'asConnected'
  set to true.
  If the operation to add the host specifies that the host should only be
  added but not connected, then the host won't be put in lockdown mode.
  <p>
  This is equivalent to invoking
  <a href="vim.host.HostAccessManager.html#changeLockdownMode">ChangeLockdownMode</a>
  immediately after addition and connection to the host succeeds.
  <p>
  If equal to vim.host.HostAccessManager.LockdownMode#lockdownDisabled
  then it is ignored.]]>
      </description-html>
      </property>

            <property name="hostGateway" type-id-ref="vim.host.GatewaySpec"
      vmodl-name="hostGateway"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Setting for a gateway for communication to the host. If set all trafic to the
 host will pass through this gateway.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VmNoCompatibleHostForSecondaryEvent"
      type-id="vim.event.VmNoCompatibleHostForSecondaryEvent"
      vmodl-name="vim.event.VmNoCompatibleHostForSecondaryEvent"
      version-id-ref="vim.version.version5"
      base-type-id="vim.event.VmEvent"
      >
      <description-html>
         <![CDATA[This event records that no compatible host was found to place a
  secondary VM.
  A default alarm will be triggered upon this event, which by default
  would trigger a SNMP trap.]]>
      </description-html>
   </data-object>
   <data-object name="CustomizationLinuxIdentityFailed"
      type-id="vim.event.CustomizationLinuxIdentityFailed"
      vmodl-name="vim.event.CustomizationLinuxIdentityFailed"
      version-id-ref="vim.version.version2"
      base-type-id="vim.event.CustomizationFailed"
      >
      <description-html>
         <![CDATA[Failed to set Linux identity.]]>
      </description-html>
   </data-object>
   <data-object name="ProfileUpdateFailedUpdateFailure"
      type-id="vim.fault.ProfileUpdateFailed.UpdateFailure"
      vmodl-name="vim.fault.ProfileUpdateFailed.UpdateFailure"
      enclosing-type-id-ref="vim.fault.ProfileUpdateFailed"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
            <property name="profilePath" type-id-ref="vim.profile.ProfilePropertyPath"
      vmodl-name="profilePath"
      >
      <description-html>
         <![CDATA[Location in the profile which has the error]]>
      </description-html>
      </property>

            <property name="errMsg" type-id-ref="vmodl.LocalizableMessage"
      vmodl-name="errMsg"
      >
      <description-html>
         <![CDATA[Message which explains the problem encountered]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostFeatureCapability"
      type-id="vim.host.FeatureCapability"
      vmodl-name="vim.host.FeatureCapability"
      version-id-ref="vim.version.version8"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[A feature that the host is able to provide at a particular value.]]>
      </description-html>
            <property name="key" type-id-ref="java.lang.String"
      vmodl-name="key"
      >
      <description-html>
         <![CDATA[Accessor name to the feature capability.]]>
      </description-html>
      </property>

            <property name="featureName" type-id-ref="java.lang.String"
      vmodl-name="featureName"
      >
      <description-html>
         <![CDATA[Name of the feature. Identical to the key.]]>
      </description-html>
      </property>

            <property name="value" type-id-ref="java.lang.String"
      vmodl-name="value"
      >
      <description-html>
         <![CDATA[Opaque value that the feature is capable at.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VsanClusterConfigInfoHostDefaultInfo"
      type-id="vim.vsan.cluster.ConfigInfo.HostDefaultInfo"
      vmodl-name="vim.vsan.cluster.ConfigInfo.HostDefaultInfo"
      enclosing-type-id-ref="vim.vsan.cluster.ConfigInfo"
      version-id-ref="vim.version.version9"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Default VSAN service configuration to be used for hosts admitted
 to the cluster.<br>See <a href="vim.vsan.cluster.ConfigInfo.html#defaultConfig">defaultConfig</a><br>]]>
      </description-html>
            <property name="uuid" type-id-ref="java.lang.String"
      vmodl-name="uuid"
      is-optional="true"
      >
      <description-html>
         <![CDATA[VSAN service cluster UUID, in the string form
 "nnnnnnnn-nnnn-nnnn-nnnn-nnnnnnnnnnnn", where n are hexadecimal
 digits.

 When enabling the VSAN service on the cluster, this value shall
 not be specified by the user; a suitable UUID will be generated
 by the platform.

 While the VSAN service is enabled, this is a read-only value.]]>
      </description-html>
      </property>

            <property name="autoClaimStorage" type-id-ref="BOOLEAN"
      vmodl-name="autoClaimStorage"
      is-deprecated="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Whether the VSAN service is configured to automatically claim local
 storage on VSAN-enabled hosts in the cluster.

 If omitted while enabling the VSAN service, this value will default
 to <code>true</code>.

 Changing this value to <code>false</code> shall not affect any
 existing disk mappings in use by hosts currently participating in
 the VSAN service.

 Changing this value to <code>true</code> will result in local disks
 being automatically claimed for use by the VSAN service, for hosts
 currently participating in the VSAN service.<br>See <a href="vim.vsan.host.ConfigInfo.StorageInfo.html#diskMapping">diskMapping</a><br>See <a href="vim.vsan.host.ConfigInfo.StorageInfo.html#autoClaimStorage">autoClaimStorage</a><br>]]>
      </description-html>
      <deprecated-html>
         <![CDATA[as this configuration will be deprecated, autoclaim
 will be no longer supported]]>
      </deprecated-html>
      </property>

            <property name="checksumEnabled" type-id-ref="BOOLEAN"
      vmodl-name="checksumEnabled"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Whether the VSAN service is configured to enforce checksum protection.

 If omitted while enabling the VSAN service, this value will default
 to <code>false<code>.

 Change this value to <code>false</code> shall not affect any existing
 disk status.

 Changing this value to <code>true</code> shall do disk enforcement
 check that all VSAN disks are checksum enabled.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="NetIpStackInfo"
      type-id="vim.net.IpStackInfo"
      vmodl-name="vim.net.IpStackInfo"
      version-id-ref="vim.version.version6"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Protocol version independent reporting data object for IP stack.]]>
      </description-html>
            <property name="neighbor" type-id-ref="vim.net.IpStackInfo.NetToMedia"
      vmodl-name="neighbor"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Zero, one or more entries of neighbors discovered using ARP or NDP.
 This information is used to help diagnose connectivity or performance
 issues. This property maps to RFC 4293 ipNetToPhysicalTable.]]>
      </description-html>
      </property>

            <property name="defaultRouter" type-id-ref="vim.net.IpStackInfo.DefaultRouter"
      vmodl-name="defaultRouter"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Zero one or more entries of discovered IP routers that are directly
 reachable from a an interface on this system.
 This property maps to RFC 4293 ipDefaultRouterTable.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.net.IpStackInfo.EntryType</nested-type-id-ref>
      <nested-type-id-ref>vim.net.IpStackInfo.Preference</nested-type-id-ref>
      <nested-type-id-ref>vim.net.IpStackInfo.NetToMedia</nested-type-id-ref>
      <nested-type-id-ref>vim.net.IpStackInfo.DefaultRouter</nested-type-id-ref>
   </data-object>
   <data-object name="CustomFieldStringValue"
      type-id="vim.CustomFieldsManager.StringValue"
      vmodl-name="vim.CustomFieldsManager.StringValue"
      enclosing-type-id-ref="vim.CustomFieldsManager"
      version-id-ref="vim.version.version1"
      base-type-id="vim.CustomFieldsManager.Value"
      >
      <description-html>
         <![CDATA[Subtype for string values (currently the only supported type).]]>
      </description-html>
            <property name="value" type-id-ref="java.lang.String"
      vmodl-name="value"
      >
      <description-html>
         <![CDATA[Value assigned to the custom field.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ExtensionResourceInfo"
      type-id="vim.Extension.ResourceInfo"
      vmodl-name="vim.Extension.ResourceInfo"
      enclosing-type-id-ref="vim.Extension"
      version-id-ref="vim.version.version2"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object encapsulates the message resources for all locales.]]>
      </description-html>
            <property name="locale" type-id-ref="java.lang.String"
      vmodl-name="locale"
      >
      </property>

            <property name="module" type-id-ref="java.lang.String"
      vmodl-name="module"
      >
      <description-html>
         <![CDATA[Module for a resource type and other message or fault resources.
 Examples: "task" for task, "event" for event and "auth" for "privilege".]]>
      </description-html>
      </property>

            <property name="data" type-id-ref="vim.KeyValue"
      vmodl-name="data"
      is-array="true"
      >
      </property>

   </data-object>
   <data-object name="VmPortGroupProfile"
      type-id="vim.profile.host.VmPortGroupProfile"
      vmodl-name="vim.profile.host.VmPortGroupProfile"
      version-id-ref="vim.version.version5"
      base-type-id="vim.profile.host.PortGroupProfile"
      >
      <description-html>
         <![CDATA[The <a href="vim.profile.host.VmPortGroupProfile.html">VmPortGroupProfile</a> data object represents the subprofile
 for a port group that will be used by virtual machines.
 Use the <a href="vim.profile.ApplyProfile.html#policy">policy</a> list for
 access to configuration data for the virtual machine port group profile. Use the
 <a href="vim.profile.ApplyProfile.html#property">property</a> list for access to subprofiles, if any.
 <p>
 vSphere Servers use <a href="vim.Network.html">Network</a> managed objects to represent virtual machine port
 groups in the vSphere inventory.]]>
      </description-html>
   </data-object>
   <data-object name="HostLowLevelProvisioningManagerFileReserveResult"
      type-id="vim.host.LowLevelProvisioningManager.FileReserveResult"
      vmodl-name="vim.host.LowLevelProvisioningManager.FileReserveResult"
      enclosing-type-id-ref="vim.host.LowLevelProvisioningManager"
      version-id-ref="vim.version.version10"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[A FileReserveResult object describles the information of a file reserved
 by the ReserveFiles method. This includes the original input ReserveFiles
 method so that the caller can map the input with the reserved file. All
 paths will be the complete local path in the url format.]]>
      </description-html>
            <property name="baseName" type-id-ref="java.lang.String"
      vmodl-name="baseName"
      >
      </property>

            <property name="parentDir" type-id-ref="java.lang.String"
      vmodl-name="parentDir"
      >
      </property>

            <property name="reservedName" type-id-ref="java.lang.String"
      vmodl-name="reservedName"
      >
      </property>

   </data-object>
   <data-object name="VmRemoteConsoleConnectedEvent"
      type-id="vim.event.VmRemoteConsoleConnectedEvent"
      vmodl-name="vim.event.VmRemoteConsoleConnectedEvent"
      version-id-ref="vim.version.version5"
      base-type-id="vim.event.VmEvent"
      >
      <description-html>
         <![CDATA[This event records that a remote console was connected to the VM]]>
      </description-html>
   </data-object>
   <data-object name="VchaClusterNetworkSpec"
      type-id="vim.vcha.FailoverClusterConfigurator.VchaClusterNetworkSpec"
      vmodl-name="vim.vcha.FailoverClusterConfigurator.VchaClusterNetworkSpec"
      enclosing-type-id-ref="vim.vcha.FailoverClusterConfigurator"
      version-id-ref="vim.version.version11"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The VchaClusterNetworkSpec class contains network
 configuration information for a VCHA Cluster.]]>
      </description-html>
            <property name="witnessNetworkSpec" type-id-ref="vim.vcha.FailoverClusterConfigurator.NodeNetworkSpec"
      vmodl-name="witnessNetworkSpec"
      >
      <description-html>
         <![CDATA[Network spec for the Witness node.]]>
      </description-html>
      </property>

            <property name="passiveNetworkSpec" type-id-ref="vim.vcha.FailoverClusterConfigurator.PassiveNodeNetworkSpec"
      vmodl-name="passiveNetworkSpec"
      >
      <description-html>
         <![CDATA[Network spec for the Passive node.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DatastoreDiscoveredEvent"
      type-id="vim.event.DatastoreDiscoveredEvent"
      vmodl-name="vim.event.DatastoreDiscoveredEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.HostEvent"
      >
      <description-html>
         <![CDATA[This event records when a host is added to VirtualCenter
  and datastores are discovered.]]>
      </description-html>
            <property name="datastore" type-id-ref="vim.event.DatastoreEventArgument"
      vmodl-name="datastore"
      >
      <description-html>
         <![CDATA[The associated datastore.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DVSHealthCheckConfig"
      type-id="vim.DistributedVirtualSwitch.HealthCheckConfig"
      vmodl-name="vim.DistributedVirtualSwitch.HealthCheckConfig"
      enclosing-type-id-ref="vim.DistributedVirtualSwitch"
      version-id-ref="vim.version.version8"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The <a href="vim.DistributedVirtualSwitch.HealthCheckConfig.html">DVSHealthCheckConfig</a> data object
  defines vSphere Distributed Switch health check configuration.]]>
      </description-html>
            <property name="enable" type-id-ref="BOOLEAN"
      vmodl-name="enable"
      is-optional="true"
      >
      <description-html>
         <![CDATA[True if enable health check.]]>
      </description-html>
      </property>

            <property name="interval" type-id-ref="INT"
      vmodl-name="interval"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Interval of health check, in minutes.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ScheduledTaskCompletedEvent"
      type-id="vim.event.ScheduledTaskCompletedEvent"
      vmodl-name="vim.event.ScheduledTaskCompletedEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.ScheduledTaskEvent"
      >
      <description-html>
         <![CDATA[This event records the completion of a scheduled task.]]>
      </description-html>
   </data-object>
   <data-object name="HostConfigManager"
      type-id="vim.host.ConfigManager"
      vmodl-name="vim.host.ConfigManager"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object type describes the configuration of a host
  across products and versions.]]>
      </description-html>
            <property name="cpuScheduler" type-id-ref="vim.host.CpuSchedulerSystem"
      vmodl-name="cpuScheduler"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The CPU scheduler that determines which threads execute on a CPU
  at any given time.]]>
      </description-html>
      </property>

            <property name="datastoreSystem" type-id-ref="vim.host.DatastoreSystem"
      vmodl-name="datastoreSystem"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The datastore manager.]]>
      </description-html>
      </property>

            <property name="memoryManager" type-id-ref="vim.host.MemoryManagerSystem"
      vmodl-name="memoryManager"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The memory manager on the host.]]>
      </description-html>
      </property>

            <property name="storageSystem" type-id-ref="vim.host.StorageSystem"
      vmodl-name="storageSystem"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The storage configuration.]]>
      </description-html>
      </property>

            <property name="networkSystem" type-id-ref="vim.host.NetworkSystem"
      vmodl-name="networkSystem"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The network system configuration.]]>
      </description-html>
      </property>

            <property name="vmotionSystem" type-id-ref="vim.host.VMotionSystem"
      vmodl-name="vmotionSystem"
      is-deprecated="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The VMotion configuration.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of VI API 4.0, use <a href="vim.host.ConfigManager.html#virtualNicManager">virtualNicManager</a>
   to manage the VMotion configuration of the host.]]>
      </deprecated-html>
      </property>

            <property name="virtualNicManager" type-id-ref="vim.host.VirtualNicManager"
      vmodl-name="virtualNicManager"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The VirtualNic configuration.]]>
      </description-html>
      </property>

            <property name="serviceSystem" type-id-ref="vim.host.ServiceSystem"
      vmodl-name="serviceSystem"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The configuration of the host services (for example,
  SSH, FTP, and Telnet).]]>
      </description-html>
      </property>

            <property name="firewallSystem" type-id-ref="vim.host.FirewallSystem"
      vmodl-name="firewallSystem"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The firewall configuration.]]>
      </description-html>
      </property>

            <property name="advancedOption" type-id-ref="vim.option.OptionManager"
      vmodl-name="advancedOption"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Advanced options.]]>
      </description-html>
      </property>

            <property name="diagnosticSystem" type-id-ref="vim.host.DiagnosticSystem"
      vmodl-name="diagnosticSystem"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The diagnostic for the ESX Server system.]]>
      </description-html>
      </property>

            <property name="autoStartManager" type-id-ref="vim.host.AutoStartManager"
      vmodl-name="autoStartManager"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Auto-start and auto-stop configuration.]]>
      </description-html>
      </property>

            <property name="snmpSystem" type-id-ref="vim.host.SnmpSystem"
      vmodl-name="snmpSystem"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Snmp configuration]]>
      </description-html>
      </property>

            <property name="dateTimeSystem" type-id-ref="vim.host.DateTimeSystem"
      vmodl-name="dateTimeSystem"
      version-id-ref="vim.version.version2"
      is-optional="true"
      >
      <description-html>
         <![CDATA[DateTime configuration]]>
      </description-html>
      </property>

            <property name="patchManager" type-id-ref="vim.host.PatchManager"
      vmodl-name="patchManager"
      version-id-ref="vim.version.version2"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Host patch management.]]>
      </description-html>
      </property>

            <property name="imageConfigManager" type-id-ref="vim.host.ImageConfigManager"
      vmodl-name="imageConfigManager"
      version-id-ref="vim.version.version7"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Host image configuration management.]]>
      </description-html>
      </property>

            <property name="bootDeviceSystem" type-id-ref="vim.host.BootDeviceSystem"
      vmodl-name="bootDeviceSystem"
      version-id-ref="vim.version.version2"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Boot device order management.]]>
      </description-html>
      </property>

            <property name="firmwareSystem" type-id-ref="vim.host.FirmwareSystem"
      vmodl-name="firmwareSystem"
      version-id-ref="vim.version.version2"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Firmware management.]]>
      </description-html>
      </property>

            <property name="healthStatusSystem" type-id-ref="vim.host.HealthStatusSystem"
      vmodl-name="healthStatusSystem"
      version-id-ref="vim.version.version2"
      is-optional="true"
      >
      <description-html>
         <![CDATA[System health status manager.]]>
      </description-html>
      </property>

            <property name="pciPassthruSystem" type-id-ref="vim.host.PciPassthruSystem"
      vmodl-name="pciPassthruSystem"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[PciDeviceSystem for passthru.]]>
      </description-html>
      </property>

            <property name="licenseManager" type-id-ref="vim.LicenseManager"
      vmodl-name="licenseManager"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[License manager]]>
      </description-html>
      </property>

            <property name="kernelModuleSystem" type-id-ref="vim.host.KernelModuleSystem"
      vmodl-name="kernelModuleSystem"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Kernel module configuration management.]]>
      </description-html>
      </property>

            <property name="authenticationManager" type-id-ref="vim.host.AuthenticationManager"
      vmodl-name="authenticationManager"
      version-id-ref="vim.version.version6"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Authentication method configuration - for example, for Active Directory membership.]]>
      </description-html>
      </property>

            <property name="powerSystem" type-id-ref="vim.host.PowerSystem"
      vmodl-name="powerSystem"
      version-id-ref="vim.version.version6"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Power System manager.]]>
      </description-html>
      </property>

            <property name="cacheConfigurationManager" type-id-ref="vim.host.CacheConfigurationManager"
      vmodl-name="cacheConfigurationManager"
      version-id-ref="vim.version.version7"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Host solid state drive cache configuration manager.]]>
      </description-html>
      </property>

            <property name="esxAgentHostManager" type-id-ref="vim.host.EsxAgentHostManager"
      vmodl-name="esxAgentHostManager"
      version-id-ref="vim.version.version7"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Esx Agent resource configuration manager]]>
      </description-html>
      </property>

            <property name="iscsiManager" type-id-ref="vim.host.IscsiManager"
      vmodl-name="iscsiManager"
      version-id-ref="vim.version.version7"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Iscsi Management Operations managed entity]]>
      </description-html>
      </property>

            <property name="vFlashManager" type-id-ref="vim.host.VFlashManager"
      vmodl-name="vFlashManager"
      version-id-ref="vim.version.version9"
      is-optional="true"
      >
      <description-html>
         <![CDATA[vFlash Manager]]>
      </description-html>
      </property>

            <property name="vsanSystem" type-id-ref="vim.host.VsanSystem"
      vmodl-name="vsanSystem"
      version-id-ref="vim.version.version9"
      is-optional="true"
      >
      <description-html>
         <![CDATA[VsanSystem managed entity.]]>
      </description-html>
      </property>

            <property name="messageBusProxy" type-id-ref="vim.host.MessageBusProxy"
      vmodl-name="messageBusProxy"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Common Message Bus proxy service.
 This API shall always be present in vSphere API 6.0 or later.]]>
      </description-html>
      </property>

            <property name="userDirectory" type-id-ref="vim.UserDirectory"
      vmodl-name="userDirectory"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[A user directory managed object.]]>
      </description-html>
      </property>

            <property name="accountManager" type-id-ref="vim.host.LocalAccountManager"
      vmodl-name="accountManager"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[A manager for host local user accounts.]]>
      </description-html>
      </property>

            <property name="hostAccessManager" type-id-ref="vim.host.HostAccessManager"
      vmodl-name="hostAccessManager"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Host access manager]]>
      </description-html>
      </property>

            <property name="graphicsManager" type-id-ref="vim.host.GraphicsManager"
      vmodl-name="graphicsManager"
      version-id-ref="vim.version.version9"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Host graphics manager.]]>
      </description-html>
      </property>

            <property name="vsanInternalSystem" type-id-ref="vim.host.VsanInternalSystem"
      vmodl-name="vsanInternalSystem"
      version-id-ref="vim.version.version9"
      is-optional="true"
      >
      <description-html>
         <![CDATA[VsanInternalSystem managed entity.]]>
      </description-html>
      </property>

            <property name="certificateManager" type-id-ref="vim.host.CertificateManager"
      vmodl-name="certificateManager"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Host CertificateManager.]]>
      </description-html>
      </property>

            <property name="cryptoManager" type-id-ref="vim.encryption.CryptoManager"
      vmodl-name="cryptoManager"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Host CryptoManager.]]>
      </description-html>
      </property>

            <property name="nvdimmSystem" type-id-ref="vim.host.NvdimmSystem"
      vmodl-name="nvdimmSystem"
      version-id-ref="vim.version.version12"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Host Non-Volatile DIMM configuration manager]]>
      </description-html>
      </property>

            <property name="assignableHardwareManager" type-id-ref="vim.host.AssignableHardwareManager"
      vmodl-name="assignableHardwareManager"
      version-id-ref="vim.version.v7_0"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Assignable Hardware manager.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostFileSystemVolume"
      type-id="vim.host.FileSystemVolume"
      vmodl-name="vim.host.FileSystemVolume"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Detailed information about a file system.  This is a base type for derived types
  that have more specific details about specific filesystem types.
  <p>
  Typically a FileSystem is exposed as a datatore<br>See <a href="vim.Datastore.Info.html">DatastoreInfo</a><br>See <a href="vim.host.VmfsVolume.html">HostVmfsVolume</a><br>See <a href="vim.host.NasVolume.html">HostNasVolume</a><br>See <a href="vim.host.VffsVolume.html">HostVffsVolume</a><br>See <a href="vim.host.LocalFileSystemVolume.html">HostLocalFileSystemVolume</a><br>See <a href="vim.host.VfatVolume.html">HostVfatVolume</a><br>]]>
      </description-html>
            <property name="type" type-id-ref="java.lang.String"
      vmodl-name="type"
      >
      <description-html>
         <![CDATA[FileSystemType of this particular file system
 See <a href="vim.host.FileSystemVolume.FileSystemType.html">HostFileSystemVolumeFileSystemType</a>]]>
      </description-html>
      </property>

            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      >
      <description-html>
         <![CDATA[Name of the file system volume.]]>
      </description-html>
      </property>

            <property name="capacity" type-id-ref="LONG"
      vmodl-name="capacity"
      >
      <description-html>
         <![CDATA[The capacity of the file system volume, in bytes.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.host.FileSystemVolume.FileSystemType</nested-type-id-ref>
   </data-object>
   <data-object name="GuestScreenInfo"
      type-id="vim.vm.GuestInfo.ScreenInfo"
      vmodl-name="vim.vm.GuestInfo.ScreenInfo"
      enclosing-type-id-ref="vim.vm.GuestInfo"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Screen settings]]>
      </description-html>
            <property name="width" type-id-ref="INT"
      vmodl-name="width"
      >
      <description-html>
         <![CDATA[Width of the screen in pixels.]]>
      </description-html>
      </property>

            <property name="height" type-id-ref="INT"
      vmodl-name="height"
      >
      <description-html>
         <![CDATA[Height of the screen in pixels.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DatastoreRenamedOnHostEvent"
      type-id="vim.event.DatastoreRenamedOnHostEvent"
      vmodl-name="vim.event.DatastoreRenamedOnHostEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.HostEvent"
      >
      <description-html>
         <![CDATA[This event records when a datastore is added to VirtualCenter
  and is renamed by VirtualCenter because this datastore already
  exists in VirtualCenter with a different name, or because the
  name conflicts with another datastore in VirtualCenter.]]>
      </description-html>
            <property name="oldName" type-id-ref="java.lang.String"
      vmodl-name="oldName"
      >
      <description-html>
         <![CDATA[The old datastore name.]]>
      </description-html>
      </property>

            <property name="newName" type-id-ref="java.lang.String"
      vmodl-name="newName"
      >
      <description-html>
         <![CDATA[The new datastore name.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostCpuPowerManagementInfo"
      type-id="vim.host.CpuPowerManagementInfo"
      vmodl-name="vim.host.CpuPowerManagementInfo"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The CpuPowerManagementInfo data object type describes supported
  power management and current policy.]]>
      </description-html>
            <property name="currentPolicy" type-id-ref="java.lang.String"
      vmodl-name="currentPolicy"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Information about current CPU power management policy.]]>
      </description-html>
      </property>

            <property name="hardwareSupport" type-id-ref="java.lang.String"
      vmodl-name="hardwareSupport"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Information about supported CPU power management.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.host.CpuPowerManagementInfo.PolicyType</nested-type-id-ref>
   </data-object>
   <data-object name="HostNvmeOverFibreChannelParameters"
      type-id="vim.host.NvmeOverFibreChannelParameters"
      vmodl-name="vim.host.NvmeOverFibreChannelParameters"
      version-id-ref="vim.version.v7_0"
      base-type-id="vim.host.NvmeTransportParameters"
      >
      <description-html>
         <![CDATA[This data object represents the transport specific parameters
  necessary to establish an NVME over Fibre Channel connection.]]>
      </description-html>
            <property name="nodeWorldWideName" type-id-ref="LONG"
      vmodl-name="nodeWorldWideName"
      >
      <description-html>
         <![CDATA[The world wide node name for the connection target.]]>
      </description-html>
      </property>

            <property name="portWorldWideName" type-id-ref="LONG"
      vmodl-name="portWorldWideName"
      >
      <description-html>
         <![CDATA[The world wide port name for the connection target.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VMwareDVSVlanMtuHealthCheckConfig"
      type-id="vim.dvs.VmwareDistributedVirtualSwitch.VlanMtuHealthCheckConfig"
      vmodl-name="vim.dvs.VmwareDistributedVirtualSwitch.VlanMtuHealthCheckConfig"
      enclosing-type-id-ref="vim.dvs.VmwareDistributedVirtualSwitch"
      version-id-ref="vim.version.version8"
      base-type-id="vim.dvs.VmwareDistributedVirtualSwitch.VmwareHealthCheckConfig"
      >
      <description-html>
         <![CDATA[This class defines the vlan and mtu health check configuration.
  Vlan health check is used to check whether vlans are trunked by the physical
  switch connected to the uplink ports.
  MTU health check is used to verify current MTU setting workable on all uplink ports of
  the vSphere Distributed Switch.]]>
      </description-html>
   </data-object>
   <data-object name="CustomizationCustomIpGenerator"
      type-id="vim.vm.customization.CustomIpGenerator"
      vmodl-name="vim.vm.customization.CustomIpGenerator"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.customization.IpGenerator"
      >
      <description-html>
         <![CDATA[Use a command-line program configured with the VirtualCenter server.]]>
      </description-html>
            <property name="argument" type-id-ref="java.lang.String"
      vmodl-name="argument"
      is-optional="true"
      >
      <description-html>
         <![CDATA[An optional argument that is passed to the utility for this IP address. The
  meaning of this field is user-defined, in the script.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ExtendedEventPair"
      type-id="vim.event.ExtendedEvent.Pair"
      vmodl-name="vim.event.ExtendedEvent.Pair"
      enclosing-type-id-ref="vim.event.ExtendedEvent"
      version-id-ref="vim.version.version2"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[key/value pair]]>
      </description-html>
            <property name="key" type-id-ref="java.lang.String"
      vmodl-name="key"
      >
      </property>

            <property name="value" type-id-ref="java.lang.String"
      vmodl-name="value"
      >
      </property>

   </data-object>
   <data-object name="LocalizedMethodFault"
      type-id="vmodl.LocalizedMethodFault"
      vmodl-name="vmodl.LocalizedMethodFault"
      version-id-ref="vmodl.version.version0"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[A wrapper class used to pass MethodFault data objects over the wire
  along with a localized display message for the fault.]]>
      </description-html>
            <property name="fault" type-id-ref="vmodl.MethodFault"
      vmodl-name="fault"
      >
      </property>

            <property name="localizedMessage" type-id-ref="java.lang.String"
      vmodl-name="localizedMessage"
      is-optional="true"
      is-localizable="true"
      >
      <description-html>
         <![CDATA[The localized message that would be sent in the faultstring element
 of the SOAP Fault.  It is optional so that clients are not required
 to send a localized message to the server, but servers are required
 to send the localized message to clients.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="PerfEntityMetricBase"
      type-id="vim.PerformanceManager.EntityMetricBase"
      vmodl-name="vim.PerformanceManager.EntityMetricBase"
      enclosing-type-id-ref="vim.PerformanceManager"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Base type for the various <a href="vim.PerformanceManager.EntityMetric.html">PerfEntityMetric</a>
  encodings.]]>
      </description-html>
            <property name="entity" type-id-ref="vmodl.ManagedObject"
      vmodl-name="entity"
      >
      <description-html>
         <![CDATA[Performance provider ID.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="AlarmAcknowledgedEvent"
      type-id="vim.event.AlarmAcknowledgedEvent"
      vmodl-name="vim.event.AlarmAcknowledgedEvent"
      version-id-ref="vim.version.version7"
      base-type-id="vim.event.AlarmEvent"
      >
      <description-html>
         <![CDATA[This event records the acknowledgement of an Alarm]]>
      </description-html>
            <property name="source" type-id-ref="vim.event.ManagedEntityEventArgument"
      vmodl-name="source"
      >
      <description-html>
         <![CDATA[The entity that triggered the alarm.]]>
      </description-html>
      </property>

            <property name="entity" type-id-ref="vim.event.ManagedEntityEventArgument"
      vmodl-name="entity"
      >
      <description-html>
         <![CDATA[The entity with which the alarm is registered.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualMachineProfileSpec"
      type-id="vim.vm.ProfileSpec"
      vmodl-name="vim.vm.ProfileSpec"
      version-id-ref="vim.version.version9"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The ProfileSpec data object is used to specify the Storage Policy to be
  associated with a Virtual Machine Home or a Virtual Disk.]]>
      </description-html>
   </data-object>
   <data-object name="OvfCreateDescriptorResult"
      type-id="vim.OvfManager.CreateDescriptorResult"
      vmodl-name="vim.OvfManager.CreateDescriptorResult"
      enclosing-type-id-ref="vim.OvfManager"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The result of creating the OVF descriptor for the entity.]]>
      </description-html>
            <property name="ovfDescriptor" type-id-ref="java.lang.String"
      vmodl-name="ovfDescriptor"
      >
      <description-html>
         <![CDATA[The OVF descriptor for the entity.]]>
      </description-html>
      </property>

            <property name="error" type-id-ref="vmodl.LocalizedMethodFault"
      vmodl-name="error"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Errors that happened during processing.
 <p>
 For example, unknown or unsupported devices could be found (in which case
 this array will contain one or more instances of Unsupported-/UnknownDevice).]]>
      </description-html>
      </property>

            <property name="warning" type-id-ref="vmodl.LocalizedMethodFault"
      vmodl-name="warning"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Non-fatal warnings from the processing.
 <p>
 The result will be valid, but the user may choose to reject it based on these
 warnings.]]>
      </description-html>
      </property>

            <property name="includeImageFiles" type-id-ref="BOOLEAN"
      vmodl-name="includeImageFiles"
      version-id-ref="vim.version.version6"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Returns true if there are ISO or Floppy images attached to one or more VMs.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="PerformanceDescription"
      type-id="vim.PerformanceDescription"
      vmodl-name="vim.PerformanceDescription"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Static strings for performance metrics.]]>
      </description-html>
            <property name="counterType" type-id-ref="vim.ElementDescription"
      vmodl-name="counterType"
      is-array="true"
      >
      <description-html>
         <![CDATA[Identifies the <a href="vim.PerformanceManager.CounterInfo.RollupType.html">type</a> of
  the counter.]]>
      </description-html>
      </property>

            <property name="statsType" type-id-ref="vim.ElementDescription"
      vmodl-name="statsType"
      is-array="true"
      >
      <description-html>
         <![CDATA[Identifies the <a href="vim.PerformanceManager.CounterInfo.StatsType.html">type</a>
  of statistic.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VslmMigrateSpec"
      type-id="vim.vslm.MigrateSpec"
      vmodl-name="vim.vslm.MigrateSpec"
      version-id-ref="vim.version.version11"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Base specification of moving or copying a virtual storage object.]]>
      </description-html>
            <property name="backingSpec" type-id-ref="vim.vslm.CreateSpec.BackingSpec"
      vmodl-name="backingSpec"
      >
      <description-html>
         <![CDATA[Specification of the backings of the target virtual storage object.]]>
      </description-html>
      </property>

            <property name="profile" type-id-ref="vim.vm.ProfileSpec"
      vmodl-name="profile"
      version-id-ref="vim.version.version12"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Virtual storage object Profile requirement. If unset,
 the default behavior will apply.]]>
      </description-html>
      </property>

            <property name="consolidate" type-id-ref="BOOLEAN"
      vmodl-name="consolidate"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Flag indicates any delta disk backings will be consolidated
 during migration. If unset, delta disk backings will not be
 consolidated.]]>
      </description-html>
      </property>

            <property name="disksCrypto" type-id-ref="vim.vslm.DiskCryptoSpec"
      vmodl-name="disksCrypto"
      version-id-ref="vim.version.v7_0"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Disk chain crypto information.
 If unset and if <a href="vim.vslm.MigrateSpec.html#profile">profile</a> contains an encryption iofilter and if
 source VStorageObject is unencrypted, then disksCyrpto will be of type
 CryptoSpecEncrypt, and filled with keyId that is automatically generated
 and keyProviderId that is the default kms cluster. During the migration,
 the object will be encrypted.
 If unset and if <a href="vim.vslm.MigrateSpec.html#profile">profile</a> is a default policy and if source
 VStorageObject is unenrypted, then disksCrypto is treated as
 CryptoSpecNoOp. During migration, no cryptographic change.
 If unset and if <a href="vim.vslm.MigrateSpec.html#profile">profile</a> contains an encryption iofilter and if
 source VStorageObject is encrypted, then disksCyrpto is treated as
 CryptoSpecNoOp. During migration, no cryptographic change.
 If unset and if <a href="vim.vslm.MigrateSpec.html#profile">profile</a> is a default policy and if
 source VStorageObject is encrypted, then disksCyrpto is treated as
 CryptoSpecDecrypt, during migration, the object will be decrypted.
 To recrypt the disk during migration, disksCrypto has to be present.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostLowLevelProvisioningManagerVmRecoveryInfo"
      type-id="vim.host.LowLevelProvisioningManager.VmRecoveryInfo"
      vmodl-name="vim.host.LowLevelProvisioningManager.VmRecoveryInfo"
      enclosing-type-id-ref="vim.host.LowLevelProvisioningManager"
      version-id-ref="vim.version.version8"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Virtual machine information that can be used for recovery, for
  example, to decide whether to register a virtual machine with a
  server if the virtual machine is currently unregistered. This data
  object does not contain a complete virtual machine configuration,
  but a subset of information available from <a href="vim.vm.ConfigInfo.html">VirtualMachineConfigInfo</a>, all of which are available via virtual machine
  configuration files.
  <p>
  The documentation for each property in this data object describes
  the property in <a href="vim.vm.ConfigInfo.html">VirtualMachineConfigInfo</a> that contains the same
  information if available.]]>
      </description-html>
            <property name="version" type-id-ref="java.lang.String"
      vmodl-name="version"
      >
      <description-html>
         <![CDATA[The hardware version of this virtual machine. Same as
  <a href="vim.vm.ConfigInfo.html#version">version</a>.]]>
      </description-html>
      </property>

            <property name="biosUUID" type-id-ref="java.lang.String"
      vmodl-name="biosUUID"
      >
      <description-html>
         <![CDATA[128-bit SMBIOS UUID of this virtual machine. Same as
  <a href="vim.vm.ConfigInfo.html#uuid">uuid</a>.]]>
      </description-html>
      </property>

            <property name="instanceUUID" type-id-ref="java.lang.String"
      vmodl-name="instanceUUID"
      >
      <description-html>
         <![CDATA[VirtualCenter-specific 128-bit UUID of this virtual machine. Same
  as <a href="vim.vm.ConfigInfo.html#instanceUuid">instanceUuid</a>.]]>
      </description-html>
      </property>

            <property name="ftInfo" type-id-ref="vim.vm.FaultToleranceConfigInfo"
      vmodl-name="ftInfo"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Fault Tolerance settings for this virtual machine. Same as
  <a href="vim.vm.ConfigInfo.html#ftInfo">ftInfo</a>. Unset if non FT.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostSyncFailedEvent"
      type-id="vim.event.HostSyncFailedEvent"
      vmodl-name="vim.event.HostSyncFailedEvent"
      version-id-ref="vim.version.version5"
      base-type-id="vim.event.HostEvent"
      >
      <description-html>
         <![CDATA[This event records a failure to sync up with the VirtualCenter agent on the host]]>
      </description-html>
            <property name="reason" type-id-ref="vmodl.LocalizedMethodFault"
      vmodl-name="reason"
      >
      <description-html>
         <![CDATA[The reason for the failure.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DatacenterConfigSpec"
      type-id="vim.Datacenter.ConfigSpec"
      vmodl-name="vim.Datacenter.ConfigSpec"
      enclosing-type-id-ref="vim.Datacenter"
      version-id-ref="vim.version.version8"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Changes to apply to the datacenter configuration.]]>
      </description-html>
            <property name="defaultHardwareVersionKey" type-id-ref="java.lang.String"
      vmodl-name="defaultHardwareVersionKey"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Key for Default Hardware Version to be used on this datacenter
  in the format of <a href="vim.vm.ConfigOptionDescriptor.html#key">key</a>.

  Setting this field affects
  <a href="vim.vm.ConfigOptionDescriptor.html#defaultConfigOption">defaultConfigOption</a> returned
  by <a href="vim.ComputeResource.html#environmentBrowser">EnvironmentBrowser</a> of all its children
  with this field unset.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ProfileParameterMetadata"
      type-id="vim.profile.ParameterMetadata"
      vmodl-name="vim.profile.ParameterMetadata"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The <a href="vim.profile.ParameterMetadata.html">ProfileParameterMetadata</a> data object represents the metadata information
 for expressions, policy options, and host-specific configuration data.]]>
      </description-html>
            <property name="id" type-id-ref="vim.ExtendedElementDescription"
      vmodl-name="id"
      >
      <description-html>
         <![CDATA[Identifier for the parameter.]]>
      </description-html>
      </property>

            <property name="type" type-id-ref="vmodl.TypeName"
      vmodl-name="type"
      >
      <description-html>
         <![CDATA[Type of the parameter.]]>
      </description-html>
      </property>

            <property name="optional" type-id-ref="BOOLEAN"
      vmodl-name="optional"
      >
      <description-html>
         <![CDATA[Whether the parameter is optional.]]>
      </description-html>
      </property>

            <property name="defaultValue" type-id-ref="vmodl.Any"
      vmodl-name="defaultValue"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Default value that can be used for the parameter.]]>
      </description-html>
      </property>

            <property name="hidden" type-id-ref="BOOLEAN"
      vmodl-name="hidden"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Whether the parameter will not be displayed in UI.]]>
      </description-html>
      </property>

            <property name="securitySensitive" type-id-ref="BOOLEAN"
      vmodl-name="securitySensitive"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Whether the parameter is security sensitive.]]>
      </description-html>
      </property>

            <property name="readOnly" type-id-ref="BOOLEAN"
      vmodl-name="readOnly"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates that the parameter value is read-only.]]>
      </description-html>
      </property>

            <property name="parameterRelations" type-id-ref="vim.profile.ParameterMetadata.ParameterRelationMetadata"
      vmodl-name="parameterRelations"
      version-id-ref="vim.version.version12"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Relations with other profile or parameters.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.profile.ParameterMetadata.RelationType</nested-type-id-ref>
      <nested-type-id-ref>vim.profile.ParameterMetadata.ParameterRelationMetadata</nested-type-id-ref>
   </data-object>
   <data-object name="HostNvmeSpec"
      type-id="vim.host.NvmeSpec"
      vmodl-name="vim.host.NvmeSpec"
      version-id-ref="vim.version.v7_0"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Specifies the main parameters needed when connecting to
  an NVMe over Fabrics controller or Discovery Service.]]>
      </description-html>
            <property name="hbaName" type-id-ref="java.lang.String"
      vmodl-name="hbaName"
      >
      <description-html>
         <![CDATA[The device name of the NVME over Fabrics host bus adapter.]]>
      </description-html>
      </property>

            <property name="transportParameters" type-id-ref="vim.host.NvmeTransportParameters"
      vmodl-name="transportParameters"
      >
      <description-html>
         <![CDATA[Transport specific information necessary to connect to the controller.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="CustomizationSysprep"
      type-id="vim.vm.customization.Sysprep"
      vmodl-name="vim.vm.customization.Sysprep"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.customization.IdentitySettings"
      >
      <description-html>
         <![CDATA[An object representation of a Windows <tt>sysprep.xml</tt> answer file. The sysprep
  type encloses all the individual keys listed in a <tt>sysprep.xml</tt> file. For
  more detailed information, see <a href =
  "https://technet.microsoft.com/en-us/library/cc771830(v=ws.10).aspx" target="_blank"
  >Performing Unattended Installations</a>.]]>
      </description-html>
            <property name="guiUnattended" type-id-ref="vim.vm.customization.GuiUnattended"
      vmodl-name="guiUnattended"
      >
      <description-html>
         <![CDATA[An object representation of the sysprep GuiUnattended key.]]>
      </description-html>
      </property>

            <property name="userData" type-id-ref="vim.vm.customization.UserData"
      vmodl-name="userData"
      >
      <description-html>
         <![CDATA[An object representation of the sysprep UserData key.]]>
      </description-html>
      </property>

            <property name="guiRunOnce" type-id-ref="vim.vm.customization.GuiRunOnce"
      vmodl-name="guiRunOnce"
      is-optional="true"
      >
      <description-html>
         <![CDATA[An object representation of the sysprep GuiRunOnce key.]]>
      </description-html>
      </property>

            <property name="identification" type-id-ref="vim.vm.customization.Identification"
      vmodl-name="identification"
      >
      <description-html>
         <![CDATA[An object representation of the sysprep Identification key.]]>
      </description-html>
      </property>

            <property name="licenseFilePrintData" type-id-ref="vim.vm.customization.LicenseFilePrintData"
      vmodl-name="licenseFilePrintData"
      is-optional="true"
      >
      <description-html>
         <![CDATA[An object representation of the sysprep LicenseFilePrintData key. Required only
  for Windows 2000 Server and Windows Server 2003.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ClusterComplianceCheckedEvent"
      type-id="vim.event.ClusterComplianceCheckedEvent"
      vmodl-name="vim.event.ClusterComplianceCheckedEvent"
      version-id-ref="vim.version.version5"
      base-type-id="vim.event.ClusterEvent"
      >
      <description-html>
         <![CDATA[This event records that a compliance check was triggered
  on the cluster.]]>
      </description-html>
            <property name="profile" type-id-ref="vim.event.ProfileEventArgument"
      vmodl-name="profile"
      >
      </property>

   </data-object>
   <data-object name="BatchResult"
      type-id="vim.BatchResult"
      vmodl-name="vim.BatchResult"
      version-id-ref="vim.version.version10"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Results of Batch APIs.]]>
      </description-html>
            <property name="result" type-id-ref="java.lang.String"
      vmodl-name="result"
      >
      <description-html>
         <![CDATA[Enum value for]]>
      </description-html>
      </property>

            <property name="hostKey" type-id-ref="java.lang.String"
      vmodl-name="hostKey"
      >
      <description-html>
         <![CDATA[Host for which the result applies.]]>
      </description-html>
      </property>

            <property name="ds" type-id-ref="vim.Datastore"
      vmodl-name="ds"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The datastore that is created.]]>
      </description-html>
      </property>

            <property name="fault" type-id-ref="vmodl.LocalizedMethodFault"
      vmodl-name="fault"
      is-optional="true"
      >
      <description-html>
         <![CDATA['fault' would be set if the operation was not successful]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.BatchResult.Result</nested-type-id-ref>
   </data-object>
   <data-object name="MethodDescription"
      type-id="vim.MethodDescription"
      vmodl-name="vim.MethodDescription"
      version-id-ref="vim.version.version1"
      base-type-id="vim.Description"
      >
      <description-html>
         <![CDATA[Static strings used for describing an object model method.]]>
      </description-html>
            <property name="key" type-id-ref="vmodl.MethodName"
      vmodl-name="key"
      >
      <description-html>
         <![CDATA[Method being described.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostDiskDimensions"
      type-id="vim.host.DiskDimensions"
      vmodl-name="vim.host.DiskDimensions"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object type describes multiple coordinate systems
  used to refer to a location or size on a disk.]]>
      </description-html>
      <nested-type-id-ref>vim.host.DiskDimensions.Chs</nested-type-id-ref>
      <nested-type-id-ref>vim.host.DiskDimensions.Lba</nested-type-id-ref>
   </data-object>
   <data-object name="AuthorizationEvent"
      type-id="vim.event.AuthorizationEvent"
      vmodl-name="vim.event.AuthorizationEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.Event"
      >
      <description-html>
         <![CDATA[These events indicate authorization events.]]>
      </description-html>
   </data-object>
   <data-object name="VirtualSerialPortURIBackingOption"
      type-id="vim.vm.device.VirtualSerialPortOption.URIBackingOption"
      vmodl-name="vim.vm.device.VirtualSerialPortOption.URIBackingOption"
      enclosing-type-id-ref="vim.vm.device.VirtualSerialPortOption"
      version-id-ref="vim.version.version6"
      base-type-id="vim.vm.device.VirtualDeviceOption.URIBackingOption"
      >
      <description-html>
         <![CDATA[The <code><a href="vim.vm.device.VirtualSerialPortOption.URIBackingOption.html">VirtualSerialPortURIBackingOption</a></code> data object type
  contains the options for using a network socket as backing for a virtual serial port.]]>
      </description-html>
   </data-object>
   <data-object name="HostVmfsRescanResult"
      type-id="vim.host.VmfsRescanResult"
      vmodl-name="vim.host.VmfsRescanResult"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[When a user resignatures an UnresolvedVmfsVolume through DatastoreSystem API,
  we resignature and auto-mount on the other hosts which share the
  same underlying storage luns. As part of the operation, we rescan host.
  This data object describes the outcome of rescan operation on a host]]>
      </description-html>
            <property name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      >
      <description-html>
         <![CDATA[Host name on which rescan was performed]]>
      </description-html>
      </property>

            <property name="fault" type-id-ref="vmodl.LocalizedMethodFault"
      vmodl-name="fault"
      is-optional="true"
      >
      <description-html>
         <![CDATA['fault' would be set if the operation was not successful]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostResignatureRescanResult"
      type-id="vim.host.ResignatureRescanResult"
      vmodl-name="vim.host.ResignatureRescanResult"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The <a href="vim.host.ResignatureRescanResult.html">HostResignatureRescanResult</a> data object
  identifies the newly created volume that is the result of a
  resignature operation. This data object is contained in the
  task object returned by the
  <a href="vim.host.DatastoreSystem.html#resignatureUnresolvedVmfsVolume">ResignatureUnresolvedVmfsVolume_Task</a>
  method.
  <p>
  When a client calls the resignature method, the Server
  resignatures the volume, rescans the specified list of hosts,
  and auto-mounts the volume on the other hosts that share the same
  underlying storage LUNs.]]>
      </description-html>
            <property name="rescan" type-id-ref="vim.host.VmfsRescanResult"
      vmodl-name="rescan"
      is-deprecated="true"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of VMFS Rescan operation results.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 5.1, the results of the operation
  are available when the task completes. That is, for shared volumes,
  the new volume is mounted on all of the connected hosts.]]>
      </deprecated-html>
      </property>

            <property name="result" type-id-ref="vim.Datastore"
      vmodl-name="result"
      >
      <description-html>
         <![CDATA[When an UnresolvedVmfsVolume has been resignatured, we want to return the
  newly created VMFS Datastore.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualSCSIPassthroughDeviceBackingInfo"
      type-id="vim.vm.device.VirtualSCSIPassthrough.DeviceBackingInfo"
      vmodl-name="vim.vm.device.VirtualSCSIPassthrough.DeviceBackingInfo"
      enclosing-type-id-ref="vim.vm.device.VirtualSCSIPassthrough"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.device.VirtualDevice.DeviceBackingInfo"
      >
      <description-html>
         <![CDATA[The VirtualSCSIPassthrough.DeviceBackingInfo data object type
  contains information about the backing that maps the
  virtual device onto a physical device.]]>
      </description-html>
   </data-object>
   <data-object name="GeneralEvent"
      type-id="vim.event.GeneralEvent"
      vmodl-name="vim.event.GeneralEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.Event"
      >
      <description-html>
         <![CDATA[These are general events.]]>
      </description-html>
            <property name="message" type-id-ref="java.lang.String"
      vmodl-name="message"
      >
      <description-html>
         <![CDATA[A short form of the message string, not localized.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="Tag"
      type-id="vim.Tag"
      vmodl-name="vim.Tag"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Defines a tag that can be associated with a managed entity.]]>
      </description-html>
            <property name="key" type-id-ref="java.lang.String"
      vmodl-name="key"
      >
      <description-html>
         <![CDATA[The tag key in human readable form.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostOpaqueSwitchPhysicalNicZone"
      type-id="vim.host.OpaqueSwitch.PhysicalNicZone"
      vmodl-name="vim.host.OpaqueSwitch.PhysicalNicZone"
      enclosing-type-id-ref="vim.host.OpaqueSwitch"
      version-id-ref="vim.version.version10"
      base-type-id="vmodl.DynamicData"
      >
            <property name="key" type-id-ref="java.lang.String"
      vmodl-name="key"
      >
      <description-html>
         <![CDATA[The zone ID]]>
      </description-html>
      </property>

            <property name="pnicDevice" type-id-ref="java.lang.String"
      vmodl-name="pnicDevice"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Whenever an OpaqueSwitch is associated with a PhysicalNicZone, then by default,
  the zone will consist of all physical nics that are linked to the switch.
  However, if this property is set, then the zone will be considered to be
  consisting of only those physical nics that are listed here.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostIpRouteOp"
      type-id="vim.host.IpRouteOp"
      vmodl-name="vim.host.IpRouteOp"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Routing Entry Operation.  Routing entries are individual static routes
 which combined with the default route form all of the routing rules for
 a host.]]>
      </description-html>
            <property name="changeOperation" type-id-ref="java.lang.String"
      vmodl-name="changeOperation"
      >
      <description-html>
         <![CDATA[This property indicates the change operation to apply on
  this configuration specification.<br>See <a href="vim.host.ConfigChange.Operation.html">HostConfigChangeOperation</a><br>]]>
      </description-html>
      </property>

            <property name="route" type-id-ref="vim.host.IpRouteEntry"
      vmodl-name="route"
      >
      <description-html>
         <![CDATA[The routing entry itself]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostInternetScsiHbaIPv6Properties"
      type-id="vim.host.InternetScsiHba.IPv6Properties"
      vmodl-name="vim.host.InternetScsiHba.IPv6Properties"
      enclosing-type-id-ref="vim.host.InternetScsiHba"
      version-id-ref="vim.version.version10"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The IPv6 properties for the host bus adapter.]]>
      </description-html>
            <property name="iscsiIpv6Address" type-id-ref="vim.host.InternetScsiHba.IscsiIpv6Address"
      vmodl-name="iscsiIpv6Address"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[There can be multiple IPv6 addressed plumbed onto the Host Bus Adapter.]]>
      </description-html>
      </property>

            <property name="ipv6DhcpConfigurationEnabled" type-id-ref="BOOLEAN"
      vmodl-name="ipv6DhcpConfigurationEnabled"
      is-optional="true"
      >
      <description-html>
         <![CDATA[True if DHCPv6 is enabled on the host bus adapter.
 User can keep this field unset while changing other IPv6 properties
 without altering current DHCP configuration.]]>
      </description-html>
      </property>

            <property name="ipv6LinkLocalAutoConfigurationEnabled" type-id-ref="BOOLEAN"
      vmodl-name="ipv6LinkLocalAutoConfigurationEnabled"
      is-optional="true"
      >
      <description-html>
         <![CDATA[True if auto configuration of link local address is enabled on the host bus adapter.
 User can keep this field unset while changing other IPv6 properties
 without altering current link local auto configuration.]]>
      </description-html>
      </property>

            <property name="ipv6RouterAdvertisementConfigurationEnabled" type-id-ref="BOOLEAN"
      vmodl-name="ipv6RouterAdvertisementConfigurationEnabled"
      is-optional="true"
      >
      <description-html>
         <![CDATA[True if the router advertisement configuration is enabled on the host bus adapter.
 User can keep this field unset while changing other IPv6 properties
 without altering current router advertisement configuration.]]>
      </description-html>
      </property>

            <property name="ipv6DefaultGateway" type-id-ref="java.lang.String"
      vmodl-name="ipv6DefaultGateway"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The current IPv6 default gateway.
 User can keep this field unset while changing other IPv6 properties
 without altering current default gateway configuration.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VmSecondaryStartedEvent"
      type-id="vim.event.VmSecondaryStartedEvent"
      vmodl-name="vim.event.VmSecondaryStartedEvent"
      version-id-ref="vim.version.version5"
      base-type-id="vim.event.VmEvent"
      >
      <description-html>
         <![CDATA[This event records a secondary VM is started successfully.]]>
      </description-html>
   </data-object>
   <data-object name="VirtualMachineBootOptionsBootableEthernetDevice"
      type-id="vim.vm.BootOptions.BootableEthernetDevice"
      vmodl-name="vim.vm.BootOptions.BootableEthernetDevice"
      enclosing-type-id-ref="vim.vm.BootOptions"
      version-id-ref="vim.version.version7"
      base-type-id="vim.vm.BootOptions.BootableDevice"
      >
      <description-html>
         <![CDATA[Bootable ethernet adapter.  PXE boot is attempted from the device.]]>
      </description-html>
            <property name="deviceKey" type-id-ref="INT"
      vmodl-name="deviceKey"
      >
      <description-html>
         <![CDATA[<a href="vim.vm.device.VirtualDevice.html#key">key</a>
  property of the bootable ethernet adapter.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostVirtualNicConfig"
      type-id="vim.host.VirtualNic.Config"
      vmodl-name="vim.host.VirtualNic.Config"
      enclosing-type-id-ref="vim.host.VirtualNic"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The <a href="vim.host.VirtualNic.Config.html">HostVirtualNicConfig</a> data object describes the virtual
  NIC configuration. It represents both the configured properties on a
  <a href="vim.host.VirtualNic.html">HostVirtualNic</a> and identification information.]]>
      </description-html>
            <property name="changeOperation" type-id-ref="java.lang.String"
      vmodl-name="changeOperation"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Change operation to apply on this configuration specification.<br>See <a href="vim.host.ConfigChange.Operation.html">HostConfigChangeOperation</a><br>]]>
      </description-html>
      </property>

            <property name="device" type-id-ref="java.lang.String"
      vmodl-name="device"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Virtual NIC device (<a href="vim.host.VirtualNic.html#device">device</a>) to which
 configuration applies.]]>
      </description-html>
      </property>

            <property name="portgroup" type-id-ref="java.lang.String"
      vmodl-name="portgroup"
      >
      <description-html>
         <![CDATA[If the Virtual NIC is connecting to a vSwitch, this property is the name of
 portgroup connected. If the Virtual NIC is connecting to a
 <a href="vim.DistributedVirtualSwitch.html">DistributedVirtualSwitch</a> or <a href="vim.host.OpaqueNetworkInfo.html">HostOpaqueNetworkInfo</a>,
 this property is ignored.]]>
      </description-html>
      </property>

            <property name="spec" type-id-ref="vim.host.VirtualNic.Specification"
      vmodl-name="spec"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Specification of the virtual network adapter.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostVFlashResourceConfigurationResult"
      type-id="vim.host.VFlashResourceConfigurationResult"
      vmodl-name="vim.host.VFlashResourceConfigurationResult"
      version-id-ref="vim.version.version9"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[vFlash resource configuration result returns the newly-configured backend
  VFFS volume and operation result for each passed-in SSD device.]]>
      </description-html>
            <property name="devicePath" type-id-ref="java.lang.String"
      vmodl-name="devicePath"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The original array of device path which user had specified]]>
      </description-html>
      </property>

            <property name="vffs" type-id-ref="vim.host.VffsVolume"
      vmodl-name="vffs"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Newly configured VffsVolume]]>
      </description-html>
      </property>

            <property name="diskConfigurationResult" type-id-ref="vim.host.DiskConfigurationResult"
      vmodl-name="diskConfigurationResult"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Array of device operation results.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostMemorySpec"
      type-id="vim.host.MemorySpec"
      vmodl-name="vim.host.MemorySpec"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[DataObject used for configuring the memory setting]]>
      </description-html>
            <property name="serviceConsoleReservation" type-id-ref="LONG"
      vmodl-name="serviceConsoleReservation"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Service Console reservation in bytes.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DistributedVirtualSwitchManagerDvsProductSpec"
      type-id="vim.dvs.DistributedVirtualSwitchManager.DvsProductSpec"
      vmodl-name="vim.dvs.DistributedVirtualSwitchManager.DvsProductSpec"
      enclosing-type-id-ref="vim.dvs.DistributedVirtualSwitchManager"
      version-id-ref="vim.version.version6"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This class is used to specify ProductSpec for the DVS. The two properties are
 strictly mutually exclusive. If both properties are set, then
 an InvalidArgument fault would be thrown.]]>
      </description-html>
            <property name="newSwitchProductSpec" type-id-ref="vim.dvs.ProductSpec"
      vmodl-name="newSwitchProductSpec"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The ProductSpec for new DVS]]>
      </description-html>
      </property>

            <property name="distributedVirtualSwitch" type-id-ref="vim.DistributedVirtualSwitch"
      vmodl-name="distributedVirtualSwitch"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Get ProductSpec from the existing DVS]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="NvdimmRegionInfo"
      type-id="vim.host.NvdimmSystem.RegionInfo"
      vmodl-name="vim.host.NvdimmSystem.RegionInfo"
      enclosing-type-id-ref="vim.host.NvdimmSystem"
      version-id-ref="vim.version.version12"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[\brief NVDIMM region information.
 This represents a region which is a part of NVDIMM.]]>
      </description-html>
            <property name="regionId" type-id-ref="INT"
      vmodl-name="regionId"
      >
      <description-html>
         <![CDATA[NVDIMM region ID]]>
      </description-html>
      </property>

            <property name="setId" type-id-ref="INT"
      vmodl-name="setId"
      >
      <description-html>
         <![CDATA[Interleave set ID.
  Interleave set to which this region belongs. A value
  of 0 indicates that this region is not a part of any
  interleave set.]]>
      </description-html>
      </property>

            <property name="rangeType" type-id-ref="java.lang.String"
      vmodl-name="rangeType"
      >
      <description-html>
         <![CDATA[Type of region.
  Must be one of the values of
  RangeType]]>
      </description-html>
      </property>

            <property name="startAddr" type-id-ref="LONG"
      vmodl-name="startAddr"
      >
      <description-html>
         <![CDATA[Region start address.
 This represents the address within the NVDIMM to which this
 NVDIMM region belongs (Dimm physical address).

 If RegionInfo#setId is 0, this field is not valid.]]>
      </description-html>
      </property>

            <property name="size" type-id-ref="LONG"
      vmodl-name="size"
      >
      <description-html>
         <![CDATA[Size of region in bytes.
 If this region is part of interleave set (represented by non zero
 RegionInfo#setId) and the region is interleaved across
 multiple dimms (represented by more that one element in
 InterleaveSetInfo#deviceList for assosiated set id
 RegionInfo#setId), this size represents part of the
 interleave set size - (total interleave set size / number
 of dimms in InterleaveSetInfo#deviceList).

 Example: If Interleave set with set id 5, has a size of 2TB
 and has 2 NVDIMMs contributing to it (size of
 InterleaveSetInfo#deviceList is 2), then this size
 parameter is 2TB/2 = 1TB.

 If RegionInfo#setId is 0, this field is not valid.]]>
      </description-html>
      </property>

            <property name="offset" type-id-ref="LONG"
      vmodl-name="offset"
      >
      <description-html>
         <![CDATA[Offset of nvdimm within interleave set.
  This represents offset with respect to base address
  in InterleaveSetInfo#baseAddress.

  If RegionInfo#setId is 0, this field is not valid.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostUserWorldSwapNotEnabledEvent"
      type-id="vim.event.HostUserWorldSwapNotEnabledEvent"
      vmodl-name="vim.event.HostUserWorldSwapNotEnabledEvent"
      version-id-ref="vim.version.version5"
      is-deprecated="true"
      base-type-id="vim.event.HostEvent"
      >
      <description-html>
         <![CDATA[This event records that the userworld swap is not enabled on the host. HA
  needs userworld swap to be configured on embedded ESX hosts to function.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 5.0, the event is no longer relevant.]]>
      </deprecated-html>
   </data-object>
   <data-object name="TicketedSessionAuthentication"
      type-id="vim.vm.guest.TicketedSessionAuthentication"
      vmodl-name="vim.vm.guest.TicketedSessionAuthentication"
      version-id-ref="vim.version.version7"
      base-type-id="vim.vm.guest.GuestAuthentication"
      >
      <description-html>
         <![CDATA[TicketedSessionAuthentication contains the information necessary to
  use previously obtained credentials in the guest.
  The ticketed session is not stateless and stores state inside of the guest.
  <p>
  A TicketedSessionAuthentication object will be returned as the result of a
  successful call to <a href="vim.vm.guest.AuthManager.html#acquireCredentials">AcquireCredentialsInGuest</a>. You can
  use this object in any guest operations function call.
  <p>
  When you no longer need the TicketedSessionAuthentication object, you should
  call <a href="vim.vm.guest.AuthManager.html#releaseCredentials">ReleaseCredentialsInGuest</a> to free associated resources
  and session data.]]>
      </description-html>
            <property name="ticket" type-id-ref="java.lang.String"
      vmodl-name="ticket"
      >
      <description-html>
         <![CDATA[This contains a base64 encoded Ticket.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="MacRange"
      type-id="vim.MacRange"
      vmodl-name="vim.MacRange"
      version-id-ref="vim.version.version9"
      base-type-id="vim.MacAddress"
      >
      <description-html>
         <![CDATA[This class defines a range of MAC address.]]>
      </description-html>
            <property name="address" type-id-ref="java.lang.String"
      vmodl-name="address"
      >
      <description-html>
         <![CDATA[MAC address.]]>
      </description-html>
      </property>

            <property name="mask" type-id-ref="java.lang.String"
      vmodl-name="mask"
      >
      <description-html>
         <![CDATA[Mask that is used in matching the MAC address. A MAC address is
  considered matched if the "and" operation of the mask on the
  MAC address and <a href="vim.MacRange.html#address">address</a> yields the same result.
  For example, a MAC of "00:A0:FF:14:FF:29" is considered matched
  for a <a href="vim.MacRange.html#address">address</a> of "00:A0:C9:14:C8:29" and a
  <a href="vim.MacRange.html#mask">mask</a> of "FF:FF:00:FF:00:FF".]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DVPortConfigSpec"
      type-id="vim.dvs.DistributedVirtualPort.ConfigSpec"
      vmodl-name="vim.dvs.DistributedVirtualPort.ConfigSpec"
      enclosing-type-id-ref="vim.dvs.DistributedVirtualPort"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Specification to reconfigure a <a href="vim.dvs.DistributedVirtualPort.html">DistributedVirtualPort</a>.]]>
      </description-html>
            <property name="operation" type-id-ref="java.lang.String"
      vmodl-name="operation"
      >
      <description-html>
         <![CDATA[The operation to remove or modify the existing ports. The valid values
  are:
  <ul>
    <li>vim.ConfigSpecOperation#edit</li>
    <li>vim.ConfigSpecOperation#remove</li>
  </ul>]]>
      </description-html>
      </property>

            <property name="key" type-id-ref="java.lang.String"
      vmodl-name="key"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Key of the port to be reconfigured.]]>
      </description-html>
      </property>

            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The name of the port.]]>
      </description-html>
      </property>

            <property name="scope" type-id-ref="vim.ManagedEntity"
      vmodl-name="scope"
      is-deprecated="true"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The eligible entities that can connect to the port, for detail see
  <a href="vim.dvs.DistributedVirtualPort.ConfigInfo.html#scope">scope</a>.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[as of vSphere API 5.5]]>
      </deprecated-html>
      </property>

            <property name="description" type-id-ref="java.lang.String"
      vmodl-name="description"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The description string of the port.]]>
      </description-html>
      </property>

            <property name="setting" type-id-ref="vim.dvs.DistributedVirtualPort.Setting"
      vmodl-name="setting"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The network setting of the port.]]>
      </description-html>
      </property>

            <property name="configVersion" type-id-ref="java.lang.String"
      vmodl-name="configVersion"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The version string of the configuration.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="WitnessNodeInfo"
      type-id="vim.vcha.FailoverClusterConfigurator.WitnessNodeInfo"
      vmodl-name="vim.vcha.FailoverClusterConfigurator.WitnessNodeInfo"
      enclosing-type-id-ref="vim.vcha.FailoverClusterConfigurator"
      version-id-ref="vim.version.version11"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The WitnessNodeInfo class defines configuration
  information for the Witness node in the cluster]]>
      </description-html>
            <property name="ipSettings" type-id-ref="vim.vm.customization.IPSettings"
      vmodl-name="ipSettings"
      >
      <description-html>
         <![CDATA[VCHA Cluster network configuration of the Witness node.]]>
      </description-html>
      </property>

            <property name="biosUuid" type-id-ref="java.lang.String"
      vmodl-name="biosUuid"
      is-optional="true"
      >
      <description-html>
         <![CDATA[BIOS UUID for the node. It is set only if the VCHA Cluster was
  formed using automatic provisioning by the deploy API.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VimVasaProviderInfo"
      type-id="vim.VimVasaProviderInfo"
      vmodl-name="vim.VimVasaProviderInfo"
      version-id-ref="vim.version.version10"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Data object representing VASA Provider information.]]>
      </description-html>
            <property name="provider" type-id-ref="vim.VimVasaProvider"
      vmodl-name="provider"
      >
      <description-html>
         <![CDATA[Vasa provider]]>
      </description-html>
      </property>

            <property name="arrayState" type-id-ref="vim.VimVasaProvider.StatePerArray"
      vmodl-name="arrayState"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Per-array State]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualMachineCdromInfo"
      type-id="vim.vm.CdromInfo"
      vmodl-name="vim.vm.CdromInfo"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.TargetInfo"
      >
      <description-html>
         <![CDATA[CdromInfo class contains information about a physical CD-ROM drive on the host.]]>
      </description-html>
            <property name="description" type-id-ref="java.lang.String"
      vmodl-name="description"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Description of the physical device.
 This is set only by the server.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualMachineRuntimeInfo"
      type-id="vim.vm.RuntimeInfo"
      vmodl-name="vim.vm.RuntimeInfo"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The RuntimeInfo data object type provides information about
  the execution state and history of a virtual machine.]]>
      </description-html>
            <property name="device" type-id-ref="vim.vm.DeviceRuntimeInfo"
      vmodl-name="device"
      version-id-ref="vim.version.version6"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Per-device runtime info. This array will be empty if the host
  software does not provide runtime info for any of the device
  types currently in use by the virtual machine.

  In releases after vSphere API 5.0, vSphere Servers might not
  generate property collector update notifications for this property.
  To obtain the latest value of the property, you can use
  PropertyCollector methods RetrievePropertiesEx or WaitForUpdatesEx.
  If you use the PropertyCollector.WaitForUpdatesEx method, specify
  an empty string for the version parameter.

  Since this property is on a DataObject, an update returned by WaitForUpdatesEx may
  contain values for this property when some other property on the DataObject changes.
  If this update is a result of a call to WaitForUpdatesEx with a non-empty
  version parameter, the value for this property may not be current.]]>
      </description-html>
      </property>

            <property name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The host that is responsible for running a virtual machine.
  This property is null if the virtual machine is not running and is
  not assigned to run on a particular host.]]>
      </description-html>
      </property>

            <property name="connectionState" type-id-ref="vim.VirtualMachine.ConnectionState"
      vmodl-name="connectionState"
      >
      <description-html>
         <![CDATA[Indicates whether or not the virtual machine is available for management.]]>
      </description-html>
      </property>

            <property name="powerState" type-id-ref="vim.VirtualMachine.PowerState"
      vmodl-name="powerState"
      >
      <description-html>
         <![CDATA[The current power state of the virtual machine.]]>
      </description-html>
      </property>

            <property name="faultToleranceState" type-id-ref="vim.VirtualMachine.FaultToleranceState"
      vmodl-name="faultToleranceState"
      version-id-ref="vim.version.version5"
      >
      <description-html>
         <![CDATA[The fault tolerance state of the virtual machine.]]>
      </description-html>
      </property>

            <property name="dasVmProtection" type-id-ref="vim.vm.RuntimeInfo.DasProtectionState"
      vmodl-name="dasVmProtection"
      version-id-ref="vim.version.version7"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The vSphere HA protection state for a virtual machine. Property
  is unset if vSphere HA is not enabled.]]>
      </description-html>
      </property>

            <property name="toolsInstallerMounted" type-id-ref="BOOLEAN"
      vmodl-name="toolsInstallerMounted"
      >
      <description-html>
         <![CDATA[Flag to indicate whether or not the VMware Tools installer
  is mounted as a CD-ROM.]]>
      </description-html>
      </property>

            <property name="suspendTime" type-id-ref="vmodl.DateTime"
      vmodl-name="suspendTime"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The timestamp when the virtual machine was most recently suspended.
  <p>
  This property is updated every time the virtual machine is suspended.]]>
      </description-html>
      </property>

            <property name="bootTime" type-id-ref="vmodl.DateTime"
      vmodl-name="bootTime"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The timestamp when the virtual machine was most recently powered on.
  <p>
  This property is updated when the virtual machine is powered on
  from the poweredOff state, and is cleared when the virtual machine is
  powered off. This property is not updated when a virtual machine is resumed
  from a suspended state.]]>
      </description-html>
      </property>

            <property name="suspendInterval" type-id-ref="LONG"
      vmodl-name="suspendInterval"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The total time the virtual machine has been suspended
  since it was initially powered on. This time excludes the current period,
  if the virtual machine is currently suspended.  This property is updated
  when the virtual machine resumes, and is reset to zero when the virtual machine
  is powered off.]]>
      </description-html>
      </property>

            <property name="question" type-id-ref="vim.vm.QuestionInfo"
      vmodl-name="question"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The current question, if any, that is blocking the virtual machine's execution.]]>
      </description-html>
      </property>

            <property name="memoryOverhead" type-id-ref="LONG"
      vmodl-name="memoryOverhead"
      is-deprecated="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The amount of memory resource (in bytes) that will be used by
  the virtual machine above its guest memory requirements.
  This value is set if and only if the virtual machine is registered
  on a host that supports memory resource allocation features.
  <p>
  For powered off VMs, this is the minimum overhead required to
  power on the VM on the registered host.
  <p>
  For powered on VMs, this is the current overhead reservation, a
  value which is almost always larger than the minimum overhead, and
  which grows with time.
  <p><br>See <a href="vim.HostSystem.html#queryOverheadEx">QueryMemoryOverheadEx</a><br>]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 4.1, use the <a href="vim.PerformanceManager.html">PerformanceManager</a>
  memory overhead counter to get this value.]]>
      </deprecated-html>
      </property>

            <property name="maxCpuUsage" type-id-ref="INT"
      vmodl-name="maxCpuUsage"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Current upper-bound on CPU usage. The upper-bound is based on the host
  the virtual machine is current running on, as well as limits configured
  on the virtual machine itself or any parent resource pool.
  Valid while the virtual machine is running.

  In releases after vSphere API 5.0, vSphere Servers might not
  generate property collector update notifications for this property.
  To obtain the latest value of the property, you can use
  PropertyCollector methods RetrievePropertiesEx or WaitForUpdatesEx.
  If you use the PropertyCollector.WaitForUpdatesEx method, specify
  an empty string for the version parameter.

  Since this property is on a DataObject, an update returned by WaitForUpdatesEx may
  contain values for this property when some other property on the DataObject changes.
  If this update is a result of a call to WaitForUpdatesEx with a non-empty
  version parameter, the value for this property may not be current.]]>
      </description-html>
      </property>

            <property name="maxMemoryUsage" type-id-ref="INT"
      vmodl-name="maxMemoryUsage"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Current upper-bound on memory usage. The upper-bound is based on memory
  configuration of the virtual machine, as well as limits configured
  on the virtual machine itself or any parent resource pool.
  Valid while the virtual machine is running.

  In releases after vSphere API 5.0, vSphere Servers might not
  generate property collector update notifications for this property.
  To obtain the latest value of the property, you can use
  PropertyCollector methods RetrievePropertiesEx or WaitForUpdatesEx.
  If you use the PropertyCollector.WaitForUpdatesEx method, specify
  an empty string for the version parameter.

  Since this property is on a DataObject, an update returned by WaitForUpdatesEx may
  contain values for this property when some other property on the DataObject changes.
  If this update is a result of a call to WaitForUpdatesEx with a non-empty
  version parameter, the value for this property may not be current.]]>
      </description-html>
      </property>

            <property name="numMksConnections" type-id-ref="INT"
      vmodl-name="numMksConnections"
      >
      <description-html>
         <![CDATA[Number of active MKS connections to this virtual machine.]]>
      </description-html>
      </property>

            <property name="recordReplayState" type-id-ref="vim.VirtualMachine.RecordReplayState"
      vmodl-name="recordReplayState"
      version-id-ref="vim.version.version5"
      is-deprecated="true"
      >
      <description-html>
         <![CDATA[Record / replay state of this virtual machine.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[as of vSphere API 6.0]]>
      </deprecated-html>
      </property>

            <property name="cleanPowerOff" type-id-ref="BOOLEAN"
      vmodl-name="cleanPowerOff"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[For a powered off virtual machine, indicates whether the virtual
   machine's last shutdown was an orderly power off or not. Unset if
   the virtual machine is running or suspended.]]>
      </description-html>
      </property>

            <property name="needSecondaryReason" type-id-ref="java.lang.String"
      vmodl-name="needSecondaryReason"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[If set, indicates the reason the virtual machine needs a secondary.]]>
      </description-html>
      </property>

            <property name="onlineStandby" type-id-ref="BOOLEAN"
      vmodl-name="onlineStandby"
      version-id-ref="vim.version.version8"
      >
      <description-html>
         <![CDATA[This property indicates whether the guest has gone into one of the
   s1, s2 or s3 standby modes, false indicates the guest is awake.]]>
      </description-html>
      </property>

            <property name="minRequiredEVCModeKey" type-id-ref="java.lang.String"
      vmodl-name="minRequiredEVCModeKey"
      version-id-ref="vim.version.version6"
      is-optional="true"
      >
      <description-html>
         <![CDATA[For a powered-on or suspended virtual machine in a cluster with Enhanced
  VMotion Compatibility (EVC) enabled, this identifies the least-featured
  EVC mode (among those for the appropriate CPU vendor) that could admit
  the virtual machine. See <a href="vim.EVCMode.html">EVCMode</a>. Until vSphere 6.5, this
  property will be unset if the virtual machine is powered off or is not in
  an EVC cluster.
  <p>
  This property may be used as a general indicator of the CPU feature
  baseline currently in use by the virtual machine. However, the virtual
  machine may be suppressing some of the features present in the CPU
  feature baseline of the indicated mode, either explicitly (in the
  virtual machine's configured
  <a href="vim.vm.ConfigInfo.html#cpuFeatureMask">cpuFeatureMask</a>) or implicitly
  (in the default masks for the
  <a href="vim.vm.GuestOsDescriptor.html">GuestOsDescriptor</a> appropriate for the
  virtual machine's configured guest OS).]]>
      </description-html>
      </property>

            <property name="consolidationNeeded" type-id-ref="BOOLEAN"
      vmodl-name="consolidationNeeded"
      version-id-ref="vim.version.version7"
      >
      <description-html>
         <![CDATA[Whether any disk of the virtual machine requires consolidation.
  This can happen for example when a snapshot is deleted but its
  associated disk is not committed back to the base disk.

  Use <a href="vim.VirtualMachine.html#consolidateDisks">ConsolidateVMDisks_Task</a> to consolidate if
  needed.]]>
      </description-html>
      </property>

            <property name="offlineFeatureRequirement" type-id-ref="vim.vm.FeatureRequirement"
      vmodl-name="offlineFeatureRequirement"
      version-id-ref="vim.version.version8"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[These requirements must have equivalent host capabilities
  <a href="vim.host.ConfigInfo.html#featureCapability">featureCapability</a> in order to power on.]]>
      </description-html>
      </property>

            <property name="featureRequirement" type-id-ref="vim.vm.FeatureRequirement"
      vmodl-name="featureRequirement"
      version-id-ref="vim.version.version8"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[These requirements must have equivalent host capabilities
  <a href="vim.host.ConfigInfo.html#featureCapability">featureCapability</a> in order to power on,
  resume, or migrate to the host.]]>
      </description-html>
      </property>

            <property name="featureMask" type-id-ref="vim.host.FeatureMask"
      vmodl-name="featureMask"
      version-id-ref="vim.version.version8"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The masks applied to an individual virtual machine as a result of its
  configuration.]]>
      </description-html>
      </property>

            <property name="vFlashCacheAllocation" type-id-ref="LONG"
      vmodl-name="vFlashCacheAllocation"
      version-id-ref="vim.version.version9"
      is-deprecated="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Specifies the total allocated vFlash resource for the vFlash caches associated with VM's
 VMDKs when VM is powered on, in bytes.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[since vSphere 7.0 because vFlash Read Cache
 end of availability.]]>
      </deprecated-html>
      </property>

            <property name="paused" type-id-ref="BOOLEAN"
      vmodl-name="paused"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Whether the virtual machine is paused, or not.]]>
      </description-html>
      </property>

            <property name="snapshotInBackground" type-id-ref="BOOLEAN"
      vmodl-name="snapshotInBackground"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Whether a snapshot operation is in progress in the background, or not.]]>
      </description-html>
      </property>

            <property name="quiescedForkParent" type-id-ref="BOOLEAN"
      vmodl-name="quiescedForkParent"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[This flag indicates whether a parent virtual machine is in a fork ready
 state. A persistent instant clone child can be created only when this flag
 is true. While a non-persistent instant clone child can be created
 independent of this flag, it can only be powered on if this flag is true.]]>
      </description-html>
      </property>

            <property name="instantCloneFrozen" type-id-ref="BOOLEAN"
      vmodl-name="instantCloneFrozen"
      version-id-ref="vim.version.version12"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Whether the virtual machine is frozen for instant clone, or not.]]>
      </description-html>
      </property>

            <property name="cryptoState" type-id-ref="java.lang.String"
      vmodl-name="cryptoState"
      version-id-ref="vim.version.version12"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Encryption state of the virtual machine. Valid values are enumerated by the
 <a href="vim.VirtualMachine.CryptoState.html">CryptoState</a> type.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.vm.RuntimeInfo.DasProtectionState</nested-type-id-ref>
   </data-object>
   <data-object name="ClusterDrsMigration"
      type-id="vim.cluster.DrsMigration"
      vmodl-name="vim.cluster.DrsMigration"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Describes a single virtual machine migration.]]>
      </description-html>
            <property name="key" type-id-ref="java.lang.String"
      vmodl-name="key"
      >
      <description-html>
         <![CDATA[A unique key that identifies this recommendation. This
  is used as an argument to
  ComputeResource.applyRecommendation.]]>
      </description-html>
      </property>

            <property name="time" type-id-ref="vmodl.DateTime"
      vmodl-name="time"
      >
      <description-html>
         <![CDATA[The time this recommendation was computed.]]>
      </description-html>
      </property>

            <property name="vm" type-id-ref="vim.VirtualMachine"
      vmodl-name="vm"
      >
      <description-html>
         <![CDATA[The virtual machine selected for migration.]]>
      </description-html>
      </property>

            <property name="cpuLoad" type-id-ref="INT"
      vmodl-name="cpuLoad"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Current CPU load for the virtual machine, in MHz.
  This property is only populated for recommendations.]]>
      </description-html>
      </property>

            <property name="memoryLoad" type-id-ref="LONG"
      vmodl-name="memoryLoad"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Current memory load for the virtual machine, in bytes.
  This field is only populated for recommendations.]]>
      </description-html>
      </property>

            <property name="source" type-id-ref="vim.HostSystem"
      vmodl-name="source"
      >
      <description-html>
         <![CDATA[Source host.]]>
      </description-html>
      </property>

            <property name="sourceCpuLoad" type-id-ref="INT"
      vmodl-name="sourceCpuLoad"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Current CPU load on the source host, in MHz.]]>
      </description-html>
      </property>

            <property name="sourceMemoryLoad" type-id-ref="LONG"
      vmodl-name="sourceMemoryLoad"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Current memory usage on the source host, in bytes.]]>
      </description-html>
      </property>

            <property name="destination" type-id-ref="vim.HostSystem"
      vmodl-name="destination"
      >
      <description-html>
         <![CDATA[Destination host.]]>
      </description-html>
      </property>

            <property name="destinationCpuLoad" type-id-ref="INT"
      vmodl-name="destinationCpuLoad"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Current CPU load on the destination host, in MHz.]]>
      </description-html>
      </property>

            <property name="destinationMemoryLoad" type-id-ref="LONG"
      vmodl-name="destinationMemoryLoad"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Current memory usage on the destination host, in bytes.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ReplicationConfigSpec"
      type-id="vim.vm.ReplicationConfigSpec"
      vmodl-name="vim.vm.ReplicationConfigSpec"
      version-id-ref="vim.version.version7"
      internal-before-version-id-ref="vim.version.version10"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The ReplicationConfigSpec object type encapsulates the replication
 configuration parameters for a virtual machine. It consists of two
 parts: 1) a set of virtual machine-wide replication properties; 2)
 a set of properties per replicated virtual disk. ReplicationSetting
 is passed as an argument for initial replication configuration
 (@see vim.VirtualMachine.EnableReplication) as well as for
 re-configuration of a replicated VM's properties (@see
 vim.VirtualMachine.ReconfigureReplication). It is also returned to
 callers through a "get" interface (@see
 vim.VirtualMachine.ReplicationConfig).]]>
      </description-html>
            <property name="generation" type-id-ref="LONG"
      vmodl-name="generation"
      >
      <description-html>
         <![CDATA[A generation number (>=0) that reflects the "freshness" of the
 ReplicationConfigSpec on which a re-configuration is based. The
 generation number is used to detect and disallow concurrent
 updates to a VM's replication settings.

 For initial replication enablement, generation = 0.  The
 replication settings of every replication re-configuration
 operation must reflect the latest generation number known to the
 caller.  It takes an explicit call to get the latest replication
 settings to find out what the latest generation number is. The
 update algorithm of the generation number is opaque to the
 caller; e.g., the caller cannot assume that the generation
 numbers are incremented by one every time replication is
 (re)configured, not even that they are changing monotonically.]]>
      </description-html>
      </property>

            <property name="vmReplicationId" type-id-ref="java.lang.String"
      vmodl-name="vmReplicationId"
      >
      <description-html>
         <![CDATA[An opaque identifier that uniquely identifies a replicated VM
 between primary and secondary sites.]]>
      </description-html>
      </property>

            <property name="destination" type-id-ref="java.lang.String"
      vmodl-name="destination"
      >
      <description-html>
         <![CDATA[The IP address of the HBR Server in the secondary site
 where this VM is replicated to.

 Note: If net encryption is enabled, this is the address of the
 encryption tunnelling agent.]]>
      </description-html>
      </property>

            <property name="port" type-id-ref="INT"
      vmodl-name="port"
      >
      <description-html>
         <![CDATA[The port on the HBR Server in the secondary site where this VM
 is replicated to.

 Note: If net encryption is enabled, this is the port of the
 encryption tunneling agent.]]>
      </description-html>
      </property>

            <property name="rpo" type-id-ref="LONG"
      vmodl-name="rpo"
      >
      <description-html>
         <![CDATA[The Recovery Point Objective specified for this VM, in minutes.
 Currently, valid values are in the range of 1 minute to 1440
 minutes (24 hours).]]>
      </description-html>
      </property>

            <property name="quiesceGuestEnabled" type-id-ref="BOOLEAN"
      vmodl-name="quiesceGuestEnabled"
      >
      <description-html>
         <![CDATA[Flag that indicates whether or not to quiesce the file system or
 applications in the guest OS before a consistent replica is
 created.]]>
      </description-html>
      </property>

            <property name="paused" type-id-ref="BOOLEAN"
      vmodl-name="paused"
      >
      <description-html>
         <![CDATA[Flag that indicates whether or not the vm or group has been paused for
  replication.]]>
      </description-html>
      </property>

            <property name="oppUpdatesEnabled" type-id-ref="BOOLEAN"
      vmodl-name="oppUpdatesEnabled"
      >
      <description-html>
         <![CDATA[Flag that indicates whether or not to perform opportunistic
 updates in-between consistent replicas.]]>
      </description-html>
      </property>

            <property name="netCompressionEnabled" type-id-ref="BOOLEAN"
      vmodl-name="netCompressionEnabled"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Flag that indicates whether or not compression should
 be used when sending traffic over the network.

 The primary will negotiate the best compression with
 the server on the secondary if this is enabled.]]>
      </description-html>
      </property>

            <property name="netEncryptionEnabled" type-id-ref="BOOLEAN"
      vmodl-name="netEncryptionEnabled"
      version-id-ref="vim.version.version12"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Flag that indicates whether or not encription should
 be used when sending traffic over the network.

 The primary will use  the remoteCertificateThumbprint
 to verify the identity of the remote server.]]>
      </description-html>
      </property>

            <property name="encryptionDestination" type-id-ref="java.lang.String"
      vmodl-name="encryptionDestination"
      version-id-ref="vim.version.version12"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The IP address of the remote HBR server, target for encrypted LWD.

 This field is required when net encryption is enabled, ignored otherwise.]]>
      </description-html>
      </property>

            <property name="encryptionPort" type-id-ref="INT"
      vmodl-name="encryptionPort"
      version-id-ref="vim.version.version12"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The port on the remote HBR server, target for encrypted LWD.

 This field is only relevant when net encryption is enabled.]]>
      </description-html>
      </property>

            <property name="remoteCertificateThumbprint" type-id-ref="java.lang.String"
      vmodl-name="remoteCertificateThumbprint"
      version-id-ref="vim.version.version12"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The SHA256 thumbprint of the remote server certificate.

 This field is only relevant when net encription is enabled.]]>
      </description-html>
      </property>

            <property name="disk" type-id-ref="vim.vm.ReplicationConfigSpec.DiskSettings"
      vmodl-name="disk"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The set of the disks of this VM that are configured for
 replication.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.vm.ReplicationConfigSpec.DiskSettings</nested-type-id-ref>
   </data-object>
   <data-object name="ObjectSpec"
      type-id="vmodl.query.PropertyCollector.ObjectSpec"
      vmodl-name="vmodl.query.PropertyCollector.ObjectSpec"
      enclosing-type-id-ref="vmodl.query.PropertyCollector"
      version-id-ref="vmodl.query.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Within a <a href="vmodl.query.PropertyCollector.FilterSpec.html">PropertyFilterSpec</a>, the <a href="vmodl.query.PropertyCollector.ObjectSpec.html">ObjectSpec</a> data object type specifies the managed
  object at which the filter begins to collect the managed object
  references and properties specified by the associated <a href="vmodl.query.PropertyCollector.PropertySpec.html">PropertySpec</a> set. If the "skip" property is present
  and set to true, then the filter does not check to see if the starting
  object's type matches any of the types listed in the associated sets of
  <a href="vmodl.query.PropertyCollector.PropertySpec.html">PropertySpec</a> data objects.

  <p> If the <a href="vmodl.query.PropertyCollector.ObjectSpec.html#selectSet">selectSet</a> property is
  present, then this specifies additional objects to filter.  These objects
  are defined by one or more <a href="vmodl.query.PropertyCollector.SelectionSpec.html">SelectionSpec</a>
  objects.]]>
      </description-html>
            <property name="obj" type-id-ref="vmodl.ManagedObject"
      vmodl-name="obj"
      privilege="System.View"
      >
      <description-html>
         <![CDATA[Starting object.]]>
      </description-html>
      </property>

            <property name="skip" type-id-ref="BOOLEAN"
      vmodl-name="skip"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Flag to specify whether or not to report this managed object's
  properties.  If the flag is true, the filter will not report this
  managed object's properties.]]>
      </description-html>
      </property>

            <property name="selectSet" type-id-ref="vmodl.query.PropertyCollector.SelectionSpec"
      vmodl-name="selectSet"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Set of selections to specify additional objects to filter.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DailyTaskScheduler"
      type-id="vim.scheduler.DailyTaskScheduler"
      vmodl-name="vim.scheduler.DailyTaskScheduler"
      version-id-ref="vim.version.version1"
      base-type-id="vim.scheduler.HourlyTaskScheduler"
      >
      <description-html>
         <![CDATA[The <a href="vim.scheduler.DailyTaskScheduler.html">DailyTaskScheduler</a> data object sets the time for daily
  task execution. You set the hour and the inherited minute
  property to complete the schedule. By default, the scheduled task
  will run once every day at the specified hour and minute.
  <p>
  If you set the interval to a value greater than 1, the task will
  execute at the specified daily interval. (For example, an interval
  of 2 will cause the task to execute at the specified hour and minute
  every 2 days.)]]>
      </description-html>
            <property name="hour" type-id-ref="INT"
      vmodl-name="hour"
      >
      <description-html>
         <![CDATA[The hour at which the <a href="vim.scheduler.RecurrentTaskScheduler.html">RecurrentTaskScheduler</a> runs the task.
  Use UTC (Coordinated Universal Time) values in the range
  0 to 23, where 0 = 12:00 a.m. (UTC) and 12 = 12:00 p.m. (UTC).
  <p>
  For vCenter 2.x and prior releases, use the server's local time.
  For example, use Eastern Standard Time (EST) or Pacific Daylight Time (PDT),
  rather than UTC.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="TaskReasonSystem"
      type-id="vim.TaskReasonSystem"
      vmodl-name="vim.TaskReasonSystem"
      version-id-ref="vim.version.version1"
      base-type-id="vim.TaskReason"
      >
      <description-html>
         <![CDATA[Indicates that the task was started by the system (a default task).]]>
      </description-html>
   </data-object>
   <data-object name="HostVirtualNicConnection"
      type-id="vim.host.VirtualNicConnection"
      vmodl-name="vim.host.VirtualNicConnection"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[DataObject which provides a level of indirection when
  identifying VirtualNics during configuration.
  This dataObject lets users specify a VirtualNic in terms of
  the portgroup/Dv Port the Virtual NIC is connected to.

  This is useful in cases where VirtualNic will be created as part of
  a configuration operation and the created VirtualNic is referred to
  in some other part of configuration. e.g: for configuring VMotion]]>
      </description-html>
            <property name="portgroup" type-id-ref="java.lang.String"
      vmodl-name="portgroup"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Name of the portgroup to which the virtual nic is connected to.
  If this parameter is set, use a virtual nic connected to
  a legacy portgroup.]]>
      </description-html>
      </property>

            <property name="dvPort" type-id-ref="vim.dvs.PortConnection"
      vmodl-name="dvPort"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Identifier for the DistributedVirtualPort.
  If the virtual nic is to be connected to a DVS,
  #dvPort will be set instead of #portgroup]]>
      </description-html>
      </property>

            <property name="opNetwork" type-id-ref="vim.host.VirtualNic.OpaqueNetworkSpec"
      vmodl-name="opNetwork"
      version-id-ref="vim.version.version12"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Identifier for the opaqueNetworkSpec virtual nic connected to.
  If the virtual nic is to be connected to a logicSwitch,
  #opNetwork will be set instead of #portgroup and #dvPort]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DvsVmVnicResourcePoolConfigSpec"
      type-id="vim.dvs.VmVnicNetworkResourcePool.ConfigSpec"
      vmodl-name="vim.dvs.VmVnicNetworkResourcePool.ConfigSpec"
      enclosing-type-id-ref="vim.dvs.VmVnicNetworkResourcePool"
      version-id-ref="vim.version.version10"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The configuration specification data object to update the resource configuration
  for a virtual NIC network resource pool.]]>
      </description-html>
            <property name="operation" type-id-ref="java.lang.String"
      vmodl-name="operation"
      >
      <description-html>
         <![CDATA[The type of operation on the virtual NIC network resource pool
 Possible value can be of
 <a href="vim.ConfigSpecOperation.html">ConfigSpecOperation</a>]]>
      </description-html>
      </property>

            <property name="key" type-id-ref="java.lang.String"
      vmodl-name="key"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The key of the network resource pool. The property is ignored for add
  operations.]]>
      </description-html>
      </property>

            <property name="configVersion" type-id-ref="java.lang.String"
      vmodl-name="configVersion"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The configVersion is a unique identifier for a given version
  of the configuration. Each change to the configuration will
  update this value. This is typically implemented as a
  non-decreasing count or a time-stamp. However, a client should
  always treat this as an opaque string.
  <p>
  If specified when updating the resource configuration, the
  changes will only be applied if the current configVersion matches the
  specified configVersion. This field can be used to guard against
  updates that that may have occurred between the time when configVersion
  was read and when it is applied.]]>
      </description-html>
      </property>

            <property name="allocationInfo" type-id-ref="vim.dvs.VmVnicNetworkResourcePool.ResourceAllocation"
      vmodl-name="allocationInfo"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The resource allocation for the virtual NIC network resource pool.]]>
      </description-html>
      </property>

            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The name for the virtual NIC network resource pool.
  The property is required for Add operations.]]>
      </description-html>
      </property>

            <property name="description" type-id-ref="java.lang.String"
      vmodl-name="description"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The description for the virtual NIC network resource pool.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="CustomizationGuiRunOnce"
      type-id="vim.vm.customization.GuiRunOnce"
      vmodl-name="vim.vm.customization.GuiRunOnce"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The commands listed in the GuiRunOnce data object type are executed when a user
  logs on the first time after customization completes. The logon may be driven by
  the <a href="vim.vm.customization.GuiUnattended.html#autoLogon">autoLogon</a> setting.
  <p>
  The GuiRunOnce data object type maps to the GuiRunOnce key in the
  <tt>sysprep.xml</tt> answer file. These values are transferred into the
  <tt>sysprep.xml</tt> file that VirtualCenter stores on the target virtual disk. For
  more detailed information, see <a href =
  "https://technet.microsoft.com/en-us/library/cc771830(v=ws.10).aspx" target="_blank"
  >Performing Unattended Installations</a>.]]>
      </description-html>
            <property name="commandList" type-id-ref="java.lang.String"
      vmodl-name="commandList"
      is-array="true"
      >
      <description-html>
         <![CDATA[A list of commands to run at first user logon, after guest customization.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostNicFailureCriteria"
      type-id="vim.host.NetworkPolicy.NicFailureCriteria"
      vmodl-name="vim.host.NetworkPolicy.NicFailureCriteria"
      enclosing-type-id-ref="vim.host.NetworkPolicy"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object type describes the network adapter failover
  detection algorithm for a network adapter team.]]>
      </description-html>
            <property name="checkSpeed" type-id-ref="java.lang.String"
      vmodl-name="checkSpeed"
      is-deprecated="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[To use link speed as the criteria, <em>checkSpeed</em> must be one of
  the following values:
  <p>
  <ul>
  <li> <b>exact</b>: Use exact speed to detect link failure.
       <b>speed</b> is the configured exact speed in megabits per second.
  <li> <b>minimum</b>: Use minimum speed to detect failure.
       <b>speed</b> is the configured minimum speed in megabits per second.
  <li> <b>empty string</b>: Do not use link speed to detect failure.
       <b>speed</b> is unused in this case.
  </ul>]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of VI API 5.1, this property is not supported]]>
      </deprecated-html>
      </property>

            <property name="speed" type-id-ref="INT"
      vmodl-name="speed"
      is-deprecated="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[see vim.host.NetworkPolicy.NicFailureCriteria#checkSpeed<br>See <a href="vim.host.NetworkPolicy.NicFailureCriteria.html#checkSpeed">checkSpeed</a><br>]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of VI API 5.1, this property is not supported]]>
      </deprecated-html>
      </property>

            <property name="checkDuplex" type-id-ref="BOOLEAN"
      vmodl-name="checkDuplex"
      is-deprecated="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The flag to indicate whether or not to use the link duplex reported
  by the driver as link selection criteria.
  <p>
  If <b>checkDuplex</b> is true, then fullDuplex is the configured
  duplex mode.  The link is considered bad if the link duplex reported
  by driver is not the same as fullDuplex.
  </p>
  <p>
  If <b>checkDuplex</b> is false, then fullDuplex is unused, and
  link duplexity is not used as a detection method.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of VI API 5.1, this property is not supported]]>
      </deprecated-html>
      </property>

            <property name="fullDuplex" type-id-ref="BOOLEAN"
      vmodl-name="fullDuplex"
      is-deprecated="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[see vim.host.NetworkPolicy.NicFailureCriteria#checkDuplex<br>See <a href="vim.host.NetworkPolicy.NicFailureCriteria.html#checkDuplex">checkDuplex</a><br>]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of VI API 5.1, this property is not supported]]>
      </deprecated-html>
      </property>

            <property name="checkErrorPercent" type-id-ref="BOOLEAN"
      vmodl-name="checkErrorPercent"
      is-deprecated="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The flag to indicate whether or not to use link error percentage
  to detect failure.
  <p>
  If <b>checkErrorPercent</b> is true, then percentage is the configured
  error percentage that is tolerated.  The link is considered bad
  if error rate exceeds percentage.
  <p>
  If <b>checkErrorPercent</b> is false, percentage is unused, and
  error percentage is not used as a detection method.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of VI API 5.1, this property is not supported]]>
      </deprecated-html>
      </property>

            <property name="percentage" type-id-ref="INT"
      vmodl-name="percentage"
      is-deprecated="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[see vim.host.NetworkPolicy.NicFailureCriteria#checkErrorPercent<br>See <a href="vim.host.NetworkPolicy.NicFailureCriteria.html#checkErrorPercent">checkErrorPercent</a><br>]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of VI API 5.1, this property is not supported]]>
      </deprecated-html>
      </property>

            <property name="checkBeacon" type-id-ref="BOOLEAN"
      vmodl-name="checkBeacon"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The flag to indicate whether or not to enable this property to
  enable beacon probing as a method to validate
  the link status of a physical network adapter.
  <p>
  <b>checkBeacon</b> can be enabled only if the VirtualSwitch has been
  configured to use the beacon.  Attempting to set <b>checkBeacon</b>
  on a PortGroup or VirtualSwitch that does not have beacon probing
  configured for the applicable VirtualSwitch results in an error.<br>See <a href="vim.host.VirtualSwitch.BondBridge.html#beacon">beacon</a><br>See <a href="vim.host.VirtualSwitch.BeaconConfig.html">HostVirtualSwitchBeaconConfig</a><br>]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="NetDhcpConfigInfoDhcpOptions"
      type-id="vim.net.DhcpConfigInfo.DhcpOptions"
      vmodl-name="vim.net.DhcpConfigInfo.DhcpOptions"
      enclosing-type-id-ref="vim.net.DhcpConfigInfo"
      version-id-ref="vim.version.version6"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Provides for reporting of DHCP client. This data object may be used
 at a per interface or per system scope.]]>
      </description-html>
            <property name="enable" type-id-ref="BOOLEAN"
      vmodl-name="enable"
      >
      <description-html>
         <![CDATA[Report state of dhcp client services.]]>
      </description-html>
      </property>

            <property name="config" type-id-ref="vim.KeyValue"
      vmodl-name="config"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Platform specific settings for DHCP Client.
 The key part is a unique number, the value part
 is the platform specific configuration command.
 For example on Linux, BSD systems using the file dhclient.conf
 output would be reported at system scope:
   key='1', value='timeout 60;'
   key='2', value='reboot 10;'

 output reported at per interface scope:
   key='1', value='prepend domain-name-servers 192.0.2.1;'
   key='2', value='equire subnet-mask, domain-name-servers;']]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostLicenseExpiredEvent"
      type-id="vim.event.HostLicenseExpiredEvent"
      vmodl-name="vim.event.HostLicenseExpiredEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.LicenseEvent"
      >
      <description-html>
         <![CDATA[This event records an expired host license.]]>
      </description-html>
   </data-object>
   <data-object name="HostConnectInfoNetworkInfo"
      type-id="vim.host.ConnectInfo.NetworkInfo"
      vmodl-name="vim.host.ConnectInfo.NetworkInfo"
      enclosing-type-id-ref="vim.host.ConnectInfo"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The base data object type for information about networks on the host.]]>
      </description-html>
            <property name="summary" type-id-ref="vim.Network.Summary"
      vmodl-name="summary"
      >
      <description-html>
         <![CDATA[Basic network information, such as network name. The managed object reference
  is not set.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualPCIPassthroughOption"
      type-id="vim.vm.device.VirtualPCIPassthroughOption"
      vmodl-name="vim.vm.device.VirtualPCIPassthroughOption"
      version-id-ref="vim.version.version5"
      base-type-id="vim.vm.device.VirtualDeviceOption"
      >
      <description-html>
         <![CDATA[The VirtualPCIPassthroughOption data object type describes the options
  for the
  <a href="vim.vm.device.VirtualPCIPassthrough.html">VirtualPCIPassthrough</a>
  data object type.]]>
      </description-html>
      <nested-type-id-ref>vim.vm.device.VirtualPCIPassthroughOption.DeviceBackingOption</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.device.VirtualPCIPassthroughOption.PluginBackingOption</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.device.VirtualPCIPassthroughOption.VmiopBackingOption</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.device.VirtualPCIPassthroughOption.DynamicBackingOption</nested-type-id-ref>
   </data-object>
   <data-object name="GuestStackInfo"
      type-id="vim.vm.GuestInfo.StackInfo"
      vmodl-name="vim.vm.GuestInfo.StackInfo"
      enclosing-type-id-ref="vim.vm.GuestInfo"
      version-id-ref="vim.version.version6"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Information about the Internet Protocol stack
  as configured in the guest operating system.]]>
      </description-html>
            <property name="dnsConfig" type-id-ref="vim.net.DnsConfigInfo"
      vmodl-name="dnsConfig"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Client DNS configuration. How DNS queries are resolved.]]>
      </description-html>
      </property>

            <property name="ipRouteConfig" type-id-ref="vim.net.IpRouteConfigInfo"
      vmodl-name="ipRouteConfig"
      is-optional="true"
      >
      <description-html>
         <![CDATA[IP route table configuration.]]>
      </description-html>
      </property>

            <property name="ipStackConfig" type-id-ref="vim.KeyValue"
      vmodl-name="ipStackConfig"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Report Kernel IP configuration settings.
 The key part contains a unique number in the report.
 The value part contains the 'key=value'
 as provided by the underlying provider.
 For example on Linux, BSD, the
 systcl -a output would be reported as:
   key='5', value='net.ipv4.tcp_keepalive_time = 7200']]>
      </description-html>
      </property>

            <property name="dhcpConfig" type-id-ref="vim.net.DhcpConfigInfo"
      vmodl-name="dhcpConfig"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Client side DHCP for a given interface.
 This reports only the system wide dhcp client settings.
 See NicInfo.IpConfig for per interface settings.
 For example on Linux, BSD systems:
 Using the file dhclient.conf output would be reported as:
   key='1', value='timeout 60;'
   key='2', value='reboot 10;']]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostUnresolvedVmfsVolumeResolveStatus"
      type-id="vim.host.UnresolvedVmfsVolume.ResolveStatus"
      vmodl-name="vim.host.UnresolvedVmfsVolume.ResolveStatus"
      enclosing-type-id-ref="vim.host.UnresolvedVmfsVolume"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Data object that describes the resolvability of a volume.]]>
      </description-html>
            <property name="resolvable" type-id-ref="BOOLEAN"
      vmodl-name="resolvable"
      >
      <description-html>
         <![CDATA[Can this volume be resolved?  There may be other reasons a volume cannot
  be resolved other than the fact that it is incomplete.  This boolean will
  authoritatively indicate if the server can resolve this volume.]]>
      </description-html>
      </property>

            <property name="incompleteExtents" type-id-ref="BOOLEAN"
      vmodl-name="incompleteExtents"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Is the list of extents for the volume a partial list?  A volume can only
  be resignatured if all extents composing that volume are available.
  Hence, a volume with a partial extent list cannot be resignatured.
  <p>
  In cases where this information is not known for a volume, this
  property will be unset.]]>
      </description-html>
      </property>

            <property name="multipleCopies" type-id-ref="BOOLEAN"
      vmodl-name="multipleCopies"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Are there multiple copies of extents for this volume?  If any extent of
  the volume has multiple copies then the extents to be resolved must be
  explicitly specified when resolving this volume.
  <p>
  In cases where this information is not known for a volume, this
  property will be unset.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualDeviceBackingInfo"
      type-id="vim.vm.device.VirtualDevice.BackingInfo"
      vmodl-name="vim.vm.device.VirtualDevice.BackingInfo"
      enclosing-type-id-ref="vim.vm.device.VirtualDevice"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[<code><a href="vim.vm.device.VirtualDevice.BackingInfo.html">VirtualDeviceBackingInfo</a></code> is a base data object type
  for information about the backing of a device in a virtual machine.
  This base type does not define any properties. It is used as a namespace
  for general-purpose subtypes. Specific devices are represented by subtypes
  which define properties for device-specific backing information.]]>
      </description-html>
   </data-object>
   <data-object name="FloppyImageFileQuery"
      type-id="vim.host.DatastoreBrowser.FloppyImageQuery"
      vmodl-name="vim.host.DatastoreBrowser.FloppyImageQuery"
      enclosing-type-id-ref="vim.host.DatastoreBrowser"
      version-id-ref="vim.version.version1"
      base-type-id="vim.host.DatastoreBrowser.Query"
      >
      <description-html>
         <![CDATA[This data object type describes the query specification for a floppy disk image.]]>
      </description-html>
   </data-object>
   <data-object name="HostNetStackInstance"
      type-id="vim.host.NetStackInstance"
      vmodl-name="vim.host.NetStackInstance"
      version-id-ref="vim.version.version9"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This class describes Network Stack Instance configuration]]>
      </description-html>
            <property name="key" type-id-ref="java.lang.String"
      vmodl-name="key"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Key of instance
   For instance which created by host, its value should be SystemStackKey.]]>
      </description-html>
      </property>

            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The display name]]>
      </description-html>
      </property>

            <property name="dnsConfig" type-id-ref="vim.host.DnsConfig"
      vmodl-name="dnsConfig"
      is-optional="true"
      >
      <description-html>
         <![CDATA[DNS configuration]]>
      </description-html>
      </property>

            <property name="ipRouteConfig" type-id-ref="vim.host.IpRouteConfig"
      vmodl-name="ipRouteConfig"
      is-optional="true"
      >
      <description-html>
         <![CDATA[IP Route configuration]]>
      </description-html>
      </property>

            <property name="requestedMaxNumberOfConnections" type-id-ref="INT"
      vmodl-name="requestedMaxNumberOfConnections"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The maximum number of socket connection that are requested on this instance]]>
      </description-html>
      </property>

            <property name="congestionControlAlgorithm" type-id-ref="java.lang.String"
      vmodl-name="congestionControlAlgorithm"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The TCP congest control algorithm used by this instance,
   See CongestionControlAlgorithmType for valid values.]]>
      </description-html>
      </property>

            <property name="ipV6Enabled" type-id-ref="BOOLEAN"
      vmodl-name="ipV6Enabled"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Enable or disable IPv6 protocol on this stack instance.
 This property is not supported currently.]]>
      </description-html>
      </property>

            <property name="routeTableConfig" type-id-ref="vim.host.IpRouteTableConfig"
      vmodl-name="routeTableConfig"
      is-optional="true"
      >
      </property>

      <nested-type-id-ref>vim.host.NetStackInstance.SystemStackKey</nested-type-id-ref>
      <nested-type-id-ref>vim.host.NetStackInstance.CongestionControlAlgorithmType</nested-type-id-ref>
   </data-object>
   <data-object name="TemplateConfigFileInfo"
      type-id="vim.host.DatastoreBrowser.TemplateVmConfigInfo"
      vmodl-name="vim.host.DatastoreBrowser.TemplateVmConfigInfo"
      enclosing-type-id-ref="vim.host.DatastoreBrowser"
      version-id-ref="vim.version.version1"
      base-type-id="vim.host.DatastoreBrowser.VmConfigInfo"
      >
      <description-html>
         <![CDATA[This data object type describes a template virtual machine configuration file.]]>
      </description-html>
   </data-object>
   <data-object name="CustomizationStartedEvent"
      type-id="vim.event.CustomizationStartedEvent"
      vmodl-name="vim.event.CustomizationStartedEvent"
      version-id-ref="vim.version.version2"
      base-type-id="vim.event.CustomizationEvent"
      >
      <description-html>
         <![CDATA[The customization sequence has started in the VM guest.]]>
      </description-html>
   </data-object>
   <data-object name="VmFailoverFailed"
      type-id="vim.event.VmFailoverFailed"
      vmodl-name="vim.event.VmFailoverFailed"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.VmEvent"
      >
      <description-html>
         <![CDATA[This event records when a virtual machine failover was unsuccessful.]]>
      </description-html>
            <property name="reason" type-id-ref="vmodl.LocalizedMethodFault"
      vmodl-name="reason"
      version-id-ref="vim.version.version6"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The reason for the failure]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualDevicePciBusSlotInfo"
      type-id="vim.vm.device.VirtualDevice.PciBusSlotInfo"
      vmodl-name="vim.vm.device.VirtualDevice.PciBusSlotInfo"
      enclosing-type-id-ref="vim.vm.device.VirtualDevice"
      version-id-ref="vim.version.version8"
      base-type-id="vim.vm.device.VirtualDevice.BusSlotInfo"
      >
      <description-html>
         <![CDATA[The <code><a href="vim.vm.device.VirtualDevice.PciBusSlotInfo.html">VirtualDevicePciBusSlotInfo</a></code> data object type
  defines information about a pci bus slot of pci device in a virtual machine.]]>
      </description-html>
            <property name="pciSlotNumber" type-id-ref="INT"
      vmodl-name="pciSlotNumber"
      >
      <description-html>
         <![CDATA[The pci slot number of the virtual device.
  <p>
  The pci slot number assignment should generally be left to the system.
  If assigned  a value, and the value is invalid or duplicated, it will
  automatically be reassigned. This will not cause an error.
  <p>
  Generally, the PCI slot numbers should never be specified in an
  Reconfigure operation, and only in a CreateVM operation if i) they
  are specified for all devices, and ii) the  numbers have been
  determined by looking at an existing VM configuration of similar
  hardware version. In other words, when the virtual hardware configuration
  is duplicated.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HbrManagerReplicationVmInfo"
      type-id="vim.HbrManager.ReplicationVmInfo"
      vmodl-name="vim.HbrManager.ReplicationVmInfo"
      enclosing-type-id-ref="vim.HbrManager"
      version-id-ref="vim.version.version7"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object represents the essential information about the
 state of a given replicated <a href="vim.VirtualMachine.html">VirtualMachine</a>.]]>
      </description-html>
            <property name="state" type-id-ref="java.lang.String"
      vmodl-name="state"
      >
      <description-html>
         <![CDATA[A string representing the current State of the virtual machine.]]>
      </description-html>
      </property>

            <property name="progressInfo" type-id-ref="vim.HbrManager.ReplicationVmInfo.ProgressInfo"
      vmodl-name="progressInfo"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Progress stats for the current operation. Never present if the state is
 not "syncing" or "active". If not present while in one of these states,
 the host is still gathering initial operation statistics (progress can
 be assumed to be 0).]]>
      </description-html>
      </property>

            <property name="imageId" type-id-ref="java.lang.String"
      vmodl-name="imageId"
      is-optional="true"
      >
      <description-html>
         <![CDATA[An optional imageId that identifies the instance being created,
 this is the imagId string that is passed to
 <a href="vim.HbrManager.html#createInstance">HbrCreateInstance_Task</a> or
 <a href="vim.HbrManager.html#startOfflineInstance">HbrStartOfflineInstance_Task</a>]]>
      </description-html>
      </property>

            <property name="lastError" type-id-ref="vmodl.LocalizedMethodFault"
      vmodl-name="lastError"
      is-optional="true"
      >
      <description-html>
         <![CDATA[A MethodFault representing the last replication specific error
 that the <a href="vim.VirtualMachine.html">VirtualMachine</a> encountered during a create
 instance operation. The successful creation of an instance
 will clear any error.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.HbrManager.ReplicationVmInfo.State</nested-type-id-ref>
      <nested-type-id-ref>vim.HbrManager.ReplicationVmInfo.ProgressInfo</nested-type-id-ref>
   </data-object>
   <data-object name="VirtualMachineScsiPassthroughInfo"
      type-id="vim.vm.ScsiPassthroughInfo"
      vmodl-name="vim.vm.ScsiPassthroughInfo"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.TargetInfo"
      >
      <description-html>
         <![CDATA[Description of a generic SCSI device, including information about
 the device ID.]]>
      </description-html>
            <property name="scsiClass" type-id-ref="java.lang.String"
      vmodl-name="scsiClass"
      >
      <description-html>
         <![CDATA[The class of the generic SCSI device.]]>
      </description-html>
      </property>

            <property name="vendor" type-id-ref="java.lang.String"
      vmodl-name="vendor"
      >
      <description-html>
         <![CDATA[The vendor name.]]>
      </description-html>
      </property>

            <property name="physicalUnitNumber" type-id-ref="INT"
      vmodl-name="physicalUnitNumber"
      >
      <description-html>
         <![CDATA[Unit number of the generic device on the physical host.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.vm.ScsiPassthroughInfo.ScsiClass</nested-type-id-ref>
   </data-object>
   <data-object name="LicenseNonComplianceEvent"
      type-id="vim.event.LicenseNonComplianceEvent"
      vmodl-name="vim.event.LicenseNonComplianceEvent"
      version-id-ref="vim.version.version5"
      base-type-id="vim.event.LicenseEvent"
      >
      <description-html>
         <![CDATA[This event records that the inventory is not license compliant.]]>
      </description-html>
            <property name="url" type-id-ref="java.lang.String"
      vmodl-name="url"
      >
      <description-html>
         <![CDATA[Gives the url at which more details about non-compliance
 can be found.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostStorageSystemDiskLocatorLedResult"
      type-id="vim.host.StorageSystem.DiskLocatorLedResult"
      vmodl-name="vim.host.StorageSystem.DiskLocatorLedResult"
      enclosing-type-id-ref="vim.host.StorageSystem"
      version-id-ref="vim.version.version10"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Contains the result of turn Disk Locator Led On/Off request. Used as return value
 by <a href="vim.host.StorageSystem.html#turnDiskLocatorLedOn">TurnDiskLocatorLedOn_Task</a> and
 <a href="vim.host.StorageSystem.html#turnDiskLocatorLedOff">TurnDiskLocatorLedOff_Task</a>.]]>
      </description-html>
            <property name="key" type-id-ref="java.lang.String"
      vmodl-name="key"
      >
      <description-html>
         <![CDATA[UUID of LUN that has failed to turn on/off disk locator LED.]]>
      </description-html>
      </property>

            <property name="fault" type-id-ref="vmodl.LocalizedMethodFault"
      vmodl-name="fault"
      >
      <description-html>
         <![CDATA[The reason why the operation did not succeed.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostOvercommittedEvent"
      type-id="vim.event.HostOvercommittedEvent"
      vmodl-name="vim.event.HostOvercommittedEvent"
      version-id-ref="vim.version.version5"
      base-type-id="vim.event.ClusterOvercommittedEvent"
      >
      <description-html>
         <![CDATA[This event records when a host's capacity cannot satisfy resource
 configuration constraints.]]>
      </description-html>
   </data-object>
   <data-object name="ProfilePolicy"
      type-id="vim.profile.Policy"
      vmodl-name="vim.profile.Policy"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The <a href="vim.profile.Policy.html">ProfilePolicy</a> data object represents a policy.]]>
      </description-html>
            <property name="id" type-id-ref="java.lang.String"
      vmodl-name="id"
      >
      <description-html>
         <![CDATA[Identifier for the policy.]]>
      </description-html>
      </property>

            <property name="policyOption" type-id-ref="vim.profile.PolicyOption"
      vmodl-name="policyOption"
      >
      <description-html>
         <![CDATA[Configuration parameters.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ClusterDasFdmHostState"
      type-id="vim.cluster.DasFdmHostState"
      vmodl-name="vim.cluster.DasFdmHostState"
      version-id-ref="vim.version.version7"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The <a href="vim.cluster.DasFdmHostState.html">ClusterDasFdmHostState</a> data object
  describes the availability state of each active host in a
  vSphere HA enabled cluster.
  <p>
  In a vSphere HA cluster, the active hosts form a fault domain.
  A host is inactive if it is in standby or maintenance mode, or
  it has been disconnected from vCenter Server. A vSphere HA
  agent, called the Fault Domain Manager (FDM), runs on each host in the
  fault domain.
  <p>
  One FDM serves as the master and the remaining FDMs as its slaves.
  The master is responsible for monitoring the availability of the hosts
  and VMs in the cluster, and restarting any VMs that fail due to a
  host failure or non-user-initiated power offs. The master is also
  responsible for reporting fault-domain state to vCenter Server.
  <p>
  The master FDM is determined through election by the FDMs that are
  alive at the time. An election occurs in the following circumstances:
  <ul>
  <li> When the vSphere HA feature is enabled for the cluster.
  <li> When the master's host fails.
  <li> When the management network is partitioned. In a network partition
  there will be a master for each partition. However, only one master
  will be responsible for a given VM. When the partition is
  resolved, all but one of the masters will abdicate.
  <li> After a host in a vSphere HA cluster powers back up following a failure
  that caused all hosts in the cluster to power off.
  </ul>
  <p>
  The slaves are responsible for reporting state updates to the master and
  restarting VMs as required. All FDMs provide the VM/Application Health
  Monitoring Service.]]>
      </description-html>
            <property name="state" type-id-ref="java.lang.String"
      vmodl-name="state"
      >
      <description-html>
         <![CDATA[The Availability State of a host based on information
  reported by the entity given by the
  <a href="vim.cluster.DasFdmHostState.html#stateReporter">stateReporter</a> property. See
  <a href="vim.cluster.DasFdmAvailabilityState.html">ClusterDasFdmAvailabilityState</a> for the set of
  states.]]>
      </description-html>
      </property>

            <property name="stateReporter" type-id-ref="vim.HostSystem"
      vmodl-name="stateReporter"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The entity reporting the state of the host. If the reporter is a host,
  the property reports which host, whereas if the reporter is vCenter Server,
  the property is unset.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualCdrom"
      type-id="vim.vm.device.VirtualCdrom"
      vmodl-name="vim.vm.device.VirtualCdrom"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.device.VirtualDevice"
      >
      <description-html>
         <![CDATA[The VirtualCdrom data object type describes the configuration of a CD-ROM device
  in a virtual machine.]]>
      </description-html>
      <nested-type-id-ref>vim.vm.device.VirtualCdrom.IsoBackingInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.device.VirtualCdrom.PassthroughBackingInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.device.VirtualCdrom.RemotePassthroughBackingInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.device.VirtualCdrom.AtapiBackingInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.device.VirtualCdrom.RemoteAtapiBackingInfo</nested-type-id-ref>
   </data-object>
   <data-object name="NetworkRollbackEvent"
      type-id="vim.event.NetworkRollbackEvent"
      vmodl-name="vim.event.NetworkRollbackEvent"
      version-id-ref="vim.version.version8"
      base-type-id="vim.event.Event"
      >
      <description-html>
         <![CDATA[This event records when networking configuration on the host
  is rolled back as it disconnects the host from vCenter server.]]>
      </description-html>
            <property name="methodName" type-id-ref="java.lang.String"
      vmodl-name="methodName"
      >
      <description-html>
         <![CDATA[Method name which caused the disconnect]]>
      </description-html>
      </property>

            <property name="transactionId" type-id-ref="java.lang.String"
      vmodl-name="transactionId"
      >
      <description-html>
         <![CDATA[Transaction ID for the method call that caused the disconnect]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostVfatVolume"
      type-id="vim.host.VfatVolume"
      vmodl-name="vim.host.VfatVolume"
      version-id-ref="vim.version.version7"
      base-type-id="vim.host.FileSystemVolume"
      >
      <description-html>
         <![CDATA[VFAT file system volume.]]>
      </description-html>
   </data-object>
   <data-object name="PhysicalNicIpHint"
      type-id="vim.host.PhysicalNic.NetworkHint.IpNetwork"
      vmodl-name="vim.host.PhysicalNic.NetworkHint.IpNetwork"
      enclosing-type-id-ref="vim.host.PhysicalNic.NetworkHint"
      version-id-ref="vim.version.version1"
      base-type-id="vim.host.PhysicalNic.NetworkHint.HintElement"
      >
      <description-html>
         <![CDATA[This data object type describes a network in network hint where
  the network is specified using IP addresses, for example,
  10.27.49.1-10.27.49.254]]>
      </description-html>
            <property name="ipSubnet" type-id-ref="java.lang.String"
      vmodl-name="ipSubnet"
      >
      <description-html>
         <![CDATA[The network IP addresses.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostVirtualSwitchBridge"
      type-id="vim.host.VirtualSwitch.Bridge"
      vmodl-name="vim.host.VirtualSwitch.Bridge"
      enclosing-type-id-ref="vim.host.VirtualSwitch"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[A bridge connects a virtual switch to a physical network adapter.
  There are multiple types of bridges.]]>
      </description-html>
   </data-object>
   <data-object name="HostFirewallConfigRuleSetConfig"
      type-id="vim.host.FirewallConfig.RuleSetConfig"
      vmodl-name="vim.host.FirewallConfig.RuleSetConfig"
      enclosing-type-id-ref="vim.host.FirewallConfig"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
            <property name="rulesetId" type-id-ref="java.lang.String"
      vmodl-name="rulesetId"
      >
      <description-html>
         <![CDATA[Id of the ruleset.]]>
      </description-html>
      </property>

            <property name="enabled" type-id-ref="BOOLEAN"
      vmodl-name="enabled"
      >
      <description-html>
         <![CDATA[Flag indicating if the specified ruleset should be enabled.]]>
      </description-html>
      </property>

            <property name="allowedHosts" type-id-ref="vim.host.Ruleset.IpList"
      vmodl-name="allowedHosts"
      version-id-ref="vim.version.version7"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The list of allowed ip addresses]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VmGuestOSCrashedEvent"
      type-id="vim.event.VmGuestOSCrashedEvent"
      vmodl-name="vim.event.VmGuestOSCrashedEvent"
      version-id-ref="vim.version.version10"
      base-type-id="vim.event.VmEvent"
      >
      <description-html>
         <![CDATA[This event notifies that a guest OS has crashed]]>
      </description-html>
   </data-object>
   <data-object name="ClusterVmOrchestrationInfo"
      type-id="vim.cluster.VmOrchestrationInfo"
      vmodl-name="vim.cluster.VmOrchestrationInfo"
      version-id-ref="vim.version.version11"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The <a href="vim.cluster.VmOrchestrationInfo.html">ClusterVmOrchestrationInfo</a> data object contains the orchestration
  configuration for a single virtual machine. This makes it possible to
  override the defaut behavior for an individual virtual machine.]]>
      </description-html>
            <property name="vm" type-id-ref="vim.VirtualMachine"
      vmodl-name="vm"
      >
      <description-html>
         <![CDATA[Reference to the VM that the ready state is applied to.]]>
      </description-html>
      </property>

            <property name="vmReadiness" type-id-ref="vim.cluster.VmReadiness"
      vmodl-name="vmReadiness"
      >
      <description-html>
         <![CDATA[Readiness policy that apply to this virtual machine.
  <p>
  Values specified in this object override the cluster-wide
  defaults for virtual machines.
  <a href="vim.cluster.OrchestrationInfo.html#defaultVmReadiness">defaultVmReadiness</a>]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="EventEx"
      type-id="vim.event.EventEx"
      vmodl-name="vim.event.EventEx"
      version-id-ref="vim.version.version5"
      base-type-id="vim.event.Event"
      >
      <description-html>
         <![CDATA[EventEx is a dynamically typed Event class, whose type is indicated by its
 eventTypeId property.
 <p>
 A collection of eventTypeIds is registered by Extensions, which can now
 pass in optional type information for each eventTypeId which indicates the
 applicable argument names and types, among other properties.
 <p>
 EventEx allows event arguments of any type, though today, the system
 only supports "string" and "moid" (a string which can be interpreted as an
 object ID in the system) as argument types.  In the future, the system
 may optionally strongly check the types of the arguments in the event
 against the declared type information, based on how the event type is
 declared.
 <p>
 EventEx also allows arbitrary "event object"s - the object which the
 event refers to. You can put in any object identifier as the objectId,
 but objectType should be filled in only if the object is actually present
 in the VC Server's ManagedEntity inventory.]]>
      </description-html>
            <property name="eventTypeId" type-id-ref="java.lang.String"
      vmodl-name="eventTypeId"
      >
      <description-html>
         <![CDATA[The type of the event.]]>
      </description-html>
      </property>

            <property name="severity" type-id-ref="java.lang.String"
      vmodl-name="severity"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The severity level of the message: null=>info.<br>See <a href="vim.event.Event.EventSeverity.html">EventEventSeverity</a><br>]]>
      </description-html>
      </property>

            <property name="message" type-id-ref="java.lang.String"
      vmodl-name="message"
      is-optional="true"
      >
      <description-html>
         <![CDATA[An arbitrary message string, not localized.]]>
      </description-html>
      </property>

            <property name="arguments" type-id-ref="vmodl.KeyAnyValue"
      vmodl-name="arguments"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The event arguments associated with the event]]>
      </description-html>
      </property>

            <property name="objectId" type-id-ref="java.lang.String"
      vmodl-name="objectId"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The ID of the object (VM, Host, Folder..) which the event pertains to.
 Federated or local inventory path.]]>
      </description-html>
      </property>

            <property name="objectType" type-id-ref="vmodl.TypeName"
      vmodl-name="objectType"
      is-optional="true"
      >
      <description-html>
         <![CDATA[the type of the object, if known to the VirtualCenter inventory]]>
      </description-html>
      </property>

            <property name="objectName" type-id-ref="java.lang.String"
      vmodl-name="objectName"
      version-id-ref="vim.version.version6"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The name of the object]]>
      </description-html>
      </property>

            <property name="fault" type-id-ref="vmodl.LocalizedMethodFault"
      vmodl-name="fault"
      version-id-ref="vim.version.version6"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The fault that triggered the event, if any]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualVmxnet2"
      type-id="vim.vm.device.VirtualVmxnet2"
      vmodl-name="vim.vm.device.VirtualVmxnet2"
      version-id-ref="vim.version.version2"
      base-type-id="vim.vm.device.VirtualVmxnet"
      >
      <description-html>
         <![CDATA[The VirtualVmxnet2 data object type represents an instance
  of the Vmxnet2 virtual Ethernet adapter attached to a virtual machine.]]>
      </description-html>
   </data-object>
   <data-object name="ClusterFailoverLevelAdmissionControlPolicy"
      type-id="vim.cluster.FailoverLevelAdmissionControlPolicy"
      vmodl-name="vim.cluster.FailoverLevelAdmissionControlPolicy"
      version-id-ref="vim.version.version5"
      base-type-id="vim.cluster.DasAdmissionControlPolicy"
      >
      <description-html>
         <![CDATA[The <a href="vim.cluster.FailoverLevelAdmissionControlPolicy.html">ClusterFailoverLevelAdmissionControlPolicy</a>
 defines the number of host failures that should be tolerated and still
 guarantee enough unfragmented resources to failover all powered on virtual
 machines on those failed hosts.
 <p>
 When you use the failover level policy, vSphere HA partitions resources
 into slots. A slot represents the minimum CPU and memory resources
 that are required to support any powered-on virtual machine in the cluster.
 <p>
 With the failover level policy in place, HA uses the following slot
 calculations to control virtual machine migration within the cluster:
 <ol>
 <li>Calculate the slot size from CPU and memory reservations.
     The CPU value is the largest CPU reservation for all powered-on
     virtual machines in the cluster. The memory value is the largest
     memory reservation (plus memory overhead).
     <p>
     If your cluster contains any virtual machines that have much larger
     reservations than the others, they will distort slot size calculation.
     To avoid this, you can specify an upper bound for slot sizes;
     use the configuration editor in the vSphere Client to set the
     das.slotCpuInMHz and das.slotMemInMB attributes. When you use these
     attributes, there is a risk that resource fragmentation will cause
     virtual machines with resource requirements larger than the slot size
     to be assigned multiple slots. In a cluster that is close to capacity,
     there might be enough slots in aggregate for HA to successfully
     failover a virtual machine. However, if those slots are located
     on multiple hosts, a virtual machine assigned multiple slots cannot
     use them because a virtual machine can run on only a single host
     at a time.</li>
 <li>Determine how many slots each host in the cluster can hold.
     HA uses the CPU and memory resources in a host's root resource pool
     to determine host slot capacity, not the total physical resources
     of the host. Resources used for virtualization purposes are not
     included. HA uses connected hosts that are not in maintenance mode
     and that do not have any HA errors.
     <p>
     The CPU slot resource is the host CPU resource amount divided
     by the CPU component of the slot size; the result is rounded down.
     HA makes the same calculation for host memory resource amount.
     HA compares the results; the lower of the two numbers is the
     host slot capacity.</li>
 <li>Determine the current failover capacity of the cluster. This is the
     number of hosts (starting from the largest) that can fail and still
     leave enough slots to satisfy all of the powered-on virtual machines.
     <p></p></li>
 <li>Compare the current failover capacity to the configured
     <a href="vim.cluster.FailoverLevelAdmissionControlPolicy.html#failoverLevel">failoverLevel</a>.
     If the current failover capacity is less than the configured
     failover level, HA disallows the operation.</li>
 </ol>]]>
      </description-html>
            <property name="failoverLevel" type-id-ref="INT"
      vmodl-name="failoverLevel"
      >
      <description-html>
         <![CDATA[Number of host failures that should be tolerated, still guaranteeing
 sufficient resources to restart virtual machines on available hosts.]]>
      </description-html>
      </property>

            <property name="slotPolicy" type-id-ref="vim.cluster.SlotPolicy"
      vmodl-name="slotPolicy"
      version-id-ref="vim.version.version8"
      is-optional="true"
      >
      <description-html>
         <![CDATA[A policy for how to compute the slot size. If left unset, the slot is
 computed using the maximum reservations and memory overhead of any
 powered on virtual machine in the cluster.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostDasOkEvent"
      type-id="vim.event.HostDasOkEvent"
      vmodl-name="vim.event.HostDasOkEvent"
      version-id-ref="vim.version.version1"
      is-deprecated="true"
      base-type-id="vim.event.HostEvent"
      >
      <description-html>
         <![CDATA[This event records when HA on a host returns to normal after an error.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 5.0, the event is no longer relevant.]]>
      </deprecated-html>
   </data-object>
   <data-object name="IscsiMigrationDependency"
      type-id="vim.host.IscsiManager.IscsiMigrationDependency"
      vmodl-name="vim.host.IscsiManager.IscsiMigrationDependency"
      enclosing-type-id-ref="vim.host.IscsiManager"
      version-id-ref="vim.version.version7"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Provides migration dependency information for a given Physical NIC.

  Lists all the iSCSI and networking resources impacted if
  migration of a given Physical NIC is to take place.]]>
      </description-html>
            <property name="migrationAllowed" type-id-ref="BOOLEAN"
      vmodl-name="migrationAllowed"
      >
      <description-html>
         <![CDATA[Indicates whether migration can be safely performed

 If migrationAllowed is False, the disallowReason will
 contain the specific condition that makes the migration
 attempt unsafe.]]>
      </description-html>
      </property>

            <property name="disallowReason" type-id-ref="vim.host.IscsiManager.IscsiStatus"
      vmodl-name="disallowReason"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Reasons for not allowing migration.

 Unset if migrationAllowed is true.]]>
      </description-html>
      </property>

            <property name="dependency" type-id-ref="vim.host.IscsiManager.IscsiDependencyEntity"
      vmodl-name="dependency"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Details of all the resources affected by migration.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualFloppy"
      type-id="vim.vm.device.VirtualFloppy"
      vmodl-name="vim.vm.device.VirtualFloppy"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.device.VirtualDevice"
      >
      <description-html>
         <![CDATA[The VirtualFloppy data object type contains information about a floppy drive
  in a virtual machine.]]>
      </description-html>
      <nested-type-id-ref>vim.vm.device.VirtualFloppy.ImageBackingInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.device.VirtualFloppy.DeviceBackingInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.device.VirtualFloppy.RemoteDeviceBackingInfo</nested-type-id-ref>
   </data-object>
   <data-object name="VirtualDeviceDeviceBackingInfo"
      type-id="vim.vm.device.VirtualDevice.DeviceBackingInfo"
      vmodl-name="vim.vm.device.VirtualDevice.DeviceBackingInfo"
      enclosing-type-id-ref="vim.vm.device.VirtualDevice"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.device.VirtualDevice.BackingInfo"
      >
      <description-html>
         <![CDATA[The <code><a href="vim.vm.device.VirtualDevice.DeviceBackingInfo.html">VirtualDeviceDeviceBackingInfo</a></code> data object type
  defines information about a host device or resource that backs a device
  in a virtual machine.]]>
      </description-html>
            <property name="deviceName" type-id-ref="java.lang.String"
      vmodl-name="deviceName"
      >
      <description-html>
         <![CDATA[The name of the device on the host system.]]>
      </description-html>
      </property>

            <property name="useAutoDetect" type-id-ref="BOOLEAN"
      vmodl-name="useAutoDetect"
      version-id-ref="vim.version.version2"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates whether the device should be auto detected
 instead of directly specified. If this value is set to TRUE,
 deviceName is ignored.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostVsanInternalSystemDeleteVsanObjectsResult"
      type-id="vim.host.VsanInternalSystem.DeleteVsanObjectsResult"
      vmodl-name="vim.host.VsanInternalSystem.DeleteVsanObjectsResult"
      enclosing-type-id-ref="vim.host.VsanInternalSystem"
      version-id-ref="vim.version.version9"
      internal-before-version-id-ref="vim.version.version10"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Result of DeleteVsanObjects.]]>
      </description-html>
            <property name="uuid" type-id-ref="java.lang.String"
      vmodl-name="uuid"
      >
      <description-html>
         <![CDATA[UUID of the VSAN object.]]>
      </description-html>
      </property>

            <property name="success" type-id-ref="BOOLEAN"
      vmodl-name="success"
      >
      <description-html>
         <![CDATA[Indicates success or failure of object deletion.]]>
      </description-html>
      </property>

            <property name="failureReason" type-id-ref="vmodl.LocalizableMessage"
      vmodl-name="failureReason"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of LocalizableMessages with the failure vobs.
 This is unset if delete is successful.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VMwareDVSVlanHealthCheckResult"
      type-id="vim.dvs.VmwareDistributedVirtualSwitch.VlanHealthCheckResult"
      vmodl-name="vim.dvs.VmwareDistributedVirtualSwitch.VlanHealthCheckResult"
      enclosing-type-id-ref="vim.dvs.VmwareDistributedVirtualSwitch"
      version-id-ref="vim.version.version8"
      base-type-id="vim.dvs.HostMember.UplinkHealthCheckResult"
      >
      <description-html>
         <![CDATA[This class defines Vlan health check result of an uplink port
  in the VMware vSphered Distributed Switch.]]>
      </description-html>
            <property name="trunkedVlan" type-id-ref="vim.NumericRange"
      vmodl-name="trunkedVlan"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The vlans which are trunked by the physical switch connected to the uplink port.
  If the vlan is not a range, but a single Id,
  both start and end have the same value with the single vlan Id.]]>
      </description-html>
      </property>

            <property name="untrunkedVlan" type-id-ref="vim.NumericRange"
      vmodl-name="untrunkedVlan"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The vlans which are not trunked by the physical switch connected to the uplink port.
  If the vlan is not a range, but a single Id,
  both start and end have the same value with the single vlan Id.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VmDasUpdateOkEvent"
      type-id="vim.event.VmDasUpdateOkEvent"
      vmodl-name="vim.event.VmDasUpdateOkEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.VmEvent"
      >
      <description-html>
         <![CDATA[This event records that HA agents have been updated with the current
 state of the virtual machine.]]>
      </description-html>
   </data-object>
   <data-object name="HostPlugStoreTopologyTarget"
      type-id="vim.host.PlugStoreTopology.Target"
      vmodl-name="vim.host.PlugStoreTopology.Target"
      enclosing-type-id-ref="vim.host.PlugStoreTopology"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object represents target information.]]>
      </description-html>
            <property name="key" type-id-ref="java.lang.String"
      vmodl-name="key"
      >
      <description-html>
         <![CDATA[The identifier of the target.  This will be a string representing the
  transport information of the target.]]>
      </description-html>
      </property>

            <property name="transport" type-id-ref="vim.host.TargetTransport"
      vmodl-name="transport"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Detailed, transport-specific information about the target of a path.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostCnxFailedEvent"
      type-id="vim.event.HostCnxFailedEvent"
      vmodl-name="vim.event.HostCnxFailedEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.HostEvent"
      >
      <description-html>
         <![CDATA[This event records a failure to connect to a host
  due to an unspecified condition.]]>
      </description-html>
   </data-object>
   <data-object name="CustomizationFixedIpV6"
      type-id="vim.vm.customization.FixedIpV6"
      vmodl-name="vim.vm.customization.FixedIpV6"
      version-id-ref="vim.version.version5"
      base-type-id="vim.vm.customization.IpV6Generator"
      >
      <description-html>
         <![CDATA[Use a static ipv6 address for the virtual network adapter]]>
      </description-html>
            <property name="ipAddress" type-id-ref="java.lang.String"
      vmodl-name="ipAddress"
      >
      </property>

            <property name="subnetMask" type-id-ref="INT"
      vmodl-name="subnetMask"
      >
      </property>

   </data-object>
   <data-object name="CustomizationSpecItem"
      type-id="vim.CustomizationSpecItem"
      vmodl-name="vim.CustomizationSpecItem"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Specification information and the Specification object.]]>
      </description-html>
            <property name="info" type-id-ref="vim.CustomizationSpecInfo"
      vmodl-name="info"
      >
      <description-html>
         <![CDATA[Information about the specification - name, description, and so on.]]>
      </description-html>
      </property>

            <property name="spec" type-id-ref="vim.vm.customization.Specification"
      vmodl-name="spec"
      >
      <description-html>
         <![CDATA[The customization specification.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="GuestNicInfo"
      type-id="vim.vm.GuestInfo.NicInfo"
      vmodl-name="vim.vm.GuestInfo.NicInfo"
      enclosing-type-id-ref="vim.vm.GuestInfo"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Information about each virtual network adapter
  configured in the guest operating system.]]>
      </description-html>
            <property name="network" type-id-ref="java.lang.String"
      vmodl-name="network"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Name of the virtual switch portgroup or dvPort connected to this adapter.]]>
      </description-html>
      </property>

            <property name="ipAddress" type-id-ref="java.lang.String"
      vmodl-name="ipAddress"
      is-deprecated="true"
      is-array="true"
      is-optional="true"
      >
      <deprecated-html>
         <![CDATA[as of vSphere API 5.0, use ipConfig property.]]>
      </deprecated-html>
      </property>

            <property name="macAddress" type-id-ref="java.lang.String"
      vmodl-name="macAddress"
      is-optional="true"
      >
      <description-html>
         <![CDATA[MAC address of the adapter.]]>
      </description-html>
      </property>

            <property name="connected" type-id-ref="BOOLEAN"
      vmodl-name="connected"
      >
      <description-html>
         <![CDATA[Flag indicating whether or not the virtual device is connected.]]>
      </description-html>
      </property>

            <property name="deviceConfigId" type-id-ref="INT"
      vmodl-name="deviceConfigId"
      >
      <description-html>
         <![CDATA[Link to the corresponding virtual device.]]>
      </description-html>
      </property>

            <property name="dnsConfig" type-id-ref="vim.net.DnsConfigInfo"
      vmodl-name="dnsConfig"
      version-id-ref="vim.version.version6"
      is-optional="true"
      >
      <description-html>
         <![CDATA[DNS configuration of the adapter.
 This property is set only when Guest OS supports it.
 See StackInfo dnsConfig for system wide
 settings.]]>
      </description-html>
      </property>

            <property name="ipConfig" type-id-ref="vim.net.IpConfigInfo"
      vmodl-name="ipConfig"
      version-id-ref="vim.version.version6"
      is-optional="true"
      >
      <description-html>
         <![CDATA[IP configuration settings of the adapter
 See StackInfo ipStackConfig for system wide
 settings.]]>
      </description-html>
      </property>

            <property name="netBIOSConfig" type-id-ref="vim.net.NetBIOSConfigInfo"
      vmodl-name="netBIOSConfig"
      version-id-ref="vim.version.version6"
      is-optional="true"
      >
      <description-html>
         <![CDATA[NetBIOS configuration of the adapter]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DvsIpPortRange"
      type-id="vim.dvs.TrafficRule.IpPortRange"
      vmodl-name="vim.dvs.TrafficRule.IpPortRange"
      enclosing-type-id-ref="vim.dvs.TrafficRule"
      version-id-ref="vim.version.version9"
      base-type-id="vim.dvs.TrafficRule.IpPort"
      >
      <description-html>
         <![CDATA[This class defines a range of Ports.]]>
      </description-html>
            <property name="startPortNumber" type-id-ref="INT"
      vmodl-name="startPortNumber"
      >
      <description-html>
         <![CDATA[Starting port number of the ports range.]]>
      </description-html>
      </property>

            <property name="endPortNumber" type-id-ref="INT"
      vmodl-name="endPortNumber"
      >
      <description-html>
         <![CDATA[Ending port number of the ports range.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HttpNfcLeaseManifestEntry"
      type-id="vim.HttpNfcLease.ManifestEntry"
      vmodl-name="vim.HttpNfcLease.ManifestEntry"
      enclosing-type-id-ref="vim.HttpNfcLease"
      version-id-ref="vim.version.version6"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Provides a manifest for downloaded (exported) files and disks.]]>
      </description-html>
            <property name="key" type-id-ref="java.lang.String"
      vmodl-name="key"
      >
      <description-html>
         <![CDATA[Key used to match this entry with the corresponding DeviceUrl
 entry in <a href="vim.HttpNfcLease.html#info">Info</a>.]]>
      </description-html>
      </property>

            <property name="sha1" type-id-ref="java.lang.String"
      vmodl-name="sha1"
      >
      <description-html>
         <![CDATA[SHA-1 checksum of the data stream sent from the server. This can be used
 to verify that the bytes received by the client match those sent by the
 HttpNfc server.]]>
      </description-html>
      </property>

            <property name="checksum" type-id-ref="java.lang.String"
      vmodl-name="checksum"
      version-id-ref="vim.version.version12"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Checksum of the data stream sent/recieved by host.
 See ChecksumType for used algoritm.]]>
      </description-html>
      </property>

            <property name="checksumType" type-id-ref="java.lang.String"
      vmodl-name="checksumType"
      version-id-ref="vim.version.version12"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Algorithm used to produce checksum in respective property.
 See ChecksumType for supported algorithms.]]>
      </description-html>
      </property>

            <property name="size" type-id-ref="LONG"
      vmodl-name="size"
      >
      <description-html>
         <![CDATA[Size of the downloaded file.]]>
      </description-html>
      </property>

            <property name="disk" type-id-ref="BOOLEAN"
      vmodl-name="disk"
      >
      <description-html>
         <![CDATA[True if the downloaded file is a virtual disk backing.]]>
      </description-html>
      </property>

            <property name="capacity" type-id-ref="LONG"
      vmodl-name="capacity"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The capacity of the disk, if the file is a virtual disk backing.]]>
      </description-html>
      </property>

            <property name="populatedSize" type-id-ref="LONG"
      vmodl-name="populatedSize"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The populated size of the disk, if the file is a virtual disk backing.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.HttpNfcLease.ManifestEntry.ChecksumType</nested-type-id-ref>
   </data-object>
   <data-object name="OvfFile"
      type-id="vim.OvfManager.OvfFile"
      vmodl-name="vim.OvfManager.OvfFile"
      enclosing-type-id-ref="vim.OvfManager"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Represents a file that the caller has downloaded and stored somewhere appropriate.
 <p>
 An instance of this class is used to tell OvfManager about the choices the caller
 made about a file. This information is needed when the OVF descriptor is generated
 with createDescriptor.]]>
      </description-html>
            <property name="deviceId" type-id-ref="java.lang.String"
      vmodl-name="deviceId"
      >
      <description-html>
         <![CDATA[The ID of the device backed by this file. This ID uniquely identifies the
 device within the entity hierarchy.
 <p>
 The caller will have received this along with the URL needed to download the
 file (this is handled by another service interface).]]>
      </description-html>
      </property>

            <property name="path" type-id-ref="java.lang.String"
      vmodl-name="path"
      >
      <description-html>
         <![CDATA[The path chosen by the caller for this file. This path becomes the value of the
 "href" attribute of the corresponding "File" element in the OVF descriptor.
 <p>
 This path must be relative to the path chosen for the OVF descriptor. This
 implies that the caller must decide in advance on the path to which it will
 write the OVF descriptor, once it is returned.
 <p>
 The folder separator must be "/" (forward slash).
 <p>
 The path must not begin with a slash - ie. it must not be an absolute path.]]>
      </description-html>
      </property>

            <property name="compressionMethod" type-id-ref="java.lang.String"
      vmodl-name="compressionMethod"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The compression method the caller chose to employ for this file.]]>
      </description-html>
      </property>

            <property name="chunkSize" type-id-ref="LONG"
      vmodl-name="chunkSize"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The chunksize chosen by the caller.
 <p>
 When using chunking, the caller must adhere to the method described in the OVF
 specification.]]>
      </description-html>
      </property>

            <property name="size" type-id-ref="LONG"
      vmodl-name="size"
      >
      <description-html>
         <![CDATA[The file size, as observed by the caller during download.]]>
      </description-html>
      </property>

            <property name="capacity" type-id-ref="LONG"
      vmodl-name="capacity"
      version-id-ref="vim.version.version6"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The capacity of the disk backed by this file. This should only be set if the
 device backed by this file is a disk. This value will be written in the
 "capacity" attribute of the corresponding "Disk" element in the OVF descriptor.
 <p>
 Note that the "capacity" attribute is normally set to the capacity of the
 corresponding <a href="vim.vm.device.VirtualDisk.html">VirtualDisk</a>. Setting this variable
 overrides the capacity from the VirtualDisk.]]>
      </description-html>
      </property>

            <property name="populatedSize" type-id-ref="LONG"
      vmodl-name="populatedSize"
      version-id-ref="vim.version.version6"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The populated size of the disk backed by this file. This should only be set if
 the device backed by this file is a disk. This value will be written in the
 "populatedSize" attribute of the corresponding "Disk" element in the OVF
 descriptor.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="RollbackEvent"
      type-id="vim.event.RollbackEvent"
      vmodl-name="vim.event.RollbackEvent"
      version-id-ref="vim.version.version8"
      base-type-id="vim.event.DvsEvent"
      >
      <description-html>
         <![CDATA[This event is generated when network configuration rollback
 occurs on a host due configuration change that disconnected
 the host from vSphere server]]>
      </description-html>
            <property name="hostName" type-id-ref="java.lang.String"
      vmodl-name="hostName"
      >
      <description-html>
         <![CDATA[The host on which rollback happened]]>
      </description-html>
      </property>

            <property name="methodName" type-id-ref="java.lang.String"
      vmodl-name="methodName"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The API method that was rolled back]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="PerfCompositeMetric"
      type-id="vim.PerformanceManager.CompositeEntityMetric"
      vmodl-name="vim.PerformanceManager.CompositeEntityMetric"
      enclosing-type-id-ref="vim.PerformanceManager"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[<a href="vim.PerformanceManager.CompositeEntityMetric.html">PerfCompositeMetric</a> includes an optional
  aggregated entity performance statistics and a list of composite entities
  performance statistics&#46; The aggregated entity statistics are optional
  because some entities, such as folders, do not have their own
  statistics&#46;]]>
      </description-html>
            <property name="entity" type-id-ref="vim.PerformanceManager.EntityMetricBase"
      vmodl-name="entity"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The aggregated entity performance metrics. If it exists, the <a href="vim.PerformanceManager.SampleInfo.html">PerfSampleInfo</a> list of the aggregate entity is a
  complete list of <a href="vim.PerformanceManager.SampleInfo.html">PerfSampleInfo</a> that could
  be contained in <a href="vim.PerformanceManager.SampleInfo.html">PerfSampleInfo</a> lists of
  child entities.]]>
      </description-html>
      </property>

            <property name="childEntity" type-id-ref="vim.PerformanceManager.EntityMetricBase"
      vmodl-name="childEntity"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[A list of <a href="vim.PerformanceManager.EntityMetric.html">metrics</a> of
  performance providers that comprise the aggregated entity. For
  example, Host is an aggregated entity for virtual machines and
  virtual machine Folders. ResourcePools are aggregate entities for
  virtual machines. Host, Folder, and Cluster are aggregate entities
  for hosts in the cluster or folder.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualUSBController"
      type-id="vim.vm.device.VirtualUSBController"
      vmodl-name="vim.vm.device.VirtualUSBController"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.device.VirtualController"
      >
      <description-html>
         <![CDATA[The <a href="vim.vm.device.VirtualUSBController.html">VirtualUSBController</a> data object describes a virtual USB controller
  and contains a list of the devices connected to the controller.
  A virtual machine must have a virtual USB controller before you can add
  a USB device to the virtual machine configuration. To add a controller,
  include a <a href="vim.vm.device.VirtualUSBController.html">VirtualUSBController</a> object in the
  <a href="vim.vm.device.VirtualDeviceSpec.html">VirtualDeviceConfigSpec</a> for your virtual machine configuration.
  You can add only one controller to a virtual machine.
  A virtual USB controller supports up to 20 USB device connections on the
  virtual machine.
  <p>
  The ESX Server host must have the USB controller hardware and modules
  that support USB 2.0 and USB1.1.
  You can use a maximum of 15 USB controllers on a host. If your system
  includes an additional number of controllers with connected devices,
  the additional devices will not be available to virtual machines on the host.
  <p>
  You must remove all USB devices from a virtual machine before you can
  remove the USB controller.]]>
      </description-html>
            <property name="autoConnectDevices" type-id-ref="BOOLEAN"
      vmodl-name="autoConnectDevices"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Flag to indicate whether or not the ability to hot plug devices
  is enabled on this controller.]]>
      </description-html>
      </property>

            <property name="ehciEnabled" type-id-ref="BOOLEAN"
      vmodl-name="ehciEnabled"
      version-id-ref="vim.version.version2"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Flag to indicate whether or not enhanced host controller
  interface (USB 2.0) is enabled on this controller.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.vm.device.VirtualUSBController.PciBusSlotInfo</nested-type-id-ref>
   </data-object>
   <data-object name="ProfileCreateSpec"
      type-id="vim.profile.Profile.CreateSpec"
      vmodl-name="vim.profile.Profile.CreateSpec"
      enclosing-type-id-ref="vim.profile.Profile"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Specification describing the parameters during Profile creation]]>
      </description-html>
            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Name of the profile]]>
      </description-html>
      </property>

            <property name="annotation" type-id-ref="java.lang.String"
      vmodl-name="annotation"
      is-optional="true"
      >
      <description-html>
         <![CDATA[User Provided description of the profile]]>
      </description-html>
      </property>

            <property name="enabled" type-id-ref="BOOLEAN"
      vmodl-name="enabled"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Flag indicating if the Profile is enabled]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualMachinePropertyRelation"
      type-id="vim.vm.PropertyRelation"
      vmodl-name="vim.vm.PropertyRelation"
      version-id-ref="vim.version.version12"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Data object which represents relations between a
 property and its target value and the required values
 of any other properties in the vm configuration so
 that the target value can be set.]]>
      </description-html>
            <property name="key" type-id-ref="vmodl.DynamicProperty"
      vmodl-name="key"
      >
      <description-html>
         <![CDATA[The target property and its value]]>
      </description-html>
      </property>

            <property name="relations" type-id-ref="vmodl.DynamicProperty"
      vmodl-name="relations"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The related properties and their values]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="CustomizationIPSettings"
      type-id="vim.vm.customization.IPSettings"
      vmodl-name="vim.vm.customization.IPSettings"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[IP settings for a virtual network adapter.]]>
      </description-html>
            <property name="ip" type-id-ref="vim.vm.customization.IpGenerator"
      vmodl-name="ip"
      >
      <description-html>
         <![CDATA[Specification to obtain a unique IP address for this virtual network adapter.]]>
      </description-html>
      </property>

            <property name="subnetMask" type-id-ref="java.lang.String"
      vmodl-name="subnetMask"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Subnet mask for this virtual network adapter.]]>
      </description-html>
      </property>

            <property name="gateway" type-id-ref="java.lang.String"
      vmodl-name="gateway"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[For a virtual network adapter with a static IP address, this data object type
  contains a list of gateways, in order of preference.]]>
      </description-html>
      </property>

            <property name="ipV6Spec" type-id-ref="vim.vm.customization.IPSettings.IpV6AddressSpec"
      vmodl-name="ipV6Spec"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[This contains the IpGenerator, subnet mask and gateway info for all
  the ipv6 addresses associated with the virtual network adapter.]]>
      </description-html>
      </property>

            <property name="dnsServerList" type-id-ref="java.lang.String"
      vmodl-name="dnsServerList"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[A list of server IP addresses to use for DNS lookup in a Windows guest operating
  system. In Windows, these settings are adapter-specific, whereas in Linux, they
  are global. As a result, the Linux guest customization process ignores this
  setting and looks for its DNS servers in the globalIPSettings object.
  <p>
  Specify these servers in order of preference. If this list is not empty, and if
  a DHCP IpGenerator is used, then these settings override the DHCP settings.]]>
      </description-html>
      </property>

            <property name="dnsDomain" type-id-ref="java.lang.String"
      vmodl-name="dnsDomain"
      is-optional="true"
      >
      <description-html>
         <![CDATA[A DNS domain suffix such as vmware.com.]]>
      </description-html>
      </property>

            <property name="primaryWINS" type-id-ref="java.lang.String"
      vmodl-name="primaryWINS"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The IP address of the primary WINS server. This property is ignored for Linux
  guest operating systems.]]>
      </description-html>
      </property>

            <property name="secondaryWINS" type-id-ref="java.lang.String"
      vmodl-name="secondaryWINS"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The IP address of the secondary WINS server. This property is ignored for Linux
  guest operating systems.]]>
      </description-html>
      </property>

            <property name="netBIOS" type-id-ref="vim.vm.customization.IPSettings.NetBIOSMode"
      vmodl-name="netBIOS"
      is-optional="true"
      >
      <description-html>
         <![CDATA[NetBIOS setting for Windows.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.vm.customization.IPSettings.IpV6AddressSpec</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.customization.IPSettings.NetBIOSMode</nested-type-id-ref>
   </data-object>
   <data-object name="DistributedVirtualPortgroupNsxPortgroupOperationResult"
      type-id="vim.dvs.DistributedVirtualPortgroup.NsxPortgroupOperationResult"
      vmodl-name="vim.dvs.DistributedVirtualPortgroup.NsxPortgroupOperationResult"
      enclosing-type-id-ref="vim.dvs.DistributedVirtualPortgroup"
      version-id-ref="vim.version.v7_0"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The <a href="vim.dvs.DistributedVirtualPortgroup.NsxPortgroupOperationResult.html">DistributedVirtualPortgroupNsxPortgroupOperationResult</a>
 data object defines the result of NSX port group operations, including
 create, reconfigure and delete.]]>
      </description-html>
            <property name="portgroups" type-id-ref="vim.dvs.DistributedVirtualPortgroup"
      vmodl-name="portgroups"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The management object of NSX port group.
 For add operation, it indicates the port groups created successfully.
 For reconfigure operation, it indicates the port groups updated
 successfully.
 For delete operation, it indicates the port groups failed deleted.]]>
      </description-html>
      </property>

            <property name="problems" type-id-ref="vim.dvs.DistributedVirtualPortgroup.Problem"
      vmodl-name="problems"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The failed port group operation details.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="UserUpgradeEvent"
      type-id="vim.event.UserUpgradeEvent"
      vmodl-name="vim.event.UserUpgradeEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.UpgradeEvent"
      >
      <description-html>
         <![CDATA[This event is a general user event from upgrade.]]>
      </description-html>
   </data-object>
   <data-object name="CustomizationLinuxOptions"
      type-id="vim.vm.customization.LinuxOptions"
      vmodl-name="vim.vm.customization.LinuxOptions"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.customization.Options"
      >
      <description-html>
         <![CDATA[Base object type for optional operations supported by the customization process for
  Linux.]]>
      </description-html>
   </data-object>
   <data-object name="CanceledHostOperationEvent"
      type-id="vim.event.CanceledHostOperationEvent"
      vmodl-name="vim.event.CanceledHostOperationEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.HostEvent"
      >
      <description-html>
         <![CDATA[An operation performed on the host was canceled. Typically,
  a previous event in the sequence of events contains more
  information about the cause of this cancellation.]]>
      </description-html>
   </data-object>
   <data-object name="ResourceAllocationInfo"
      type-id="vim.ResourceAllocationInfo"
      vmodl-name="vim.ResourceAllocationInfo"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The ResourceAllocationInfo data object specifies the reserved resource
  requirement as well as the limit (maximum allowed usage) for a given
  kind of resource. This is specified for both memory
  allocation (specified in MB) and CPU allocation (specified in MHz).
  <p>
  For a <a href="vim.ResourcePool.html">ResourcePool</a>, the ResourceAllocationInfo object describes
  both the guaranteed amount of the resource (<a href="vim.ResourceAllocationInfo.html#reservation">reservation</a>)
  and whether or not it is expandable
  (<a href="vim.ResourceAllocationInfo.html#expandableReservation">expandableReservation</a>).
  If expandableReservation is true, then the resource pool can grow its reservation
  dynamically by  borrowing unreserved resources from its parent resource pool.
  For the methods <a href="vim.ResourcePool.html#createResourcePool">CreateResourcePool</a>,
  <a href="vim.ResourcePool.html#createVApp">CreateVApp</a> and <a href="vim.ResourcePool.html#importVApp">ImportVApp</a>,
  you must provide values for all properties except overheadLimit; they are not optional.
  (Currently, overheadLimit is for vCenter Server use only.)
  <p>
  If the limit is configured, it must be greater than or equal to the
  reservation.]]>
      </description-html>
            <property name="reservation" type-id-ref="LONG"
      vmodl-name="reservation"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Amount of resource that is guaranteed available to the virtual machine or
  resource pool. Reserved resources are not wasted if they are not used. If
  the utilization is less than the reservation, the resources can be utilized by
  other running virtual machines. Units are MB for memory, MHz for CPU.]]>
      </description-html>
      </property>

            <property name="expandableReservation" type-id-ref="BOOLEAN"
      vmodl-name="expandableReservation"
      is-optional="true"
      >
      <description-html>
         <![CDATA[In a resource pool with an expandable reservation, the reservation on a resource
  pool can grow beyond the specified value, if the parent resource pool has
  unreserved resources.  A non-expandable reservation is called a fixed
  reservation. This property is invalid for virtual machines.]]>
      </description-html>
      </property>

            <property name="limit" type-id-ref="LONG"
      vmodl-name="limit"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The utilization of a virtual machine/resource pool will not exceed this limit, even
  if there are available resources. This is typically used to ensure a consistent
  performance of virtual machines / resource pools independent of available resources.
  If set to -1, then there is no fixed limit on resource usage (only bounded by available
  resources and shares). Units are MB for memory, MHz for CPU.]]>
      </description-html>
      </property>

            <property name="shares" type-id-ref="vim.SharesInfo"
      vmodl-name="shares"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Memory shares are used in case of resource contention.]]>
      </description-html>
      </property>

            <property name="overheadLimit" type-id-ref="LONG"
      vmodl-name="overheadLimit"
      version-id-ref="vim.version.version2"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The maximum allowed overhead memory. For a powered on virtual
  machine, the overhead memory reservation cannot be larger than its
  overheadLimit. This property is only applicable to powered on
  virtual machines and is not persisted across reboots. This property
  is not applicable for resource pools.  If set to -1, then there is
  no limit on reservation. Units are MB.
  <p>
  Note: For vCenter Server use only. Not available for other clients
        at this time.
        The server will throw an exception if you attempt to set
        this property.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostVirtualNicManagerNicTypeSelection"
      type-id="vim.host.VirtualNicManager.NicTypeSelection"
      vmodl-name="vim.host.VirtualNicManager.NicTypeSelection"
      enclosing-type-id-ref="vim.host.VirtualNicManager"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[DataObject which lets a VirtualNic be marked for
 use as a <a href="vim.host.VirtualNicManager.NicType.html">HostVirtualNicManagerNicType</a>.]]>
      </description-html>
            <property name="vnic" type-id-ref="vim.host.VirtualNicConnection"
      vmodl-name="vnic"
      >
      <description-html>
         <![CDATA[VirtualNic for the selection is being made]]>
      </description-html>
      </property>

            <property name="nicType" type-id-ref="java.lang.String"
      vmodl-name="nicType"
      is-array="true"
      is-optional="true"
      >
      </property>

   </data-object>
   <data-object name="CustomizationGlobalIPSettings"
      type-id="vim.vm.customization.GlobalIPSettings"
      vmodl-name="vim.vm.customization.GlobalIPSettings"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[A collection of global IP settings for a virtual network adapter. In Linux, DNS
  server settings are global. The settings can either be statically set or supplied
  by a DHCP server.]]>
      </description-html>
            <property name="dnsSuffixList" type-id-ref="java.lang.String"
      vmodl-name="dnsSuffixList"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of name resolution suffixes for the virtual network adapter. This list
  applies to both Windows and Linux guest customization. For Linux, this setting
  is global, whereas in Windows, this setting is listed on a per-adapter basis,
  even though the setting is global in Windows.]]>
      </description-html>
      </property>

            <property name="dnsServerList" type-id-ref="java.lang.String"
      vmodl-name="dnsServerList"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of DNS servers, for a virtual network adapter with a static IP address. If
  this list is empty, then the guest operating system is expected to use a DHCP
  server to get its DNS server settings. These settings configure the virtual
  machine to use the specified DNS servers. These DNS server settings are listed
  in order of preference.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ProfileEvent"
      type-id="vim.event.ProfileEvent"
      vmodl-name="vim.event.ProfileEvent"
      version-id-ref="vim.version.version5"
      base-type-id="vim.event.Event"
      >
      <description-html>
         <![CDATA[This event records a Profile specific event.]]>
      </description-html>
            <property name="profile" type-id-ref="vim.event.ProfileEventArgument"
      vmodl-name="profile"
      >
      <description-html>
         <![CDATA[Link to the profile to which this event applies]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="OpaqueNetworkCapability"
      type-id="vim.OpaqueNetwork.Capability"
      vmodl-name="vim.OpaqueNetwork.Capability"
      enclosing-type-id-ref="vim.OpaqueNetwork"
      version-id-ref="vim.version.version11"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The data object representing the capabilities supported by the Opaque
 Network.]]>
      </description-html>
            <property name="networkReservationSupported" type-id-ref="BOOLEAN"
      vmodl-name="networkReservationSupported"
      >
      <description-html>
         <![CDATA[Indicates whether network I/O control is supported for a network
 adapter that connects to the opaque network.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostConfigSummary"
      type-id="vim.host.Summary.ConfigSummary"
      vmodl-name="vim.host.Summary.ConfigSummary"
      enclosing-type-id-ref="vim.host.Summary"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[An overview of the key configuration parameters.]]>
      </description-html>
            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      >
      <description-html>
         <![CDATA[The name of the host.]]>
      </description-html>
      </property>

            <property name="port" type-id-ref="INT"
      vmodl-name="port"
      >
      <description-html>
         <![CDATA[The port number.]]>
      </description-html>
      </property>

            <property name="sslThumbprint" type-id-ref="java.lang.String"
      vmodl-name="sslThumbprint"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The SSL thumbprint of the host, if known.]]>
      </description-html>
      </property>

            <property name="product" type-id-ref="vim.AboutInfo"
      vmodl-name="product"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Information about the software running on the host, if known.
  <p>
  The current supported hosts are ESX Server 2.0.1 (and later) and VMware Server
  2.0.0 (and later).]]>
      </description-html>
      </property>

            <property name="vmotionEnabled" type-id-ref="BOOLEAN"
      vmodl-name="vmotionEnabled"
      >
      <description-html>
         <![CDATA[The flag to indicate whether or not VMotion is enabled on this host.]]>
      </description-html>
      </property>

            <property name="faultToleranceEnabled" type-id-ref="BOOLEAN"
      vmodl-name="faultToleranceEnabled"
      version-id-ref="vim.version.version5"
      >
      <description-html>
         <![CDATA[The flag to indicate whether or not Fault Tolerance logging is enabled on this host.]]>
      </description-html>
      </property>

            <property name="featureVersion" type-id-ref="vim.host.FeatureVersionInfo"
      vmodl-name="featureVersion"
      version-id-ref="vim.version.version6"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of feature-specific version information. Each element refers
 to the version information for a specific feature.]]>
      </description-html>
      </property>

            <property name="agentVmDatastore" type-id-ref="vim.Datastore"
      vmodl-name="agentVmDatastore"
      version-id-ref="vim.version.version7"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Datastore used to deploy Agent VMs on for this host.]]>
      </description-html>
      </property>

            <property name="agentVmNetwork" type-id-ref="vim.Network"
      vmodl-name="agentVmNetwork"
      version-id-ref="vim.version.version7"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Management network for Agent VMs.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DasEnabledEvent"
      type-id="vim.event.DasEnabledEvent"
      vmodl-name="vim.event.DasEnabledEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.ClusterEvent"
      >
      <description-html>
         <![CDATA[This event records when a cluster has been enabled for HA.]]>
      </description-html>
   </data-object>
   <data-object name="VirtualMachineVideoCard"
      type-id="vim.vm.device.VirtualVideoCard"
      vmodl-name="vim.vm.device.VirtualVideoCard"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.device.VirtualDevice"
      >
      <description-html>
         <![CDATA[The VirtualVideoCard data object type represents a video card in
 a virtual machine.]]>
      </description-html>
            <property name="videoRamSizeInKB" type-id-ref="LONG"
      vmodl-name="videoRamSizeInKB"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The size of the framebuffer for a virtual machine.]]>
      </description-html>
      </property>

            <property name="numDisplays" type-id-ref="INT"
      vmodl-name="numDisplays"
      version-id-ref="vim.version.version4"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates the number of supported monitors.

  The number of displays X the maximum resolution of each display is
  bounded by the video RAM size of the virtual video card.

  This property can only be updated when the virtual machine is
  powered off.]]>
      </description-html>
      </property>

            <property name="useAutoDetect" type-id-ref="BOOLEAN"
      vmodl-name="useAutoDetect"
      version-id-ref="vim.version.version4"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Flag to indicate whether the display settings of the host on which the
  virtual machine is running should be used to automatically determine
  the display settings of the virtual machine's video card.

  This setting takes effect at virtual machine power-on time. If this
  value is set to TRUE, numDisplays will be ignored.]]>
      </description-html>
      </property>

            <property name="enable3DSupport" type-id-ref="BOOLEAN"
      vmodl-name="enable3DSupport"
      version-id-ref="vim.version.version4"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Flag to indicate whether the virtual video card supports 3D functions.

   This property can only be updated when the virtual machine is powered
   off.]]>
      </description-html>
      </property>

            <property name="use3dRenderer" type-id-ref="java.lang.String"
      vmodl-name="use3dRenderer"
      version-id-ref="vim.version.version8"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicate how the virtual video device renders 3D graphics.
  <p>
  The virtual video device can use hardware acceleration and software
  rendering.  By default, VMware products determine whether or not to
  use hardware acceleration based on the availability of physical graphics
  devices.  Certain workloads can benefit from explicitly specifying if
  hardware acceleration is required.  For example, 3D intensive workloads
  may indicate to run on systems with graphics hardware.
  <p>
  There are three settings.
  <p>
  (automatic) - The virtual device chooses how to render 3D graphics (default).
  (software)  - The virtual device will use software rendering and
                will not attempt to use hardware acceleration.
  (hardware)  - The virtual device will use hardware acceleration and
                will not activate without it.]]>
      </description-html>
      </property>

            <property name="graphicsMemorySizeInKB" type-id-ref="LONG"
      vmodl-name="graphicsMemorySizeInKB"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The size of graphics memory.

  If 3d support is enabled this setting gives the amount of guest memory
  used for graphics resources.

  This property can only be updated when the virtual machine is
  powered off.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.vm.device.VirtualVideoCard.Use3dRenderer</nested-type-id-ref>
   </data-object>
   <data-object name="VirtualDiskSparseVer2BackingOption"
      type-id="vim.vm.device.VirtualDiskOption.SparseVer2BackingOption"
      vmodl-name="vim.vm.device.VirtualDiskOption.SparseVer2BackingOption"
      enclosing-type-id-ref="vim.vm.device.VirtualDiskOption"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.device.VirtualDeviceOption.FileBackingOption"
      >
      <description-html>
         <![CDATA[This data object type contains the options available when backing a virtual
  disk using a host file with the sparse file format from VMware Server.]]>
      </description-html>
            <property name="diskMode" type-id-ref="vim.option.ChoiceOption"
      vmodl-name="diskMode"
      >
      <description-html>
         <![CDATA[The disk mode. Valid disk modes are:
  <ul>
  <li>vim.vm.device.VirtualDiskOption.DiskMode#persistent
  <li>vim.vm.device.VirtualDiskOption.DiskMode#nonpersistent
  <li>vim.vm.device.VirtualDiskOption.DiskMode#undoable
  <li>vim.vm.device.VirtualDiskOption.DiskMode#independent_persistent
  <li>vim.vm.device.VirtualDiskOption.DiskMode#independent_nonpersistent
  <li>vim.vm.device.VirtualDiskOption.DiskMode#append
  </ul><br>See <a href="vim.vm.device.VirtualDiskOption.DiskMode.html">VirtualDiskMode</a><br>]]>
      </description-html>
      </property>

            <property name="split" type-id-ref="vim.option.BoolOption"
      vmodl-name="split"
      >
      <description-html>
         <![CDATA[Flag to indicate whether or not the host supports
  allowing the client to select whether or not a sparse disk
  should be split.]]>
      </description-html>
      </property>

            <property name="writeThrough" type-id-ref="vim.option.BoolOption"
      vmodl-name="writeThrough"
      >
      <description-html>
         <![CDATA[Flag to indicate whether or not the host supports
  allowing the client to select "writethrough" as a mode for
  virtual disks. Typically, this is available only for VMware Server Linux hosts.]]>
      </description-html>
      </property>

            <property name="growable" type-id-ref="BOOLEAN"
      vmodl-name="growable"
      >
      <description-html>
         <![CDATA[Indicates whether or not this disk backing can be
  extended to larger sizes through a reconfigure operation.
  <p>
  If set to true, reconfiguring this virtual disk
  with a <a href="vim.vm.device.VirtualDisk.html#capacityInKB">capacityInKB</a> value greater
  than its current value will grow the disk to the newly specified size.]]>
      </description-html>
      </property>

            <property name="hotGrowable" type-id-ref="BOOLEAN"
      vmodl-name="hotGrowable"
      version-id-ref="vim.version.version2"
      >
      <description-html>
         <![CDATA[Indicates whether or not this disk backing can be
  extended to larger sizes through a reconfigure operation while
  the virtual machine is powered on.
  <p>
  If set to true, reconfiguring this virtual disk
  with a <a href="vim.vm.device.VirtualDisk.html#capacityInKB">capacityInKB</a> value greater
  than its current value will grow the disk to the newly specified size
  while the virtual machine is powered on.]]>
      </description-html>
      </property>

            <property name="uuid" type-id-ref="BOOLEAN"
      vmodl-name="uuid"
      version-id-ref="vim.version.version2"
      >
      <description-html>
         <![CDATA[Flag to indicate whether this backing supports disk UUID property.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="AfterStartupTaskScheduler"
      type-id="vim.scheduler.AfterStartupTaskScheduler"
      vmodl-name="vim.scheduler.AfterStartupTaskScheduler"
      version-id-ref="vim.version.version1"
      base-type-id="vim.scheduler.TaskScheduler"
      >
      <description-html>
         <![CDATA[The <a href="vim.scheduler.AfterStartupTaskScheduler.html">AfterStartupTaskScheduler</a> data object establishes the time
  that a scheduled task will run after the vCenter server restarts.]]>
      </description-html>
            <property name="minute" type-id-ref="INT"
      vmodl-name="minute"
      >
      <description-html>
         <![CDATA[The delay in minutes after vCenter server is restarted.
  The value must be greater than or equal to 0.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ClusterFailoverHostAdmissionControlPolicy"
      type-id="vim.cluster.FailoverHostAdmissionControlPolicy"
      vmodl-name="vim.cluster.FailoverHostAdmissionControlPolicy"
      version-id-ref="vim.version.version5"
      base-type-id="vim.cluster.DasAdmissionControlPolicy"
      >
      <description-html>
         <![CDATA[The <a href="vim.cluster.FailoverHostAdmissionControlPolicy.html">ClusterFailoverHostAdmissionControlPolicy</a> dedicates
 one or more hosts for use during failover.
 When a host fails with this policy in place, vSphere HA attempts
 to restart its virtual machines on a dedicated failover host.
 If this is not possible, for example the failover host itself has failed
 or it has insufficient resources, HA attempts to restart those virtual
 machines on another host in the cluster.
 <p>
 To support the availabilty of a failover host,
 the vCenter Server will prevent users from powering on virtual machines
 on that host, or from using vMotion to migrate virtual machines to the host.
 Also, DRS does not use the failover host for load balancing.
 <p>
 To obtain the status of a failover host, use the
 <a href="vim.cluster.FailoverHostAdmissionControlInfo.html#hostStatus">hostStatus</a>
 property
 (<a href="vim.ClusterComputeResource.Summary.html">ClusterComputeResourceSummary</a>.<a href="vim.ClusterComputeResource.Summary.html#admissionControlInfo">admissionControlInfo</a>.<a href="vim.cluster.FailoverHostAdmissionControlInfo.html#hostStatus">hostStatus</a>).]]>
      </description-html>
            <property name="failoverHosts" type-id-ref="vim.HostSystem"
      vmodl-name="failoverHosts"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of managed object references to failover hosts.]]>
      </description-html>
      </property>

            <property name="failoverLevel" type-id-ref="INT"
      vmodl-name="failoverLevel"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Number of host failures that should be tolerated, still guaranteeing
 sufficient resources to restart virtual machines on available hosts.
 If not set, we assume 1.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ClusterMigrationAction"
      type-id="vim.cluster.MigrationAction"
      vmodl-name="vim.cluster.MigrationAction"
      version-id-ref="vim.version.version2"
      base-type-id="vim.cluster.Action"
      >
      <description-html>
         <![CDATA[Describes a single VM migration action.]]>
      </description-html>
            <property name="drsMigration" type-id-ref="vim.cluster.DrsMigration"
      vmodl-name="drsMigration"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The details of the migration action]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostInternetScsiHbaTargetSet"
      type-id="vim.host.InternetScsiHba.TargetSet"
      vmodl-name="vim.host.InternetScsiHba.TargetSet"
      enclosing-type-id-ref="vim.host.InternetScsiHba"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[A collection of one or more static targets or discovery addresses.
  At least one of the arrays must be non-empty.]]>
      </description-html>
            <property name="staticTargets" type-id-ref="vim.host.InternetScsiHba.StaticTarget"
      vmodl-name="staticTargets"
      is-array="true"
      is-optional="true"
      >
      </property>

            <property name="sendTargets" type-id-ref="vim.host.InternetScsiHba.SendTarget"
      vmodl-name="sendTargets"
      is-array="true"
      is-optional="true"
      >
      </property>

   </data-object>
   <data-object name="EntityEventArgument"
      type-id="vim.event.EntityEventArgument"
      vmodl-name="vim.event.EntityEventArgument"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.EventArgument"
      >
      <description-html>
         <![CDATA[The event argument is a managed entity object.
  <p>
  Subclasses of this type distinguish the different managed entities
  referenced in event objects.]]>
      </description-html>
            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      >
      <description-html>
         <![CDATA[Name of the entity, including its full path from the root of the inventory.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="SSPIAuthentication"
      type-id="vim.vm.guest.SSPIAuthentication"
      vmodl-name="vim.vm.guest.SSPIAuthentication"
      version-id-ref="vim.version.version7"
      base-type-id="vim.vm.guest.GuestAuthentication"
      >
      <description-html>
         <![CDATA[SSPIAuthentication contains the information necessary to
  initiate a ticketed authentication session in the guest
  using SSPI credentials.
  The ticketed session is not stateless and stores state inside of the guest.
  <p>
  To use SSPIAuthentication, populate sspiToken with a base64 encoded SSPI token.
  Then call <a href="vim.vm.guest.AuthManager.html#acquireCredentials">AcquireCredentialsInGuest</a> with
  the SSPIAuthentication object and no sessionID.

  After issuing the <a href="vim.vm.guest.AuthManager.html#acquireCredentials">AcquireCredentialsInGuest</a> call, a
  <a href="vim.fault.GuestAuthenticationChallenge.html">GuestAuthenticationChallenge</a> will be thrown.
  Use the serverChallenge sspiToken in <a href="vim.fault.GuestAuthenticationChallenge.html">GuestAuthenticationChallenge</a>
  to generate the proper SSPI response token.

  Populate an SSPIAuthentication object with the base64 encoded SSPI response token, and
  call <a href="vim.vm.guest.AuthManager.html#acquireCredentials">AcquireCredentialsInGuest</a> with the SSPIAuthentication object and
  the sessionID found in <a href="vim.fault.GuestAuthenticationChallenge.html">GuestAuthenticationChallenge</a>.
  <p>
  Successful authentication will result in a <a href="vim.vm.guest.TicketedSessionAuthentication.html">TicketedSessionAuthentication</a>
  object being returned. You can use the <a href="vim.vm.guest.TicketedSessionAuthentication.html">TicketedSessionAuthentication</a> in any
  guest operations function call. You should NOT attempt to use SSPIAuthentication in any guest
  operations function call.
  <p>
  When you no longer need the <a href="vim.vm.guest.TicketedSessionAuthentication.html">TicketedSessionAuthentication</a> object, you should
  call <a href="vim.vm.guest.AuthManager.html#releaseCredentials">ReleaseCredentialsInGuest</a> to free associated resources
  and session data.
  <p>
  Usage notes: SSPI authentication has the same limitations as a duplicated primary token obtained
  from the Windows API function LogonUser with the LOGON32_LOGON_NETWORK logon type. This will affect
  programs started with <a href="vim.vm.guest.ProcessManager.html#startProgram">StartProgramInGuest</a>. For example, launched
  programs will be unable to use WMI functions unless the "Remote Enable" privilege is enabled for
  the user. Similarly, access to network resources may fail due to the limitations of the token.]]>
      </description-html>
            <property name="sspiToken" type-id-ref="java.lang.String"
      vmodl-name="sspiToken"
      >
      <description-html>
         <![CDATA[This contains a base64 encoded SSPI Token.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VmDasBeingResetEvent"
      type-id="vim.event.VmDasBeingResetEvent"
      vmodl-name="vim.event.VmDasBeingResetEvent"
      version-id-ref="vim.version.version5"
      base-type-id="vim.event.VmEvent"
      >
      <description-html>
         <![CDATA[This event records when a virtual machine is reset by
 HA VM Health Monitoring on hosts that do not support the
 create screenshot api or if the createscreenshot api fails.]]>
      </description-html>
            <property name="reason" type-id-ref="java.lang.String"
      vmodl-name="reason"
      version-id-ref="vim.version.version6"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The reason why this vm is being reset]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.event.VmDasBeingResetEvent.ReasonCode</nested-type-id-ref>
   </data-object>
   <data-object name="HostVirtualSwitchConfig"
      type-id="vim.host.VirtualSwitch.Config"
      vmodl-name="vim.host.VirtualSwitch.Config"
      enclosing-type-id-ref="vim.host.VirtualSwitch"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object type describes the VirtualSwitch configuration
  containing both the configurable
  properties on a VirtualSwitch and identification information.]]>
      </description-html>
            <property name="changeOperation" type-id-ref="java.lang.String"
      vmodl-name="changeOperation"
      is-optional="true"
      >
      <description-html>
         <![CDATA[This property indicates the change operation to apply on
  this configuration specification.<br>See <a href="vim.host.ConfigChange.Operation.html">HostConfigChangeOperation</a><br>]]>
      </description-html>
      </property>

            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      >
      <description-html>
         <![CDATA[The name of the virtual switch.
  Maximum length is 32 characters.]]>
      </description-html>
      </property>

            <property name="spec" type-id-ref="vim.host.VirtualSwitch.Specification"
      vmodl-name="spec"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The specification of the VirtualSwitch.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="KmipServerStatus"
      type-id="vim.encryption.KmipServerStatus"
      vmodl-name="vim.encryption.KmipServerStatus"
      version-id-ref="vim.version.version11"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Data Object representing a KMIP server status.]]>
      </description-html>
            <property name="clusterId" type-id-ref="vim.encryption.KeyProviderId"
      vmodl-name="clusterId"
      >
      <description-html>
         <![CDATA[The ID of the KMIP cluster.]]>
      </description-html>
      </property>

            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      >
      <description-html>
         <![CDATA[Name for the KMIP server.]]>
      </description-html>
      </property>

            <property name="status" type-id-ref="vim.ManagedEntity.Status"
      vmodl-name="status"
      >
      <description-html>
         <![CDATA[KMIP server status.]]>
      </description-html>
      </property>

            <property name="description" type-id-ref="java.lang.String"
      vmodl-name="description"
      >
      <description-html>
         <![CDATA[KMIP server status description.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualParallelPortFileBackingInfo"
      type-id="vim.vm.device.VirtualParallelPort.FileBackingInfo"
      vmodl-name="vim.vm.device.VirtualParallelPort.FileBackingInfo"
      enclosing-type-id-ref="vim.vm.device.VirtualParallelPort"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.device.VirtualDevice.FileBackingInfo"
      >
      <description-html>
         <![CDATA[The data object type for a file backing of a virtual parallel port.]]>
      </description-html>
   </data-object>
   <data-object name="HostPowerPolicy"
      type-id="vim.host.PowerSystem.PowerPolicy"
      vmodl-name="vim.host.PowerSystem.PowerPolicy"
      enclosing-type-id-ref="vim.host.PowerSystem"
      version-id-ref="vim.version.version6"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Power Management Policy data object.

  Used to retrieve and specify current host power management policy.]]>
      </description-html>
            <property name="key" type-id-ref="INT"
      vmodl-name="key"
      >
      <description-html>
         <![CDATA[Power Policy Key.

  Internally generated key which uniquely identifies power management
  policy on a host.]]>
      </description-html>
      </property>

            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      is-localizable="true"
      >
      <description-html>
         <![CDATA[Power Policy Name.]]>
      </description-html>
      </property>

            <property name="shortName" type-id-ref="java.lang.String"
      vmodl-name="shortName"
      >
      <description-html>
         <![CDATA[Power Policy Short Name.

  This is not localizable property which can be used to identify specific
  power managing policies like "custom" power policy.  Custom power policy
  has short name set to "custom".]]>
      </description-html>
      </property>

            <property name="description" type-id-ref="java.lang.String"
      vmodl-name="description"
      is-localizable="true"
      >
      <description-html>
         <![CDATA[Power Policy Description.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostHostBusAdapter"
      type-id="vim.host.HostBusAdapter"
      vmodl-name="vim.host.HostBusAdapter"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object type describes the bus adapter for
  the host. A host bus adapter (HBA) is a hardware
  or software adapter that connects the host to storage devices.]]>
      </description-html>
            <property name="key" type-id-ref="java.lang.String"
      vmodl-name="key"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The linkable identifier.]]>
      </description-html>
      </property>

            <property name="device" type-id-ref="java.lang.String"
      vmodl-name="device"
      >
      <description-html>
         <![CDATA[The device name of host bus adapter.]]>
      </description-html>
      </property>

            <property name="bus" type-id-ref="INT"
      vmodl-name="bus"
      >
      <description-html>
         <![CDATA[The host bus number.]]>
      </description-html>
      </property>

            <property name="status" type-id-ref="java.lang.String"
      vmodl-name="status"
      >
      <description-html>
         <![CDATA[The operational status of the adapter.  Valid values include "online",
  "offline", "unbound", and "unknown".]]>
      </description-html>
      </property>

            <property name="model" type-id-ref="java.lang.String"
      vmodl-name="model"
      >
      <description-html>
         <![CDATA[The model name of the host bus adapter.]]>
      </description-html>
      </property>

            <property name="driver" type-id-ref="java.lang.String"
      vmodl-name="driver"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The name of the driver.]]>
      </description-html>
      </property>

            <property name="pci" type-id-ref="java.lang.String"
      vmodl-name="pci"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The Peripheral Connect Interface (PCI) ID of the device
  representing the host bus adapter.]]>
      </description-html>
      </property>

            <property name="storageProtocol" type-id-ref="java.lang.String"
      vmodl-name="storageProtocol"
      version-id-ref="vim.version.v7_0"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The type of protocol supported by the host bus adapter.
  <p>
  The list of supported values is described in
  <a href="vim.host.StorageProtocol.html">HostStorageProtocol</a>.
  When unset, a default value of "scsi" is assumed.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostGatewaySpec"
      type-id="vim.host.GatewaySpec"
      vmodl-name="vim.host.GatewaySpec"
      version-id-ref="vim.version.version10"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Settings for a gateway used to communicate with a host.]]>
      </description-html>
            <property name="gatewayType" type-id-ref="java.lang.String"
      vmodl-name="gatewayType"
      >
      <description-html>
         <![CDATA[The type of the gateway used for the communication to the host.]]>
      </description-html>
      </property>

            <property name="gatewayId" type-id-ref="java.lang.String"
      vmodl-name="gatewayId"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Identifier of the gateway to be used for communction to the host. If
  omitted a random gateway of this type will be selected.]]>
      </description-html>
      </property>

            <property name="trustVerificationToken" type-id-ref="java.lang.String"
      vmodl-name="trustVerificationToken"
      is-optional="true"
      >
      <description-html>
         <![CDATA[An opaque string that the gateway may need to validate that the host
  it connects to is the correct host.]]>
      </description-html>
      </property>

            <property name="hostAuthParams" type-id-ref="vim.KeyValue"
      vmodl-name="hostAuthParams"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Additional opaque authentication data that the gateway may need to
  authenticate to the host.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="KeyAnyValue"
      type-id="vmodl.KeyAnyValue"
      vmodl-name="vmodl.KeyAnyValue"
      version-id-ref="vmodl.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Non-localized key/value pair in which the
 the value can be of any type.]]>
      </description-html>
            <property name="key" type-id-ref="java.lang.String"
      vmodl-name="key"
      >
      <description-html>
         <![CDATA[the key]]>
      </description-html>
      </property>

            <property name="value" type-id-ref="vmodl.Any"
      vmodl-name="value"
      >
      <description-html>
         <![CDATA[the value]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DatastoreInfo"
      type-id="vim.Datastore.Info"
      vmodl-name="vim.Datastore.Info"
      enclosing-type-id-ref="vim.Datastore"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Detailed information about a datastore.  This is a base type for derived types
  that have more specific details about a datastore.<br>See <a href="vim.host.VmfsVolume.html">HostVmfsVolume</a><br>See <a href="vim.host.NasVolume.html">HostNasVolume</a><br>See <a href="vim.host.LocalFileSystemVolume.html">HostLocalFileSystemVolume</a><br>]]>
      </description-html>
            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      >
      <description-html>
         <![CDATA[The name of the datastore.]]>
      </description-html>
      </property>

            <property name="url" type-id-ref="java.lang.String"
      vmodl-name="url"
      >
      <description-html>
         <![CDATA[The unique locator for the datastore.]]>
      </description-html>
      </property>

            <property name="freeSpace" type-id-ref="LONG"
      vmodl-name="freeSpace"
      >
      <description-html>
         <![CDATA[Free space of this datastore, in bytes. The server periodically updates this
  value. It can be explicitly refreshed with the Refresh operation.]]>
      </description-html>
      </property>

            <property name="maxFileSize" type-id-ref="LONG"
      vmodl-name="maxFileSize"
      >
      <description-html>
         <![CDATA[The maximum size of a file that can reside on this file system volume.]]>
      </description-html>
      </property>

            <property name="maxVirtualDiskCapacity" type-id-ref="LONG"
      vmodl-name="maxVirtualDiskCapacity"
      version-id-ref="vim.version.version9"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The maximum capacity of a virtual disk which can be created on this volume.]]>
      </description-html>
      </property>

            <property name="maxMemoryFileSize" type-id-ref="LONG"
      vmodl-name="maxMemoryFileSize"
      version-id-ref="vim.version.version10"
      >
      <description-html>
         <![CDATA[The maximum size of a snapshot or a swap file that can reside on this file system volume.]]>
      </description-html>
      </property>

            <property name="timestamp" type-id-ref="vmodl.DateTime"
      vmodl-name="timestamp"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Time when the free-space and capacity values in <a href="vim.Datastore.Info.html">DatastoreInfo</a> and
  <a href="vim.Datastore.Summary.html">DatastoreSummary</a> were updated.]]>
      </description-html>
      </property>

            <property name="containerId" type-id-ref="java.lang.String"
      vmodl-name="containerId"
      version-id-ref="vim.version.version9"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The unique container ID of the datastore, if applicable.]]>
      </description-html>
      </property>

            <property name="aliasOf" type-id-ref="java.lang.String"
      vmodl-name="aliasOf"
      version-id-ref="vim.version.version13"
      is-optional="true"
      >
      <description-html>
         <![CDATA[vSAN datastore container that this datastore is alias of. If this
 field is unset then this datastore is not alias of any other vSAN
 datastore.

 See <a href="vim.Datastore.Info.html#containerId">containerId</a>.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="IntExpression"
      type-id="vim.IntExpression"
      vmodl-name="vim.IntExpression"
      version-id-ref="vim.version.version9"
      base-type-id="vim.NegatableExpression"
      >
      <description-html>
         <![CDATA[The integer type of setting or configuration that may get a
  negated value.]]>
      </description-html>
            <property name="value" type-id-ref="INT"
      vmodl-name="value"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The integer value that is either negated or used as it is]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VsanUpgradeSystemUpgradeHistoryItem"
      type-id="vim.VsanUpgradeSystem.UpgradeHistoryItem"
      vmodl-name="vim.VsanUpgradeSystem.UpgradeHistoryItem"
      enclosing-type-id-ref="vim.VsanUpgradeSystem"
      version-id-ref="vim.version.version10"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Captures one "log entry" of an upgrade process.]]>
      </description-html>
            <property name="timestamp" type-id-ref="vmodl.DateTime"
      vmodl-name="timestamp"
      >
      <description-html>
         <![CDATA[Time stamp when the history is record.]]>
      </description-html>
      </property>

            <property name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The host a history item pertains to. May be unset when item related
 to no particular host.]]>
      </description-html>
      </property>

            <property name="message" type-id-ref="java.lang.String"
      vmodl-name="message"
      >
      <description-html>
         <![CDATA[Description of the history item.]]>
      </description-html>
      </property>

            <property name="task" type-id-ref="vim.Task"
      vmodl-name="task"
      is-optional="true"
      >
      <description-html>
         <![CDATA[A task associated with the history item. May be unset if no task is
 associated.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DVSPolicy"
      type-id="vim.DistributedVirtualSwitch.SwitchPolicy"
      vmodl-name="vim.DistributedVirtualSwitch.SwitchPolicy"
      enclosing-type-id-ref="vim.DistributedVirtualSwitch"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The switch usage policy types]]>
      </description-html>
            <property name="autoPreInstallAllowed" type-id-ref="BOOLEAN"
      vmodl-name="autoPreInstallAllowed"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Whether downloading a new proxy VirtualSwitch module to the host is
  allowed to be automatically executed by the switch.]]>
      </description-html>
      </property>

            <property name="autoUpgradeAllowed" type-id-ref="BOOLEAN"
      vmodl-name="autoUpgradeAllowed"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Whether upgrading of the switch is allowed to be automatically
  executed by the switch.]]>
      </description-html>
      </property>

            <property name="partialUpgradeAllowed" type-id-ref="BOOLEAN"
      vmodl-name="partialUpgradeAllowed"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Whether to allow upgrading a switch when some of the hosts failed to
  install the needed module. The vCenter Server will reattempt the
  pre-install operation of the host module on those failed hosts,
  whenever they reconnect to vCenter.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostFeatureVersionInfo"
      type-id="vim.host.FeatureVersionInfo"
      vmodl-name="vim.host.FeatureVersionInfo"
      version-id-ref="vim.version.version6"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Feature-specific version information for a host]]>
      </description-html>
            <property name="key" type-id-ref="java.lang.String"
      vmodl-name="key"
      >
      <description-html>
         <![CDATA[A unique key that identifies a feature, list of possible values are
 specified in <a href="vim.host.FeatureVersionInfo.FeatureVersionKey.html">HostFeatureVersionKey</a>]]>
      </description-html>
      </property>

            <property name="value" type-id-ref="java.lang.String"
      vmodl-name="value"
      >
      <description-html>
         <![CDATA[The version string of this feature]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.host.FeatureVersionInfo.FeatureVersionKey</nested-type-id-ref>
   </data-object>
   <data-object name="ProfileDescriptionSection"
      type-id="vim.profile.Profile.Description.Section"
      vmodl-name="vim.profile.Profile.Description.Section"
      enclosing-type-id-ref="vim.profile.Profile.Description"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The <a href="vim.profile.Profile.Description.Section.html">ProfileDescriptionSection</a> data object
 contains a profile element description and any messages that may
 be associated with the profile section.]]>
      </description-html>
            <property name="description" type-id-ref="vim.ExtendedElementDescription"
      vmodl-name="description"
      >
      <description-html>
         <![CDATA[Localized message data.]]>
      </description-html>
      </property>

            <property name="message" type-id-ref="vmodl.LocalizableMessage"
      vmodl-name="message"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of messages that make up the section.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostPciPassthruConfig"
      type-id="vim.host.PciPassthruConfig"
      vmodl-name="vim.host.PciPassthruConfig"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object provides information about the state of PciPassthru
  for all pci devices.]]>
      </description-html>
            <property name="id" type-id-ref="java.lang.String"
      vmodl-name="id"
      >
      <description-html>
         <![CDATA[The name ID of this PCI, composed of "bus:slot.function".]]>
      </description-html>
      </property>

            <property name="passthruEnabled" type-id-ref="BOOLEAN"
      vmodl-name="passthruEnabled"
      >
      <description-html>
         <![CDATA[Whether passThru has been configured for this device]]>
      </description-html>
      </property>

            <property name="applyNow" type-id-ref="BOOLEAN"
      vmodl-name="applyNow"
      version-id-ref="vim.version.v7_0"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Whether the passThru config should take effect without rebooting ESX.
 <p>
 When unset, the behavior will be determined automatically
 based on <a href="vim.host.Capability.html#deviceRebindWithoutRebootSupported">deviceRebindWithoutRebootSupported</a>.
 If the configuration can be applied immediately, it
 will be, otherwise the changes will take effect after reboot.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="CustomizationAdapterMapping"
      type-id="vim.vm.customization.AdapterMapping"
      vmodl-name="vim.vm.customization.AdapterMapping"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Data object type to associate a virtual network adapter with its IP settings.]]>
      </description-html>
            <property name="macAddress" type-id-ref="java.lang.String"
      vmodl-name="macAddress"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The MAC address of a network adapter being customized. The client cannot change
  this value because the guest operating system has no control over the MAC
  address of a virtual network adapter.
  <p>
  This property is optional. If it is not included, the customization process maps
  the settings from the list of AdapterMappings.IPSettings in the
  Specification.nicSettingMap to the virtual machine's network adapters, in PCI
  slot order. The first virtual network adapter on the PCI bus is assigned
  nicSettingMap[0].IPSettings, the second adapter is assigned
  nicSettingMap[1].IPSettings, and so on.]]>
      </description-html>
      </property>

            <property name="adapter" type-id-ref="vim.vm.customization.IPSettings"
      vmodl-name="adapter"
      >
      <description-html>
         <![CDATA[The IP settings for the associated virtual network adapter.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="AlarmTriggeringAction"
      type-id="vim.alarm.AlarmTriggeringAction"
      vmodl-name="vim.alarm.AlarmTriggeringAction"
      version-id-ref="vim.version.version1"
      base-type-id="vim.alarm.AlarmAction"
      >
      <description-html>
         <![CDATA[This data object type describes one or more
  triggering transitions and an action to be done
  when an alarm is triggered.
  <p>
  There are four triggering transitions; at least one of them must
  be provided. A gray state is considered the same as a green state,
  for the purpose of detecting transitions.]]>
      </description-html>
            <property name="action" type-id-ref="vim.action.Action"
      vmodl-name="action"
      >
      <description-html>
         <![CDATA[The action to be done when the alarm is triggered.]]>
      </description-html>
      </property>

            <property name="transitionSpecs" type-id-ref="vim.alarm.AlarmTriggeringAction.TransitionSpec"
      vmodl-name="transitionSpecs"
      version-id-ref="vim.version.version5"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates on which transitions this action executes and repeats.
  This is optional only for backwards compatibility.]]>
      </description-html>
      </property>

            <property name="green2yellow" type-id-ref="BOOLEAN"
      vmodl-name="green2yellow"
      is-deprecated="true"
      >
      <description-html>
         <![CDATA[Flag to specify that the alarm should trigger on a transition
  from green to yellow.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 4.0, use
  <a href="vim.alarm.AlarmTriggeringAction.TransitionSpec.html">AlarmTriggeringActionTransitionSpec</a> .]]>
      </deprecated-html>
      </property>

            <property name="yellow2red" type-id-ref="BOOLEAN"
      vmodl-name="yellow2red"
      is-deprecated="true"
      >
      <description-html>
         <![CDATA[Flag to specify that the alarm should trigger on a transition
  from yellow to red.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 4.0, use
  <a href="vim.alarm.AlarmTriggeringAction.TransitionSpec.html">AlarmTriggeringActionTransitionSpec</a> .]]>
      </deprecated-html>
      </property>

            <property name="red2yellow" type-id-ref="BOOLEAN"
      vmodl-name="red2yellow"
      is-deprecated="true"
      >
      <description-html>
         <![CDATA[Flag to specify that the alarm should trigger on a transition
  from red to yellow.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 4.0, use
  <a href="vim.alarm.AlarmTriggeringAction.TransitionSpec.html">AlarmTriggeringActionTransitionSpec</a> .]]>
      </deprecated-html>
      </property>

            <property name="yellow2green" type-id-ref="BOOLEAN"
      vmodl-name="yellow2green"
      is-deprecated="true"
      >
      <description-html>
         <![CDATA[Flag to specify that the alarm should trigger on a transition
  from yellow to green.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 4.0, use
  <a href="vim.alarm.AlarmTriggeringAction.TransitionSpec.html">AlarmTriggeringActionTransitionSpec</a> .]]>
      </deprecated-html>
      </property>

      <nested-type-id-ref>vim.alarm.AlarmTriggeringAction.TransitionSpec</nested-type-id-ref>
   </data-object>
   <data-object name="HostDirectoryStoreInfo"
      type-id="vim.host.DirectoryStoreInfo"
      vmodl-name="vim.host.DirectoryStoreInfo"
      version-id-ref="vim.version.version6"
      base-type-id="vim.host.AuthenticationStoreInfo"
      >
      <description-html>
         <![CDATA[<a href="vim.host.DirectoryStoreInfo.html">HostDirectoryStoreInfo</a> is a base class for objects that
  provide information about directory-based authentication stores.]]>
      </description-html>
   </data-object>
   <data-object name="HostLowLevelProvisioningManagerFileDeleteSpec"
      type-id="vim.host.LowLevelProvisioningManager.FileDeleteSpec"
      vmodl-name="vim.host.LowLevelProvisioningManager.FileDeleteSpec"
      enclosing-type-id-ref="vim.host.LowLevelProvisioningManager"
      version-id-ref="vim.version.version10"
      base-type-id="vmodl.DynamicData"
      >
            <property name="fileName" type-id-ref="java.lang.String"
      vmodl-name="fileName"
      >
      </property>

            <property name="fileType" type-id-ref="java.lang.String"
      vmodl-name="fileType"
      >
      </property>

   </data-object>
   <data-object name="HostDatastoreBrowserSearchSpec"
      type-id="vim.host.DatastoreBrowser.SearchSpec"
      vmodl-name="vim.host.DatastoreBrowser.SearchSpec"
      enclosing-type-id-ref="vim.host.DatastoreBrowser"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The data object type describes a search for files in one or more datastores. The
  properties do not include the starting datastore path because that path is a
  separate parameter to the search method.
  <p>
  A SearchSpec contains the query parameters and some global search modifiers.]]>
      </description-html>
            <property name="query" type-id-ref="vim.host.DatastoreBrowser.Query"
      vmodl-name="query"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The set of file types to match, search criteria specific to the file type, and
  the amount of detail for a file. These search parameters are specific to a file
  type, meaning that they can be specified only if the file type to which they
  are associated is in the set. A file type cannot appear more than once in the
  set.
  <p>
  If this query object is not present, then all files providing only file level
  details are matched.]]>
      </description-html>
      </property>

            <property name="details" type-id-ref="vim.host.DatastoreBrowser.FileInfo.Details"
      vmodl-name="details"
      is-optional="true"
      >
      <description-html>
         <![CDATA[This object comprises a set of booleans that describe what details to return
  for each file. The file level details apply globally to all matched files.]]>
      </description-html>
      </property>

            <property name="searchCaseInsensitive" type-id-ref="BOOLEAN"
      vmodl-name="searchCaseInsensitive"
      is-optional="true"
      >
      <description-html>
         <![CDATA[This flag indicates whether or not to search using a case insensitive match on
  type. In general the algorithm used to match file types relies on file
  extensions. Although the specific file extensions used are encapsulated by this
  API, clients are still allowed to modify the filtering behavior.
  <p>
  By default, the DatastoreBrowser uses a platform-consistent algorithm to
  determine if a file is of a type. Specifically on Linux, where case is
  important, the search is case sensitive. On Windows, case is not important, so
  the search is case insensitive.
  <p>
  In an environment with heterogenous platforms, being platform-consistent may
  not be desirable. As a result, the default behavior can be overridden by
  setting this optional flag.]]>
      </description-html>
      </property>

            <property name="matchPattern" type-id-ref="java.lang.String"
      vmodl-name="matchPattern"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Specifies a list of file patterns that must match for a file to be returned.
  This search property is a filter that applies globally so that only files
  matching the specified patterns are returned, regardless of the other search
  parameters.]]>
      </description-html>
      </property>

            <property name="sortFoldersFirst" type-id-ref="BOOLEAN"
      vmodl-name="sortFoldersFirst"
      is-optional="true"
      >
      <description-html>
         <![CDATA[By default, files are sorted in alphabetical order regardless of file type. If
  this flag is set to "true", folders are placed at the start of the list of
  results in alphabetical order. The remaining files follow in alphabetical
  order.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="MigrationHostWarningEvent"
      type-id="vim.event.MigrationHostWarningEvent"
      vmodl-name="vim.event.MigrationHostWarningEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.MigrationEvent"
      >
      <description-html>
         <![CDATA[A migration warning that includes the destination host.]]>
      </description-html>
            <property name="dstHost" type-id-ref="vim.event.HostEventArgument"
      vmodl-name="dstHost"
      >
      <description-html>
         <![CDATA[The name of the destination host.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ChoiceOption"
      type-id="vim.option.ChoiceOption"
      vmodl-name="vim.option.ChoiceOption"
      version-id-ref="vim.version.version1"
      base-type-id="vim.option.OptionType"
      >
      <description-html>
         <![CDATA[The ChoiceOption data object type defines a set of
  supported string values, a localizable description for each value,
  and the default value.]]>
      </description-html>
            <property name="choiceInfo" type-id-ref="vim.ElementDescription"
      vmodl-name="choiceInfo"
      is-array="true"
      is-localizable="true"
      >
      <description-html>
         <![CDATA[The set of possible selections and descriptions.]]>
      </description-html>
      </property>

            <property name="defaultIndex" type-id-ref="INT"
      vmodl-name="defaultIndex"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The index in ChoiceOption.value that serves as the default value.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="OpaqueNetworkTargetInfo"
      type-id="vim.vm.OpaqueNetworkInfo"
      vmodl-name="vim.vm.OpaqueNetworkInfo"
      version-id-ref="vim.version.version9"
      base-type-id="vim.vm.TargetInfo"
      >
      <description-html>
         <![CDATA[This class describes an opaque network that a device backing
  can attached to.]]>
      </description-html>
            <property name="network" type-id-ref="vim.OpaqueNetwork.Summary"
      vmodl-name="network"
      >
      <description-html>
         <![CDATA[Information about the opaque network]]>
      </description-html>
      </property>

            <property name="networkReservationSupported" type-id-ref="BOOLEAN"
      vmodl-name="networkReservationSupported"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates whether network bandwidth reservation is supported on
 the opaque network]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostSnmpConfigSpec"
      type-id="vim.host.SnmpSystem.SnmpConfigSpec"
      vmodl-name="vim.host.SnmpSystem.SnmpConfigSpec"
      enclosing-type-id-ref="vim.host.SnmpSystem"
      version-id-ref="vim.version.version2"
      base-type-id="vmodl.DynamicData"
      >
            <property name="enabled" type-id-ref="BOOLEAN"
      vmodl-name="enabled"
      is-optional="true"
      >
      </property>

            <property name="port" type-id-ref="INT"
      vmodl-name="port"
      is-optional="true"
      >
      </property>

            <property name="readOnlyCommunities" type-id-ref="java.lang.String"
      vmodl-name="readOnlyCommunities"
      is-array="true"
      is-optional="true"
      >
      </property>

            <property name="trapTargets" type-id-ref="vim.host.SnmpSystem.SnmpConfigSpec.Destination"
      vmodl-name="trapTargets"
      is-array="true"
      is-optional="true"
      >
      </property>

            <property name="option" type-id-ref="vim.KeyValue"
      vmodl-name="option"
      version-id-ref="vim.version.version7"
      is-array="true"
      is-optional="true"
      >
      </property>

      <nested-type-id-ref>vim.host.SnmpSystem.SnmpConfigSpec.Destination</nested-type-id-ref>
   </data-object>
   <data-object name="VmGuestRebootEvent"
      type-id="vim.event.VmGuestRebootEvent"
      vmodl-name="vim.event.VmGuestRebootEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.VmEvent"
      >
      <description-html>
         <![CDATA[This is a virtual machine guest reboot request event.]]>
      </description-html>
   </data-object>
   <data-object name="DvsPortLinkUpEvent"
      type-id="vim.event.DvsPortLinkUpEvent"
      vmodl-name="vim.event.DvsPortLinkUpEvent"
      version-id-ref="vim.version.version5"
      base-type-id="vim.event.DvsEvent"
      >
      <description-html>
         <![CDATA[A port of which link status is changed to up in the distributed
  virtual switch.]]>
      </description-html>
            <property name="portKey" type-id-ref="java.lang.String"
      vmodl-name="portKey"
      >
      <description-html>
         <![CDATA[The port key.]]>
      </description-html>
      </property>

            <property name="runtimeInfo" type-id-ref="vim.dvs.DistributedVirtualPort.RuntimeInfo"
      vmodl-name="runtimeInfo"
      version-id-ref="vim.version.version8"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The port runtime information.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DvsGreEncapNetworkRuleAction"
      type-id="vim.dvs.TrafficRule.GreAction"
      vmodl-name="vim.dvs.TrafficRule.GreAction"
      enclosing-type-id-ref="vim.dvs.TrafficRule"
      version-id-ref="vim.version.version9"
      base-type-id="vim.dvs.TrafficRule.Action"
      >
      <description-html>
         <![CDATA[This class defines network rule action to GRE Encapsulate a packet.]]>
      </description-html>
            <property name="encapsulationIp" type-id-ref="vim.SingleIp"
      vmodl-name="encapsulationIp"
      >
      <description-html>
         <![CDATA[Single IP address. Only IPv4 is supported for vSphere API 5.5.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="GuestFileAttributes"
      type-id="vim.vm.guest.FileManager.FileAttributes"
      vmodl-name="vim.vm.guest.FileManager.FileAttributes"
      enclosing-type-id-ref="vim.vm.guest.FileManager"
      version-id-ref="vim.version.version7"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Different attributes for a guest file.
 <p>
 <ul>
    <li> Check <a href="vim.vm.guest.FileManager.PosixFileAttributes.html">GuestPosixFileAttributes</a>
         for Posix guest files.</li>
    <li> Check <a href="vim.vm.guest.FileManager.WindowsFileAttributes.html">GuestWindowsFileAttributes</a>
         for Windows guest files.</li>
 </ul>]]>
      </description-html>
            <property name="modificationTime" type-id-ref="vmodl.DateTime"
      vmodl-name="modificationTime"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The date and time the file was last modified.
 If this property is not specified when passing a
 <a href="vim.vm.guest.FileManager.FileAttributes.html">GuestFileAttributes</a> object to
 <a href="vim.vm.guest.FileManager.html#initiateFileTransferToGuest">InitiateFileTransferToGuest</a>,
 the default value will be the time when the file is created inside the
 guest.]]>
      </description-html>
      </property>

            <property name="accessTime" type-id-ref="vmodl.DateTime"
      vmodl-name="accessTime"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The date and time the file was last accessed.
 If this property is not specified when passing a
 <a href="vim.vm.guest.FileManager.FileAttributes.html">GuestFileAttributes</a> object to
 <a href="vim.vm.guest.FileManager.html#initiateFileTransferToGuest">InitiateFileTransferToGuest</a>,
 the default value will be the time when the file is created inside the
 guest.]]>
      </description-html>
      </property>

            <property name="symlinkTarget" type-id-ref="java.lang.String"
      vmodl-name="symlinkTarget"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The target for the file if it's a symbolic link.
 This is currently only set for Linux guest operating systems,
 but may be supported in the
 future on Windows guest operating systems that support symbolic links.
 This property gives information about files when returned from
 <a href="vim.vm.guest.FileManager.html#listFiles">ListFilesInGuest</a> or
 <a href="vim.vm.guest.FileManager.html#initiateFileTransferFromGuest">InitiateFileTransferFromGuest</a>
 as part of a <a href="vim.vm.guest.FileManager.FileAttributes.html">GuestFileAttributes</a> object.
 This property will be ignored when passing a
 <a href="vim.vm.guest.FileManager.FileAttributes.html">GuestFileAttributes</a> object to
 <a href="vim.vm.guest.FileManager.html#initiateFileTransferToGuest">InitiateFileTransferToGuest</a> or
 <a href="vim.vm.guest.FileManager.html#changeFileAttributes">ChangeFileAttributesInGuest</a>.

 If the file is a symbolic link, then the attributes of the target
 are returned, not those of the symbolic link.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VmResumingEvent"
      type-id="vim.event.VmResumingEvent"
      vmodl-name="vim.event.VmResumingEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.VmEvent"
      >
      <description-html>
         <![CDATA[This event records a virtual machine resuming.]]>
      </description-html>
   </data-object>
   <data-object name="AlarmScriptCompleteEvent"
      type-id="vim.event.AlarmScriptCompleteEvent"
      vmodl-name="vim.event.AlarmScriptCompleteEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.AlarmEvent"
      >
      <description-html>
         <![CDATA[This event records the completion of an alarm-triggered script.]]>
      </description-html>
            <property name="entity" type-id-ref="vim.event.ManagedEntityEventArgument"
      vmodl-name="entity"
      >
      <description-html>
         <![CDATA[The entity with which the alarm is registered.]]>
      </description-html>
      </property>

            <property name="script" type-id-ref="java.lang.String"
      vmodl-name="script"
      >
      <description-html>
         <![CDATA[The script triggered by the alarm.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ClusterDrsFaultsFaultsByVirtualDisk"
      type-id="vim.cluster.DrsFaults.FaultsByVirtualDisk"
      vmodl-name="vim.cluster.DrsFaults.FaultsByVirtualDisk"
      enclosing-type-id-ref="vim.cluster.DrsFaults"
      version-id-ref="vim.version.version7"
      base-type-id="vim.cluster.DrsFaults.FaultsByVm"
      >
      <description-html>
         <![CDATA[The faults generated by storage DRS when it tries to move a virtual disk.
 <p>]]>
      </description-html>
            <property name="disk" type-id-ref="vim.vm.device.VirtualDiskId"
      vmodl-name="disk"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The virtual disk that storage DRS was trying to migrate when it
 generated the faults. If this property is NULL, the fault is not
 associated with a particular virtual disk.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="GuestProcessInfo"
      type-id="vim.vm.guest.ProcessManager.ProcessInfo"
      vmodl-name="vim.vm.guest.ProcessManager.ProcessInfo"
      enclosing-type-id-ref="vim.vm.guest.ProcessManager"
      version-id-ref="vim.version.version7"
      base-type-id="vmodl.DynamicData"
      >
            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      >
      <description-html>
         <![CDATA[The process name]]>
      </description-html>
      </property>

            <property name="pid" type-id-ref="LONG"
      vmodl-name="pid"
      >
      <description-html>
         <![CDATA[The process ID]]>
      </description-html>
      </property>

            <property name="owner" type-id-ref="java.lang.String"
      vmodl-name="owner"
      >
      <description-html>
         <![CDATA[The process owner]]>
      </description-html>
      </property>

            <property name="cmdLine" type-id-ref="java.lang.String"
      vmodl-name="cmdLine"
      >
      <description-html>
         <![CDATA[The full command line]]>
      </description-html>
      </property>

            <property name="startTime" type-id-ref="vmodl.DateTime"
      vmodl-name="startTime"
      >
      <description-html>
         <![CDATA[The start time of the process]]>
      </description-html>
      </property>

            <property name="endTime" type-id-ref="vmodl.DateTime"
      vmodl-name="endTime"
      is-optional="true"
      >
      <description-html>
         <![CDATA[If the process was started using
 <a href="vim.vm.guest.ProcessManager.html#startProgram">StartProgramInGuest</a>
 then the process completion time will be available if
 queried within 5 minutes after it completes.]]>
      </description-html>
      </property>

            <property name="exitCode" type-id-ref="INT"
      vmodl-name="exitCode"
      is-optional="true"
      >
      <description-html>
         <![CDATA[If the process was started using
 <a href="vim.vm.guest.ProcessManager.html#startProgram">StartProgramInGuest</a>
 then the process exit code will be available if
 queried within 5 minutes after it completes.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualEthernetCardResourceAllocation"
      type-id="vim.vm.device.VirtualEthernetCard.ResourceAllocation"
      vmodl-name="vim.vm.device.VirtualEthernetCard.ResourceAllocation"
      enclosing-type-id-ref="vim.vm.device.VirtualEthernetCard"
      version-id-ref="vim.version.version10"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This class specifies the network resource requirement.]]>
      </description-html>
            <property name="reservation" type-id-ref="LONG"
      vmodl-name="reservation"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Amount of network bandwidth that is guaranteed to the
  virtual network adapter.
  If utilization is less than reservation, the resource can be used by
  other virtual network adapters. Reservation is not allowed to exceed the
  value of <a href="vim.vm.device.VirtualEthernetCard.ResourceAllocation.html#limit">limit</a> if
  <a href="vim.vm.device.VirtualEthernetCard.ResourceAllocation.html#limit">limit</a> is set.
  Units in Mbits/sec.]]>
      </description-html>
      </property>

            <property name="share" type-id-ref="vim.SharesInfo"
      vmodl-name="share"
      >
      <description-html>
         <![CDATA[Network share. The value is used as a relative weight in
 competing for shared bandwidth, in case of resource contention.]]>
      </description-html>
      </property>

            <property name="limit" type-id-ref="LONG"
      vmodl-name="limit"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The bandwidth limit for the virtual network adapter.
 The utilization of the virtual network adapter will not
 exceed this limit, even if there are available resources.
 To clear the value of this property and revert it to unset,
 set the vaule to "-1" in an update operation.
 Units in Mbits/sec.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="AlarmFilterSpec"
      type-id="vim.alarm.AlarmFilterSpec"
      vmodl-name="vim.alarm.AlarmFilterSpec"
      version-id-ref="vim.version.version12"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Alarm Filter used to filter/group alarms.]]>
      </description-html>
            <property name="status" type-id-ref="vim.ManagedEntity.Status"
      vmodl-name="status"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Status array which could be used to filter alarms according to their
 triggered state.

 If all triggered alarms need to be matched an empty array or
 ManagedEntity::red and ManagedEntity::yellow could be filled in the array.]]>
      </description-html>
      </property>

            <property name="typeEntity" type-id-ref="java.lang.String"
      vmodl-name="typeEntity"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Use values from <a href="vim.alarm.AlarmFilterSpec.AlarmTypeByEntity.html">AlarmFilterSpecAlarmTypeByEntity</a>]]>
      </description-html>
      </property>

            <property name="typeTrigger" type-id-ref="java.lang.String"
      vmodl-name="typeTrigger"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Use values from <a href="vim.alarm.AlarmFilterSpec.AlarmTypeByTrigger.html">AlarmFilterSpecAlarmTypeByTrigger</a>]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.alarm.AlarmFilterSpec.AlarmTypeByEntity</nested-type-id-ref>
      <nested-type-id-ref>vim.alarm.AlarmFilterSpec.AlarmTypeByTrigger</nested-type-id-ref>
   </data-object>
   <data-object name="VirtualMachineProfileDetailsDiskProfileDetails"
      type-id="vim.vm.ProfileDetails.DiskProfileDetails"
      vmodl-name="vim.vm.ProfileDetails.DiskProfileDetails"
      enclosing-type-id-ref="vim.vm.ProfileDetails"
      version-id-ref="vim.version.version12"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Details of the policies associated with Virtual Disks.]]>
      </description-html>
            <property name="diskId" type-id-ref="INT"
      vmodl-name="diskId"
      >
      <description-html>
         <![CDATA[Virtual disk ID.]]>
      </description-html>
      </property>

            <property name="profile" type-id-ref="vim.vm.ProfileSpec"
      vmodl-name="profile"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Storage profile associated with the Virtual Disk.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualEthernetCardLegacyNetworkBackingOption"
      type-id="vim.vm.device.VirtualEthernetCardOption.LegacyNetworkBackingOption"
      vmodl-name="vim.vm.device.VirtualEthernetCardOption.LegacyNetworkBackingOption"
      enclosing-type-id-ref="vim.vm.device.VirtualEthernetCardOption"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.device.VirtualDeviceOption.DeviceBackingOption"
      >
      <description-html>
         <![CDATA[This data object type contains the options
  for using a legacy virtual network card backing data object type.]]>
      </description-html>
      <nested-type-id-ref>vim.vm.device.VirtualEthernetCardOption.LegacyNetworkBackingOption.LegacyNetworkDeviceName</nested-type-id-ref>
   </data-object>
   <data-object name="HostDiagnosticPartitionCreateSpec"
      type-id="vim.host.DiagnosticPartition.CreateSpec"
      vmodl-name="vim.host.DiagnosticPartition.CreateSpec"
      enclosing-type-id-ref="vim.host.DiagnosticPartition"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The diagnostic create specification is used by the system to create a new
  diagnostic partition on a SCSI disk.]]>
      </description-html>
            <property name="storageType" type-id-ref="java.lang.String"
      vmodl-name="storageType"
      >
      <description-html>
         <![CDATA[Indicates the storage type where the diagnostic partition
  will be created.<br>See <a href="vim.host.DiagnosticPartition.StorageType.html">DiagnosticPartitionStorageType</a><br>]]>
      </description-html>
      </property>

            <property name="diagnosticType" type-id-ref="java.lang.String"
      vmodl-name="diagnosticType"
      >
      <description-html>
         <![CDATA[Indicates the type of the diagnostic partition to be created.<br>See <a href="vim.host.DiagnosticPartition.DiagnosticType.html">DiagnosticPartitionType</a><br>]]>
      </description-html>
      </property>

            <property name="id" type-id-ref="vim.host.ScsiDisk.Partition"
      vmodl-name="id"
      >
      <description-html>
         <![CDATA[Diagnostic partition identification information.]]>
      </description-html>
      </property>

            <property name="partition" type-id-ref="vim.host.DiskPartitionInfo.Specification"
      vmodl-name="partition"
      >
      <description-html>
         <![CDATA[Partitioning specification.]]>
      </description-html>
      </property>

            <property name="active" type-id-ref="BOOLEAN"
      vmodl-name="active"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates if the created diagnostic partition should be made the
  active diagnostic partition.  If not supplied, the system will
  decide whether or not the created specification is active.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostVirtualSwitch"
      type-id="vim.host.VirtualSwitch"
      vmodl-name="vim.host.VirtualSwitch"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The virtual switch is a software entity to which multiple virtual network
  adapters can connect to create a virtual network.  It can also be
  bridged to a physical network.]]>
      </description-html>
            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      >
      <description-html>
         <![CDATA[The name of the virtual switch.
  Maximum length is 32 characters.]]>
      </description-html>
      </property>

            <property name="key" type-id-ref="java.lang.String"
      vmodl-name="key"
      >
      <description-html>
         <![CDATA[The virtual switch key.]]>
      </description-html>
      </property>

            <property name="numPorts" type-id-ref="INT"
      vmodl-name="numPorts"
      >
      <description-html>
         <![CDATA[The number of ports that this virtual switch currently has.]]>
      </description-html>
      </property>

            <property name="numPortsAvailable" type-id-ref="INT"
      vmodl-name="numPortsAvailable"
      >
      <description-html>
         <![CDATA[The number of ports that are available on this virtual switch.  There
  are a number of networking services that utilize a port on the virtual
  switch and are not accounted for in the Port array of a PortGroup.  For
  example, each physical NIC attached to a virtual switch consumes one
  port.  This property should be used when attempting to implement
  admission control for new services attaching to virtual switches.]]>
      </description-html>
      </property>

            <property name="mtu" type-id-ref="INT"
      vmodl-name="mtu"
      version-id-ref="vim.version.version2"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The maximum transmission unit (MTU) associated with this virtual switch
  in bytes.]]>
      </description-html>
      </property>

            <property name="portgroup" type-id-ref="vim.host.PortGroup"
      vmodl-name="portgroup"
      is-array="true"
      is-optional="true"
      is-link="true"
      >
      <description-html>
         <![CDATA[The list of port groups configured for this virtual switch.]]>
      </description-html>
      </property>

            <property name="pnic" type-id-ref="vim.host.PhysicalNic"
      vmodl-name="pnic"
      is-array="true"
      is-optional="true"
      is-link="true"
      >
      <description-html>
         <![CDATA[The set of physical network adapters associated with this bridge.]]>
      </description-html>
      </property>

            <property name="spec" type-id-ref="vim.host.VirtualSwitch.Specification"
      vmodl-name="spec"
      >
      <description-html>
         <![CDATA[The specification of a PortGroup.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.host.VirtualSwitch.Bridge</nested-type-id-ref>
      <nested-type-id-ref>vim.host.VirtualSwitch.AutoBridge</nested-type-id-ref>
      <nested-type-id-ref>vim.host.VirtualSwitch.SimpleBridge</nested-type-id-ref>
      <nested-type-id-ref>vim.host.VirtualSwitch.BondBridge</nested-type-id-ref>
      <nested-type-id-ref>vim.host.VirtualSwitch.BeaconConfig</nested-type-id-ref>
      <nested-type-id-ref>vim.host.VirtualSwitch.Specification</nested-type-id-ref>
      <nested-type-id-ref>vim.host.VirtualSwitch.Config</nested-type-id-ref>
   </data-object>
   <data-object name="ClusterEVCManagerCheckResult"
      type-id="vim.cluster.EVCManager.CheckResult"
      vmodl-name="vim.cluster.EVCManager.CheckResult"
      enclosing-type-id-ref="vim.cluster.EVCManager"
      version-id-ref="vim.version.version10"
      base-type-id="vmodl.DynamicData"
      >
            <property name="evcModeKey" type-id-ref="java.lang.String"
      vmodl-name="evcModeKey"
      >
      <description-html>
         <![CDATA[The EVC mode being tested for legal application.]]>
      </description-html>
      </property>

            <property name="error" type-id-ref="vmodl.LocalizedMethodFault"
      vmodl-name="error"
      >
      <description-html>
         <![CDATA[A problem that would prevent applying the desired EVC mode.]]>
      </description-html>
      </property>

            <property name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The set of hosts which would generate the fault described by the
  <a href="vim.cluster.EVCManager.CheckResult.html#error">error</a> property when the desired EVC mode is applied.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="AuthorizationDescription"
      type-id="vim.AuthorizationDescription"
      vmodl-name="vim.AuthorizationDescription"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Static strings for authorization.]]>
      </description-html>
            <property name="privilege" type-id-ref="vim.ElementDescription"
      vmodl-name="privilege"
      is-array="true"
      >
      <description-html>
         <![CDATA[Description of the privilege.]]>
      </description-html>
      </property>

            <property name="privilegeGroup" type-id-ref="vim.ElementDescription"
      vmodl-name="privilegeGroup"
      is-array="true"
      >
      <description-html>
         <![CDATA[Description of a category of similar privileges, grouped
  together for convenience.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="UserSearchResult"
      type-id="vim.UserSearchResult"
      vmodl-name="vim.UserSearchResult"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[When searching for users, the search results in
  some additional information. This object describes
  the additional information.]]>
      </description-html>
            <property name="principal" type-id-ref="java.lang.String"
      vmodl-name="principal"
      >
      <description-html>
         <![CDATA[Login name of a user or the name of a group. This key is
  the user within the searched domain.]]>
      </description-html>
      </property>

            <property name="fullName" type-id-ref="java.lang.String"
      vmodl-name="fullName"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Full name of the user found by the search, or the description
  of a group, if available.]]>
      </description-html>
      </property>

            <property name="group" type-id-ref="BOOLEAN"
      vmodl-name="group"
      >
      <description-html>
         <![CDATA[If this is true, then the result is a group. If this is false, then the
  result is a user.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="OvfResourceMap"
      type-id="vim.OvfManager.ResourceMap"
      vmodl-name="vim.OvfManager.ResourceMap"
      enclosing-type-id-ref="vim.OvfManager"
      version-id-ref="vim.version.version6"
      is-deprecated="true"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Maps source child entities to destination resource pools
  and resource settings. If a mapping is not specified,
  a child is copied as a direct child of the parent.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 5.1.]]>
      </deprecated-html>
            <property name="source" type-id-ref="java.lang.String"
      vmodl-name="source"
      >
      <description-html>
         <![CDATA[Identifies a source VirtualSystem or VirtualSystemCollection in an OVF
  descriptor. The source cannot be the root VirtualSystem or
  VirtualSystemCollection of the OVF.
  This is a path created by concatenating the OVF ids for each entity, e.g., "vm1",
  "WebTier/vm2", etc.]]>
      </description-html>
      </property>

            <property name="parent" type-id-ref="vim.ResourcePool"
      vmodl-name="parent"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The parent resource pool to use for the entity. This must specify a
  resource pool that is not part of the vApp. If this is specified, a linked
  child (as opposed to a direct child) is created for the vApp.]]>
      </description-html>
      </property>

            <property name="resourceSpec" type-id-ref="vim.ResourceConfigSpec"
      vmodl-name="resourceSpec"
      is-optional="true"
      >
      <description-html>
         <![CDATA[An optional resource configuration for the created entity. If
  not specified, the resource configuration given in the OVF descriptor
  is used.]]>
      </description-html>
      </property>

            <property name="datastore" type-id-ref="vim.Datastore"
      vmodl-name="datastore"
      is-optional="true"
      privilege="Datastore.AllocateSpace"
      >
      <description-html>
         <![CDATA[A client can optionally specify a datastore location in the resource map to
  override the default datastore passed into <a href="vim.OvfManager.html#createImportSpec">CreateImportSpec</a> field.
  This enables importing to different compute resources that do not have shared
  datastores.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DVSRuntimeInfo"
      type-id="vim.DistributedVirtualSwitch.RuntimeInfo"
      vmodl-name="vim.DistributedVirtualSwitch.RuntimeInfo"
      enclosing-type-id-ref="vim.DistributedVirtualSwitch"
      version-id-ref="vim.version.version8"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The <a href="vim.DistributedVirtualSwitch.RuntimeInfo.html">DVSRuntimeInfo</a> data object defines
 runtime information for a vSphere Distributed Switch.]]>
      </description-html>
            <property name="hostMemberRuntime" type-id-ref="vim.dvs.HostMember.RuntimeInfo"
      vmodl-name="hostMemberRuntime"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Runtime information of the hosts that joined the switch.]]>
      </description-html>
      </property>

            <property name="resourceRuntimeInfo" type-id-ref="vim.DistributedVirtualSwitch.ResourceRuntimeInfo"
      vmodl-name="resourceRuntimeInfo"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The bandwidth reservation information for the switch.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualSATAController"
      type-id="vim.vm.device.VirtualSATAController"
      vmodl-name="vim.vm.device.VirtualSATAController"
      version-id-ref="vim.version.version9"
      base-type-id="vim.vm.device.VirtualController"
      >
      <description-html>
         <![CDATA[The VirtualSATAController data object type represents
  a SATA controller in a virtual machine.]]>
      </description-html>
   </data-object>
   <data-object name="FaultTolerancePrimaryConfigInfo"
      type-id="vim.vm.FaultTolerancePrimaryConfigInfo"
      vmodl-name="vim.vm.FaultTolerancePrimaryConfigInfo"
      version-id-ref="vim.version.version5"
      base-type-id="vim.vm.FaultToleranceConfigInfo"
      >
      <description-html>
         <![CDATA[FaultTolerancePrimaryConfigInfo is a data object type containing Fault Tolerance
  settings for a primary virtual machine in a fault tolerance group]]>
      </description-html>
            <property name="secondaries" type-id-ref="vim.VirtualMachine"
      vmodl-name="secondaries"
      is-array="true"
      >
      </property>

   </data-object>
   <data-object name="Event"
      type-id="vim.event.Event"
      vmodl-name="vim.event.Event"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This event is the base data object type from which all events inherit. All event
  objects are data structures that describe events. While event data objects are data
  structures that describe events, event data type documentation may describe what the
  event records, rather than the data structure, itself.]]>
      </description-html>
            <property name="key" type-id-ref="INT"
      vmodl-name="key"
      >
      <description-html>
         <![CDATA[The event ID.]]>
      </description-html>
      </property>

            <property name="chainId" type-id-ref="INT"
      vmodl-name="chainId"
      >
      <description-html>
         <![CDATA[The parent or group ID.]]>
      </description-html>
      </property>

            <property name="createdTime" type-id-ref="vmodl.DateTime"
      vmodl-name="createdTime"
      >
      <description-html>
         <![CDATA[The time the event was created.]]>
      </description-html>
      </property>

            <property name="userName" type-id-ref="java.lang.String"
      vmodl-name="userName"
      >
      <description-html>
         <![CDATA[The user who caused the event.]]>
      </description-html>
      </property>

            <property name="datacenter" type-id-ref="vim.event.DatacenterEventArgument"
      vmodl-name="datacenter"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The Datacenter object of the event.]]>
      </description-html>
      </property>

            <property name="computeResource" type-id-ref="vim.event.ComputeResourceEventArgument"
      vmodl-name="computeResource"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The ComputeResource object of the event.]]>
      </description-html>
      </property>

            <property name="host" type-id-ref="vim.event.HostEventArgument"
      vmodl-name="host"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The Host object of the event.]]>
      </description-html>
      </property>

            <property name="vm" type-id-ref="vim.event.VmEventArgument"
      vmodl-name="vm"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The VirtualMachine object of the event.]]>
      </description-html>
      </property>

            <property name="ds" type-id-ref="vim.event.DatastoreEventArgument"
      vmodl-name="ds"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The Datastore object of the event.]]>
      </description-html>
      </property>

            <property name="net" type-id-ref="vim.event.NetworkEventArgument"
      vmodl-name="net"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The Network object of the event.]]>
      </description-html>
      </property>

            <property name="dvs" type-id-ref="vim.event.DvsEventArgument"
      vmodl-name="dvs"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The DistributedVirtualSwitch object of the event.]]>
      </description-html>
      </property>

            <property name="fullFormattedMessage" type-id-ref="java.lang.String"
      vmodl-name="fullFormattedMessage"
      is-optional="true"
      is-localizable="true"
      >
      <description-html>
         <![CDATA[A formatted text message describing the event. The message may be localized.]]>
      </description-html>
      </property>

            <property name="changeTag" type-id-ref="java.lang.String"
      vmodl-name="changeTag"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The user entered tag to identify the operations and their side effects]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.event.Event.EventSeverity</nested-type-id-ref>
   </data-object>
   <data-object name="HostTpmOptionEventDetails"
      type-id="vim.host.TpmOptionEventDetails"
      vmodl-name="vim.host.TpmOptionEventDetails"
      version-id-ref="vim.version.version8"
      base-type-id="vim.host.TpmEventDetails"
      >
      <description-html>
         <![CDATA[Details of a Trusted Platform Module (TPM) event recording boot-time options.
  <p />
  The boot-time options set on the system are packaged into a file that is supplied
  to the kernel at boot time. The boot options may be a string of key=value pairs
  (possibly separated by a new line) or a blob of arbitrary data.]]>
      </description-html>
            <property name="optionsFileName" type-id-ref="java.lang.String"
      vmodl-name="optionsFileName"
      >
      <description-html>
         <![CDATA[Name of the file containing the boot options.]]>
      </description-html>
      </property>

            <property name="bootOptions" type-id-ref="BYTE"
      vmodl-name="bootOptions"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Options set by the boot option package.
  <p />
  This array exposes the raw contents of the settings file (or files) that were
  passed to kernel during the boot up process, and, therefore, should be treated
  accordingly.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="MigrationErrorEvent"
      type-id="vim.event.MigrationErrorEvent"
      vmodl-name="vim.event.MigrationErrorEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.MigrationEvent"
      >
      <description-html>
         <![CDATA[A migration error.]]>
      </description-html>
   </data-object>
   <data-object name="HostMemberRuntimeInfo"
      type-id="vim.dvs.HostMember.RuntimeInfo"
      vmodl-name="vim.dvs.HostMember.RuntimeInfo"
      enclosing-type-id-ref="vim.dvs.HostMember"
      version-id-ref="vim.version.version8"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The <a href="vim.dvs.HostMember.RuntimeInfo.html">HostMemberRuntimeInfo</a> data object
 contains healthcheck and status information about a host
 member of a distributed virtual switch.]]>
      </description-html>
            <property name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      >
      <description-html>
         <![CDATA[The host.]]>
      </description-html>
      </property>

            <property name="status" type-id-ref="java.lang.String"
      vmodl-name="status"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Host proxy switch status. See
  <a href="vim.dvs.HostMember.HostComponentState.html">HostComponentState</a> for valid values.
  This property replaces the deprecated
  <a href="vim.dvs.HostMember.html">DistributedVirtualSwitchHostMember</a>.<a href="vim.dvs.HostMember.html#status">status</a>.]]>
      </description-html>
      </property>

            <property name="statusDetail" type-id-ref="java.lang.String"
      vmodl-name="statusDetail"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Additional information regarding the current membership status of the host.
 This property replaces the deprecated
 <a href="vim.dvs.HostMember.html">DistributedVirtualSwitchHostMember</a>.<a href="vim.dvs.HostMember.html#statusDetail">statusDetail</a>.]]>
      </description-html>
      </property>

            <property name="nsxtStatus" type-id-ref="java.lang.String"
      vmodl-name="nsxtStatus"
      version-id-ref="vim.version.v7_0"
      is-optional="true"
      >
      <description-html>
         <![CDATA[NSX-T component status.]]>
      </description-html>
      </property>

            <property name="nsxtStatusDetail" type-id-ref="java.lang.String"
      vmodl-name="nsxtStatusDetail"
      version-id-ref="vim.version.v7_0"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Additional information regarding the NSX-T component status.]]>
      </description-html>
      </property>

            <property name="healthCheckResult" type-id-ref="vim.dvs.HostMember.HealthCheckResult"
      vmodl-name="healthCheckResult"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Health check result for the host that joined the distributed virtual switch.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="RoleRemovedEvent"
      type-id="vim.event.RoleRemovedEvent"
      vmodl-name="vim.event.RoleRemovedEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.RoleEvent"
      >
      <description-html>
         <![CDATA[This class records the removal of a role.]]>
      </description-html>
   </data-object>
   <data-object name="VmPoweringOnWithCustomizedDVPortEvent"
      type-id="vim.event.VmPoweringOnWithCustomizedDVPortEvent"
      vmodl-name="vim.event.VmPoweringOnWithCustomizedDVPortEvent"
      version-id-ref="vim.version.version5"
      base-type-id="vim.event.VmEvent"
      >
      <description-html>
         <![CDATA[This event records when a virtual machine was powering on using
  DVPorts with port level configuration, which might be different
  from the DVportgroup.]]>
      </description-html>
            <property name="vnic" type-id-ref="vim.event.VnicPortArgument"
      vmodl-name="vnic"
      is-array="true"
      >
      <description-html>
         <![CDATA[The list of Virtual NIC that were using the DVports.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostProfilesEntityCustomizations"
      type-id="vim.profile.host.ProfileManager.EntityCustomizations"
      vmodl-name="vim.profile.host.ProfileManager.EntityCustomizations"
      enclosing-type-id-ref="vim.profile.host.ProfileManager"
      version-id-ref="vim.version.version11"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Data type used to contain a representation of host or cluster customization
 data in a <a href="vim.profile.host.ProfileManager.CustomizationData.html">HostProfilesCustomizationData</a> object.
 Subclasses of this must be defined to provide host or cluster customization
 data in specific formats.]]>
      </description-html>
   </data-object>
   <data-object name="FolderEventArgument"
      type-id="vim.event.FolderEventArgument"
      vmodl-name="vim.event.FolderEventArgument"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.EntityEventArgument"
      >
      <description-html>
         <![CDATA[The event argument is a Folder object.]]>
      </description-html>
            <property name="folder" type-id-ref="vim.Folder"
      vmodl-name="folder"
      >
      <description-html>
         <![CDATA[The Folder object.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DVSFeatureCapability"
      type-id="vim.DistributedVirtualSwitch.FeatureCapability"
      vmodl-name="vim.DistributedVirtualSwitch.FeatureCapability"
      enclosing-type-id-ref="vim.DistributedVirtualSwitch"
      version-id-ref="vim.version.version6"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The <a href="vim.DistributedVirtualSwitch.FeatureCapability.html">DVSFeatureCapability</a> data object
 represents the capabilities supported by a
 <a href="vim.DistributedVirtualSwitch.html">DistributedVirtualSwitch</a>. These properties are read-only with
 the exception of
 <a href="vim.DistributedVirtualSwitch.FeatureCapability.html#vmDirectPathGen2Supported">vmDirectPathGen2Supported</a>.]]>
      </description-html>
            <property name="networkResourceManagementSupported" type-id-ref="BOOLEAN"
      vmodl-name="networkResourceManagementSupported"
      is-deprecated="true"
      >
      <description-html>
         <![CDATA[Indicates whether network I/O control is
  supported on the vSphere Distributed Switch.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 5.0, use
  <code>networkResourceManagementCapability</code>.<a href="vim.DistributedVirtualSwitch.NetworkResourceManagementCapability.html#networkResourceManagementSupported">networkResourceManagementSupported</a>.]]>
      </deprecated-html>
      </property>

            <property name="vmDirectPathGen2Supported" type-id-ref="BOOLEAN"
      vmodl-name="vmDirectPathGen2Supported"
      >
      <description-html>
         <![CDATA[Indicates whether VMDirectPath Gen 2 is supported on the
 distributed virtual switch. See
 <a href="vim.host.Capability.html">HostCapability</a>.<a href="vim.host.Capability.html#vmDirectPathGen2Supported">vmDirectPathGen2Supported</a>
 and <a href="vim.host.PhysicalNic.html">PhysicalNic</a>.<a href="vim.host.PhysicalNic.html#vmDirectPathGen2Supported">vmDirectPathGen2Supported</a>.
 <p>
 For a third-party distributed switch implementation, you can
 specify this property during switch creation or when you call the
 <a href="vim.DistributedVirtualSwitch.html#updateCapability">UpdateDvsCapability</a> method.
  <p>
  VMDirectPath Gen 2 is supported in
  vSphere Distributed Switch Version 4.1 or later.]]>
      </description-html>
      </property>

            <property name="nicTeamingPolicy" type-id-ref="java.lang.String"
      vmodl-name="nicTeamingPolicy"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The available teaming modes for the vSphere Distributed Switch. The
  value can be one or more of
  <a href="vim.DistributedVirtualSwitch.NicTeamingPolicyMode.html">DistributedVirtualSwitchNicTeamingPolicyMode</a>.]]>
      </description-html>
      </property>

            <property name="networkResourcePoolHighShareValue" type-id-ref="INT"
      vmodl-name="networkResourcePoolHighShareValue"
      is-deprecated="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[This is the value for vim.SharesInfo.Level#high
  in <a href="vim.dvs.NetworkResourcePool.AllocationInfo.html#shares">shares</a>. This
  implicitly defines the legal range of share values to be between 1 and this.
  This also defines values for other level types, such as
  vim.SharesInfo.Level#normal  being one half of this value and
  vim.SharesInfo.Level#low being one fourth of this value.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 5.0, use
  <code>networkResourceManagementCapability</code>.<a href="vim.DistributedVirtualSwitch.NetworkResourceManagementCapability.html#networkResourcePoolHighShareValue">networkResourcePoolHighShareValue</a>.]]>
      </deprecated-html>
      </property>

            <property name="networkResourceManagementCapability" type-id-ref="vim.DistributedVirtualSwitch.NetworkResourceManagementCapability"
      vmodl-name="networkResourceManagementCapability"
      version-id-ref="vim.version.version7"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Network resource management capabilities supported by a
  distributed virtual switch.]]>
      </description-html>
      </property>

            <property name="healthCheckCapability" type-id-ref="vim.DistributedVirtualSwitch.HealthCheckFeatureCapability"
      vmodl-name="healthCheckCapability"
      version-id-ref="vim.version.version8"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Health check capabilities supported by a <a href="vim.dvs.VmwareDistributedVirtualSwitch.html">VmwareDistributedVirtualSwitch</a>.]]>
      </description-html>
      </property>

            <property name="rollbackCapability" type-id-ref="vim.DistributedVirtualSwitch.RollbackCapability"
      vmodl-name="rollbackCapability"
      version-id-ref="vim.version.version8"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Host rollback capability.
 If <code>rollbackCapability</code>.<a href="vim.DistributedVirtualSwitch.RollbackCapability.html#rollbackSupported">rollbackSupported</a>
 is true, network operations that disconnect the the host are rolled back.]]>
      </description-html>
      </property>

            <property name="backupRestoreCapability" type-id-ref="vim.DistributedVirtualSwitch.BackupRestoreCapability"
      vmodl-name="backupRestoreCapability"
      version-id-ref="vim.version.version8"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Backup, restore, and rollback capabilities. Backup and restore
 are supported only for <a href="vim.dvs.VmwareDistributedVirtualSwitch.html">VmwareDistributedVirtualSwitch</a>.
 Rollback is supported for <a href="vim.dvs.VmwareDistributedVirtualSwitch.html">VmwareDistributedVirtualSwitch</a>
 and <a href="vim.dvs.DistributedVirtualPortgroup.html">DistributedVirtualPortgroup</a>.
 For information about backup and restore, see the
 <a href="vim.dvs.DistributedVirtualSwitchManager.html">DistributedVirtualSwitchManager</a> methods
 <a href="vim.dvs.DistributedVirtualSwitchManager.html#exportEntity">DVSManagerExportEntity_Task</a> and
 <a href="vim.dvs.DistributedVirtualSwitchManager.html#importEntity">DVSManagerImportEntity_Task</a>.
 For information about rollback, see the
 <a href="vim.DistributedVirtualSwitch.html">DistributedVirtualSwitch</a>.<a href="vim.DistributedVirtualSwitch.html#rollback">DVSRollback_Task</a>
 and <a href="vim.dvs.DistributedVirtualPortgroup.html">DistributedVirtualPortgroup</a>.<a href="vim.dvs.DistributedVirtualPortgroup.html#rollback">DVPortgroupRollback_Task</a>
 methods.]]>
      </description-html>
      </property>

            <property name="networkFilterSupported" type-id-ref="BOOLEAN"
      vmodl-name="networkFilterSupported"
      version-id-ref="vim.version.version9"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates whether Network Filter feature is
  supported in vSphere Distributed Switch.]]>
      </description-html>
      </property>

            <property name="macLearningSupported" type-id-ref="BOOLEAN"
      vmodl-name="macLearningSupported"
      version-id-ref="vim.version.version12"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates whether MAC learning feature is
  supported in vSphere Distributed Switch.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DistributedVirtualSwitchKeyedOpaqueBlob"
      type-id="vim.dvs.KeyedOpaqueBlob"
      vmodl-name="vim.dvs.KeyedOpaqueBlob"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This class defines a data structure to hold opaque binary data
  identified by a key.]]>
      </description-html>
            <property name="key" type-id-ref="java.lang.String"
      vmodl-name="key"
      >
      <description-html>
         <![CDATA[A key that identifies the opaque binary blob.]]>
      </description-html>
      </property>

            <property name="opaqueData" type-id-ref="java.lang.String"
      vmodl-name="opaqueData"
      >
      <description-html>
         <![CDATA[The opaque data. It is recommended that base64 encoding be used for binary
  data.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostFirewallRulesetRulesetSpec"
      type-id="vim.host.Ruleset.RulesetSpec"
      vmodl-name="vim.host.Ruleset.RulesetSpec"
      enclosing-type-id-ref="vim.host.Ruleset"
      version-id-ref="vim.version.version7"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The ruleset update specification.]]>
      </description-html>
            <property name="allowedHosts" type-id-ref="vim.host.Ruleset.IpList"
      vmodl-name="allowedHosts"
      >
      <description-html>
         <![CDATA[The list of allowed ip addresses]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DistributedVirtualSwitchManagerHostContainerFilter"
      type-id="vim.dvs.DistributedVirtualSwitchManager.HostContainerFilter"
      vmodl-name="vim.dvs.DistributedVirtualSwitchManager.HostContainerFilter"
      enclosing-type-id-ref="vim.dvs.DistributedVirtualSwitchManager"
      version-id-ref="vim.version.version6"
      base-type-id="vim.dvs.DistributedVirtualSwitchManager.HostDvsFilterSpec"
      >
      <description-html>
         <![CDATA[Check host compatibility against all hosts in this
 <a href="vim.dvs.DistributedVirtualSwitchManager.HostContainer.html">DistributedVirtualSwitchManagerHostContainer</a>]]>
      </description-html>
            <property name="hostContainer" type-id-ref="vim.dvs.DistributedVirtualSwitchManager.HostContainer"
      vmodl-name="hostContainer"
      >
      <description-html>
         <![CDATA[Container of hosts that are part of the filter.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostTpmAttestationInfo"
      type-id="vim.host.TpmAttestationInfo"
      vmodl-name="vim.host.TpmAttestationInfo"
      version-id-ref="vim.version.version12"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object type represents result of TPM attestation.]]>
      </description-html>
            <property name="time" type-id-ref="vmodl.DateTime"
      vmodl-name="time"
      >
      <description-html>
         <![CDATA[Time of TPM attestation.]]>
      </description-html>
      </property>

            <property name="status" type-id-ref="vim.host.TpmAttestationInfo.AcceptanceStatus"
      vmodl-name="status"
      >
      <description-html>
         <![CDATA[Attestation status. Valid values are enumerated by the
 <a href="vim.host.TpmAttestationInfo.AcceptanceStatus.html">HostTpmAttestationInfoAcceptanceStatus</a> type.]]>
      </description-html>
      </property>

            <property name="message" type-id-ref="vmodl.LocalizableMessage"
      vmodl-name="message"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Message explaining TPM attestation failure.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.host.TpmAttestationInfo.AcceptanceStatus</nested-type-id-ref>
   </data-object>
   <data-object name="VmConfigMissingEvent"
      type-id="vim.event.VmConfigMissingEvent"
      vmodl-name="vim.event.VmConfigMissingEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.VmEvent"
      >
      <description-html>
         <![CDATA[This event records if the configuration file can not be found.]]>
      </description-html>
   </data-object>
   <data-object name="HostIpConfigIpV6AddressConfiguration"
      type-id="vim.host.IpConfig.IpV6AddressConfiguration"
      vmodl-name="vim.host.IpConfig.IpV6AddressConfiguration"
      enclosing-type-id-ref="vim.host.IpConfig"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The ipv6 address configuration]]>
      </description-html>
            <property name="ipV6Address" type-id-ref="vim.host.IpConfig.IpV6Address"
      vmodl-name="ipV6Address"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Ipv6 adrresses configured on the interface. The global addresses can be configured
 through DHCP, stateless or manual configuration. Link local addresses can be
 only configured with the origin set to
 IpConfig.IpV6AddressConfigType#other.]]>
      </description-html>
      </property>

            <property name="autoConfigurationEnabled" type-id-ref="BOOLEAN"
      vmodl-name="autoConfigurationEnabled"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Specify if IPv6 address and routing information information
 be enabled or not as per RFC 2462.]]>
      </description-html>
      </property>

            <property name="dhcpV6Enabled" type-id-ref="BOOLEAN"
      vmodl-name="dhcpV6Enabled"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The flag to indicate whether or not DHCP (dynamic host
  control protocol) is enabled to obtain an ipV6 address.
  If this property is set to true, an ipV6 address is configured through dhcpV6.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostActiveDirectoryInfo"
      type-id="vim.host.ActiveDirectoryInfo"
      vmodl-name="vim.host.ActiveDirectoryInfo"
      version-id-ref="vim.version.version6"
      base-type-id="vim.host.DirectoryStoreInfo"
      >
      <description-html>
         <![CDATA[The <a href="vim.host.ActiveDirectoryInfo.html">HostActiveDirectoryInfo</a> data object describes ESX host
  membership in an Active Directory domain. If the
  <a href="vim.host.AuthenticationStoreInfo.html">HostAuthenticationStoreInfo</a>.<a href="vim.host.AuthenticationStoreInfo.html#enabled">enabled</a>
  property is <code>True</code>, the host is a member of a domain
  and the ESX Server will set the domain information properties.]]>
      </description-html>
            <property name="joinedDomain" type-id-ref="java.lang.String"
      vmodl-name="joinedDomain"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The domain that this host joined.]]>
      </description-html>
      </property>

            <property name="trustedDomain" type-id-ref="java.lang.String"
      vmodl-name="trustedDomain"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of domains with which the <code>joinedDomain</code> has a trust.
  The <code>joinedDomain</code> is not included in the
  <code>trustedDomain</code> list.]]>
      </description-html>
      </property>

            <property name="domainMembershipStatus" type-id-ref="java.lang.String"
      vmodl-name="domainMembershipStatus"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Health information about the domain membership.
  See <a href="vim.host.ActiveDirectoryInfo.DomainMembershipStatus.html">HostActiveDirectoryInfoDomainMembershipStatus</a>.]]>
      </description-html>
      </property>

            <property name="smartCardAuthenticationEnabled" type-id-ref="BOOLEAN"
      vmodl-name="smartCardAuthenticationEnabled"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Whether local smart card authentication is enabled.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.host.ActiveDirectoryInfo.DomainMembershipStatus</nested-type-id-ref>
   </data-object>
   <data-object name="PrivilegePolicyDef"
      type-id="vim.PrivilegePolicyDef"
      vmodl-name="vim.PrivilegePolicyDef"
      version-id-ref="vim.version.version2"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Describes a basic privilege policy.]]>
      </description-html>
            <property name="createPrivilege" type-id-ref="java.lang.String"
      vmodl-name="createPrivilege"
      >
      <description-html>
         <![CDATA[Name of privilege required for creation.]]>
      </description-html>
      </property>

            <property name="readPrivilege" type-id-ref="java.lang.String"
      vmodl-name="readPrivilege"
      >
      <description-html>
         <![CDATA[Name of privilege required for reading.]]>
      </description-html>
      </property>

            <property name="updatePrivilege" type-id-ref="java.lang.String"
      vmodl-name="updatePrivilege"
      >
      <description-html>
         <![CDATA[Name of privilege required for updating.]]>
      </description-html>
      </property>

            <property name="deletePrivilege" type-id-ref="java.lang.String"
      vmodl-name="deletePrivilege"
      >
      <description-html>
         <![CDATA[Name of privilege required for deleting.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="LicenseServerSource"
      type-id="vim.LicenseManager.LicenseServer"
      vmodl-name="vim.LicenseManager.LicenseServer"
      enclosing-type-id-ref="vim.LicenseManager"
      version-id-ref="vim.version.version1"
      is-deprecated="true"
      base-type-id="vim.LicenseManager.LicenseSource"
      >
      <description-html>
         <![CDATA[Specify a license server reachable via IPv4 network.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 4.0, this is not used by the system.]]>
      </deprecated-html>
            <property name="licenseServer" type-id-ref="java.lang.String"
      vmodl-name="licenseServer"
      >
      <description-html>
         <![CDATA[This property defines the server to establish a TCP session to
  obtain license data. Format of string is host:port
  Port is optional unsigned 16 bit integer license
  server is listening on. A trailing colon ':' without a port number
  is a valid expression.
  Host can either be an IPv4 address in dotted quad
  format or a resolvable DNS name <=254 characters. See RFC 3696.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ClusterDasHostInfo"
      type-id="vim.cluster.DasHostInfo"
      vmodl-name="vim.cluster.DasHostInfo"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[HA specific advanced information pertaining to the hosts in the cluster.]]>
      </description-html>
   </data-object>
   <data-object name="VirtualPCIPassthrough"
      type-id="vim.vm.device.VirtualPCIPassthrough"
      vmodl-name="vim.vm.device.VirtualPCIPassthrough"
      version-id-ref="vim.version.version5"
      base-type-id="vim.vm.device.VirtualDevice"
      >
      <description-html>
         <![CDATA[The VirtualPCIPassthrough data object type contains information about a
  PCI device on the virtual machine that is being backed by
  a generic PCI device on the host via passthrough.]]>
      </description-html>
      <nested-type-id-ref>vim.vm.device.VirtualPCIPassthrough.DeviceBackingInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.device.VirtualPCIPassthrough.AllowedDevice</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.device.VirtualPCIPassthrough.DynamicBackingInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.device.VirtualPCIPassthrough.PluginBackingInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.device.VirtualPCIPassthrough.VmiopBackingInfo</nested-type-id-ref>
   </data-object>
   <data-object name="VirtualLsiLogicSASController"
      type-id="vim.vm.device.VirtualLsiLogicSASController"
      vmodl-name="vim.vm.device.VirtualLsiLogicSASController"
      version-id-ref="vim.version.version4"
      base-type-id="vim.vm.device.VirtualSCSIController"
      >
      <description-html>
         <![CDATA[VirtualLsiLogicSASController is the data object that represents
 a LSI Logic SAS SCSI controller.]]>
      </description-html>
   </data-object>
   <data-object name="AlreadyAuthenticatedSessionEvent"
      type-id="vim.event.AlreadyAuthenticatedSessionEvent"
      vmodl-name="vim.event.AlreadyAuthenticatedSessionEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.SessionEvent"
      >
      <description-html>
         <![CDATA[This event records a failed user logon due to the user already being logged on.]]>
      </description-html>
   </data-object>
   <data-object name="ClusterFailoverHostAdmissionControlInfo"
      type-id="vim.cluster.FailoverHostAdmissionControlInfo"
      vmodl-name="vim.cluster.FailoverHostAdmissionControlInfo"
      version-id-ref="vim.version.version5"
      base-type-id="vim.cluster.DasAdmissionControlInfo"
      >
      <description-html>
         <![CDATA[The current admission control related information if the cluster was configured
 with a FailoverHostAdmissionControlPolicy.]]>
      </description-html>
            <property name="hostStatus" type-id-ref="vim.cluster.FailoverHostAdmissionControlInfo.HostStatus"
      vmodl-name="hostStatus"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Status of the failover hosts in the cluster.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.cluster.FailoverHostAdmissionControlInfo.HostStatus</nested-type-id-ref>
   </data-object>
   <data-object name="HostNumericSensorInfo"
      type-id="vim.host.NumericSensorInfo"
      vmodl-name="vim.host.NumericSensorInfo"
      version-id-ref="vim.version.version2"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Base class for numeric sensor information.]]>
      </description-html>
            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      >
      <description-html>
         <![CDATA[The name of the physical element associated with the sensor
  It consists of a string of the form:
  "description --- state/identifer".]]>
      </description-html>
      </property>

            <property name="healthState" type-id-ref="vim.ElementDescription"
      vmodl-name="healthState"
      is-optional="true"
      is-localizable="true"
      >
      <description-html>
         <![CDATA[The health state of the of the element indicated by the sensor.
  This property is populated only for sensors that support threshold
  settings and for discrete sensors using control file.<br>See <a href="vim.host.NumericSensorInfo.HealthState.html">HostNumericSensorHealthState</a><br>]]>
      </description-html>
      </property>

            <property name="currentReading" type-id-ref="LONG"
      vmodl-name="currentReading"
      >
      <description-html>
         <![CDATA[The current reading of the element indicated by the sensor. The actual
  sensor reading is obtained by multiplying the current reading by the
  scale factor.]]>
      </description-html>
      </property>

            <property name="unitModifier" type-id-ref="INT"
      vmodl-name="unitModifier"
      >
      <description-html>
         <![CDATA[The unit multiplier for the values returned by the sensor. All values
  returned by the sensor are current reading * 10 raised to the power of
  the UnitModifier. If no unitModifier applies the value returned is 0.]]>
      </description-html>
      </property>

            <property name="baseUnits" type-id-ref="java.lang.String"
      vmodl-name="baseUnits"
      >
      <description-html>
         <![CDATA[The base units in which the sensor reading is specified. If rateUnits
  is set the units of the current reading is further qualified by the
  rateUnits. Otherwise the value returned is 'unspecified'.<br>See <a href="vim.host.NumericSensorInfo.html#rateUnits">rateUnits</a><br>]]>
      </description-html>
      </property>

            <property name="rateUnits" type-id-ref="java.lang.String"
      vmodl-name="rateUnits"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The rate units in which the sensor reading is specified. For example if
  the baseUnits is Volts and the rateUnits is per second the value
  returned by the sensor are in Volts/second. If no rate applies
  the value returned is 'none'.]]>
      </description-html>
      </property>

            <property name="sensorType" type-id-ref="java.lang.String"
      vmodl-name="sensorType"
      >
      <description-html>
         <![CDATA[The type of the sensor. If the sensor type is set to Other the sensor
  name can be used to further identify the type of sensor. The sensor
  units can also be used to further implicitly determine the type of the
  sensor.<br>See <a href="vim.host.NumericSensorInfo.SensorType.html">HostNumericSensorType</a><br>]]>
      </description-html>
      </property>

            <property name="id" type-id-ref="java.lang.String"
      vmodl-name="id"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[A unique sensor identifier. A four part value consisting of:
  BMC device.Entity ID.Instance.SensorNumber
  Can be used to match a NumericSensorInfo object to
  esxcli hardware ipmi sdr list]]>
      </description-html>
      </property>

            <property name="timeStamp" type-id-ref="java.lang.String"
      vmodl-name="timeStamp"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Reports the ISO 8601 Timestamp when this sensor was last updated by
  management controller if the this sensor is capable of tracking
  when it was last updated.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.host.NumericSensorInfo.HealthState</nested-type-id-ref>
      <nested-type-id-ref>vim.host.NumericSensorInfo.SensorType</nested-type-id-ref>
   </data-object>
   <data-object name="DvsMacRewriteNetworkRuleAction"
      type-id="vim.dvs.TrafficRule.MacRewriteAction"
      vmodl-name="vim.dvs.TrafficRule.MacRewriteAction"
      enclosing-type-id-ref="vim.dvs.TrafficRule"
      version-id-ref="vim.version.version9"
      base-type-id="vim.dvs.TrafficRule.Action"
      >
      <description-html>
         <![CDATA[This class defines network rule action to MAC Rewrite.]]>
      </description-html>
            <property name="rewriteMac" type-id-ref="java.lang.String"
      vmodl-name="rewriteMac"
      >
      <description-html>
         <![CDATA[Rewrite Destination MAC with this MAC address.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VmInstanceUuidAssignedEvent"
      type-id="vim.event.VmInstanceUuidAssignedEvent"
      vmodl-name="vim.event.VmInstanceUuidAssignedEvent"
      version-id-ref="vim.version.version5"
      base-type-id="vim.event.VmEvent"
      >
      <description-html>
         <![CDATA[This event records the assignment of a new instance UUID
  to a virtual machine.]]>
      </description-html>
            <property name="instanceUuid" type-id-ref="java.lang.String"
      vmodl-name="instanceUuid"
      >
      <description-html>
         <![CDATA[The new instance UUID.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="TemplateUpgradedEvent"
      type-id="vim.event.TemplateUpgradedEvent"
      vmodl-name="vim.event.TemplateUpgradedEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.TemplateUpgradeEvent"
      >
      <description-html>
         <![CDATA[This event records that the template upgrade succeeded.]]>
      </description-html>
   </data-object>
   <data-object name="VMwareDvsLacpGroupConfig"
      type-id="vim.dvs.VmwareDistributedVirtualSwitch.LacpGroupConfig"
      vmodl-name="vim.dvs.VmwareDistributedVirtualSwitch.LacpGroupConfig"
      enclosing-type-id-ref="vim.dvs.VmwareDistributedVirtualSwitch"
      version-id-ref="vim.version.version9"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This class defines VMware specific multiple IEEE 802.3ad
  Dynamic Link Aggregation Control Protocol groups.]]>
      </description-html>
            <property name="key" type-id-ref="java.lang.String"
      vmodl-name="key"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The generated key as the identifier for the Link Aggregation group.]]>
      </description-html>
      </property>

            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The display name.]]>
      </description-html>
      </property>

            <property name="mode" type-id-ref="java.lang.String"
      vmodl-name="mode"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The mode of Link Aggregation Control Protocol.
  See UplinkLacpMode for valid values.]]>
      </description-html>
      </property>

            <property name="uplinkNum" type-id-ref="INT"
      vmodl-name="uplinkNum"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The number of uplink ports.]]>
      </description-html>
      </property>

            <property name="loadbalanceAlgorithm" type-id-ref="java.lang.String"
      vmodl-name="loadbalanceAlgorithm"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Load balance policy.
  See LacpLoadBalanceAlgorithm for valid values.]]>
      </description-html>
      </property>

            <property name="vlan" type-id-ref="vim.dvs.VmwareDistributedVirtualSwitch.LagVlanConfig"
      vmodl-name="vlan"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The VLAN Specification of the Uplink Ports in the Link Aggregation group.]]>
      </description-html>
      </property>

            <property name="ipfix" type-id-ref="vim.dvs.VmwareDistributedVirtualSwitch.LagIpfixConfig"
      vmodl-name="ipfix"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Ipfix configuration of the Link Aggregation
  Control Protocol group.]]>
      </description-html>
      </property>

            <property name="uplinkName" type-id-ref="java.lang.String"
      vmodl-name="uplinkName"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Names for the Uplink Ports in the group.
  This property is ignored in an update operation.]]>
      </description-html>
      </property>

            <property name="uplinkPortKey" type-id-ref="java.lang.String"
      vmodl-name="uplinkPortKey"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Keys for the Uplink Ports in the group.
  This property is ignored in an update operation.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="NvdimmNamespaceCreateSpec"
      type-id="vim.host.NvdimmSystem.NamespaceCreateSpec"
      vmodl-name="vim.host.NvdimmSystem.NamespaceCreateSpec"
      enclosing-type-id-ref="vim.host.NvdimmSystem"
      version-id-ref="vim.version.version12"
      is-deprecated="true"
      base-type-id="vmodl.DynamicData"
      >
      <deprecated-html>
         <![CDATA[As of vSphere 6.7u1, use PMemNamespaceCreateReq
 Arguments for creating a namespace]]>
      </deprecated-html>
            <property name="friendlyName" type-id-ref="java.lang.String"
      vmodl-name="friendlyName"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Friendly name of the namespace to be created.
 A friendly name can be provided by user to assosiate a name to
 the created namespace, but such a name is not mandatory and is
 empty string by default.]]>
      </description-html>
      </property>

            <property name="blockSize" type-id-ref="LONG"
      vmodl-name="blockSize"
      >
      <description-html>
         <![CDATA[Size of block in the namespace.
  For persistent region type, block size is one.
  For block region, block size represents one of the logical block sizes
  of 512, 4096 etc.]]>
      </description-html>
      </property>

            <property name="blockCount" type-id-ref="LONG"
      vmodl-name="blockCount"
      >
      <description-html>
         <![CDATA[Number of blocks in the namespace.
  For persistent region type, blockCount is the size of persistent
  region in bytes.
  For block region type, block count represent number of bytes per
  block size.]]>
      </description-html>
      </property>

            <property name="type" type-id-ref="java.lang.String"
      vmodl-name="type"
      >
      <description-html>
         <![CDATA[Type of the namespace to be created - block or persistent.
  Must be one of the values in
  NamespaceType]]>
      </description-html>
      </property>

            <property name="locationID" type-id-ref="INT"
      vmodl-name="locationID"
      >
      <description-html>
         <![CDATA[This identifier is the interleave set ID if the namespace
 is being used in persistent mode. If in block mode, this
 is a device handle.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostIoFilterInfo"
      type-id="vim.IoFilterManager.HostIoFilterInfo"
      vmodl-name="vim.IoFilterManager.HostIoFilterInfo"
      enclosing-type-id-ref="vim.IoFilterManager"
      version-id-ref="vim.version.version10"
      base-type-id="vim.IoFilterManager.IoFilterInfo"
      >
      <description-html>
         <![CDATA[Information about an IO Filter installed on a host.]]>
      </description-html>
            <property name="available" type-id-ref="BOOLEAN"
      vmodl-name="available"
      >
      <description-html>
         <![CDATA[Whether or not the filter is available for use.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="NetIpConfigSpec"
      type-id="vim.net.IpConfigSpec"
      vmodl-name="vim.net.IpConfigSpec"
      version-id-ref="vim.version.version6"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Internet Protocol Address Configuration for version 4 and version 6.]]>
      </description-html>
            <property name="ipAddress" type-id-ref="vim.net.IpConfigSpec.IpAddressSpec"
      vmodl-name="ipAddress"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[A set of manual (static) IP addresses to be configured on a given interface.]]>
      </description-html>
      </property>

            <property name="dhcp" type-id-ref="vim.net.DhcpConfigSpec"
      vmodl-name="dhcp"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Configure client side DHCP for a given interface.]]>
      </description-html>
      </property>

            <property name="autoConfigurationEnabled" type-id-ref="BOOLEAN"
      vmodl-name="autoConfigurationEnabled"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Enable or disable ICMPv6 router solictitation requests from a given interface
 to acquire an IPv6 address and default gateway route from zero, one or more
 routers on the connected network.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.net.IpConfigSpec.IpAddressSpec</nested-type-id-ref>
   </data-object>
   <data-object name="HealthUpdate"
      type-id="vim.HealthUpdate"
      vmodl-name="vim.HealthUpdate"
      version-id-ref="vim.version.version11"
      base-type-id="vmodl.DynamicData"
      >
            <property name="entity" type-id-ref="vim.ManagedEntity"
      vmodl-name="entity"
      >
      <description-html>
         <![CDATA[The entity on which the health update occurred. Only host is supported.]]>
      </description-html>
      </property>

            <property name="healthUpdateInfoId" type-id-ref="java.lang.String"
      vmodl-name="healthUpdateInfoId"
      >
      <description-html>
         <![CDATA[The ID of the corresponding HealthUpdateInfo.]]>
      </description-html>
      </property>

            <property name="id" type-id-ref="java.lang.String"
      vmodl-name="id"
      >
      <description-html>
         <![CDATA[The ID of this particular HealthUpdate instance, for cross-reference
  with HealthUpdateProvider logs.]]>
      </description-html>
      </property>

            <property name="status" type-id-ref="vim.ManagedEntity.Status"
      vmodl-name="status"
      >
      <description-html>
         <![CDATA[The current health status. Values are of type
  <a href="vim.ManagedEntity.Status.html">Status</a>.]]>
      </description-html>
      </property>

            <property name="remediation" type-id-ref="java.lang.String"
      vmodl-name="remediation"
      >
      <description-html>
         <![CDATA[A description of the physical remediation required to resolve this
  health update. For example, "Replace Fan #3".]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DynamicProperty"
      type-id="vmodl.DynamicProperty"
      vmodl-name="vmodl.DynamicProperty"
      version-id-ref="vmodl.version.version0"
      >
      <description-html>
         <![CDATA[The DynamicProperty data object type represents a name-value pair.]]>
      </description-html>
            <property name="name" type-id-ref="vmodl.PropertyPath"
      vmodl-name="name"
      >
      <description-html>
         <![CDATA[Path to the property.]]>
      </description-html>
      </property>

            <property name="val" type-id-ref="vmodl.Any"
      vmodl-name="val"
      >
      <description-html>
         <![CDATA[Value of the property.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VmFailedRelayoutOnVmfs2DatastoreEvent"
      type-id="vim.event.VmFailedRelayoutOnVmfs2DatastoreEvent"
      vmodl-name="vim.event.VmFailedRelayoutOnVmfs2DatastoreEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.VmEvent"
      >
      <description-html>
         <![CDATA[This event records a failure to relay out a virtual machine
 when the virtual machine still has disks on a VMFS2 volume.]]>
      </description-html>
   </data-object>
   <data-object name="LockerMisconfiguredEvent"
      type-id="vim.event.LockerMisconfiguredEvent"
      vmodl-name="vim.event.LockerMisconfiguredEvent"
      version-id-ref="vim.version.version2"
      base-type-id="vim.event.Event"
      >
      <description-html>
         <![CDATA[Locker has not been configured properly.
 This event is fired when the datastore configured to back the locker
 does not exist or when connectivity to the datastore is lost.]]>
      </description-html>
            <property name="datastore" type-id-ref="vim.event.DatastoreEventArgument"
      vmodl-name="datastore"
      >
      <description-html>
         <![CDATA[The datastore that has been configured to back the locker]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualMachineGuestMonitoringModeInfo"
      type-id="vim.vm.GuestMonitoringModeInfo"
      vmodl-name="vim.vm.GuestMonitoringModeInfo"
      version-id-ref="vim.version.v7_0"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object describes the GMM (Guest Mode Monitoring) configuration
 of this virtual machine.]]>
      </description-html>
            <property name="gmmFile" type-id-ref="java.lang.String"
      vmodl-name="gmmFile"
      is-optional="true"
      >
      </property>

            <property name="gmmAppliance" type-id-ref="java.lang.String"
      vmodl-name="gmmAppliance"
      is-optional="true"
      >
      </property>

   </data-object>
   <data-object name="VsanHostDiskMapping"
      type-id="vim.vsan.host.DiskMapping"
      vmodl-name="vim.vsan.host.DiskMapping"
      version-id-ref="vim.version.version9"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[A <a href="vim.vsan.host.DiskMapping.html">VsanHostDiskMapping</a> is a set of one SSD <a href="vim.host.ScsiDisk.html">HostScsiDisk</a> backed
 by a set of one or more non-SSD <a href="vim.host.ScsiDisk.html">HostScsiDisk</a>. The maximum
 allowed <a href="vim.vsan.host.DiskMapping.html">VsanHostDiskMapping</a> for a host is 5. A maximum set
 of 7 non-SSDs <a href="vim.host.ScsiDisk.html">HostScsiDisk</a> can be added to the one
 SSD <a href="vim.host.ScsiDisk.html">HostScsiDisk</a>.<br>See <a href="vim.vsan.host.ConfigInfo.StorageInfo.html">VsanHostConfigInfoStorageInfo</a><br>See vim.host.VsanSystem#initializeDisks(DiskMapping[])]]>
      </description-html>
            <property name="ssd" type-id-ref="vim.host.ScsiDisk"
      vmodl-name="ssd"
      >
      <description-html>
         <![CDATA[SSD ScsiDisk.]]>
      </description-html>
      </property>

            <property name="nonSsd" type-id-ref="vim.host.ScsiDisk"
      vmodl-name="nonSsd"
      is-array="true"
      >
      <description-html>
         <![CDATA[Set of non-SSD backing ScsiDisk.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ClusterComputeResourceDVSSettingDVPortgroupToServiceMapping"
      type-id="vim.ClusterComputeResource.DVSSetting.DVPortgroupToServiceMapping"
      vmodl-name="vim.ClusterComputeResource.DVSSetting.DVPortgroupToServiceMapping"
      enclosing-type-id-ref="vim.ClusterComputeResource.DVSSetting"
      version-id-ref="vim.version.version13"
      base-type-id="vmodl.DynamicData"
      >
            <property name="dvPortgroup" type-id-ref="vim.dvs.DistributedVirtualPortgroup"
      vmodl-name="dvPortgroup"
      >
      <description-html>
         <![CDATA[Managed object reference to the dvportgroup.]]>
      </description-html>
      </property>

            <property name="service" type-id-ref="java.lang.String"
      vmodl-name="service"
      >
      <description-html>
         <![CDATA[Service to be configured on the virtual nics attached to this
 dvportgroup. See <a href="vim.host.VirtualNicManager.NicType.html">HostVirtualNicManagerNicType</a> for
 supported values.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DrsVmPoweredOnEvent"
      type-id="vim.event.DrsVmPoweredOnEvent"
      vmodl-name="vim.event.DrsVmPoweredOnEvent"
      version-id-ref="vim.version.version2"
      base-type-id="vim.event.VmPoweredOnEvent"
      >
      <description-html>
         <![CDATA[This event records when a virtual machine is powered on by DRS.]]>
      </description-html>
   </data-object>
   <data-object name="HostScsiTopologyLun"
      type-id="vim.host.ScsiTopology.Lun"
      vmodl-name="vim.host.ScsiTopology.Lun"
      enclosing-type-id-ref="vim.host.ScsiTopology"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object type describes the SCSI logical unit.]]>
      </description-html>
            <property name="key" type-id-ref="java.lang.String"
      vmodl-name="key"
      >
      <description-html>
         <![CDATA[The identifier for the SCSI Lun]]>
      </description-html>
      </property>

            <property name="lun" type-id-ref="INT"
      vmodl-name="lun"
      >
      <description-html>
         <![CDATA[The logical unit number of the SCSI logical unit.]]>
      </description-html>
      </property>

            <property name="scsiLun" type-id-ref="vim.host.ScsiLun"
      vmodl-name="scsiLun"
      is-link="true"
      >
      <description-html>
         <![CDATA[The link to data for this SCSI logical unit.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="PerfMetricSeriesCSV"
      type-id="vim.PerformanceManager.MetricSeriesCSV"
      vmodl-name="vim.PerformanceManager.MetricSeriesCSV"
      enclosing-type-id-ref="vim.PerformanceManager"
      version-id-ref="vim.version.version1"
      base-type-id="vim.PerformanceManager.MetricSeries"
      >
      <description-html>
         <![CDATA[This data object type represents a <a href="vim.PerformanceManager.MetricSeries.html">PerfMetricSeries</a> encoded in CSV format.]]>
      </description-html>
            <property name="value" type-id-ref="java.lang.String"
      vmodl-name="value"
      is-optional="true"
      >
      <description-html>
         <![CDATA[An array of sample values in CSV format]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DistributedVirtualSwitchPortCriteria"
      type-id="vim.dvs.PortCriteria"
      vmodl-name="vim.dvs.PortCriteria"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The criteria specification for selecting ports.]]>
      </description-html>
            <property name="connected" type-id-ref="BOOLEAN"
      vmodl-name="connected"
      is-optional="true"
      >
      <description-html>
         <![CDATA[If set, only the connected ports are qualified.]]>
      </description-html>
      </property>

            <property name="active" type-id-ref="BOOLEAN"
      vmodl-name="active"
      is-optional="true"
      >
      <description-html>
         <![CDATA[If set, only the active ports are qualified.]]>
      </description-html>
      </property>

            <property name="uplinkPort" type-id-ref="BOOLEAN"
      vmodl-name="uplinkPort"
      is-optional="true"
      >
      <description-html>
         <![CDATA[If set to true, only the uplink ports are qualified. If set to false, only
  non-uplink ports are qualified.]]>
      </description-html>
      </property>

            <property name="nsxPort" type-id-ref="BOOLEAN"
      vmodl-name="nsxPort"
      version-id-ref="vim.version.v7_0"
      is-optional="true"
      >
      <description-html>
         <![CDATA[If set to true, only the NSX ports are qualified. If set to false, only
 non-NSX ports are qualified.
 NSX ports are ports of NSX port group.]]>
      </description-html>
      </property>

            <property name="scope" type-id-ref="vim.ManagedEntity"
      vmodl-name="scope"
      is-deprecated="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[If set, only the ports of which the scope covers the entity are
  qualified.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[as of vSphere API 5.5]]>
      </deprecated-html>
      </property>

            <property name="portgroupKey" type-id-ref="java.lang.String"
      vmodl-name="portgroupKey"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The keys of the portgroup that is used for the scope of <a href="vim.dvs.PortCriteria.html#inside">inside</a>.
  If this property is unset, it means any portgroup. If <a href="vim.dvs.PortCriteria.html#inside">inside</a>
  is unset, this property is ignored.]]>
      </description-html>
      </property>

            <property name="inside" type-id-ref="BOOLEAN"
      vmodl-name="inside"
      is-optional="true"
      >
      <description-html>
         <![CDATA[If unset, all ports in the switch are qualified.
  If set to true, only ports inside <a href="vim.dvs.PortCriteria.html#portgroupKey">portgroupKey</a> or any
  portgroup, if not set, are qualified.
  If set to false, only ports outside <a href="vim.dvs.PortCriteria.html#portgroupKey">portgroupKey</a> or any
  portgroup, if not set, are qualified.]]>
      </description-html>
      </property>

            <property name="portKey" type-id-ref="java.lang.String"
      vmodl-name="portKey"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[If set, only the ports of which the key is in the array are
  qualified.]]>
      </description-html>
      </property>

            <property name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      version-id-ref="vim.version.version11"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[If set, only the ports that are present in one of the host are qualified.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ToolsConfigInfoToolsLastInstallInfo"
      type-id="vim.vm.ToolsConfigInfo.ToolsLastInstallInfo"
      vmodl-name="vim.vm.ToolsConfigInfo.ToolsLastInstallInfo"
      enclosing-type-id-ref="vim.vm.ToolsConfigInfo"
      version-id-ref="vim.version.version7"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Describes status of last tools upgrade attempt]]>
      </description-html>
            <property name="counter" type-id-ref="INT"
      vmodl-name="counter"
      >
      <description-html>
         <![CDATA[Number of attempts that have been made to upgrade the version of tools
 installed on this virtual machine.]]>
      </description-html>
      </property>

            <property name="fault" type-id-ref="vmodl.LocalizedMethodFault"
      vmodl-name="fault"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Error that happened, if any, during last attempt to upgrade tools.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualMachineNetworkInfo"
      type-id="vim.vm.NetworkInfo"
      vmodl-name="vim.vm.NetworkInfo"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.TargetInfo"
      >
      <description-html>
         <![CDATA[NetworkInfo describes a network that a device backing
  can attached to.]]>
      </description-html>
            <property name="network" type-id-ref="vim.Network.Summary"
      vmodl-name="network"
      >
      <description-html>
         <![CDATA[Information about the network]]>
      </description-html>
      </property>

            <property name="vswitch" type-id-ref="java.lang.String"
      vmodl-name="vswitch"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Key of parent vSwitch of the network]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="CustomFieldDefRemovedEvent"
      type-id="vim.event.CustomFieldDefRemovedEvent"
      vmodl-name="vim.event.CustomFieldDefRemovedEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.CustomFieldDefEvent"
      >
      <description-html>
         <![CDATA[This event records the removal of a custom field definition.]]>
      </description-html>
   </data-object>
   <data-object name="ClusterDasAdmissionControlInfo"
      type-id="vim.cluster.DasAdmissionControlInfo"
      vmodl-name="vim.cluster.DasAdmissionControlInfo"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Base class for admission control related information of a vSphere HA cluster.]]>
      </description-html>
   </data-object>
   <data-object name="CompositePolicyOption"
      type-id="vim.profile.CompositePolicyOption"
      vmodl-name="vim.profile.CompositePolicyOption"
      version-id-ref="vim.version.version5"
      base-type-id="vim.profile.PolicyOption"
      >
      <description-html>
         <![CDATA[DataObject represents a composite Policy that is created by the user
 using different PolicyOptions. The options set in the CompositePolicyOption
 should be derived from the possible options as indicated by the
 CompositePolicyOptionMetadata.]]>
      </description-html>
            <property name="option" type-id-ref="vim.profile.PolicyOption"
      vmodl-name="option"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of policy options that are composed and applicable for
 this composite policy option.

 The selected PolicyOptions in a CompositePolicyOption will be used in the
 policy.  PolicyOptions need not be specified if they are not desired for
 the CompositePolicyOption.

 Order of PolicyOptions in the PolicyOption array is not significant.
 The host profile policy engine will not respect order of PolicyOptions.
 It will apply PolicyOptions in a pre-determined order.

 Clients of the API must produce PolicyOption in the same order as specified
 in the metadata.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="AllVirtualMachinesLicensedEvent"
      type-id="vim.event.AllVirtualMachinesLicensedEvent"
      vmodl-name="vim.event.AllVirtualMachinesLicensedEvent"
      version-id-ref="vim.version.version2"
      base-type-id="vim.event.LicenseEvent"
      >
      <description-html>
         <![CDATA[This event records that the previously unlicensed virtual machines on
 the specified host are now licensed. After this event is entered into
 the event log, we expect to see that the (@link
 vim.event.Event.UnlicensedVirtualMachinesEvent
 UnlicensedVirtualMachinesEvent) (@link vim.ManagedEntity.configIssue
 configIssue) is removed from the host.]]>
      </description-html>
   </data-object>
   <data-object name="StorageProfile"
      type-id="vim.profile.host.StorageProfile"
      vmodl-name="vim.profile.host.StorageProfile"
      version-id-ref="vim.version.version5"
      base-type-id="vim.profile.ApplyProfile"
      >
      <description-html>
         <![CDATA[The <a href="vim.profile.host.StorageProfile.html">StorageProfile</a> data object represents the host storage configuration.
 If a profile plug-in defines policies or subprofiles, use the
 <a href="vim.profile.ApplyProfile.html#policy">policy</a> or <a href="vim.profile.ApplyProfile.html#property">property</a>
 list to access the additional configuration data.]]>
      </description-html>
            <property name="nasStorage" type-id-ref="vim.profile.host.NasStorageProfile"
      vmodl-name="nasStorage"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of NAS storage subprofiles. Use the <a href="vim.profile.host.NasStorageProfile.html#key">key</a> property
 to access a subprofile in the list.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DistributedVirtualSwitchManagerHostContainer"
      type-id="vim.dvs.DistributedVirtualSwitchManager.HostContainer"
      vmodl-name="vim.dvs.DistributedVirtualSwitchManager.HostContainer"
      enclosing-type-id-ref="vim.dvs.DistributedVirtualSwitchManager"
      version-id-ref="vim.version.version6"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Check host compatibility for all hosts in the container. If the recursive
 flag is true, then check hosts at all levels within this container, otherwise
 check only at the container level. In case of container being a <a href="vim.Datacenter.html">Datacenter</a>,
 the recursive flag is applied to its HostFolder.]]>
      </description-html>
            <property name="container" type-id-ref="vim.ManagedEntity"
      vmodl-name="container"
      >
      <description-html>
         <![CDATA[Check compatibility of hosts in this container. The supported container
 types are Datacenter, Folder, and ComputeResource.]]>
      </description-html>
      </property>

            <property name="recursive" type-id-ref="BOOLEAN"
      vmodl-name="recursive"
      >
      <description-html>
         <![CDATA[If true, include hosts of all levels in the hierarchy with
 container as root of the tree. In case of container being a <a href="vim.Datacenter.html">Datacenter</a>,
 the recursive flag is applied to its HostFolder.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostHyperThreadScheduleInfo"
      type-id="vim.host.CpuSchedulerSystem.HyperThreadScheduleInfo"
      vmodl-name="vim.host.CpuSchedulerSystem.HyperThreadScheduleInfo"
      enclosing-type-id-ref="vim.host.CpuSchedulerSystem"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object type describes the CpuSchedulerSystem configuration
  for optimizing hyperthreading.  The primary hyperthreading
  optimization employed by the CpuSchedulerSystem is to utilize
  hyperthreads as additional schedulable resources.  Although
  hyperthreads provide limited additional concurrency,
  certain workloads (such as idling) can take advantage of
  these hyperthreads.  This is particularly useful for SMP virtual
  machines that use gang scheduling.  (Gang scheduling refers to a
  situation in which all of a parallel program's tasks are grouped
  into a "gang" and concurrently scheduled on distinct
  processors of a parallel computer system.)
  <p>
  Changes to the hyperthreading optimization can take effect only
  after a system restart.  Therefore, while it is possible to change
  the configuration at any time, the change will take effect only
  on the next boot.]]>
      </description-html>
            <property name="available" type-id-ref="BOOLEAN"
      vmodl-name="available"
      >
      <description-html>
         <![CDATA[The flag to indicate whether or not hyperthreading
  optimization is available on the system.  This property
  is set by VMware prior to installation.]]>
      </description-html>
      </property>

            <property name="active" type-id-ref="BOOLEAN"
      vmodl-name="active"
      >
      <description-html>
         <![CDATA[The flag to indicate whether or not the CPU scheduler is
  currently treating
  hyperthreads as schedulable resources.  Setting this property
  involves a successful invocation of either the
  <a href="vim.host.CpuSchedulerSystem.html#enableHyperThreading">EnableHyperThreading</a> method ("true") or the
  <a href="vim.host.CpuSchedulerSystem.html#disableHyperThreading">DisableHyperThreading</a> method
  ("false").  The property is set once the system is rebooted.]]>
      </description-html>
      </property>

            <property name="config" type-id-ref="BOOLEAN"
      vmodl-name="config"
      >
      <description-html>
         <![CDATA[The flag to indicate whether or not the CPU scheduler
  should treat hyperthreads as
  schedulable resources the next time the CPU scheduler starts.

  <p>
  <ul>
  <li>This property is set to "true" by successfully invoking the
  <a href="vim.host.CpuSchedulerSystem.html#enableHyperThreading">EnableHyperThreading</a> method.
  <li>This property is set to "false" by successfully invoking the
  <a href="vim.host.CpuSchedulerSystem.html#disableHyperThreading">DisableHyperThreading</a> method.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualMachineVMCIDevice"
      type-id="vim.vm.device.VirtualVMCIDevice"
      vmodl-name="vim.vm.device.VirtualVMCIDevice"
      version-id-ref="vim.version.version4"
      base-type-id="vim.vm.device.VirtualDevice"
      >
      <description-html>
         <![CDATA[The <a href="vim.vm.device.VirtualVMCIDevice.html">VirtualMachineVMCIDevice</a> data object represents
 a virtual communication device that supports the VMCI
 (Virtual Machine Communication Interface).
 Each virtual machine has a VMCI device that handles
 interprocess socket-based communication.
 VMCI device information is available in the virtual machine
 hardware device list
 (<a href="vim.VirtualMachine.html">VirtualMachine</a>.<a href="vim.VirtualMachine.html#config">Config</a>.<a href="vim.vm.ConfigInfo.html#hardware">hardware</a>.<a href="vim.vm.VirtualHardware.html#device">device</a>[]).
 <p>
 An application running on a virtual machine uses the VMCI Sockets API
 for communication with other virtual machines on the same host
 (communication between virtual machines is not supported on vSphere
 5.1 and later platforms as described for
 VirtualVMCIDevice.<a href="vim.vm.device.VirtualVMCIDevice.html#allowUnrestrictedCommunication">allowUnrestrictedCommunication</a>),
 or for communication with the host.
 For information about using the vSphere VMCI Sockets API,
 see the <i>VMCI Sockets Programming Guide</i>.]]>
      </description-html>
            <property name="id" type-id-ref="LONG"
      vmodl-name="id"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Unique identifier for VMCI socket access to this virtual machine.
  Use this value to identify this virtual machine in calls to the
  VMCI Sockets API. Applications running on other virtual machines on this
  host will use this value to connect to this virtual machine.
  You can cast this value to a 32-bit unsigned integer.
  <p>
  The vSphere Server sets this value when a virtual machine
  powers on. The Server may change this value after power
  operations such as vMotion or restoring a virtual machine
  from a snapshot. If you have saved a VMCI device identifier,
  check to see if the value is still valid after power
  operations.]]>
      </description-html>
      </property>

            <property name="allowUnrestrictedCommunication" type-id-ref="BOOLEAN"
      vmodl-name="allowUnrestrictedCommunication"
      is-deprecated="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Determines the extent of VMCI communication with this virtual
  machine. Set this property to true to allow VMCI communication
  with all virtual machines on the host and with trusted services.
  Set this property to false to allow VMCI communication only
  with trusted services such as the hypervisor on the host.
  <p>
  If unset, communication is restricted to trusted services only.
  <p>]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 5.1. On vSphere 5.1 and later
  platforms, the VMCI device does not support communication with
  other virtual machines. Therefore, this property has no effect
  on these platforms.]]>
      </deprecated-html>
      </property>

            <property name="filterEnable" type-id-ref="BOOLEAN"
      vmodl-name="filterEnable"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Determines if filtering of VMCI communication is enabled for this virtual
 machine. Set this property to enable or disable filter rules as specified
 in <a href="vim.vm.device.VirtualVMCIDevice.html#filterInfo">filterInfo</a>.]]>
      </description-html>
      </property>

            <property name="filterInfo" type-id-ref="vim.vm.device.VirtualVMCIDevice.FilterInfo"
      vmodl-name="filterInfo"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Specify a FilterInfo data object that controls the extent of
  VMCI communication with this virtual machine.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.vm.device.VirtualVMCIDevice.Action</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.device.VirtualVMCIDevice.Protocol</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.device.VirtualVMCIDevice.Direction</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.device.VirtualVMCIDevice.FilterSpec</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.device.VirtualVMCIDevice.FilterInfo</nested-type-id-ref>
   </data-object>
   <data-object name="AlarmSetting"
      type-id="vim.alarm.AlarmSetting"
      vmodl-name="vim.alarm.AlarmSetting"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Tolerance and frequency limits of an alarm.]]>
      </description-html>
            <property name="toleranceRange" type-id-ref="INT"
      vmodl-name="toleranceRange"
      >
      <description-html>
         <![CDATA[Tolerance range for the metric triggers, measured in one hundredth percentage.

  <p>

  A zero value means that the alarm

  triggers whenever the metric value is above

  or below the specified value.

  A nonzero value means that the alarm

  triggers only after reaching a certain percentage

  above or below the nominal trigger value.]]>
      </description-html>
      </property>

            <property name="reportingFrequency" type-id-ref="INT"
      vmodl-name="reportingFrequency"
      >
      <description-html>
         <![CDATA[How often the alarm is triggered, measured in seconds.

  <p>

  A zero value means that the alarm is allowed

  to trigger as often as possible.

  A nonzero value means that any subsequent triggers

  are suppressed for a period of seconds following a

  reported trigger.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostLocalPortCreatedEvent"
      type-id="vim.event.HostLocalPortCreatedEvent"
      vmodl-name="vim.event.HostLocalPortCreatedEvent"
      version-id-ref="vim.version.version8"
      base-type-id="vim.event.DvsEvent"
      >
      <description-html>
         <![CDATA[This event records when host local port is created to recover from
  management network connectivity loss.]]>
      </description-html>
            <property name="hostLocalPort" type-id-ref="vim.dvs.DistributedVirtualPort.HostLocalPortInfo"
      vmodl-name="hostLocalPort"
      >
      <description-html>
         <![CDATA[The configuration of the new host local port.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VmEndReplayingEvent"
      type-id="vim.event.VmEndReplayingEvent"
      vmodl-name="vim.event.VmEndReplayingEvent"
      version-id-ref="vim.version.version5"
      is-deprecated="true"
      base-type-id="vim.event.VmEvent"
      >
      <description-html>
         <![CDATA[This event indicates the end of a replay session on a virtual machine.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[as of vSphere API 6.0]]>
      </deprecated-html>
   </data-object>
   <data-object name="ProfileProfileStructure"
      type-id="vim.profile.ProfileStructure"
      vmodl-name="vim.profile.ProfileStructure"
      version-id-ref="vim.version.version7"
      base-type-id="vmodl.DynamicData"
      >
            <property name="profileTypeName" type-id-ref="java.lang.String"
      vmodl-name="profileTypeName"
      >
      <description-html>
         <![CDATA[Identifier for the profile type]]>
      </description-html>
      </property>

            <property name="child" type-id-ref="vim.profile.ProfileStructureProperty"
      vmodl-name="child"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[SubProfile properties available for this profile]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VmfsDatastoreInfo"
      type-id="vim.host.VmfsDatastoreInfo"
      vmodl-name="vim.host.VmfsDatastoreInfo"
      version-id-ref="vim.version.version1"
      base-type-id="vim.Datastore.Info"
      >
      <description-html>
         <![CDATA[Information details about a VMFS datastore.]]>
      </description-html>
            <property name="maxPhysicalRDMFileSize" type-id-ref="LONG"
      vmodl-name="maxPhysicalRDMFileSize"
      version-id-ref="vim.version.version8"
      >
      <description-html>
         <![CDATA[Maximum raw device mapping size (physical compatibility)]]>
      </description-html>
      </property>

            <property name="maxVirtualRDMFileSize" type-id-ref="LONG"
      vmodl-name="maxVirtualRDMFileSize"
      version-id-ref="vim.version.version8"
      >
      <description-html>
         <![CDATA[Maximum raw device mapping size (virtual compatibility)]]>
      </description-html>
      </property>

            <property name="vmfs" type-id-ref="vim.host.VmfsVolume"
      vmodl-name="vmfs"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The VMFS volume information for the datastore.  May not be
  available when the datastore is not accessible.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualController"
      type-id="vim.vm.device.VirtualController"
      vmodl-name="vim.vm.device.VirtualController"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.device.VirtualDevice"
      >
      <description-html>
         <![CDATA[VirtualController is the base data object type for a device controller in
  a virtual machine. VirtualController extends
  <a href="vim.vm.device.VirtualDevice.html">VirtualDevice</a> to inherit
  general information about a controller (such as name and description), and to allow
  controllers to appear in a generic list of virtual devices.]]>
      </description-html>
            <property name="busNumber" type-id-ref="INT"
      vmodl-name="busNumber"
      >
      <description-html>
         <![CDATA[Bus number associated with this controller.]]>
      </description-html>
      </property>

            <property name="device" type-id-ref="INT"
      vmodl-name="device"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of devices currently controlled by this controller.

  Each entry contains the <a href="vim.vm.device.VirtualDevice.html#key">key</a> property of the
  corresponding device object.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostMultipathStateInfoPath"
      type-id="vim.host.MultipathStateInfo.Path"
      vmodl-name="vim.host.MultipathStateInfo.Path"
      enclosing-type-id-ref="vim.host.MultipathStateInfo"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Data object indicating state of storage path for a named path.]]>
      </description-html>
            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      >
      <description-html>
         <![CDATA[Name of path.
  <p>
  Use this name to enable or disable storage paths <a href="vim.host.StorageSystem.html#enableMultipathPath">EnableMultipathPath</a> and <a href="vim.host.StorageSystem.html#disableMultipathPath">DisableMultipathPath</a>.
  <p>
  In addition to being the identifier for the path state
  operations, the name is used to correlate this object to the
  corresponding Path object in other contexts.<br>See <a href="vim.host.PlugStoreTopology.Path.html#name">name</a><br>]]>
      </description-html>
      </property>

            <property name="pathState" type-id-ref="java.lang.String"
      vmodl-name="pathState"
      >
      <description-html>
         <![CDATA[The state of the path.  Must be one of the values of
  <a href="vim.host.MultipathInfo.PathState.html">MultipathState</a>.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DvsVmVnicNetworkResourcePoolRuntimeInfo"
      type-id="vim.dvs.VmVnicNetworkResourcePool.RuntimeInfo"
      vmodl-name="vim.dvs.VmVnicNetworkResourcePool.RuntimeInfo"
      enclosing-type-id-ref="vim.dvs.VmVnicNetworkResourcePool"
      version-id-ref="vim.version.version10"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This class defines the runtime information for the
 virtual NIC network resource pool]]>
      </description-html>
            <property name="key" type-id-ref="java.lang.String"
      vmodl-name="key"
      >
      <description-html>
         <![CDATA[The key of the virtual NIC network resource pool]]>
      </description-html>
      </property>

            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The name of the virtual NIC network resource pool]]>
      </description-html>
      </property>

            <property name="capacity" type-id-ref="INT"
      vmodl-name="capacity"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Capacity: Reservation allocated for this Network Resource Pool.
  Units in Mbits/s.]]>
      </description-html>
      </property>

            <property name="usage" type-id-ref="INT"
      vmodl-name="usage"
      is-optional="true"
      >
      <description-html>
         <![CDATA[usage: Reservation taken by all <a href="vim.vm.device.VirtualEthernetCard.html">VirtualEthernetCard</a> for which the
  backing is associdated with this <a href="vim.dvs.VmVnicNetworkResourcePool.html">DVSVmVnicNetworkResourcePool</a>.
  Units in Mbits/s.]]>
      </description-html>
      </property>

            <property name="available" type-id-ref="INT"
      vmodl-name="available"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Available: Current available resource for reservation (capacity - usage).
  Units in Mbits/s.]]>
      </description-html>
      </property>

            <property name="status" type-id-ref="java.lang.String"
      vmodl-name="status"
      >
      <description-html>
         <![CDATA[The status of the virtual NIC network resource pool
  See <a href="vim.ManagedEntity.Status.html">ManagedEntityStatus</a> for possible values
  <p>
  vim.ManagedEntity.Status#red indicates that the
  reservations used by all the virtual network adapters belonging
  to this resource pool exceeds the total reservation quota allocated to the
  resource pool. This can happen due to failure of one or more uplink
  or if the user bypasses VirtualCenter and powers on VMs directly on host.
  The reservation of one or more virtual network adapters cannot be guaranteed
  and corrective action needs to be taken by the user.
  <p>
  vim.ManagedEntity.Status#green indicates that the resource pool
  is in good state. The reservations for all virtual network adapters can
  be fulfilled.]]>
      </description-html>
      </property>

            <property name="allocatedResource" type-id-ref="vim.dvs.VmVnicNetworkResourcePool.VnicAllocatedResource"
      vmodl-name="allocatedResource"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The virtual network adapaters that
  are currently associated with the resource pool]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VsanPolicyCost"
      type-id="vim.host.VsanInternalSystem.PolicyCost"
      vmodl-name="vim.host.VsanInternalSystem.PolicyCost"
      enclosing-type-id-ref="vim.host.VsanInternalSystem"
      version-id-ref="vim.version.version9"
      internal-before-version-id-ref="vim.version.version10"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[PolicyCost --

    Structure to describe the cost of satisfying a policy.]]>
      </description-html>
            <property name="changeDataSize" type-id-ref="LONG"
      vmodl-name="changeDataSize"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Change (in bytes) of size of data stored on the datastore. This is
 the max of reserved and used capacity.]]>
      </description-html>
      </property>

            <property name="currentDataSize" type-id-ref="LONG"
      vmodl-name="currentDataSize"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Size (in bytes) of data currently stored on the datastore. This is
 the max of reserved and used capacity.]]>
      </description-html>
      </property>

            <property name="tempDataSize" type-id-ref="LONG"
      vmodl-name="tempDataSize"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Size (in bytes) for temporary data that will be needed on disk if
 new policy is applied.]]>
      </description-html>
      </property>

            <property name="copyDataSize" type-id-ref="LONG"
      vmodl-name="copyDataSize"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Size (in bytes) of data we need to write to VSAN Datastore if new
 policy is applied.]]>
      </description-html>
      </property>

            <property name="changeFlashReadCacheSize" type-id-ref="LONG"
      vmodl-name="changeFlashReadCacheSize"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Change (in bytes) of flash space reserved for read cache if new
 policy is applied.]]>
      </description-html>
      </property>

            <property name="currentFlashReadCacheSize" type-id-ref="LONG"
      vmodl-name="currentFlashReadCacheSize"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Size (in bytes) of flash space currently reserved for read cache.]]>
      </description-html>
      </property>

            <property name="currentDiskSpaceToAddressSpaceRatio" type-id-ref="FLOAT"
      vmodl-name="currentDiskSpaceToAddressSpaceRatio"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Current ratio of physical disk space of an object to the logical VSAN
 address space. For eg. an object of size 1GB with two copies of the
 data has two 1GB replicas and so this ratio is 2.]]>
      </description-html>
      </property>

            <property name="diskSpaceToAddressSpaceRatio" type-id-ref="FLOAT"
      vmodl-name="diskSpaceToAddressSpaceRatio"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Ratio of physical disk space of an object to the logical VSAN
 address space after new policy is applied. For eg. an object of size
 1GB with two copies of the data has two 1GB replicas and so this
 ratio is 2.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="CustomizationCustomIpV6Generator"
      type-id="vim.vm.customization.CustomIpV6Generator"
      vmodl-name="vim.vm.customization.CustomIpV6Generator"
      version-id-ref="vim.version.version5"
      base-type-id="vim.vm.customization.IpV6Generator"
      >
      <description-html>
         <![CDATA[Use a command-line program configured with the VirtualCenter server.]]>
      </description-html>
            <property name="argument" type-id-ref="java.lang.String"
      vmodl-name="argument"
      is-optional="true"
      >
      <description-html>
         <![CDATA[An optional argument that is passed to the utility for this ipv6 address. The
  meaning of this field is user-defined, in the script.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VmDiskFileQuery"
      type-id="vim.host.DatastoreBrowser.VmDiskQuery"
      vmodl-name="vim.host.DatastoreBrowser.VmDiskQuery"
      enclosing-type-id-ref="vim.host.DatastoreBrowser"
      version-id-ref="vim.version.version1"
      base-type-id="vim.host.DatastoreBrowser.Query"
      >
      <description-html>
         <![CDATA[This data object type describes the query specification for the virtual disk
  primary file.]]>
      </description-html>
            <property name="filter" type-id-ref="vim.host.DatastoreBrowser.VmDiskQuery.Filter"
      vmodl-name="filter"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The filter specification for the virtual disk primary file query.]]>
      </description-html>
      </property>

            <property name="details" type-id-ref="vim.host.DatastoreBrowser.VmDiskQuery.Details"
      vmodl-name="details"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Details specification for the virtual disk primary file query.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.host.DatastoreBrowser.VmDiskQuery.Filter</nested-type-id-ref>
      <nested-type-id-ref>vim.host.DatastoreBrowser.VmDiskQuery.Details</nested-type-id-ref>
   </data-object>
   <data-object name="VmLogFileInfo"
      type-id="vim.host.DatastoreBrowser.VmLogInfo"
      vmodl-name="vim.host.DatastoreBrowser.VmLogInfo"
      enclosing-type-id-ref="vim.host.DatastoreBrowser"
      version-id-ref="vim.version.version1"
      base-type-id="vim.host.DatastoreBrowser.FileInfo"
      >
      <description-html>
         <![CDATA[This data object type describes a file that is logging output for a virtual
  machine.]]>
      </description-html>
   </data-object>
   <data-object name="HostDiskPartitionInfo"
      type-id="vim.host.DiskPartitionInfo"
      vmodl-name="vim.host.DiskPartitionInfo"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Information about the partitions on a disk.  A DiskPartitionInfo object
  provides two different views into the partitions on a disk:

  <p>
  <ul>
  <li>A detailed specification that is used to create the partition
  table.
  <li>A convenient view that shows the allocations
  of blocks as a contiguous sequence of block ranges.
  </ul><br>See <a href="vim.host.StorageSystem.html#retrieveDiskPartitionInfo">RetrieveDiskPartitionInfo</a><br>See <a href="vim.host.StorageSystem.html#computeDiskPartitionInfo">ComputeDiskPartitionInfo</a><br>See <a href="vim.host.StorageSystem.html#updateDiskPartitions">UpdateDiskPartitions</a><br>]]>
      </description-html>
            <property name="deviceName" type-id-ref="java.lang.String"
      vmodl-name="deviceName"
      >
      <description-html>
         <![CDATA[The device name of the disk to which this partition information
  corresponds.]]>
      </description-html>
      </property>

            <property name="spec" type-id-ref="vim.host.DiskPartitionInfo.Specification"
      vmodl-name="spec"
      >
      <description-html>
         <![CDATA[The detailed disk partition specification.  Use this specification for
  manipulating the file system.<br>See <a href="vim.host.StorageSystem.html#retrieveDiskPartitionInfo">RetrieveDiskPartitionInfo</a><br>See <a href="vim.host.StorageSystem.html#updateDiskPartitions">UpdateDiskPartitions</a><br>]]>
      </description-html>
      </property>

            <property name="layout" type-id-ref="vim.host.DiskPartitionInfo.Layout"
      vmodl-name="layout"
      >
      <description-html>
         <![CDATA[A convenient format for describing disk layout.  This layout
  specification can be converted to a Specification object.<br>See <a href="vim.host.StorageSystem.html#computeDiskPartitionInfo">ComputeDiskPartitionInfo</a><br>]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.host.DiskPartitionInfo.PartitionFormat</nested-type-id-ref>
      <nested-type-id-ref>vim.host.DiskPartitionInfo.Type</nested-type-id-ref>
      <nested-type-id-ref>vim.host.DiskPartitionInfo.Partition</nested-type-id-ref>
      <nested-type-id-ref>vim.host.DiskPartitionInfo.BlockRange</nested-type-id-ref>
      <nested-type-id-ref>vim.host.DiskPartitionInfo.Specification</nested-type-id-ref>
      <nested-type-id-ref>vim.host.DiskPartitionInfo.Layout</nested-type-id-ref>
   </data-object>
   <data-object name="VirtualVmxnet3VrdmaOption"
      type-id="vim.vm.device.VirtualVmxnet3VrdmaOption"
      vmodl-name="vim.vm.device.VirtualVmxnet3VrdmaOption"
      version-id-ref="vim.version.version11"
      base-type-id="vim.vm.device.VirtualVmxnet3Option"
      >
      <description-html>
         <![CDATA[The VirtualVmxnet3VrdmaOption data object type contains the options for the
  <a href="vim.vm.device.VirtualVmxnet3Vrdma.html">VirtualVmxnet3Vrdma</a> data object type.]]>
      </description-html>
            <property name="deviceProtocol" type-id-ref="vim.option.ChoiceOption"
      vmodl-name="deviceProtocol"
      version-id-ref="vim.version.version12"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The supported device protocols.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.vm.device.VirtualVmxnet3VrdmaOption.DeviceProtocols</nested-type-id-ref>
   </data-object>
   <data-object name="GeneralUserEvent"
      type-id="vim.event.GeneralUserEvent"
      vmodl-name="vim.event.GeneralUserEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.GeneralEvent"
      >
      <description-html>
         <![CDATA[This event is the general user event type.]]>
      </description-html>
            <property name="entity" type-id-ref="vim.event.ManagedEntityEventArgument"
      vmodl-name="entity"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The entity on which the event was logged.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ScheduledTaskRemovedEvent"
      type-id="vim.event.ScheduledTaskRemovedEvent"
      vmodl-name="vim.event.ScheduledTaskRemovedEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.ScheduledTaskEvent"
      >
      <description-html>
         <![CDATA[This event records the removal of a scheduled task.]]>
      </description-html>
   </data-object>
   <data-object name="InsufficientFailoverResourcesEvent"
      type-id="vim.event.InsufficientFailoverResourcesEvent"
      vmodl-name="vim.event.InsufficientFailoverResourcesEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.ClusterEvent"
      >
      <description-html>
         <![CDATA[This event records that the cluster resources are insufficient
 to satisfy the configured HA failover level.]]>
      </description-html>
   </data-object>
   <data-object name="DuplicateIpDetectedEvent"
      type-id="vim.event.DuplicateIpDetectedEvent"
      vmodl-name="vim.event.DuplicateIpDetectedEvent"
      version-id-ref="vim.version.version2"
      base-type-id="vim.event.HostEvent"
      >
      <description-html>
         <![CDATA[This event records that a duplicate IP address has been observed in
  conflict with the vmotion or IP storage interface configured on the
  host.]]>
      </description-html>
            <property name="duplicateIP" type-id-ref="java.lang.String"
      vmodl-name="duplicateIP"
      >
      <description-html>
         <![CDATA[The Duplicate IP address detected.]]>
      </description-html>
      </property>

            <property name="macAddress" type-id-ref="java.lang.String"
      vmodl-name="macAddress"
      >
      <description-html>
         <![CDATA[The MAC associated with duplicate IP.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="FloatOption"
      type-id="vim.option.FloatOption"
      vmodl-name="vim.option.FloatOption"
      version-id-ref="vim.version.version1"
      base-type-id="vim.option.OptionType"
      >
      <description-html>
         <![CDATA[The FloatOption data object type defines the minimum, maximum,
 and default values for a float option.]]>
      </description-html>
            <property name="min" type-id-ref="FLOAT"
      vmodl-name="min"
      >
      <description-html>
         <![CDATA[The minimum value.]]>
      </description-html>
      </property>

            <property name="max" type-id-ref="FLOAT"
      vmodl-name="max"
      >
      <description-html>
         <![CDATA[The maximum value.]]>
      </description-html>
      </property>

            <property name="defaultValue" type-id-ref="FLOAT"
      vmodl-name="defaultValue"
      >
      <description-html>
         <![CDATA[The default value.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="KmipServerSpec"
      type-id="vim.encryption.KmipServerSpec"
      vmodl-name="vim.encryption.KmipServerSpec"
      version-id-ref="vim.version.version11"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Data Object representing a KMIP server connection spec.]]>
      </description-html>
            <property name="clusterId" type-id-ref="vim.encryption.KeyProviderId"
      vmodl-name="clusterId"
      >
      <description-html>
         <![CDATA[The ID of the KMIP cluster. KMIP servers with the same clusterId are in
 one cluster and provide the same keys for redundancy.]]>
      </description-html>
      </property>

            <property name="info" type-id-ref="vim.encryption.KmipServerInfo"
      vmodl-name="info"
      >
      <description-html>
         <![CDATA[Connection information for the KMIP server.]]>
      </description-html>
      </property>

            <property name="password" type-id-ref="java.lang.String"
      vmodl-name="password"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Password to authenticate to the KMIP server.
 Set value to empty string to delete the entry.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VchaClusterHealth"
      type-id="vim.vcha.FailoverClusterManager.VchaClusterHealth"
      vmodl-name="vim.vcha.FailoverClusterManager.VchaClusterHealth"
      enclosing-type-id-ref="vim.vcha.FailoverClusterManager"
      version-id-ref="vim.version.version11"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The VchaClusterHealth class describes the overall
 VCHA Cluster health. Health information include the last known runtime
 information about the VCHA Cluster along with health messages and any
 additional information applicable to the current VCHA Cluster health.

 If the cluster state is healthy, there will not be any health messages
 or additional information provided.]]>
      </description-html>
            <property name="runtimeInfo" type-id-ref="vim.vcha.FailoverClusterManager.VchaClusterRuntimeInfo"
      vmodl-name="runtimeInfo"
      >
      <description-html>
         <![CDATA[Runtime information of the VCHA Cluster]]>
      </description-html>
      </property>

            <property name="healthMessages" type-id-ref="vmodl.LocalizableMessage"
      vmodl-name="healthMessages"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[A collection of Messages describing the reason for a non-healthy
 Cluster.]]>
      </description-html>
      </property>

            <property name="additionalInformation" type-id-ref="vmodl.LocalizableMessage"
      vmodl-name="additionalInformation"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[A collection of additional information regarding the health messages.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostListSummaryQuickStats"
      type-id="vim.host.Summary.QuickStats"
      vmodl-name="vim.host.Summary.QuickStats"
      enclosing-type-id-ref="vim.host.Summary"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Basic host statistics.
  <p>
  Included in the host statistics are fairness scores. Fairness scores are
  represented in units with relative values, meaning they are evaluated relative to
  the scores of other hosts. They should not be thought of as having any particular
  absolute value. Each fairness unit represents an increment of 0.001 in a fairness
  score. The further the fairness score diverges from 1, the less fair the
  allocation. Therefore, a fairness score of 990, representing 0.990, is more fair
  than a fairness score of 1015, which represents 1.015. This is because 1.015 is
  further from 1 than 0.990.]]>
      </description-html>
            <property name="overallCpuUsage" type-id-ref="INT"
      vmodl-name="overallCpuUsage"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Aggregated CPU usage across all cores on the host in MHz. This is only
  available if the host is connected.]]>
      </description-html>
      </property>

            <property name="overallMemoryUsage" type-id-ref="INT"
      vmodl-name="overallMemoryUsage"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Physical memory usage on the host in MB. This is only available if the
  host is connected.]]>
      </description-html>
      </property>

            <property name="distributedCpuFairness" type-id-ref="INT"
      vmodl-name="distributedCpuFairness"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The fairness of distributed CPU resource allocation on the host.]]>
      </description-html>
      </property>

            <property name="distributedMemoryFairness" type-id-ref="INT"
      vmodl-name="distributedMemoryFairness"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The fairness of distributed memory resource allocation on the host.]]>
      </description-html>
      </property>

            <property name="availablePMemCapacity" type-id-ref="INT"
      vmodl-name="availablePMemCapacity"
      version-id-ref="vim.version.version12"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The available capacity in MB.]]>
      </description-html>
      </property>

            <property name="uptime" type-id-ref="INT"
      vmodl-name="uptime"
      version-id-ref="vim.version.version6"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The system uptime of the host in seconds.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="Permission"
      type-id="vim.AuthorizationManager.Permission"
      vmodl-name="vim.AuthorizationManager.Permission"
      enclosing-type-id-ref="vim.AuthorizationManager"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object type provides assignment of some role access to
  a principal on a specific entity.  A ManagedEntity is limited to
  one permission per principal.]]>
      </description-html>
            <property name="entity" type-id-ref="vim.ManagedEntity"
      vmodl-name="entity"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Managed entity the permission is defined on.  Left unset
  when calling setPermissions or resetPermissions, but present
  for the results of permission queries.]]>
      </description-html>
      </property>

            <property name="principal" type-id-ref="java.lang.String"
      vmodl-name="principal"
      >
      <description-html>
         <![CDATA[User or group receiving access in the form of
  "login" for local or "DOMAIN\login" for users in a Windows domain.]]>
      </description-html>
      </property>

            <property name="group" type-id-ref="BOOLEAN"
      vmodl-name="group"
      >
      <description-html>
         <![CDATA[Whether principal refers to a user or a group.  True for
  a group and false for a user.]]>
      </description-html>
      </property>

            <property name="roleId" type-id-ref="INT"
      vmodl-name="roleId"
      >
      <description-html>
         <![CDATA[Reference to the role providing the access.]]>
      </description-html>
      </property>

            <property name="propagate" type-id-ref="BOOLEAN"
      vmodl-name="propagate"
      >
      <description-html>
         <![CDATA[Whether or not this permission propagates down the hierarchy
  to sub-entities.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="CustomizationFixedName"
      type-id="vim.vm.customization.FixedName"
      vmodl-name="vim.vm.customization.FixedName"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.customization.NameGenerator"
      >
      <description-html>
         <![CDATA[A fixed name.]]>
      </description-html>
            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      >
      <description-html>
         <![CDATA[The virtual machine name specified by the client.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualFloppyDeviceBackingInfo"
      type-id="vim.vm.device.VirtualFloppy.DeviceBackingInfo"
      vmodl-name="vim.vm.device.VirtualFloppy.DeviceBackingInfo"
      enclosing-type-id-ref="vim.vm.device.VirtualFloppy"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.device.VirtualDevice.DeviceBackingInfo"
      >
      <description-html>
         <![CDATA[The data object type for device backing of a virtual floppy drive.]]>
      </description-html>
   </data-object>
   <data-object name="DrsRuleViolationEvent"
      type-id="vim.event.DrsRuleViolationEvent"
      vmodl-name="vim.event.DrsRuleViolationEvent"
      version-id-ref="vim.version.version6"
      base-type-id="vim.event.VmEvent"
      >
      <description-html>
         <![CDATA[This event records when a virtual machine violates a DRS VM-Host rule.]]>
      </description-html>
   </data-object>
   <data-object name="VirtualPCNet32Option"
      type-id="vim.vm.device.VirtualPCNet32Option"
      vmodl-name="vim.vm.device.VirtualPCNet32Option"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.device.VirtualEthernetCardOption"
      >
      <description-html>
         <![CDATA[The VirtualPCNet32Option data object type defines the options for the
  VirtualPCNet32 data object type.  Except for the boolean
  supportsMorphing option, the options are inherited from the
  <a href="vim.vm.device.VirtualEthernetCardOption.html">VirtualEthernetCardOption</a> data
  object type.]]>
      </description-html>
            <property name="supportsMorphing" type-id-ref="BOOLEAN"
      vmodl-name="supportsMorphing"
      >
      <description-html>
         <![CDATA[Indicates that this Ethernet card supports morphing into vmxnet when
  appropriate.  This means that, if supportsMorphing="true", the virtual
  AMD Lance PCNet32 Ethernet card becomes a vmxnet Ethernet card
  with its added performance capabilities when appropriate.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="PerfSampleInfo"
      type-id="vim.PerformanceManager.SampleInfo"
      vmodl-name="vim.PerformanceManager.SampleInfo"
      enclosing-type-id-ref="vim.PerformanceManager"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object type describes information contained in a sample
  collection, its timestamp, and sampling interval.]]>
      </description-html>
            <property name="timestamp" type-id-ref="vmodl.DateTime"
      vmodl-name="timestamp"
      >
      <description-html>
         <![CDATA[The time at which the sample was collected.]]>
      </description-html>
      </property>

            <property name="interval" type-id-ref="INT"
      vmodl-name="interval"
      >
      <description-html>
         <![CDATA[The interval in seconds for which performance statistics were
  collected. This can be the refreshRate of the managed object for which
  this statistics was collected or one of the intervals for historical
  statistics configured in the system. See <a href="vim.PerformanceManager.html#updateHistoricalInterval">UpdatePerfInterval</a> for more information about the intervals
  configured in the system.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostConnectedEvent"
      type-id="vim.event.HostConnectedEvent"
      vmodl-name="vim.event.HostConnectedEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.HostEvent"
      >
      <description-html>
         <![CDATA[This event records a successful host connection.]]>
      </description-html>
   </data-object>
   <data-object name="ActiveDirectoryProfile"
      type-id="vim.profile.host.ActiveDirectoryProfile"
      vmodl-name="vim.profile.host.ActiveDirectoryProfile"
      version-id-ref="vim.version.version6"
      base-type-id="vim.profile.ApplyProfile"
      >
      <description-html>
         <![CDATA[The <a href="vim.profile.host.ActiveDirectoryProfile.html">ActiveDirectoryProfile</a> data object represents Active Directory
 configuration. Use the <a href="vim.profile.ApplyProfile.html#policy">policy</a> list for
 access to configuration data for the Active Directory profile. Use the
 <a href="vim.profile.ApplyProfile.html#property">property</a> list for access to subprofiles, if any.]]>
      </description-html>
   </data-object>
   <data-object name="VmEmigratingEvent"
      type-id="vim.event.VmEmigratingEvent"
      vmodl-name="vim.event.VmEmigratingEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.VmEvent"
      >
      <description-html>
         <![CDATA[This event records a virtual machine emigration.]]>
      </description-html>
   </data-object>
   <data-object name="ClusterFailoverLevelAdmissionControlInfo"
      type-id="vim.cluster.FailoverLevelAdmissionControlInfo"
      vmodl-name="vim.cluster.FailoverLevelAdmissionControlInfo"
      version-id-ref="vim.version.version5"
      base-type-id="vim.cluster.DasAdmissionControlInfo"
      >
      <description-html>
         <![CDATA[The current admission control related information if the cluster was
 configured with a FailoverLevelAdmissionControlPolicy.]]>
      </description-html>
            <property name="currentFailoverLevel" type-id-ref="INT"
      vmodl-name="currentFailoverLevel"
      >
      <description-html>
         <![CDATA[Current failover level. This is the number of physical host failures that
 can be tolerated without impacting the ability to satisfy the minimums for
 all running virtual machines. This represents the current value, as
 opposed to desired value configured by the user.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="NetIpRouteConfigSpec"
      type-id="vim.net.IpRouteConfigSpec"
      vmodl-name="vim.net.IpRouteConfigSpec"
      version-id-ref="vim.version.version6"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Address family independent IP Route Table Configuration data object.]]>
      </description-html>
            <property name="ipRoute" type-id-ref="vim.net.IpRouteConfigSpec.IpRouteSpec"
      vmodl-name="ipRoute"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The set of updates to apply to the routing table.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.net.IpRouteConfigSpec.GatewaySpec</nested-type-id-ref>
      <nested-type-id-ref>vim.net.IpRouteConfigSpec.IpRouteSpec</nested-type-id-ref>
   </data-object>
   <data-object name="DvsRestoreEvent"
      type-id="vim.event.DvsRestoreEvent"
      vmodl-name="vim.event.DvsRestoreEvent"
      version-id-ref="vim.version.version8"
      base-type-id="vim.event.DvsEvent"
      >
      <description-html>
         <![CDATA[This event is generated when a restore operation is
 performed on a distributed virtual switch]]>
      </description-html>
   </data-object>
   <data-object name="PlacementResult"
      type-id="vim.cluster.PlacementResult"
      vmodl-name="vim.cluster.PlacementResult"
      version-id-ref="vim.version.version10"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[<a href="vim.ClusterComputeResource.html#placeVm">PlaceVm</a> method can invoke DRS
   for recommendations for target hosts and datastores for placing a
   virtual machine and its virtual disks using xVMotion.

   PlacementResult is the class of the result returned by that method.
   <p>]]>
      </description-html>
            <property name="recommendations" type-id-ref="vim.cluster.Recommendation"
      vmodl-name="recommendations"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The list of recommendations for where to place the virtual machine
 and its virtual disks.]]>
      </description-html>
      </property>

            <property name="drsFault" type-id-ref="vim.cluster.DrsFaults"
      vmodl-name="drsFault"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Information about any fault in case DRS fails to make a recommendation.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="LockerReconfiguredEvent"
      type-id="vim.event.LockerReconfiguredEvent"
      vmodl-name="vim.event.LockerReconfiguredEvent"
      version-id-ref="vim.version.version2"
      base-type-id="vim.event.Event"
      >
      <description-html>
         <![CDATA[Locker was reconfigured to a new location.]]>
      </description-html>
            <property name="oldDatastore" type-id-ref="vim.event.DatastoreEventArgument"
      vmodl-name="oldDatastore"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The datastore that was previously backing the locker. This field is not
 set if a datastore was not backing the locker previously.]]>
      </description-html>
      </property>

            <property name="newDatastore" type-id-ref="vim.event.DatastoreEventArgument"
      vmodl-name="newDatastore"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The datastore that is now used to back the locker.
 This field is not set if no datastore is currently backing the locker.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostStorageSystemVmfsVolumeResult"
      type-id="vim.host.StorageSystem.VmfsVolumeResult"
      vmodl-name="vim.host.StorageSystem.VmfsVolumeResult"
      enclosing-type-id-ref="vim.host.StorageSystem"
      version-id-ref="vim.version.version10"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Contains the result of the operation performed on a VMFS volume.]]>
      </description-html>
            <property name="key" type-id-ref="java.lang.String"
      vmodl-name="key"
      >
      <description-html>
         <![CDATA[UUID of VMFS volume]]>
      </description-html>
      </property>

            <property name="fault" type-id-ref="vmodl.LocalizedMethodFault"
      vmodl-name="fault"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Fault if volume operation fails, unset if operation succeeds]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VMwareDVSVspanConfigSpec"
      type-id="vim.dvs.VmwareDistributedVirtualSwitch.VspanConfigSpec"
      vmodl-name="vim.dvs.VmwareDistributedVirtualSwitch.VspanConfigSpec"
      enclosing-type-id-ref="vim.dvs.VmwareDistributedVirtualSwitch"
      version-id-ref="vim.version.version7"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This class defines the configuration of a Distributed Port Mirroring session. A Distributed Port Mirroring session]]>
      </description-html>
            <property name="vspanSession" type-id-ref="vim.dvs.VmwareDistributedVirtualSwitch.VspanSession"
      vmodl-name="vspanSession"
      >
      <description-html>
         <![CDATA[The Distributed Port Mirroring session to be reconfigured.]]>
      </description-html>
      </property>

            <property name="operation" type-id-ref="java.lang.String"
      vmodl-name="operation"
      >
      <description-html>
         <![CDATA[Operation type, see
  <a href="vim.ConfigSpecOperation.html">ConfigSpecOperation</a> for valid values.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="PerfProviderSummary"
      type-id="vim.PerformanceManager.ProviderSummary"
      vmodl-name="vim.PerformanceManager.ProviderSummary"
      enclosing-type-id-ref="vim.PerformanceManager"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object type contains information about a performance provider,
  the type of statistics it generates, and the <a href="vim.PerformanceManager.ProviderSummary.html#refreshRate">refreshRate</a> for
  statistics generation. A performance provider is any <a href="vim.ExtensibleManagedObject.html">managed object</a> that generates real-time or
  historical statistics (or both&#151;the <a href="vim.PerformanceManager.ProviderSummary.html#currentSupported">currentSupported</a> and
  <a href="vim.PerformanceManager.ProviderSummary.html#summarySupported">summarySupported</a> properties are not mutually exclusive).]]>
      </description-html>
            <property name="entity" type-id-ref="vmodl.ManagedObject"
      vmodl-name="entity"
      >
      <description-html>
         <![CDATA[Reference to the performance provider, the <a href="vim.ExtensibleManagedObject.html">managed object</a> that provides real-time or
  historical metrics. The managed objects include but are not limited to
  <a href="vim.ManagedEntity.html">managed entities</a>, such as <a href="vim.HostSystem.html">host systems</a>, <a href="vim.VirtualMachine.html">virtual machines</a>, and <a href="vim.ResourcePool.html">resource pools</a>.]]>
      </description-html>
      </property>

            <property name="currentSupported" type-id-ref="BOOLEAN"
      vmodl-name="currentSupported"
      >
      <description-html>
         <![CDATA[True if this entity supports real-time (current) statistics; false if
  it does not. If this property is true for an entity, a client application
  can set the <a href="vim.PerformanceManager.QuerySpec.html#intervalId">intervalId</a> of the
  <a href="vim.PerformanceManager.QuerySpec.html">PerfQuerySpec</a> (passed to the
  <a href="vim.PerformanceManager.html#queryStats">QueryPerf</a> operation) to the <a href="vim.PerformanceManager.ProviderSummary.html#refreshRate">refreshRate</a> to obtain the maximum information possible for the
  entity.]]>
      </description-html>
      </property>

            <property name="summarySupported" type-id-ref="BOOLEAN"
      vmodl-name="summarySupported"
      >
      <description-html>
         <![CDATA[True if this entity supports historical (aggregated) statistics; false
  if it does not. When this property is true for an entity, a client
  application can set the <a href="vim.PerformanceManager.QuerySpec.html#intervalId">intervalId</a> of <a href="vim.PerformanceManager.html#queryStats">QueryPerf</a> to one of the historical <a href="vim.HistoricalInterval.html">intervals</a> to obtain historical statistics for this
  entity.]]>
      </description-html>
      </property>

            <property name="refreshRate" type-id-ref="INT"
      vmodl-name="refreshRate"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Number of seconds between the generation of each counter. This value
  applies only to entities that support real-time (current)
  statistics&#46;]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="CustomizationIpGenerator"
      type-id="vim.vm.customization.IpGenerator"
      vmodl-name="vim.vm.customization.IpGenerator"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Base type for the various IP specification possibilities.]]>
      </description-html>
   </data-object>
   <data-object name="VirtualDiskSeSparseBackingInfo"
      type-id="vim.vm.device.VirtualDisk.SeSparseBackingInfo"
      vmodl-name="vim.vm.device.VirtualDisk.SeSparseBackingInfo"
      enclosing-type-id-ref="vim.vm.device.VirtualDisk"
      version-id-ref="vim.version.version8"
      base-type-id="vim.vm.device.VirtualDevice.FileBackingInfo"
      >
      <description-html>
         <![CDATA[Backing type for virtual disks that use the space efficient
  sparse format.
  <p>
  Space for space efficient sparse disks is allocated on
  demand and optimizations are applied to achieve additional
  space savings. The effective space usage of such a disk can
  be obtained from <a href="vim.vm.FileLayoutEx.html">VirtualMachineFileLayoutEx</a>.]]>
      </description-html>
            <property name="diskMode" type-id-ref="java.lang.String"
      vmodl-name="diskMode"
      >
      <description-html>
         <![CDATA[The disk persistence mode. Valid modes are:
  <ul>
  <li>vim.vm.device.VirtualDiskOption.DiskMode#persistent
  <li>vim.vm.device.VirtualDiskOption.DiskMode#independent_persistent
  <li>vim.vm.device.VirtualDiskOption.DiskMode#independent_nonpersistent
  <li>vim.vm.device.VirtualDiskOption.DiskMode#nonpersistent
  <li>vim.vm.device.VirtualDiskOption.DiskMode#undoable
  <li>vim.vm.device.VirtualDiskOption.DiskMode#append
  </ul><br>See <a href="vim.vm.device.VirtualDiskOption.DiskMode.html">VirtualDiskMode</a><br>]]>
      </description-html>
      </property>

            <property name="writeThrough" type-id-ref="BOOLEAN"
      vmodl-name="writeThrough"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Flag to indicate whether writes should go directly to the file system
  or should be buffered.]]>
      </description-html>
      </property>

            <property name="uuid" type-id-ref="java.lang.String"
      vmodl-name="uuid"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Disk UUID for the virtual disk, if available.]]>
      </description-html>
      </property>

            <property name="contentId" type-id-ref="java.lang.String"
      vmodl-name="contentId"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Content ID of the virtual disk file, if available.
 <p>
 A content ID indicates the logical contents of the disk backing and its parents.
 <p>
 This property is only guaranteed to be up to date if this disk backing is not
 currently being written to by any virtual machine.
 <p>
 The only supported operation is comparing if two content IDs are equal or not.
 The guarantee provided by the content ID is that if two disk backings have the
 same content ID and are not currently being written to, then reads issued from
 the guest operating system to those disk backings will return the same data.]]>
      </description-html>
      </property>

            <property name="changeId" type-id-ref="java.lang.String"
      vmodl-name="changeId"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The change ID of the virtual disk for the corresponding
 snapshot or virtual machine. This can be used to track
 incremental changes to a virtual disk. See <a href="vim.VirtualMachine.html#queryChangedDiskAreas">QueryChangedDiskAreas</a>.]]>
      </description-html>
      </property>

            <property name="parent" type-id-ref="vim.vm.device.VirtualDisk.SeSparseBackingInfo"
      vmodl-name="parent"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The parent of this virtual disk file, if this is a delta disk backing.
 This will be unset if this is not a delta disk backing.
 <p>
 A delta disk backing is a way to preserve a virtual disk backing
 at some point in time.  A delta disk backing is a file backing which in
 turn points to the original virtual disk backing (the parent).  After a delta
 disk backing is added, all writes go to the delta disk backing.  All reads
 first try the delta disk backing and then try the parent backing if needed.
 <p>
 A delta disk backing can be added to a disk either implicitly during
 snapshot operations, or explicitly during create or reconfigure of the virtual
 machine.
 <p>
 Note that the type of the backing is consistent throughout the chain; any new
 delta disk backing which is added is of the same type as the original disk .
 Also note that since the parent backing is not being written to,
 it is possible that the parent backing may be shared among multiple
 disks belonging to multiple virtual machines.
 <p>
 During virtual machine <a href="vim.Folder.html#createVm">CreateVM_Task</a> and
 <a href="vim.VirtualMachine.html#reconfigure">ReconfigVM_Task</a> this property is
 only checked if the <a href="vim.vm.device.VirtualDeviceSpec.html">VirtualDeviceConfigSpec</a> specifies
 an add operation with a
 create file operation.
 In this case, a new delta disk backing is created which points to the parent
 disk backing.  Only the <a href="vim.vm.device.VirtualDevice.FileBackingInfo.html#fileName">fileName</a>
 property is important; all other properties will be ignored.  The parent backing
 is assumed to exist and will not be recursively created.
 <p>
 This property may only be set if
 <a href="vim.host.Capability.html#deltaDiskBackingsSupported">deltaDiskBackingsSupported</a>
 is true.]]>
      </description-html>
      </property>

            <property name="deltaDiskFormat" type-id-ref="java.lang.String"
      vmodl-name="deltaDiskFormat"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The format of the delta disk.
  <p>
  This field is valid only for a delta disk.
  <p>
  See <a href="vim.vm.device.VirtualDisk.DeltaDiskFormat.html">DeltaDiskFormat</a> for the
  supported formats. If not specified, the default value used is
  redoLogFormat.]]>
      </description-html>
      </property>

            <property name="digestEnabled" type-id-ref="BOOLEAN"
      vmodl-name="digestEnabled"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates whether the disk backing has digest file enabled.]]>
      </description-html>
      </property>

            <property name="grainSize" type-id-ref="INT"
      vmodl-name="grainSize"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Specify the grain size in kB.  The default size is 4 kB.]]>
      </description-html>
      </property>

            <property name="keyId" type-id-ref="vim.encryption.CryptoKeyId"
      vmodl-name="keyId"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Virtual Disk Backing encryption options.
 On modification operations the value is ignored, use the specification
 <a href="vim.vm.device.VirtualDeviceSpec.BackingSpec.html#crypto">crypto</a> in
 <a href="vim.vm.device.VirtualDeviceSpec.html#backing">backing</a>.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DatastorePrincipalConfigured"
      type-id="vim.event.DatastorePrincipalConfigured"
      vmodl-name="vim.event.DatastorePrincipalConfigured"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.HostEvent"
      >
      <description-html>
         <![CDATA[This event records that a datastore principal was configured on a host.]]>
      </description-html>
            <property name="datastorePrincipal" type-id-ref="java.lang.String"
      vmodl-name="datastorePrincipal"
      >
      </property>

   </data-object>
   <data-object name="GuestAuthNamedSubject"
      type-id="vim.vm.guest.AliasManager.GuestAuthNamedSubject"
      vmodl-name="vim.vm.guest.AliasManager.GuestAuthNamedSubject"
      enclosing-type-id-ref="vim.vm.guest.AliasManager"
      version-id-ref="vim.version.version10"
      base-type-id="vim.vm.guest.AliasManager.GuestAuthSubject"
      >
      <description-html>
         <![CDATA[A named subject. Grants access to a specific vSphere user with
 the specified name.]]>
      </description-html>
            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      >
      <description-html>
         <![CDATA[The subject name.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="OptionValue"
      type-id="vim.option.OptionValue"
      vmodl-name="vim.option.OptionValue"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Describes the key/value pair of a configured option.]]>
      </description-html>
            <property name="key" type-id-ref="java.lang.String"
      vmodl-name="key"
      >
      <description-html>
         <![CDATA[The name of the option using dot notation to reflect the
  option's position in a hierarchy.  For example, you might
  have an option called "Ethernet" and another option that is
  a child of that called "Connection".  In this case, the key
  for the latter could be defined as "Ethernet.Connection"]]>
      </description-html>
      </property>

            <property name="value" type-id-ref="vmodl.Any"
      vmodl-name="value"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The value of the option. The Any data object type enables you to
  define any value for the option. Typically, however, the value
  of an option is of type String or Integer.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostHardwareSummary"
      type-id="vim.host.Summary.HardwareSummary"
      vmodl-name="vim.host.Summary.HardwareSummary"
      enclosing-type-id-ref="vim.host.Summary"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object type summarizes hardware used by the host.]]>
      </description-html>
            <property name="vendor" type-id-ref="java.lang.String"
      vmodl-name="vendor"
      >
      <description-html>
         <![CDATA[The hardware vendor identification.]]>
      </description-html>
      </property>

            <property name="model" type-id-ref="java.lang.String"
      vmodl-name="model"
      >
      <description-html>
         <![CDATA[The system model identification.]]>
      </description-html>
      </property>

            <property name="uuid" type-id-ref="java.lang.String"
      vmodl-name="uuid"
      >
      <description-html>
         <![CDATA[The hardware BIOS identification.]]>
      </description-html>
      </property>

            <property name="otherIdentifyingInfo" type-id-ref="vim.host.SystemIdentificationInfo"
      vmodl-name="otherIdentifyingInfo"
      version-id-ref="vim.version.version2"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Other identification information. This information may be vendor
  specific.]]>
      </description-html>
      </property>

            <property name="memorySize" type-id-ref="LONG"
      vmodl-name="memorySize"
      >
      <description-html>
         <![CDATA[The physical memory size in bytes.]]>
      </description-html>
      </property>

            <property name="cpuModel" type-id-ref="java.lang.String"
      vmodl-name="cpuModel"
      >
      <description-html>
         <![CDATA[The CPU model.]]>
      </description-html>
      </property>

            <property name="cpuMhz" type-id-ref="INT"
      vmodl-name="cpuMhz"
      >
      <description-html>
         <![CDATA[The speed of the CPU cores. This is an average value if there are multiple
  speeds. The product of cpuMhz and numCpuCores is approximately equal to the
  sum of the MHz for all the individual cores on the host.]]>
      </description-html>
      </property>

            <property name="numCpuPkgs" type-id-ref="SHORT"
      vmodl-name="numCpuPkgs"
      >
      <description-html>
         <![CDATA[Number of physical CPU packages on the host. Physical CPU packages are chips
  that contain one or more processors. Processors contained by a package are
  also known as CPU cores. For example, one dual-core package is comprised of
  one chip that contains two CPU cores.]]>
      </description-html>
      </property>

            <property name="numCpuCores" type-id-ref="SHORT"
      vmodl-name="numCpuCores"
      >
      <description-html>
         <![CDATA[Number of physical CPU cores on the host. Physical CPU cores are the
  processors contained by a CPU package.]]>
      </description-html>
      </property>

            <property name="numCpuThreads" type-id-ref="SHORT"
      vmodl-name="numCpuThreads"
      >
      <description-html>
         <![CDATA[Number of physical CPU threads on the host.]]>
      </description-html>
      </property>

            <property name="numNics" type-id-ref="INT"
      vmodl-name="numNics"
      >
      <description-html>
         <![CDATA[The number of network adapters.]]>
      </description-html>
      </property>

            <property name="numHBAs" type-id-ref="INT"
      vmodl-name="numHBAs"
      >
      <description-html>
         <![CDATA[The number of host bus adapters (HBAs).]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostDiskPartitionAttributes"
      type-id="vim.host.DiskPartitionInfo.Partition"
      vmodl-name="vim.host.DiskPartitionInfo.Partition"
      enclosing-type-id-ref="vim.host.DiskPartitionInfo"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Information about a single disk partition.  A partition is a contiguous
  set of blocks on a disk that is marked for use.  The typeId identifies
  the purpose of the data in the partition.]]>
      </description-html>
            <property name="partition" type-id-ref="INT"
      vmodl-name="partition"
      >
      <description-html>
         <![CDATA[The partition number.  Must be a positive integer.]]>
      </description-html>
      </property>

            <property name="startSector" type-id-ref="LONG"
      vmodl-name="startSector"
      >
      <description-html>
         <![CDATA[The start sector.]]>
      </description-html>
      </property>

            <property name="endSector" type-id-ref="LONG"
      vmodl-name="endSector"
      >
      <description-html>
         <![CDATA[The end sector.]]>
      </description-html>
      </property>

            <property name="type" type-id-ref="java.lang.String"
      vmodl-name="type"
      >
      <description-html>
         <![CDATA[Type of data in the partition.  If it is a well-known partition type,
  it will be one of the defined types.  If it is not, then it will be
  reported as a hexadecimal number.  For example, "none", "vmfs", "linux",
  and "0x20" are all valid values.<br>See <a href="vim.host.DiskPartitionInfo.Type.html">HostDiskPartitionInfoType</a><br>]]>
      </description-html>
      </property>

            <property name="guid" type-id-ref="java.lang.String"
      vmodl-name="guid"
      version-id-ref="vim.version.version7"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Globally Unique Identifier of the partition, as defined by the GUID
 Partition Table (GPT) format. This is available only for GPT formatted
 disks.]]>
      </description-html>
      </property>

            <property name="logical" type-id-ref="BOOLEAN"
      vmodl-name="logical"
      >
      <description-html>
         <![CDATA[The flag to indicate whether or not the partition is
  logical.  If true, the partition
  number should be greater than 4.]]>
      </description-html>
      </property>

            <property name="attributes" type-id-ref="BYTE"
      vmodl-name="attributes"
      >
      <description-html>
         <![CDATA[The attributes on the partition.]]>
      </description-html>
      </property>

            <property name="partitionAlignment" type-id-ref="LONG"
      vmodl-name="partitionAlignment"
      version-id-ref="vim.version.version7"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Partition alignment in bytes.
 If unset, partition alignment value is unknown.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="UnlicensedVirtualMachinesEvent"
      type-id="vim.event.UnlicensedVirtualMachinesEvent"
      vmodl-name="vim.event.UnlicensedVirtualMachinesEvent"
      version-id-ref="vim.version.version2"
      base-type-id="vim.event.LicenseEvent"
      >
      <description-html>
         <![CDATA[This event records that we have unlicensed virtual machines on the
 specified host. This can be both a (@link vim.ManagedEntity.configIssue
 configIssue) and an entry in the event log.]]>
      </description-html>
            <property name="unlicensed" type-id-ref="INT"
      vmodl-name="unlicensed"
      >
      </property>

            <property name="available" type-id-ref="INT"
      vmodl-name="available"
      >
      </property>

   </data-object>
   <data-object name="SelectionSpec"
      type-id="vmodl.query.PropertyCollector.SelectionSpec"
      vmodl-name="vmodl.query.PropertyCollector.SelectionSpec"
      enclosing-type-id-ref="vmodl.query.PropertyCollector"
      version-id-ref="vmodl.query.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The <a href="vmodl.query.PropertyCollector.SelectionSpec.html">SelectionSpec</a> is the base type for data
  object types that specify what additional objects to filter. The base
  type contains only an optional "name" field, which allows a selection to
  be named for future reference. More information is available in the
  subtype.

  <p> Named selections support recursive specifications on an object
  hierarchy.  When used by a derived object, the "name" field allows other
  <a href="vmodl.query.PropertyCollector.SelectionSpec.html">SelectionSpec</a> objects to refer to the object by
  name. When used as the base type only, the "name" field indicates
  recursion to the derived object by name.

  <p> Names are meaningful only within the same FilterSpec.]]>
      </description-html>
            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Name of the selection specification.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ClusterHostGroup"
      type-id="vim.cluster.HostGroup"
      vmodl-name="vim.cluster.HostGroup"
      version-id-ref="vim.version.version6"
      base-type-id="vim.cluster.GroupInfo"
      >
      <description-html>
         <![CDATA[The <a href="vim.cluster.HostGroup.html">ClusterHostGroup</a> data object identifies hosts for VM-Host rules.
  VM-Host rules determine placement of virtual machines on hosts in a cluster.
  The logic specified in a <a href="vim.cluster.VmHostRuleInfo.html">ClusterVmHostRuleInfo</a> object
  determines where virtual machines can be powered-on.]]>
      </description-html>
            <property name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of hosts that are part of this group.
 A host group can contain zero or more hosts.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="GroupAlarmAction"
      type-id="vim.alarm.GroupAlarmAction"
      vmodl-name="vim.alarm.GroupAlarmAction"
      version-id-ref="vim.version.version1"
      base-type-id="vim.alarm.AlarmAction"
      >
      <description-html>
         <![CDATA[This data object type describes a group of
 actions that occur when the alarm is triggered. These actions are not
 necessarily executed in order.]]>
      </description-html>
            <property name="action" type-id-ref="vim.alarm.AlarmAction"
      vmodl-name="action"
      is-array="true"
      >
      <description-html>
         <![CDATA[The list of alarm actions that occur when the alarm is triggered.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DistributedVirtualSwitchPortConnection"
      type-id="vim.dvs.PortConnection"
      vmodl-name="vim.dvs.PortConnection"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The <a href="vim.dvs.PortConnection.html">DistributedVirtualSwitchPortConnection</a> data object represents a connection
  or association between a <a href="vim.dvs.DistributedVirtualPortgroup.html">DistributedVirtualPortgroup</a> or a
  <a href="vim.dvs.DistributedVirtualPort.html">DistributedVirtualPort</a> and one of the following entities:
  <ul>
  <li>Virtual machine virtual NIC
      (<a href="vim.vm.device.VirtualEthernetCard.DistributedVirtualPortBackingInfo.html">VirtualEthernetCardDistributedVirtualPortBackingInfo</a>)</li>
  <li>Host virtual NIC (<a href="vim.host.VirtualNic.html">HostVirtualNic</a>)</li>
  <li>Physical NIC (<a href="vim.host.NetworkInfo.html">HostNetworkInfo</a>.<a href="vim.host.NetworkInfo.html#pnic">pnic</a>)</li>
  </ul>]]>
      </description-html>
            <property name="switchUuid" type-id-ref="java.lang.String"
      vmodl-name="switchUuid"
      >
      <description-html>
         <![CDATA[UUID of the switch (<a href="vim.DistributedVirtualSwitch.html">DistributedVirtualSwitch</a>.<a href="vim.DistributedVirtualSwitch.html#uuid">Uuid</a>).]]>
      </description-html>
      </property>

            <property name="portgroupKey" type-id-ref="java.lang.String"
      vmodl-name="portgroupKey"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Key of the portgroup. If specified, the connection object represents a connection
  or an association between a <a href="vim.dvs.DistributedVirtualPortgroup.html">DistributedVirtualPortgroup</a>
  and a Virtual NIC or physical NIC.
  In this case, setting the <a href="vim.dvs.PortConnection.html#portKey">portKey</a> is not necessary for a
  early-binding portgroup and is not allowed for a late-binding portgroup.
  The <a href="vim.dvs.PortConnection.html#portKey">portKey</a> property will be populated by the implementation
  at the time of port binding.]]>
      </description-html>
      </property>

            <property name="portKey" type-id-ref="java.lang.String"
      vmodl-name="portKey"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Key of the port. If specified, this object represents a connection
  or an association between an individual <a href="vim.dvs.DistributedVirtualPort.html">DistributedVirtualPort</a>
  and a Virtual NIC or physical NIC. See <a href="vim.dvs.PortConnection.html#portgroupKey">portgroupKey</a> for more information on populating
  this property.]]>
      </description-html>
      </property>

            <property name="connectionCookie" type-id-ref="INT"
      vmodl-name="connectionCookie"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Cookie that represents this <a href="vim.dvs.PortConnection.html">DistributedVirtualSwitchPortConnection</a>
 instance for the port. The cookie value is generated by the
 Server. The Server ignores any value set by an SDK client.
 <p>
 The same cookie is present in the distributed virtual port configuration
 (<a href="vim.dvs.DistributedVirtualPort.html">DistributedVirtualPort</a>.<a href="vim.dvs.DistributedVirtualPort.html#connectionCookie">connectionCookie</a>)
 so that the Server can verify that the entity is the rightful
 connectee of the port.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualSerialPortURIBackingInfo"
      type-id="vim.vm.device.VirtualSerialPort.URIBackingInfo"
      vmodl-name="vim.vm.device.VirtualSerialPort.URIBackingInfo"
      enclosing-type-id-ref="vim.vm.device.VirtualSerialPort"
      version-id-ref="vim.version.version6"
      base-type-id="vim.vm.device.VirtualDevice.URIBackingInfo"
      >
      <description-html>
         <![CDATA[The <code><a href="vim.vm.device.VirtualSerialPort.URIBackingInfo.html">VirtualSerialPortURIBackingInfo</a></code> data object
  specifies network backing for a <code><a href="vim.vm.device.VirtualSerialPort.html">VirtualSerialPort</a></code>.
  You can use URI backing to create a network serial port on the virtual machine,
  supporting connections between the virtual machine and remote systems.
  <p>
  When a virtual machine  establishes a connection with a remote system on the network,
  the virtual machine can act as a server or a client. When the virtual machine
  acts as a server, it accepts a connection. When the virtual machine acts as a client,
  it initiates the connection.
  <p>
  You can configure the virtual serial port for communication through a
  virtual serial port concentrator that acts as a proxy between the virtual
  machine and the network. When you specify a
  <code><a href="vim.vm.device.VirtualDevice.URIBackingInfo.html#proxyURI">proxyURI</a></code>,
  the virtual machine initiates the connection with the concentrator
  and forwards the <code><a href="vim.vm.device.VirtualDevice.URIBackingInfo.html#direction">direction</a></code>
  and <code><a href="vim.vm.device.VirtualDevice.URIBackingInfo.html#serviceURI">serviceURI</a></code>
  to the concentrator.
  For information about using a virtual serial port concentrator,
  see <i>Using a Proxy with vSphere Virtual Serial Ports</i>.
  <p>
  ESX hosts support different protocols depending on your virtual serial port configuration.
  <ul>
    <li>If the virtual machine is handling the network connection
        directly (no <code><a href="vim.vm.device.VirtualDevice.URIBackingInfo.html#proxyURI">proxyURI</a></code> specified),
        you can use telnet, TCP, and SSL protocols.
        The <code><a href="vim.vm.device.VirtualDevice.URIBackingInfo.html#serviceURI">serviceURI</a></code>
        must use one of the following URI schemes:
        <ul style="list-style-type:square">
          <li><code>&lt;host&gt;:&lt;port&gt;</code> - this is the equivalent of
          <code>tcp://&lt;host&gt;:&lt;port&gt;</code>.
          <li><code>tcp://&lt;host&gt;:&lt;port&gt;</code> - unencrypted TCP connection
              (IPv4 or IPv6).
          <li><code>tcp4://&lt;host&gt;:&lt;port&gt;</code> - unencrypted TCP connection
              (IPv4 only).
          <li><code>tcp6://&lt;host&gt;:&lt;port&gt;</code> - unencrypted TCP connection
              (IPv6 only).
          <li><code>ssl://&lt;host&gt;:&lt;port&gt;</code> - this is the equivalent of
              <code>tcp+ssl://&lt;host&gt;:&lt;port&gt;</code>.
          <li><code>tcp+ssl://&lt;host&gt;:&lt;port&gt;</code> - encrypted SSL over TCP.
          <li><code>tcp4+ssl://&lt;host&gt;:&lt;port&gt;</code> - SSL over TCP over IPv4.
          <li><code>tcp6+ssl://&lt;host&gt;:&lt;port&gt;</code> - SSL over TCP over IPv6.
          <li><code>telnet://&lt;host&gt;:&lt;port&gt;</code> - telnet over TCP.
              The virtual machine and remote system can negotiate and use SSL if the remote
              system supports the telnet authentication option; if not, the connection
              uses unencrypted text (plaintext).
          <li><code>telnets://&lt;host&gt;:&lt;port&gt;</code> - telnet over SSL over TCP.
              In this case, SSL negotiation begins immediately and you cannot use
              the telnet authentication option.
       </ul>

       As of vSphere 5.1 you can specify authentication parameters to support an encrypted
       connection with a remote system using SSL over telnet or telnets.
       The connection will fail if the peer does not support the protocols.
       You cannot use certificate verification when you specify
       <code>tcp</code>, <code>tcp4</code>, or <code>tcp6</code> schemas. For information
       about parameter specification, see <a href="#authparam">Authentication Parameters</a>
       below.
       <br /><br />
    <li>If you are using a <code><a href="vim.vm.device.VirtualDevice.URIBackingInfo.html#proxyURI">proxyURI</a></code>
        to connect to a virtual serial port concentrator, the URI scheme for
        the communication between the remote system on the network and the concentrator
        depends on the concentrator implementation. The connection between
        the concentrator and the virtual serial port must use telnet or secure telnet
        (telnets). The proxy URI must use one of the following URI schemes. You cannot
        specify a username and password in the proxy URI.
        <ul style="list-style-type:square">
          <li><code>telnet://&lt;host&gt;:&lt;port&gt;</code>- telnet over TCP.
              The virtual machine and remote system can negotiate and use SSL if the remote
              system supports the telnet authentication option; if not, the connection
              uses unencrypted text (plaintext).
          <li><code>telnets://&lt;host&gt;:&lt;port&gt;</code> - telnet over SSL over TCP.
              In this case, SSL negotiation starts immediately and you cannot use
              the telnet authentication option.
        </ul>
       As of vSphere 5.1 you can specify authentication parameters to support an encrypted
       connection with a concentrator using SSL over telnet or telnets.
       The connection will fail if the concentrator does not support the protocols.
       For information about parameter specification,
       see <a href="#authparam">Authentication Parameters</a> below.
       <p>
  </ul>
  <a name="authparam"></a>
  <b>Authentication Parameters</b><br /><br />
  For an encrypted connection, the URI includes a set of authentication
  parameters. The parameters are specified as key words or key/value pairs.
  The following syntax description uses <code>telnet</code>; you can also
  specify authentication parameters for secure telnet (<code>telnets</code>).
  <p>
  <code>telnet://&lt;host&gt;:&lt;port&gt;&num;key[=value][&amp;key[=value] ...]</code>
  <p>
  The first parameter must have a number sign (&num;) prefix. Additional parameters
  must have an ampersand (&amp;) prefix. The following list shows the valid parameters.
  <ul>
  <li><code>thumbprint=value</code> - Specifies a certificate thumbprint against
  which the peer certificate thumbprint is compared. When you specify a thumbprint,
  certificate verification is automatically enabled. See the description of the
  <code>verify</code> parameter below.</li>
  <li><code>peerName=value</code> - Specifies the peer name that will be used
  to validate the peer certificate. When you specify a peer name,
  certificate verification is automatically enabled. See the description of the
  <code>verify</code> parameter below.</li>
  <li><code>verify</code> - Forces certificate verification. The virtual machine
  will verify that the peer certificate subject matches the specified
  <code>peerName</code> and that it was signed by a certificate authority
  known to the ESXi host. Verification is automatically enabled if you specify a
  <code>thumbprint</code> or <code>peerName</code>.
  <li><code>cipherList=value</code> - Specifies a list of SSL ciphers.
  See <a href="http://www.openssl.org/docs/apps/ciphers.html">OpenSSL ciphers</a>.
  The ciphers are specified as a list separated by colons, spaces, or commas.</li>
  </ul>
  <p>
  For information about URI format, see
  <a href="http://www.ietf.org/rfc/rfc2396.txt">RFC 2396</a>.]]>
      </description-html>
   </data-object>
   <data-object name="CustomizationSucceeded"
      type-id="vim.event.CustomizationSucceeded"
      vmodl-name="vim.event.CustomizationSucceeded"
      version-id-ref="vim.version.version2"
      base-type-id="vim.event.CustomizationEvent"
      >
      <description-html>
         <![CDATA[The customization sequence completed successfully in the guest.]]>
      </description-html>
   </data-object>
   <data-object name="HostServiceInfo"
      type-id="vim.host.ServiceInfo"
      vmodl-name="vim.host.ServiceInfo"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Data object describing the host service configuration.]]>
      </description-html>
            <property name="service" type-id-ref="vim.host.Service"
      vmodl-name="service"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of configured services.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualCdromPassthroughBackingInfo"
      type-id="vim.vm.device.VirtualCdrom.PassthroughBackingInfo"
      vmodl-name="vim.vm.device.VirtualCdrom.PassthroughBackingInfo"
      enclosing-type-id-ref="vim.vm.device.VirtualCdrom"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.device.VirtualDevice.DeviceBackingInfo"
      >
      <description-html>
         <![CDATA[The VirtualCdrom.PassthroughBackingInfo data class
  represents a device pass-through backing for a
  virtual CD-ROM.]]>
      </description-html>
            <property name="exclusive" type-id-ref="BOOLEAN"
      vmodl-name="exclusive"
      >
      <description-html>
         <![CDATA[Flag to indicate whether or not the virtual machine has
  exclusive CD-ROM device access.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="TaskDescription"
      type-id="vim.TaskDescription"
      vmodl-name="vim.TaskDescription"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Static strings for task objects. These strings are locale-specific.]]>
      </description-html>
            <property name="methodInfo" type-id-ref="vim.ElementDescription"
      vmodl-name="methodInfo"
      is-array="true"
      >
      <description-html>
         <![CDATA[Display label and summary for all tasks]]>
      </description-html>
      </property>

            <property name="state" type-id-ref="vim.ElementDescription"
      vmodl-name="state"
      is-array="true"
      >
      <description-html>
         <![CDATA[<a href="vim.TaskInfo.State.html">TaskInfo State enum</a>]]>
      </description-html>
      </property>

            <property name="reason" type-id-ref="vim.TypeDescription"
      vmodl-name="reason"
      is-array="true"
      >
      <description-html>
         <![CDATA[Kind of entity responsible for creating this task.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="TemplateBeingUpgradedEvent"
      type-id="vim.event.TemplateBeingUpgradedEvent"
      vmodl-name="vim.event.TemplateBeingUpgradedEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.TemplateUpgradeEvent"
      >
      <description-html>
         <![CDATA[This event records the start of a template upgrade.]]>
      </description-html>
   </data-object>
   <data-object name="VirtualCdromOption"
      type-id="vim.vm.device.VirtualCdromOption"
      vmodl-name="vim.vm.device.VirtualCdromOption"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.device.VirtualDeviceOption"
      >
      <description-html>
         <![CDATA[The VirtualCdromOption data object type contains the options for the
  virtual CD-ROM class.]]>
      </description-html>
      <nested-type-id-ref>vim.vm.device.VirtualCdromOption.IsoBackingOption</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.device.VirtualCdromOption.PassthroughBackingOption</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.device.VirtualCdromOption.RemotePassthroughBackingOption</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.device.VirtualCdromOption.AtapiBackingOption</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.device.VirtualCdromOption.RemoteAtapiBackingOption</nested-type-id-ref>
   </data-object>
   <data-object name="StorageDrsSpaceLoadBalanceConfig"
      type-id="vim.storageDrs.SpaceLoadBalanceConfig"
      vmodl-name="vim.storageDrs.SpaceLoadBalanceConfig"
      version-id-ref="vim.version.version7"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Storage DRS configuration for space load balancing.
  <p>]]>
      </description-html>
            <property name="spaceThresholdMode" type-id-ref="java.lang.String"
      vmodl-name="spaceThresholdMode"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      </property>

            <property name="spaceUtilizationThreshold" type-id-ref="INT"
      vmodl-name="spaceUtilizationThreshold"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Storage DRS makes storage migration recommendations if
  space utilization on one (or more) of the datastores is higher than
  the specified threshold.
  <p>
  The valid values are in the range of 50 (i.e., 50%) to 100 (i.e., 100%).
  If not specified, the default value is 80%.]]>
      </description-html>
      </property>

            <property name="freeSpaceThresholdGB" type-id-ref="INT"
      vmodl-name="freeSpaceThresholdGB"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Storage DRS makes storage migration recommendations if
  free space on one (or more) of the datastores falls below
  the specified threshold.
  <p>
  The unit is in gigabytes and the minimum value is 1GB.
  The maximum value is limited by the capacity of the smallest
  datastore in a datastore cluster.
  If not specified, the default value is 50GB.]]>
      </description-html>
      </property>

            <property name="minSpaceUtilizationDifference" type-id-ref="INT"
      vmodl-name="minSpaceUtilizationDifference"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Storage DRS considers making storage migration recommendations if
  the difference in space utilization between the source and destination datastores
  is higher than the specified threshold.
  <p>
  The valid values are in the range of 1 (i.e., 1%) to 50 (i.e., 50%).
  If not specified, the default value is 5%.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.storageDrs.SpaceLoadBalanceConfig.SpaceThresholdMode</nested-type-id-ref>
   </data-object>
   <data-object name="VirtualTPM"
      type-id="vim.vm.device.VirtualTPM"
      vmodl-name="vim.vm.device.VirtualTPM"
      version-id-ref="vim.version.version12"
      base-type-id="vim.vm.device.VirtualDevice"
      >
      <description-html>
         <![CDATA[This data object type represents a TPM 2.0 module
  in a virtual machine.]]>
      </description-html>
            <property name="endorsementKeyCertificateSigningRequest" type-id-ref="vmodl.Binary"
      vmodl-name="endorsementKeyCertificateSigningRequest"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Endorsement Key Certificate Signing Request in DER format.
  There may be more than one - one for RSA 2048, one for ECC NIST P256,
  and any number of other signing requests for other algorithms.]]>
      </description-html>
      </property>

            <property name="endorsementKeyCertificate" type-id-ref="vmodl.Binary"
      vmodl-name="endorsementKeyCertificate"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Endorsement Key Certificate in DER format.
  There may be more than one.  Indices in this array do not match
  indices in <a href="vim.vm.device.VirtualTPM.html#endorsementKeyCertificateSigningRequest">endorsementKeyCertificateSigningRequest</a> array,
  entries must be matched by comparing fields in DER data between
  certificate signing requests and certificates.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HttpNfcLeaseDeviceUrl"
      type-id="vim.HttpNfcLease.DeviceUrl"
      vmodl-name="vim.HttpNfcLease.DeviceUrl"
      enclosing-type-id-ref="vim.HttpNfcLease"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Provides a mapping from logical device IDs to upload/download
  URLs.
  <p>
  For export, a single device id is returned based on the object
  identifiers for the objects.
 <p>
  For import, two device ids are returned. One based on the object
  names used in the ImportSpec, and one based on the object
  identifiers for the created objects. This is immutable and would
  match the id if an ExportLease is latter created.]]>
      </description-html>
            <property name="key" type-id-ref="java.lang.String"
      vmodl-name="key"
      >
      <description-html>
         <![CDATA[The immutable identifier for the device. This is set for both import/export
  leases.]]>
      </description-html>
      </property>

            <property name="importKey" type-id-ref="java.lang.String"
      vmodl-name="importKey"
      >
      <description-html>
         <![CDATA[Identifies the device based on the names in an ImportSpec. This is only
  set for import leases.]]>
      </description-html>
      </property>

            <property name="url" type-id-ref="java.lang.String"
      vmodl-name="url"
      >
      </property>

            <property name="sslThumbprint" type-id-ref="java.lang.String"
      vmodl-name="sslThumbprint"
      >
      <description-html>
         <![CDATA[SSL thumbprint for the host the URL refers to. Empty if no SSL thumbprint
 is available or needed.]]>
      </description-html>
      </property>

            <property name="disk" type-id-ref="BOOLEAN"
      vmodl-name="disk"
      version-id-ref="vim.version.version6"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Optional value to specify if the attached file is a disk in
 vmdk format.]]>
      </description-html>
      </property>

            <property name="targetId" type-id-ref="java.lang.String"
      vmodl-name="targetId"
      version-id-ref="vim.version.version6"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Id for this target. This only used for multi-POSTing, where a single HTTP
 POST is applied to multiple targets.]]>
      </description-html>
      </property>

            <property name="datastoreKey" type-id-ref="java.lang.String"
      vmodl-name="datastoreKey"
      version-id-ref="vim.version.version6"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Key for the datastore this disk is on. This is used to look up hosts
 which can be used to multi-POST disk contents, in the host map of the
 lease.]]>
      </description-html>
      </property>

            <property name="fileSize" type-id-ref="LONG"
      vmodl-name="fileSize"
      version-id-ref="vim.version.version6"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Specifies the size of the file backing for this device. This property
 is only set for non-disk file backings.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="PodDiskLocator"
      type-id="vim.storageDrs.PodSelectionSpec.DiskLocator"
      vmodl-name="vim.storageDrs.PodSelectionSpec.DiskLocator"
      enclosing-type-id-ref="vim.storageDrs.PodSelectionSpec"
      version-id-ref="vim.version.version7"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The disk locator class.]]>
      </description-html>
            <property name="diskId" type-id-ref="INT"
      vmodl-name="diskId"
      >
      <description-html>
         <![CDATA[The disk ID.]]>
      </description-html>
      </property>

            <property name="diskMoveType" type-id-ref="java.lang.String"
      vmodl-name="diskMoveType"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The disk move type.]]>
      </description-html>
      </property>

            <property name="diskBackingInfo" type-id-ref="vim.vm.device.VirtualDevice.BackingInfo"
      vmodl-name="diskBackingInfo"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The disk backing info.]]>
      </description-html>
      </property>

            <property name="profile" type-id-ref="vim.vm.ProfileSpec"
      vmodl-name="profile"
      version-id-ref="vim.version.version9"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Virtual Disk Profile requirement.

 Profiles are solution specific.

 Profile Based Storage Management is a vSphere server extension.
 The API users who want to provision VMs using Storage Profiles, need to
 interact with it.

 This is an optional parameter and if user doesn't specify profile,
 the default behavior will apply.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ServiceContent"
      type-id="vim.ServiceInstanceContent"
      vmodl-name="vim.ServiceInstanceContent"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The <a href="vim.ServiceInstanceContent.html">ServiceContent</a> data object defines properties for the ServiceInstance
  managed object. The ServiceInstance itself does not have directly-accessible
  properties because reading the properties of a managed object requires
  the use of a property collector, and the property collector itself
  is a property of the <a href="vim.ServiceInstance.html">ServiceInstance</a>.

  For this reason, use the method <a href="vim.ServiceInstance.html#retrieveContent">RetrieveServiceContent</a>
  to retrieve the <a href="vim.ServiceInstanceContent.html">ServiceContent</a> object.]]>
      </description-html>
            <property name="rootFolder" type-id-ref="vim.Folder"
      vmodl-name="rootFolder"
      >
      <description-html>
         <![CDATA[Reference to the top of the inventory managed by this service.]]>
      </description-html>
      </property>

            <property name="propertyCollector" type-id-ref="vmodl.query.PropertyCollector"
      vmodl-name="propertyCollector"
      >
      <description-html>
         <![CDATA[Reference to a per-session object for retrieving properties and updates.]]>
      </description-html>
      </property>

            <property name="viewManager" type-id-ref="vim.view.ViewManager"
      vmodl-name="viewManager"
      version-id-ref="vim.version.version2"
      is-optional="true"
      >
      <description-html>
         <![CDATA[A singleton managed object for tracking custom sets of objects.]]>
      </description-html>
      </property>

            <property name="about" type-id-ref="vim.AboutInfo"
      vmodl-name="about"
      >
      <description-html>
         <![CDATA[Information about the service, such as the software version.]]>
      </description-html>
      </property>

            <property name="setting" type-id-ref="vim.option.OptionManager"
      vmodl-name="setting"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Generic configuration for a management server. This is for example by
  vCenter to store the vCenter Settings. This is not used for a
  stand-alone host, instead the vim.host.ConfigManager.advancedOption is used.<br>See <a href="vim.host.ConfigManager.html">HostConfigManager</a><br>]]>
      </description-html>
      </property>

            <property name="userDirectory" type-id-ref="vim.UserDirectory"
      vmodl-name="userDirectory"
      is-optional="true"
      >
      <description-html>
         <![CDATA[A user directory managed object.]]>
      </description-html>
      </property>

            <property name="sessionManager" type-id-ref="vim.SessionManager"
      vmodl-name="sessionManager"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Managed object for logging in and managing sessions.]]>
      </description-html>
      </property>

            <property name="authorizationManager" type-id-ref="vim.AuthorizationManager"
      vmodl-name="authorizationManager"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Manages permissions for managed entities in the service.]]>
      </description-html>
      </property>

            <property name="serviceManager" type-id-ref="vim.ServiceManager"
      vmodl-name="serviceManager"
      version-id-ref="vim.version.version8"
      is-optional="true"
      >
      <description-html>
         <![CDATA[A singleton managed object that manages local services.]]>
      </description-html>
      </property>

            <property name="perfManager" type-id-ref="vim.PerformanceManager"
      vmodl-name="perfManager"
      is-optional="true"
      >
      <description-html>
         <![CDATA[A singleton managed object that manages the collection and reporting
  of performance statistics.]]>
      </description-html>
      </property>

            <property name="scheduledTaskManager" type-id-ref="vim.scheduler.ScheduledTaskManager"
      vmodl-name="scheduledTaskManager"
      is-optional="true"
      >
      <description-html>
         <![CDATA[A singleton managed object that manages scheduled tasks.]]>
      </description-html>
      </property>

            <property name="alarmManager" type-id-ref="vim.alarm.AlarmManager"
      vmodl-name="alarmManager"
      is-optional="true"
      >
      <description-html>
         <![CDATA[A singleton managed object that manages alarms.]]>
      </description-html>
      </property>

            <property name="eventManager" type-id-ref="vim.event.EventManager"
      vmodl-name="eventManager"
      is-optional="true"
      >
      <description-html>
         <![CDATA[A singleton managed object that manages events.]]>
      </description-html>
      </property>

            <property name="taskManager" type-id-ref="vim.TaskManager"
      vmodl-name="taskManager"
      is-optional="true"
      >
      <description-html>
         <![CDATA[A singleton managed object that manages tasks.]]>
      </description-html>
      </property>

            <property name="extensionManager" type-id-ref="vim.ExtensionManager"
      vmodl-name="extensionManager"
      version-id-ref="vim.version.version2"
      is-optional="true"
      >
      <description-html>
         <![CDATA[A singleton managed object that manages extensions.]]>
      </description-html>
      </property>

            <property name="customizationSpecManager" type-id-ref="vim.CustomizationSpecManager"
      vmodl-name="customizationSpecManager"
      is-optional="true"
      >
      <description-html>
         <![CDATA[A singleton managed object that manages saved guest customization
  specifications.]]>
      </description-html>
      </property>

            <property name="guestCustomizationManager" type-id-ref="vim.vm.GuestCustomizationManager"
      vmodl-name="guestCustomizationManager"
      version-id-ref="vim.version.v6_8_7"
      is-optional="true"
      >
      <description-html>
         <![CDATA[A singleton managed object that manages guest customization of
  a running VM.
  The typical usage is for the guest customization after the
  InstantClone operation. See <a href="vim.VirtualMachine.html#instantClone">InstantClone_Task</a>.]]>
      </description-html>
      </property>

            <property name="customFieldsManager" type-id-ref="vim.CustomFieldsManager"
      vmodl-name="customFieldsManager"
      is-optional="true"
      >
      <description-html>
         <![CDATA[A singleton managed object that managed custom fields.]]>
      </description-html>
      </property>

            <property name="accountManager" type-id-ref="vim.host.LocalAccountManager"
      vmodl-name="accountManager"
      is-optional="true"
      >
      <description-html>
         <![CDATA[A singleton managed object that manages host local user and group accounts.]]>
      </description-html>
      </property>

            <property name="diagnosticManager" type-id-ref="vim.DiagnosticManager"
      vmodl-name="diagnosticManager"
      is-optional="true"
      >
      <description-html>
         <![CDATA[A singleton managed object that provides access to low-level log files.]]>
      </description-html>
      </property>

            <property name="licenseManager" type-id-ref="vim.LicenseManager"
      vmodl-name="licenseManager"
      is-optional="true"
      >
      <description-html>
         <![CDATA[A singleton managed object that manages licensing]]>
      </description-html>
      </property>

            <property name="searchIndex" type-id-ref="vim.SearchIndex"
      vmodl-name="searchIndex"
      is-optional="true"
      >
      <description-html>
         <![CDATA[A singleton managed object that allows search of the inventory]]>
      </description-html>
      </property>

            <property name="fileManager" type-id-ref="vim.FileManager"
      vmodl-name="fileManager"
      version-id-ref="vim.version.version2"
      is-optional="true"
      >
      <description-html>
         <![CDATA[A singleton managed object that allows management of files present
  on datastores.]]>
      </description-html>
      </property>

            <property name="datastoreNamespaceManager" type-id-ref="vim.DatastoreNamespaceManager"
      vmodl-name="datastoreNamespaceManager"
      version-id-ref="vim.version.version9"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Datastore Namespace manager.

 A singleton managed object that is used to manage manipulations
 related to datastores' namespaces.]]>
      </description-html>
      </property>

            <property name="virtualDiskManager" type-id-ref="vim.VirtualDiskManager"
      vmodl-name="virtualDiskManager"
      version-id-ref="vim.version.version2"
      is-optional="true"
      >
      <description-html>
         <![CDATA[A singleton managed object that allows management of virtual disks
  on datastores.]]>
      </description-html>
      </property>

            <property name="virtualizationManager" type-id-ref="vim.VirtualizationManager"
      vmodl-name="virtualizationManager"
      version-id-ref="vim.version.version2"
      is-deprecated="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[A singleton managed object that manages the discovery, analysis,
  recommendation and virtualization of physical machines]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of VI API 2.5, use the VMware vCenter Converter plug-in.]]>
      </deprecated-html>
      </property>

            <property name="snmpSystem" type-id-ref="vim.host.SnmpSystem"
      vmodl-name="snmpSystem"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[A singleton managed object that allows SNMP configuration.
  Not set if not supported on a particular platform.]]>
      </description-html>
      </property>

            <property name="vmProvisioningChecker" type-id-ref="vim.vm.check.ProvisioningChecker"
      vmodl-name="vmProvisioningChecker"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[A singleton managed object that can answer questions about the
  feasibility of certain provisioning operations.]]>
      </description-html>
      </property>

            <property name="vmCompatibilityChecker" type-id-ref="vim.vm.check.CompatibilityChecker"
      vmodl-name="vmCompatibilityChecker"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[A singleton managed object that can answer questions about compatibility
  of a virtual machine with a host.]]>
      </description-html>
      </property>

            <property name="ovfManager" type-id-ref="vim.OvfManager"
      vmodl-name="ovfManager"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[A singleton managed object that can generate OVF descriptors (export) and create
 vApps (single-VM or vApp container-based) from OVF descriptors (import).]]>
      </description-html>
      </property>

            <property name="ipPoolManager" type-id-ref="vim.IpPoolManager"
      vmodl-name="ipPoolManager"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[A singleton managed object that supports management of IpPool objects. IP pools are
 used when allocating IPv4 and IPv6 addresses to vApps.]]>
      </description-html>
      </property>

            <property name="dvSwitchManager" type-id-ref="vim.dvs.DistributedVirtualSwitchManager"
      vmodl-name="dvSwitchManager"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[A singleton managed object that provides relevant information of
  DistributedVirtualSwitch.]]>
      </description-html>
      </property>

            <property name="hostProfileManager" type-id-ref="vim.profile.host.ProfileManager"
      vmodl-name="hostProfileManager"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[A singleton managed object that manages the host profiles.]]>
      </description-html>
      </property>

            <property name="clusterProfileManager" type-id-ref="vim.profile.cluster.ProfileManager"
      vmodl-name="clusterProfileManager"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[A singleton managed object that manages the cluster profiles.]]>
      </description-html>
      </property>

            <property name="complianceManager" type-id-ref="vim.profile.ComplianceManager"
      vmodl-name="complianceManager"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[A singleton managed object that manages compliance aspects of entities.]]>
      </description-html>
      </property>

            <property name="localizationManager" type-id-ref="vim.LocalizationManager"
      vmodl-name="localizationManager"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[A singleton managed object that provides methods for retrieving message
 catalogs for client-side localization support.]]>
      </description-html>
      </property>

            <property name="storageResourceManager" type-id-ref="vim.StorageResourceManager"
      vmodl-name="storageResourceManager"
      version-id-ref="vim.version.version6"
      is-optional="true"
      >
      <description-html>
         <![CDATA[A singleton managed object that provides methods for storage resource
 management.]]>
      </description-html>
      </property>

            <property name="guestOperationsManager" type-id-ref="vim.vm.guest.GuestOperationsManager"
      vmodl-name="guestOperationsManager"
      version-id-ref="vim.version.version7"
      is-optional="true"
      >
      <description-html>
         <![CDATA[A singleton managed object that provides methods for guest operations.]]>
      </description-html>
      </property>

            <property name="overheadMemoryManager" type-id-ref="vim.OverheadMemoryManager"
      vmodl-name="overheadMemoryManager"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[A singleton managed object that provides methods for looking up static VM
 overhead memory.]]>
      </description-html>
      </property>

            <property name="certificateManager" type-id-ref="vim.CertificateManager"
      vmodl-name="certificateManager"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[host certificate manager

 A singleton managed object to manage the certificates between the
 Certificate Server and the host.]]>
      </description-html>
      </property>

            <property name="ioFilterManager" type-id-ref="vim.IoFilterManager"
      vmodl-name="ioFilterManager"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[A singleton managed object that manages IO Filters installed on the ESXi
 hosts and IO Filter configuration of virtual disks.]]>
      </description-html>
      </property>

            <property name="vStorageObjectManager" type-id-ref="vim.vslm.VStorageObjectManagerBase"
      vmodl-name="vStorageObjectManager"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[A singleton managed object that manages all storage objects in the
 Virtual Infrastructure. If connected to a vCenter,
 this is the <a href="vim.vslm.vcenter.VStorageObjectManager.html">VcenterVStorageObjectManager</a>; If connected
 to an ESXi host, this is the <a href="vim.vslm.host.VStorageObjectManager.html">HostVStorageObjectManager</a>.
 <p>
 A storage object in the Virtual Infrastructure is represented by a
 vStorageObject.]]>
      </description-html>
      </property>

            <property name="hostSpecManager" type-id-ref="vim.profile.host.HostSpecificationManager"
      vmodl-name="hostSpecManager"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[A singleton managed object that manages the host specification data.]]>
      </description-html>
      </property>

            <property name="cryptoManager" type-id-ref="vim.encryption.CryptoManager"
      vmodl-name="cryptoManager"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[A singleton managed object used to manage cryptographic keys.]]>
      </description-html>
      </property>

            <property name="healthUpdateManager" type-id-ref="vim.HealthUpdateManager"
      vmodl-name="healthUpdateManager"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[A singleton managed object that manages the health updates.]]>
      </description-html>
      </property>

            <property name="failoverClusterConfigurator" type-id-ref="vim.vcha.FailoverClusterConfigurator"
      vmodl-name="failoverClusterConfigurator"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[A singleton managed object that manages the VCHA Cluster
 configuration.]]>
      </description-html>
      </property>

            <property name="failoverClusterManager" type-id-ref="vim.vcha.FailoverClusterManager"
      vmodl-name="failoverClusterManager"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[A singleton managed object for managing a configured VCHA Cluster.]]>
      </description-html>
      </property>

            <property name="tenantManager" type-id-ref="vim.tenant.TenantManager"
      vmodl-name="tenantManager"
      version-id-ref="vim.version.v6_9_1"
      is-optional="true"
      >
      <description-html>
         <![CDATA[A singleton managed object used to configure tenants.]]>
      </description-html>
      </property>

            <property name="siteInfoManager" type-id-ref="vim.SiteInfoManager"
      vmodl-name="siteInfoManager"
      version-id-ref="vim.version.v7_0"
      is-optional="true"
      >
      <description-html>
         <![CDATA[A singleton managed object used to manage site related capabilities.]]>
      </description-html>
      </property>

            <property name="storageQueryManager" type-id-ref="vim.StorageQueryManager"
      vmodl-name="storageQueryManager"
      version-id-ref="vim.version.version14"
      is-optional="true"
      >
      <description-html>
         <![CDATA[A singleton managed object used to query storage related entities.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualMachineMksTicket"
      type-id="vim.VirtualMachine.MksTicket"
      vmodl-name="vim.VirtualMachine.MksTicket"
      enclosing-type-id-ref="vim.VirtualMachine"
      version-id-ref="vim.version.version1"
      is-deprecated="true"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object contains the information needed to establish an MKS
  (mouse-keyboard-screen) connection to a running virtual machine.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 4.1, use <a href="vim.VirtualMachine.Ticket.html">VirtualMachineTicket</a>
  instead.]]>
      </deprecated-html>
            <property name="ticket" type-id-ref="java.lang.String"
      vmodl-name="ticket"
      >
      <description-html>
         <![CDATA[The ticket name. This is used as the username and password for the MKS
  connection.]]>
      </description-html>
      </property>

            <property name="cfgFile" type-id-ref="java.lang.String"
      vmodl-name="cfgFile"
      >
      <description-html>
         <![CDATA[The name of the configuration file for the virtual machine.]]>
      </description-html>
      </property>

            <property name="host" type-id-ref="java.lang.String"
      vmodl-name="host"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The host with which to establish a connection. If the host is not specified,
  it is assumed that the requesting entity knows the appropriate host with which
  to connect.]]>
      </description-html>
      </property>

            <property name="port" type-id-ref="INT"
      vmodl-name="port"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The port number to use. If the port is not specified,
 it is assumed that the requesting entity knows the appropriate port to
 use when making a new connection.]]>
      </description-html>
      </property>

            <property name="sslThumbprint" type-id-ref="java.lang.String"
      vmodl-name="sslThumbprint"
      version-id-ref="vim.version.version2"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The expected thumbprint of the SSL cert of the host to which
 we are connecting.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualParallelPortDeviceBackingInfo"
      type-id="vim.vm.device.VirtualParallelPort.DeviceBackingInfo"
      vmodl-name="vim.vm.device.VirtualParallelPort.DeviceBackingInfo"
      enclosing-type-id-ref="vim.vm.device.VirtualParallelPort"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.device.VirtualDevice.DeviceBackingInfo"
      >
      <description-html>
         <![CDATA[The data object type for a device backing of a virtual parallel port.]]>
      </description-html>
   </data-object>
   <data-object name="HostPatchManagerStatusPrerequisitePatch"
      type-id="vim.host.PatchManager.Status.PrerequisitePatch"
      vmodl-name="vim.host.PatchManager.Status.PrerequisitePatch"
      enclosing-type-id-ref="vim.host.PatchManager.Status"
      version-id-ref="vim.version.version1"
      internal-before-version-id-ref="vim.version.version2"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Updates that are required to be installed before this update can
  be installed on the server.

  In addition to being installed on the server, an update can have
  additional requirement on the server or services running on the
  server pertaining to the prerequisite update.]]>
      </description-html>
            <property name="id" type-id-ref="java.lang.String"
      vmodl-name="id"
      >
      <description-html>
         <![CDATA[Unique identifier of the prerequisite update.]]>
      </description-html>
      </property>

            <property name="installState" type-id-ref="java.lang.String"
      vmodl-name="installState"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The requirement on the server or services running on the
  server pertaining to the prerequisite update. For example,
  this update could require the server to be rebooted after the
  prerequisite update is installed. Unset if there is no
  additional requirement on the prerequisite update.<br>See <a href="vim.host.PatchManager.Status.InstallState.html">HostPatchManagerInstallState</a><br>]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostConfigChange"
      type-id="vim.host.ConfigChange"
      vmodl-name="vim.host.ConfigChange"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object type describes types and constants related to the
  specification of changes to a host configuration.]]>
      </description-html>
      <nested-type-id-ref>vim.host.ConfigChange.Mode</nested-type-id-ref>
      <nested-type-id-ref>vim.host.ConfigChange.Operation</nested-type-id-ref>
   </data-object>
   <data-object name="HostVsanInternalSystemCmmdsQuery"
      type-id="vim.host.VsanInternalSystem.CmmdsQuery"
      vmodl-name="vim.host.VsanInternalSystem.CmmdsQuery"
      enclosing-type-id-ref="vim.host.VsanInternalSystem"
      version-id-ref="vim.version.version9"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[All fields in the CMMDS Query spec are optional, but at least one needs
 specified to make a valid query.]]>
      </description-html>
            <property name="type" type-id-ref="java.lang.String"
      vmodl-name="type"
      is-optional="true"
      >
      <description-html>
         <![CDATA[CMMDS type, e.g. DOM_OBJECT, LSOM_OBJECT, POLICY, DISK etc.]]>
      </description-html>
      </property>

            <property name="uuid" type-id-ref="java.lang.String"
      vmodl-name="uuid"
      is-optional="true"
      >
      <description-html>
         <![CDATA[UUID of the entry.]]>
      </description-html>
      </property>

            <property name="owner" type-id-ref="java.lang.String"
      vmodl-name="owner"
      is-optional="true"
      >
      <description-html>
         <![CDATA[UUID of the owning node.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VmNvramFileInfo"
      type-id="vim.host.DatastoreBrowser.VmNvramInfo"
      vmodl-name="vim.host.DatastoreBrowser.VmNvramInfo"
      enclosing-type-id-ref="vim.host.DatastoreBrowser"
      version-id-ref="vim.version.version1"
      base-type-id="vim.host.DatastoreBrowser.FileInfo"
      >
      <description-html>
         <![CDATA[This data object type describes a file that is a virtual machine non-volatile
  memory file.]]>
      </description-html>
   </data-object>
   <data-object name="DasClusterIsolatedEvent"
      type-id="vim.event.DasClusterIsolatedEvent"
      vmodl-name="vim.event.DasClusterIsolatedEvent"
      version-id-ref="vim.version.version5"
      base-type-id="vim.event.ClusterEvent"
      >
      <description-html>
         <![CDATA[This event records that all hosts have been isolated from the network in a
 HA cluster.]]>
      </description-html>
   </data-object>
   <data-object name="ComputeResourceConfigSpec"
      type-id="vim.ComputeResource.ConfigSpec"
      vmodl-name="vim.ComputeResource.ConfigSpec"
      enclosing-type-id-ref="vim.ComputeResource"
      version-id-ref="vim.version.version2"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Changes to apply to the compute resource configuration.]]>
      </description-html>
            <property name="vmSwapPlacement" type-id-ref="java.lang.String"
      vmodl-name="vmSwapPlacement"
      is-optional="true"
      >
      <description-html>
         <![CDATA[New setting for the swapfile placement policy. Any change to this
  policy will affect virtual machines that subsequently power on or
  resume from a suspended state in this compute resource, or that
  migrate to a host in this compute resource while powered on; virtual
  machines that are currently powered on in this compute resource will
  not yet be affected.<br>See <a href="vim.vm.ConfigInfo.SwapPlacementType.html">VirtualMachineConfigInfoSwapPlacementType</a><br>]]>
      </description-html>
      </property>

            <property name="spbmEnabled" type-id-ref="BOOLEAN"
      vmodl-name="spbmEnabled"
      version-id-ref="vim.version.version7"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Flag indicating whether or not the SPBM(Storage Policy Based Management)
 feature is enabled on this compute resource]]>
      </description-html>
      </property>

            <property name="defaultHardwareVersionKey" type-id-ref="java.lang.String"
      vmodl-name="defaultHardwareVersionKey"
      version-id-ref="vim.version.version8"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Key for Default Hardware Version to be used on this compute resource
  in the format of <a href="vim.vm.ConfigOptionDescriptor.html#key">key</a>.

  Setting this field affects
  <a href="vim.vm.ConfigOptionDescriptor.html#defaultConfigOption">defaultConfigOption</a> returned
  by <a href="vim.ComputeResource.html#environmentBrowser">EnvironmentBrowser</a> of this object and all its children
  with this field unset.]]>
      </description-html>
      </property>

            <property name="desiredSoftwareSpec" type-id-ref="vim.DesiredSoftwareSpec"
      vmodl-name="desiredSoftwareSpec"
      version-id-ref="vim.version.v7_0"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Desired software spec for the set of physical compute resources. This
 parameter is only supported in vim.Folder#createClusterEx operation.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="LicenseDiagnostics"
      type-id="vim.LicenseManager.DiagnosticInfo"
      vmodl-name="vim.LicenseManager.DiagnosticInfo"
      enclosing-type-id-ref="vim.LicenseManager"
      version-id-ref="vim.version.version2"
      is-deprecated="true"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object type provides summary status and diagnostic information for
  <a href="vim.LicenseManager.html">LicenseManager</a>. Counters in this property can be reset to zero. The
  property specified as a discontinuity is used to determine when this last
  occurred.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 4.0, this is not used by the system.]]>
      </deprecated-html>
            <property name="sourceLastChanged" type-id-ref="vmodl.DateTime"
      vmodl-name="sourceLastChanged"
      >
      <description-html>
         <![CDATA[A timestamp of when sourceAvailable last changed state, expressed in UTC.]]>
      </description-html>
      </property>

            <property name="sourceLost" type-id-ref="java.lang.String"
      vmodl-name="sourceLost"
      >
      <description-html>
         <![CDATA[Counter to track number of times connection to source was lost.
  This value starts at zero and wraps at 2^32-1 to zero.
  Discontinuity: sourceLastChanged.]]>
      </description-html>
      </property>

            <property name="sourceLatency" type-id-ref="FLOAT"
      vmodl-name="sourceLatency"
      >
      <description-html>
         <![CDATA[Exponentially decaying average of the transaction time for license
  acquisition and routine communications with LicenseSource.
  Units: milliseconds.]]>
      </description-html>
      </property>

            <property name="licenseRequests" type-id-ref="java.lang.String"
      vmodl-name="licenseRequests"
      >
      <description-html>
         <![CDATA[Counter to track total number of licenses requested.
  This value starts at zero and wraps at 2^32-1 to zero.
  Discontinuity: sourceLastChanged.]]>
      </description-html>
      </property>

            <property name="licenseRequestFailures" type-id-ref="java.lang.String"
      vmodl-name="licenseRequestFailures"
      >
      <description-html>
         <![CDATA[Counter to track Total number of licenses requests that were
  not fulfilled (denied, timeout, or other).
  This value starts at zero and wraps at 2^32-1 to zero.
  Discontinuity: sourceLastChanged.]]>
      </description-html>
      </property>

            <property name="licenseFeatureUnknowns" type-id-ref="java.lang.String"
      vmodl-name="licenseFeatureUnknowns"
      >
      <description-html>
         <![CDATA[Counter to track Total number of license features parsed from
  License source that are not recognized.
  This value starts at zero and wraps at 2^32-1 to zero.
  Discontinuity: sourceLastChanged.]]>
      </description-html>
      </property>

            <property name="opState" type-id-ref="vim.LicenseManager.LicenseState"
      vmodl-name="opState"
      >
      <description-html>
         <![CDATA[The general state of the license subsystem.]]>
      </description-html>
      </property>

            <property name="lastStatusUpdate" type-id-ref="vmodl.DateTime"
      vmodl-name="lastStatusUpdate"
      >
      <description-html>
         <![CDATA[A timestamp of when opState was last updated.]]>
      </description-html>
      </property>

            <property name="opFailureMessage" type-id-ref="java.lang.String"
      vmodl-name="opFailureMessage"
      is-localizable="true"
      >
      <description-html>
         <![CDATA[A human readable reason when optState reports Fault condition.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostBootDeviceInfo"
      type-id="vim.host.BootDeviceInfo"
      vmodl-name="vim.host.BootDeviceInfo"
      version-id-ref="vim.version.version2"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object represents the boot device information of the host.]]>
      </description-html>
            <property name="bootDevices" type-id-ref="vim.host.BootDeviceSystem.BootDevice"
      vmodl-name="bootDevices"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The list of boot devices present on the host]]>
      </description-html>
      </property>

            <property name="currentBootDeviceKey" type-id-ref="java.lang.String"
      vmodl-name="currentBootDeviceKey"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The key of the current boot device that the host is configured to
  boot. This property is unset if the current boot device is disabled.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DVSNetworkResourcePoolAllocationInfo"
      type-id="vim.dvs.NetworkResourcePool.AllocationInfo"
      vmodl-name="vim.dvs.NetworkResourcePool.AllocationInfo"
      enclosing-type-id-ref="vim.dvs.NetworkResourcePool"
      version-id-ref="vim.version.version6"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Resource allocation information for a network resource pool.]]>
      </description-html>
            <property name="limit" type-id-ref="LONG"
      vmodl-name="limit"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Maximum allowed usage for network clients belonging to
  this resource pool per host.
  The utilization of network clients belonging to this resource pool
  will not exceed the specified limit even if there are available
  network resources. If set to -1, then there is no limit on the network
  resource usage for clients belonging to this resource pool. Units are
  in Mbits/sec. When setting the allocation of a particular resource
  pool, if the property is unset, it is treated as no change and the
  property is not updated. An unset limit value while reading back the
  allocation information of a network resource pool indicates that
  there is no limit on the network resource usage for the clients
  belonging to this resource group.]]>
      </description-html>
      </property>

            <property name="shares" type-id-ref="vim.SharesInfo"
      vmodl-name="shares"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Share settings associated with the network resource pool to
  facilitate proportional sharing of the physical network resources.
  If the property is unset when setting the allocation of a particular
  resource pool, it is treated as unset and the property is not updated.
  The property is always set when reading back the allocation
  information of a network resource pool.]]>
      </description-html>
      </property>

            <property name="priorityTag" type-id-ref="INT"
      vmodl-name="priorityTag"
      version-id-ref="vim.version.version7"
      is-optional="true"
      >
      <description-html>
         <![CDATA[802.1p tag to be used for this resource pool. The tag is a priority value
 in the range 0..7 for Quality of Service operations on network traffic.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="CustomizationSysprepFailed"
      type-id="vim.event.CustomizationSysprepFailed"
      vmodl-name="vim.event.CustomizationSysprepFailed"
      version-id-ref="vim.version.version2"
      base-type-id="vim.event.CustomizationFailed"
      >
      <description-html>
         <![CDATA[Sysprep failed to run in the guest during customization. This will most like
 have been caused by the fact that the wrong sysprep was used for the guest,
 so we include the version information in the event.]]>
      </description-html>
            <property name="sysprepVersion" type-id-ref="java.lang.String"
      vmodl-name="sysprepVersion"
      >
      <description-html>
         <![CDATA[The version string for the sysprep files that were included in the
 customization package.]]>
      </description-html>
      </property>

            <property name="systemVersion" type-id-ref="java.lang.String"
      vmodl-name="systemVersion"
      >
      <description-html>
         <![CDATA[The version string for the system]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DVPortState"
      type-id="vim.dvs.DistributedVirtualPort.State"
      vmodl-name="vim.dvs.DistributedVirtualPort.State"
      enclosing-type-id-ref="vim.dvs.DistributedVirtualPort"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The state of a DistributedVirtualPort.]]>
      </description-html>
            <property name="runtimeInfo" type-id-ref="vim.dvs.DistributedVirtualPort.RuntimeInfo"
      vmodl-name="runtimeInfo"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Run time information of the port.
  This property is set only when the port is running.]]>
      </description-html>
      </property>

            <property name="stats" type-id-ref="vim.dvs.PortStatistics"
      vmodl-name="stats"
      >
      <description-html>
         <![CDATA[Statistics of the port.]]>
      </description-html>
      </property>

            <property name="vendorSpecificState" type-id-ref="vim.dvs.KeyedOpaqueBlob"
      vmodl-name="vendorSpecificState"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Opaque binary blob that stores vendor-specific runtime state data.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VvolDatastoreInfo"
      type-id="vim.host.VvolDatastoreInfo"
      vmodl-name="vim.host.VvolDatastoreInfo"
      version-id-ref="vim.version.version10"
      base-type-id="vim.Datastore.Info"
      >
      <description-html>
         <![CDATA[Detailed information about a VirtualVolume datastore.]]>
      </description-html>
            <property name="vvolDS" type-id-ref="vim.host.VvolVolume"
      vmodl-name="vvolDS"
      is-optional="true"
      >
      </property>

   </data-object>
   <data-object name="ProfileExecuteResult"
      type-id="vim.profile.host.ExecuteResult"
      vmodl-name="vim.profile.host.ExecuteResult"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The <a href="vim.profile.host.ExecuteResult.html">ProfileExecuteResult</a> data object contains the results from a
 <a href="vim.profile.host.HostProfile.html">HostProfile</a>.<a href="vim.profile.host.HostProfile.html#execute">ExecuteHostProfile</a>
 operation.]]>
      </description-html>
            <property name="status" type-id-ref="java.lang.String"
      vmodl-name="status"
      >
      <description-html>
         <![CDATA[Status of the profile execution operation. The value is a string that contains
  one of the <a href="vim.profile.host.ExecuteResult.Status.html">ProfileExecuteResultStatus</a> enumerations.]]>
      </description-html>
      </property>

            <property name="configSpec" type-id-ref="vim.host.ConfigSpec"
      vmodl-name="configSpec"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Host configuration specification. This data is valid only if
 the <code>status</code> value is <code>success</code>.
 See <a href="vim.profile.host.ExecuteResult.Status.html">ProfileExecuteResultStatus</a>.
 <p>
 Use this data object when you apply the configuration
 to a host. See the <code>configSpec</code> parameter to the
 <a href="vim.profile.host.ProfileManager.html">HostProfileManager</a>.<a href="vim.profile.host.ProfileManager.html#applyHostConfiguration">ApplyHostConfig_Task</a>
 method.]]>
      </description-html>
      </property>

            <property name="inapplicablePath" type-id-ref="vmodl.PropertyPath"
      vmodl-name="inapplicablePath"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of property paths. Each path identifies a policy that does not apply
 to this host. For example, if the precheck policies for a port group are not satisfied,
 the port group will not be created when you apply the profile to the host.
 Based on this information, the client might not display that part of the profile tree.]]>
      </description-html>
      </property>

            <property name="requireInput" type-id-ref="vim.profile.DeferredPolicyOptionParameter"
      vmodl-name="requireInput"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List that describes the required input for host configuration and identifies
 any policy options that still require parameter data. Each entry in the list
 specifies the path to a policy and a parameter list. If the call to
 <a href="vim.profile.host.HostProfile.html#execute">ExecuteHostProfile</a> includes deferred parameters,
 the <code>requireInput</code> entries
 (<code>requireInput[].</code><a href="vim.profile.DeferredPolicyOptionParameter.html#parameter">parameter</a>[])
 will be populated with the parameter data that was passed to the execute method.
 For policies that still require input data, the parameter list in the corresponding
 entry will be null.
 <p>
 A vSphere client that displays a GUI can use this information to show the host-specific
 configuration policy options. The client can highlight required input fields
 and ask the user for data in increments instead of collecting all of the input at once.
 For example, in the first pass, the client collects a minimum of user input and
 sends that to the Server. The Server evaluates the profile and might decide to
 invalidate a particular part of the subtree or enable a new
 subtree in the profile. This would result in a new set of invalid paths
 (<a href="vim.profile.host.ExecuteResult.html#inapplicablePath">inapplicablePath</a>[]) and
 required input property paths
 (<a href="vim.profile.DeferredPolicyOptionParameter.html">ProfileDeferredPolicyOptionParameter</a>.<a href="vim.profile.DeferredPolicyOptionParameter.html#inputPath">inputPath</a>).
 The client can make a series of calls to the method until it achieves a success status.
 <p>
 When <a href="vim.profile.host.HostProfile.html#execute">ExecuteHostProfile</a> returns a success status,
 the <code>requireInput</code> list contains the complete list of parameters,
 consisting of the following data:
 </p>
 <ul>
 <li>Deferred parameter values resolved through successive calls to
 <a href="vim.profile.host.HostProfile.html#execute">ExecuteHostProfile</a>.</li>
 <li>Default parameter values from the host configuration.</li>
 <li>User-specified values that override the defaults.</li>
 </ul>
 <p>
 You can specify the returned <code>requireInput</code> list in the
 <code>userInput</code> parameter to the
 <a href="vim.profile.host.ProfileManager.html">HostProfileManager</a>.<a href="vim.profile.host.ProfileManager.html#applyHostConfiguration">ApplyHostConfig_Task</a>
 method. The Server will use the list to update the <a href="vim.profile.host.AnswerFile.html">AnswerFile</a>
 associated with the host.]]>
      </description-html>
      </property>

            <property name="error" type-id-ref="vim.profile.host.ExecuteResult.ExecuteError"
      vmodl-name="error"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of errors that were encountered during execute.
  This field will be set if status is set to error.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.profile.host.ExecuteResult.Status</nested-type-id-ref>
      <nested-type-id-ref>vim.profile.host.ExecuteResult.ExecuteError</nested-type-id-ref>
   </data-object>
   <data-object name="HostServiceTicket"
      type-id="vim.HostServiceTicket"
      vmodl-name="vim.HostServiceTicket"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Return value for ticketable host services. The server has the option to
  provide a hostname and port for a future ticket-authenticated connection to
  a service on a host. If the service provider does not return a host the
  client must connect to the same host it used to request the ticket. In case
  the service provider does not return a port, except in the case of connecting
  to CIM interfaces, the client must connect using the same port it used to
  request the ticket. In the case of connecting to a CIM interface the
  standard well known port number for the particular service will be used for
  the connection.
  <p>
  For example, when a client requests a ticket from an ESX Server, the returned ticket
  may omit the optional host and port. In such a case, the client establishes an
  out-of-band ticketed connection to the same server host and on the same port on
  which it made the connection to request the ticket. If this request is
  made to the VirtualCenter server, but the server does not provide the required
  service directly, then the server provides a hostname and port for a server that
  accepts the ticketed connection and provides the service.]]>
      </description-html>
            <property name="host" type-id-ref="java.lang.String"
      vmodl-name="host"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The name of the host providing the service for which the ticket applies. If
  omitted, then the client uses the host name for the server that issued the ticket.]]>
      </description-html>
      </property>

            <property name="port" type-id-ref="INT"
      vmodl-name="port"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Access to some services is made possible by connecting to a port on a
  server. If the service for which a ticket is issued is available on a
  particular port, that port number is specified with this property. If
  omitted, except in the case of connecting to CIM interfaces, the port
  number for the service that issued the ticket is used. In the case of
  connecting to a CIM interface the standard well known port for the
  particular service will be used for the connection.]]>
      </description-html>
      </property>

            <property name="sslThumbprint" type-id-ref="java.lang.String"
      vmodl-name="sslThumbprint"
      version-id-ref="vim.version.version2"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The expected thumbprint of the SSL cert of the host to which
 we are connecting.]]>
      </description-html>
      </property>

            <property name="service" type-id-ref="java.lang.String"
      vmodl-name="service"
      >
      <description-html>
         <![CDATA[The name of the service to which to connect.]]>
      </description-html>
      </property>

            <property name="serviceVersion" type-id-ref="java.lang.String"
      vmodl-name="serviceVersion"
      >
      <description-html>
         <![CDATA[A dot-separated string identifying the service protocol version. For example, 1.0
  is used for NFC hosted by vpxa on ESX 2.5, and 1.1 is used for
  NFC hosted by hostd on ESX 3.0.]]>
      </description-html>
      </property>

            <property name="sessionId" type-id-ref="java.lang.String"
      vmodl-name="sessionId"
      >
      <description-html>
         <![CDATA[An identifying string for the session created for the ticketed connection. This
  is used by the host service to identify the operations permitted within the
  session.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VMwareDVSConfigInfo"
      type-id="vim.dvs.VmwareDistributedVirtualSwitch.ConfigInfo"
      vmodl-name="vim.dvs.VmwareDistributedVirtualSwitch.ConfigInfo"
      enclosing-type-id-ref="vim.dvs.VmwareDistributedVirtualSwitch"
      version-id-ref="vim.version.version5"
      base-type-id="vim.DistributedVirtualSwitch.ConfigInfo"
      >
      <description-html>
         <![CDATA[This class defines the VMware specific configuration for
  DistributedVirtualSwitch.]]>
      </description-html>
            <property name="vspanSession" type-id-ref="vim.dvs.VmwareDistributedVirtualSwitch.VspanSession"
      vmodl-name="vspanSession"
      version-id-ref="vim.version.version7"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The Distributed Port Mirroring sessions in the switch.]]>
      </description-html>
      </property>

            <property name="pvlanConfig" type-id-ref="vim.dvs.VmwareDistributedVirtualSwitch.PvlanMapEntry"
      vmodl-name="pvlanConfig"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The PVLAN configured in the switch.]]>
      </description-html>
      </property>

            <property name="maxMtu" type-id-ref="INT"
      vmodl-name="maxMtu"
      >
      <description-html>
         <![CDATA[The maximum MTU in the switch.]]>
      </description-html>
      </property>

            <property name="linkDiscoveryProtocolConfig" type-id-ref="vim.host.LinkDiscoveryProtocolConfig"
      vmodl-name="linkDiscoveryProtocolConfig"
      is-optional="true"
      >
      <description-html>
         <![CDATA[See <a href="vim.host.LinkDiscoveryProtocolConfig.html">LinkDiscoveryProtocolConfig</a>.]]>
      </description-html>
      </property>

            <property name="ipfixConfig" type-id-ref="vim.dvs.VmwareDistributedVirtualSwitch.IpfixConfig"
      vmodl-name="ipfixConfig"
      version-id-ref="vim.version.version7"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Configuration for ipfix monitoring of the switch traffic. This must be
  set before ipfix monitoring can be enabled for the switch, or for any
  portgroup or port of the switch.<br>See <a href="vim.dvs.VmwareDistributedVirtualSwitch.VmwarePortConfigPolicy.html#ipfixEnabled">ipfixEnabled</a><br>]]>
      </description-html>
      </property>

            <property name="lacpGroupConfig" type-id-ref="vim.dvs.VmwareDistributedVirtualSwitch.LacpGroupConfig"
      vmodl-name="lacpGroupConfig"
      version-id-ref="vim.version.version9"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The Link Aggregation Control Protocol groups in the switch.]]>
      </description-html>
      </property>

            <property name="lacpApiVersion" type-id-ref="java.lang.String"
      vmodl-name="lacpApiVersion"
      version-id-ref="vim.version.version9"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The Link Aggregation Control Protocol group version in the switch.
  See LacpApiVersion for valid values.]]>
      </description-html>
      </property>

            <property name="multicastFilteringMode" type-id-ref="java.lang.String"
      vmodl-name="multicastFilteringMode"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The Multicast Filtering mode in the switch.
  See MulticastFilteringMode for valid values.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostVMotionInfo"
      type-id="vim.host.VMotionInfo"
      vmodl-name="vim.host.VMotionInfo"
      version-id-ref="vim.version.version1"
      is-deprecated="true"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object type describes VMotion host
  configuration data objects.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of VI API 4.0, use <a href="vim.host.VirtualNicManagerInfo.html">HostVirtualNicManagerInfo</a>]]>
      </deprecated-html>
            <property name="netConfig" type-id-ref="vim.host.VMotionSystem.NetConfig"
      vmodl-name="netConfig"
      is-optional="true"
      >
      <description-html>
         <![CDATA[VMotion network configuration.]]>
      </description-html>
      </property>

            <property name="ipConfig" type-id-ref="vim.host.IpConfig"
      vmodl-name="ipConfig"
      is-optional="true"
      >
      <description-html>
         <![CDATA[IP configuration of the VMotion VirtualNic.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VmDiscoveredEvent"
      type-id="vim.event.VmDiscoveredEvent"
      vmodl-name="vim.event.VmDiscoveredEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.VmEvent"
      >
      <description-html>
         <![CDATA[This event records a virtual machine discovery.]]>
      </description-html>
   </data-object>
   <data-object name="DvsFilterConfigSpec"
      type-id="vim.dvs.DistributedVirtualPort.FilterConfigSpec"
      vmodl-name="vim.dvs.DistributedVirtualPort.FilterConfigSpec"
      enclosing-type-id-ref="vim.dvs.DistributedVirtualPort"
      version-id-ref="vim.version.version9"
      base-type-id="vim.dvs.DistributedVirtualPort.FilterConfig"
      >
      <description-html>
         <![CDATA[The specification to reconfigure Network Filter.
  This specification allows the user to do fine-grained updates for the
  Filter in the port settings.
  If the operation is vim.ConfigSpecOperation#remove, only the
  FilterConfigSpec#key needs to be specified.
  If other fields are specified, they will be ignored. We cannot remove
  an inherited element. Only when the inherited flag is set to false and
  parent does not have an element with same key this operation succeeds.
  If the operation is vim.ConfigSpecOperation#add, then
  FilterConfigSpec#key should not be specified and
  other fields need to be specified. The inherited flag should be set to
  false.
  If the operation is vim.ConfigSpecOperation#edit, then
  FilterConfigSpec#key needs be specified and
  specify the other properties that need modification. If the inherited
  flag is set to true, a FilterConfig object of same
  key must exist at the parent's level. The property values in the spec
  object will be ignored and use the values from the parent's
  FilterConfig object instead. If inherited
  flag is set to false, then the new modifications will be applied.]]>
      </description-html>
            <property name="operation" type-id-ref="java.lang.String"
      vmodl-name="operation"
      >
      <description-html>
         <![CDATA[Operation type. See <a href="vim.ConfigSpecOperation.html">ConfigSpecOperation</a> for valid values.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="SharesInfo"
      type-id="vim.SharesInfo"
      vmodl-name="vim.SharesInfo"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Specification of shares.
  <p>
  Shares are used to determine relative allocation between resource consumers.
  In general, a consumer with more shares gets proportionally more of
  the resource, subject to certain other constraints.]]>
      </description-html>
            <property name="shares" type-id-ref="INT"
      vmodl-name="shares"
      >
      <description-html>
         <![CDATA[The number of shares allocated. Used to determine resource allocation in case of
  resource contention. This value is only set if level is set to custom. If level is
  not set to custom, this value is ignored. Therefore, only shares with custom
  values can be compared.
  <p>
  There is no unit for this value. It is a relative measure based on the settings
  for other resource pools.]]>
      </description-html>
      </property>

            <property name="level" type-id-ref="vim.SharesInfo.Level"
      vmodl-name="level"
      >
      <description-html>
         <![CDATA[The allocation level.  The level is a simplified view of shares.
  Levels map to a pre-determined set of numeric values for shares.
  If the shares value does not map to a predefined size, then
  the level is set as custom.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.SharesInfo.Level</nested-type-id-ref>
   </data-object>
   <data-object name="HostVFlashManagerVFlashResourceRunTimeInfo"
      type-id="vim.host.VFlashManager.VFlashResourceRunTimeInfo"
      vmodl-name="vim.host.VFlashManager.VFlashResourceRunTimeInfo"
      enclosing-type-id-ref="vim.host.VFlashManager"
      version-id-ref="vim.version.version9"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Data object provides vFlash resource runtime usage.]]>
      </description-html>
            <property name="usage" type-id-ref="LONG"
      vmodl-name="usage"
      >
      <description-html>
         <![CDATA[Overall usage of vFlash resource, in bytes.]]>
      </description-html>
      </property>

            <property name="capacity" type-id-ref="LONG"
      vmodl-name="capacity"
      >
      <description-html>
         <![CDATA[Overall capacity of vFlash resource, in bytes.]]>
      </description-html>
      </property>

            <property name="accessible" type-id-ref="BOOLEAN"
      vmodl-name="accessible"
      >
      <description-html>
         <![CDATA[True if all the included the VFFS volumes are accessible. False if one or
 multiple included VFFS volumes are inaccessible.]]>
      </description-html>
      </property>

            <property name="capacityForVmCache" type-id-ref="LONG"
      vmodl-name="capacityForVmCache"
      >
      <description-html>
         <![CDATA[vFlash resource capacity can be allocated for VM caches]]>
      </description-html>
      </property>

            <property name="freeForVmCache" type-id-ref="LONG"
      vmodl-name="freeForVmCache"
      >
      <description-html>
         <![CDATA[Free vFlash resource can be allocated for VM caches]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DvsPortDeletedEvent"
      type-id="vim.event.DvsPortDeletedEvent"
      vmodl-name="vim.event.DvsPortDeletedEvent"
      version-id-ref="vim.version.version5"
      base-type-id="vim.event.DvsEvent"
      >
      <description-html>
         <![CDATA[Existing ports are deleted in the distributed virtual switch.]]>
      </description-html>
            <property name="portKey" type-id-ref="java.lang.String"
      vmodl-name="portKey"
      is-array="true"
      >
      <description-html>
         <![CDATA[The key of the ports that are deleted.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DrsInvocationFailedEvent"
      type-id="vim.event.DrsInvocationFailedEvent"
      vmodl-name="vim.event.DrsInvocationFailedEvent"
      version-id-ref="vim.version.version5"
      base-type-id="vim.event.ClusterEvent"
      >
      <description-html>
         <![CDATA[This event records DRS invocation failure.]]>
      </description-html>
   </data-object>
   <data-object name="NetDnsConfigInfo"
      type-id="vim.net.DnsConfigInfo"
      vmodl-name="vim.net.DnsConfigInfo"
      version-id-ref="vim.version.version6"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Domain Name Server (DNS) Configuration Specification -
  a data object for reporting the configuration of RFC 1034 client side DNS settings.]]>
      </description-html>
            <property name="dhcp" type-id-ref="BOOLEAN"
      vmodl-name="dhcp"
      >
      <description-html>
         <![CDATA[Indicates whether or not dynamic host control
  protocol (DHCP) is used to configure DNS configuration.]]>
      </description-html>
      </property>

            <property name="hostName" type-id-ref="java.lang.String"
      vmodl-name="hostName"
      >
      <description-html>
         <![CDATA[The host name portion of DNS name. For example, "esx01" part of
  esx01.example.com.]]>
      </description-html>
      </property>

            <property name="domainName" type-id-ref="java.lang.String"
      vmodl-name="domainName"
      >
      <description-html>
         <![CDATA[The domain name portion of the DNS name.  "example.com" part of
  esx01.example.com.]]>
      </description-html>
      </property>

            <property name="ipAddress" type-id-ref="java.lang.String"
      vmodl-name="ipAddress"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The IP addresses of the DNS servers in order of use.
  IPv4 addresses are specified using
  dotted decimal notation.  For example, "192.0.2.1".
  IPv6 addresses are 128-bit addresses represented as
  eight fields of up to four hexadecimal digits.
  A colon separates each field (:). For example,
  2001:DB8:101::230:6eff:fe04:d9ff. The address can also consist of the
  symbol '::' to represent multiple 16-bit groups of
  contiguous 0's only once in an address as described in RFC 2373.]]>
      </description-html>
      </property>

            <property name="searchDomain" type-id-ref="java.lang.String"
      vmodl-name="searchDomain"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The domain in which to search for hosts, placed in order of preference.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DvsHostWentOutOfSyncEvent"
      type-id="vim.event.DvsHostWentOutOfSyncEvent"
      vmodl-name="vim.event.DvsHostWentOutOfSyncEvent"
      version-id-ref="vim.version.version5"
      base-type-id="vim.event.DvsEvent"
      >
      <description-html>
         <![CDATA[The DVS configuration on the host diverged from that of
  the Virtual Center Server.]]>
      </description-html>
            <property name="hostOutOfSync" type-id-ref="vim.event.DvsOutOfSyncHostArgument"
      vmodl-name="hostOutOfSync"
      >
      <description-html>
         <![CDATA[The host that went out of sync.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostDhcpServiceSpec"
      type-id="vim.host.DhcpService.Specification"
      vmodl-name="vim.host.DhcpService.Specification"
      enclosing-type-id-ref="vim.host.DhcpService"
      version-id-ref="vim.version.version2"
      base-type-id="vmodl.DynamicData"
      >
            <property name="virtualSwitch" type-id-ref="java.lang.String"
      vmodl-name="virtualSwitch"
      >
      <description-html>
         <![CDATA[The name of the virtual switch to which DHCP service is connected.]]>
      </description-html>
      </property>

            <property name="defaultLeaseDuration" type-id-ref="INT"
      vmodl-name="defaultLeaseDuration"
      >
      <description-html>
         <![CDATA[The default DHCP lease duration (minutes).]]>
      </description-html>
      </property>

            <property name="leaseBeginIp" type-id-ref="java.lang.String"
      vmodl-name="leaseBeginIp"
      >
      <description-html>
         <![CDATA[The start of the IP address range served by the DHCP service.]]>
      </description-html>
      </property>

            <property name="leaseEndIp" type-id-ref="java.lang.String"
      vmodl-name="leaseEndIp"
      >
      <description-html>
         <![CDATA[The end of the IP address range served by the DHCP service.]]>
      </description-html>
      </property>

            <property name="maxLeaseDuration" type-id-ref="INT"
      vmodl-name="maxLeaseDuration"
      >
      <description-html>
         <![CDATA[The maximum DHCP lease duration (minutes).]]>
      </description-html>
      </property>

            <property name="unlimitedLease" type-id-ref="BOOLEAN"
      vmodl-name="unlimitedLease"
      >
      <description-html>
         <![CDATA[A flag to indicate whether or not unlimited DHCP lease
  durations are allowed.]]>
      </description-html>
      </property>

            <property name="ipSubnetAddr" type-id-ref="java.lang.String"
      vmodl-name="ipSubnetAddr"
      >
      <description-html>
         <![CDATA[Subnet served by DHCP service.]]>
      </description-html>
      </property>

            <property name="ipSubnetMask" type-id-ref="java.lang.String"
      vmodl-name="ipSubnetMask"
      >
      <description-html>
         <![CDATA[Subnet mask of network served by DHCP service.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="StorageDrsPodConfigSpec"
      type-id="vim.storageDrs.PodConfigSpec"
      vmodl-name="vim.storageDrs.PodConfigSpec"
      version-id-ref="vim.version.version7"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The <a href="vim.storageDrs.PodConfigSpec.html">StorageDrsPodConfigSpec</a> data object provides a set of update
  specifications for pod-wide storage DRS configuration. To support
  incremental changes, these properties are all optional.
  <p>]]>
      </description-html>
            <property name="enabled" type-id-ref="BOOLEAN"
      vmodl-name="enabled"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Flag indicating whether or not storage DRS is enabled.]]>
      </description-html>
      </property>

            <property name="ioLoadBalanceEnabled" type-id-ref="BOOLEAN"
      vmodl-name="ioLoadBalanceEnabled"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Flag indicating whether or not storage DRS takes into account storage I/O
  workload when making load balancing and initial placement recommendations.]]>
      </description-html>
      </property>

            <property name="defaultVmBehavior" type-id-ref="java.lang.String"
      vmodl-name="defaultVmBehavior"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Specifies the pod-wide default storage DRS behavior for virtual machines.
  For currently supported storage DRS behavior, see <a href="vim.storageDrs.PodConfigInfo.Behavior.html">StorageDrsPodConfigInfoBehavior</a>.
  You can override the default behavior for a virtual machine
  by using the <a href="vim.storageDrs.VmConfigInfo.html">StorageDrsVmConfigInfo</a> object.]]>
      </description-html>
      </property>

            <property name="loadBalanceInterval" type-id-ref="INT"
      vmodl-name="loadBalanceInterval"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Specify the interval that storage DRS runs to load balance among datastores
  within a storage pod.]]>
      </description-html>
      </property>

            <property name="defaultIntraVmAffinity" type-id-ref="BOOLEAN"
      vmodl-name="defaultIntraVmAffinity"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Specifies whether or not each virtual machine in this pod should have its virtual
  disks on the same datastore by default.]]>
      </description-html>
      </property>

            <property name="spaceLoadBalanceConfig" type-id-ref="vim.storageDrs.SpaceLoadBalanceConfig"
      vmodl-name="spaceLoadBalanceConfig"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The configuration settings for load balancing storage space.]]>
      </description-html>
      </property>

            <property name="ioLoadBalanceConfig" type-id-ref="vim.storageDrs.IoLoadBalanceConfig"
      vmodl-name="ioLoadBalanceConfig"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The configuration settings for load balancing I/O workload.
  This takes effect only if <a href="vim.storageDrs.PodConfigInfo.html#ioLoadBalanceEnabled">ioLoadBalanceEnabled</a> is <code>true</code>.]]>
      </description-html>
      </property>

            <property name="automationOverrides" type-id-ref="vim.storageDrs.AutomationConfig"
      vmodl-name="automationOverrides"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Configuration settings for fine-grain automation overrides on
  the cluster level setting.]]>
      </description-html>
      </property>

            <property name="rule" type-id-ref="vim.cluster.RuleSpec"
      vmodl-name="rule"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Changes to the set of rules.]]>
      </description-html>
      </property>

            <property name="option" type-id-ref="vim.storageDrs.OptionSpec"
      vmodl-name="option"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Changes to advance settings.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostDiagnosticPartitionCreateDescription"
      type-id="vim.host.DiagnosticPartition.CreateDescription"
      vmodl-name="vim.host.DiagnosticPartition.CreateDescription"
      enclosing-type-id-ref="vim.host.DiagnosticPartition"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The diagnostic partition create description details what will be done
  to create a new diagnostic partition on a disk.  It contains a CreateSpec
  that can be submitted to create the partition and information that can
  be shown to the user.]]>
      </description-html>
            <property name="layout" type-id-ref="vim.host.DiskPartitionInfo.Layout"
      vmodl-name="layout"
      >
      <description-html>
         <![CDATA[Layout describing the format of the disk

  In releases after vSphere API 5.0, vSphere Servers might not
  generate property collector update notifications for this property.
  To obtain the latest value of the property, you can use
  PropertyCollector methods RetrievePropertiesEx or WaitForUpdatesEx.
  If you use the PropertyCollector.WaitForUpdatesEx method, specify
  an empty string for the version parameter.

  Since this property is on a DataObject, an update returned by WaitForUpdatesEx may
  contain values for this property when some other property on the DataObject changes.
  If this update is a result of a call to WaitForUpdatesEx with a non-empty
  version parameter, the value for this property may not be current.]]>
      </description-html>
      </property>

            <property name="diskUuid" type-id-ref="java.lang.String"
      vmodl-name="diskUuid"
      >
      <description-html>
         <![CDATA[The UUID of the SCSI disk on which to create the diagnostic partition.
  This disk UUID will match that found in the identification field of the
  creation spec.<br>See <a href="vim.host.ScsiDisk.html">HostScsiDisk</a><br>See <a href="vim.host.ScsiLun.html#uuid">uuid</a><br>]]>
      </description-html>
      </property>

            <property name="spec" type-id-ref="vim.host.DiagnosticPartition.CreateSpec"
      vmodl-name="spec"
      >
      <description-html>
         <![CDATA[Creation specification for diagnostic partition]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VmFailedToResetEvent"
      type-id="vim.event.VmFailedToResetEvent"
      vmodl-name="vim.event.VmFailedToResetEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.VmEvent"
      >
      <description-html>
         <![CDATA[This event records a failure to reset a virtual machine.]]>
      </description-html>
            <property name="reason" type-id-ref="vmodl.LocalizedMethodFault"
      vmodl-name="reason"
      >
      <description-html>
         <![CDATA[The reason for the failure.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DatabaseSizeEstimate"
      type-id="vim.ResourcePlanningManager.DatabaseSizeEstimate"
      vmodl-name="vim.ResourcePlanningManager.DatabaseSizeEstimate"
      enclosing-type-id-ref="vim.ResourcePlanningManager"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[DatabaseSizeEstimate contains information about the size
 required to by the database.]]>
      </description-html>
            <property name="size" type-id-ref="LONG"
      vmodl-name="size"
      >
      <description-html>
         <![CDATA[The estimated size required in MB]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DatastoreHostMount"
      type-id="vim.Datastore.HostMount"
      vmodl-name="vim.Datastore.HostMount"
      enclosing-type-id-ref="vim.Datastore"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Host-specific datastore information.]]>
      </description-html>
            <property name="key" type-id-ref="vim.HostSystem"
      vmodl-name="key"
      >
      <description-html>
         <![CDATA[The host associated with this datastore.]]>
      </description-html>
      </property>

            <property name="mountInfo" type-id-ref="vim.host.MountInfo"
      vmodl-name="mountInfo"
      >
      <description-html>
         <![CDATA[Host-specific information about the mount.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostProfileHostBasedConfigSpec"
      type-id="vim.profile.host.HostProfile.HostBasedConfigSpec"
      vmodl-name="vim.profile.host.HostProfile.HostBasedConfigSpec"
      enclosing-type-id-ref="vim.profile.host.HostProfile"
      version-id-ref="vim.version.version5"
      base-type-id="vim.profile.host.HostProfile.ConfigSpec"
      >
      <description-html>
         <![CDATA[The <a href="vim.profile.host.HostProfile.HostBasedConfigSpec.html">HostProfileHostBasedConfigSpec</a> data object
 specifies the host from which configuration data is to be extracted
 and the profile(s) to be created or updated.]]>
      </description-html>
            <property name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      >
      <description-html>
         <![CDATA[ESX host.]]>
      </description-html>
      </property>

            <property name="useHostProfileEngine" type-id-ref="BOOLEAN"
      vmodl-name="useHostProfileEngine"
      version-id-ref="vim.version.version7"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Flag indicating if the Profile Engine should use the profile
 plug-ins present on the host to create the profile.
 If <code>true</code>, the host Profile Engine uses the vSphere 5.0
 (or later) profile plug-ins. The resulting profile is not compatible
 with legacy hosts (pre 5.0). If <code>false</code> or not specified,
 the Profile Engine creates a legacy host profile.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="vslmInfrastructureObjectPolicySpec"
      type-id="vim.vslm.InfrastructureObjectPolicySpec"
      vmodl-name="vim.vslm.InfrastructureObjectPolicySpec"
      version-id-ref="vim.version.version12"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Specification to assign a SPBM policy to FCD infrastructure object
 (namespace). This is used in object-based storage.]]>
      </description-html>
            <property name="datastore" type-id-ref="vim.Datastore"
      vmodl-name="datastore"
      >
      <description-html>
         <![CDATA[Datastore on which datastore policy needs to be assigned.]]>
      </description-html>
      </property>

            <property name="profile" type-id-ref="vim.vm.ProfileSpec"
      vmodl-name="profile"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[SPBM Profile to associate.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DVPortConfigInfo"
      type-id="vim.dvs.DistributedVirtualPort.ConfigInfo"
      vmodl-name="vim.dvs.DistributedVirtualPort.ConfigInfo"
      enclosing-type-id-ref="vim.dvs.DistributedVirtualPort"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Management related configuration of a DistributedVirtualPort.]]>
      </description-html>
            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The name of the port.]]>
      </description-html>
      </property>

            <property name="scope" type-id-ref="vim.ManagedEntity"
      vmodl-name="scope"
      is-deprecated="true"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The eligible entities that can connect to the port. If unset, there
  is no restriction on which entity can connect to the port. If set,
  only the entities in the specified list or their child entities are
  allowed to connect to the port. If scopes are defined at both port
  and portgroup level, they are taken as an "AND" relationship. If such
  a relationship doesn't make sense, the reconfigure operation will
  raise an exception.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[as of vSphere API 5.5]]>
      </deprecated-html>
      </property>

            <property name="description" type-id-ref="java.lang.String"
      vmodl-name="description"
      is-optional="true"
      >
      <description-html>
         <![CDATA[A description string of the port.]]>
      </description-html>
      </property>

            <property name="setting" type-id-ref="vim.dvs.DistributedVirtualPort.Setting"
      vmodl-name="setting"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The network configuration of the port.]]>
      </description-html>
      </property>

            <property name="configVersion" type-id-ref="java.lang.String"
      vmodl-name="configVersion"
      >
      <description-html>
         <![CDATA[The version string of the configuration.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="NetIpStackInfoNetToMedia"
      type-id="vim.net.IpStackInfo.NetToMedia"
      vmodl-name="vim.net.IpStackInfo.NetToMedia"
      enclosing-type-id-ref="vim.net.IpStackInfo"
      version-id-ref="vim.version.version6"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Information from an IP stack about known mappings betwwen an IP address
 and the underlying physical address it maps to as learned by:
  IPv4: Address Resolution Protocol (ARP) RFC 826
  IPv6: Neighbor Discovery Protocol (NDP) RFC 4861]]>
      </description-html>
            <property name="ipAddress" type-id-ref="java.lang.String"
      vmodl-name="ipAddress"
      >
      <description-html>
         <![CDATA[A Unicast IP address of another system directly reachable w/o routing.
 IPv4 address is specified using dotted decimal notation.
 For example, "192.0.2.1".
 IPv6 addresses are 128-bit addresses represented as eight fields
 of up to four hexadecimal digits.
 A colon separates each field (:). For example,
 2001:DB8:101::230:6eff:fe04:d9ff. The address can also consist of the
 symbol '::' to represent multiple 16-bit groups of
 contiguous 0's only once in an address as described in RFC 2373.]]>
      </description-html>
      </property>

            <property name="physicalAddress" type-id-ref="java.lang.String"
      vmodl-name="physicalAddress"
      >
      <description-html>
         <![CDATA[The media-dependent of the address or empty string if not yet learned.
 For Ethernet interfaces this is a MAC address reported in the format:
 XX:XX:XX:XX:XX:XX where XX are hexadecimal numbers.]]>
      </description-html>
      </property>

            <property name="device" type-id-ref="java.lang.String"
      vmodl-name="device"
      >
      <description-html>
         <![CDATA[The value will be the name of the interface as reported by the
 operating system.]]>
      </description-html>
      </property>

            <property name="type" type-id-ref="java.lang.String"
      vmodl-name="type"
      >
      <description-html>
         <![CDATA[The type/state of this entry as reported by the IP stack.
 See EntryType for values.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostPciDevice"
      type-id="vim.host.PciDevice"
      vmodl-name="vim.host.PciDevice"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object type describes information about
  a single Peripheral Component Interconnect (PCI) device.]]>
      </description-html>
            <property name="id" type-id-ref="java.lang.String"
      vmodl-name="id"
      >
      <description-html>
         <![CDATA[The name ID of this PCI, composed of "bus:slot.function".]]>
      </description-html>
      </property>

            <property name="classId" type-id-ref="SHORT"
      vmodl-name="classId"
      >
      <description-html>
         <![CDATA[The class of this PCI.]]>
      </description-html>
      </property>

            <property name="bus" type-id-ref="BYTE"
      vmodl-name="bus"
      >
      <description-html>
         <![CDATA[The bus ID of this PCI.]]>
      </description-html>
      </property>

            <property name="slot" type-id-ref="BYTE"
      vmodl-name="slot"
      >
      <description-html>
         <![CDATA[The slot ID of this PCI.]]>
      </description-html>
      </property>

            <property name="function" type-id-ref="BYTE"
      vmodl-name="function"
      >
      <description-html>
         <![CDATA[The function ID of this PCI.]]>
      </description-html>
      </property>

            <property name="vendorId" type-id-ref="SHORT"
      vmodl-name="vendorId"
      >
      <description-html>
         <![CDATA[The vendor ID of this PCI.
 <p>
  The vendor ID might be a negative value. A vSphere Server uses an unsigned
  short integer to represent a PCI vendor ID. The WSDL representation of the ID
  is a signed short integer. If the vendor ID is greater than 32767, the Server
  will convert the ID to its two's complement for the WSDL representation.
  When you specify a PCI device vendor ID for a virtual machine
  (<a href="vim.vm.device.VirtualPCIPassthrough.DeviceBackingInfo.html">VirtualPCIPassthroughDeviceBackingInfo</a>.vendorId),
  you must use the retrieved <a href="vim.host.PciDevice.html">HostPciDevice</a>.deviceId value.]]>
      </description-html>
      </property>

            <property name="subVendorId" type-id-ref="SHORT"
      vmodl-name="subVendorId"
      >
      <description-html>
         <![CDATA[The subvendor ID of this PCI.
 <p>
 The subvendor ID might be a negative value.  A vSphere Server uses an unsigned
  short integer to represent a PCI subvendor ID. The WSDL representation of the ID
  is a signed short integer. If the subvendor ID is greater than 32767, the Server
  will convert the ID to its two's complement for the WSDL representation.]]>
      </description-html>
      </property>

            <property name="vendorName" type-id-ref="java.lang.String"
      vmodl-name="vendorName"
      >
      <description-html>
         <![CDATA[The vendor name of this PCI.]]>
      </description-html>
      </property>

            <property name="deviceId" type-id-ref="SHORT"
      vmodl-name="deviceId"
      >
      <description-html>
         <![CDATA[The device ID of this PCI.
  <p>
  The device ID might be a negative value. A vSphere Server uses an unsigned
  short integer to represent a PCI device ID. The WSDL representation of the ID
  is a signed short integer. If the PCI ID is greater than 32767, the Server
  will convert the ID to its two's complement for the WSDL representation.
  When you specify a PCI device ID for a virtual machine
  (<a href="vim.vm.device.VirtualPCIPassthrough.DeviceBackingInfo.html">VirtualPCIPassthroughDeviceBackingInfo</a>.deviceId),
  you must use the <a href="vim.host.PciDevice.html">HostPciDevice</a>.deviceId value as retrieved
  and convert it to a string.]]>
      </description-html>
      </property>

            <property name="subDeviceId" type-id-ref="SHORT"
      vmodl-name="subDeviceId"
      >
      <description-html>
         <![CDATA[The subdevice ID of this PCI.
 <p>
 The subdevice ID might be a negative value.  A vSphere Server uses an unsigned
 short integer to represent a PCI subdevice ID. The WSDL representation of the ID
 is a signed short integer. If the subdevice ID is greater than 32767, the Server
 will convert the ID to its two's complement for the WSDL representation.]]>
      </description-html>
      </property>

            <property name="parentBridge" type-id-ref="java.lang.String"
      vmodl-name="parentBridge"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The parent bridge of this PCI.]]>
      </description-html>
      </property>

            <property name="deviceName" type-id-ref="java.lang.String"
      vmodl-name="deviceName"
      >
      <description-html>
         <![CDATA[The device name of this PCI.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ClusterFixedSizeSlotPolicy"
      type-id="vim.cluster.FixedSizeSlotPolicy"
      vmodl-name="vim.cluster.FixedSizeSlotPolicy"
      version-id-ref="vim.version.version8"
      base-type-id="vim.cluster.SlotPolicy"
      >
      <description-html>
         <![CDATA[This policy allows setting a fixed slot size]]>
      </description-html>
            <property name="cpu" type-id-ref="INT"
      vmodl-name="cpu"
      >
      <description-html>
         <![CDATA[The cpu component of the slot size (in MHz)]]>
      </description-html>
      </property>

            <property name="memory" type-id-ref="INT"
      vmodl-name="memory"
      >
      <description-html>
         <![CDATA[The memory component of the slot size (in megabytes)]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostVmfsSpec"
      type-id="vim.host.VmfsVolume.Specification"
      vmodl-name="vim.host.VmfsVolume.Specification"
      enclosing-type-id-ref="vim.host.VmfsVolume"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object type describes the VMware File System (VMFS)
  creation specification. Once created, these properties for the most
  part cannot be changed.  There are a few exceptions.]]>
      </description-html>
            <property name="extent" type-id-ref="vim.host.ScsiDisk.Partition"
      vmodl-name="extent"
      >
      <description-html>
         <![CDATA[Head extent of VMFS.  The head extent identifies the VMFS.  However,
  the head extent should not be used to identify the VMFS across host
  reboots.  The actual identifier is specified in "vmhbaI:T:L" format
  which is not guaranteed to be stable across reboots.  Define a volume
  name that is unique to the host and use it to refer to the VMFS.
  Alternatively, the immutable UUID of the VMFS can be used after it
  is created.]]>
      </description-html>
      </property>

            <property name="blockSizeMb" type-id-ref="INT"
      vmodl-name="blockSizeMb"
      is-deprecated="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The block size of VMFS in megabytes (MB).  Determines the maximum file
  size.  If this optional property is not set, the maximum
  file size defaults to the maximum file size for the platform.
  <p>

  In VMFS2, the valid block sizes 1MB, 2MB, 4MB, 8MB, 16MB, 32MB, 64MB,
  128MB, and 256MB.
  In VMFS3, the valid block sizes are 1MB, 2MB, 4MB, and 8MB.
  In VMFS5, the only valid block size is 1MB.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 6.5, use
  <a href="vim.host.VmfsVolume.Specification.html#blockSize">blockSize</a> instead.]]>
      </deprecated-html>
      </property>

            <property name="majorVersion" type-id-ref="INT"
      vmodl-name="majorVersion"
      >
      <description-html>
         <![CDATA[Major version number of VMFS.  This can be changed if the VMFS is
  upgraded, but this is an irreversible change.]]>
      </description-html>
      </property>

            <property name="volumeName" type-id-ref="java.lang.String"
      vmodl-name="volumeName"
      >
      <description-html>
         <![CDATA[Volume name of VMFS.]]>
      </description-html>
      </property>

            <property name="blockSize" type-id-ref="INT"
      vmodl-name="blockSize"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The block size of VMFS in kilotypes (KB). Determines the maximum file
  size.  If this optional property is not set, the maximum
  file size defaults to the maximum file size for the platform.
  <p>

  In VMFS3, the valid block sizes are 1MB, 2MB, 4MB, and 8MB.
  In VMFS5, the only valid block size is 1MB.
  In VMFS6, the valid block sizes are 64KB and 1MB.]]>
      </description-html>
      </property>

            <property name="unmapGranularity" type-id-ref="INT"
      vmodl-name="unmapGranularity"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The granularity of VMFS unmap operations. VMFS unmap reclaims
  unused storage space.

  The unit is KB. The minimum unmap granularity is 8KB. The maximum
  unmap granularity is determined by the block size of VMFS
  <a href="vim.host.VmfsVolume.html#blockSize">blockSize</a>.]]>
      </description-html>
      </property>

            <property name="unmapPriority" type-id-ref="java.lang.String"
      vmodl-name="unmapPriority"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[VMFS unmap priority. VMFS unmap reclaims unused storage space. This
  determines the processing rate of unmaps.
  See <a href="vim.host.VmfsVolume.UnmapPriority.html">HostVmfsVolumeUnmapPriority</a> for supported values.]]>
      </description-html>
      </property>

            <property name="unmapBandwidthSpec" type-id-ref="vim.host.VmfsVolume.UnmapBandwidthSpec"
      vmodl-name="unmapBandwidthSpec"
      version-id-ref="vim.version.version12"
      is-optional="true"
      >
      <description-html>
         <![CDATA[VMFS unmap bandwidth related specification. See
 <a href="vim.host.VmfsVolume.UnmapBandwidthSpec.html">VmfsUnmapBandwidthSpec</a> for detail.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ExitedStandbyModeEvent"
      type-id="vim.event.ExitedStandbyModeEvent"
      vmodl-name="vim.event.ExitedStandbyModeEvent"
      version-id-ref="vim.version.version2"
      base-type-id="vim.event.HostEvent"
      >
      <description-html>
         <![CDATA[This event records that the host is no longer in
  standby mode.]]>
      </description-html>
   </data-object>
   <data-object name="VmMessageEvent"
      type-id="vim.event.VmMessageEvent"
      vmodl-name="vim.event.VmMessageEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.VmEvent"
      >
      <description-html>
         <![CDATA[This event records when an informational message (consisting of a collection of "observations")
 is thrown by the virtual machine. This is a generic event for such messages.]]>
      </description-html>
            <property name="message" type-id-ref="java.lang.String"
      vmodl-name="message"
      is-localizable="true"
      >
      <description-html>
         <![CDATA[A raw message returned by the virtualization platform.]]>
      </description-html>
      </property>

            <property name="messageInfo" type-id-ref="vim.vm.Message"
      vmodl-name="messageInfo"
      version-id-ref="vim.version.version2"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[A set of localizable message data that comprise this event.
 Only available on servers that support localization.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VAppPropertySpec"
      type-id="vim.vApp.PropertySpec"
      vmodl-name="vim.vApp.PropertySpec"
      version-id-ref="vim.version.version5"
      base-type-id="vim.option.ArrayUpdateSpec"
      >
      <description-html>
         <![CDATA[An incremental update to the Property list.]]>
      </description-html>
            <property name="info" type-id-ref="vim.vApp.PropertyInfo"
      vmodl-name="info"
      is-optional="true"
      >
      </property>

   </data-object>
   <data-object name="AndAlarmExpression"
      type-id="vim.alarm.AndAlarmExpression"
      vmodl-name="vim.alarm.AndAlarmExpression"
      version-id-ref="vim.version.version1"
      base-type-id="vim.alarm.AlarmExpression"
      >
      <description-html>
         <![CDATA[A data object type that links multiple alarm expressions with AND operators.]]>
      </description-html>
            <property name="expression" type-id-ref="vim.alarm.AlarmExpression"
      vmodl-name="expression"
      is-array="true"
      >
      <description-html>
         <![CDATA[List of alarm expressions that define the overall status of the alarm.
  <p>
  <ul>
  <li>The state of the alarm expression is gray if all subexpressions are gray.
      Otherwise, gray subexpressions are ignored.
  <li>The state is red if all subexpressions are red.
  <li>Otherwise, the state is yellow if all subexpressions are red or yellow.
  <li>Otherwise, the state of the alarm expression is green.
  </ul>]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VmBeingRelocatedEvent"
      type-id="vim.event.VmBeingRelocatedEvent"
      vmodl-name="vim.event.VmBeingRelocatedEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.VmRelocateSpecEvent"
      >
      <description-html>
         <![CDATA[This event records that a virtual machine is being relocated.]]>
      </description-html>
            <property name="destHost" type-id-ref="vim.event.HostEventArgument"
      vmodl-name="destHost"
      >
      <description-html>
         <![CDATA[The destination host to which the virtual machine is being relocated.]]>
      </description-html>
      </property>

            <property name="destDatacenter" type-id-ref="vim.event.DatacenterEventArgument"
      vmodl-name="destDatacenter"
      version-id-ref="vim.version.version7"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The destination datacenter to which the virtual machine is being relocated]]>
      </description-html>
      </property>

            <property name="destDatastore" type-id-ref="vim.event.DatastoreEventArgument"
      vmodl-name="destDatastore"
      version-id-ref="vim.version.version7"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The destination primary datastore to which the virtual machine is being relocated]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="FolderFileInfo"
      type-id="vim.host.DatastoreBrowser.FolderInfo"
      vmodl-name="vim.host.DatastoreBrowser.FolderInfo"
      enclosing-type-id-ref="vim.host.DatastoreBrowser"
      version-id-ref="vim.version.version1"
      base-type-id="vim.host.DatastoreBrowser.FileInfo"
      >
      <description-html>
         <![CDATA[This data object type describes a file that is a folder (directory).]]>
      </description-html>
   </data-object>
   <data-object name="HostNetOffloadCapabilities"
      type-id="vim.host.NetOffloadCapabilities"
      vmodl-name="vim.host.NetOffloadCapabilities"
      version-id-ref="vim.version.version1"
      is-deprecated="true"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Offload capabilities are used to optimize virtual machine network
  performance.  When a virtual machine is transmitting on a network,
  some operations can be offloaded either to the host or to physical
  hardware.  This data object type defines the set of offload capabilities
  that may be available on a host.
  <p>
  This data object type is used both to publish the list of offload capabilities
  and to contain offload capability policy settings.  The network
  policy logic is built on a two-level inheritance scheme which
  requires that all settings be optional.  As a result, all properties
  on the NetOffloadCapabilities object must be optional.<br>See <a href="vim.host.NetworkPolicy.html">HostNetworkPolicy</a><br>]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of VI API 4.0, the system defaults will be used.]]>
      </deprecated-html>
            <property name="csumOffload" type-id-ref="BOOLEAN"
      vmodl-name="csumOffload"
      is-optional="true"
      >
      <description-html>
         <![CDATA[(Optional) The flag to indicate whether or not checksum
  offloading is supported.]]>
      </description-html>
      </property>

            <property name="tcpSegmentation" type-id-ref="BOOLEAN"
      vmodl-name="tcpSegmentation"
      is-optional="true"
      >
      <description-html>
         <![CDATA[(Optional) The flag to indicate whether or not TCP segmentation
  offloading (TSO) is supported.]]>
      </description-html>
      </property>

            <property name="zeroCopyXmit" type-id-ref="BOOLEAN"
      vmodl-name="zeroCopyXmit"
      is-optional="true"
      >
      <description-html>
         <![CDATA[(Optional) The flag to indicate whether or not zero copy
  transmits are supported.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostDasEnabledEvent"
      type-id="vim.event.HostDasEnabledEvent"
      vmodl-name="vim.event.HostDasEnabledEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.HostEvent"
      >
      <description-html>
         <![CDATA[This event records when HA has been enabled on a host.]]>
      </description-html>
   </data-object>
   <data-object name="DatabaseSizeParam"
      type-id="vim.ResourcePlanningManager.DatabaseSizeParam"
      vmodl-name="vim.ResourcePlanningManager.DatabaseSizeParam"
      enclosing-type-id-ref="vim.ResourcePlanningManager"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[DatabaseSizeParam contains information about a sample inventory. Using this
  information, database size requirements for that sample inventory can be computed.
  Depending on the accuracy of estimate desired, users can choose to specify
  the number of different types of managed entities. The numHosts and
  numVirtualMachines are the only two required fields. Rest are all optional
  fields filled up by Virtual Center based on some heuristics.

  These parameters need not represent a real inventory. The user can use these
  parameters to estimate the database size required by a hypothetical
  VirtualCenter setup.]]>
      </description-html>
            <property name="inventoryDesc" type-id-ref="vim.ResourcePlanningManager.InventoryDescription"
      vmodl-name="inventoryDesc"
      >
      <description-html>
         <![CDATA[Object to capture inventory description]]>
      </description-html>
      </property>

            <property name="perfStatsDesc" type-id-ref="vim.ResourcePlanningManager.PerfStatsDescription"
      vmodl-name="perfStatsDesc"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Object to capture performance statistics
 related parameters]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="AutoStartDefaults"
      type-id="vim.host.AutoStartManager.SystemDefaults"
      vmodl-name="vim.host.AutoStartManager.SystemDefaults"
      enclosing-type-id-ref="vim.host.AutoStartManager"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Defines the system default auto-start/auto-stop values.]]>
      </description-html>
            <property name="enabled" type-id-ref="BOOLEAN"
      vmodl-name="enabled"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates whether or not auto-start manager is enabled.]]>
      </description-html>
      </property>

            <property name="startDelay" type-id-ref="INT"
      vmodl-name="startDelay"
      is-optional="true"
      >
      <description-html>
         <![CDATA[System-default autoStart delay in seconds. The default is 120 seconds.]]>
      </description-html>
      </property>

            <property name="stopDelay" type-id-ref="INT"
      vmodl-name="stopDelay"
      is-optional="true"
      >
      <description-html>
         <![CDATA[System-default autoStop delay in seconds. The default is 120 seconds.]]>
      </description-html>
      </property>

            <property name="waitForHeartbeat" type-id-ref="BOOLEAN"
      vmodl-name="waitForHeartbeat"
      is-optional="true"
      >
      <description-html>
         <![CDATA[System-default waitForHeartbeat setting.]]>
      </description-html>
      </property>

            <property name="stopAction" type-id-ref="java.lang.String"
      vmodl-name="stopAction"
      is-optional="true"
      >
      <description-html>
         <![CDATA[System-default power-off action. Used if the stopAction string in the
  AutoPowerInfo object for a particular machine is set to systemDefault.
  If stopAction and startAction for a virtual machine are both set to none,
  that virtual machine is removed from the AutoStart sequence.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="NetworkProfile"
      type-id="vim.profile.host.NetworkProfile"
      vmodl-name="vim.profile.host.NetworkProfile"
      version-id-ref="vim.version.version5"
      base-type-id="vim.profile.ApplyProfile"
      >
      <description-html>
         <![CDATA[The <a href="vim.profile.host.NetworkProfile.html">NetworkProfile</a> data object contains a set of subprofiles for
  network configuration.]]>
      </description-html>
            <property name="vswitch" type-id-ref="vim.profile.host.VirtualSwitchProfile"
      vmodl-name="vswitch"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of virtual switch subprofiles.
 Use the <a href="vim.profile.host.VirtualSwitchProfile.html#key">key</a> property to access
 a subprofile in the list.]]>
      </description-html>
      </property>

            <property name="vmPortGroup" type-id-ref="vim.profile.host.VmPortGroupProfile"
      vmodl-name="vmPortGroup"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of port groups for use by virtual machines.
 Use the <a href="vim.profile.host.VmPortGroupProfile.html">VmPortGroupProfile</a>.<a href="vim.profile.host.PortGroupProfile.html#key">key</a>
 property to access a port group in the list.]]>
      </description-html>
      </property>

            <property name="hostPortGroup" type-id-ref="vim.profile.host.HostPortGroupProfile"
      vmodl-name="hostPortGroup"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of port groups for use by the host.
 Use the <a href="vim.profile.host.HostPortGroupProfile.html">HostPortGroupProfile</a>.<a href="vim.profile.host.PortGroupProfile.html#key">key</a> property
 to access port groups in the list.]]>
      </description-html>
      </property>

            <property name="serviceConsolePortGroup" type-id-ref="vim.profile.host.ServiceConsolePortGroupProfile"
      vmodl-name="serviceConsolePortGroup"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of port groups for use by the service console.
  The Profile Engine uses this field only when applying a profile
  to a host that has a service console.]]>
      </description-html>
      </property>

            <property name="dnsConfig" type-id-ref="vim.profile.host.NetworkProfile.DnsConfigProfile"
      vmodl-name="dnsConfig"
      is-optional="true"
      >
      <description-html>
         <![CDATA[DNS (Domain Name System) configuration subprofile.]]>
      </description-html>
      </property>

            <property name="ipRouteConfig" type-id-ref="vim.profile.host.IpRouteProfile"
      vmodl-name="ipRouteConfig"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Subprofile that describes the IP Route
 configuration for the VMKernel gateway.]]>
      </description-html>
      </property>

            <property name="consoleIpRouteConfig" type-id-ref="vim.profile.host.IpRouteProfile"
      vmodl-name="consoleIpRouteConfig"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Subprofile that describes the IP Route configuration
 for the Service Console gateway.]]>
      </description-html>
      </property>

            <property name="pnic" type-id-ref="vim.profile.host.PhysicalNicProfile"
      vmodl-name="pnic"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of subprofiles that represent physical NIC configuration.
 Use the <a href="vim.profile.host.PhysicalNicProfile.html#key">key</a> property to access a
 subprofile in the list.]]>
      </description-html>
      </property>

            <property name="dvswitch" type-id-ref="vim.profile.host.DvsProfile"
      vmodl-name="dvswitch"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of subprofiles for distributed virtual switches to which this host is connected.
 Use the <a href="vim.profile.host.DvsProfile.html#key">key</a> property to access a subprofile in the list.]]>
      </description-html>
      </property>

            <property name="dvsServiceConsoleNic" type-id-ref="vim.profile.host.DvsServiceConsoleVNicProfile"
      vmodl-name="dvsServiceConsoleNic"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of subprofiles for service console Virtual NICs connected to a distributed virtual switch.
 Use the <a href="vim.profile.host.DvsServiceConsoleVNicProfile.html">DvsServiceConsoleVNicProfile</a>.<a href="vim.profile.host.DvsVNicProfile.html#key">key</a> property
 to access a subprofile in the list.]]>
      </description-html>
      </property>

            <property name="dvsHostNic" type-id-ref="vim.profile.host.DvsHostVNicProfile"
      vmodl-name="dvsHostNic"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of subprofiles for host Virtual NICs connected to a distributed virtual switch.
 Use the <a href="vim.profile.host.DvsHostVNicProfile.html">DvsHostVNicProfile</a>.<a href="vim.profile.host.DvsVNicProfile.html#key">key</a> property
 to access a subprofile in the list.]]>
      </description-html>
      </property>

            <property name="nsxHostNic" type-id-ref="vim.profile.host.NsxHostVNicProfile"
      vmodl-name="nsxHostNic"
      version-id-ref="vim.version.version12"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of subprofiles for host Virtual NICs connected to a NSX logic switch.
 Use the <a href="vim.profile.host.NsxHostVNicProfile.html">NsxHostVNicProfile</a>.<a href="vim.profile.host.NsxHostVNicProfile.html#key">key</a> property
 to access a subprofile in the list.]]>
      </description-html>
      </property>

            <property name="netStackInstance" type-id-ref="vim.profile.host.NetStackInstanceProfile"
      vmodl-name="netStackInstance"
      version-id-ref="vim.version.version9"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of NetStackInstance subprofiles.
 Use the <a href="vim.profile.host.NetStackInstanceProfile.html#key">key</a> property to access
 a subprofile in the list.]]>
      </description-html>
      </property>

            <property name="opaqueSwitch" type-id-ref="vim.profile.host.OpaqueSwitchProfile"
      vmodl-name="opaqueSwitch"
      version-id-ref="vim.version.v7_0"
      is-optional="true"
      >
      <description-html>
         <![CDATA[OpaqueSwitch subprofile.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.profile.host.NetworkProfile.DnsConfigProfile</nested-type-id-ref>
   </data-object>
   <data-object name="VirtualDeviceBusSlotInfo"
      type-id="vim.vm.device.VirtualDevice.BusSlotInfo"
      vmodl-name="vim.vm.device.VirtualDevice.BusSlotInfo"
      enclosing-type-id-ref="vim.vm.device.VirtualDevice"
      version-id-ref="vim.version.version8"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[<code><a href="vim.vm.device.VirtualDevice.BusSlotInfo.html">VirtualDeviceBusSlotInfo</a></code> is a base data object type
  for information about device connection to its bus. This base type does not
  define any properties. It is used as a namespace for general-purpose subtypes.
  Specific devices types are represented by subtypes which define properties for
  device-specific backing information.]]>
      </description-html>
   </data-object>
   <data-object name="VmBeingClonedEvent"
      type-id="vim.event.VmBeingClonedEvent"
      vmodl-name="vim.event.VmBeingClonedEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.VmCloneEvent"
      >
      <description-html>
         <![CDATA[This event records a virtual machine being cloned.]]>
      </description-html>
            <property name="destFolder" type-id-ref="vim.event.FolderEventArgument"
      vmodl-name="destFolder"
      >
      <description-html>
         <![CDATA[The destination folder to which the virtual machine is being cloned.]]>
      </description-html>
      </property>

            <property name="destName" type-id-ref="java.lang.String"
      vmodl-name="destName"
      >
      <description-html>
         <![CDATA[The name of the destination virtual machine.]]>
      </description-html>
      </property>

            <property name="destHost" type-id-ref="vim.event.HostEventArgument"
      vmodl-name="destHost"
      >
      <description-html>
         <![CDATA[The destination host to which the virtual machine is being cloned.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="CustomizationDhcpIpGenerator"
      type-id="vim.vm.customization.DhcpIpGenerator"
      vmodl-name="vim.vm.customization.DhcpIpGenerator"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.customization.IpGenerator"
      >
      <description-html>
         <![CDATA[Use a DHCP server to configure the virtual network adapter.]]>
      </description-html>
   </data-object>
   <data-object name="VirtualSoundBlaster16Option"
      type-id="vim.vm.device.VirtualSoundBlaster16Option"
      vmodl-name="vim.vm.device.VirtualSoundBlaster16Option"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.device.VirtualSoundCardOption"
      >
      <description-html>
         <![CDATA[The VirtualSoundBlaster16Option data object type contains the options for a
  virtual SoundBlaster 16 sound card.]]>
      </description-html>
   </data-object>
   <data-object name="ClusterConfigSpec"
      type-id="vim.cluster.ConfigSpec"
      vmodl-name="vim.cluster.ConfigSpec"
      version-id-ref="vim.version.version1"
      is-deprecated="true"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[A complete cluster configuration. All fields are defined as
  optional. In case of a reconfiguration, unset fields are
  unchanged.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of VI API 2.5, use <a href="vim.cluster.ConfigSpecEx.html">ClusterConfigSpecEx</a>.]]>
      </deprecated-html>
            <property name="dasConfig" type-id-ref="vim.cluster.DasConfigInfo"
      vmodl-name="dasConfig"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Changes to the configuration of vSphere HA.]]>
      </description-html>
      </property>

            <property name="dasVmConfigSpec" type-id-ref="vim.cluster.DasVmConfigSpec"
      vmodl-name="dasVmConfigSpec"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Changes to the per-virtual-machine vSphere HA settings.]]>
      </description-html>
      </property>

            <property name="drsConfig" type-id-ref="vim.cluster.DrsConfigInfo"
      vmodl-name="drsConfig"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Changes to the configuration of the VMware DRS service.]]>
      </description-html>
      </property>

            <property name="drsVmConfigSpec" type-id-ref="vim.cluster.DrsVmConfigSpec"
      vmodl-name="drsVmConfigSpec"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Changes to the per-virtual-machine DRS settings.]]>
      </description-html>
      </property>

            <property name="rulesSpec" type-id-ref="vim.cluster.RuleSpec"
      vmodl-name="rulesSpec"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Changes to the set of rules.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ClusterDestroyedEvent"
      type-id="vim.event.ClusterDestroyedEvent"
      vmodl-name="vim.event.ClusterDestroyedEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.ClusterEvent"
      >
      <description-html>
         <![CDATA[This event records when a cluster is destroyed.]]>
      </description-html>
   </data-object>
   <data-object name="UserLogoutSessionEvent"
      type-id="vim.event.UserLogoutSessionEvent"
      vmodl-name="vim.event.UserLogoutSessionEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.SessionEvent"
      >
      <description-html>
         <![CDATA[This event records a user logoff, disconnection, or session timeout.]]>
      </description-html>
            <property name="ipAddress" type-id-ref="java.lang.String"
      vmodl-name="ipAddress"
      version-id-ref="vim.version.version8"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The IP address of client]]>
      </description-html>
      </property>

            <property name="userAgent" type-id-ref="java.lang.String"
      vmodl-name="userAgent"
      version-id-ref="vim.version.version8"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The user agent or application]]>
      </description-html>
      </property>

            <property name="callCount" type-id-ref="LONG"
      vmodl-name="callCount"
      version-id-ref="vim.version.version8"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Number of API invocations made by the session]]>
      </description-html>
      </property>

            <property name="sessionId" type-id-ref="java.lang.String"
      vmodl-name="sessionId"
      version-id-ref="vim.version.version8"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The unique identifier for the session.]]>
      </description-html>
      </property>

            <property name="loginTime" type-id-ref="vmodl.DateTime"
      vmodl-name="loginTime"
      version-id-ref="vim.version.version8"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Timestamp when the user logged on for this session.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VmRemoteConsoleDisconnectedEvent"
      type-id="vim.event.VmRemoteConsoleDisconnectedEvent"
      vmodl-name="vim.event.VmRemoteConsoleDisconnectedEvent"
      version-id-ref="vim.version.version5"
      base-type-id="vim.event.VmEvent"
      >
      <description-html>
         <![CDATA[This event records that a remote console was disconnected from the VM]]>
      </description-html>
   </data-object>
   <data-object name="HostEventArgument"
      type-id="vim.event.HostEventArgument"
      vmodl-name="vim.event.HostEventArgument"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.EntityEventArgument"
      >
      <description-html>
         <![CDATA[The event argument is a Host object.]]>
      </description-html>
            <property name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      >
      <description-html>
         <![CDATA[The host object.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VMFSDatastoreExpandedEvent"
      type-id="vim.event.VMFSDatastoreExpandedEvent"
      vmodl-name="vim.event.VMFSDatastoreExpandedEvent"
      version-id-ref="vim.version.version5"
      base-type-id="vim.event.HostEvent"
      >
      <description-html>
         <![CDATA[This event records when a datastore is expanded.]]>
      </description-html>
            <property name="datastore" type-id-ref="vim.event.DatastoreEventArgument"
      vmodl-name="datastore"
      >
      <description-html>
         <![CDATA[The associated datastore.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DasAdmissionControlDisabledEvent"
      type-id="vim.event.DasAdmissionControlDisabledEvent"
      vmodl-name="vim.event.DasAdmissionControlDisabledEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.ClusterEvent"
      >
      <description-html>
         <![CDATA[This event records when admission control checks have been disabled in a HA
  cluster.]]>
      </description-html>
   </data-object>
   <data-object name="VmfsDatastoreBaseOption"
      type-id="vim.host.VmfsDatastoreOption.Info"
      vmodl-name="vim.host.VmfsDatastoreOption.Info"
      enclosing-type-id-ref="vim.host.VmfsDatastoreOption"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Base class that describes a VMFS datastore provisioning option.]]>
      </description-html>
            <property name="layout" type-id-ref="vim.host.DiskPartitionInfo.Layout"
      vmodl-name="layout"
      >
      <description-html>
         <![CDATA[The partition table layout that the disk will have if this
  provisioning option is selected.

  In releases after vSphere API 5.0, vSphere Servers might not
  generate property collector update notifications for this property.
  To obtain the latest value of the property, you can use
  PropertyCollector methods RetrievePropertiesEx or WaitForUpdatesEx.
  If you use the PropertyCollector.WaitForUpdatesEx method, specify
  an empty string for the version parameter.

  Since this property is on a DataObject, an update returned by WaitForUpdatesEx may
  contain values for this property when some other property on the DataObject changes.
  If this update is a result of a call to WaitForUpdatesEx with a non-empty
  version parameter, the value for this property may not be current.]]>
      </description-html>
      </property>

            <property name="partitionFormatChange" type-id-ref="BOOLEAN"
      vmodl-name="partitionFormatChange"
      version-id-ref="vim.version.version7"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates whether selecting this option will change the partition
 format type on the disk.<br>See <a href="vim.host.DiskPartitionInfo.PartitionFormat.html">HostDiskPartitionInfoPartitionFormat</a><br>]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualMachineVMCIDeviceFilterInfo"
      type-id="vim.vm.device.VirtualVMCIDevice.FilterInfo"
      vmodl-name="vim.vm.device.VirtualVMCIDevice.FilterInfo"
      enclosing-type-id-ref="vim.vm.device.VirtualVMCIDevice"
      version-id-ref="vim.version.version10"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The FilterInfo data object contains an array of filters. To
 clear all existing filters, leave filters unset or specify an empty
 array.]]>
      </description-html>
            <property name="filters" type-id-ref="vim.vm.device.VirtualVMCIDevice.FilterSpec"
      vmodl-name="filters"
      is-array="true"
      is-optional="true"
      >
      </property>

   </data-object>
   <data-object name="ClusterDrsConfigInfo"
      type-id="vim.cluster.DrsConfigInfo"
      vmodl-name="vim.cluster.DrsConfigInfo"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The <a href="vim.cluster.DrsConfigInfo.html">ClusterDrsConfigInfo</a> data object contains configuration information
  for the VMware DRS service.
  <p>
  All fields are optional. If you set the <code>modify</code>
  parameter to <code>true</code> when you call
  <a href="vim.ComputeResource.html#reconfigureEx">ReconfigureComputeResource_Task</a>, an unset property has no effect
  on the existing property value in the cluster configuration on the Server.
  If you set the <code>modify</code> parameter to <code>false</code> when you
  reconfigure a cluster, the cluster configuration is reverted to the default
  values, then the new configuration values are applied.]]>
      </description-html>
            <property name="enabled" type-id-ref="BOOLEAN"
      vmodl-name="enabled"
      is-deprecated="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Flag indicating whether or not DRS service is enabled.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[as of vSphere API 7.0.

 To disable DRS load balancing, please use the lowest DRS aggressiveness
 level, setting <a href="vim.cluster.DrsConfigInfo.html#vmotionRate">vmotionRate</a> to 5, and/or
 setting <a href="vim.cluster.DrsConfigInfo.html#defaultVmBehavior">defaultVmBehavior</a> to manual.
 The former only generates manadatory move recommendations, not load
 balancing recommendations. The latter only generates recommendations,
 without executing them.

 To remove all the child resource pools, please find the root resource
 pool <a href="vim.ComputeResource.html#resourcePool">ResourcePool</a>, and destroy all its
 children <a href="vim.ResourcePool.html#destroyChildren">DestroyChildren</a>.

 Vice versa.]]>
      </deprecated-html>
      </property>

            <property name="enableVmBehaviorOverrides" type-id-ref="BOOLEAN"
      vmodl-name="enableVmBehaviorOverrides"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Flag that dictates whether DRS Behavior overrides for individual
  virtual machines (<a href="vim.cluster.DrsVmConfigInfo.html">ClusterDrsVmConfigInfo</a>) are enabled. The default
  value is <code>true</code>.
  <p>
  When this flag is <code>true</code>, the
  <a href="vim.cluster.ConfigSpecEx.html">ClusterConfigSpecEx</a>.<a href="vim.cluster.ConfigSpecEx.html#drsVmConfigSpec">drsVmConfigSpec</a>
  values override the <a href="vim.cluster.DrsConfigInfo.html#defaultVmBehavior">defaultVmBehavior</a>.
  <p>
  When this flag is <code>false</code>, the
  <a href="vim.cluster.DrsConfigInfo.html#defaultVmBehavior">defaultVmBehavior</a> value applies to all virtual
  machines, with the following exception: in a cluster that has EVC disabled,
  you cannot override the virtual machine setting
  (<a href="vim.cluster.ConfigSpecEx.html#drsVmConfigSpec">drsVmConfigSpec</a>)
  for Fault Tolerance virtual machines.]]>
      </description-html>
      </property>

            <property name="defaultVmBehavior" type-id-ref="vim.cluster.DrsConfigInfo.DrsBehavior"
      vmodl-name="defaultVmBehavior"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Specifies the cluster-wide default DRS behavior for virtual machines.
  You can override the default behavior for a virtual machine
  by using the <a href="vim.cluster.DrsVmConfigInfo.html">ClusterDrsVmConfigInfo</a> object.]]>
      </description-html>
      </property>

            <property name="vmotionRate" type-id-ref="INT"
      vmodl-name="vmotionRate"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Threshold for generated <a href="vim.cluster.Recommendation.html">ClusterRecommendation</a>s.
  DRS generates only those recommendations that are above the
  specified vmotionRate. Ratings vary from 1 to 5. This setting applies
  to manual, partiallyAutomated, and fullyAutomated
  DRS clusters. See <a href="vim.cluster.DrsConfigInfo.DrsBehavior.html">DrsBehavior</a>.]]>
      </description-html>
      </property>

            <property name="scaleDescendantsShares" type-id-ref="java.lang.String"
      vmodl-name="scaleDescendantsShares"
      version-id-ref="vim.version.v7_0"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Specifies the scaling behavior of the shares of all resource pools
  in the cluster. See <a href="vim.ResourceConfigSpec.ScaleSharesBehavior.html">ResourceConfigSpecScaleSharesBehavior</a>
  for possible values. If any scaling behavior other than
  vim.ResourceConfigSpec.ScaleSharesBehavior#disabled is specified,
  the system will scale the CPU and memory shares allocated to each
  resource pool with the total shares of all powered on virtual machines
  under each respective pool. The system will also use the
  <a href="vim.SharesInfo.html">SharesInfo</a> set on each resource pool as a multiplier for the
  scale. Setting the
  <a href="vim.cluster.DrsConfigInfo.html#scaleDescendantsShares">scaleDescendantsShares</a> on the cluster
  is equivalent to setting the
  <a href="vim.ResourceConfigSpec.html#scaleDescendantsShares">scaleDescendantsShares</a> on the root
  resource pool.]]>
      </description-html>
      </property>

            <property name="option" type-id-ref="vim.option.OptionValue"
      vmodl-name="option"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Advanced settings.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.cluster.DrsConfigInfo.DrsBehavior</nested-type-id-ref>
   </data-object>
   <data-object name="VirtualMachineFileLayoutExSnapshotLayout"
      type-id="vim.vm.FileLayoutEx.SnapshotLayout"
      vmodl-name="vim.vm.FileLayoutEx.SnapshotLayout"
      enclosing-type-id-ref="vim.vm.FileLayoutEx"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Layout of a snapshot.]]>
      </description-html>
            <property name="key" type-id-ref="vim.vm.Snapshot"
      vmodl-name="key"
      >
      <description-html>
         <![CDATA[Reference to the snapshot.]]>
      </description-html>
      </property>

            <property name="dataKey" type-id-ref="INT"
      vmodl-name="dataKey"
      >
      <description-html>
         <![CDATA[Key to the snapshot data file in <a href="vim.vm.FileLayoutEx.html#file">file</a>.]]>
      </description-html>
      </property>

            <property name="memoryKey" type-id-ref="INT"
      vmodl-name="memoryKey"
      version-id-ref="vim.version.version10"
      >
      <description-html>
         <![CDATA[Key to the snapshot memory file in <a href="vim.vm.FileLayoutEx.html#file">file</a>.
  Powered off snapshots do not have a memory component and in some cases
  the memory component is combined with the data component. When a memory
  component does not exist, the value is initialized to -1.]]>
      </description-html>
      </property>

            <property name="disk" type-id-ref="vim.vm.FileLayoutEx.DiskLayout"
      vmodl-name="disk"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Layout of each virtual disk of the virtual machine when the
  snapshot was taken.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VmSnapshotFileQuery"
      type-id="vim.host.DatastoreBrowser.VmSnapshotQuery"
      vmodl-name="vim.host.DatastoreBrowser.VmSnapshotQuery"
      enclosing-type-id-ref="vim.host.DatastoreBrowser"
      version-id-ref="vim.version.version1"
      base-type-id="vim.host.DatastoreBrowser.Query"
      >
      <description-html>
         <![CDATA[This data object type describes the query specification for a virtual machine
  snapshot file.]]>
      </description-html>
   </data-object>
   <data-object name="DVSMacManagementPolicy"
      type-id="vim.dvs.VmwareDistributedVirtualSwitch.MacManagementPolicy"
      vmodl-name="vim.dvs.VmwareDistributedVirtualSwitch.MacManagementPolicy"
      enclosing-type-id-ref="vim.dvs.VmwareDistributedVirtualSwitch"
      version-id-ref="vim.version.version12"
      base-type-id="vim.InheritablePolicy"
      >
      <description-html>
         <![CDATA[This data object type describes MAC management policy of a port.]]>
      </description-html>
            <property name="allowPromiscuous" type-id-ref="BOOLEAN"
      vmodl-name="allowPromiscuous"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The flag to indicate whether or not all traffic is seen
  on the port.]]>
      </description-html>
      </property>

            <property name="macChanges" type-id-ref="BOOLEAN"
      vmodl-name="macChanges"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The flag to indicate whether or not the Media Access
  Control (MAC) address can be changed.]]>
      </description-html>
      </property>

            <property name="forgedTransmits" type-id-ref="BOOLEAN"
      vmodl-name="forgedTransmits"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The flag to indicate whether or not the virtual network adapter
  should be allowed to send network traffic with a different MAC
  address than that of the virtual network adapter.]]>
      </description-html>
      </property>

            <property name="macLearningPolicy" type-id-ref="vim.dvs.VmwareDistributedVirtualSwitch.MacLearningPolicy"
      vmodl-name="macLearningPolicy"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The MAC learning policy.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="AuthorizationPrivilege"
      type-id="vim.AuthorizationManager.Privilege"
      vmodl-name="vim.AuthorizationManager.Privilege"
      enclosing-type-id-ref="vim.AuthorizationManager"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object type provides access to some aspect of the system.
  Privileges are generally independent. This means a user with a privilege
  usually can perform an associated set of actions without needing any
  additional supporting privileges.
  <p>
  Within each product version, privileges do not change.

  See <a href="vim.AuthorizationDescription.html">AuthorizationDescription</a> for
  detailed information on the privileges defined by the system.]]>
      </description-html>
            <property name="privId" type-id-ref="java.lang.String"
      vmodl-name="privId"
      >
      <description-html>
         <![CDATA[Unique identifier.]]>
      </description-html>
      </property>

            <property name="onParent" type-id-ref="BOOLEAN"
      vmodl-name="onParent"
      >
      <description-html>
         <![CDATA[Determines whether or not the privilege is applied on the parent entity.]]>
      </description-html>
      </property>

            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      >
      <description-html>
         <![CDATA[Privilege name.]]>
      </description-html>
      </property>

            <property name="privGroupName" type-id-ref="java.lang.String"
      vmodl-name="privGroupName"
      >
      <description-html>
         <![CDATA[Group name.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="FaultToleranceDiskSpec"
      type-id="vim.vm.FaultToleranceVMConfigSpec.FaultToleranceDiskSpec"
      vmodl-name="vim.vm.FaultToleranceVMConfigSpec.FaultToleranceDiskSpec"
      enclosing-type-id-ref="vim.vm.FaultToleranceVMConfigSpec"
      version-id-ref="vim.version.version10"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[FaultToleranceDiskSpec contains disk managed object and destination
 datastore of disks associated with a VM.]]>
      </description-html>
            <property name="disk" type-id-ref="vim.vm.device.VirtualDevice"
      vmodl-name="disk"
      >
      <description-html>
         <![CDATA[Disk Managed Object]]>
      </description-html>
      </property>

            <property name="datastore" type-id-ref="vim.Datastore"
      vmodl-name="datastore"
      >
      <description-html>
         <![CDATA[Destination location for disk]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ClusterDasHostRecommendation"
      type-id="vim.cluster.DasHostRecommendation"
      vmodl-name="vim.cluster.DasHostRecommendation"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[A host recommendation for a virtual machine managed by the VMware
 HA Service.]]>
      </description-html>
            <property name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      >
      <description-html>
         <![CDATA[The recommended host.]]>
      </description-html>
      </property>

            <property name="drsRating" type-id-ref="INT"
      vmodl-name="drsRating"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Rating as computed by DRS for a DRS-enabled cluster. Rating
  range from 1 to 5, and the higher the rating, the stronger DRS
  suggests this host is picked for the operation.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="BaseConfigInfoDiskFileBackingInfo"
      type-id="vim.vslm.BaseConfigInfo.DiskFileBackingInfo"
      vmodl-name="vim.vslm.BaseConfigInfo.DiskFileBackingInfo"
      enclosing-type-id-ref="vim.vslm.BaseConfigInfo"
      version-id-ref="vim.version.version11"
      base-type-id="vim.vslm.BaseConfigInfo.FileBackingInfo"
      >
      <description-html>
         <![CDATA[The data object type for disk file backing of a virtual storage
 object. Disk file backing provides full virtualization of the backend
 storage.]]>
      </description-html>
            <property name="provisioningType" type-id-ref="java.lang.String"
      vmodl-name="provisioningType"
      >
      <description-html>
         <![CDATA[Provisioning type. See ProvisioningType for the
 supported types.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.vslm.BaseConfigInfo.DiskFileBackingInfo.ProvisioningType</nested-type-id-ref>
   </data-object>
   <data-object name="HostNumaInfo"
      type-id="vim.host.NumaInfo"
      vmodl-name="vim.host.NumaInfo"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Information about NUMA (non-uniform memory access).]]>
      </description-html>
            <property name="type" type-id-ref="java.lang.String"
      vmodl-name="type"
      is-deprecated="true"
      >
      <description-html>
         <![CDATA[The type of NUMA technology.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 5.1, this property is always
  set to "NUMA".]]>
      </deprecated-html>
      </property>

            <property name="numNodes" type-id-ref="INT"
      vmodl-name="numNodes"
      >
      <description-html>
         <![CDATA[The number of NUMA nodes on the host. The value is 0 if the
  host is not NUMA-capable.]]>
      </description-html>
      </property>

            <property name="numaNode" type-id-ref="vim.host.NumaNode"
      vmodl-name="numaNode"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Information about each of the NUMA nodes on the host.
  The array is empty if the host is not NUMA-capable.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualSriovEthernetCard"
      type-id="vim.vm.device.VirtualSriovEthernetCard"
      vmodl-name="vim.vm.device.VirtualSriovEthernetCard"
      version-id-ref="vim.version.version9"
      base-type-id="vim.vm.device.VirtualEthernetCard"
      >
      <description-html>
         <![CDATA[The <a href="vim.vm.device.VirtualSriovEthernetCard.html">VirtualSriovEthernetCard</a> data object defines the properties
  of a SR-IOV enabled Ethernet card attached to a virtual machine.]]>
      </description-html>
            <property name="allowGuestOSMtuChange" type-id-ref="BOOLEAN"
      vmodl-name="allowGuestOSMtuChange"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates whether MTU can be changed from guest OS.]]>
      </description-html>
      </property>

            <property name="sriovBacking" type-id-ref="vim.vm.device.VirtualSriovEthernetCard.SriovBackingInfo"
      vmodl-name="sriovBacking"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Information about SR-IOV passthrough backing of this VirtualSriovEthernetCard.
  <p>
  During an edit operation, if this value is unset, no changes to the
  SR-IOV backing will be made. During an add operation, if this is unset,
  an automatic physical function assignment scheme as described above will be used.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.vm.device.VirtualSriovEthernetCard.SriovBackingInfo</nested-type-id-ref>
   </data-object>
   <data-object name="DvsPortConnectedEvent"
      type-id="vim.event.DvsPortConnectedEvent"
      vmodl-name="vim.event.DvsPortConnectedEvent"
      version-id-ref="vim.version.version5"
      base-type-id="vim.event.DvsEvent"
      >
      <description-html>
         <![CDATA[A port is connected in the distributed virtual switch.]]>
      </description-html>
            <property name="portKey" type-id-ref="java.lang.String"
      vmodl-name="portKey"
      >
      <description-html>
         <![CDATA[The port key.]]>
      </description-html>
      </property>

            <property name="connectee" type-id-ref="vim.dvs.PortConnectee"
      vmodl-name="connectee"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The port's connectee.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VmRelocateSpecEvent"
      type-id="vim.event.VmRelocateSpecEvent"
      vmodl-name="vim.event.VmRelocateSpecEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.VmEvent"
      >
      <description-html>
         <![CDATA[This event is the base event for relocate and clone base events.]]>
      </description-html>
   </data-object>
   <data-object name="VirtualVmxnetOption"
      type-id="vim.vm.device.VirtualVmxnetOption"
      vmodl-name="vim.vm.device.VirtualVmxnetOption"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.device.VirtualEthernetCardOption"
      >
      <description-html>
         <![CDATA[The VirtualVmxnetOption data object type contains the options for the
  <a href="vim.vm.device.VirtualVmxnet.html">VirtualVmxnet</a> data object type.]]>
      </description-html>
   </data-object>
   <data-object name="WeeklyTaskScheduler"
      type-id="vim.scheduler.WeeklyTaskScheduler"
      vmodl-name="vim.scheduler.WeeklyTaskScheduler"
      version-id-ref="vim.version.version1"
      base-type-id="vim.scheduler.DailyTaskScheduler"
      >
      <description-html>
         <![CDATA[The <a href="vim.scheduler.WeeklyTaskScheduler.html">WeeklyTaskScheduler</a> data object sets the time for weekly
  task execution. You can set the schedule for task execution
  on one or more days during the week, and you complete the schedule
  by setting the inherited properties for the hour and minute.
  <p>
  By default the scheduler executes the task according to the
  specified day(s) every week.
  If you set the interval to a value greater than 1, the task will
  execute at the specified weekly interval. (For example, an interval
  of 2 will cause the task to execute on the specified days every 2 weeks.)]]>
      </description-html>
            <property name="sunday" type-id-ref="BOOLEAN"
      vmodl-name="sunday"
      >
      <description-html>
         <![CDATA[The day or days of the week when the scheduled task will run.
  At least one of the days must be true.]]>
      </description-html>
      </property>

            <property name="monday" type-id-ref="BOOLEAN"
      vmodl-name="monday"
      >
      </property>

            <property name="tuesday" type-id-ref="BOOLEAN"
      vmodl-name="tuesday"
      >
      </property>

            <property name="wednesday" type-id-ref="BOOLEAN"
      vmodl-name="wednesday"
      >
      </property>

            <property name="thursday" type-id-ref="BOOLEAN"
      vmodl-name="thursday"
      >
      </property>

            <property name="friday" type-id-ref="BOOLEAN"
      vmodl-name="friday"
      >
      </property>

            <property name="saturday" type-id-ref="BOOLEAN"
      vmodl-name="saturday"
      >
      </property>

   </data-object>
   <data-object name="AlarmSnmpCompletedEvent"
      type-id="vim.event.AlarmSnmpCompletedEvent"
      vmodl-name="vim.event.AlarmSnmpCompletedEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.AlarmEvent"
      >
      <description-html>
         <![CDATA[This event records the completion of an alarm SNMP notification.]]>
      </description-html>
            <property name="entity" type-id-ref="vim.event.ManagedEntityEventArgument"
      vmodl-name="entity"
      >
      <description-html>
         <![CDATA[The entity with which the alarm is registered.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualUSBOption"
      type-id="vim.vm.device.VirtualUSBOption"
      vmodl-name="vim.vm.device.VirtualUSBOption"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.device.VirtualDeviceOption"
      >
      <description-html>
         <![CDATA[The <a href="vim.vm.device.VirtualUSBOption.html">VirtualUSBOption</a> data object type contains options for
  USB device configuration on a virtual machine. The vSphere API supports
  the following options:
  <ul>
  <li>Local host USB connection
      (<a href="vim.vm.device.VirtualUSBOption.USBBackingOption.html">VirtualUSBUSBBackingOption</a>)</li>
  <li>Remote host USB connection
      (<a href="vim.vm.device.VirtualUSBOption.RemoteHostBackingOption.html">VirtualUSBRemoteHostBackingOption</a>)</li>
  </ul>
  <p>
  For information about USB device configuration, see <a href="vim.vm.device.VirtualUSB.html">VirtualUSB</a>.]]>
      </description-html>
      <nested-type-id-ref>vim.vm.device.VirtualUSBOption.USBBackingOption</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.device.VirtualUSBOption.RemoteHostBackingOption</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.device.VirtualUSBOption.RemoteClientBackingOption</nested-type-id-ref>
   </data-object>
   <data-object name="BadUsernameSessionEvent"
      type-id="vim.event.BadUsernameSessionEvent"
      vmodl-name="vim.event.BadUsernameSessionEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.SessionEvent"
      >
      <description-html>
         <![CDATA[This event records a failed user logon. Failed logons are due to no match existing
  between the provided user name and password combination and the combinations
  stored for authentication.]]>
      </description-html>
            <property name="ipAddress" type-id-ref="java.lang.String"
      vmodl-name="ipAddress"
      >
      <description-html>
         <![CDATA[The IP address of the peer that initiated the connection. This may
  be the client that originated the session, or it may be an intervening
  proxy if the binding uses a protocol that supports proxies, such as HTTP.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualMachineVMCIDeviceFilterSpec"
      type-id="vim.vm.device.VirtualVMCIDevice.FilterSpec"
      vmodl-name="vim.vm.device.VirtualVMCIDevice.FilterSpec"
      enclosing-type-id-ref="vim.vm.device.VirtualVMCIDevice"
      version-id-ref="vim.version.version10"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The FilterSpec data object describes a filter based on protocol,
 direction and port or port-range.]]>
      </description-html>
            <property name="rank" type-id-ref="LONG"
      vmodl-name="rank"
      >
      <description-html>
         <![CDATA[Long value representing filter rank.
 This is the rank of this filter.  Filters are guaranteed to be
 processed in ascending rank order, that is, if rank1 < rank2,  then
 rank1 is processed before rank2.  The ranks within an array of
 filters should be unique.]]>
      </description-html>
      </property>

            <property name="action" type-id-ref="java.lang.String"
      vmodl-name="action"
      >
      <description-html>
         <![CDATA[String value from Action enum object.]]>
      </description-html>
      </property>

            <property name="protocol" type-id-ref="java.lang.String"
      vmodl-name="protocol"
      >
      <description-html>
         <![CDATA[String value from Protocol enum object]]>
      </description-html>
      </property>

            <property name="direction" type-id-ref="java.lang.String"
      vmodl-name="direction"
      >
      <description-html>
         <![CDATA[String value from Direction enum object.]]>
      </description-html>
      </property>

            <property name="lowerDstPortBoundary" type-id-ref="LONG"
      vmodl-name="lowerDstPortBoundary"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Long value representing the lower destination port boundary.
 <p>
 If unset, the lower destination port boundary is default to the
 lowest port number supported by the given protocol.
 <p>
 To specify a single port, both lowerDstPortBoundary and
 upperDstPortBoundary shall be set to the same value.]]>
      </description-html>
      </property>

            <property name="upperDstPortBoundary" type-id-ref="LONG"
      vmodl-name="upperDstPortBoundary"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Long value representing the upper destination port range.
 <p>
 If unset, the upper destination port boundary is default to the
 highest port number supported by the given protocol.
 <p>
 To specify a single port, both lowerDstPortBoundary and
 upperDstPortBoundary shall be set to the same value.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DvsLogNetworkRuleAction"
      type-id="vim.dvs.TrafficRule.LogAction"
      vmodl-name="vim.dvs.TrafficRule.LogAction"
      enclosing-type-id-ref="vim.dvs.TrafficRule"
      version-id-ref="vim.version.version9"
      base-type-id="vim.dvs.TrafficRule.Action"
      >
      <description-html>
         <![CDATA[This class defines network rule action to just log the rule.]]>
      </description-html>
   </data-object>
   <data-object name="DVPortgroupConfigInfo"
      type-id="vim.dvs.DistributedVirtualPortgroup.ConfigInfo"
      vmodl-name="vim.dvs.DistributedVirtualPortgroup.ConfigInfo"
      enclosing-type-id-ref="vim.dvs.DistributedVirtualPortgroup"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The <a href="vim.dvs.DistributedVirtualPortgroup.ConfigInfo.html">DVPortgroupConfigInfo</a> data object defines
 the configuration of a <a href="vim.dvs.DistributedVirtualPortgroup.html">DistributedVirtualPortgroup</a>.]]>
      </description-html>
            <property name="key" type-id-ref="java.lang.String"
      vmodl-name="key"
      >
      <description-html>
         <![CDATA[Key of the portgroup.]]>
      </description-html>
      </property>

            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      >
      <description-html>
         <![CDATA[Name of the portgroup.]]>
      </description-html>
      </property>

            <property name="numPorts" type-id-ref="INT"
      vmodl-name="numPorts"
      >
      <description-html>
         <![CDATA[Number of ports in the portgroup.]]>
      </description-html>
      </property>

            <property name="distributedVirtualSwitch" type-id-ref="vim.DistributedVirtualSwitch"
      vmodl-name="distributedVirtualSwitch"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Distributed virtual switch that the portgroup is defined on.
 This property should always be set unless the user's setting
 does not have System.Read privilege on the object referred to
 by this property.]]>
      </description-html>
      </property>

            <property name="defaultPortConfig" type-id-ref="vim.dvs.DistributedVirtualPort.Setting"
      vmodl-name="defaultPortConfig"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Common network setting for all the ports in the portgroup.]]>
      </description-html>
      </property>

            <property name="description" type-id-ref="java.lang.String"
      vmodl-name="description"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Description of the portgroup.]]>
      </description-html>
      </property>

            <property name="type" type-id-ref="java.lang.String"
      vmodl-name="type"
      >
      <description-html>
         <![CDATA[Type of portgroup. See
 <a href="vim.dvs.DistributedVirtualPortgroup.html">DistributedVirtualPortgroup</a>.<a href="vim.dvs.DistributedVirtualPortgroup.PortgroupType.html">DistributedVirtualPortgroupPortgroupType</a>
 for possible values.]]>
      </description-html>
      </property>

            <property name="backingType" type-id-ref="java.lang.String"
      vmodl-name="backingType"
      version-id-ref="vim.version.v7_0"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Backing type of portgroup.
 See
 <a href="vim.dvs.DistributedVirtualPortgroup.html">DistributedVirtualPortgroup</a>.<a href="vim.dvs.DistributedVirtualPortgroup.BackingType.html">DistributedVirtualPortgroupBackingType</a>
 for possible values.
 The default value is "standard"]]>
      </description-html>
      </property>

            <property name="policy" type-id-ref="vim.dvs.DistributedVirtualPortgroup.PortgroupPolicy"
      vmodl-name="policy"
      >
      <description-html>
         <![CDATA[Portgroup policy.]]>
      </description-html>
      </property>

            <property name="portNameFormat" type-id-ref="java.lang.String"
      vmodl-name="portNameFormat"
      is-optional="true"
      >
      <description-html>
         <![CDATA[If set, a name will be automatically generated based on this format
  string for a port when it is created in or moved into the portgroup.
  The format string can contain meta tags that will be resolved
  to the corresponding values in generating a name, if applicable for
  the port at the time of name generation.
  <p>
  To insert a meta tag in the format string,
  enclose the names defined as meta tag names inside angle brackets.
  See <a href="vim.dvs.DistributedVirtualPortgroup.MetaTagName.html">DistributedVirtualPortgroupMetaTagName</a> for a list of
  currently available meta tags.  For example,
  "redNetwork-&lt;portIndex&gt;" and "&lt;dvsName&gt;-pnic&lt;portIndex&gt;"
  result in generated port names like "redNetwork-2" and "switch-pnic3".
  <p>
  If a meta tag is recognized, but there is no applicable value, the tag
  will be expanded to empty string. If an arbitrary name appears inside
  a "&lt;&gt;" pair and is not recognized as one of the defined meta tags,
  the substring is treated as-is and appear unchanged in the generated name.
  <p>
  To prevent a meta tag from being expanded, prefix the meta tag with a
  '\' (backslash). For example, the format string "abc\&lt;portIndex&gt;def"
  results in the generated port name "abc&lt;portIndex&gt;def".]]>
      </description-html>
      </property>

            <property name="scope" type-id-ref="vim.ManagedEntity"
      vmodl-name="scope"
      is-deprecated="true"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Eligible entities that can connect to the portgroup. If unset,
  there is no restriction on which entity can connect to the portgroup.
  If set, only the entities in the specified list or their child
  entities are allowed to connect to the portgroup. If scopes are
  defined at both port and portgroup level, they are taken as an "AND"
  relationship. If such a relationship doesn't make sense, the
  reconfigure operation will raise an exception.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[as of vSphere API 5.5]]>
      </deprecated-html>
      </property>

            <property name="vendorSpecificConfig" type-id-ref="vim.dvs.KeyedOpaqueBlob"
      vmodl-name="vendorSpecificConfig"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Opaque binary blob that stores vendor specific configuration.]]>
      </description-html>
      </property>

            <property name="configVersion" type-id-ref="java.lang.String"
      vmodl-name="configVersion"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Configuration version number.]]>
      </description-html>
      </property>

            <property name="autoExpand" type-id-ref="BOOLEAN"
      vmodl-name="autoExpand"
      version-id-ref="vim.version.version7"
      is-optional="true"
      >
      <description-html>
         <![CDATA[If set to true, this property ignores the limit on the number of ports in the
  portgroup. When a Virtual Machine/Host tries to connect to the portgroup and there
  are no free ports available in the portgroup, new ports will be automatically
  added to the portgroup. The flag is currently supported only for static portgroups.
  <p>
  When this property is set to true, the portgroup becomes a potential candidate for
  auto-shrink. Once the portgroup has auto-expanded then its disconnected ports are
  likely to be deleted automatically, as a part of auto-shrink step, if there are more
  than certain number of free ports. If the portgroup never auto-expanded, then it will
  never lose any free ports.]]>
      </description-html>
      </property>

            <property name="vmVnicNetworkResourcePoolKey" type-id-ref="java.lang.String"
      vmodl-name="vmVnicNetworkResourcePoolKey"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The key of virtual NIC network resource pool to be associated with a portgroup.
 The default value for this property is unset, indicating that
 this portgroup is not associated with any virtual NIC network resource pool.
 To clear the value of this property and revert to unset, set the
 <a href="vim.dvs.DistributedVirtualPortgroup.ConfigSpec.html#vmVnicNetworkResourcePoolKey">vmVnicNetworkResourcePoolKey</a>
 to "-1" in an update operation.]]>
      </description-html>
      </property>

            <property name="uplink" type-id-ref="BOOLEAN"
      vmodl-name="uplink"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates whether the portgroup is an uplink portroup.]]>
      </description-html>
      </property>

            <property name="transportZoneUuid" type-id-ref="java.lang.String"
      vmodl-name="transportZoneUuid"
      version-id-ref="vim.version.v7_0"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The UUID of transport zone to be associated with a NSX portgroup.]]>
      </description-html>
      </property>

            <property name="transportZoneName" type-id-ref="java.lang.String"
      vmodl-name="transportZoneName"
      version-id-ref="vim.version.v7_0"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The name of transport zone to be associated with a NSX portgroup.]]>
      </description-html>
      </property>

            <property name="logicalSwitchUuid" type-id-ref="java.lang.String"
      vmodl-name="logicalSwitchUuid"
      version-id-ref="vim.version.v7_0"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The logical switch UUID, which is used by NSX portgroup]]>
      </description-html>
      </property>

            <property name="segmentId" type-id-ref="java.lang.String"
      vmodl-name="segmentId"
      version-id-ref="vim.version.v7_0"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The segment ID of logical switch]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DistributedVirtualSwitchProductSpec"
      type-id="vim.dvs.ProductSpec"
      vmodl-name="vim.dvs.ProductSpec"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object type is a subset of <a href="vim.AboutInfo.html">AboutInfo</a>. An object of
  this type can be used to describe the specification for a proxy switch module
  of a <a href="vim.DistributedVirtualSwitch.html">DistributedVirtualSwitch</a>.]]>
      </description-html>
            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      is-optional="true"
      is-localizable="true"
      >
      <description-html>
         <![CDATA[Short form of the product name.]]>
      </description-html>
      </property>

            <property name="vendor" type-id-ref="java.lang.String"
      vmodl-name="vendor"
      is-optional="true"
      is-localizable="true"
      >
      <description-html>
         <![CDATA[Name of the vendor of this product.]]>
      </description-html>
      </property>

            <property name="version" type-id-ref="java.lang.String"
      vmodl-name="version"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Dot-separated version string. For example, "1.2".]]>
      </description-html>
      </property>

            <property name="build" type-id-ref="java.lang.String"
      vmodl-name="build"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Build string for the server on which this call is made. For example, x.y.z-num.
  This string does not apply to the API.]]>
      </description-html>
      </property>

            <property name="forwardingClass" type-id-ref="java.lang.String"
      vmodl-name="forwardingClass"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Forwarding class of the distributed virtual switch.]]>
      </description-html>
      </property>

            <property name="bundleId" type-id-ref="java.lang.String"
      vmodl-name="bundleId"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The ID of the bundle if a host component bundle needs to be installed on
  the host members to support the functionality of the switch.]]>
      </description-html>
      </property>

            <property name="bundleUrl" type-id-ref="java.lang.String"
      vmodl-name="bundleUrl"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The URL of the bundle that VMware Update Manager will use to install
  the bundle on the host members, if <a href="vim.dvs.ProductSpec.html#bundleId">bundleId</a> is set.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualSerialPort"
      type-id="vim.vm.device.VirtualSerialPort"
      vmodl-name="vim.vm.device.VirtualSerialPort"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.device.VirtualDevice"
      >
      <description-html>
         <![CDATA[The <code><a href="vim.vm.device.VirtualSerialPort.html">VirtualSerialPort</a></code> data object represents a serial port
  on a virtual machine.
  A virtual serial port uses one of the following backing types to specify
  how the virtual machine performs serial port operations.
  <ul>
    <li>Network backing (<code><a href="vim.vm.device.VirtualSerialPort.URIBackingInfo.html">VirtualSerialPortURIBackingInfo</a></code>)
        supports a connection between the virtual machine and a resource
        on the network. The virtual machine can initiate a connection with
        the network resource, or it can listen for connections originating
        from the network.
    <li>Pipe backing (<code><a href="vim.vm.device.VirtualSerialPort.PipeBackingInfo.html">VirtualSerialPortPipeBackingInfo</a></code>)
        supports I/O through a named pipe. The pipe connects the virtual machine
        to a host application or a virtual machine on the same host.
    <li>File backing (<code><a href="vim.vm.device.VirtualSerialPort.FileBackingInfo.html">VirtualSerialPortFileBackingInfo</a></code>)
        supports output through the virtual serial port to a file on the same host.
    <li>Physical serial port backing
        (<code><a href="vim.vm.device.VirtualSerialPort.DeviceBackingInfo.html">VirtualSerialPortDeviceBackingInfo</a></code>)
        supports a connection between the virtual machine and a
        device that is connected to a physical serial port on the host.
    <li>ThinPrint backing (<code><a href="vim.vm.device.VirtualSerialPort.ThinPrintBackingInfo.html">VirtualSerialPortThinPrintBackingInfo</a></code>)
        provides driver-free printing.
  </ul>
  <p>
  When you use network backing, you can also configure a virtual serial port
  to use a virtual serial port concentrator. The virtual machine initiates
  a telnet connection with the concentrator, and the concentrator acts
  as a proxy between the virtual machine and a system on the network.
  By using a virtual serial port concentrator, you can maintain the connection
  between the virtual machine and the network resource
  when a vMotion event moves the virtual machine from one host to another.
  Without a virtual serial port concentrator, the connection would be lost.
  For information about using a serial port concentrator,
  see <i>Using a Proxy with vSphere Virtual Serial Ports</i>.
  <p>
  You can configure a virtual serial port when you create or reconfigure
  a virtual machine. For example, to create a virtual serial port
  with network backing, use the following sequence of operations.
  In this procedure, the virtual serial port uses a proxy and will accept
  a network connection.
  <ol>
    <li>Use the <code><a href="vim.EnvironmentBrowser.html#queryConfigOption">QueryConfigOption</a></code> method
        to determine the backing options that are available on a host.
        The method returns a <code><a href="vim.vm.ConfigOption.html">VirtualMachineConfigOption</a></code> data object.
        The virtual machine configuration data includes a list of backing options
        (<code><a href="vim.vm.device.VirtualDeviceOption.html#backingOption">backingOption</a></code>).
        The following pseudocode shows the path to the backing options.
        <br /><br />
        &nbsp;&nbsp;&nbsp;&nbsp;<code><a href="vim.vm.ConfigOption.html">VirtualMachineConfigOption</a>.hardwareOptions.VirtualDeviceOption[].backingOption[]</code>
        <br /><br />
        The array of virtual device options can include a virtual serial port
        (<code><a href="vim.vm.device.VirtualSerialPortOption.html">VirtualSerialPortOption</a></code>). The array of serial port
         backing options can include URI, file, pipe, or device backing options.
    </li>
    <br />
    <li>Use the <code><a href="vim.Folder.html#createVm">CreateVM_Task</a></code> method
        (or the <code><a href="vim.ResourcePool.html#createVm">CreateChildVM_Task</a></code> method)
         to create the virtual machine and configure the virtual serial port backing.
        Create a <code><a href="vim.vm.ConfigSpec.html">VirtualMachineConfigSpec</a></code> data object and nested
        data objects for the method's <code>config</code> parameter.
       The following pseudocode shows the resulting path to the backing
       information.
       <br><br>
       &nbsp;&nbsp;&nbsp;&nbsp;<code><a href="vim.vm.ConfigSpec.html">VirtualMachineConfigSpec</a>.deviceChange[].device.backing</code>
       <br><br>
       Set the direction property to "server" to direct the virtual machine to accept
       a connection. Set the serviceURI property to the URI for the host on which
       the virtual machine runs.
  </ol>
  If you use physical device backing
  (<code><a href="vim.vm.device.VirtualSerialPortOption.DeviceBackingOption.html">VirtualSerialPortDeviceBackingOption</a></code>),
  you should also use the <code><a href="vim.EnvironmentBrowser.html#queryConfigTarget">QueryConfigTarget</a></code>
  method to determine if a serial device is available before configuring device backing.]]>
      </description-html>
            <property name="yieldOnPoll" type-id-ref="BOOLEAN"
      vmodl-name="yieldOnPoll"
      >
      <description-html>
         <![CDATA[Enables CPU yield behavior. If you set <code>yieldOnPoll</code> to <code>true</code>,
  the virtual machine will periodically relinquish the processor if its sole task
  is polling the virtual serial port. The amount of time it takes to regain
  the processor will depend on the degree of other virtual machine activity on the host.
  <p>
  To use this property, the CPU yield option must be supported. (See the
  <code><a href="vim.vm.device.VirtualSerialPortOption.html#yieldOnPoll">yieldOnPoll</a></code> property for
  the virtual serial port option object.)]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.vm.device.VirtualSerialPort.FileBackingInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.device.VirtualSerialPort.DeviceBackingInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.device.VirtualSerialPort.PipeBackingInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.device.VirtualSerialPort.URIBackingInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.device.VirtualSerialPort.ThinPrintBackingInfo</nested-type-id-ref>
   </data-object>
   <data-object name="VsanHostDiskResult"
      type-id="vim.vsan.host.DiskResult"
      vmodl-name="vim.vsan.host.DiskResult"
      version-id-ref="vim.version.version9"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[A DiskResult represents the result of VSAN configuration operation
 on a ScsiDisk, and its current eligibility state for use by
 the VSAN service.<br>See <a href="vim.host.VsanSystem.html#queryDisksForVsan">QueryDisksForVsan</a><br>See <a href="vim.host.VsanSystem.html#update">UpdateVsan_Task</a><br>See <a href="vim.vsan.host.DiskResult.State.html">VsanHostDiskResultState</a><br>]]>
      </description-html>
            <property name="disk" type-id-ref="vim.host.ScsiDisk"
      vmodl-name="disk"
      >
      <description-html>
         <![CDATA[Disk for this result.]]>
      </description-html>
      </property>

            <property name="state" type-id-ref="java.lang.String"
      vmodl-name="state"
      >
      <description-html>
         <![CDATA[State of the disk for this result.<br>See <a href="vim.vsan.host.DiskResult.State.html">VsanHostDiskResultState</a><br>]]>
      </description-html>
      </property>

            <property name="vsanUuid" type-id-ref="java.lang.String"
      vmodl-name="vsanUuid"
      is-optional="true"
      >
      <description-html>
         <![CDATA[VSAN disk UUID in case this disk is a VSAN disk.]]>
      </description-html>
      </property>

            <property name="error" type-id-ref="vmodl.LocalizedMethodFault"
      vmodl-name="error"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Error information for this result: may be populated with additional
 information about the disk at hand, regardless of the disk's state.<br>See <a href="vim.fault.VsanDiskFault.html">VsanDiskFault</a><br>See <a href="vim.vsan.host.DiskResult.html#state">state</a><br>]]>
      </description-html>
      </property>

            <property name="degraded" type-id-ref="BOOLEAN"
      vmodl-name="degraded"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates whether the disk is degraded in VSAN performance.
 If set, indicates the disk performance is degraded in VSAN
 If unset, it is unknown whether the disk performance is degraded in VSAN.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.vsan.host.DiskResult.State</nested-type-id-ref>
   </data-object>
   <data-object name="ClusterComputeResourceHostConfigurationInput"
      type-id="vim.ClusterComputeResource.HostConfigurationInput"
      vmodl-name="vim.ClusterComputeResource.HostConfigurationInput"
      enclosing-type-id-ref="vim.ClusterComputeResource"
      version-id-ref="vim.version.version13"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Host configuration input to configure hosts in a cluster.]]>
      </description-html>
            <property name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      >
      </property>

            <property name="hostVmkNics" type-id-ref="vim.ClusterComputeResource.HostVmkNicInfo"
      vmodl-name="hostVmkNics"
      is-array="true"
      is-optional="true"
      >
      </property>

            <property name="allowedInNonMaintenanceMode" type-id-ref="BOOLEAN"
      vmodl-name="allowedInNonMaintenanceMode"
      is-optional="true"
      >
      <description-html>
         <![CDATA[To apply configuration on the host, the host is expected to be in
 maintenance mode. This constraint can be relaxed by setting this
 flag to true.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VMFSDatastoreCreatedEvent"
      type-id="vim.event.VMFSDatastoreCreatedEvent"
      vmodl-name="vim.event.VMFSDatastoreCreatedEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.HostEvent"
      >
      <description-html>
         <![CDATA[This event records when a VMFS datastore is created.]]>
      </description-html>
            <property name="datastore" type-id-ref="vim.event.DatastoreEventArgument"
      vmodl-name="datastore"
      >
      <description-html>
         <![CDATA[The associated datastore.]]>
      </description-html>
      </property>

            <property name="datastoreUrl" type-id-ref="java.lang.String"
      vmodl-name="datastoreUrl"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Url of the associated datastore.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualMachineForkConfigInfo"
      type-id="vim.vm.ForkConfigInfo"
      vmodl-name="vim.vm.ForkConfigInfo"
      version-id-ref="vim.version.version10"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object describes the fork configuration of this
  virtual machine.]]>
      </description-html>
            <property name="parentEnabled" type-id-ref="BOOLEAN"
      vmodl-name="parentEnabled"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Flag to indicate whether this virtual machine is a parent enabled
  virtual machine. If this vm is not a parent enabled vm this
  property will be unset.

  When set into the vim.vm.ConfigSpec this flag will be ignored.]]>
      </description-html>
      </property>

            <property name="childForkGroupId" type-id-ref="java.lang.String"
      vmodl-name="childForkGroupId"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The fork group ID identifies the parent group of which this child
 VirtualMachine is a child. Applicable for child VirtualMachines only.]]>
      </description-html>
      </property>

            <property name="parentForkGroupId" type-id-ref="java.lang.String"
      vmodl-name="parentForkGroupId"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The fork group ID identifies the parent group which this VirtualMachine
 belongs to. Applicable for parent VirtualMachines only.]]>
      </description-html>
      </property>

            <property name="childType" type-id-ref="java.lang.String"
      vmodl-name="childType"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The flag to indicate the fork child type. For a persistent child
  virtual machine, once it is powered on, it will become a linked
  clone of its parent and this flag will be set to 'none'.
  <p><br>See <a href="vim.vm.ForkConfigInfo.ChildType.html">VirtualMachineForkConfigInfoChildType</a><br>]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.vm.ForkConfigInfo.ChildType</nested-type-id-ref>
   </data-object>
   <data-object name="VirtualPrecisionClockSystemClockBackingOption"
      type-id="vim.vm.device.VirtualPrecisionClockOption.SystemClockBackingOption"
      vmodl-name="vim.vm.device.VirtualPrecisionClockOption.SystemClockBackingOption"
      enclosing-type-id-ref="vim.vm.device.VirtualPrecisionClockOption"
      version-id-ref="vim.version.v7_0"
      base-type-id="vim.vm.device.VirtualDeviceOption.BackingOption"
      >
      <description-html>
         <![CDATA[This data object type describes the options for the
  <a href="vim.vm.device.VirtualPrecisionClock.SystemClockBackingInfo.html">VirtualPrecisionClockSystemClockBackingInfo</a>
  VirtualPrecisionClockSystemClockBackingInfo} data object type.]]>
      </description-html>
            <property name="protocol" type-id-ref="vim.option.ChoiceOption"
      vmodl-name="protocol"
      >
      <description-html>
         <![CDATA[Parameter indicating the protocol used to discipline the
  host system clock.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualVmxnet2Option"
      type-id="vim.vm.device.VirtualVmxnet2Option"
      vmodl-name="vim.vm.device.VirtualVmxnet2Option"
      version-id-ref="vim.version.version2"
      base-type-id="vim.vm.device.VirtualVmxnetOption"
      >
      <description-html>
         <![CDATA[The VirtualVmxnet2Option data object type contains the options for the
  <a href="vim.vm.device.VirtualVmxnet2.html">VirtualVmxnet2</a> data object type.]]>
      </description-html>
   </data-object>
   <data-object name="VslmCreateSpecRawDiskMappingBackingSpec"
      type-id="vim.vslm.CreateSpec.RawDiskMappingBackingSpec"
      vmodl-name="vim.vslm.CreateSpec.RawDiskMappingBackingSpec"
      enclosing-type-id-ref="vim.vslm.CreateSpec"
      version-id-ref="vim.version.version11"
      base-type-id="vim.vslm.CreateSpec.BackingSpec"
      >
      <description-html>
         <![CDATA[Specification of the rdm backing of a virtual
 storage object.]]>
      </description-html>
            <property name="lunUuid" type-id-ref="java.lang.String"
      vmodl-name="lunUuid"
      >
      <description-html>
         <![CDATA[Unique identifier of the LUN accessed by the raw disk mapping.]]>
      </description-html>
      </property>

            <property name="compatibilityMode" type-id-ref="java.lang.String"
      vmodl-name="compatibilityMode"
      >
      <description-html>
         <![CDATA[The compatibility mode of the raw disk mapping (RDM). This must be specified
  when a new virtual disk with an RDM backing is created.
  <p><br>See <a href="vim.vm.device.VirtualDiskOption.CompatibilityMode.html">VirtualDiskCompatibilityMode</a><br>]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="FirewallProfile"
      type-id="vim.profile.host.FirewallProfile"
      vmodl-name="vim.profile.host.FirewallProfile"
      version-id-ref="vim.version.version5"
      base-type-id="vim.profile.ApplyProfile"
      >
      <description-html>
         <![CDATA[The <a href="vim.profile.host.FirewallProfile.html">FirewallProfile</a> data object represents a host firewall configuration.
 If a profile plug-in defines policies or subprofiles, use the
 <a href="vim.profile.ApplyProfile.html#policy">policy</a> or <a href="vim.profile.ApplyProfile.html#property">property</a>
 list to access the additional configuration data.]]>
      </description-html>
            <property name="ruleset" type-id-ref="vim.profile.host.FirewallProfile.RulesetProfile"
      vmodl-name="ruleset"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of Rulesets that will be configured for the firewall subprofile.
 The rulesets can be enabled or disabled from the profile.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.profile.host.FirewallProfile.RulesetProfile</nested-type-id-ref>
   </data-object>
   <data-object name="HostNvmeDisconnectSpec"
      type-id="vim.host.NvmeDisconnectSpec"
      vmodl-name="vim.host.NvmeDisconnectSpec"
      version-id-ref="vim.version.v7_0"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Specifies the parameters necessary to disconnect an NVME controller
  from a given NVME over Fabrics adapter.]]>
      </description-html>
            <property name="hbaName" type-id-ref="java.lang.String"
      vmodl-name="hbaName"
      >
      <description-html>
         <![CDATA[The device name of the NVME over Fabrics host bus adapter.]]>
      </description-html>
      </property>

            <property name="subnqn" type-id-ref="java.lang.String"
      vmodl-name="subnqn"
      is-optional="true"
      >
      <description-html>
         <![CDATA[NVME Qualified Name of the NVM subsystem to disconnect from.
  <p>
  If controllerNumber is not specified, the subsystem qualified
  name has to be specified and any controllers exposed by that
  subsystem will be disconnected from the specified adapter. This
  is particularly convenient for the dynamic controller model, where
  the mapping subsystemNQN <-> ctrlNumber is expected to be 1:1.

  If controllerNumber is also specified, this value is ignored.]]>
      </description-html>
      </property>

            <property name="controllerNumber" type-id-ref="INT"
      vmodl-name="controllerNumber"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Controller number of the controller to be disconnected.
  <p>
  If this value is set, the subsystemQualifiedName can be left unset
  and the controller whose controllerNumber field matches this value
  will be disconnected from the specified adapter.

  If this value is not set, subsystemQualifiedName must be set.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DistributedVirtualSwitchHostMemberPnicSpec"
      type-id="vim.dvs.HostMember.PnicSpec"
      vmodl-name="vim.dvs.HostMember.PnicSpec"
      enclosing-type-id-ref="vim.dvs.HostMember"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Specification for an individual physical NIC.]]>
      </description-html>
            <property name="pnicDevice" type-id-ref="java.lang.String"
      vmodl-name="pnicDevice"
      >
      <description-html>
         <![CDATA[Name of the physical NIC to be added to the proxy switch.
 See <a href="vim.host.PhysicalNic.html">PhysicalNic</a>.<a href="vim.host.PhysicalNic.html#device">device</a>.]]>
      </description-html>
      </property>

            <property name="uplinkPortKey" type-id-ref="java.lang.String"
      vmodl-name="uplinkPortKey"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Key of the port to be connected to the physical NIC.]]>
      </description-html>
      </property>

            <property name="uplinkPortgroupKey" type-id-ref="java.lang.String"
      vmodl-name="uplinkPortgroupKey"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Key of the portgroup to be connected to the physical NIC.]]>
      </description-html>
      </property>

            <property name="connectionCookie" type-id-ref="INT"
      vmodl-name="connectionCookie"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Cookie that represents this <a href="vim.dvs.PortConnection.html">DistributedVirtualSwitchPortConnection</a>
 instance for the port. The cookie value is generated by the
 Server. The Server ignores any value set by an SDK client.
 <p>
 The same cookie is present in the distributed virtual port configuration
 (<a href="vim.dvs.DistributedVirtualPort.html">DistributedVirtualPort</a>.<a href="vim.dvs.DistributedVirtualPort.html#connectionCookie">connectionCookie</a>)
 so that the Server can verify that the entity is the rightful
 connectee of the port.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VmUuidConflictEvent"
      type-id="vim.event.VmUuidConflictEvent"
      vmodl-name="vim.event.VmUuidConflictEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.VmEvent"
      >
      <description-html>
         <![CDATA[This event records a conflict of virtual machine BIOS UUIDs.]]>
      </description-html>
            <property name="conflictedVm" type-id-ref="vim.event.VmEventArgument"
      vmodl-name="conflictedVm"
      >
      <description-html>
         <![CDATA[The virtual machine whose UUID conflicts with the
  current virtual machine's UUID.]]>
      </description-html>
      </property>

            <property name="uuid" type-id-ref="java.lang.String"
      vmodl-name="uuid"
      >
      <description-html>
         <![CDATA[The BIOS UUID in conflict.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostExtraNetworksEvent"
      type-id="vim.event.HostExtraNetworksEvent"
      vmodl-name="vim.event.HostExtraNetworksEvent"
      version-id-ref="vim.version.version5"
      is-deprecated="true"
      base-type-id="vim.event.HostDasEvent"
      >
      <description-html>
         <![CDATA[This event records the fact that a host has extra networks not used by
 other hosts for HA communication]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 5.0, the event is no longer relevant.]]>
      </deprecated-html>
            <property name="ips" type-id-ref="java.lang.String"
      vmodl-name="ips"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The comma-separated list of extra networks]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostInternetScsiHbaAuthenticationCapabilities"
      type-id="vim.host.InternetScsiHba.AuthenticationCapabilities"
      vmodl-name="vim.host.InternetScsiHba.AuthenticationCapabilities"
      enclosing-type-id-ref="vim.host.InternetScsiHba"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The authentication capabilities for this host bus adapter.]]>
      </description-html>
            <property name="chapAuthSettable" type-id-ref="BOOLEAN"
      vmodl-name="chapAuthSettable"
      >
      <description-html>
         <![CDATA[True if this host bus adapter supports changing the configuration
 state of CHAP authentication.  CHAP is mandatory, however some
 adapter may not allow disabling this authentication method.]]>
      </description-html>
      </property>

            <property name="krb5AuthSettable" type-id-ref="BOOLEAN"
      vmodl-name="krb5AuthSettable"
      >
      <description-html>
         <![CDATA[Always false in this version of the API.]]>
      </description-html>
      </property>

            <property name="srpAuthSettable" type-id-ref="BOOLEAN"
      vmodl-name="srpAuthSettable"
      >
      <description-html>
         <![CDATA[Always false in this version of the API.]]>
      </description-html>
      </property>

            <property name="spkmAuthSettable" type-id-ref="BOOLEAN"
      vmodl-name="spkmAuthSettable"
      >
      <description-html>
         <![CDATA[Always false in this version of the API.]]>
      </description-html>
      </property>

            <property name="mutualChapSettable" type-id-ref="BOOLEAN"
      vmodl-name="mutualChapSettable"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[When chapAuthSettable is TRUE, this describes if Mutual CHAP
 configuration is allowed as well.]]>
      </description-html>
      </property>

            <property name="targetChapSettable" type-id-ref="BOOLEAN"
      vmodl-name="targetChapSettable"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[When targetChapSettable is TRUE, this describes if
 CHAP configuration is allowed on targets associated
 with the adapter.]]>
      </description-html>
      </property>

            <property name="targetMutualChapSettable" type-id-ref="BOOLEAN"
      vmodl-name="targetMutualChapSettable"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[When targetMutualChapSettable is TRUE, this describes if
 Mutual CHAP configuration is allowed on targets associated
 with the adapter.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualAHCIControllerOption"
      type-id="vim.vm.device.VirtualAHCIControllerOption"
      vmodl-name="vim.vm.device.VirtualAHCIControllerOption"
      version-id-ref="vim.version.version9"
      base-type-id="vim.vm.device.VirtualSATAControllerOption"
      >
      <description-html>
         <![CDATA[VirtualAHCIControllerOption is the data object that contains
 the options for an AHCI SATA controller.]]>
      </description-html>
   </data-object>
   <data-object name="HostFaultToleranceManagerComponentHealthInfo"
      type-id="vim.host.FaultToleranceManager.ComponentHealthInfo"
      vmodl-name="vim.host.FaultToleranceManager.ComponentHealthInfo"
      enclosing-type-id-ref="vim.host.FaultToleranceManager"
      version-id-ref="vim.version.version10"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Data structure for component health information of a virtual machine.]]>
      </description-html>
            <property name="isStorageHealthy" type-id-ref="BOOLEAN"
      vmodl-name="isStorageHealthy"
      >
      <description-html>
         <![CDATA[Whether the virtual machine can access the datastores configured.]]>
      </description-html>
      </property>

            <property name="isNetworkHealthy" type-id-ref="BOOLEAN"
      vmodl-name="isNetworkHealthy"
      >
      <description-html>
         <![CDATA[Whether the virtual machine can access the VM network configured.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualLsiLogicControllerOption"
      type-id="vim.vm.device.VirtualLsiLogicControllerOption"
      vmodl-name="vim.vm.device.VirtualLsiLogicControllerOption"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.device.VirtualSCSIControllerOption"
      >
      <description-html>
         <![CDATA[VirtualLsiLogicControllerOption is the data object that contains
 the options for a LSI Logic SCSI controller.]]>
      </description-html>
   </data-object>
   <data-object name="VmCloneFailedEvent"
      type-id="vim.event.VmCloneFailedEvent"
      vmodl-name="vim.event.VmCloneFailedEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.VmCloneEvent"
      >
      <description-html>
         <![CDATA[This event records a failure to clone a virtual machine.]]>
      </description-html>
            <property name="destFolder" type-id-ref="vim.event.FolderEventArgument"
      vmodl-name="destFolder"
      >
      <description-html>
         <![CDATA[The destination folder to which the virtual machine is being cloned.]]>
      </description-html>
      </property>

            <property name="destName" type-id-ref="java.lang.String"
      vmodl-name="destName"
      >
      <description-html>
         <![CDATA[The name of the destination virtual machine.]]>
      </description-html>
      </property>

            <property name="destHost" type-id-ref="vim.event.HostEventArgument"
      vmodl-name="destHost"
      >
      <description-html>
         <![CDATA[The destination host to which the virtual machine was being cloned.]]>
      </description-html>
      </property>

            <property name="reason" type-id-ref="vmodl.LocalizedMethodFault"
      vmodl-name="reason"
      >
      <description-html>
         <![CDATA[The reason why this clone operation failed.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostVMotionNetConfig"
      type-id="vim.host.VMotionSystem.NetConfig"
      vmodl-name="vim.host.VMotionSystem.NetConfig"
      enclosing-type-id-ref="vim.host.VMotionSystem"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The NetConfig data object type contains the networking
  configuration for VMotion operations.]]>
      </description-html>
            <property name="candidateVnic" type-id-ref="vim.host.VirtualNic"
      vmodl-name="candidateVnic"
      is-array="true"
      is-optional="true"
      is-linkable="true"
      >
      <description-html>
         <![CDATA[List of VirtualNic objects that may be used for VMotion.
  This will be a subset of the list of VirtualNics in
  <a href="vim.host.NetworkInfo.html#vnic">vnic</a>.]]>
      </description-html>
      </property>

            <property name="selectedVnic" type-id-ref="vim.host.VirtualNic"
      vmodl-name="selectedVnic"
      is-optional="true"
      is-link="true"
      >
      <description-html>
         <![CDATA[VirtualNic that is selected for use in VMotion operations.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostStorageArrayTypePolicyOption"
      type-id="vim.host.StorageArrayTypePolicyOption"
      vmodl-name="vim.host.StorageArrayTypePolicyOption"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Description of options associated with a native multipathing
  storage array type plugin.]]>
      </description-html>
            <property name="policy" type-id-ref="vim.ElementDescription"
      vmodl-name="policy"
      >
      <description-html>
         <![CDATA[Description of the paths selection policy.  Use the key as the
  identifier.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualCdromAtapiBackingOption"
      type-id="vim.vm.device.VirtualCdromOption.AtapiBackingOption"
      vmodl-name="vim.vm.device.VirtualCdromOption.AtapiBackingOption"
      enclosing-type-id-ref="vim.vm.device.VirtualCdromOption"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.device.VirtualDeviceOption.DeviceBackingOption"
      >
      <description-html>
         <![CDATA[The VirtualCdromOption.AtapiBackingOption data object type
  contains the options for the ATAPI CD-ROM device backing.]]>
      </description-html>
   </data-object>
   <data-object name="VmRequirementsExceedCurrentEVCModeEvent"
      type-id="vim.event.VmRequirementsExceedCurrentEVCModeEvent"
      vmodl-name="vim.event.VmRequirementsExceedCurrentEVCModeEvent"
      version-id-ref="vim.version.version8"
      base-type-id="vim.event.VmEvent"
      >
      <description-html>
         <![CDATA[The virtual machine is using features that exceed what the
 host is capable of providing. This may occur when joining an EVC cluster
 while the virtual machine is powered on.
 The most common resolution is to power cycle the virtual machine.]]>
      </description-html>
   </data-object>
   <data-object name="VirtualMachineWindowsQuiesceSpec"
      type-id="vim.vm.WindowsQuiesceSpec"
      vmodl-name="vim.vm.WindowsQuiesceSpec"
      version-id-ref="vim.version.version11"
      base-type-id="vim.vm.GuestQuiesceSpec"
      >
      <description-html>
         <![CDATA[This data object type encapsulates configuration settings
   when creating a virtual machine quiesced snapshot.]]>
      </description-html>
            <property name="vssBackupType" type-id-ref="INT"
      vmodl-name="vssBackupType"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The property to indicate what type of VSS backup operation is going
  to be performed on the virtual machine.
  <p>
  See VSS_BACKUP_TYPE on MSDN:
  https://msdn.microsoft.com/en-us/library/aa384679(v=vs.85).aspx]]>
      </description-html>
      </property>

            <property name="vssBootableSystemState" type-id-ref="BOOLEAN"
      vmodl-name="vssBootableSystemState"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The property to indicate if a bootable system state during VSS backup
  to be performed on the virtual machine.]]>
      </description-html>
      </property>

            <property name="vssPartialFileSupport" type-id-ref="BOOLEAN"
      vmodl-name="vssPartialFileSupport"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The property to indicate if partial file support is enabled during VSS
  backup to be performed on the virtual machine.]]>
      </description-html>
      </property>

            <property name="vssBackupContext" type-id-ref="java.lang.String"
      vmodl-name="vssBackupContext"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The property to indicate what context of VSS backup operation to be
 performed on the virtual machine. For the list of supported values,
 see VssBackupContext]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.vm.WindowsQuiesceSpec.VssBackupContext</nested-type-id-ref>
   </data-object>
   <data-object name="VirtualMachinePrecisionClockInfo"
      type-id="vim.vm.PrecisionClockInfo"
      vmodl-name="vim.vm.PrecisionClockInfo"
      version-id-ref="vim.version.v7_0"
      base-type-id="vim.vm.TargetInfo"
      >
      <description-html>
         <![CDATA[The PrecisionClockInfo data object type describes available host
  clock resources, which can be used as backing reference for
  virtual precision clock devices.]]>
      </description-html>
            <property name="systemClockProtocol" type-id-ref="java.lang.String"
      vmodl-name="systemClockProtocol"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The currrent host system clock synchronization protocol.
  Used for specifying protocol in
  <a href="vim.vm.device.VirtualPrecisionClock.SystemClockBackingInfo.html">VirtualPrecisionClockSystemClockBackingInfo</a>.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="PerfInterval"
      type-id="vim.HistoricalInterval"
      vmodl-name="vim.HistoricalInterval"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object type contains metadata about a performance interval.
  <ul>

  <li> For VirtualCenter Server systems, instances of this data object are
       referred to as &#147;historical intervals&#148; because they control
       how data collected from the ESX systems will be aggregated and stored
       in the database.</li>

  <li> For ESX system, this data object is typically referred to simply as the
       &#147;interval&#148; or &#147;performance interval&#148; because ESX
       does not aggregate statistical data. </li>

  </ul>

  <p> For ESX systems, a single instance of this data object exists. It cannot
  be modified. It has these properties:

  <table border="1" width="100%">

  <tr>
     <th>key</th>
     <th>samplingPeriod</th>
     <th>length</th>
     <th>name</th>
     <th>level</th>
     <th>enabled</th>
  </tr>

  <tr>
     <td>1</td>
     <td>300</td>
     <td>129600</td>
     <td>PastDay</td>
     <td>null</td>
     <td>true</td>
  </tr>

  </table>

  <p> VirtualCenter Server system provides four instances of this data object
  by default, that apply globally to all system entities.

  <p> <b>Example Collection Levels</b><br/>VirtualCenter Server
  uses the specifications configured in its historical intervals to collect metrics
  from the ESX systems that it manages. The quantity of data collected depends on
  the level settings for the server, and the level associated with a specific counter.
  Both factors may change from one version of the products to the next. In general,
  the lower the number, the smaller the amount of data collected. For VirtualCenter
  Server 2.5, for example, the levels 1 through 4 collected data as follows: <ol>

  <li> Basic counters defined with "average" <a href="vim.PerformanceManager.CounterInfo.RollupType.html">rollup type</a> for CPU, Memory,
       Disk, and Network; plus counters for System Uptime, System Heartbeat,
       and DRS (Distributed Resource Scheduler, tracked in the
       "clusterServices" group). Does not include counters for devices. </li>

  <li> Counters defined with "average," "summation," and "latest" <a href="vim.PerformanceManager.CounterInfo.RollupType.html">rollup types</a> for CPU,
       Memory, Disk, and Network; plus counters for System Uptime, System
       Heartbeat, and DRS (clusterServices). Does not include counters for
       devices. </li>

  <li> Counters defined with "average," "summmation," and "latest" <a href="vim.PerformanceManager.CounterInfo.RollupType.html">rollup types</a> for CPU,
       Memory, Disk, Network, and all devices; plus counters for System
       Uptime, System Heartbeat, and DRS (clusterServices). </li>

  <li> All counters defined for all entities and devices, for every <a href="vim.PerformanceManager.CounterInfo.RollupType.html">rollup type</a>, including
       &#147;minimum&#148; and &#147;maximum&#46;&#148; </li>

  </ol>

  <p> Default properties for the four built-in historical intervals
  include:

  <table border="1" width="100%">

  <tr>
     <th>key</th>
     <th>samplingPeriod</th>
     <th>length</th>
     <th>name</th>
     <th>level</th>
     <th>enabled</th>
  </tr>

  <tr>
     <td>1</td>
     <td>300</td>
     <td>86400</td>
     <td>Past&nbsp;day</td>
     <td>1</td>
     <td>true</td>
  </tr>

  <tr>
     <td>2</td>
     <td>1800</td>
     <td>604800</td>
     <td>Past&nbsp;week</td>
     <td>1</td>
     <td>true</td>
  </tr>

  <tr>
     <td>3</td>
     <td>7200</td>
     <td>2592000</td>
     <td>Past&nbsp;month</td>
     <td>1</td>
     <td>true</td>
  </tr>

  <tr>
     <td>4</td>
     <td>86400</td>
     <td>31536000</td>
     <td>Past&nbsp;year</td>
     <td>1</td>
     <td>true</td>
  </tr>

  </table>

  <p> All values are in seconds. The default setting for vCenter Server is
  level 1, which retains sampled statistical data as follows: <ul>
  <li> 5-minute samples for the past day </li>
  <li> 30-minute samples for the past week </li>
  <li> 2-hour samples for the past month </li>
  <li> 1-day samples for the past year </li>
  </ul>

  <p> Data older than a year is purged from the vCenter Server database.

  <p> Prior to version 2&#46;5 of the API, this data object could be used in
  conjunction with the <a href="vim.PerformanceManager.html#createHistoricalInterval">CreatePerfInterval</a>
  operation, to define new, custom historical intervals. That operation has
  been deprecated: Adding and deleting objects of this type is no longer
  supported. However, the default historical intervals can be enabled or
  disabled, and can be modified within certain limits (with the <a href="vim.PerformanceManager.html#updateHistoricalInterval">UpdatePerfInterval</a> operation)&#46;]]>
      </description-html>
            <property name="key" type-id-ref="INT"
      vmodl-name="key"
      version-id-ref="vim.version.version2"
      >
      <description-html>
         <![CDATA[A unique identifier for the interval.]]>
      </description-html>
      </property>

            <property name="samplingPeriod" type-id-ref="INT"
      vmodl-name="samplingPeriod"
      >
      <description-html>
         <![CDATA[Number of seconds that data is sampled for this interval. The real-time
  samplingPeriod is 20 seconds.]]>
      </description-html>
      </property>

            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      is-localizable="true"
      >
      <description-html>
         <![CDATA[The name of the historical interval. A localized string that provides a
  name for the interval. Names include: <ul>
  <li>"Past Day"</li>
  <li>"Past Week"</li>
  <li>"Past Month"</li>
  <li>"Past Year"</li>
  </ul>
  The name is not meaningful in terms of system behavior. That is, the
  interval named &#147;Past Week&#148; works as it does because of its
  length, level, and so on, not because of the value of this string.]]>
      </description-html>
      </property>

            <property name="length" type-id-ref="INT"
      vmodl-name="length"
      >
      <description-html>
         <![CDATA[Number of seconds that the statistics corresponding to this interval are
  kept on the system.]]>
      </description-html>
      </property>

            <property name="level" type-id-ref="INT"
      vmodl-name="level"
      version-id-ref="vim.version.version2"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Statistics collection level for this historical interval. vCenter Server
  will aggregate only those statistics that match the value of this
  property for this historical interval. For ESX, the value of this
  property is null. For vCenter Server, the value will be a number from 1
  to 4.]]>
      </description-html>
      </property>

            <property name="enabled" type-id-ref="BOOLEAN"
      vmodl-name="enabled"
      version-id-ref="vim.version.version2"
      >
      <description-html>
         <![CDATA[Indicates whether the interval is enabled (true) or disabled (false).
  Disabling a historical interval prevents vCenter Server from collecting
  metrics for that interval and all higher (longer) intervals.

  <p> For example, disabling the "Past Month" interval disables both "Past
  Month" and "Past Year" intervals. The system will aggregate and retain
  performance data using the "Past Day" and "Past Week" intervals only.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="StorageDrsConfigSpec"
      type-id="vim.storageDrs.ConfigSpec"
      vmodl-name="vim.storageDrs.ConfigSpec"
      version-id-ref="vim.version.version7"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The <a href="vim.storageDrs.ConfigSpec.html">StorageDrsConfigSpec</a> data object provides a set of update
  specifications for storage DRS configuration. To support
  incremental changes, these properties are all optional.
  <p>]]>
      </description-html>
            <property name="podConfigSpec" type-id-ref="vim.storageDrs.PodConfigSpec"
      vmodl-name="podConfigSpec"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Changes to the configuration of the storage DRS service.]]>
      </description-html>
      </property>

            <property name="vmConfigSpec" type-id-ref="vim.storageDrs.VmConfigSpec"
      vmodl-name="vmConfigSpec"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Changes to the per-virtual-machine storage DRS settings.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualParallelPortOption"
      type-id="vim.vm.device.VirtualParallelPortOption"
      vmodl-name="vim.vm.device.VirtualParallelPortOption"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.device.VirtualDeviceOption"
      >
      <description-html>
         <![CDATA[This data object type contains the options for the
  virtual parallel port class.]]>
      </description-html>
      <nested-type-id-ref>vim.vm.device.VirtualParallelPortOption.FileBackingOption</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.device.VirtualParallelPortOption.DeviceBackingOption</nested-type-id-ref>
   </data-object>
   <data-object name="VirtualMachineConfigInfoOverheadInfo"
      type-id="vim.vm.ConfigInfo.OverheadInfo"
      vmodl-name="vim.vm.ConfigInfo.OverheadInfo"
      enclosing-type-id-ref="vim.vm.ConfigInfo"
      version-id-ref="vim.version.version7"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Information about virtualization overhead required to power on the
 virtual machine on the registered host.]]>
      </description-html>
            <property name="initialMemoryReservation" type-id-ref="LONG"
      vmodl-name="initialMemoryReservation"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Memory overhead required for virtual machine to be powered on (in bytes).]]>
      </description-html>
      </property>

            <property name="initialSwapReservation" type-id-ref="LONG"
      vmodl-name="initialSwapReservation"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Disk space required for virtual machine to be powered on (in bytes).
 This space is used by virtualization infrastructure to swap out
 virtual machine process memory. Location of the file is specified by
 sched.swap.vmxSwapDir virtual machinge advanced config option or
 in case it is not specified - current virtual machine home directory
 is being used.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ApplyHostProfileConfigurationResult"
      type-id="vim.profile.host.ProfileManager.ApplyHostConfigResult"
      vmodl-name="vim.profile.host.ProfileManager.ApplyHostConfigResult"
      enclosing-type-id-ref="vim.profile.host.ProfileManager"
      version-id-ref="vim.version.version11"
      internal-before-version-id-ref="vim.version.version12"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The ApplyHostConfigResult data object contains the remediation
 results for a host: the time that the remediation happens, the status,
 the errors, and optinal compliance result after reboot.]]>
      </description-html>
            <property name="startTime" type-id-ref="vmodl.DateTime"
      vmodl-name="startTime"
      >
      <description-html>
         <![CDATA[Time that the host config apply starts.]]>
      </description-html>
      </property>

            <property name="completeTime" type-id-ref="vmodl.DateTime"
      vmodl-name="completeTime"
      >
      <description-html>
         <![CDATA[Time that the host config apply completes.]]>
      </description-html>
      </property>

            <property name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      >
      <description-html>
         <![CDATA[Host to be remediated.]]>
      </description-html>
      </property>

            <property name="status" type-id-ref="java.lang.String"
      vmodl-name="status"
      >
      <description-html>
         <![CDATA[Status of the remediation.
 See
 <a href="vim.profile.host.ProfileManager.ApplyHostConfigResult.Status.html">ApplyHostProfileConfigurationResultStatus</a>
 for valid values.]]>
      </description-html>
      </property>

            <property name="errors" type-id-ref="vmodl.LocalizedMethodFault"
      vmodl-name="errors"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[If <code>status</code> is <code>fail</code>, this property contains
 a list of status error message objects.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.profile.host.ProfileManager.ApplyHostConfigResult.Status</nested-type-id-ref>
   </data-object>
   <data-object name="RetrieveOptions"
      type-id="vmodl.query.PropertyCollector.RetrieveOptions"
      vmodl-name="vmodl.query.PropertyCollector.RetrieveOptions"
      enclosing-type-id-ref="vmodl.query.PropertyCollector"
      version-id-ref="vmodl.query.version.version3"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Options for <a href="vmodl.query.PropertyCollector.html#retrievePropertiesEx">RetrievePropertiesEx</a>.]]>
      </description-html>
            <property name="maxObjects" type-id-ref="INT"
      vmodl-name="maxObjects"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The maximum number of <a href="vmodl.query.PropertyCollector.ObjectContent.html">ObjectContent</a> data
  objects that should be returned in a single result from <a href="vmodl.query.PropertyCollector.html#retrievePropertiesEx">RetrievePropertiesEx</a>.

  <p> An unset value indicates that there is no maximum. In this
  case <a href="vmodl.query.PropertyCollector.html">PropertyCollector</a> policy may still limit the number
  of objects. Any remaining objects may be retrieved with <a href="vmodl.query.PropertyCollector.html#continueRetrievePropertiesEx">ContinueRetrievePropertiesEx</a>.

  <p> A positive value causes <a href="vmodl.query.PropertyCollector.html#retrievePropertiesEx">RetrievePropertiesEx</a> to
  suspend the retrieval when the count of objects reaches the
  specified maximum. <a href="vmodl.query.PropertyCollector.html">PropertyCollector</a> policy may still
  limit the count to something less than <a href="vmodl.query.PropertyCollector.RetrieveOptions.html#maxObjects">maxObjects</a>. Any remaining
  objects may be retrieved with <a href="vmodl.query.PropertyCollector.html#continueRetrievePropertiesEx">ContinueRetrievePropertiesEx</a>.

  <p> A value less than or equal to 0 is illegal.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VMwareDVSHealthCheckConfig"
      type-id="vim.dvs.VmwareDistributedVirtualSwitch.VmwareHealthCheckConfig"
      vmodl-name="vim.dvs.VmwareDistributedVirtualSwitch.VmwareHealthCheckConfig"
      enclosing-type-id-ref="vim.dvs.VmwareDistributedVirtualSwitch"
      version-id-ref="vim.version.version8"
      base-type-id="vim.DistributedVirtualSwitch.HealthCheckConfig"
      >
      <description-html>
         <![CDATA[This class defines health check configuration for
  VMware vSphere Distributed Switch.]]>
      </description-html>
   </data-object>
   <data-object name="HostVmciAccessManagerAccessSpec"
      type-id="vim.host.VmciAccessManager.AccessSpec"
      vmodl-name="vim.host.VmciAccessManager.AccessSpec"
      enclosing-type-id-ref="vim.host.VmciAccessManager"
      version-id-ref="vim.version.version7"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The AccessSpec data object declares an update to the service
 access granted to a VM. The given list of services will either
 be granted in addition to existing services, replace the
 existing service or be revoked depending on the mode
 specified. In case of a revoke, an empty or non-existing service
 list indicates that all granted services should be revoked.]]>
      </description-html>
            <property name="vm" type-id-ref="vim.VirtualMachine"
      vmodl-name="vm"
      >
      </property>

            <property name="services" type-id-ref="java.lang.String"
      vmodl-name="services"
      is-array="true"
      is-optional="true"
      >
      </property>

            <property name="mode" type-id-ref="java.lang.String"
      vmodl-name="mode"
      >
      </property>

   </data-object>
   <data-object name="VmFailedToStandbyGuestEvent"
      type-id="vim.event.VmFailedToStandbyGuestEvent"
      vmodl-name="vim.event.VmFailedToStandbyGuestEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.VmEvent"
      >
      <description-html>
         <![CDATA[This event records a failure to set the guest on a virtual machine to a standby
  state.]]>
      </description-html>
            <property name="reason" type-id-ref="vmodl.LocalizedMethodFault"
      vmodl-name="reason"
      >
      <description-html>
         <![CDATA[The reason for the failure.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ClusterDasFailoverLevelAdvancedRuntimeInfo"
      type-id="vim.cluster.DasFailoverLevelAdvancedRuntimeInfo"
      vmodl-name="vim.cluster.DasFailoverLevelAdvancedRuntimeInfo"
      version-id-ref="vim.version.version5"
      base-type-id="vim.cluster.DasAdvancedRuntimeInfo"
      >
      <description-html>
         <![CDATA[Advanced runtime information related to the high availability service
 for a cluster that has been configured with a failover level admission control
 policy. See <a href="vim.cluster.FailoverLevelAdmissionControlPolicy.html">ClusterFailoverLevelAdmissionControlPolicy</a>.]]>
      </description-html>
            <property name="slotInfo" type-id-ref="vim.cluster.DasFailoverLevelAdvancedRuntimeInfo.SlotInfo"
      vmodl-name="slotInfo"
      >
      <description-html>
         <![CDATA[Slot information for this cluster.]]>
      </description-html>
      </property>

            <property name="totalSlots" type-id-ref="INT"
      vmodl-name="totalSlots"
      >
      <description-html>
         <![CDATA[The total number of slots available in the cluster.<br>See SlotInfo]]>
      </description-html>
      </property>

            <property name="usedSlots" type-id-ref="INT"
      vmodl-name="usedSlots"
      >
      <description-html>
         <![CDATA[The number of slots currently being used.<br>See SlotInfo]]>
      </description-html>
      </property>

            <property name="unreservedSlots" type-id-ref="INT"
      vmodl-name="unreservedSlots"
      >
      <description-html>
         <![CDATA[The number of slots that are not used by currently powered on virtual machines
 and not reserved to satisfy the configured failover level. This number gives
 an indication of how many additional virtual machines can be powered on in
 this cluster without violating the failover level (assuming the new virtual
 machine's reservations are satisfied by the current slot size).

 This value is computed as follows (where m is the configured failover level):
 Remove the m largest hosts (ie. the ones with the most slots) from the list
 of "good" hosts (see <a href="vim.cluster.DasFailoverLevelAdvancedRuntimeInfo.html#totalGoodHosts">totalGoodHosts</a>). Sum up the number of slots on
 the remaining hosts and deduct the number of currently used slots
 (see <a href="vim.cluster.DasFailoverLevelAdvancedRuntimeInfo.html#usedSlots">usedSlots</a>). If this number is negative, use zero instead.<br>See SlotInfo]]>
      </description-html>
      </property>

            <property name="totalVms" type-id-ref="INT"
      vmodl-name="totalVms"
      >
      <description-html>
         <![CDATA[The total number of powered on vms in the cluster.]]>
      </description-html>
      </property>

            <property name="totalHosts" type-id-ref="INT"
      vmodl-name="totalHosts"
      >
      <description-html>
         <![CDATA[The total number of hosts in the cluster.]]>
      </description-html>
      </property>

            <property name="totalGoodHosts" type-id-ref="INT"
      vmodl-name="totalGoodHosts"
      >
      <description-html>
         <![CDATA[The total number of connected hosts that are not in maintance mode and that
 do not have any DAS-related config issues on them.]]>
      </description-html>
      </property>

            <property name="hostSlots" type-id-ref="vim.cluster.DasFailoverLevelAdvancedRuntimeInfo.HostSlots"
      vmodl-name="hostSlots"
      is-array="true"
      is-optional="true"
      >
      </property>

            <property name="vmsRequiringMultipleSlots" type-id-ref="vim.cluster.DasFailoverLevelAdvancedRuntimeInfo.VmSlots"
      vmodl-name="vmsRequiringMultipleSlots"
      version-id-ref="vim.version.version8"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The list of virtual machines whose reservations and memory overhead are not
 satisfied by a single slot.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.cluster.DasFailoverLevelAdvancedRuntimeInfo.SlotInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.cluster.DasFailoverLevelAdvancedRuntimeInfo.HostSlots</nested-type-id-ref>
      <nested-type-id-ref>vim.cluster.DasFailoverLevelAdvancedRuntimeInfo.VmSlots</nested-type-id-ref>
   </data-object>
   <data-object name="VmWwnAssignedEvent"
      type-id="vim.event.VmWwnAssignedEvent"
      vmodl-name="vim.event.VmWwnAssignedEvent"
      version-id-ref="vim.version.version2"
      base-type-id="vim.event.VmEvent"
      >
      <description-html>
         <![CDATA[This event records the assignment of a new WWN (World Wide Name)
  to a virtual machine.]]>
      </description-html>
            <property name="nodeWwns" type-id-ref="LONG"
      vmodl-name="nodeWwns"
      is-array="true"
      >
      <description-html>
         <![CDATA[The new node WWN.]]>
      </description-html>
      </property>

            <property name="portWwns" type-id-ref="LONG"
      vmodl-name="portWwns"
      is-array="true"
      >
      <description-html>
         <![CDATA[The new port WWN.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="CustomizationOptions"
      type-id="vim.vm.customization.Options"
      vmodl-name="vim.vm.customization.Options"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Base object type for optional operations supported by the customization process.]]>
      </description-html>
   </data-object>
   <data-object name="VirtualDiskRawDiskVer2BackingOption"
      type-id="vim.vm.device.VirtualDiskOption.RawDiskVer2BackingOption"
      vmodl-name="vim.vm.device.VirtualDiskOption.RawDiskVer2BackingOption"
      enclosing-type-id-ref="vim.vm.device.VirtualDiskOption"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.device.VirtualDeviceOption.DeviceBackingOption"
      >
      <description-html>
         <![CDATA[The VirtualDiskOption.RawDiskVer2BackingOption object type
  contains the available options when backing a virtual disk
  using a host device on VMware Server.]]>
      </description-html>
            <property name="descriptorFileNameExtensions" type-id-ref="vim.option.ChoiceOption"
      vmodl-name="descriptorFileNameExtensions"
      >
      <description-html>
         <![CDATA[Valid extensions for the filename of the raw disk descriptor
  file.]]>
      </description-html>
      </property>

            <property name="uuid" type-id-ref="BOOLEAN"
      vmodl-name="uuid"
      version-id-ref="vim.version.version2"
      >
      <description-html>
         <![CDATA[Flag to indicate whether this backing supports disk UUID property.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualDeviceOption"
      type-id="vim.vm.device.VirtualDeviceOption"
      vmodl-name="vim.vm.device.VirtualDeviceOption"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The VirtualDeviceOption data object type contains information about
  a virtual device type, the options for configuring the virtual device,
  and the relationship between this virtual device and other devices.
  The vSphere API groups device configurations that are mutually exclusive
  into different configuration objects; each of these configuration objects
  may define subtypes for virtual device backing options
  that are independent of the virtual device.
  Backing-dependent options should appear in a subtype of
  <a href="vim.vm.device.VirtualDeviceOption.BackingOption.html">VirtualDeviceBackingOption</a>.]]>
      </description-html>
            <property name="type" type-id-ref="vmodl.TypeName"
      vmodl-name="type"
      >
      <description-html>
         <![CDATA[The name of the run-time class the client should instantiate
  to create a run-time instance of this device.]]>
      </description-html>
      </property>

            <property name="connectOption" type-id-ref="vim.vm.device.VirtualDeviceOption.ConnectOption"
      vmodl-name="connectOption"
      is-optional="true"
      >
      <description-html>
         <![CDATA[If the device is connectable, then the connectOption
  describes the connect options and defaults.]]>
      </description-html>
      </property>

            <property name="busSlotOption" type-id-ref="vim.vm.device.VirtualDeviceOption.BusSlotOption"
      vmodl-name="busSlotOption"
      version-id-ref="vim.version.version8"
      is-optional="true"
      >
      <description-html>
         <![CDATA[If the device can use a bus slot configuration, then the busSlotOption
  describes the bus slot options.]]>
      </description-html>
      </property>

            <property name="controllerType" type-id-ref="vmodl.TypeName"
      vmodl-name="controllerType"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Data object type that denotes the controller option object that is
  valid for controlling this device.]]>
      </description-html>
      </property>

            <property name="autoAssignController" type-id-ref="vim.option.BoolOption"
      vmodl-name="autoAssignController"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Flag to indicate whether or not this device will be auto-assigned a controller
  if one is required. If this is true, then a client need not explicitly create
  the controller that this device will plug into.]]>
      </description-html>
      </property>

            <property name="backingOption" type-id-ref="vim.vm.device.VirtualDeviceOption.BackingOption"
      vmodl-name="backingOption"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[A list of backing options that can be used to map the virtual
  device to the host. The list is optional, since some devices exist only within
  the virtual machine; for example, a VirtualController.]]>
      </description-html>
      </property>

            <property name="defaultBackingOptionIndex" type-id-ref="INT"
      vmodl-name="defaultBackingOptionIndex"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Index into the backingOption list, indicating the default backing.]]>
      </description-html>
      </property>

            <property name="licensingLimit" type-id-ref="vmodl.PropertyPath"
      vmodl-name="licensingLimit"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of property names enforced by a licensing restriction
  of the underlying product. For example, a limit that is not
  derived based on the product or hardware features; the
  property name "numCPU".]]>
      </description-html>
      </property>

            <property name="deprecated" type-id-ref="BOOLEAN"
      vmodl-name="deprecated"
      >
      <description-html>
         <![CDATA[Indicates whether this device is deprecated. Hence, if set the device
  cannot be used when creating a new virtual machine or be added to an existing
  virtual machine. However, the device is still supported by the platform.]]>
      </description-html>
      </property>

            <property name="plugAndPlay" type-id-ref="BOOLEAN"
      vmodl-name="plugAndPlay"
      >
      <description-html>
         <![CDATA[Indicates if this type of device can be hot-added to the virtual machine
 via a reconfigure operation when the virtual machine is powered on.]]>
      </description-html>
      </property>

            <property name="hotRemoveSupported" type-id-ref="BOOLEAN"
      vmodl-name="hotRemoveSupported"
      version-id-ref="vim.version.version4"
      >
      <description-html>
         <![CDATA[Indicates if this type of device can be hot-removed from the virtual machine
 via a reconfigure operation when the virtual machine is powered on.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.vm.device.VirtualDeviceOption.BackingOption</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.device.VirtualDeviceOption.FileBackingOption</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.device.VirtualDeviceOption.DeviceBackingOption</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.device.VirtualDeviceOption.RemoteDeviceBackingOption</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.device.VirtualDeviceOption.PipeBackingOption</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.device.VirtualDeviceOption.URIBackingOption</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.device.VirtualDeviceOption.ConnectOption</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.device.VirtualDeviceOption.BusSlotOption</nested-type-id-ref>
   </data-object>
   <data-object name="VsanUpgradeSystemNetworkPartitionInfo"
      type-id="vim.VsanUpgradeSystem.NetworkPartitionInfo"
      vmodl-name="vim.VsanUpgradeSystem.NetworkPartitionInfo"
      enclosing-type-id-ref="vim.VsanUpgradeSystem"
      version-id-ref="vim.version.version10"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Information about a particular group of hosts making up a network partition.]]>
      </description-html>
            <property name="hosts" type-id-ref="vim.HostSystem"
      vmodl-name="hosts"
      is-array="true"
      >
      <description-html>
         <![CDATA[Hosts that make up the network partition]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostVirtualSwitchSpec"
      type-id="vim.host.VirtualSwitch.Specification"
      vmodl-name="vim.host.VirtualSwitch.Specification"
      enclosing-type-id-ref="vim.host.VirtualSwitch"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object type describes the VirtualSwitch specification
  representing the properties on a VirtualSwitch that can be
  configured once the object exists.]]>
      </description-html>
            <property name="numPorts" type-id-ref="INT"
      vmodl-name="numPorts"
      >
      <description-html>
         <![CDATA[The number of ports that this virtual switch is configured to use.
  Changing this setting does not take effect until the next reboot. The maximum
  value is 1024, although other constraints, such as memory limits, may establish
  a lower effective limit.]]>
      </description-html>
      </property>

            <property name="bridge" type-id-ref="vim.host.VirtualSwitch.Bridge"
      vmodl-name="bridge"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The bridge specification describes how physical network adapters
  can be bridged to a virtual switch.]]>
      </description-html>
      </property>

            <property name="policy" type-id-ref="vim.host.NetworkPolicy"
      vmodl-name="policy"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The virtual switch policy specification.  This has a lower
  precedence than PortGroup. If the policy property is not set
  and you are creating a virtual switch, then a default
  policy property setting is used.  If the policy property is not
  set and you are updating a virtual switch, then the policy will
  be unchanged.]]>
      </description-html>
      </property>

            <property name="mtu" type-id-ref="INT"
      vmodl-name="mtu"
      version-id-ref="vim.version.version2"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The maximum transmission unit (MTU) of the virtual switch in bytes.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="RoleEventArgument"
      type-id="vim.event.RoleEventArgument"
      vmodl-name="vim.event.RoleEventArgument"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.EventArgument"
      >
      <description-html>
         <![CDATA[The event argument is a Role object.]]>
      </description-html>
            <property name="roleId" type-id-ref="INT"
      vmodl-name="roleId"
      >
      <description-html>
         <![CDATA[The ID of the role.]]>
      </description-html>
      </property>

            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      is-localizable="true"
      >
      <description-html>
         <![CDATA[The name of the role.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="AnswerFileStatusError"
      type-id="vim.profile.host.AnswerFileStatusResult.AnswerFileStatusError"
      vmodl-name="vim.profile.host.AnswerFileStatusResult.AnswerFileStatusError"
      enclosing-type-id-ref="vim.profile.host.AnswerFileStatusResult"
      version-id-ref="vim.version.version7"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The AnswerFileStatusError data object describes an answer file
 error and identifies the profile or policy option with which the error
 is associated.]]>
      </description-html>
            <property name="userInputPath" type-id-ref="vim.profile.ProfilePropertyPath"
      vmodl-name="userInputPath"
      >
      <description-html>
         <![CDATA[Path to a profile or a policy option for host-specific data.]]>
      </description-html>
      </property>

            <property name="errMsg" type-id-ref="vmodl.LocalizableMessage"
      vmodl-name="errMsg"
      >
      <description-html>
         <![CDATA[Message describing the error.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DvsResourceRuntimeInfo"
      type-id="vim.DistributedVirtualSwitch.ResourceRuntimeInfo"
      vmodl-name="vim.DistributedVirtualSwitch.ResourceRuntimeInfo"
      enclosing-type-id-ref="vim.DistributedVirtualSwitch"
      version-id-ref="vim.version.version10"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This class defines the bandwidth reservation information for the
 vSphere Distributed Switch.]]>
      </description-html>
            <property name="capacity" type-id-ref="INT"
      vmodl-name="capacity"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Capacity: Total Reservation allocated for Virtual Machine
  Traffic for this switch.
  Units in Mbits/s.]]>
      </description-html>
      </property>

            <property name="usage" type-id-ref="INT"
      vmodl-name="usage"
      is-optional="true"
      >
      <description-html>
         <![CDATA[usage: Current total usage. This is the sum of all reservations
  allocated to VmVnicNetworkResourcePool on this switch and the
  sum of reservation taken by <a href="vim.vm.device.VirtualEthernetCard.html">VirtualEthernetCard</a> whose
  backing is not associdated with any VmVnicNetworkResourcePool.
  Units in Mbits/s.]]>
      </description-html>
      </property>

            <property name="available" type-id-ref="INT"
      vmodl-name="available"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Available: Current available resource for reservation (capacity - usage).
  Units in Mbits/s.]]>
      </description-html>
      </property>

            <property name="allocatedResource" type-id-ref="vim.dvs.VmVnicNetworkResourcePool.VnicAllocatedResource"
      vmodl-name="allocatedResource"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The reservation taken by <a href="vim.vm.device.VirtualEthernetCard.html">VirtualEthernetCard</a> of which the
  backing is not associdated with any VmVnicNetworkResourcePool]]>
      </description-html>
      </property>

            <property name="vmVnicNetworkResourcePoolRuntime" type-id-ref="vim.dvs.VmVnicNetworkResourcePool.RuntimeInfo"
      vmodl-name="vmVnicNetworkResourcePoolRuntime"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The runtime information of VmVnicNetworkResourcePool.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostDateTimeConfig"
      type-id="vim.host.DateTimeConfig"
      vmodl-name="vim.host.DateTimeConfig"
      version-id-ref="vim.version.version2"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object represents the dateTime configuration of the host.]]>
      </description-html>
            <property name="timeZone" type-id-ref="java.lang.String"
      vmodl-name="timeZone"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The time zone of the host.
  Must be one of the values of
  <a href="vim.host.DateTimeSystem.TimeZone.html#key">key</a>]]>
      </description-html>
      </property>

            <property name="ntpConfig" type-id-ref="vim.host.NtpConfig"
      vmodl-name="ntpConfig"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The NTP configuration on the host.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualSerialPortThinPrintBackingInfo"
      type-id="vim.vm.device.VirtualSerialPort.ThinPrintBackingInfo"
      vmodl-name="vim.vm.device.VirtualSerialPort.ThinPrintBackingInfo"
      enclosing-type-id-ref="vim.vm.device.VirtualSerialPort"
      version-id-ref="vim.version.version8"
      base-type-id="vim.vm.device.VirtualDevice.BackingInfo"
      >
      <description-html>
         <![CDATA[The <code><a href="vim.vm.device.VirtualSerialPort.ThinPrintBackingInfo.html">VirtualSerialPortThinPrintBackingInfo</a></code> data object defines
  information required for backing a <code><a href="vim.vm.device.VirtualSerialPort.html">VirtualSerialPort</a></code> with a
  ThinPrint device.]]>
      </description-html>
   </data-object>
   <data-object name="FolderFileQuery"
      type-id="vim.host.DatastoreBrowser.FolderQuery"
      vmodl-name="vim.host.DatastoreBrowser.FolderQuery"
      enclosing-type-id-ref="vim.host.DatastoreBrowser"
      version-id-ref="vim.version.version1"
      base-type-id="vim.host.DatastoreBrowser.Query"
      >
      <description-html>
         <![CDATA[This data object type describes the query specification for a folder (directory).]]>
      </description-html>
   </data-object>
   <data-object name="ClusterActionHistory"
      type-id="vim.cluster.ActionHistory"
      vmodl-name="vim.cluster.ActionHistory"
      version-id-ref="vim.version.version2"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Base class for all action history.]]>
      </description-html>
            <property name="action" type-id-ref="vim.cluster.Action"
      vmodl-name="action"
      >
      <description-html>
         <![CDATA[The action that was executed recently.]]>
      </description-html>
      </property>

            <property name="time" type-id-ref="vmodl.DateTime"
      vmodl-name="time"
      >
      <description-html>
         <![CDATA[The time when the action was executed.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualMachineIdeDiskDeviceInfo"
      type-id="vim.vm.IdeDiskDeviceInfo"
      vmodl-name="vim.vm.IdeDiskDeviceInfo"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.DiskDeviceInfo"
      >
      <description-html>
         <![CDATA[The IdeDiskDeviceInfo class contains detailed information about a specific
  IDE disk hardware device. These devices are for the
  vim.vm.device.VirtualDisk.RawDiskVer2BackingInfo and
  vim.vm.device.VirtualDisk.PartitionedRawDiskVer2BackingInfo backings.]]>
      </description-html>
            <property name="partitionTable" type-id-ref="vim.vm.IdeDiskDeviceInfo.PartitionInfo"
      vmodl-name="partitionTable"
      is-array="true"
      is-optional="true"
      >
      </property>

      <nested-type-id-ref>vim.vm.IdeDiskDeviceInfo.PartitionInfo</nested-type-id-ref>
   </data-object>
   <data-object name="PasswordField"
      type-id="vim.PasswordField"
      vmodl-name="vim.PasswordField"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[DataObject which represents a Password field.

 Password is functionally equivalent to String.]]>
      </description-html>
            <property name="value" type-id-ref="java.lang.String"
      vmodl-name="value"
      >
      </property>

   </data-object>
   <data-object name="VmBeingCreatedEvent"
      type-id="vim.event.VmBeingCreatedEvent"
      vmodl-name="vim.event.VmBeingCreatedEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.VmEvent"
      >
      <description-html>
         <![CDATA[This event records a virtual machine being created.]]>
      </description-html>
            <property name="configSpec" type-id-ref="vim.vm.ConfigSpec"
      vmodl-name="configSpec"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The configuration specification that was used to create this virtual machine.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VchaNodeRuntimeInfo"
      type-id="vim.vcha.FailoverClusterManager.VchaNodeRuntimeInfo"
      vmodl-name="vim.vcha.FailoverClusterManager.VchaNodeRuntimeInfo"
      enclosing-type-id-ref="vim.vcha.FailoverClusterManager"
      version-id-ref="vim.version.version11"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The VchaNodeRuntimeInfo class describes a node's
 runtime information in a VCHA Cluster.]]>
      </description-html>
            <property name="nodeState" type-id-ref="java.lang.String"
      vmodl-name="nodeState"
      >
      <description-html>
         <![CDATA[Last known state of the node.
 <a href="vim.vcha.FailoverClusterManager.VchaNodeState.html">VchaNodeState</a>
 lists all possible states.]]>
      </description-html>
      </property>

            <property name="nodeRole" type-id-ref="java.lang.String"
      vmodl-name="nodeRole"
      >
      <description-html>
         <![CDATA[Last known role of the node.
 <a href="vim.vcha.FailoverClusterManager.VchaNodeRole.html">VchaNodeRole</a>
 lists all possible roles.]]>
      </description-html>
      </property>

            <property name="nodeIp" type-id-ref="java.lang.String"
      vmodl-name="nodeIp"
      >
      <description-html>
         <![CDATA[IP address for the node in the replication network.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostDatastoreNameConflictConnectInfo"
      type-id="vim.host.ConnectInfo.DatastoreNameConflictInfo"
      vmodl-name="vim.host.ConnectInfo.DatastoreNameConflictInfo"
      enclosing-type-id-ref="vim.host.ConnectInfo"
      version-id-ref="vim.version.version1"
      base-type-id="vim.host.ConnectInfo.DatastoreInfo"
      >
      <description-html>
         <![CDATA[This data object type describes a datastore on the host that has the same name as
  a different datastore on VirtualCenter.]]>
      </description-html>
            <property name="newDatastoreName" type-id-ref="java.lang.String"
      vmodl-name="newDatastoreName"
      >
      <description-html>
         <![CDATA[To resolve a conflict with existing datastores, a suggested new name of the
  datastore can be provided.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VmTimedoutStartingSecondaryEvent"
      type-id="vim.event.VmTimedoutStartingSecondaryEvent"
      vmodl-name="vim.event.VmTimedoutStartingSecondaryEvent"
      version-id-ref="vim.version.version5"
      base-type-id="vim.event.VmEvent"
      >
      <description-html>
         <![CDATA[This event records timeout when starting a secondary VM.
  A default alarm will be triggered upon this event, which by default
  would trigger a SNMP trap.]]>
      </description-html>
            <property name="timeout" type-id-ref="LONG"
      vmodl-name="timeout"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The duration of the timeout in milliseconds.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostFirewallRule"
      type-id="vim.host.Ruleset.Rule"
      vmodl-name="vim.host.Ruleset.Rule"
      enclosing-type-id-ref="vim.host.Ruleset"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object type describes a port (or range of ports),
  identified by port number(s), direction and protocol.  It is
  used as a convenient way for users to express what ports they
  want to permit through the firewall.]]>
      </description-html>
            <property name="port" type-id-ref="INT"
      vmodl-name="port"
      >
      <description-html>
         <![CDATA[The port number.]]>
      </description-html>
      </property>

            <property name="endPort" type-id-ref="INT"
      vmodl-name="endPort"
      is-optional="true"
      >
      <description-html>
         <![CDATA[For a port range, the ending port number.]]>
      </description-html>
      </property>

            <property name="direction" type-id-ref="vim.host.Ruleset.Rule.Direction"
      vmodl-name="direction"
      >
      <description-html>
         <![CDATA[The port direction.]]>
      </description-html>
      </property>

            <property name="portType" type-id-ref="vim.host.Ruleset.Rule.PortType"
      vmodl-name="portType"
      version-id-ref="vim.version.version7"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The port type.]]>
      </description-html>
      </property>

            <property name="protocol" type-id-ref="java.lang.String"
      vmodl-name="protocol"
      >
      <description-html>
         <![CDATA[The port protocol.  Valid values are defined by the
  <a href="vim.host.Ruleset.Rule.Protocol.html">HostFirewallRuleProtocol</a> enumeration.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.host.Ruleset.Rule.Direction</nested-type-id-ref>
      <nested-type-id-ref>vim.host.Ruleset.Rule.PortType</nested-type-id-ref>
      <nested-type-id-ref>vim.host.Ruleset.Rule.Protocol</nested-type-id-ref>
   </data-object>
   <data-object name="HostSystemRemediationState"
      type-id="vim.HostSystem.RemediationState"
      vmodl-name="vim.HostSystem.RemediationState"
      enclosing-type-id-ref="vim.HostSystem"
      version-id-ref="vim.version.version12"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The valid remediation states. Host profile apply has two stages:
  precheck remediation and remediation. Precheck remediation generates
  task list and task requirement: apply may fail when task requirements
  are not satisfied. Remediation stage can be started only when precheck
  remediation succeeded.]]>
      </description-html>
            <property name="state" type-id-ref="java.lang.String"
      vmodl-name="state"
      >
      <description-html>
         <![CDATA[The remediation or precheck remediation operation state. See
 <a href="vim.HostSystem.RemediationState.State.html">HostSystemRemediationStateState</a> for the valid
 values.]]>
      </description-html>
      </property>

            <property name="operationTime" type-id-ref="vmodl.DateTime"
      vmodl-name="operationTime"
      >
      <description-html>
         <![CDATA[For any "running" state, this is the starting time; for others, this
  is the completion time.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.HostSystem.RemediationState.State</nested-type-id-ref>
   </data-object>
   <data-object name="CryptoKeyResult"
      type-id="vim.encryption.CryptoKeyResult"
      vmodl-name="vim.encryption.CryptoKeyResult"
      version-id-ref="vim.version.version11"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[CryptoKeyResult.java --

 Data Object representing a cryptographic key operation result.]]>
      </description-html>
            <property name="keyId" type-id-ref="vim.encryption.CryptoKeyId"
      vmodl-name="keyId"
      >
      </property>

            <property name="success" type-id-ref="BOOLEAN"
      vmodl-name="success"
      >
      </property>

            <property name="reason" type-id-ref="java.lang.String"
      vmodl-name="reason"
      is-optional="true"
      >
      </property>

   </data-object>
   <data-object name="HostRdmaDeviceBacking"
      type-id="vim.host.RdmaDevice.Backing"
      vmodl-name="vim.host.RdmaDevice.Backing"
      enclosing-type-id-ref="vim.host.RdmaDevice"
      version-id-ref="vim.version.v7_0"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object represents the physical
  backing of an RDMA device.]]>
      </description-html>
   </data-object>
   <data-object name="HostRdmaTargetTransport"
      type-id="vim.host.RdmaTargetTransport"
      vmodl-name="vim.host.RdmaTargetTransport"
      version-id-ref="vim.version.v7_0"
      base-type-id="vim.host.TargetTransport"
      >
      <description-html>
         <![CDATA[Remote Direct Memory Access (RDMA) transport
  information about a target.]]>
      </description-html>
   </data-object>
   <data-object name="VsanUpgradeSystemPreflightCheckIssue"
      type-id="vim.VsanUpgradeSystem.PreflightCheckIssue"
      vmodl-name="vim.VsanUpgradeSystem.PreflightCheckIssue"
      enclosing-type-id-ref="vim.VsanUpgradeSystem"
      version-id-ref="vim.version.version10"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Base class for a pre-flight check issue. Can be used directly
 but usually a derived class with a specific issue type is used.]]>
      </description-html>
            <property name="msg" type-id-ref="java.lang.String"
      vmodl-name="msg"
      >
      <description-html>
         <![CDATA[Message describing the issue.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="AlarmScriptFailedEvent"
      type-id="vim.event.AlarmScriptFailedEvent"
      vmodl-name="vim.event.AlarmScriptFailedEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.AlarmEvent"
      >
      <description-html>
         <![CDATA[This event records a failure to complete an alarm-triggered script.]]>
      </description-html>
            <property name="entity" type-id-ref="vim.event.ManagedEntityEventArgument"
      vmodl-name="entity"
      >
      <description-html>
         <![CDATA[The entity with which the alarm is registered.]]>
      </description-html>
      </property>

            <property name="script" type-id-ref="java.lang.String"
      vmodl-name="script"
      >
      <description-html>
         <![CDATA[The script triggered by the alarm.]]>
      </description-html>
      </property>

            <property name="reason" type-id-ref="vmodl.LocalizedMethodFault"
      vmodl-name="reason"
      >
      <description-html>
         <![CDATA[The reason for the failure.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostFibreChannelOverEthernetHba"
      type-id="vim.host.FibreChannelOverEthernetHba"
      vmodl-name="vim.host.FibreChannelOverEthernetHba"
      version-id-ref="vim.version.version7"
      base-type-id="vim.host.FibreChannelHba"
      >
      <description-html>
         <![CDATA[This data object type describes the FCoE host bus adapter
  interface.

  Terminology is borrowed from T11's working draft of the Fibre Channel
  Backbone 5 standard (FC-BB-5).  The draft can be found at
  http://www.t11.org.]]>
      </description-html>
            <property name="underlyingNic" type-id-ref="java.lang.String"
      vmodl-name="underlyingNic"
      >
      <description-html>
         <![CDATA[The name associated with this FCoE HBA's underlying FcoeNic.]]>
      </description-html>
      </property>

            <property name="linkInfo" type-id-ref="vim.host.FibreChannelOverEthernetHba.LinkInfo"
      vmodl-name="linkInfo"
      >
      <description-html>
         <![CDATA[Link information that can be used to uniquely identify this FCoE HBA.]]>
      </description-html>
      </property>

            <property name="isSoftwareFcoe" type-id-ref="BOOLEAN"
      vmodl-name="isSoftwareFcoe"
      >
      <description-html>
         <![CDATA[True if this host bus adapter is a software based FCoE initiator.]]>
      </description-html>
      </property>

            <property name="markedForRemoval" type-id-ref="BOOLEAN"
      vmodl-name="markedForRemoval"
      >
      <description-html>
         <![CDATA[True if this host bus adapter has been marked for removal.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.host.FibreChannelOverEthernetHba.LinkInfo</nested-type-id-ref>
   </data-object>
   <data-object name="GuestRegValueDwordSpec"
      type-id="vim.vm.guest.WindowsRegistryManager.RegistryValueDword"
      vmodl-name="vim.vm.guest.WindowsRegistryManager.RegistryValueDword"
      enclosing-type-id-ref="vim.vm.guest.WindowsRegistryManager"
      version-id-ref="vim.version.version10"
      base-type-id="vim.vm.guest.WindowsRegistryManager.RegistryValueData"
      >
      <description-html>
         <![CDATA[This describes the registry value dword.]]>
      </description-html>
            <property name="value" type-id-ref="INT"
      vmodl-name="value"
      >
      <description-html>
         <![CDATA[The data of the registry value.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="RecurrentTaskScheduler"
      type-id="vim.scheduler.RecurrentTaskScheduler"
      vmodl-name="vim.scheduler.RecurrentTaskScheduler"
      version-id-ref="vim.version.version1"
      base-type-id="vim.scheduler.TaskScheduler"
      >
      <description-html>
         <![CDATA[The <a href="vim.scheduler.RecurrentTaskScheduler.html">RecurrentTaskScheduler</a> data object is the base type for
  the hierarchy that includes hourly, daily, weekly, and monthly task schedulers.]]>
      </description-html>
            <property name="interval" type-id-ref="INT"
      vmodl-name="interval"
      >
      <description-html>
         <![CDATA[How often to run the scheduled task. The value must be greater than
  or equal to 1 and less than 1000. The default value is 1.
  The interval acts as a multiplier for the unit of time associated
  with a particular scheduler (hours, days, weeks, or months).
  For example, setting the <a href="vim.scheduler.HourlyTaskScheduler.html">HourlyTaskScheduler</a> interval
  to 4 causes the task to run every 4 hours.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostDiskPartitionLayout"
      type-id="vim.host.DiskPartitionInfo.Layout"
      vmodl-name="vim.host.DiskPartitionInfo.Layout"
      enclosing-type-id-ref="vim.host.DiskPartitionInfo"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object type describes the disk partition layout
  specified as a list of ordered BlockRanges.  This
  view of the disk partitions shows the data on the disk as a contiguous
  set of BlockRanges.]]>
      </description-html>
            <property name="total" type-id-ref="vim.host.DiskDimensions.Lba"
      vmodl-name="total"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Total number of blocks on a disk.]]>
      </description-html>
      </property>

            <property name="partition" type-id-ref="vim.host.DiskPartitionInfo.BlockRange"
      vmodl-name="partition"
      is-array="true"
      >
      <description-html>
         <![CDATA[List of block ranges on the disk.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="KeyProviderId"
      type-id="vim.encryption.KeyProviderId"
      vmodl-name="vim.encryption.KeyProviderId"
      version-id-ref="vim.version.version11"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Data Object representing a crypto key provider's unique identifier.]]>
      </description-html>
            <property name="id" type-id-ref="java.lang.String"
      vmodl-name="id"
      >
      <description-html>
         <![CDATA[Globally unique ID for the crypto key provider.
 Servers with the same ID must provide the same keys.
 Cannot be empty.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostVFlashManagerVFlashResourceConfigInfo"
      type-id="vim.host.VFlashManager.VFlashResourceConfigInfo"
      vmodl-name="vim.host.VFlashManager.VFlashResourceConfigInfo"
      enclosing-type-id-ref="vim.host.VFlashManager"
      version-id-ref="vim.version.version9"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[vFlash resource configuration Information.]]>
      </description-html>
            <property name="vffs" type-id-ref="vim.host.VffsVolume"
      vmodl-name="vffs"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The contained VFFS volume]]>
      </description-html>
      </property>

            <property name="capacity" type-id-ref="LONG"
      vmodl-name="capacity"
      >
      <description-html>
         <![CDATA[Capacity of the vFlash resource. It is the capacity
 of the contained VFFS volume.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ClusterComputeResourceHCIConfigSpec"
      type-id="vim.ClusterComputeResource.HCIConfigSpec"
      vmodl-name="vim.ClusterComputeResource.HCIConfigSpec"
      enclosing-type-id-ref="vim.ClusterComputeResource"
      version-id-ref="vim.version.version13"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Specification to configure the cluster.]]>
      </description-html>
            <property name="dvsProf" type-id-ref="vim.ClusterComputeResource.DvsProfile"
      vmodl-name="dvsProf"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Information related to network configuration. For each DvsProfile
 object, specify either DvsProfile#dvsName or
 DvsProfile#dvSwitch. Across all DvsProfile objects, specify
 exactly one
 DvsProfile.DVPortgroupSpecToServiceMapping#dvPortgroup or
 DvsProfile.DVPortgroupSpecToServiceMapping#dvPortgroupSpec per
 DvsProfile.DVPortgroupSpecToServiceMapping#service.]]>
      </description-html>
      </property>

            <property name="hostConfigProfile" type-id-ref="vim.ClusterComputeResource.HostConfigurationProfile"
      vmodl-name="hostConfigProfile"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Configuration of host services and host settings.]]>
      </description-html>
      </property>

            <property name="vSanConfigSpec" type-id-ref="vim.SDDCBase"
      vmodl-name="vSanConfigSpec"
      is-optional="true"
      >
      <description-html>
         <![CDATA[vSan configuration specification. This is vim.vsan.ReconfigSpec object
 represented via the VIM object.]]>
      </description-html>
      </property>

            <property name="vcProf" type-id-ref="vim.ClusterComputeResource.VCProfile"
      vmodl-name="vcProf"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Describes cluster and EVC configuration.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="MonthlyTaskScheduler"
      type-id="vim.scheduler.MonthlyTaskScheduler"
      vmodl-name="vim.scheduler.MonthlyTaskScheduler"
      version-id-ref="vim.version.version1"
      base-type-id="vim.scheduler.DailyTaskScheduler"
      >
      <description-html>
         <![CDATA[The <a href="vim.scheduler.MonthlyTaskScheduler.html">MonthlyTaskScheduler</a> data object is the base type for
  the monthly schedulers (<a href="vim.scheduler.MonthlyByDayTaskScheduler.html">MonthlyByDayTaskScheduler</a> and
  <a href="vim.scheduler.MonthlyByWeekdayTaskScheduler.html">MonthlyByWeekdayTaskScheduler</a>).]]>
      </description-html>
   </data-object>
   <data-object name="HostFileAccess"
      type-id="vim.host.FileAccess"
      vmodl-name="vim.host.FileAccess"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object type contains a single access control
  entry for a file permissions list.]]>
      </description-html>
            <property name="who" type-id-ref="java.lang.String"
      vmodl-name="who"
      >
      <description-html>
         <![CDATA[User or group to which the access applies.]]>
      </description-html>
      </property>

            <property name="what" type-id-ref="java.lang.String"
      vmodl-name="what"
      >
      <description-html>
         <![CDATA[Rights given to the user or group.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.host.FileAccess.Modes</nested-type-id-ref>
   </data-object>
   <data-object name="VStorageObject"
      type-id="vim.vslm.VStorageObject"
      vmodl-name="vim.vslm.VStorageObject"
      version-id-ref="vim.version.version11"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object type describes a virtual storage object.]]>
      </description-html>
            <property name="config" type-id-ref="vim.vslm.VStorageObject.ConfigInfo"
      vmodl-name="config"
      >
      <description-html>
         <![CDATA[Virtual storage object configuration]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.vslm.VStorageObject.ConsumptionType</nested-type-id-ref>
      <nested-type-id-ref>vim.vslm.VStorageObject.ConfigInfo</nested-type-id-ref>
   </data-object>
   <data-object name="HostDiskDimensionsChs"
      type-id="vim.host.DiskDimensions.Chs"
      vmodl-name="vim.host.DiskDimensions.Chs"
      enclosing-type-id-ref="vim.host.DiskDimensions"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object type describes dimensions using the cylinder,
  head, sector (CHS) coordinate system.  This coordinate system
  is generally needed for partitioning for legacy reasons.  When defining
  partitions, many partitioning utilities do not function correctly when
  certain CHS constraints are not met.]]>
      </description-html>
            <property name="cylinder" type-id-ref="LONG"
      vmodl-name="cylinder"
      >
      <description-html>
         <![CDATA[The number of cylinders.]]>
      </description-html>
      </property>

            <property name="head" type-id-ref="INT"
      vmodl-name="head"
      >
      <description-html>
         <![CDATA[The number of heads per cylinders.]]>
      </description-html>
      </property>

            <property name="sector" type-id-ref="INT"
      vmodl-name="sector"
      >
      <description-html>
         <![CDATA[The number of sectors per head.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VmBeingHotMigratedEvent"
      type-id="vim.event.VmBeingHotMigratedEvent"
      vmodl-name="vim.event.VmBeingHotMigratedEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.VmEvent"
      >
      <description-html>
         <![CDATA[This event records that a virtual machine is being hot-migrated.]]>
      </description-html>
            <property name="destHost" type-id-ref="vim.event.HostEventArgument"
      vmodl-name="destHost"
      >
      <description-html>
         <![CDATA[The destination host to which the virtual machine is to be migrated.]]>
      </description-html>
      </property>

            <property name="destDatacenter" type-id-ref="vim.event.DatacenterEventArgument"
      vmodl-name="destDatacenter"
      version-id-ref="vim.version.version7"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The destination datacenter to which the virtual machine is being migrated]]>
      </description-html>
      </property>

            <property name="destDatastore" type-id-ref="vim.event.DatastoreEventArgument"
      vmodl-name="destDatastore"
      version-id-ref="vim.version.version7"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The destination primary datastore to which the virtual machine is being migrated]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DVPortgroupConfigSpec"
      type-id="vim.dvs.DistributedVirtualPortgroup.ConfigSpec"
      vmodl-name="vim.dvs.DistributedVirtualPortgroup.ConfigSpec"
      enclosing-type-id-ref="vim.dvs.DistributedVirtualPortgroup"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The <a href="vim.dvs.DistributedVirtualPortgroup.ConfigSpec.html">DVPortgroupConfigSpec</a>
 data object contains configuration data for a
 <a href="vim.dvs.DistributedVirtualPortgroup.html">DistributedVirtualPortgroup</a>. Use the
 <a href="vim.dvs.DistributedVirtualPortgroup.html#reconfigure">ReconfigureDVPortgroup_Task</a>
 method to apply the configuration to the portgroup.]]>
      </description-html>
            <property name="configVersion" type-id-ref="java.lang.String"
      vmodl-name="configVersion"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Version string of the configuration that this spec is trying to
  change. This property is required in reconfiguring a portgroup and
  should be set to the same value as the
  <a href="vim.dvs.DistributedVirtualPortgroup.ConfigInfo.html#configVersion">configVersion</a>.
  This property is ignored in creating a portgroup if set.]]>
      </description-html>
      </property>

            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Name of the portgroup.]]>
      </description-html>
      </property>

            <property name="numPorts" type-id-ref="INT"
      vmodl-name="numPorts"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Number of ports in the portgroup. Setting this number larger than the
  number of existing ports in the portgroup causes new ports to
  be added to the portgroup to meet the number. Setting this property
  smaller than the number of existing ports deletes the free ports
  from the portgroup. If the number cannot be met by deleting free ports,
  a fault is raised.  If new ports are added to the portgroup, they
  are also added to the switch. For portgroups of type ephemeral this
  property is ignored.]]>
      </description-html>
      </property>

            <property name="portNameFormat" type-id-ref="java.lang.String"
      vmodl-name="portNameFormat"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Format of the name of the ports when ports are created in the portgroup.
  For details see <a href="vim.dvs.DistributedVirtualPortgroup.ConfigInfo.html#portNameFormat">portNameFormat</a>.]]>
      </description-html>
      </property>

            <property name="defaultPortConfig" type-id-ref="vim.dvs.DistributedVirtualPort.Setting"
      vmodl-name="defaultPortConfig"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Default network setting for all the ports in the portgroup.]]>
      </description-html>
      </property>

            <property name="description" type-id-ref="java.lang.String"
      vmodl-name="description"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Description of the portgroup.]]>
      </description-html>
      </property>

            <property name="type" type-id-ref="java.lang.String"
      vmodl-name="type"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Type of portgroup.
 See
 <a href="vim.dvs.DistributedVirtualPortgroup.html">DistributedVirtualPortgroup</a>.<a href="vim.dvs.DistributedVirtualPortgroup.PortgroupType.html">DistributedVirtualPortgroupPortgroupType</a>
 for possible values.]]>
      </description-html>
      </property>

            <property name="backingType" type-id-ref="java.lang.String"
      vmodl-name="backingType"
      version-id-ref="vim.version.v7_0"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Backing type of portgroup.
 See
 <a href="vim.dvs.DistributedVirtualPortgroup.html">DistributedVirtualPortgroup</a>.<a href="vim.dvs.DistributedVirtualPortgroup.BackingType.html">DistributedVirtualPortgroupBackingType</a>
 for possible values.
 The default value is "standard"]]>
      </description-html>
      </property>

            <property name="scope" type-id-ref="vim.ManagedEntity"
      vmodl-name="scope"
      is-deprecated="true"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Eligible entities that can connect to the port. See
 <a href="vim.dvs.DistributedVirtualPortgroup.ConfigInfo.html">DVPortgroupConfigInfo</a>.<a href="vim.dvs.DistributedVirtualPortgroup.ConfigInfo.html#scope">scope</a>.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[as of vSphere API 5.5]]>
      </deprecated-html>
      </property>

            <property name="policy" type-id-ref="vim.dvs.DistributedVirtualPortgroup.PortgroupPolicy"
      vmodl-name="policy"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Portgroup policy.]]>
      </description-html>
      </property>

            <property name="vendorSpecificConfig" type-id-ref="vim.dvs.KeyedOpaqueBlob"
      vmodl-name="vendorSpecificConfig"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Opaque binary blob that stores vendor specific configuration.]]>
      </description-html>
      </property>

            <property name="autoExpand" type-id-ref="BOOLEAN"
      vmodl-name="autoExpand"
      version-id-ref="vim.version.version7"
      is-optional="true"
      >
      <description-html>
         <![CDATA[If set to true, this property ignores the limit on the number of ports in the
  portgroup. When a Virtual Machine/Host tries to connect to the portgroup and there
  are no free ports available in the portgroup, new ports will be automatically
  added to the portgroup. The flag is currently supported only for static portgroups.
  <p>
  Setting this property to true makes the portgroup a potential candidate for
  auto-shrink. Once the portgroup has auto-expanded then its disconnected ports are
  likely to be deleted automatically, as a part of auto-shrink step, if there are more
  than certain number of free ports. If the portgroup never auto-expanded, then it will
  never lose any free ports.]]>
      </description-html>
      </property>

            <property name="vmVnicNetworkResourcePoolKey" type-id-ref="java.lang.String"
      vmodl-name="vmVnicNetworkResourcePoolKey"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The key of virtual NIC network resource pool to be associated with a portgroup.
 Setting this property to "-1", would mean that this portgroup
 is not associated with any virtual NIC network resource pool.]]>
      </description-html>
      </property>

            <property name="transportZoneUuid" type-id-ref="java.lang.String"
      vmodl-name="transportZoneUuid"
      version-id-ref="vim.version.v7_0"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The UUID of transport zone to be associated with a NSX portgroup.]]>
      </description-html>
      </property>

            <property name="transportZoneName" type-id-ref="java.lang.String"
      vmodl-name="transportZoneName"
      version-id-ref="vim.version.v7_0"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The name of transport zone to be associated with a NSX portgroup.]]>
      </description-html>
      </property>

            <property name="logicalSwitchUuid" type-id-ref="java.lang.String"
      vmodl-name="logicalSwitchUuid"
      version-id-ref="vim.version.v7_0"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The logical switch UUID, which is used by NSX portgroup]]>
      </description-html>
      </property>

            <property name="segmentId" type-id-ref="java.lang.String"
      vmodl-name="segmentId"
      version-id-ref="vim.version.v7_0"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The segment ID of logical switch]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualDiskFlatVer2BackingInfo"
      type-id="vim.vm.device.VirtualDisk.FlatVer2BackingInfo"
      vmodl-name="vim.vm.device.VirtualDisk.FlatVer2BackingInfo"
      enclosing-type-id-ref="vim.vm.device.VirtualDisk"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.device.VirtualDevice.FileBackingInfo"
      >
      <description-html>
         <![CDATA[This data object type contains information about backing a virtual disk using a
  virtual disk file on the host, in the flat file format used by VMware Server,
  ESX Server 2.x, and ESX Server 3.x.
  Flat disks are allocated when created, unlike sparse disks, which
  grow as needed.]]>
      </description-html>
            <property name="diskMode" type-id-ref="java.lang.String"
      vmodl-name="diskMode"
      >
      <description-html>
         <![CDATA[The disk persistence mode. Valid modes are:
  <ul>
  <li>vim.vm.device.VirtualDiskOption.DiskMode#persistent
  <li>vim.vm.device.VirtualDiskOption.DiskMode#independent_persistent
  <li>vim.vm.device.VirtualDiskOption.DiskMode#independent_nonpersistent
  <li>vim.vm.device.VirtualDiskOption.DiskMode#nonpersistent
  <li>vim.vm.device.VirtualDiskOption.DiskMode#undoable
  <li>vim.vm.device.VirtualDiskOption.DiskMode#append
  </ul><br>See <a href="vim.vm.device.VirtualDiskOption.DiskMode.html">VirtualDiskMode</a><br>]]>
      </description-html>
      </property>

            <property name="split" type-id-ref="BOOLEAN"
      vmodl-name="split"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Flag to indicate the type of virtual disk file: split or monolithic.
  If true, the virtual disk is stored in multiple files, each 2GB.

  On ESX this property is ignored when creating new disks or
  editing existing disks. This property is always false for disks
  created on ESX.

  When an existing split disk such as those created by VMware
  Server is added to a virtual machine on ESX, the property will
  be set to true when retrieved from <a href="vim.vm.ConfigInfo.html">VirtualMachineConfigInfo</a>.]]>
      </description-html>
      </property>

            <property name="writeThrough" type-id-ref="BOOLEAN"
      vmodl-name="writeThrough"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Flag to indicate whether writes should go directly to the file system
  or should be buffered.]]>
      </description-html>
      </property>

            <property name="thinProvisioned" type-id-ref="BOOLEAN"
      vmodl-name="thinProvisioned"
      is-optional="true"
      >
      <description-html>
         <![CDATA[<p>
 Flag to indicate to the underlying filesystem, whether the
 virtual disk backing file should be allocated lazily (using
 thin provisioning). This flag is only used for file systems
 that support configuring the provisioning policy on a per file
 basis, such as VMFS3.
 <p>
 When specified as part of a <a href="vim.vm.ConfigSpec.html">VirtualMachineConfigSpec</a>, this
 property applies only when creating a new virtual disk; it is
 ignored when editing an existing virtual disk.
 <p>
 see <a href="vim.Datastore.Capability.html#perFileThinProvisioningSupported">perFileThinProvisioningSupported</a>]]>
      </description-html>
      </property>

            <property name="eagerlyScrub" type-id-ref="BOOLEAN"
      vmodl-name="eagerlyScrub"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Flag to indicate to the underlying filesystem whether the
 virtual disk backing file should be scrubbed completely at
 this time.
 <p>
 Virtual disks on some filesystems like VMFS3 are zeroed-out
 lazily so that disk creation time doesn't take too long.
 However, clustering applications and features like
 Fault Tolerance require that the virtual disk be
 completely scrubbed. This setting allows controlling the
 scrubbing policy on a per-disk basis.
 <p>
 If this flag is unset or set to false when creating a new disk,
 the disk scrubbing policy will be decided by the filesystem. If
 this flag is unset or set to false when editing an existing disk,
 it is ignored.

 When returned as part of a <a href="vim.vm.ConfigInfo.html">VirtualMachineConfigInfo</a>, this
 property may be unset if its value is unknown.]]>
      </description-html>
      </property>

            <property name="uuid" type-id-ref="java.lang.String"
      vmodl-name="uuid"
      version-id-ref="vim.version.version2"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Disk UUID for the virtual disk, if available.]]>
      </description-html>
      </property>

            <property name="contentId" type-id-ref="java.lang.String"
      vmodl-name="contentId"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Content ID of the virtual disk file, if available.
 <p>
 A content ID indicates the logical contents of the disk backing and its parents.
 <p>
 This property is only guaranteed to be up to date if this disk backing is not
 currently being written to by any virtual machine.
 <p>
 The only supported operation is comparing if two content IDs are equal or not.
 The guarantee provided by the content ID is that if two disk backings have the
 same content ID and are not currently being written to, then reads issued from
 the guest operating system to those disk backings will return the same data.]]>
      </description-html>
      </property>

            <property name="changeId" type-id-ref="java.lang.String"
      vmodl-name="changeId"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The change ID of the virtual disk for the corresponding
 snapshot or virtual machine. This can be used to track
 incremental changes to a virtual disk. See
 <a href="vim.VirtualMachine.html#queryChangedDiskAreas">QueryChangedDiskAreas</a>.]]>
      </description-html>
      </property>

            <property name="parent" type-id-ref="vim.vm.device.VirtualDisk.FlatVer2BackingInfo"
      vmodl-name="parent"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The parent of this virtual disk file, if this is a delta disk backing.
 This will be unset if this is not a delta disk backing.
 <p>
 A delta disk backing is a way to preserve a virtual disk backing
 at some point in time.  A delta disk backing is a file backing which in
 turn points to the original virtual disk backing (the parent).  After a delta
 disk backing is added, all writes go to the delta disk backing.  All reads
 first try the delta disk backing and then try the parent backing if needed.
 <p>
 A delta disk backing can be added to a disk either implicitly during
 snapshot operations, or explicitly during create or reconfigure of the virtual
 machine.
 <p>
 Note that the type of the backing is consistent throughout the chain; any new
 delta disk backing which is added is of the same type as the original disk .
 Also note that since the parent backing is not being written to,
 it is possible that the parent backing may be shared among multiple
 disks belonging to multiple virtual machines.
 <p>
 During virtual machine <a href="vim.Folder.html#createVm">CreateVM_Task</a> and
 <a href="vim.VirtualMachine.html#reconfigure">ReconfigVM_Task</a> this property is
 only checked if the <a href="vim.vm.device.VirtualDeviceSpec.html">VirtualDeviceConfigSpec</a> specifies
 an add operation with a
 create file operation.
 In this case, a new delta disk backing is created which points to the parent
 disk backing.  Only the <a href="vim.vm.device.VirtualDevice.FileBackingInfo.html#fileName">fileName</a>
 property is important; all other properties will be ignored.  The parent backing
 is assumed to exist and will not be recursively created.
 <p>
 This property may only be set if
 <a href="vim.host.Capability.html#deltaDiskBackingsSupported">deltaDiskBackingsSupported</a>
 is true.]]>
      </description-html>
      </property>

            <property name="deltaDiskFormat" type-id-ref="java.lang.String"
      vmodl-name="deltaDiskFormat"
      version-id-ref="vim.version.version7"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The format of the delta disk.
  <p>
  This field is valid only for a delta disk.
  <p>
  See <a href="vim.vm.device.VirtualDisk.DeltaDiskFormat.html">DeltaDiskFormat</a> for the
  supported formats. If not specified, the default value used is
  redoLogFormat.
  <p>
  If nativeFormat
  is specified and the datastore does not support this format or the parent is
  on a different datastore,
  <a href="vim.fault.DeltaDiskFormatNotSupported.html">DeltaDiskFormatNotSupported</a> is
  thrown.
  <p>
  vSphere server does not support relocation of virtual machines with
  nativeFormat.
  An exception is thrown for such requests.]]>
      </description-html>
      </property>

            <property name="digestEnabled" type-id-ref="BOOLEAN"
      vmodl-name="digestEnabled"
      version-id-ref="vim.version.version7"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates whether the disk backing has digest file enabled.]]>
      </description-html>
      </property>

            <property name="deltaGrainSize" type-id-ref="INT"
      vmodl-name="deltaGrainSize"
      version-id-ref="vim.version.version8"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Grain size in kB for a delta disk of format type seSparseFormat.  The default
 size is 4 kB.

 This setting is used to specify the grain size of
 <a href="vim.vm.device.VirtualDisk.SeSparseBackingInfo.html">Flex-SE</a> delta disks
 when the base disk is of type FlatVer2BackingInfo.
 The <a href="vim.vm.device.VirtualDisk.DeltaDiskFormat.html">DeltaDiskFormat</a> must also
 be set to seSparseFormat.]]>
      </description-html>
      </property>

            <property name="deltaDiskFormatVariant" type-id-ref="java.lang.String"
      vmodl-name="deltaDiskFormatVariant"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The delta disk format variant, if applicable.
  <p>
  This field is valid only for a delta disk and may specify more detailed
  information for the delta disk format specified in
  <a href="vim.vm.device.VirtualDisk.FlatVer2BackingInfo.html#deltaDiskFormat">deltaDiskFormat</a>.
  <p>
  If redoLogFormat is
  specified for the
  <a href="vim.vm.device.VirtualDisk.FlatVer2BackingInfo.html#deltaDiskFormat">deltaDiskFormat</a>,
  see <a href="vim.vm.device.VirtualDisk.DeltaDiskFormatVariant.html">DeltaDiskFormatVariant</a> for the
  supported formats. If this is not specified for
  redoLogFormat,
  the default value used is
  vmfsSparseVariant.
  <p>
  For other delta disk formats, this currently remains unspecified.]]>
      </description-html>
      </property>

            <property name="sharing" type-id-ref="java.lang.String"
      vmodl-name="sharing"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The sharing mode of the virtual disk.
 See <a href="vim.vm.device.VirtualDisk.Sharing.html">VirtualDiskSharing</a>. The default value is
 no sharing.]]>
      </description-html>
      </property>

            <property name="keyId" type-id-ref="vim.encryption.CryptoKeyId"
      vmodl-name="keyId"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Virtual Disk Backing encryption options.
 On modification operations the value is ignored, use the specification
 <a href="vim.vm.device.VirtualDeviceSpec.BackingSpec.html#crypto">crypto</a> in
 <a href="vim.vm.device.VirtualDeviceSpec.html#backing">backing</a>.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostDiskMappingInfo"
      type-id="vim.vm.device.HostDiskMappingInfo"
      vmodl-name="vim.vm.device.HostDiskMappingInfo"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The HostDiskMappingInfo data object type describes
  a virtual disk mapping to a host disk.]]>
      </description-html>
            <property name="physicalPartition" type-id-ref="vim.vm.device.HostDiskMappingInfo.PartitionInfo"
      vmodl-name="physicalPartition"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The partition used on the host, if not mapping
  to a full disk device.]]>
      </description-html>
      </property>

            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      >
      <description-html>
         <![CDATA[Host resource name.]]>
      </description-html>
      </property>

            <property name="exclusive" type-id-ref="BOOLEAN"
      vmodl-name="exclusive"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Flag to indicate whether or not the virtual machine has exclusive access
  to the host device.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.vm.device.HostDiskMappingInfo.PartitionInfo</nested-type-id-ref>
   </data-object>
   <data-object name="DistributedVirtualSwitchManagerHostArrayFilter"
      type-id="vim.dvs.DistributedVirtualSwitchManager.HostArrayFilter"
      vmodl-name="vim.dvs.DistributedVirtualSwitchManager.HostArrayFilter"
      enclosing-type-id-ref="vim.dvs.DistributedVirtualSwitchManager"
      version-id-ref="vim.version.version6"
      base-type-id="vim.dvs.DistributedVirtualSwitchManager.HostDvsFilterSpec"
      >
      <description-html>
         <![CDATA[Check host compatibility against all hosts specified in the array.]]>
      </description-html>
            <property name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      is-array="true"
      >
      <description-html>
         <![CDATA[List of hosts to consider.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ExtensionClientInfo"
      type-id="vim.Extension.ClientInfo"
      vmodl-name="vim.Extension.ClientInfo"
      enclosing-type-id-ref="vim.Extension"
      version-id-ref="vim.version.version2"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object type describes a client of the extension.]]>
      </description-html>
            <property name="version" type-id-ref="java.lang.String"
      vmodl-name="version"
      >
      <description-html>
         <![CDATA[Client version number as a dot-separated string. For example, "1.0.0"]]>
      </description-html>
      </property>

            <property name="description" type-id-ref="vim.Description"
      vmodl-name="description"
      is-localizable="true"
      >
      <description-html>
         <![CDATA[Description of client.]]>
      </description-html>
      </property>

            <property name="company" type-id-ref="java.lang.String"
      vmodl-name="company"
      >
      <description-html>
         <![CDATA[Company information.]]>
      </description-html>
      </property>

            <property name="type" type-id-ref="java.lang.String"
      vmodl-name="type"
      >
      <description-html>
         <![CDATA[Type of client (examples may include win32, .net, linux, etc.).]]>
      </description-html>
      </property>

            <property name="url" type-id-ref="java.lang.String"
      vmodl-name="url"
      >
      <description-html>
         <![CDATA[Plugin url.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostTargetTransport"
      type-id="vim.host.TargetTransport"
      vmodl-name="vim.host.TargetTransport"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Transport information about a SCSI target.]]>
      </description-html>
   </data-object>
   <data-object name="DistributedVirtualSwitchManagerHostDvsFilterSpec"
      type-id="vim.dvs.DistributedVirtualSwitchManager.HostDvsFilterSpec"
      vmodl-name="vim.dvs.DistributedVirtualSwitchManager.HostDvsFilterSpec"
      enclosing-type-id-ref="vim.dvs.DistributedVirtualSwitchManager"
      version-id-ref="vim.version.version6"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Base class for filters to check host compatibility.]]>
      </description-html>
            <property name="inclusive" type-id-ref="BOOLEAN"
      vmodl-name="inclusive"
      >
      <description-html>
         <![CDATA[If this flag is true, then the filter returns the hosts in the
 <a href="vim.dvs.DistributedVirtualSwitchManager.HostContainer.html">DistributedVirtualSwitchManagerHostContainer</a>
 that satisfy the criteria specified by this filter, otherwise
 it returns hosts that don't meet the criteria.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostUnresolvedVmfsResignatureSpec"
      type-id="vim.host.UnresolvedVmfsResignatureSpec"
      vmodl-name="vim.host.UnresolvedVmfsResignatureSpec"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Specification to resignature an Unresolved VMFS volume.]]>
      </description-html>
            <property name="extentDevicePath" type-id-ref="java.lang.String"
      vmodl-name="extentDevicePath"
      is-array="true"
      >
      <description-html>
         <![CDATA[List of device path each specifying VMFS extents.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="MigrationEvent"
      type-id="vim.event.MigrationEvent"
      vmodl-name="vim.event.MigrationEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.VmEvent"
      >
      <description-html>
         <![CDATA[These are events used to describe migration warning and errors]]>
      </description-html>
            <property name="fault" type-id-ref="vmodl.LocalizedMethodFault"
      vmodl-name="fault"
      >
      <description-html>
         <![CDATA[The fault that describes the migration issue. This is typically either a
  MigrationFault or a VmConfigFault.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ExtManagedEntityInfo"
      type-id="vim.ext.ManagedEntityInfo"
      vmodl-name="vim.ext.ManagedEntityInfo"
      version-id-ref="vim.version.version7"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object contains information about entities managed by this
 extension. The data can be used by clients to show extra information
 about managed virtual machines or vApps, such as a custom icon and a
 description of the entity.]]>
      </description-html>
            <property name="type" type-id-ref="java.lang.String"
      vmodl-name="type"
      >
      <description-html>
         <![CDATA[Managed entity type, as defined by the extension. This matches the
 <a href="vim.ext.ManagedByInfo.html#type">type</a> field in the configuration
 about a virtual machine or vApp.]]>
      </description-html>
      </property>

            <property name="smallIconUrl" type-id-ref="java.lang.String"
      vmodl-name="smallIconUrl"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The URL to a 16x16 pixel icon in PNG format for entities of this
 type managed by this extension. The design of the icon should
 allow for the possibility of it being badged with the power state
 of the entity by the vSphere client. If you do not provide this
 icon, the icon at
 <a href="vim.ext.ManagedEntityInfo.html#iconUrl">iconUrl</a>, if found, is
 scaled down to 16x16 pixels.]]>
      </description-html>
      </property>

            <property name="iconUrl" type-id-ref="java.lang.String"
      vmodl-name="iconUrl"
      version-id-ref="vim.version.version8"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The URL to an icon in PNG format that is no larger than 256x256
 pixels. This icon will be scaled to 16x16, 32x32, 64x64, and
 128x128 if needed. The icon is shown for all entities of this type
 managed by this extension.]]>
      </description-html>
      </property>

            <property name="description" type-id-ref="java.lang.String"
      vmodl-name="description"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Description of this managed entity type. This is typically displayed
 by clients, and should provide users with information about the
 function of entities of this type.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="StorageResourceManagerStorageProfileStatistics"
      type-id="vim.StorageResourceManager.StorageProfileStatistics"
      vmodl-name="vim.StorageResourceManager.StorageProfileStatistics"
      enclosing-type-id-ref="vim.StorageResourceManager"
      version-id-ref="vim.version.version10"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[A data object to report aggregate storage statistics by storage
 profile]]>
      </description-html>
            <property name="profileId" type-id-ref="java.lang.String"
      vmodl-name="profileId"
      >
      <description-html>
         <![CDATA[Profile identifier for the reported statistics]]>
      </description-html>
      </property>

            <property name="totalSpaceMB" type-id-ref="LONG"
      vmodl-name="totalSpaceMB"
      >
      <description-html>
         <![CDATA[The aggregate storage capacity available for a given storage
 capability profile.
 The capacity is reported in Megabytes.]]>
      </description-html>
      </property>

            <property name="usedSpaceMB" type-id-ref="LONG"
      vmodl-name="usedSpaceMB"
      >
      <description-html>
         <![CDATA[The aggregate used storage capacity by a given storage capability
 profile
 The used space is reported in Megabytes]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostInternetScsiHbaParamValue"
      type-id="vim.host.InternetScsiHba.ParamValue"
      vmodl-name="vim.host.InternetScsiHba.ParamValue"
      enclosing-type-id-ref="vim.host.InternetScsiHba"
      version-id-ref="vim.version.version5"
      base-type-id="vim.option.OptionValue"
      >
      <description-html>
         <![CDATA[Describes the the value of an iSCSI parameter, and whether
   the value is being inherited.]]>
      </description-html>
            <property name="isInherited" type-id-ref="BOOLEAN"
      vmodl-name="isInherited"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates if the value is inherited from some other source.

  If unset, the value is not inheritable.
  isInherited can be modified only if it has already been set.

  If value is to being modified, isInherited should be set to true.
  Setting isInherited to false will result in the value being
  once again inherited from the source.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostInternetScsiHbaDiscoveryCapabilities"
      type-id="vim.host.InternetScsiHba.DiscoveryCapabilities"
      vmodl-name="vim.host.InternetScsiHba.DiscoveryCapabilities"
      enclosing-type-id-ref="vim.host.InternetScsiHba"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The discovery capabilities for this host bus adapter.
  At least one discovery mode must always be active.
  Multiple modes may be active at the same time.]]>
      </description-html>
            <property name="iSnsDiscoverySettable" type-id-ref="BOOLEAN"
      vmodl-name="iSnsDiscoverySettable"
      >
      <description-html>
         <![CDATA[True if this host bus adapter supports iSNS]]>
      </description-html>
      </property>

            <property name="slpDiscoverySettable" type-id-ref="BOOLEAN"
      vmodl-name="slpDiscoverySettable"
      >
      <description-html>
         <![CDATA[True if this host bus adapter supports SLP]]>
      </description-html>
      </property>

            <property name="staticTargetDiscoverySettable" type-id-ref="BOOLEAN"
      vmodl-name="staticTargetDiscoverySettable"
      >
      <description-html>
         <![CDATA[True if this host bus adapter supports static discovery]]>
      </description-html>
      </property>

            <property name="sendTargetsDiscoverySettable" type-id-ref="BOOLEAN"
      vmodl-name="sendTargetsDiscoverySettable"
      >
      <description-html>
         <![CDATA[True if this host bus adapter supports changing the configuration
 state of send targets discovery.  Send targets is mandatory, however
 some adapters may not allow disabling this discovery method.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="FcoeConfig"
      type-id="vim.host.FcoeConfig"
      vmodl-name="vim.host.FcoeConfig"
      version-id-ref="vim.version.version7"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object type describes an FCoE configuration as it pertains
  to an underlying physical NIC.

  Terminology is borrowed from T11's working draft of the Fibre Channel
  Backbone 5 standard (FC-BB-5).  The draft can be found at
  http://www.t11.org.]]>
      </description-html>
            <property name="priorityClass" type-id-ref="INT"
      vmodl-name="priorityClass"
      >
      <description-html>
         <![CDATA[802.1p priority class used for FCoE traffic.]]>
      </description-html>
      </property>

            <property name="sourceMac" type-id-ref="java.lang.String"
      vmodl-name="sourceMac"
      >
      <description-html>
         <![CDATA[Source MAC address used for FCoE traffic.

 This MAC address is associated with the logical construct that is a
 physical NIC's associated underlying FCoE Controller, as defined in the
 FC-BB-5 standard.

 This MAC address should be of the form "xx:xx:xx:xx:xx:xx", where 'x' is
 a hexadecimal digit.  Valid MAC addresses are unicast addresses.]]>
      </description-html>
      </property>

            <property name="vlanRange" type-id-ref="vim.host.FcoeConfig.VlanRange"
      vmodl-name="vlanRange"
      is-array="true"
      >
      <description-html>
         <![CDATA[VLAN ranges associated with this FcoeConfig.]]>
      </description-html>
      </property>

            <property name="capabilities" type-id-ref="vim.host.FcoeConfig.FcoeCapabilities"
      vmodl-name="capabilities"
      >
      <description-html>
         <![CDATA[Settable capabilities for this FcoeConfig.]]>
      </description-html>
      </property>

            <property name="fcoeActive" type-id-ref="BOOLEAN"
      vmodl-name="fcoeActive"
      >
      <description-html>
         <![CDATA[Indicates whether this FcoeConfig is "active" (has been used in
 conjunction with a parent physical network adapter for FCoE
 discovery).]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.host.FcoeConfig.VlanRange</nested-type-id-ref>
      <nested-type-id-ref>vim.host.FcoeConfig.FcoeCapabilities</nested-type-id-ref>
      <nested-type-id-ref>vim.host.FcoeConfig.FcoeSpecification</nested-type-id-ref>
   </data-object>
   <data-object name="PhysicalNicProfile"
      type-id="vim.profile.host.PhysicalNicProfile"
      vmodl-name="vim.profile.host.PhysicalNicProfile"
      version-id-ref="vim.version.version5"
      base-type-id="vim.profile.ApplyProfile"
      >
      <description-html>
         <![CDATA[The <a href="vim.profile.host.PhysicalNicProfile.html">PhysicalNicProfile</a> data object represents physical NIC configuration.
 Use the <a href="vim.profile.ApplyProfile.html#policy">policy</a> list for access to configuration data
 for the physical NIC profile. Use the <a href="vim.profile.ApplyProfile.html#property">property</a> list
 for access to subprofile configuration data, if any.]]>
      </description-html>
            <property name="key" type-id-ref="java.lang.String"
      vmodl-name="key"
      >
      <description-html>
         <![CDATA[Linkable identifier.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostSriovNetworkDevicePoolInfo"
      type-id="vim.host.SriovNetworkDevicePoolInfo"
      vmodl-name="vim.host.SriovNetworkDevicePoolInfo"
      version-id-ref="vim.version.version11"
      base-type-id="vim.host.SriovDevicePoolInfo"
      >
      <description-html>
         <![CDATA[Information on networking specific SR-IOV device pools]]>
      </description-html>
            <property name="switchKey" type-id-ref="java.lang.String"
      vmodl-name="switchKey"
      is-optional="true"
      >
      <description-html>
         <![CDATA[vSwitch key]]>
      </description-html>
      </property>

            <property name="switchUuid" type-id-ref="java.lang.String"
      vmodl-name="switchUuid"
      is-optional="true"
      >
      <description-html>
         <![CDATA[DVS Uuid]]>
      </description-html>
      </property>

            <property name="pnic" type-id-ref="vim.host.PhysicalNic"
      vmodl-name="pnic"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of SR-IOV enabled physical nics that are backing the portgroup
         identified by above key]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ChangesInfoEventArgument"
      type-id="vim.event.ChangesInfoEventArgument"
      vmodl-name="vim.event.ChangesInfoEventArgument"
      version-id-ref="vim.version.version11"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The event argument contains changes.]]>
      </description-html>
            <property name="modified" type-id-ref="java.lang.String"
      vmodl-name="modified"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Modified properties.]]>
      </description-html>
      </property>

            <property name="added" type-id-ref="java.lang.String"
      vmodl-name="added"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Added properties.]]>
      </description-html>
      </property>

            <property name="deleted" type-id-ref="java.lang.String"
      vmodl-name="deleted"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Deleted properties.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="CryptoSpecShallowRecrypt"
      type-id="vim.encryption.CryptoSpecShallowRecrypt"
      vmodl-name="vim.encryption.CryptoSpecShallowRecrypt"
      version-id-ref="vim.version.version11"
      base-type-id="vim.encryption.CryptoSpec"
      >
      <description-html>
         <![CDATA[This data object type encapsulates virtual machine or disk cryptographic
  settings for shallow reencryption operation.]]>
      </description-html>
            <property name="newKeyId" type-id-ref="vim.encryption.CryptoKeyId"
      vmodl-name="newKeyId"
      >
      </property>

   </data-object>
   <data-object name="ClusterVmHostRuleInfo"
      type-id="vim.cluster.VmHostRuleInfo"
      vmodl-name="vim.cluster.VmHostRuleInfo"
      version-id-ref="vim.version.version6"
      base-type-id="vim.cluster.RuleInfo"
      >
      <description-html>
         <![CDATA[<p>
 A <a href="vim.cluster.VmHostRuleInfo.html">ClusterVmHostRuleInfo</a> object identifies virtual machines
 and host groups that determine virtual machine placement. The virtual
 machines and hosts referenced by a VM-Host rule must be in the same cluster.
 <p>
 A VM-Host rule identifies the following groups.
 <ul>
 <li>A virtual machine group (<a href="vim.cluster.VmGroup.html">ClusterVmGroup</a>).
 <li>Two host groups - an affine host group and an anti-affine host group
     (<a href="vim.cluster.HostGroup.html">ClusterHostGroup</a>).
     At least one of the groups must contain one or more hosts.
 </ul>
 <p>
 <a href="vim.cluster.VmHostRuleInfo.html">ClusterVmHostRuleInfo</a> stores only the names of the relevant
 virtual machine and host groups. The group contents are stored in
 the virtual machine and host group objects.
 <p>
 When you modify a VM-Host rule, only the fields that are specified are set.]]>
      </description-html>
            <property name="vmGroupName" type-id-ref="java.lang.String"
      vmodl-name="vmGroupName"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Virtual group name (<a href="vim.cluster.VmGroup.html">ClusterVmGroup</a>.<a href="vim.cluster.GroupInfo.html#name">name</a>).
 The virtual group may contain one or more virtual machines.]]>
      </description-html>
      </property>

            <property name="affineHostGroupName" type-id-ref="java.lang.String"
      vmodl-name="affineHostGroupName"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Name of the affine host group
 (<a href="vim.cluster.HostGroup.html">ClusterHostGroup</a>.<a href="vim.cluster.GroupInfo.html#name">name</a>).
 The affine host group identifies hosts on which
 <a href="vim.cluster.VmHostRuleInfo.html#vmGroupName">vmGroupName</a> virtual machines can be powered-on.
 The value of the <a href="vim.cluster.RuleInfo.html#mandatory">mandatory</a> property
 determines how the Server interprets the rule.]]>
      </description-html>
      </property>

            <property name="antiAffineHostGroupName" type-id-ref="java.lang.String"
      vmodl-name="antiAffineHostGroupName"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Name of the anti-affine host group
 (<a href="vim.cluster.HostGroup.html">ClusterHostGroup</a>.<a href="vim.cluster.GroupInfo.html#name">name</a>).
 The anti-affine host group identifies hosts on which
 <a href="vim.cluster.VmHostRuleInfo.html#vmGroupName">vmGroupName</a> virtual machines should not
 be powered-on.
 The value of the <a href="vim.cluster.RuleInfo.html#mandatory">mandatory</a> property
 determines how the Server interprets the rule.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DvsTrafficRule"
      type-id="vim.dvs.TrafficRule"
      vmodl-name="vim.dvs.TrafficRule"
      version-id-ref="vim.version.version9"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This class defines a single rule that will be applied to network traffic.]]>
      </description-html>
            <property name="key" type-id-ref="java.lang.String"
      vmodl-name="key"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The key of the rule]]>
      </description-html>
      </property>

            <property name="description" type-id-ref="java.lang.String"
      vmodl-name="description"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Description of the rule]]>
      </description-html>
      </property>

            <property name="sequence" type-id-ref="INT"
      vmodl-name="sequence"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Sequence of this rule. i.e, the order in which this rule appears
  in the ruleset.]]>
      </description-html>
      </property>

            <property name="qualifier" type-id-ref="vim.dvs.TrafficRule.Qualifier"
      vmodl-name="qualifier"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of Network rule qualifiers. 'AND' of this array of
  network rule qualifiers is applied as one network traffic rule.
  If the TrafficRule belongs to
  <a href="vim.dvs.DistributedVirtualPort.FilterPolicy.html">DvsFilterPolicy</a> :
  There can be a maximum of 1 <a href="vim.dvs.TrafficRule.IpQualifier.html">DvsIpNetworkRuleQualifier</a>,
  1 <a href="vim.dvs.TrafficRule.MacQualifier.html">DvsMacNetworkRuleQualifier</a> and
  1 <a href="vim.dvs.TrafficRule.SystemTrafficQualifier.html">DvsSystemTrafficNetworkRuleQualifier</a> for a total of
  3 <a href="vim.dvs.TrafficRule.html#qualifier">qualifier</a>]]>
      </description-html>
      </property>

            <property name="action" type-id-ref="vim.dvs.TrafficRule.Action"
      vmodl-name="action"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Action to be applied for this rule.]]>
      </description-html>
      </property>

            <property name="direction" type-id-ref="java.lang.String"
      vmodl-name="direction"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Whether this rule needs to be applied to incoming packets,
  to outgoing packets or both.
  See RuleDirectionType for valid values.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.dvs.TrafficRule.Qualifier</nested-type-id-ref>
      <nested-type-id-ref>vim.dvs.TrafficRule.Action</nested-type-id-ref>
      <nested-type-id-ref>vim.dvs.TrafficRule.RuleDirectionType</nested-type-id-ref>
      <nested-type-id-ref>vim.dvs.TrafficRule.IpQualifier</nested-type-id-ref>
      <nested-type-id-ref>vim.dvs.TrafficRule.IpPort</nested-type-id-ref>
      <nested-type-id-ref>vim.dvs.TrafficRule.SingleIpPort</nested-type-id-ref>
      <nested-type-id-ref>vim.dvs.TrafficRule.IpPortRange</nested-type-id-ref>
      <nested-type-id-ref>vim.dvs.TrafficRule.MacQualifier</nested-type-id-ref>
      <nested-type-id-ref>vim.dvs.TrafficRule.SystemTrafficQualifier</nested-type-id-ref>
      <nested-type-id-ref>vim.dvs.TrafficRule.DropAction</nested-type-id-ref>
      <nested-type-id-ref>vim.dvs.TrafficRule.AcceptAction</nested-type-id-ref>
      <nested-type-id-ref>vim.dvs.TrafficRule.UpdateTagAction</nested-type-id-ref>
      <nested-type-id-ref>vim.dvs.TrafficRule.RateLimitAction</nested-type-id-ref>
      <nested-type-id-ref>vim.dvs.TrafficRule.LogAction</nested-type-id-ref>
      <nested-type-id-ref>vim.dvs.TrafficRule.GreAction</nested-type-id-ref>
      <nested-type-id-ref>vim.dvs.TrafficRule.MacRewriteAction</nested-type-id-ref>
      <nested-type-id-ref>vim.dvs.TrafficRule.PuntAction</nested-type-id-ref>
      <nested-type-id-ref>vim.dvs.TrafficRule.CopyAction</nested-type-id-ref>
   </data-object>
   <data-object name="VmFailedToSuspendEvent"
      type-id="vim.event.VmFailedToSuspendEvent"
      vmodl-name="vim.event.VmFailedToSuspendEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.VmEvent"
      >
      <description-html>
         <![CDATA[This event records a failure to suspend a virtual machine.]]>
      </description-html>
            <property name="reason" type-id-ref="vmodl.LocalizedMethodFault"
      vmodl-name="reason"
      >
      <description-html>
         <![CDATA[The reason for the failure.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="AnswerFileOptionsCreateSpec"
      type-id="vim.profile.host.ProfileManager.AnswerFileOptionsCreateSpec"
      vmodl-name="vim.profile.host.ProfileManager.AnswerFileOptionsCreateSpec"
      enclosing-type-id-ref="vim.profile.host.ProfileManager"
      version-id-ref="vim.version.version7"
      base-type-id="vim.profile.host.ProfileManager.AnswerFileCreateSpec"
      >
      <description-html>
         <![CDATA[The <a href="vim.profile.host.ProfileManager.AnswerFileOptionsCreateSpec.html">AnswerFileOptionsCreateSpec</a>
 data object contains host-specific user input for an answer file.]]>
      </description-html>
            <property name="userInput" type-id-ref="vim.profile.DeferredPolicyOptionParameter"
      vmodl-name="userInput"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of parameters that contain host-specific data.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="CustomFieldEvent"
      type-id="vim.event.CustomFieldEvent"
      vmodl-name="vim.event.CustomFieldEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.Event"
      >
      <description-html>
         <![CDATA[These are custom field events.]]>
      </description-html>
   </data-object>
   <data-object name="VirtualMachineFileLayoutSnapshotLayout"
      type-id="vim.vm.FileLayout.SnapshotLayout"
      vmodl-name="vim.vm.FileLayout.SnapshotLayout"
      enclosing-type-id-ref="vim.vm.FileLayout"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Enumerates the set of files that make up a snapshot or redo-point]]>
      </description-html>
            <property name="key" type-id-ref="vim.vm.Snapshot"
      vmodl-name="key"
      >
      <description-html>
         <![CDATA[Identification of the snapshot]]>
      </description-html>
      </property>

            <property name="snapshotFile" type-id-ref="java.lang.String"
      vmodl-name="snapshotFile"
      is-array="true"
      >
      <description-html>
         <![CDATA[A list of files that make up the snapshot state. These are relative
  paths from the snapshotDirectory. A slash is always used as a
  separator.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ClusterNetworkConfigSpec"
      type-id="vim.vcha.FailoverClusterConfigurator.ClusterNetworkConfigSpec"
      vmodl-name="vim.vcha.FailoverClusterConfigurator.ClusterNetworkConfigSpec"
      enclosing-type-id-ref="vim.vcha.FailoverClusterConfigurator"
      version-id-ref="vim.version.version11"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The Cluster network config spec allows specification of
 the second network adapter is used for communication between
 the nodes of a VCHA cluster.]]>
      </description-html>
            <property name="networkPortGroup" type-id-ref="vim.Network"
      vmodl-name="networkPortGroup"
      >
      <description-html>
         <![CDATA[The portgroup that is associated with the VCHA Cluster IP
 address for VCHA cluster traffic for the second adapter to be
 added to the Active vCenter.]]>
      </description-html>
      </property>

            <property name="ipSettings" type-id-ref="vim.vm.customization.IPSettings"
      vmodl-name="ipSettings"
      >
      <description-html>
         <![CDATA[VCHA Cluster network configuration of the node.
 All cluster communication (state replication, heartbeat,
 cluster messages) happens over this network.
 Only a single Gateway IPv4 Address is supported.
 IPAddress and NetMask must be specified or an InvalidArgument
 exception will be reported.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="OpaqueNetworkSummary"
      type-id="vim.OpaqueNetwork.Summary"
      vmodl-name="vim.OpaqueNetwork.Summary"
      enclosing-type-id-ref="vim.OpaqueNetwork"
      version-id-ref="vim.version.version9"
      base-type-id="vim.Network.Summary"
      >
      <description-html>
         <![CDATA[The summary of a opaque network.
 An object of this class is returned by the <a href="vim.Network.html#summary">Summary</a> property.]]>
      </description-html>
            <property name="opaqueNetworkId" type-id-ref="java.lang.String"
      vmodl-name="opaqueNetworkId"
      >
      <description-html>
         <![CDATA[The opaque network ID]]>
      </description-html>
      </property>

            <property name="opaqueNetworkType" type-id-ref="java.lang.String"
      vmodl-name="opaqueNetworkType"
      >
      <description-html>
         <![CDATA[The opaque network type]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="LicenseServerUnavailableEvent"
      type-id="vim.event.LicenseServerUnavailableEvent"
      vmodl-name="vim.event.LicenseServerUnavailableEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.LicenseEvent"
      >
      <description-html>
         <![CDATA[This event is reported if the LicenseServer becomes unreachable.]]>
      </description-html>
            <property name="licenseServer" type-id-ref="java.lang.String"
      vmodl-name="licenseServer"
      >
      </property>

   </data-object>
   <data-object name="ClusterComputeResourceSummary"
      type-id="vim.ClusterComputeResource.Summary"
      vmodl-name="vim.ClusterComputeResource.Summary"
      enclosing-type-id-ref="vim.ClusterComputeResource"
      version-id-ref="vim.version.version1"
      base-type-id="vim.ComputeResource.Summary"
      >
      <description-html>
         <![CDATA[The <a href="vim.ClusterComputeResource.Summary.html">ClusterComputeResourceSummary</a> data object
  encapsulates runtime properties of a <a href="vim.ClusterComputeResource.html">ClusterComputeResource</a>.]]>
      </description-html>
            <property name="currentFailoverLevel" type-id-ref="INT"
      vmodl-name="currentFailoverLevel"
      is-deprecated="true"
      >
      <description-html>
         <![CDATA[Current failover level. This is the number of physical host failures that can
  be tolerated without impacting the ability to satisfy the minimums for all
  running virtual machines. This represents the current value, as opposed to
  desired value configured by the user.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 4.0, use
 <a href="vim.cluster.FailoverLevelAdmissionControlInfo.html#currentFailoverLevel">currentFailoverLevel</a>]]>
      </deprecated-html>
      </property>

            <property name="admissionControlInfo" type-id-ref="vim.cluster.DasAdmissionControlInfo"
      vmodl-name="admissionControlInfo"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Information about the current amount of resources available for a vSphere HA
 cluster. The actual type of admissionControlInfo will depend on what kind of
 <a href="vim.cluster.DasAdmissionControlPolicy.html">ClusterDasAdmissionControlPolicy</a> was used to configure the cluster.]]>
      </description-html>
      </property>

            <property name="numVmotions" type-id-ref="INT"
      vmodl-name="numVmotions"
      >
      <description-html>
         <![CDATA[Total number of migrations with VMotion that have been done internal to this
  cluster.]]>
      </description-html>
      </property>

            <property name="targetBalance" type-id-ref="INT"
      vmodl-name="targetBalance"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The target balance, in terms of standard deviation, for a DRS cluster.
  Units are thousandths. For example, 12 represents 0.012.]]>
      </description-html>
      </property>

            <property name="currentBalance" type-id-ref="INT"
      vmodl-name="currentBalance"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The current balance, in terms of standard deviation, for a DRS cluster.
  Units are thousandths. For example, 12 represents 0.012.]]>
      </description-html>
      </property>

            <property name="drsScore" type-id-ref="INT"
      vmodl-name="drsScore"
      version-id-ref="vim.version.v7_0"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The DRS score of this cluster, in percentage.]]>
      </description-html>
      </property>

            <property name="numVmsPerDrsScoreBucket" type-id-ref="INT"
      vmodl-name="numVmsPerDrsScoreBucket"
      version-id-ref="vim.version.v7_0"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The number of VMs in this cluster corresponding to each DRS score
  bucket. The buckets are defined as follows:
  <ul>
  <li>0% - 20%</li>
  <li>21% - 40%</li>
  <li>41% - 60%</li>
  <li>61% - 80%</li>
  <li>81% - 100%</li>
  </ul>]]>
      </description-html>
      </property>

            <property name="usageSummary" type-id-ref="vim.cluster.UsageSummary"
      vmodl-name="usageSummary"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The current usage summary for a DRS cluster.]]>
      </description-html>
      </property>

            <property name="currentEVCModeKey" type-id-ref="java.lang.String"
      vmodl-name="currentEVCModeKey"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The Enhanced VMotion Compatibility mode that is currently in effect
  for all hosts in this cluster; unset if no EVC mode is active.<br>See <a href="vim.Capability.html#supportedEVCMode">supportedEVCMode</a><br>]]>
      </description-html>
      </property>

            <property name="dasData" type-id-ref="vim.cluster.DasData"
      vmodl-name="dasData"
      version-id-ref="vim.version.version7"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Data pertaining to DAS.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualMachineFlagInfo"
      type-id="vim.vm.FlagInfo"
      vmodl-name="vim.vm.FlagInfo"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The FlagInfo data object type encapsulates the flag settings
  for a virtual machine.
  These properties are optional since the same structure
  is used to change the values during an edit or create operation.]]>
      </description-html>
            <property name="disableAcceleration" type-id-ref="BOOLEAN"
      vmodl-name="disableAcceleration"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Flag to turn off video acceleration for a virtual machine console window.]]>
      </description-html>
      </property>

            <property name="enableLogging" type-id-ref="BOOLEAN"
      vmodl-name="enableLogging"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Flag to enable logging for a virtual machine.]]>
      </description-html>
      </property>

            <property name="useToe" type-id-ref="BOOLEAN"
      vmodl-name="useToe"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Flag to specify whether or not to use TOE (TCP/IP Offloading).]]>
      </description-html>
      </property>

            <property name="runWithDebugInfo" type-id-ref="BOOLEAN"
      vmodl-name="runWithDebugInfo"
      is-deprecated="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Flag to specify whether or not to run in debug mode.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of VI API 2.5, use <a href="vim.vm.FlagInfo.html#monitorType">monitorType</a>.]]>
      </deprecated-html>
      </property>

            <property name="monitorType" type-id-ref="java.lang.String"
      vmodl-name="monitorType"
      version-id-ref="vim.version.version2"
      is-optional="true"
      >
      <description-html>
         <![CDATA[vmx process type. See <a href="vim.vm.FlagInfo.MonitorType.html">VirtualMachineFlagInfoMonitorType</a>
  for possible values for this property.]]>
      </description-html>
      </property>

            <property name="htSharing" type-id-ref="java.lang.String"
      vmodl-name="htSharing"
      is-deprecated="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Specifies how the VCPUs of a virtual machine are allowed to
 share physical cores on a hyperthreaded system. Two VCPUs are
 "sharing" a core if they are both running on logical CPUs of
 the core at the same time.<br>See <a href="vim.vm.FlagInfo.HtSharing.html">VirtualMachineHtSharing</a><br>]]>
      </description-html>
      <deprecated-html>
         <![CDATA[as of vSphere API 6.7.]]>
      </deprecated-html>
      </property>

            <property name="snapshotDisabled" type-id-ref="BOOLEAN"
      vmodl-name="snapshotDisabled"
      version-id-ref="vim.version.version2"
      is-deprecated="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Flag to specify whether snapshots are disabled for this virtual
  machine.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 4.0. The flag is ignored by the server.]]>
      </deprecated-html>
      </property>

            <property name="snapshotLocked" type-id-ref="BOOLEAN"
      vmodl-name="snapshotLocked"
      version-id-ref="vim.version.version2"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Flag to specify whether the snapshot tree is locked for this virtual machine.]]>
      </description-html>
      </property>

            <property name="diskUuidEnabled" type-id-ref="BOOLEAN"
      vmodl-name="diskUuidEnabled"
      version-id-ref="vim.version.version2"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates whether disk UUIDs are being used by this virtual machine.
  If this flag is set to false, disk UUIDs are not exposed to the guest.
  <p>
  Since products before ESX 3.1 do not support disk UUIDs, moving virtual
  machines from a platform that supports UUID to a platform that does
  not support UUIDs could result in unspecified guest behavior. For
  virtual machines where the ability to move to older platforms is
  important, this flag should be set to false. If the value is unset,
  the behavior 'false' will be used.]]>
      </description-html>
      </property>

            <property name="virtualMmuUsage" type-id-ref="java.lang.String"
      vmodl-name="virtualMmuUsage"
      version-id-ref="vim.version.version2"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates whether or not the system will try to use nested page
  table hardware support, if available.
  <p>
  By default, VMware software will determine whether or not
  to use nested page table hardware support based on various factors such
  as the guest operating system type and the physical hardware.
  Certain workloads can benefit from explicitly turning
  nested page table hardware support on or off; this can be set using
  nptUsage flag.
  If the value is unset, the value will default to automatic.
  <p>
  <a href="vim.vm.FlagInfo.VirtualMmuUsage.html">VirtualMachineFlagInfoVirtualMmuUsage</a> represents the set of
  possible values.]]>
      </description-html>
      </property>

            <property name="virtualExecUsage" type-id-ref="java.lang.String"
      vmodl-name="virtualExecUsage"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates whether or not the system will try to use Hardware
  Virtualization (HV) support for instruction virtualization,
  if available.
  <p>
  By default, VMware software will determine whether or not
  to use hardware virtualization support based on various factors such
  as the guest operating system type and the physical hardware.
  Certain workloads can benefit from explicitly turning
  hardware virtualization support on or off.
  If the value is unset, the value will default to hvAuto.
  <p>
  <a href="vim.vm.FlagInfo.VirtualExecUsage.html">VirtualMachineFlagInfoVirtualExecUsage</a> represents the set of
  possible values.
  <p>
  New processors can enable two hardware acceleration technologies
  for virtualization, one for instruction virtualization and the
  other for MMU virtualization. Intel names its hardware-assisted
  instruction virtualization as VT, and its hardware-assisted
  MMU virtualization as EPT. AMD calls them as AMD-V and RVI,
  respectively. For details on these technologies, please refer
  to documents from the processor vendors.
  <p>
  <a href="vim.vm.FlagInfo.html#virtualExecUsage">virtualExecUsage</a> controls instruction
  virtualization; while <a href="vim.vm.FlagInfo.html#virtualMmuUsage">virtualMmuUsage</a>
  controls MMU virtualization. "On" allows hardware acceleration,
  while "off" only allows software solution.
  <p>
  There are four meaningful combinations.
  <p>
  (hvAuto, automatic) - The host chooses which feature to use.
  (hvOn, on)          - Use both VT/AMD-V and EPT/RVI.
  (hvOn, off)         - Use VT/AMD-V but do not use EPT/RVI.
  (hvOff, off)        - Do not use any of these hardware acceleration technologies.]]>
      </description-html>
      </property>

            <property name="snapshotPowerOffBehavior" type-id-ref="java.lang.String"
      vmodl-name="snapshotPowerOffBehavior"
      version-id-ref="vim.version.version2"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Specifies the power-off behavior for a virtual machine that has
  a snapshot.  If the value is unset, the behavior 'powerOff' will
  be used.<br>See <a href="vim.vm.FlagInfo.PowerOffBehavior.html">VirtualMachinePowerOffBehavior</a><br>]]>
      </description-html>
      </property>

            <property name="recordReplayEnabled" type-id-ref="BOOLEAN"
      vmodl-name="recordReplayEnabled"
      version-id-ref="vim.version.version5"
      is-deprecated="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Flag to specify whether record and replay operations are
  allowed for this virtual machine.

  If this flag is set to 'true', instruction virtualization
  will use hardware virtualization (HV) support. I.e.,
  virtualExecUsage will be set to 'hvOn'.

  If this flag is set to 'false' for a virtual machine that
  already has a recording, replay will be disallowed, though
  the recording will be preserved.

  If the value is unset, the behavior 'false' will be used.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[as of vSphere API 6.0]]>
      </deprecated-html>
      </property>

            <property name="faultToleranceType" type-id-ref="java.lang.String"
      vmodl-name="faultToleranceType"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates the type of fault tolerance type the virtual machine is
  configured to use.
  <p>
  <a href="vim.VirtualMachine.FaultToleranceType.html">VirtualMachineFaultToleranceType</a> represents the set of
  possible values.]]>
      </description-html>
      </property>

            <property name="cbrcCacheEnabled" type-id-ref="BOOLEAN"
      vmodl-name="cbrcCacheEnabled"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Flag to specify whether common CBRC digest cache is enabled for this
  virtual machine.

  The common CBRC cache is shared between the hot added disks in the VM.

  If this flag is set to 'true' the VM will allocate a commont digest
  cache on power on.]]>
      </description-html>
      </property>

            <property name="vvtdEnabled" type-id-ref="BOOLEAN"
      vmodl-name="vvtdEnabled"
      version-id-ref="vim.version.version12"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Flag to specify if Intel Virtualization Technology for Directed I/O
  is enabled for this virtual machine.
  When creating a new VM:
  - If vim.vm.FlagInfo.vbsEnabled is set to <code>true</code>,
    and this flag is set to <code>false</code> error is returned.
  - If this flag is unset and vim.vm.FlagInfo.vbsEnabled is set to
    <code>true</code>, the value of this flag is set to <code>true</code>.]]>
      </description-html>
      </property>

            <property name="vbsEnabled" type-id-ref="BOOLEAN"
      vmodl-name="vbsEnabled"
      version-id-ref="vim.version.version12"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Flag to specify if Virtualization-based security
  is enabled for this virtual machine.
  If set to <code>true</code> when creating a new VM, the following VM
  properties might be modified automatically:
  - If vim.vm.FlagInfo.vvtdEnabled is not set to <code>false</code>,
    it is set to <code>true</code>. Else error is returned.
  - If vim.vm.ConfigSpec.nestedHVEnabled is not set to <code>false</code>,
    it is set to <code>true</code>. Else error is returned.
  - If vim.vm.BootOptions.efiSecureBootEnabled is not set to
    <code>false</code>, it is set to <code>true</code>. Else error is
    returned.
  - If vim.vm.firmware is not set to <code>bios</code>, it is set
    to <code>efi</code>. Else error is returned.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.vm.FlagInfo.HtSharing</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.FlagInfo.PowerOffBehavior</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.FlagInfo.MonitorType</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.FlagInfo.VirtualMmuUsage</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.FlagInfo.VirtualExecUsage</nested-type-id-ref>
   </data-object>
   <data-object name="ReplicationInfoDiskSettings"
      type-id="vim.vm.ReplicationConfigSpec.DiskSettings"
      vmodl-name="vim.vm.ReplicationConfigSpec.DiskSettings"
      enclosing-type-id-ref="vim.vm.ReplicationConfigSpec"
      version-id-ref="vim.version.version7"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The ReplicationConfigSpec.DiskSettings object type encapsulates
 the replication properties of a replicated disk of a replicated
 virtual machine.]]>
      </description-html>
            <property name="key" type-id-ref="INT"
      vmodl-name="key"
      >
      <description-html>
         <![CDATA[The disk's device key in the VM's configuration. Used to
 uniquely identify the disk to be configured for replication
 in the primary VM.]]>
      </description-html>
      </property>

            <property name="diskReplicationId" type-id-ref="java.lang.String"
      vmodl-name="diskReplicationId"
      >
      <description-html>
         <![CDATA[An opaque identifier that uniquely identifies a replicated
 disk between primary and secondary sites.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VAppOvfSectionSpec"
      type-id="vim.vApp.OvfSectionSpec"
      vmodl-name="vim.vApp.OvfSectionSpec"
      version-id-ref="vim.version.version5"
      base-type-id="vim.option.ArrayUpdateSpec"
      >
      <description-html>
         <![CDATA[An incremental update to the OvfSection list.]]>
      </description-html>
            <property name="info" type-id-ref="vim.vApp.OvfSectionInfo"
      vmodl-name="info"
      is-optional="true"
      >
      </property>

   </data-object>
   <data-object name="HostCertificateManagerCertificateInfo"
      type-id="vim.host.CertificateManager.CertificateInfo"
      vmodl-name="vim.host.CertificateManager.CertificateInfo"
      enclosing-type-id-ref="vim.host.CertificateManager"
      version-id-ref="vim.version.version10"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object is used to encapsulate the X509 certificate metadata.]]>
      </description-html>
            <property name="issuer" type-id-ref="java.lang.String"
      vmodl-name="issuer"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The issuer of the certificate.]]>
      </description-html>
      </property>

            <property name="notBefore" type-id-ref="vmodl.DateTime"
      vmodl-name="notBefore"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The validity of the certificate.]]>
      </description-html>
      </property>

            <property name="notAfter" type-id-ref="vmodl.DateTime"
      vmodl-name="notAfter"
      is-optional="true"
      >
      </property>

            <property name="subject" type-id-ref="java.lang.String"
      vmodl-name="subject"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The subject of the certificate.]]>
      </description-html>
      </property>

            <property name="status" type-id-ref="java.lang.String"
      vmodl-name="status"
      >
      <description-html>
         <![CDATA[The status of the certificate in vCenter Server. The possible values for status are as
 described in <a href="vim.host.CertificateManager.CertificateInfo.CertificateStatus.html">HostCertificateManagerCertificateInfoCertificateStatus</a>.
 If queried directly from an ESX host, the property is set to
 vim.host.CertificateManager.CertificateInfo.CertificateStatus#unknown.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.host.CertificateManager.CertificateInfo.CertificateStatus</nested-type-id-ref>
   </data-object>
   <data-object name="VsanUpgradeSystemRogueHostsInClusterIssue"
      type-id="vim.VsanUpgradeSystem.RogueHostsInClusterIssue"
      vmodl-name="vim.VsanUpgradeSystem.RogueHostsInClusterIssue"
      enclosing-type-id-ref="vim.VsanUpgradeSystem"
      version-id-ref="vim.version.version10"
      base-type-id="vim.VsanUpgradeSystem.PreflightCheckIssue"
      >
      <description-html>
         <![CDATA[Pre-flight check encountered at least one host that is part of the VSAN
 cluster but not the VC cluster.]]>
      </description-html>
            <property name="uuids" type-id-ref="java.lang.String"
      vmodl-name="uuids"
      is-array="true"
      >
      <description-html>
         <![CDATA[Host UUIDs of rogue hosts.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DatastoreFileEvent"
      type-id="vim.event.DatastoreFileEvent"
      vmodl-name="vim.event.DatastoreFileEvent"
      version-id-ref="vim.version.version5"
      base-type-id="vim.event.DatastoreEvent"
      >
      <description-html>
         <![CDATA[Base class for events related to datastore file and directory
 operations.
 <p>
 Property <I>datastore</I> inherited from DatastoreEvent refers
 to the destination datastore in case there is more than datastore
 involved in the operation.]]>
      </description-html>
            <property name="targetFile" type-id-ref="java.lang.String"
      vmodl-name="targetFile"
      >
      <description-html>
         <![CDATA[Datastore path of the target file or directory.]]>
      </description-html>
      </property>

            <property name="sourceOfOperation" type-id-ref="java.lang.String"
      vmodl-name="sourceOfOperation"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Identifier of the initiator of the file operation.]]>
      </description-html>
      </property>

            <property name="succeeded" type-id-ref="BOOLEAN"
      vmodl-name="succeeded"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicator whether the datastore file operation succeeded.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HealthUpdateInfo"
      type-id="vim.HealthUpdateInfo"
      vmodl-name="vim.HealthUpdateInfo"
      version-id-ref="vim.version.version11"
      base-type-id="vmodl.DynamicData"
      >
            <property name="id" type-id-ref="java.lang.String"
      vmodl-name="id"
      >
      <description-html>
         <![CDATA[The identifier provided by the HealthUpdateProvider. Identifiers are
  required to be unique per HealthUpdateProvider.]]>
      </description-html>
      </property>

            <property name="componentType" type-id-ref="java.lang.String"
      vmodl-name="componentType"
      >
      <description-html>
         <![CDATA[The component type. For supported values, see ComponentType]]>
      </description-html>
      </property>

            <property name="description" type-id-ref="java.lang.String"
      vmodl-name="description"
      >
      <description-html>
         <![CDATA[A description of the change in health.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.HealthUpdateInfo.ComponentType</nested-type-id-ref>
   </data-object>
   <data-object name="GuestProgramSpec"
      type-id="vim.vm.guest.ProcessManager.ProgramSpec"
      vmodl-name="vim.vm.guest.ProcessManager.ProgramSpec"
      enclosing-type-id-ref="vim.vm.guest.ProcessManager"
      version-id-ref="vim.version.version7"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This describes the arguments to <a href="vim.vm.guest.ProcessManager.html#startProgram">StartProgramInGuest</a>.]]>
      </description-html>
            <property name="programPath" type-id-ref="java.lang.String"
      vmodl-name="programPath"
      >
      <description-html>
         <![CDATA[The absolute path to the program to start.
 <p>
 For Linux guest operating systems, /bin/bash is used to start the
 program.
 <p>
 For Solaris guest operating systems, /bin/bash is used to start
 the program if it exists.
 Otherwise /bin/sh is used.  If /bin/sh is used, then the process ID
 returned by <a href="vim.vm.guest.ProcessManager.html#startProgram">StartProgramInGuest</a> will be that of the shell used
 to start the program, rather than the program itself, due to the
 differences in how /bin/sh and /bin/bash work.  This PID will
 still be usable for watching the process with
 <a href="vim.vm.guest.ProcessManager.html#listProcesses">ListProcessesInGuest</a> to
 find its exit code and elapsed time.]]>
      </description-html>
      </property>

            <property name="arguments" type-id-ref="java.lang.String"
      vmodl-name="arguments"
      >
      <description-html>
         <![CDATA[The arguments to the program.  In Linux and Solaris guest operating
 systems, the program will be executed by a guest shell.
 This allows stdio redirection, but may also
 require that characters which must be escaped to the shell also
 be escaped on the command line provided.

 <p>

 For Windows guest operating systems, prefixing the command with
 "cmd /c" can provide stdio redirection.]]>
      </description-html>
      </property>

            <property name="workingDirectory" type-id-ref="java.lang.String"
      vmodl-name="workingDirectory"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The absolute path of the working directory for the program to be
 run.  VMware recommends explicitly setting the working directory
 for the program to be run.  If this value is unset or is an empty
 string, the behavior depends on the guest operating system.
 For Linux guest operating systems, if this value is unset or is
 an empty string, the working directory will be the home directory
 of the user associated with the guest authentication.
 For other guest operating systems, if this value is unset, the
 behavior is unspecified.]]>
      </description-html>
      </property>

            <property name="envVariables" type-id-ref="java.lang.String"
      vmodl-name="envVariables"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[An array of environment variables, specified
 in the guest OS notation (eg PATH=c:\bin;c:\windows\system32
 or LD_LIBRARY_PATH=/usr/lib:/lib), to be set for the program
 being run.  Note that these are not additions to the default
 environment variables; they define the complete set available to
 the program. If none are specified the values are guest dependent.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualNVMEController"
      type-id="vim.vm.device.VirtualNVMEController"
      vmodl-name="vim.vm.device.VirtualNVMEController"
      version-id-ref="vim.version.version11"
      base-type-id="vim.vm.device.VirtualController"
      >
      <description-html>
         <![CDATA[The Virtual NVME controller.]]>
      </description-html>
   </data-object>
   <data-object name="HostWwnConflictEvent"
      type-id="vim.event.HostWwnConflictEvent"
      vmodl-name="vim.event.HostWwnConflictEvent"
      version-id-ref="vim.version.version2"
      base-type-id="vim.event.HostEvent"
      >
      <description-html>
         <![CDATA[This event records a conflict of host WWNs (World Wide Name).]]>
      </description-html>
            <property name="conflictedVms" type-id-ref="vim.event.VmEventArgument"
      vmodl-name="conflictedVms"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The virtual machine whose WWN conflicts with the
  current host's WWN.]]>
      </description-html>
      </property>

            <property name="conflictedHosts" type-id-ref="vim.event.HostEventArgument"
      vmodl-name="conflictedHosts"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The host whose physical WWN conflicts with the
  current host's WWN.]]>
      </description-html>
      </property>

            <property name="wwn" type-id-ref="LONG"
      vmodl-name="wwn"
      >
      <description-html>
         <![CDATA[The WWN in conflict.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostActiveDirectory"
      type-id="vim.host.ActiveDirectorySpec"
      vmodl-name="vim.host.ActiveDirectorySpec"
      version-id-ref="vim.version.version6"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The <a href="vim.host.ActiveDirectorySpec.html">HostActiveDirectory</a> data object contains
  Active Directory configuration information for an ESX host.
  <p>
  The vSphere API supports Microsoft Active Directory management
  of authentication for ESX hosts. To integrate an ESX host
  into an Active Directory environment, you use an Active Directory
  account that has the authority to add a computer to a domain.
  The ESX Server locates the Active Directory domain controller.
  When you use the host profile to configure authentication
  for an ESX host, you specify the configuration operation (add or remove).
  To add the host to a domain, specify
  the domain, and the authorized Active Directory account user name and password.
  You do not need to specify these parameters to remove the host from a domain
  because the host has the information it needs to perform the operation.
  When you call <a href="vim.profile.host.ProfileManager.html#applyHostConfiguration">ApplyHostConfig_Task</a>
  to apply the configuration, the ESX Server will call the appropriate
  method (<a href="vim.host.ActiveDirectoryAuthentication.html#joinDomain">JoinDomain_Task</a>
  or <a href="vim.host.ActiveDirectoryAuthentication.html#leaveCurrentDomain">LeaveCurrentDomain_Task</a>)
  on your behalf.
  <p>
  Before you call the method to apply the host profile, check to see that the
  <a href="vim.host.AuthenticationManager.html">HostAuthenticationManager</a>.<a href="vim.host.AuthenticationManager.html#supportedStore">SupportedStore</a>
  array contains a <a href="vim.host.ActiveDirectoryAuthentication.html">HostActiveDirectoryAuthentication</a> object.
  The presence of the Active Directory authentication object indicates
  that a host is capable of joining a domain.
  However, if you try to add a host to a domain when the
  <a href="vim.host.AuthenticationStoreInfo.html">HostAuthenticationStoreInfo</a>.<a href="vim.host.AuthenticationStoreInfo.html#enabled">enabled</a>
  property is <code>True</code>, the join method will throw a fault.
  <p>
  As an alternative to using the host profile to configure Active Directory
  authentication for an ESX host, your vSphere client application can call
  the <a href="vim.host.ActiveDirectoryAuthentication.html">HostActiveDirectoryAuthentication</a> join and leave methods directly
  to add the host to or remove the host from a domain.
  <p>
  To take advantage of ESX host membership in an Active Directory domain,
  grant permissions on the ESX host to users and groups in Active Directory
  who should have direct access to management of the ESX host.
  Use the <a href="vim.UserDirectory.html">UserDirectory</a>.<a href="vim.UserDirectory.html#retrieveUserGroups">RetrieveUserGroups</a>
  method to obtain information about Active Directory users and groups.
  After retrieving the Active Directory data, you can use the
  <a href="vim.AuthorizationManager.html">AuthorizationManager</a>.<a href="vim.AuthorizationManager.html#setEntityPermissions">SetEntityPermissions</a>
  method to set the <a href="vim.AuthorizationManager.Permission.html#principal">principal</a> property
  to the appropriate user or group.
  <p>
  By default, the ESX host assigns the Administrator role to the "ESX Admins" group.
  If the group does not exist when the host joins the domain, the host will
  not assign the role. In this case, you must create the "ESX Admins"
  group in the Active Directory. The host will periodically check the domain controller
  for the group and will assign the role when the group exists.]]>
      </description-html>
            <property name="changeOperation" type-id-ref="java.lang.String"
      vmodl-name="changeOperation"
      >
      <description-html>
         <![CDATA[Configuration change operation to apply to the host. You can specify
  the following values:
  <ul>
  <li> vim.host.ConfigChange.Operation#add:
  Add the host to the domain. The ESX Server will use the
  <a href="vim.host.ActiveDirectorySpec.Specification.html">HostActiveDirectorySpec</a> information
  (domain, account user name and password) to call
  <a href="vim.host.ActiveDirectoryAuthentication.html#joinDomain">JoinDomain_Task</a> and optionally
  configure smart card authentication by calling
  <a href="vim.host.ActiveDirectoryAuthentication.html#disableSmartCardAuthentication">DisableSmartCardAuthentication</a>
  and replacing the trust anchors with those provided.
  </li>
  <li> vim.host.ConfigChange.Operation#remove:
  Remove the host from its current domain.
  The ESX Server will call
  <a href="vim.host.ActiveDirectoryAuthentication.html#leaveCurrentDomain">LeaveCurrentDomain_Task</a>, specifying
  <code>True</code> for the <code>force</code> parameter to delete
  existing permissions.
  <a href="vim.host.ActiveDirectoryAuthentication.html#disableSmartCardAuthentication">DisableSmartCardAuthentication</a>
  is also called if smart card authentication is enabled and trust
  anchors are removed.
  </li>
  </ul><br>See <a href="vim.host.ConfigChange.Operation.html">HostConfigChangeOperation</a><br>]]>
      </description-html>
      </property>

            <property name="spec" type-id-ref="vim.host.ActiveDirectorySpec.Specification"
      vmodl-name="spec"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Active Directory domain access information (domain and account
 user name and password).]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.host.ActiveDirectorySpec.Specification</nested-type-id-ref>
   </data-object>
   <data-object name="HostCnxFailedBadUsernameEvent"
      type-id="vim.event.HostCnxFailedBadUsernameEvent"
      vmodl-name="vim.event.HostCnxFailedBadUsernameEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.HostEvent"
      >
      <description-html>
         <![CDATA[This event records a failure to connect to a host
  due to an invalid user name and password combination.]]>
      </description-html>
   </data-object>
   <data-object name="EventAlarmExpressionComparison"
      type-id="vim.alarm.EventAlarmExpression.Comparison"
      vmodl-name="vim.alarm.EventAlarmExpression.Comparison"
      enclosing-type-id-ref="vim.alarm.EventAlarmExpression"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Encapsulates Comparison of an event's attribute to a value.]]>
      </description-html>
            <property name="attributeName" type-id-ref="java.lang.String"
      vmodl-name="attributeName"
      >
      <description-html>
         <![CDATA[The attribute of the event to compare]]>
      </description-html>
      </property>

            <property name="operator" type-id-ref="java.lang.String"
      vmodl-name="operator"
      >
      <description-html>
         <![CDATA[An operator from the list above]]>
      </description-html>
      </property>

            <property name="value" type-id-ref="java.lang.String"
      vmodl-name="value"
      >
      <description-html>
         <![CDATA[The value to compare against]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualMachineFileLayout"
      type-id="vim.vm.FileLayout"
      vmodl-name="vim.vm.FileLayout"
      version-id-ref="vim.version.version1"
      is-deprecated="true"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Describes the set of files that makes up a virtual machine on disk. The
  file layout is broken into 4 major sections:
  <ul>
  <li>Configuration: Files stored in the configuration directory
  <li>Log: Files stored in the log directory
  <li>Disk: Files stored relative to a disk configuration file
  <li>Snapshot: Stored in the snapshot directory
  </ul>
  Often the same directory is used for configuration, log, disk and
  snapshots.
  <p>]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 4.0, use <a href="vim.vm.FileLayoutEx.html">VirtualMachineFileLayoutEx</a> instead.]]>
      </deprecated-html>
            <property name="configFile" type-id-ref="java.lang.String"
      vmodl-name="configFile"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[A list of files that makes up the configuration of the virtual machine
  (excluding the .vmx file, since that file is represented in the
  FileInfo). These are relative paths from the configuration directory. A
  slash is always used as a separator. This list will typically include the
  NVRAM file, but could also include other meta-data files.]]>
      </description-html>
      </property>

            <property name="logFile" type-id-ref="java.lang.String"
      vmodl-name="logFile"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[A list of files stored in the virtual machine's log directory. These are
  relative paths from the logDirectory. A slash is always used as a
  separator.]]>
      </description-html>
      </property>

            <property name="disk" type-id-ref="vim.vm.FileLayout.DiskLayout"
      vmodl-name="disk"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Files making up each virtual disk.]]>
      </description-html>
      </property>

            <property name="snapshot" type-id-ref="vim.vm.FileLayout.SnapshotLayout"
      vmodl-name="snapshot"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Files of each snapshot.]]>
      </description-html>
      </property>

            <property name="swapFile" type-id-ref="java.lang.String"
      vmodl-name="swapFile"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The swapfile specific to this virtual machine, if any. This is a
  complete datastore path, not a relative path.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.vm.FileLayout.DiskLayout</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.FileLayout.SnapshotLayout</nested-type-id-ref>
   </data-object>
   <data-object name="ResourceConfigSpec"
      type-id="vim.ResourceConfigSpec"
      vmodl-name="vim.ResourceConfigSpec"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object type is a specification for a set of resources
  allocated to a virtual machine or a resource pool.]]>
      </description-html>
            <property name="entity" type-id-ref="vim.ManagedEntity"
      vmodl-name="entity"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Reference to the entity with this resource specification:
  either a VirtualMachine or a ResourcePool.]]>
      </description-html>
      </property>

            <property name="changeVersion" type-id-ref="java.lang.String"
      vmodl-name="changeVersion"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The changeVersion is a unique identifier for a given version
   of the configuration. Each change to the configuration will
   update this value. This is typically implemented as an ever
   increasing count or a time-stamp. However, a client should
   always treat this as an opaque string.
   <p>
   If specified when updating the resource config., the
   changes will only be applied if the current changeVersion matches the
   specified changeVersion. This field can be used to guard against updates that
   has happened between the configInfo was read and until it is applied.]]>
      </description-html>
      </property>

            <property name="lastModified" type-id-ref="vmodl.DateTime"
      vmodl-name="lastModified"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Timestamp when the resources were last modified. This is ignored when
  the object is used to update a configuration.]]>
      </description-html>
      </property>

            <property name="cpuAllocation" type-id-ref="vim.ResourceAllocationInfo"
      vmodl-name="cpuAllocation"
      >
      <description-html>
         <![CDATA[Resource allocation for CPU.]]>
      </description-html>
      </property>

            <property name="memoryAllocation" type-id-ref="vim.ResourceAllocationInfo"
      vmodl-name="memoryAllocation"
      >
      <description-html>
         <![CDATA[Resource allocation for memory.]]>
      </description-html>
      </property>

            <property name="scaleDescendantsShares" type-id-ref="java.lang.String"
      vmodl-name="scaleDescendantsShares"
      version-id-ref="vim.version.v7_0"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Specifies the scaling behavior of the shares of all descendant resource
  pools under a given resource pool. See <a href="vim.ResourceConfigSpec.ScaleSharesBehavior.html">ResourceConfigSpecScaleSharesBehavior</a> for possible values. If any
  scaling behavior other than ScaleSharesBehavior#disabled is
  specified, the system will scale the CPU and memory shares allocated to
  each descendant resource pool with the total shares of all powered on
  virtual machines under each respective pool. The system will also use the
  <a href="vim.SharesInfo.html">SharesInfo</a> set on each descendant resource pool as a
  multiplier for the scale. If a resource pool's shares are already
  scalable through the <a href="vim.ResourceConfigSpec.html#scaleDescendantsShares">scaleDescendantsShares</a> setting on an ancestor
  resource pool, the system will not allow <a href="vim.ResourceConfigSpec.html#scaleDescendantsShares">scaleDescendantsShares</a> to be set on the resource
  pool. The <a href="vim.ResourcePool.RuntimeInfo.html#sharesScalable">sharesScalable</a> property
  indicates whether or not a resource pool's shares are scalable. This
  property does not apply to virtual machines.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.ResourceConfigSpec.ScaleSharesBehavior</nested-type-id-ref>
   </data-object>
   <data-object name="VsanHostRuntimeInfo"
      type-id="vim.vsan.host.VsanRuntimeInfo"
      vmodl-name="vim.vsan.host.VsanRuntimeInfo"
      version-id-ref="vim.version.version9"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object contains VSAN cluster runtime information from
  the perspective of the host in question.
  This data object is used to represent read-only state whose values
  may change during operation.]]>
      </description-html>
            <property name="membershipList" type-id-ref="vim.vsan.host.MembershipInfo"
      vmodl-name="membershipList"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[This property reports host membership information.]]>
      </description-html>
      </property>

            <property name="diskIssues" type-id-ref="vim.vsan.host.VsanRuntimeInfo.DiskIssue"
      vmodl-name="diskIssues"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of disk issues detected on this host.
  <p>
  To retrieve more information on the issues, use
  <a href="vim.host.VsanSystem.html#queryDisksForVsan">QueryDisksForVsan</a>.]]>
      </description-html>
      </property>

            <property name="accessGenNo" type-id-ref="INT"
      vmodl-name="accessGenNo"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Generation number tracking object accessibility.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.vsan.host.VsanRuntimeInfo.DiskIssueType</nested-type-id-ref>
      <nested-type-id-ref>vim.vsan.host.VsanRuntimeInfo.DiskIssue</nested-type-id-ref>
   </data-object>
   <data-object name="TypeDescription"
      type-id="vim.TypeDescription"
      vmodl-name="vim.TypeDescription"
      version-id-ref="vim.version.version1"
      base-type-id="vim.Description"
      >
      <description-html>
         <![CDATA[Static strings used for describing an object type.]]>
      </description-html>
            <property name="key" type-id-ref="vmodl.TypeName"
      vmodl-name="key"
      >
      <description-html>
         <![CDATA[Type being described]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DvsServiceConsoleVNicProfile"
      type-id="vim.profile.host.DvsServiceConsoleVNicProfile"
      vmodl-name="vim.profile.host.DvsServiceConsoleVNicProfile"
      version-id-ref="vim.version.version5"
      base-type-id="vim.profile.host.DvsVNicProfile"
      >
      <description-html>
         <![CDATA[The <a href="vim.profile.host.DvsServiceConsoleVNicProfile.html">DvsServiceConsoleVNicProfile</a> data object describes the IP configuration
 for a service console Virtual NIC connected to a distributed virtual switch.
 The <a href="vim.profile.host.DvsVNicProfile.html#ipConfig">ipConfig</a> property contains the Virtual NIC IP address.
 If a profile plug-in defines policies or subprofiles, use the
 <a href="vim.profile.ApplyProfile.html#policy">policy</a> or <a href="vim.profile.ApplyProfile.html#property">property</a>
 list to access the additional configuration data.]]>
      </description-html>
   </data-object>
   <data-object name="OvfOptionInfo"
      type-id="vim.OvfManager.OvfOptionInfo"
      vmodl-name="vim.OvfManager.OvfOptionInfo"
      enclosing-type-id-ref="vim.OvfManager"
      version-id-ref="vim.version.version8"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Represents the OVF options the server support for import and export of
 OVFs]]>
      </description-html>
            <property name="option" type-id-ref="java.lang.String"
      vmodl-name="option"
      >
      <description-html>
         <![CDATA[The name of the OVF option that is supported by the server]]>
      </description-html>
      </property>

            <property name="description" type-id-ref="vmodl.LocalizableMessage"
      vmodl-name="description"
      >
      <description-html>
         <![CDATA[A description of the OVF option]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="AlarmEvent"
      type-id="vim.event.AlarmEvent"
      vmodl-name="vim.event.AlarmEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.Event"
      >
      <description-html>
         <![CDATA[This event is an alarm events.]]>
      </description-html>
            <property name="alarm" type-id-ref="vim.event.AlarmEventArgument"
      vmodl-name="alarm"
      >
      <description-html>
         <![CDATA[The associated alarm object.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DatacenterEvent"
      type-id="vim.event.DatacenterEvent"
      vmodl-name="vim.event.DatacenterEvent"
      version-id-ref="vim.version.version2"
      base-type-id="vim.event.Event"
      >
      <description-html>
         <![CDATA[These are datacenter events.]]>
      </description-html>
   </data-object>
   <data-object name="VirtualEnsoniq1371Option"
      type-id="vim.vm.device.VirtualEnsoniq1371Option"
      vmodl-name="vim.vm.device.VirtualEnsoniq1371Option"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.device.VirtualSoundCardOption"
      >
      <description-html>
         <![CDATA[The VirtualEnsoniq1371Option data object type contains the options for the
  virtual Ensoniq 1371 sound card.]]>
      </description-html>
   </data-object>
   <data-object name="VmDisconnectedEvent"
      type-id="vim.event.VmDisconnectedEvent"
      vmodl-name="vim.event.VmDisconnectedEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.VmEvent"
      >
      <description-html>
         <![CDATA[This event records that a virtual machine disconnected.]]>
      </description-html>
   </data-object>
   <data-object name="VirtualMachineConfigInfoDatastoreUrlPair"
      type-id="vim.vm.ConfigInfo.DatastoreUrlPair"
      vmodl-name="vim.vm.ConfigInfo.DatastoreUrlPair"
      enclosing-type-id-ref="vim.vm.ConfigInfo"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Contains the name of a datastore, and its local file path on the host
 currently affiliated with this virtual machine.]]>
      </description-html>
            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      >
      </property>

            <property name="url" type-id-ref="java.lang.String"
      vmodl-name="url"
      >
      </property>

   </data-object>
   <data-object name="HostDhcpService"
      type-id="vim.host.DhcpService"
      vmodl-name="vim.host.DhcpService"
      version-id-ref="vim.version.version2"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[A dynamic host control protocol (DHCP) service instance serves IP
  addresses to a single virtual network subnet.  The instances may
  be handled collectively by a single server.  This decision can
  be made during implementation.]]>
      </description-html>
            <property name="key" type-id-ref="java.lang.String"
      vmodl-name="key"
      >
      <description-html>
         <![CDATA[The instance ID of the DHCP service.]]>
      </description-html>
      </property>

            <property name="spec" type-id-ref="vim.host.DhcpService.Specification"
      vmodl-name="spec"
      >
      <description-html>
         <![CDATA[Configurable properties for the DHCP service.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.host.DhcpService.Specification</nested-type-id-ref>
      <nested-type-id-ref>vim.host.DhcpService.Config</nested-type-id-ref>
   </data-object>
   <data-object name="IscsiDependencyEntity"
      type-id="vim.host.IscsiManager.IscsiDependencyEntity"
      vmodl-name="vim.host.IscsiManager.IscsiDependencyEntity"
      enclosing-type-id-ref="vim.host.IscsiManager"
      version-id-ref="vim.version.version7"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Defines a dependency entity.

 Contains the affected Virtual NIC device name and iSCSI HBA name
 (if Virtual NIC is associated with the HBA).

 See IscsiMigrationDependency]]>
      </description-html>
            <property name="pnicDevice" type-id-ref="java.lang.String"
      vmodl-name="pnicDevice"
      >
      <description-html>
         <![CDATA[The affected Physical NIC device]]>
      </description-html>
      </property>

            <property name="vnicDevice" type-id-ref="java.lang.String"
      vmodl-name="vnicDevice"
      >
      <description-html>
         <![CDATA[The affected Virtual NIC device]]>
      </description-html>
      </property>

            <property name="vmhbaName" type-id-ref="java.lang.String"
      vmodl-name="vmhbaName"
      >
      <description-html>
         <![CDATA[The iSCSI HBA that the Virtual NIC is associated with, if any.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DvsImportEvent"
      type-id="vim.event.DvsImportEvent"
      vmodl-name="vim.event.DvsImportEvent"
      version-id-ref="vim.version.version8"
      base-type-id="vim.event.DvsEvent"
      >
      <description-html>
         <![CDATA[This event is generated when a import operation is
 performed on a distributed virtual switch]]>
      </description-html>
            <property name="importType" type-id-ref="java.lang.String"
      vmodl-name="importType"
      >
      <description-html>
         <![CDATA[The type of restore operation. See  <a href="vim.dvs.EntityBackup.ImportType.html">EntityImportType</a> for valid values]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostFlagInfo"
      type-id="vim.host.FlagInfo"
      vmodl-name="vim.host.FlagInfo"
      version-id-ref="vim.version.version2"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The FlagInfo data object type encapsulates the flag settings for a host.
  These properties are optional since the same structure is used to change
  the values during an edit or create operation.]]>
      </description-html>
            <property name="backgroundSnapshotsEnabled" type-id-ref="BOOLEAN"
      vmodl-name="backgroundSnapshotsEnabled"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Flag to specify whether background snapshots are enabled.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualDiskSparseVer1BackingOption"
      type-id="vim.vm.device.VirtualDiskOption.SparseVer1BackingOption"
      vmodl-name="vim.vm.device.VirtualDiskOption.SparseVer1BackingOption"
      enclosing-type-id-ref="vim.vm.device.VirtualDiskOption"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.device.VirtualDeviceOption.FileBackingOption"
      >
      <description-html>
         <![CDATA[This data object type contains the available options when backing a virtual
  disk using a host file with the sparse file format from GSX Server 2.x.]]>
      </description-html>
            <property name="diskModes" type-id-ref="vim.option.ChoiceOption"
      vmodl-name="diskModes"
      >
      <description-html>
         <![CDATA[The disk mode. Valid disk modes are:
  <ul>
  <li>vim.vm.device.VirtualDiskOption.DiskMode#persistent
  <li>vim.vm.device.VirtualDiskOption.DiskMode#nonpersistent
  <li>vim.vm.device.VirtualDiskOption.DiskMode#undoable
  <li>vim.vm.device.VirtualDiskOption.DiskMode#independent_persistent
  <li>vim.vm.device.VirtualDiskOption.DiskMode#independent_nonpersistent
  <li>vim.vm.device.VirtualDiskOption.DiskMode#append
  </ul><br>See <a href="vim.vm.device.VirtualDiskOption.DiskMode.html">VirtualDiskMode</a><br>]]>
      </description-html>
      </property>

            <property name="split" type-id-ref="vim.option.BoolOption"
      vmodl-name="split"
      >
      <description-html>
         <![CDATA[Flag to indicate whether or not the host supports
  allowing the client to select whether or not a sparse disk
  should be split.]]>
      </description-html>
      </property>

            <property name="writeThrough" type-id-ref="vim.option.BoolOption"
      vmodl-name="writeThrough"
      >
      <description-html>
         <![CDATA[Flag to indicate whether or not the host supports
  allowing the client to select "writethrough" as a mode for
  virtual disks. Typically, this is available only for VMware Server Linux hosts.]]>
      </description-html>
      </property>

            <property name="growable" type-id-ref="BOOLEAN"
      vmodl-name="growable"
      >
      <description-html>
         <![CDATA[Flag to indicate whether this backing can have its size changed.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostCapability"
      type-id="vim.host.Capability"
      vmodl-name="vim.host.Capability"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Specifies the capabilities of the particular host. This set of
  capabilities is referenced in other parts of the API specification
  to indicate under what circumstances an API will throw a
  <a href="vmodl.fault.NotSupported.html">NotSupported</a> fault.]]>
      </description-html>
            <property name="recursiveResourcePoolsSupported" type-id-ref="BOOLEAN"
      vmodl-name="recursiveResourcePoolsSupported"
      >
      </property>

            <property name="cpuMemoryResourceConfigurationSupported" type-id-ref="BOOLEAN"
      vmodl-name="cpuMemoryResourceConfigurationSupported"
      version-id-ref="vim.version.version2"
      >
      <description-html>
         <![CDATA[Flag indicating whether cpu and memory resource configuration is
 supported. If this is set to false,
 <a href="vim.ResourcePool.html#updateConfig">UpdateConfig</a>,
 <a href="vim.ResourcePool.html#updateChildResourceConfiguration">UpdateChildResourceConfiguration</a>
 cannot be used for changing the cpu/memory resource configurations.]]>
      </description-html>
      </property>

            <property name="rebootSupported" type-id-ref="BOOLEAN"
      vmodl-name="rebootSupported"
      >
      <description-html>
         <![CDATA[Flag indicating whether rebooting the host is supported.]]>
      </description-html>
      </property>

            <property name="shutdownSupported" type-id-ref="BOOLEAN"
      vmodl-name="shutdownSupported"
      >
      <description-html>
         <![CDATA[Flag indicating whether the host can be powered off]]>
      </description-html>
      </property>

            <property name="vmotionSupported" type-id-ref="BOOLEAN"
      vmodl-name="vmotionSupported"
      >
      <description-html>
         <![CDATA[Flag indicating whether you can perform VMotion.]]>
      </description-html>
      </property>

            <property name="standbySupported" type-id-ref="BOOLEAN"
      vmodl-name="standbySupported"
      version-id-ref="vim.version.version2"
      >
      <description-html>
         <![CDATA[Flag indicating whether you can put the host in a power down
 state, from which it can be powered up automatically.]]>
      </description-html>
      </property>

            <property name="ipmiSupported" type-id-ref="BOOLEAN"
      vmodl-name="ipmiSupported"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Flag indicating whether the host supports
 IPMI (Intelligent Platform Management Interface).
 XXX - Make ipmiSupported optional until there is a compatible hostagent.]]>
      </description-html>
      </property>

            <property name="maxSupportedVMs" type-id-ref="INT"
      vmodl-name="maxSupportedVMs"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The maximum number of virtual machines that can exist on this host.
  If this capability is not set, the number of virtual machines is
  unlimited.]]>
      </description-html>
      </property>

            <property name="maxRunningVMs" type-id-ref="INT"
      vmodl-name="maxRunningVMs"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The maximum number of virtual machines that can be running
  simultaneously on this host.
  If this capability is not set, the number of virtual machines
  running simultaneously is unlimited.]]>
      </description-html>
      </property>

            <property name="maxSupportedVcpus" type-id-ref="INT"
      vmodl-name="maxSupportedVcpus"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The maximum number of virtual CPUs supported per virtual machine.
  If this capability is not set, the number is unlimited.]]>
      </description-html>
      </property>

            <property name="maxRegisteredVMs" type-id-ref="INT"
      vmodl-name="maxRegisteredVMs"
      version-id-ref="vim.version.version8"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The maximum number of registered virtual machines supported by
  the host. If this limit is exceeded, the management agent will be
  at risk of running out of system resources. <a href="vim.ManagedEntity.html#configIssue">ConfigIssue</a> will be posted on
  <a href="vim.HostSystem.html">HostSystem</a> in this case.
  <p>
  If this capability is not set, the number is unknown.]]>
      </description-html>
      </property>

            <property name="datastorePrincipalSupported" type-id-ref="BOOLEAN"
      vmodl-name="datastorePrincipalSupported"
      >
      <description-html>
         <![CDATA[Flag indicating whether datastore principal user
  is supported on the host.]]>
      </description-html>
      </property>

            <property name="sanSupported" type-id-ref="BOOLEAN"
      vmodl-name="sanSupported"
      >
      <description-html>
         <![CDATA[Flag indicating whether access to SAN devices is supported.]]>
      </description-html>
      </property>

            <property name="nfsSupported" type-id-ref="BOOLEAN"
      vmodl-name="nfsSupported"
      >
      <description-html>
         <![CDATA[Is access to NFS devices supported.]]>
      </description-html>
      </property>

            <property name="iscsiSupported" type-id-ref="BOOLEAN"
      vmodl-name="iscsiSupported"
      >
      <description-html>
         <![CDATA[Is access to iSCSI devices supported.]]>
      </description-html>
      </property>

            <property name="vlanTaggingSupported" type-id-ref="BOOLEAN"
      vmodl-name="vlanTaggingSupported"
      >
      <description-html>
         <![CDATA[Is VLAN Tagging supported.]]>
      </description-html>
      </property>

            <property name="nicTeamingSupported" type-id-ref="BOOLEAN"
      vmodl-name="nicTeamingSupported"
      >
      <description-html>
         <![CDATA[Is NIC teaming supported.]]>
      </description-html>
      </property>

            <property name="highGuestMemSupported" type-id-ref="BOOLEAN"
      vmodl-name="highGuestMemSupported"
      >
      <description-html>
         <![CDATA[Is high guest memory supported.]]>
      </description-html>
      </property>

            <property name="maintenanceModeSupported" type-id-ref="BOOLEAN"
      vmodl-name="maintenanceModeSupported"
      >
      <description-html>
         <![CDATA[Is maintenance mode supported]]>
      </description-html>
      </property>

            <property name="suspendedRelocateSupported" type-id-ref="BOOLEAN"
      vmodl-name="suspendedRelocateSupported"
      >
      <description-html>
         <![CDATA[Indicates whether this host supports relocation of
 suspended virtual machines.  Must be true on the source
 and destination hosts for the relocation to work.]]>
      </description-html>
      </property>

            <property name="restrictedSnapshotRelocateSupported" type-id-ref="BOOLEAN"
      vmodl-name="restrictedSnapshotRelocateSupported"
      version-id-ref="vim.version.version2"
      >
      <description-html>
         <![CDATA[Indicates whether this host supports relocation of
 virtual machines with snapshots.  Must be true on the
 source and destination hosts for the relocation to work.
 Even if this is true, the following conditions must hold:
    1) All the the vm's files are in one directory prior
       to the relocate.
    2) All of the vm's files will be in one directory
       after the relocate.
    3) The source and destination hosts are the same product
       version.]]>
      </description-html>
      </property>

            <property name="perVmSwapFiles" type-id-ref="BOOLEAN"
      vmodl-name="perVmSwapFiles"
      version-id-ref="vim.version.version2"
      >
      <description-html>
         <![CDATA[Flag indicating whether virtual machine execution on this host involves
  a swapfile for each virtual machine. If true, the swapfile placement
  for a powered-on virtual machine is advertised in its FileLayout by
  the <a href="vim.vm.FileLayout.html#swapFile">swapFile</a> property.]]>
      </description-html>
      </property>

            <property name="localSwapDatastoreSupported" type-id-ref="BOOLEAN"
      vmodl-name="localSwapDatastoreSupported"
      version-id-ref="vim.version.version2"
      >
      <description-html>
         <![CDATA[Flag indicating whether the host supports selecting a datastore that
  that may be used to store virtual machine swapfiles.]]>
      </description-html>
      </property>

            <property name="unsharedSwapVMotionSupported" type-id-ref="BOOLEAN"
      vmodl-name="unsharedSwapVMotionSupported"
      version-id-ref="vim.version.version2"
      >
      <description-html>
         <![CDATA[Flag indicating whether the host supports participating in a VMotion
  where the virtual machine swapfile is not visible to the destination.]]>
      </description-html>
      </property>

            <property name="backgroundSnapshotsSupported" type-id-ref="BOOLEAN"
      vmodl-name="backgroundSnapshotsSupported"
      version-id-ref="vim.version.version2"
      >
      <description-html>
         <![CDATA[Flag indicating whether background snapshots are supported on this host.]]>
      </description-html>
      </property>

            <property name="preAssignedPCIUnitNumbersSupported" type-id-ref="BOOLEAN"
      vmodl-name="preAssignedPCIUnitNumbersSupported"
      version-id-ref="vim.version.version2"
      >
      <description-html>
         <![CDATA[Flag to indicate whether the server returns unit numbers in a
 pre-assigned range for devices on the PCI bus.

 When the server supports this flag, the device unit number namespace is
 partitioned by device type. Different types of devices will sit in
 a specific range of unit numbers that may not correspond to physical
 slots in the pci bus but present a relative ordering of the devices
 with respect to other devices of the same type.

 Note that this does not mean that the user can set the relative ordering
 between device types, but only allows stable orderings between devices
 of the same type. The unit number will now clearly represent an ordering
 between devices of the same type.

  <a href="vim.vm.device.VirtualDevice.html#unitNumber">unitNumber</a>
 This property is only available for devices on the pci controller.]]>
      </description-html>
      </property>

            <property name="screenshotSupported" type-id-ref="BOOLEAN"
      vmodl-name="screenshotSupported"
      version-id-ref="vim.version.version2"
      >
      <description-html>
         <![CDATA[Indicates whether the screenshot retrival over https is supported for this host's
 virtual machines.
 If true, a screenshot can be retrieved at the HTTPS relative path
 <i>/screen?id=&lt;managed object ID of virtual machine or snapshot&gt;</i>.
 If any of the optional parameters 'top', 'left', 'bottom', and 'right' is
 specified, the returned image will be cropped from the rectangle with upper left
 corner (left, top) and bottom right corner (right - 1, bottom - 1). These values
 default to the top, left, bottom and right edges of the image.

 The client must use an authenticated session with privilege
 VirtualMachine.Interact.ConsoleInteract on the requested virtual machine or,
 in the case of a snapshot, the virtual machine associated with that snapshot.]]>
      </description-html>
      </property>

            <property name="scaledScreenshotSupported" type-id-ref="BOOLEAN"
      vmodl-name="scaledScreenshotSupported"
      version-id-ref="vim.version.version2"
      >
      <description-html>
         <![CDATA[Indicates whether scaling is supported for screenshots retrieved over https.
 If true, screenshot retrieval supports the additional optional
 parameters 'width' and 'height'. After cropping, the returned image will be scaled
 to these dimensions. If only one of these parameters is specified, default behavior
 is to return an image roughly proportional to the source image.]]>
      </description-html>
      </property>

            <property name="storageVMotionSupported" type-id-ref="BOOLEAN"
      vmodl-name="storageVMotionSupported"
      version-id-ref="vim.version.version5"
      >
      <description-html>
         <![CDATA[Indicates whether the storage of a powered-on virtual machine may be
 relocated.]]>
      </description-html>
      </property>

            <property name="vmotionWithStorageVMotionSupported" type-id-ref="BOOLEAN"
      vmodl-name="vmotionWithStorageVMotionSupported"
      version-id-ref="vim.version.version5"
      >
      <description-html>
         <![CDATA[Indicates whether the storage of a powered-on virtual machine may be
 relocated while simultaneously changing the execution host of the
 virtual machine.]]>
      </description-html>
      </property>

            <property name="vmotionAcrossNetworkSupported" type-id-ref="BOOLEAN"
      vmodl-name="vmotionAcrossNetworkSupported"
      version-id-ref="vim.version.version9"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates whether the network of a powered-on virtual machine can be
 changed while simultaneously changing the execution host of the
 virtual machine.]]>
      </description-html>
      </property>

            <property name="maxNumDisksSVMotion" type-id-ref="INT"
      vmodl-name="maxNumDisksSVMotion"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Maximum number of migrating disks allowed of a migrating VM during SVMotion.
 If this capability is not set, then the maximum is considered to be 64.]]>
      </description-html>
      </property>

            <property name="hbrNicSelectionSupported" type-id-ref="BOOLEAN"
      vmodl-name="hbrNicSelectionSupported"
      version-id-ref="vim.version.version8"
      >
      <description-html>
         <![CDATA[Indicates whether a dedicated nic can be selected for vSphere Replication
 LWD traffic, i.e., from the primary host to the VR server.]]>
      </description-html>
      </property>

            <property name="vrNfcNicSelectionSupported" type-id-ref="BOOLEAN"
      vmodl-name="vrNfcNicSelectionSupported"
      version-id-ref="vim.version.version10"
      >
      <description-html>
         <![CDATA[Indicates whether a dedicated nic can be selected for vSphere Replication
 NFC traffic, i.e., from the VR server to the secondary host.]]>
      </description-html>
      </property>

            <property name="recordReplaySupported" type-id-ref="BOOLEAN"
      vmodl-name="recordReplaySupported"
      version-id-ref="vim.version.version5"
      is-deprecated="true"
      >
      <description-html>
         <![CDATA[Indicates whether this host supports record and replay]]>
      </description-html>
      <deprecated-html>
         <![CDATA[as of vSphere API 6.0]]>
      </deprecated-html>
      </property>

            <property name="ftSupported" type-id-ref="BOOLEAN"
      vmodl-name="ftSupported"
      version-id-ref="vim.version.version5"
      is-deprecated="true"
      >
      <description-html>
         <![CDATA[Indicates whether this host supports Fault Tolerance
 There can be many reasons why a host does not support Fault
 Tolerance, which includes CPU compatibility, product
 compatibility as well as other host configuration settings.
 For specific reasons, look into
 <a href="vim.host.Capability.html#replayCompatibilityIssues">replayCompatibilityIssues</a> and
 <a href="vim.host.Capability.html#ftCompatibilityIssues">ftCompatibilityIssues</a>

 In releases after vSphere API 5.0, vSphere Servers might not
 generate property collector update notifications for this property.
 To obtain the latest value of the property, you can use
 PropertyCollector methods RetrievePropertiesEx or WaitForUpdatesEx.
 If you use the PropertyCollector.WaitForUpdatesEx method, specify
 an empty string for the version parameter.

 Since this property is on a DataObject, an update returned by WaitForUpdatesEx may
 contain values for this property when some other property on the DataObject changes.
 If this update is a result of a call to WaitForUpdatesEx with a non-empty
 version parameter, the value for this property may not be current.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[as of vSphere API 6.0]]>
      </deprecated-html>
      </property>

            <property name="replayUnsupportedReason" type-id-ref="java.lang.String"
      vmodl-name="replayUnsupportedReason"
      version-id-ref="vim.version.version5"
      is-deprecated="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[For a host whose CPU doesn't support replay, indicates the reason
 for the incompatibility. <a href="vim.host.Capability.ReplayUnsupportedReason.html">HostReplayUnsupportedReason</a>
 represents the set of possible values.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 4.1, use
 <a href="vim.host.Capability.html#replayCompatibilityIssues">replayCompatibilityIssues</a>.]]>
      </deprecated-html>
      </property>

            <property name="replayCompatibilityIssues" type-id-ref="java.lang.String"
      vmodl-name="replayCompatibilityIssues"
      version-id-ref="vim.version.version6"
      is-deprecated="true"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[For a host which doesn't support replay, indicates all the reasons
 for the incompatibility. <a href="vim.host.Capability.ReplayUnsupportedReason.html">HostReplayUnsupportedReason</a>
 lists the set of possible values.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[as of vSphere API 6.0]]>
      </deprecated-html>
      </property>

            <property name="smpFtSupported" type-id-ref="BOOLEAN"
      vmodl-name="smpFtSupported"
      version-id-ref="vim.version.version10"
      >
      <description-html>
         <![CDATA[Indicates whether this host supports smp fault tolerance]]>
      </description-html>
      </property>

            <property name="ftCompatibilityIssues" type-id-ref="java.lang.String"
      vmodl-name="ftCompatibilityIssues"
      version-id-ref="vim.version.version6"
      is-deprecated="true"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[For a host which doesn't support Fault Tolerance, indicates all the reasons
 for the incompatibility. <a href="vim.host.Capability.FtUnsupportedReason.html">HostCapabilityFtUnsupportedReason</a>
 lists the set of possible values.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[as of vSphere API 6.0]]>
      </deprecated-html>
      </property>

            <property name="smpFtCompatibilityIssues" type-id-ref="java.lang.String"
      vmodl-name="smpFtCompatibilityIssues"
      version-id-ref="vim.version.version10"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[For a host which doesn't support smp fault tolerance, indicates all the
 reasons for the incompatibility.
 <a href="vim.host.Capability.FtUnsupportedReason.html">HostCapabilityFtUnsupportedReason</a> lists the set of possible
 values.]]>
      </description-html>
      </property>

            <property name="maxVcpusPerFtVm" type-id-ref="INT"
      vmodl-name="maxVcpusPerFtVm"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The maximum number of vCPUs allowed for a fault-tolerant virtual machine.]]>
      </description-html>
      </property>

            <property name="loginBySSLThumbprintSupported" type-id-ref="BOOLEAN"
      vmodl-name="loginBySSLThumbprintSupported"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Flag indicating whether this host supports SSL thumbprint authentication]]>
      </description-html>
      </property>

            <property name="cloneFromSnapshotSupported" type-id-ref="BOOLEAN"
      vmodl-name="cloneFromSnapshotSupported"
      version-id-ref="vim.version.version5"
      >
      <description-html>
         <![CDATA[Indicates whether or not cloning a virtual machine from a snapshot
 point is allowed.
 <p>
 This property must be true on the host where the virtual machine
 is currently residing.  This property need not be true on the
 destination host for the clone.<br>See <a href="vim.vm.CloneSpec.html#snapshot">snapshot</a><br>]]>
      </description-html>
      </property>

            <property name="deltaDiskBackingsSupported" type-id-ref="BOOLEAN"
      vmodl-name="deltaDiskBackingsSupported"
      version-id-ref="vim.version.version5"
      >
      <description-html>
         <![CDATA[Flag indicating whether explicitly creating arbirary configurations of
  delta disk backings is supported.
  <p>
  A delta disk backing is a way to preserve a virtual disk backing
  at some point in time.  A delta disk backing is a file backing which in
  turn points to the original virtual disk backing (the parent).  After a delta
  disk backing is added, all writes go to the delta disk backing.  All reads
  first try the delta disk backing and then try the parent backing if needed.
  <p>
  If this property is false, then delta disk backings can only be implicitly
  created through using snapshot operations and two virtual machines cannot
  safely share a parent disk backing.
  <p>
  If this property is true, then delta disk backings can be explicitly created
  and managed, and two virtual machines may safely share a parent disk backing.
  <p>
  In the context above, "safely" means that performing operations on one of the
  virtual machines will not affect the operation of the other virtual machine.
  <p><br>See <a href="vim.vm.device.VirtualDisk.SparseVer1BackingInfo.html#parent">parent</a><br>See <a href="vim.vm.device.VirtualDisk.SparseVer2BackingInfo.html#parent">parent</a><br>See <a href="vim.vm.device.VirtualDisk.FlatVer1BackingInfo.html#parent">parent</a><br>See <a href="vim.vm.device.VirtualDisk.FlatVer2BackingInfo.html#parent">parent</a><br>See <a href="vim.vm.device.VirtualDisk.RawDiskMappingVer1BackingInfo.html#parent">parent</a><br>See <a href="vim.VirtualMachine.html#promoteDisks">PromoteDisks_Task</a><br>See <a href="vim.vm.RelocateSpec.html#diskMoveType">diskMoveType</a><br>See <a href="vim.vm.RelocateSpec.DiskLocator.html#diskMoveType">diskMoveType</a><br>]]>
      </description-html>
      </property>

            <property name="perVMNetworkTrafficShapingSupported" type-id-ref="BOOLEAN"
      vmodl-name="perVMNetworkTrafficShapingSupported"
      version-id-ref="vim.version.version4"
      >
      <description-html>
         <![CDATA[Indicates whether network traffic shaping on a
  per virtual machine basis is supported.]]>
      </description-html>
      </property>

            <property name="tpmSupported" type-id-ref="BOOLEAN"
      vmodl-name="tpmSupported"
      version-id-ref="vim.version.version5"
      >
      <description-html>
         <![CDATA[Flag indicating whether this host supports the integrity measurement using
 a TPM device.]]>
      </description-html>
      </property>

            <property name="tpmVersion" type-id-ref="java.lang.String"
      vmodl-name="tpmVersion"
      version-id-ref="vim.version.version12"
      is-optional="true"
      >
      <description-html>
         <![CDATA[TPM version if supported by this host.]]>
      </description-html>
      </property>

            <property name="txtEnabled" type-id-ref="BOOLEAN"
      vmodl-name="txtEnabled"
      version-id-ref="vim.version.version12"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Flag indicating whether Intel TXT is enabled on this host.]]>
      </description-html>
      </property>

            <property name="supportedCpuFeature" type-id-ref="vim.host.CpuIdInfo"
      vmodl-name="supportedCpuFeature"
      version-id-ref="vim.version.version5"
      is-deprecated="true"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[CPU feature set that is supported by the virtualization platform. This
  feature set may reflect characteristics of the product capabilities and
  licensing. For any feature marked '-', reference the
  <a href="vim.host.HardwareInfo.html#cpuFeature">cpuFeature</a> array of the host's
  HardwareInfo to determine the correct value.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 6.5 use
  <a href="vim.host.ConfigInfo.html#featureCapability">featureCapability</a>]]>
      </deprecated-html>
      </property>

            <property name="virtualExecUsageSupported" type-id-ref="BOOLEAN"
      vmodl-name="virtualExecUsageSupported"
      version-id-ref="vim.version.version5"
      >
      <description-html>
         <![CDATA[Indicates whether the host supports configuring hardware
  virtualization (HV) support for virtual machines.]]>
      </description-html>
      </property>

            <property name="storageIORMSupported" type-id-ref="BOOLEAN"
      vmodl-name="storageIORMSupported"
      version-id-ref="vim.version.version6"
      >
      <description-html>
         <![CDATA[Indicates whether the host supports storage I/O resource
  management.]]>
      </description-html>
      </property>

            <property name="vmDirectPathGen2Supported" type-id-ref="BOOLEAN"
      vmodl-name="vmDirectPathGen2Supported"
      version-id-ref="vim.version.version6"
      >
      <description-html>
         <![CDATA[Indicates whether the host supports network passthrough using
  VMDirectPath Gen 2. Note that this is a general capability for the host
  and is independent of support by a given physical NIC. If false, the
  reason(s) for lack of support will be provided in
  <a href="vim.host.Capability.html#vmDirectPathGen2UnsupportedReason">vmDirectPathGen2UnsupportedReason</a> and/or in
  <a href="vim.host.Capability.html#vmDirectPathGen2UnsupportedReasonExtended">vmDirectPathGen2UnsupportedReasonExtended</a>.<br>See <a href="vim.host.PhysicalNic.html#vmDirectPathGen2Supported">vmDirectPathGen2Supported</a><br>]]>
      </description-html>
      </property>

            <property name="vmDirectPathGen2UnsupportedReason" type-id-ref="java.lang.String"
      vmodl-name="vmDirectPathGen2UnsupportedReason"
      version-id-ref="vim.version.version6"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[If <a href="vim.host.Capability.html#vmDirectPathGen2Supported">vmDirectPathGen2Supported</a> is false, this array will be
  populated with reasons for the lack of support (chosen from
  VmDirectPathGen2UnsupportedReason). If there is a reason for
  the lack of support that cannot be described by the available constants,
  <a href="vim.host.Capability.html#vmDirectPathGen2UnsupportedReasonExtended">vmDirectPathGen2UnsupportedReasonExtended</a> will be populated
  with an additional explanation provided by the platform.
  <p>
  Note that this list of reasons is not guaranteed to be exhaustive.
  <p>
  If the reason "hostNptIncompatibleProduct" is provided, then that will
  be the only provided reason, as the host software is incapable of
  providing additional information.]]>
      </description-html>
      </property>

            <property name="vmDirectPathGen2UnsupportedReasonExtended" type-id-ref="java.lang.String"
      vmodl-name="vmDirectPathGen2UnsupportedReasonExtended"
      version-id-ref="vim.version.version6"
      is-optional="true"
      >
      <description-html>
         <![CDATA[If <a href="vim.host.Capability.html#vmDirectPathGen2Supported">vmDirectPathGen2Supported</a> is false, this property may
  contain an explanation provided by the platform, beyond the reasons (if
  any) enumerated in <a href="vim.host.Capability.html#vmDirectPathGen2UnsupportedReason">vmDirectPathGen2UnsupportedReason</a>.]]>
      </description-html>
      </property>

            <property name="supportedVmfsMajorVersion" type-id-ref="INT"
      vmodl-name="supportedVmfsMajorVersion"
      version-id-ref="vim.version.version7"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of VMFS major versions supported by the host.]]>
      </description-html>
      </property>

            <property name="vStorageCapable" type-id-ref="BOOLEAN"
      vmodl-name="vStorageCapable"
      version-id-ref="vim.version.version6"
      >
      <description-html>
         <![CDATA[Indicates whether the host supports vStorage Hardware
 acceleration.]]>
      </description-html>
      </property>

            <property name="snapshotRelayoutSupported" type-id-ref="BOOLEAN"
      vmodl-name="snapshotRelayoutSupported"
      version-id-ref="vim.version.version7"
      >
      <description-html>
         <![CDATA[Indicates whether this host supports unrestricted relocation of virtual
 machines with snapshots. Only needs to be true on the destination host for
 the unrestricted relocation to work. The full snapshot relocation does not
 restrict the layout of snapshot files or disks of the virtual machine, nor
 its power state. If the virtual machine is powered on, a storage vmotion
 will be performed to relocate its snapshots and disks.]]>
      </description-html>
      </property>

            <property name="firewallIpRulesSupported" type-id-ref="BOOLEAN"
      vmodl-name="firewallIpRulesSupported"
      version-id-ref="vim.version.version7"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates whether this host supports ip address based restrictions in
  the firewall configuration.]]>
      </description-html>
      </property>

            <property name="servicePackageInfoSupported" type-id-ref="BOOLEAN"
      vmodl-name="servicePackageInfoSupported"
      version-id-ref="vim.version.version7"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates whether this host supports package information in service
  configuration.]]>
      </description-html>
      </property>

            <property name="maxHostRunningVms" type-id-ref="INT"
      vmodl-name="maxHostRunningVms"
      version-id-ref="vim.version.version7"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The maximum number of virtual machines that can be run on the host.
 An unset value indicates that the value could not be obtained. In contrast
 to <a href="vim.host.Capability.html#maxRunningVMs">maxRunningVMs</a>, this value is the minimum of (i) the maximum
 number supported by the hardware and (ii) the maximum number permitted by
 the host license.]]>
      </description-html>
      </property>

            <property name="maxHostSupportedVcpus" type-id-ref="INT"
      vmodl-name="maxHostSupportedVcpus"
      version-id-ref="vim.version.version7"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The maximum number of virtual CPUs that can be run on the host.  An unset
 value indicates that the value could not be obtained.  In contrast to
 <a href="vim.host.Capability.html#maxSupportedVcpus">maxSupportedVcpus</a>, this value is the minimum of (i) the maximum
 number supported by the hardware and (ii) the maximum number permitted by
 the host license.]]>
      </description-html>
      </property>

            <property name="vmfsDatastoreMountCapable" type-id-ref="BOOLEAN"
      vmodl-name="vmfsDatastoreMountCapable"
      version-id-ref="vim.version.version7"
      >
      <description-html>
         <![CDATA[Indicates whether the host is capable of mounting/unmounting
  VMFS datastores.]]>
      </description-html>
      </property>

            <property name="eightPlusHostVmfsSharedAccessSupported" type-id-ref="BOOLEAN"
      vmodl-name="eightPlusHostVmfsSharedAccessSupported"
      version-id-ref="vim.version.version8"
      >
      <description-html>
         <![CDATA[Indicates whether the host is capable of accessing a VMFS disk
  when there are eight or more hosts accessing the disk already.]]>
      </description-html>
      </property>

            <property name="nestedHVSupported" type-id-ref="BOOLEAN"
      vmodl-name="nestedHVSupported"
      version-id-ref="vim.version.version8"
      >
      <description-html>
         <![CDATA[Indicates whether the host supports nested hardware-assisted virtualization.]]>
      </description-html>
      </property>

            <property name="vPMCSupported" type-id-ref="BOOLEAN"
      vmodl-name="vPMCSupported"
      version-id-ref="vim.version.version8"
      >
      <description-html>
         <![CDATA[Indicates whether the host supports virtual CPU performance counters.]]>
      </description-html>
      </property>

            <property name="interVMCommunicationThroughVMCISupported" type-id-ref="BOOLEAN"
      vmodl-name="interVMCommunicationThroughVMCISupported"
      version-id-ref="vim.version.version8"
      >
      <description-html>
         <![CDATA[Indicates whether the host supports VMCI for communication
  between virtual machines.]]>
      </description-html>
      </property>

            <property name="scheduledHardwareUpgradeSupported" type-id-ref="BOOLEAN"
      vmodl-name="scheduledHardwareUpgradeSupported"
      version-id-ref="vim.version.version8"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates whether the host supports scheduled hardware upgrades.<br>See <a href="vim.vm.ConfigInfo.html#scheduledHardwareUpgradeInfo">scheduledHardwareUpgradeInfo</a><br>]]>
      </description-html>
      </property>

            <property name="featureCapabilitiesSupported" type-id-ref="BOOLEAN"
      vmodl-name="featureCapabilitiesSupported"
      version-id-ref="vim.version.version8"
      >
      <description-html>
         <![CDATA[Indicated whether the host supports feature capabilities
  for EVC mode.]]>
      </description-html>
      </property>

            <property name="latencySensitivitySupported" type-id-ref="BOOLEAN"
      vmodl-name="latencySensitivitySupported"
      version-id-ref="vim.version.version8"
      >
      <description-html>
         <![CDATA[Indicates whether the host supports latency sensitivity for the
 virtual machines.]]>
      </description-html>
      </property>

            <property name="storagePolicySupported" type-id-ref="BOOLEAN"
      vmodl-name="storagePolicySupported"
      version-id-ref="vim.version.version9"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates that host supports Object-based Storage System and
  Storage-Profile based disk provisioning.]]>
      </description-html>
      </property>

            <property name="accel3dSupported" type-id-ref="BOOLEAN"
      vmodl-name="accel3dSupported"
      version-id-ref="vim.version.version8"
      >
      <description-html>
         <![CDATA[Indicates if 3D hardware acceleration for virtual machines is supported.]]>
      </description-html>
      </property>

            <property name="reliableMemoryAware" type-id-ref="BOOLEAN"
      vmodl-name="reliableMemoryAware"
      version-id-ref="vim.version.version9"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates that this host uses a reliable memory aware allocation policy.]]>
      </description-html>
      </property>

            <property name="multipleNetworkStackInstanceSupported" type-id-ref="BOOLEAN"
      vmodl-name="multipleNetworkStackInstanceSupported"
      version-id-ref="vim.version.version9"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates whether the host supports Multiple Instance TCP/IP stack]]>
      </description-html>
      </property>

            <property name="messageBusProxySupported" type-id-ref="BOOLEAN"
      vmodl-name="messageBusProxySupported"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates whether the message bus proxy is supported]]>
      </description-html>
      </property>

            <property name="vsanSupported" type-id-ref="BOOLEAN"
      vmodl-name="vsanSupported"
      version-id-ref="vim.version.version9"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates whether the host supports VSAN functionality.<br>See <a href="vim.host.VsanSystem.html">HostVsanSystem</a><br>]]>
      </description-html>
      </property>

            <property name="vFlashSupported" type-id-ref="BOOLEAN"
      vmodl-name="vFlashSupported"
      version-id-ref="vim.version.version9"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates whether the host supports vFlash.]]>
      </description-html>
      </property>

            <property name="hostAccessManagerSupported" type-id-ref="BOOLEAN"
      vmodl-name="hostAccessManagerSupported"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Whether this host supports HostAccessManager for controlling direct
  access to the host and for better lockdown mode management.]]>
      </description-html>
      </property>

            <property name="provisioningNicSelectionSupported" type-id-ref="BOOLEAN"
      vmodl-name="provisioningNicSelectionSupported"
      version-id-ref="vim.version.version10"
      >
      <description-html>
         <![CDATA[Indicates whether a dedicated nic can be selected for vSphere Provisioning
 NFC traffic.]]>
      </description-html>
      </property>

            <property name="nfs41Supported" type-id-ref="BOOLEAN"
      vmodl-name="nfs41Supported"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Whether this host supports NFS41 file systems.]]>
      </description-html>
      </property>

            <property name="nfs41Krb5iSupported" type-id-ref="BOOLEAN"
      vmodl-name="nfs41Krb5iSupported"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Whether this host support NFS41 Kerberos 5* security type.]]>
      </description-html>
      </property>

            <property name="turnDiskLocatorLedSupported" type-id-ref="BOOLEAN"
      vmodl-name="turnDiskLocatorLedSupported"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates whether turning on/off local disk LED is supported
 on the host.<br>See <a href="vim.host.StorageSystem.html#turnDiskLocatorLedOn">TurnDiskLocatorLedOn_Task</a><br>See <a href="vim.host.StorageSystem.html#turnDiskLocatorLedOff">TurnDiskLocatorLedOff_Task</a><br>]]>
      </description-html>
      </property>

            <property name="virtualVolumeDatastoreSupported" type-id-ref="BOOLEAN"
      vmodl-name="virtualVolumeDatastoreSupported"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates whether this host supports VirtualVolume based Datastore.]]>
      </description-html>
      </property>

            <property name="markAsSsdSupported" type-id-ref="BOOLEAN"
      vmodl-name="markAsSsdSupported"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates whether mark disk as SSD or Non-SSD is supported
 on the host.<br>See <a href="vim.host.StorageSystem.html#markAsSsd">MarkAsSsd_Task</a><br>See <a href="vim.host.StorageSystem.html#markAsNonSsd">MarkAsNonSsd_Task</a><br>]]>
      </description-html>
      </property>

            <property name="markAsLocalSupported" type-id-ref="BOOLEAN"
      vmodl-name="markAsLocalSupported"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates whether mark disk as local or remote is supported
 on the host.<br>See <a href="vim.host.StorageSystem.html#markAsLocal">MarkAsLocal_Task</a><br>See <a href="vim.host.StorageSystem.html#markAsNonLocal">MarkAsNonLocal_Task</a><br>]]>
      </description-html>
      </property>

            <property name="smartCardAuthenticationSupported" type-id-ref="BOOLEAN"
      vmodl-name="smartCardAuthenticationSupported"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates whether this host supports local two-factor user
 authentication using smart cards.<br>See <a href="vim.host.ActiveDirectoryAuthentication.html#enableSmartCardAuthentication">EnableSmartCardAuthentication</a><br>]]>
      </description-html>
      </property>

            <property name="pMemSupported" type-id-ref="BOOLEAN"
      vmodl-name="pMemSupported"
      version-id-ref="vim.version.version12"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates whether this host supports persistent memory.
 If value is not specified, it should be considered as not supported.]]>
      </description-html>
      </property>

            <property name="pMemSnapshotSupported" type-id-ref="BOOLEAN"
      vmodl-name="pMemSnapshotSupported"
      version-id-ref="vim.version.version12"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates whether this host supports snapshots for VMs with virtual
 devices backed by persistent memory.
 If value is not specified, it should be considered as not supported.]]>
      </description-html>
      </property>

            <property name="cryptoSupported" type-id-ref="BOOLEAN"
      vmodl-name="cryptoSupported"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Flag indicating whether Cryptographer feature is supported.]]>
      </description-html>
      </property>

            <property name="oneKVolumeAPIsSupported" type-id-ref="BOOLEAN"
      vmodl-name="oneKVolumeAPIsSupported"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates whether this host supports granular datastore cache update.
 If value is not specified, it should be considered as not supported.]]>
      </description-html>
      </property>

            <property name="gatewayOnNicSupported" type-id-ref="BOOLEAN"
      vmodl-name="gatewayOnNicSupported"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Flag indicating whether default gateway can be configured on a
 vmkernel nic.]]>
      </description-html>
      </property>

            <property name="upitSupported" type-id-ref="BOOLEAN"
      vmodl-name="upitSupported"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicate whether this host supports UPIT]]>
      </description-html>
      </property>

            <property name="cpuHwMmuSupported" type-id-ref="BOOLEAN"
      vmodl-name="cpuHwMmuSupported"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates whether this host supports hardware-based MMU virtualization.]]>
      </description-html>
      </property>

            <property name="encryptedVMotionSupported" type-id-ref="BOOLEAN"
      vmodl-name="encryptedVMotionSupported"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates whether this host supports encrypted vMotion.]]>
      </description-html>
      </property>

            <property name="encryptionChangeOnAddRemoveSupported" type-id-ref="BOOLEAN"
      vmodl-name="encryptionChangeOnAddRemoveSupported"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates whether this host supports changing the encryption state
 of a virtual disk when the disk is being added or removed from a
 virtual machine configuration.]]>
      </description-html>
      </property>

            <property name="encryptionHotOperationSupported" type-id-ref="BOOLEAN"
      vmodl-name="encryptionHotOperationSupported"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates whether this host supports changing the encryption state
 of a virtual machine, or virtual disk, while the virtual machine
 is powered on.]]>
      </description-html>
      </property>

            <property name="encryptionWithSnapshotsSupported" type-id-ref="BOOLEAN"
      vmodl-name="encryptionWithSnapshotsSupported"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates whether this host supports changing the encryption state
 state of a virtual machine, or virtual disk, while the virtual
 machine has snapshots present.]]>
      </description-html>
      </property>

            <property name="encryptionFaultToleranceSupported" type-id-ref="BOOLEAN"
      vmodl-name="encryptionFaultToleranceSupported"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates whether this host supports enabling Fault Tolerance on
 encrypted virtual machines.]]>
      </description-html>
      </property>

            <property name="encryptionMemorySaveSupported" type-id-ref="BOOLEAN"
      vmodl-name="encryptionMemorySaveSupported"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates whether this host supports suspending, or creating
 with-memory snapshots, encrypted virtual machines.]]>
      </description-html>
      </property>

            <property name="encryptionRDMSupported" type-id-ref="BOOLEAN"
      vmodl-name="encryptionRDMSupported"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates whether this host supports encrypting RDM backed virtual
 disks.]]>
      </description-html>
      </property>

            <property name="encryptionVFlashSupported" type-id-ref="BOOLEAN"
      vmodl-name="encryptionVFlashSupported"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates whether this host supports encrypting virtual disks with
 vFlash cache enabled.]]>
      </description-html>
      </property>

            <property name="encryptionCBRCSupported" type-id-ref="BOOLEAN"
      vmodl-name="encryptionCBRCSupported"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates whether this host supports encrypting virtual disks with
 Content Based Read Cache (digest disks) enabled.]]>
      </description-html>
      </property>

            <property name="encryptionHBRSupported" type-id-ref="BOOLEAN"
      vmodl-name="encryptionHBRSupported"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates whether this host supports encrypting virtual disks with
 Host Based Replication enabled.]]>
      </description-html>
      </property>

            <property name="ftEfiSupported" type-id-ref="BOOLEAN"
      vmodl-name="ftEfiSupported"
      version-id-ref="vim.version.version12"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates whether this host supports Fault Tolerance VMs that have
 specified UEFI firmware.]]>
      </description-html>
      </property>

            <property name="unmapMethodSupported" type-id-ref="java.lang.String"
      vmodl-name="unmapMethodSupported"
      version-id-ref="vim.version.version12"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates which kind of VMFS unmap method is supported. See
 <a href="vim.host.Capability.UnmapMethodSupported.html">HostCapabilityUnmapMethodSupported</a>]]>
      </description-html>
      </property>

            <property name="maxMemMBPerFtVm" type-id-ref="INT"
      vmodl-name="maxMemMBPerFtVm"
      version-id-ref="vim.version.version12"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates maximum memory allowed for Fault Tolerance virtual machine.]]>
      </description-html>
      </property>

            <property name="virtualMmuUsageIgnored" type-id-ref="BOOLEAN"
      vmodl-name="virtualMmuUsageIgnored"
      version-id-ref="vim.version.version12"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates that <a href="vim.vm.FlagInfo.html#virtualMmuUsage">virtualMmuUsage</a> is
 ignored by the host, always operating as if "on" was selected.]]>
      </description-html>
      </property>

            <property name="virtualExecUsageIgnored" type-id-ref="BOOLEAN"
      vmodl-name="virtualExecUsageIgnored"
      version-id-ref="vim.version.version12"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates that <a href="vim.vm.FlagInfo.html#virtualExecUsage">virtualExecUsage</a> is
 ignored by the host, always operating as if "hvOn" was selected.]]>
      </description-html>
      </property>

            <property name="vmCreateDateSupported" type-id-ref="BOOLEAN"
      vmodl-name="vmCreateDateSupported"
      version-id-ref="vim.version.version12"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates that createDate feature is supported by the host.]]>
      </description-html>
      </property>

            <property name="vmfs3EOLSupported" type-id-ref="BOOLEAN"
      vmodl-name="vmfs3EOLSupported"
      version-id-ref="vim.version.version12"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates whether this host supports VMFS-3 EOL.
 If value is not specified, it should be considered as not supported.]]>
      </description-html>
      </property>

            <property name="ftVmcpSupported" type-id-ref="BOOLEAN"
      vmodl-name="ftVmcpSupported"
      version-id-ref="vim.version.version12"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates whether this host supports VMCP for Fault Tolerance VMs.]]>
      </description-html>
      </property>

            <property name="quickBootSupported" type-id-ref="BOOLEAN"
      vmodl-name="quickBootSupported"
      version-id-ref="vim.version.version13"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates whether this host supports the LoadESX feature
 which allows faster reboots.<br>See <a href="vim.host.LoadEsxManager.html#queryLoadEsxSupported">QueryLoadEsxSupported</a><br>]]>
      </description-html>
      </property>

            <property name="assignableHardwareSupported" type-id-ref="BOOLEAN"
      vmodl-name="assignableHardwareSupported"
      version-id-ref="vim.version.v7_0"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates whether this host supports Assignable Hardware.]]>
      </description-html>
      </property>

            <property name="useFeatureReqsForOldHWv" type-id-ref="BOOLEAN"
      vmodl-name="useFeatureReqsForOldHWv"
      version-id-ref="vim.version.v6_8_7"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates whether this host uses vmFeatures for compatiblity checking
 of old (<=8) virtual hardware version VMs.]]>
      </description-html>
      </property>

            <property name="markPerenniallyReservedSupported" type-id-ref="BOOLEAN"
      vmodl-name="markPerenniallyReservedSupported"
      version-id-ref="vim.version.version14"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates whether this host supports marking  specified LUN as
 perennially reserved.]]>
      </description-html>
      </property>

            <property name="hppPspSupported" type-id-ref="BOOLEAN"
      vmodl-name="hppPspSupported"
      version-id-ref="vim.version.v7_0"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates whether this host supports HPP path selection policy
 settings.]]>
      </description-html>
      </property>

            <property name="deviceRebindWithoutRebootSupported" type-id-ref="BOOLEAN"
      vmodl-name="deviceRebindWithoutRebootSupported"
      version-id-ref="vim.version.v7_0"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates whether device rebind without reboot is supported. This is
 the capability which enables PCI passthrough and SR-IOV configuration
 without reboot.]]>
      </description-html>
      </property>

            <property name="storagePolicyChangeSupported" type-id-ref="BOOLEAN"
      vmodl-name="storagePolicyChangeSupported"
      version-id-ref="vim.version.v7_0"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates whether this host supports storage policy change.]]>
      </description-html>
      </property>

            <property name="precisionTimeProtocolSupported" type-id-ref="BOOLEAN"
      vmodl-name="precisionTimeProtocolSupported"
      version-id-ref="vim.version.v7_0"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates whether this host supports date time synchronization over
 Precision Time Protocol (PTP).]]>
      </description-html>
      </property>

            <property name="remoteDeviceVMotionSupported" type-id-ref="BOOLEAN"
      vmodl-name="remoteDeviceVMotionSupported"
      version-id-ref="vim.version.v7_0"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates whether vMotion of a VM with remote devices attached is
 supported. This applies to CD-ROM and floppy devices backed by a
 remote client.]]>
      </description-html>
      </property>

            <property name="maxSupportedVmMemory" type-id-ref="INT"
      vmodl-name="maxSupportedVmMemory"
      version-id-ref="vim.version.v7_0"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The maximum amount of virtual memory supported per virtual machine.
  If this capability is not set, the size is limited by hardware version
  of the virtual machine only.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.host.Capability.ReplayUnsupportedReason</nested-type-id-ref>
      <nested-type-id-ref>vim.host.Capability.FtUnsupportedReason</nested-type-id-ref>
      <nested-type-id-ref>vim.host.Capability.VmDirectPathGen2UnsupportedReason</nested-type-id-ref>
      <nested-type-id-ref>vim.host.Capability.UnmapMethodSupported</nested-type-id-ref>
   </data-object>
   <data-object name="VmReloadFromPathFailedEvent"
      type-id="vim.event.VmReloadFromPathFailedEvent"
      vmodl-name="vim.event.VmReloadFromPathFailedEvent"
      version-id-ref="vim.version.version6"
      base-type-id="vim.event.VmEvent"
      >
      <description-html>
         <![CDATA[This event records that a virtual machine reload from a new configuration
 path failed.]]>
      </description-html>
            <property name="configPath" type-id-ref="java.lang.String"
      vmodl-name="configPath"
      >
      </property>

   </data-object>
   <data-object name="NetIpRouteConfigInfo"
      type-id="vim.net.IpRouteConfigInfo"
      vmodl-name="vim.net.IpRouteConfigInfo"
      version-id-ref="vim.version.version6"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object reports the IP Route Table.]]>
      </description-html>
            <property name="ipRoute" type-id-ref="vim.net.IpRouteConfigInfo.IpRoute"
      vmodl-name="ipRoute"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[IP routing table for all address families.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.net.IpRouteConfigInfo.Gateway</nested-type-id-ref>
      <nested-type-id-ref>vim.net.IpRouteConfigInfo.IpRoute</nested-type-id-ref>
   </data-object>
   <data-object name="HostProxySwitchHostLagConfig"
      type-id="vim.host.HostProxySwitch.HostLagConfig"
      vmodl-name="vim.host.HostProxySwitch.HostLagConfig"
      enclosing-type-id-ref="vim.host.HostProxySwitch"
      version-id-ref="vim.version.version9"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object type describes the set of Uplink Ports in
  Link Aggregation Control Protocol group.]]>
      </description-html>
            <property name="lagKey" type-id-ref="java.lang.String"
      vmodl-name="lagKey"
      >
      </property>

            <property name="lagName" type-id-ref="java.lang.String"
      vmodl-name="lagName"
      is-optional="true"
      >
      </property>

            <property name="uplinkPort" type-id-ref="vim.KeyValue"
      vmodl-name="uplinkPort"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The list of Uplink Ports in the Link Aggregation Control Protocol group.
  This property contains the keys and names of such ports.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualSwitchSelectionProfile"
      type-id="vim.profile.host.PortGroupProfile.VirtualSwitchSelectionProfile"
      vmodl-name="vim.profile.host.PortGroupProfile.VirtualSwitchSelectionProfile"
      enclosing-type-id-ref="vim.profile.host.PortGroupProfile"
      version-id-ref="vim.version.version5"
      base-type-id="vim.profile.ApplyProfile"
      >
      <description-html>
         <![CDATA[The <a href="vim.profile.host.PortGroupProfile.VirtualSwitchSelectionProfile.html">VirtualSwitchSelectionProfile</a> data object represents
  the virtual switch that is connected to a port group.
  The <a href="vim.profile.ApplyProfile.html#policy">policy</a> property contains
  the configuration data values for the virtual switch.]]>
      </description-html>
   </data-object>
   <data-object name="ClusterFailoverResourcesAdmissionControlPolicy"
      type-id="vim.cluster.FailoverResourcesAdmissionControlPolicy"
      vmodl-name="vim.cluster.FailoverResourcesAdmissionControlPolicy"
      version-id-ref="vim.version.version5"
      base-type-id="vim.cluster.DasAdmissionControlPolicy"
      >
      <description-html>
         <![CDATA[The <a href="vim.cluster.FailoverResourcesAdmissionControlPolicy.html">ClusterFailoverResourcesAdmissionControlPolicy</a>
 reserves a specified percentage of aggregate cluster resources for failover.
 With the resources failover policy in place, vSphere HA uses the following
 calculations to control virtual machine migration in the cluster.
 <ol>
 <li>Calculate the total resource requirements for all powered-on
     virtual machines in the cluster.
 <li>Calculate the total host resources available for virtual machines.
 <li>Calculate the Current CPU failover capacity and current memory failover
     capacity for the cluster.
 <li>Compare the current CPU failover capacity and current memory failover
     capacity with the configured resource percentages
     (<a href="vim.cluster.FailoverResourcesAdmissionControlPolicy.html#cpuFailoverResourcesPercent">cpuFailoverResourcesPercent</a>
     and
     <a href="vim.cluster.FailoverResourcesAdmissionControlPolicy.html#memoryFailoverResourcesPercent">memoryFailoverResourcesPercent</a>).
     If either current capacity is less than the corresponding configured
     capacity, HA does not allow the operation.
 </ol>
 <p>
 HA uses the actual reservations of the virtual machines. If a virtual machine
 does not have reservations, meaning that the reservation is 0, a default
 of 0MB memory and 256MHz CPU is applied. This is controlled by the same
 HA advanced options used for the failover level policy
 (<a href="vim.cluster.FailoverLevelAdmissionControlPolicy.html">ClusterFailoverLevelAdmissionControlPolicy</a>).]]>
      </description-html>
            <property name="cpuFailoverResourcesPercent" type-id-ref="INT"
      vmodl-name="cpuFailoverResourcesPercent"
      >
      <description-html>
         <![CDATA[Percentage of CPU resources in the cluster to reserve for failover.
 You can specify up to 100% of CPU resources for failover.]]>
      </description-html>
      </property>

            <property name="memoryFailoverResourcesPercent" type-id-ref="INT"
      vmodl-name="memoryFailoverResourcesPercent"
      >
      <description-html>
         <![CDATA[Percentage of memory resources in the cluster to reserve for failover.
 You can specify up to 100% of memory resources for failover.]]>
      </description-html>
      </property>

            <property name="failoverLevel" type-id-ref="INT"
      vmodl-name="failoverLevel"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Number of host failures that should be tolerated, still guaranteeing
 sufficient resources to restart virtual machines on available hosts.
 If not set, we assume 1.]]>
      </description-html>
      </property>

            <property name="autoComputePercentages" type-id-ref="BOOLEAN"
      vmodl-name="autoComputePercentages"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Flag to enable user input values for
 <a href="vim.cluster.FailoverResourcesAdmissionControlPolicy.html#cpuFailoverResourcesPercent">cpuFailoverResourcesPercent</a>
 and
 <a href="vim.cluster.FailoverResourcesAdmissionControlPolicy.html#memoryFailoverResourcesPercent">memoryFailoverResourcesPercent</a>

 By default, this is true and the default calculation is using the
 <a href="vim.cluster.FailoverResourcesAdmissionControlPolicy.html#failoverLevel">failoverLevel</a>
 hosts' resources. If a user wants to override the percentage values, he
 has to disable the auto-compute by setting this field to false.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ClusterInfraUpdateHaConfigInfo"
      type-id="vim.cluster.InfraUpdateHaConfigInfo"
      vmodl-name="vim.cluster.InfraUpdateHaConfigInfo"
      version-id-ref="vim.version.version11"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Configuration of the vSphere InfraUpdateHA service.
  <p>
  All fields are defined as optional. In case of a reconfiguration,
  unset fields are not changed.]]>
      </description-html>
            <property name="enabled" type-id-ref="BOOLEAN"
      vmodl-name="enabled"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Flag indicating whether or not the service is enabled. InfraUpdateHA
  will not be active, unless DRS is enabled as well.]]>
      </description-html>
      </property>

            <property name="behavior" type-id-ref="java.lang.String"
      vmodl-name="behavior"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Configured behavior. Values are of type
  <a href="vim.cluster.InfraUpdateHaConfigInfo.BehaviorType.html">BehaviorType</a>.]]>
      </description-html>
      </property>

            <property name="moderateRemediation" type-id-ref="java.lang.String"
      vmodl-name="moderateRemediation"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Configured remediation for moderately degraded hosts. Values are of type
  <a href="vim.cluster.InfraUpdateHaConfigInfo.RemediationType.html">RemediationType</a>.
  Configuring MaintenanceMode for moderateRemedation and QuarantineMode for
  severeRemediation is not supported and will throw InvalidArgument.]]>
      </description-html>
      </property>

            <property name="severeRemediation" type-id-ref="java.lang.String"
      vmodl-name="severeRemediation"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Configured remediation for severely degraded hosts. Values are of type
  <a href="vim.cluster.InfraUpdateHaConfigInfo.RemediationType.html">RemediationType</a>.]]>
      </description-html>
      </property>

            <property name="providers" type-id-ref="java.lang.String"
      vmodl-name="providers"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The list of health update providers configured for this cluster.
  Providers are identified by their id.
  <p>
  When reconfiguring the cluster, a list with a single element {""} will
  clear the list of providers.
  <p>
  If the provider list is empty, InfraUpdateHA will not be active.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.cluster.InfraUpdateHaConfigInfo.BehaviorType</nested-type-id-ref>
      <nested-type-id-ref>vim.cluster.InfraUpdateHaConfigInfo.RemediationType</nested-type-id-ref>
   </data-object>
   <data-object name="HostCnxFailedBadVersionEvent"
      type-id="vim.event.HostCnxFailedBadVersionEvent"
      vmodl-name="vim.event.HostCnxFailedBadVersionEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.HostEvent"
      >
      <description-html>
         <![CDATA[This event records a failure to connect to a host
  due to an incompatible client version.]]>
      </description-html>
   </data-object>
   <data-object name="HostIpRouteTableConfig"
      type-id="vim.host.IpRouteTableConfig"
      vmodl-name="vim.host.IpRouteTableConfig"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[IpRouteEntry.  Routing entries are individual static routes which combined
 with the default route form all of the routing rules for a host.]]>
      </description-html>
            <property name="ipRoute" type-id-ref="vim.host.IpRouteOp"
      vmodl-name="ipRoute"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The array of Routing ops (routes to be added/removed)]]>
      </description-html>
      </property>

            <property name="ipv6Route" type-id-ref="vim.host.IpRouteOp"
      vmodl-name="ipv6Route"
      is-array="true"
      is-optional="true"
      >
      </property>

   </data-object>
   <data-object name="VStorageObjectAssociationsVmDiskAssociations"
      type-id="vim.vslm.vcenter.VStorageObjectAssociations.VmDiskAssociations"
      vmodl-name="vim.vslm.vcenter.VStorageObjectAssociations.VmDiskAssociations"
      enclosing-type-id-ref="vim.vslm.vcenter.VStorageObjectAssociations"
      version-id-ref="vim.version.version12"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object contains infomation of a VM Disk associations.]]>
      </description-html>
            <property name="vmId" type-id-ref="java.lang.String"
      vmodl-name="vmId"
      >
      <description-html>
         <![CDATA[ID of the virtual machine.]]>
      </description-html>
      </property>

            <property name="diskKey" type-id-ref="INT"
      vmodl-name="diskKey"
      >
      <description-html>
         <![CDATA[Device key of the disk attached to the VM.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="MacAddress"
      type-id="vim.MacAddress"
      vmodl-name="vim.MacAddress"
      version-id-ref="vim.version.version9"
      base-type-id="vim.NegatableExpression"
      >
      <description-html>
         <![CDATA[Base class for specifying MAC addresses.]]>
      </description-html>
   </data-object>
   <data-object name="VirtualEthernetCardLegacyNetworkBackingInfo"
      type-id="vim.vm.device.VirtualEthernetCard.LegacyNetworkBackingInfo"
      vmodl-name="vim.vm.device.VirtualEthernetCard.LegacyNetworkBackingInfo"
      enclosing-type-id-ref="vim.vm.device.VirtualEthernetCard"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.device.VirtualDevice.DeviceBackingInfo"
      >
      <description-html>
         <![CDATA[The <a href="vim.vm.device.VirtualEthernetCard.LegacyNetworkBackingInfo.html">VirtualEthernetCardLegacyNetworkBackingInfo</a> data object
  provides legacy backing for a virtual Ethernet card.]]>
      </description-html>
   </data-object>
   <data-object name="VirtualMachineVMCIDeviceOptionFilterSpecOption"
      type-id="vim.vm.device.VirtualVMCIDeviceOption.FilterSpecOption"
      vmodl-name="vim.vm.device.VirtualVMCIDeviceOption.FilterSpecOption"
      enclosing-type-id-ref="vim.vm.device.VirtualVMCIDeviceOption"
      version-id-ref="vim.version.version10"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Filter specification options.  Indicates options for each filter
 specification, as defined by
 <a href="vim.vm.device.VirtualVMCIDevice.FilterSpec.html">VirtualMachineVMCIDeviceFilterSpec</a>.]]>
      </description-html>
            <property name="action" type-id-ref="vim.option.ChoiceOption"
      vmodl-name="action"
      >
      <description-html>
         <![CDATA[Available actions.]]>
      </description-html>
      </property>

            <property name="protocol" type-id-ref="vim.option.ChoiceOption"
      vmodl-name="protocol"
      >
      <description-html>
         <![CDATA[Available protocols.]]>
      </description-html>
      </property>

            <property name="direction" type-id-ref="vim.option.ChoiceOption"
      vmodl-name="direction"
      >
      <description-html>
         <![CDATA[Available directions.]]>
      </description-html>
      </property>

            <property name="lowerDstPortBoundary" type-id-ref="vim.option.LongOption"
      vmodl-name="lowerDstPortBoundary"
      >
      <description-html>
         <![CDATA[Minimum, maximum and default values for lower destination port
 boundary.]]>
      </description-html>
      </property>

            <property name="upperDstPortBoundary" type-id-ref="vim.option.LongOption"
      vmodl-name="upperDstPortBoundary"
      >
      <description-html>
         <![CDATA[Minimum, maximum and default values for upper destination port
 boundary.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VsanUpgradeSystemNetworkPartitionIssue"
      type-id="vim.VsanUpgradeSystem.NetworkPartitionIssue"
      vmodl-name="vim.VsanUpgradeSystem.NetworkPartitionIssue"
      enclosing-type-id-ref="vim.VsanUpgradeSystem"
      version-id-ref="vim.version.version10"
      base-type-id="vim.VsanUpgradeSystem.PreflightCheckIssue"
      >
      <description-html>
         <![CDATA[Pre-flight check encountered a network partition. Contains details
 about the discovered network partition.]]>
      </description-html>
            <property name="partitions" type-id-ref="vim.VsanUpgradeSystem.NetworkPartitionInfo"
      vmodl-name="partitions"
      is-array="true"
      >
      <description-html>
         <![CDATA[List of network partitions]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DesiredSoftwareSpecBaseImageSpec"
      type-id="vim.DesiredSoftwareSpec.BaseImageSpec"
      vmodl-name="vim.DesiredSoftwareSpec.BaseImageSpec"
      enclosing-type-id-ref="vim.DesiredSoftwareSpec"
      version-id-ref="vim.version.v7_0"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Describes base-image spec for the ESX host.]]>
      </description-html>
            <property name="version" type-id-ref="java.lang.String"
      vmodl-name="version"
      >
      <description-html>
         <![CDATA[Version of the base-image.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualMachineMetadataManagerVmMetadata"
      type-id="vim.vm.MetadataManager.VmMetadata"
      vmodl-name="vim.vm.MetadataManager.VmMetadata"
      enclosing-type-id-ref="vim.vm.MetadataManager"
      version-id-ref="vim.version.version9"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[VmMetadata is a pair of VM ID and opaque metadata.]]>
      </description-html>
            <property name="vmId" type-id-ref="java.lang.String"
      vmodl-name="vmId"
      >
      <description-html>
         <![CDATA[Datastore URL-based ID for VM, for example,
 "[datastore1] SomeVM/SomeVM.vmx".]]>
      </description-html>
      </property>

            <property name="metadata" type-id-ref="java.lang.String"
      vmodl-name="metadata"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Opaque metadata for the VM identified by vmId. If no
 value is supplied, the entry for this VM is removed.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VStorageObjectSnapshotDetails"
      type-id="vim.vslm.VStorageObjectSnapshotDetails"
      vmodl-name="vim.vslm.VStorageObjectSnapshotDetails"
      version-id-ref="vim.version.version12"
      internal-before-version-id-ref="vim.version.version15"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object type provides details of a vstorage object snapshot]]>
      </description-html>
            <property name="path" type-id-ref="java.lang.String"
      vmodl-name="path"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Path of the snaphost object]]>
      </description-html>
      </property>

            <property name="changedBlockTrackingId" type-id-ref="java.lang.String"
      vmodl-name="changedBlockTrackingId"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Changed block tracking ID of the snapshot]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DvsPortLinkDownEvent"
      type-id="vim.event.DvsPortLinkDownEvent"
      vmodl-name="vim.event.DvsPortLinkDownEvent"
      version-id-ref="vim.version.version5"
      base-type-id="vim.event.DvsEvent"
      >
      <description-html>
         <![CDATA[A port of which link status is changed to down in the distributed
  virtual switch.]]>
      </description-html>
            <property name="portKey" type-id-ref="java.lang.String"
      vmodl-name="portKey"
      >
      <description-html>
         <![CDATA[The port key.]]>
      </description-html>
      </property>

            <property name="runtimeInfo" type-id-ref="vim.dvs.DistributedVirtualPort.RuntimeInfo"
      vmodl-name="runtimeInfo"
      version-id-ref="vim.version.version8"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The port runtime information.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualDiskId"
      type-id="vim.vm.device.VirtualDiskId"
      vmodl-name="vim.vm.device.VirtualDiskId"
      version-id-ref="vim.version.version7"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Identifier for a virtual disk.
  <p>]]>
      </description-html>
            <property name="vm" type-id-ref="vim.VirtualMachine"
      vmodl-name="vm"
      >
      <description-html>
         <![CDATA[Virtual machine reference.]]>
      </description-html>
      </property>

            <property name="diskId" type-id-ref="INT"
      vmodl-name="diskId"
      >
      <description-html>
         <![CDATA[Device ID <a href="vim.vm.device.VirtualDevice.html#key">key</a> of the virtual disk.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HttpNfcLeaseHostInfo"
      type-id="vim.HttpNfcLease.HostInfo"
      vmodl-name="vim.HttpNfcLease.HostInfo"
      enclosing-type-id-ref="vim.HttpNfcLease"
      version-id-ref="vim.version.version6"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Contains information about how to connect to a given host.]]>
      </description-html>
            <property name="url" type-id-ref="java.lang.String"
      vmodl-name="url"
      >
      <description-html>
         <![CDATA[The host url will be of the form
 <pre>https://hostname/nfc/ticket id/</pre>
 The url can be used for both POST requests to a single device and for
 multi-POST requests to multiple devices. A single-POST URL is formed
 by adding the target id to the hostUrl:
   <pre>https://hostname/nfc/ticket id/target id</pre>
 a multi-POST URL looks like
   <pre>https://hostname/nfc/ticket id/multi?targets=id1,id2,id3,...</pre>]]>
      </description-html>
      </property>

            <property name="sslThumbprint" type-id-ref="java.lang.String"
      vmodl-name="sslThumbprint"
      >
      <description-html>
         <![CDATA[SSL thumbprint for the host the URL refers to. Empty if no SSL thumbprint
 is available or needed.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DistributedVirtualSwitchHostMemberRuntimeState"
      type-id="vim.dvs.HostMember.RuntimeState"
      vmodl-name="vim.dvs.HostMember.RuntimeState"
      enclosing-type-id-ref="vim.dvs.HostMember"
      version-id-ref="vim.version.version7"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Runtime state of a host member.]]>
      </description-html>
            <property name="currentMaxProxySwitchPorts" type-id-ref="INT"
      vmodl-name="currentMaxProxySwitchPorts"
      >
      <description-html>
         <![CDATA[Current maximum number of ports allowed to be created in the
 proxy switch.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostReconnectionFailedEvent"
      type-id="vim.event.HostReconnectionFailedEvent"
      vmodl-name="vim.event.HostReconnectionFailedEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.HostEvent"
      >
      <description-html>
         <![CDATA[This event records a failed attempt to re-establish a host connection.]]>
      </description-html>
   </data-object>
   <data-object name="VslmCreateSpecDiskFileBackingSpec"
      type-id="vim.vslm.CreateSpec.DiskFileBackingSpec"
      vmodl-name="vim.vslm.CreateSpec.DiskFileBackingSpec"
      enclosing-type-id-ref="vim.vslm.CreateSpec"
      version-id-ref="vim.version.version11"
      base-type-id="vim.vslm.CreateSpec.BackingSpec"
      >
      <description-html>
         <![CDATA[Specification of the disk file backing of a virtual
 storage object.]]>
      </description-html>
            <property name="provisioningType" type-id-ref="java.lang.String"
      vmodl-name="provisioningType"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Provisioning type.<br>See <a href="vim.vslm.BaseConfigInfo.DiskFileBackingInfo.ProvisioningType.html">BaseConfigInfoDiskFileBackingInfoProvisioningType</a><br>]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VcAgentUpgradeFailedEvent"
      type-id="vim.event.VcAgentUpgradeFailedEvent"
      vmodl-name="vim.event.VcAgentUpgradeFailedEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.HostEvent"
      >
      <description-html>
         <![CDATA[This event records when the VirtualCenter agent on a host failed to upgrade.]]>
      </description-html>
            <property name="reason" type-id-ref="java.lang.String"
      vmodl-name="reason"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The reason why the upgrade failed, if known.
 See <a href="vim.fault.AgentInstallFailed.Reason.html">AgentInstallFailedReason</a>]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualSerialPortOption"
      type-id="vim.vm.device.VirtualSerialPortOption"
      vmodl-name="vim.vm.device.VirtualSerialPortOption"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.device.VirtualDeviceOption"
      >
      <description-html>
         <![CDATA[The <code><a href="vim.vm.device.VirtualSerialPortOption.html">VirtualSerialPortOption</a></code> data object contains the options
  for configuring the virtual serial port device defined by the
  <code><a href="vim.vm.device.VirtualSerialPort.html">VirtualSerialPort</a></code> data object.
  These options include information about how the device is backed
  physically on the host:  by a network socket, a host file, a host serial port device,
  or a pipe to another process.]]>
      </description-html>
            <property name="yieldOnPoll" type-id-ref="vim.option.BoolOption"
      vmodl-name="yieldOnPoll"
      >
      <description-html>
         <![CDATA[Indicates whether the virtual machine supports the CPU yield option during
  virtual serial port polling. When this feature is supported and enabled,
  the virtual machine will periodically relinquish the processor if its
  sole task is polling the virtual serial port.
  <p>
  If <code>yieldOnPoll.supported</code> is <code>false</code>, the virtual
  machine ignores the virtual serial port object setting for
  <code><a href="vim.vm.device.VirtualSerialPort.html#yieldOnPoll">yieldOnPoll</a></code>.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.vm.device.VirtualSerialPortOption.EndPoint</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.device.VirtualSerialPortOption.FileBackingOption</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.device.VirtualSerialPortOption.DeviceBackingOption</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.device.VirtualSerialPortOption.PipeBackingOption</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.device.VirtualSerialPortOption.URIBackingOption</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.device.VirtualSerialPortOption.ThinPrintBackingOption</nested-type-id-ref>
   </data-object>
   <data-object name="ClusterDasFailoverLevelAdvancedRuntimeInfoSlotInfo"
      type-id="vim.cluster.DasFailoverLevelAdvancedRuntimeInfo.SlotInfo"
      vmodl-name="vim.cluster.DasFailoverLevelAdvancedRuntimeInfo.SlotInfo"
      enclosing-type-id-ref="vim.cluster.DasFailoverLevelAdvancedRuntimeInfo"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[A slot represents an amount of memory and cpu resources on a physical host for use
 by a virtual machine. It is used in computing the resources to be reserved for
 failover.]]>
      </description-html>
            <property name="numVcpus" type-id-ref="INT"
      vmodl-name="numVcpus"
      is-deprecated="true"
      >
      <description-html>
         <![CDATA[The number of virtual cpus of a slot is defined as the maximum number of
 virtual cpus any powered on virtual machine has.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 5.0, the number of vcpus is no longer used
 for slot calculations]]>
      </deprecated-html>
      </property>

            <property name="cpuMHz" type-id-ref="INT"
      vmodl-name="cpuMHz"
      >
      <description-html>
         <![CDATA[The cpu speed of a slot is defined as the maximum cpu reservation of any
 powered on virtual machine in the cluster, or any otherwise defined minimum,
 whichever is larger.]]>
      </description-html>
      </property>

            <property name="memoryMB" type-id-ref="INT"
      vmodl-name="memoryMB"
      >
      <description-html>
         <![CDATA[The memory size of a slot is defined as the maximum memory reservation plus
 memory overhead of any powered on virtual machine in the cluster, or any
 otherwise defined minimum, whichever is larger.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ServerStartedSessionEvent"
      type-id="vim.event.ServerStartedSessionEvent"
      vmodl-name="vim.event.ServerStartedSessionEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.SessionEvent"
      >
      <description-html>
         <![CDATA[This event records the starting of the VirtualCenter server.]]>
      </description-html>
   </data-object>
   <data-object name="VirtualMachineFloppyInfo"
      type-id="vim.vm.FloppyInfo"
      vmodl-name="vim.vm.FloppyInfo"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.TargetInfo"
      >
      <description-html>
         <![CDATA[FloppyInfo class contains information about a physical floppy
 drive on the host.]]>
      </description-html>
   </data-object>
   <data-object name="NetIpConfigSpecIpAddressSpec"
      type-id="vim.net.IpConfigSpec.IpAddressSpec"
      vmodl-name="vim.net.IpConfigSpec.IpAddressSpec"
      enclosing-type-id-ref="vim.net.IpConfigSpec"
      version-id-ref="vim.version.version6"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Provides for configuration of IP Addresses.]]>
      </description-html>
            <property name="ipAddress" type-id-ref="java.lang.String"
      vmodl-name="ipAddress"
      >
      <description-html>
         <![CDATA[IPv4 address is specified using
  dotted decimal notation.  For example, "192.0.2.1".
  IPv6 addresses are 128-bit addresses specified as
  eight fields of up to four hexadecimal digits.
  A colon separates each field (:). For example,
  2001:DB8:101::230:6eff:fe04:d9ff. The address can also consist of the
  symbol '::' to represent multiple 16-bit groups of
  contiguous 0's only once in an address as described in RFC 2373.]]>
      </description-html>
      </property>

            <property name="prefixLength" type-id-ref="INT"
      vmodl-name="prefixLength"
      >
      <description-html>
         <![CDATA[Denotes the length of a generic Internet network address
 prefix.
 The prefix length for IPv4 the value range is 0-32.
 For IPv6 prefixLength is a decimal value range 0-128.
 A value of n corresponds to an IP address mask
 that has n contiguous 1-bits from the most significant
 bit (MSB), with all other bits set to 0.
 A value of zero is valid only if the calling context defines
 it.]]>
      </description-html>
      </property>

            <property name="operation" type-id-ref="java.lang.String"
      vmodl-name="operation"
      >
      <description-html>
         <![CDATA[Requires one of: "add" and "remove" or "change"
 See <a href="vim.host.ConfigChange.Operation.html">HostConfigChangeOperation</a>.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ResourcePoolEvent"
      type-id="vim.event.ResourcePoolEvent"
      vmodl-name="vim.event.ResourcePoolEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.Event"
      >
      <description-html>
         <![CDATA[This event is the base class for all resource pool events.]]>
      </description-html>
            <property name="resourcePool" type-id-ref="vim.event.ResourcePoolEventArgument"
      vmodl-name="resourcePool"
      >
      </property>

   </data-object>
   <data-object name="TimedOutHostOperationEvent"
      type-id="vim.event.TimedOutHostOperationEvent"
      vmodl-name="vim.event.TimedOutHostOperationEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.HostEvent"
      >
      <description-html>
         <![CDATA[This event indicates that an operation performed on the host timed out. Typically,
  a previous event in the sequence of events contains more
  information about the cause of the operation timing out.]]>
      </description-html>
   </data-object>
   <data-object name="CryptoManagerKmipClusterStatus"
      type-id="vim.encryption.CryptoManagerKmip.ClusterStatus"
      vmodl-name="vim.encryption.CryptoManagerKmip.ClusterStatus"
      enclosing-type-id-ref="vim.encryption.CryptoManagerKmip"
      version-id-ref="vim.version.version11"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Status of a KMIP cluster.]]>
      </description-html>
            <property name="clusterId" type-id-ref="vim.encryption.KeyProviderId"
      vmodl-name="clusterId"
      >
      <description-html>
         <![CDATA[The ID of the KMIP cluster.]]>
      </description-html>
      </property>

            <property name="overallStatus" type-id-ref="vim.ManagedEntity.Status"
      vmodl-name="overallStatus"
      version-id-ref="vim.version.v7_0"
      is-optional="true"
      >
      <description-html>
         <![CDATA[KMS cluster overall status.]]>
      </description-html>
      </property>

            <property name="managementType" type-id-ref="java.lang.String"
      vmodl-name="managementType"
      version-id-ref="vim.version.v7_0"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Key provider management type.

  See <a href="vim.encryption.KmipClusterInfo.KmsManagementType.html">KmipClusterInfoKmsManagementType</a> for valid values.]]>
      </description-html>
      </property>

            <property name="servers" type-id-ref="vim.encryption.CryptoManagerKmip.ServerStatus"
      vmodl-name="servers"
      is-array="true"
      >
      <description-html>
         <![CDATA[Status of the KMIP servers in this cluster.]]>
      </description-html>
      </property>

            <property name="clientCertInfo" type-id-ref="vim.encryption.CryptoManagerKmip.CertificateInfo"
      vmodl-name="clientCertInfo"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The basic information about the client's certificate.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostFirewallRulesetIpList"
      type-id="vim.host.Ruleset.IpList"
      vmodl-name="vim.host.Ruleset.IpList"
      enclosing-type-id-ref="vim.host.Ruleset"
      version-id-ref="vim.version.version7"
      base-type-id="vmodl.DynamicData"
      >
            <property name="ipAddress" type-id-ref="java.lang.String"
      vmodl-name="ipAddress"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The list of ipAddresses.
  All IPv4 addresses are specified as strings using dotted
  decimal format. For example, "192.0.20.10".
  IPv6 addresses are 128-bit addresses represented
  as eight fields of up to four hexadecimal digits. A colon separates each
  field (:). For example, 2001:DB8:101::230:6eff:fe04:d9ff. The address can
  also consist of  symbol '::' to represent multiple 16-bit groups of
  contiguous 0's only once in an address as described in RFC 2373.]]>
      </description-html>
      </property>

            <property name="ipNetwork" type-id-ref="vim.host.Ruleset.IpNetwork"
      vmodl-name="ipNetwork"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The list of networks]]>
      </description-html>
      </property>

            <property name="allIp" type-id-ref="BOOLEAN"
      vmodl-name="allIp"
      >
      <description-html>
         <![CDATA[Flag indicating whether the ruleset works for all ip addresses.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualCdromIsoBackingOption"
      type-id="vim.vm.device.VirtualCdromOption.IsoBackingOption"
      vmodl-name="vim.vm.device.VirtualCdromOption.IsoBackingOption"
      enclosing-type-id-ref="vim.vm.device.VirtualCdromOption"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.device.VirtualDeviceOption.FileBackingOption"
      >
      <description-html>
         <![CDATA[The VirtualCdromOption.IsoBackingOption data object type contains
  the options for an ISO image backing.]]>
      </description-html>
   </data-object>
   <data-object name="AlarmTriggeringActionTransitionSpec"
      type-id="vim.alarm.AlarmTriggeringAction.TransitionSpec"
      vmodl-name="vim.alarm.AlarmTriggeringAction.TransitionSpec"
      enclosing-type-id-ref="vim.alarm.AlarmTriggeringAction"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Specification indicating which on transitions this action fires.
  The existence of a Spec indicates that this action fires on
  transitions from that Spec's startState to finalState.
  <p>
  There are six acceptable {startState, finalState} pairs:
  {green, yellow}, {green, red}, {yellow, red}, {red, yellow},
  {red, green} and {yellow, green}.
  Direct transitions have precedence over indirect.
  At least one of these pairs must be specified.
  Any deviation from the above will render the enclosing AlarmSpec invalid.]]>
      </description-html>
            <property name="startState" type-id-ref="vim.ManagedEntity.Status"
      vmodl-name="startState"
      >
      <description-html>
         <![CDATA[The state from which the alarm must transition for the action to
  fire.  Valid choices are red, yellow and green.]]>
      </description-html>
      </property>

            <property name="finalState" type-id-ref="vim.ManagedEntity.Status"
      vmodl-name="finalState"
      >
      <description-html>
         <![CDATA[The state to which the alarm must transition for the action to fire.
  Valid choices are red, yellow, and green.]]>
      </description-html>
      </property>

            <property name="repeats" type-id-ref="BOOLEAN"
      vmodl-name="repeats"
      >
      <description-html>
         <![CDATA[Whether or not the action repeats, as per the actionFrequency defined
  in the enclosing Alarm.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="OvfConsumerOstNode"
      type-id="vim.OvfConsumer.OstNode"
      vmodl-name="vim.OvfConsumer.OstNode"
      enclosing-type-id-ref="vim.OvfConsumer"
      version-id-ref="vim.version.version7"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[A node in the OVF section tree.
 <p>
 This class represents a node on which OVF sections can be defined. The possible
 node types are OstNodeType.envelope, OstNodeType.virtualSystem or
 OstNodeType.virtualSystemCollection, corresponding to the identically named OVF
 element types.
 <p>
 Since the node contains a list of children, it can also be regarded as a tree. This
 tree mirrors the structure of the OVF descriptor. It is provided to OVF consumers
 as a more convenient way to navigate and modify the OVF than by working directly on
 the XML.]]>
      </description-html>
            <property name="id" type-id-ref="java.lang.String"
      vmodl-name="id"
      >
      <description-html>
         <![CDATA[The OVF id of the Content (VirtualSystem or VirtualSystemCollection)
 element. Empty on the envelope node.]]>
      </description-html>
      </property>

            <property name="type" type-id-ref="java.lang.String"
      vmodl-name="type"
      >
      <description-html>
         <![CDATA[The type of the node. Possible values are defined in the OstNodeType enum.
 <p>
 Since the OstNode tree structure mirrors the structure of the OVF descriptor,
 only one Envelope node is defined, and it is always the root of the tree.]]>
      </description-html>
      </property>

            <property name="section" type-id-ref="vim.OvfConsumer.OvfSection"
      vmodl-name="section"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The list of sections on this node.]]>
      </description-html>
      </property>

            <property name="child" type-id-ref="vim.OvfConsumer.OstNode"
      vmodl-name="child"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The list of child nodes. As dictated by OVF, this list is subject to the
 following rules:

 <ul>
   <li>The Envelope node must have exactly one child.</li>
   <li>VirtualSystemCollection nodes may have zero or more children.</li>
   <li>VirtualSystem nodes must have no children.</li>
 </ul>]]>
      </description-html>
      </property>

            <property name="entity" type-id-ref="vim.ManagedEntity"
      vmodl-name="entity"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The VM or vApp corresponding to this node.
 <p>
 This field is set when this OstNode represents an existing managed entity.
 <p>
 The entity is unset on nodes of type OstNodeType.envelope.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostDatastoreBrowserSearchResults"
      type-id="vim.host.DatastoreBrowser.SearchResults"
      vmodl-name="vim.host.DatastoreBrowser.SearchResults"
      enclosing-type-id-ref="vim.host.DatastoreBrowser"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object type contains the results of a search method for one datastore. A
  search method typically returns a set of these objects as an array.]]>
      </description-html>
            <property name="datastore" type-id-ref="vim.Datastore"
      vmodl-name="datastore"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Datastore contains the results.]]>
      </description-html>
      </property>

            <property name="folderPath" type-id-ref="java.lang.String"
      vmodl-name="folderPath"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Relative path to the top-level folder.]]>
      </description-html>
      </property>

            <property name="file" type-id-ref="vim.host.DatastoreBrowser.FileInfo"
      vmodl-name="file"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Set of matching files, if any.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualMachineConsolePreferences"
      type-id="vim.vm.ConsolePreferences"
      vmodl-name="vim.vm.ConsolePreferences"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Preferences for the legacy console application that affect the way it behaves during power
 operations on the virtual machine.]]>
      </description-html>
            <property name="powerOnWhenOpened" type-id-ref="BOOLEAN"
      vmodl-name="powerOnWhenOpened"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Power on the virtual machine when it is opened in the console.]]>
      </description-html>
      </property>

            <property name="enterFullScreenOnPowerOn" type-id-ref="BOOLEAN"
      vmodl-name="enterFullScreenOnPowerOn"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Enter full screen mode when this virtual machine is powered on.]]>
      </description-html>
      </property>

            <property name="closeOnPowerOffOrSuspend" type-id-ref="BOOLEAN"
      vmodl-name="closeOnPowerOffOrSuspend"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Close the console application when the virtual machine is powered off
 or suspended.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ClusterDasAdvancedRuntimeInfo"
      type-id="vim.cluster.DasAdvancedRuntimeInfo"
      vmodl-name="vim.cluster.DasAdvancedRuntimeInfo"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Base class for advanced runtime information related to the high
 availability service for a cluster.]]>
      </description-html>
            <property name="dasHostInfo" type-id-ref="vim.cluster.DasHostInfo"
      vmodl-name="dasHostInfo"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The information pertaining to the HA agents on the hosts]]>
      </description-html>
      </property>

            <property name="vmcpSupported" type-id-ref="vim.cluster.DasAdvancedRuntimeInfo.VmcpCapabilityInfo"
      vmodl-name="vmcpSupported"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Whether HA VM Component Protection can be enabled for the cluster.]]>
      </description-html>
      </property>

            <property name="heartbeatDatastoreInfo" type-id-ref="vim.cluster.DasAdvancedRuntimeInfo.HeartbeatDatastoreInfo"
      vmodl-name="heartbeatDatastoreInfo"
      version-id-ref="vim.version.version7"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The map of a datastore to the set of hosts that are using
 the datastore for storage heartbeating.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.cluster.DasAdvancedRuntimeInfo.VmcpCapabilityInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.cluster.DasAdvancedRuntimeInfo.HeartbeatDatastoreInfo</nested-type-id-ref>
   </data-object>
   <data-object name="HostAssignableHardwareConfigAttributeOverride"
      type-id="vim.host.AssignableHardwareConfig.AttributeOverride"
      vmodl-name="vim.host.AssignableHardwareConfig.AttributeOverride"
      enclosing-type-id-ref="vim.host.AssignableHardwareConfig"
      version-id-ref="vim.version.v7_0"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[An AttributeOverride provides a name-value pair that overrides
 for a particular instance node a configurable Attribute defined
 by that device.]]>
      </description-html>
            <property name="instanceId" type-id-ref="java.lang.String"
      vmodl-name="instanceId"
      >
      <description-html>
         <![CDATA[Instance ID of the Assignable Hardware instance node where
 the attribute specified by name is overridden.]]>
      </description-html>
      </property>

            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      >
      <description-html>
         <![CDATA[Name of attribute to override.]]>
      </description-html>
      </property>

            <property name="value" type-id-ref="vmodl.Any"
      vmodl-name="value"
      is-optional="true"
      >
      <description-html>
         <![CDATA[When AssignableHardwareConfig is a returned data object:
 Value returned will always be set.

 When AssignableHardwareConfig is used as a parameter to
 an operation updating Assignable Hardware configuration:
 If value is set, an existing AttributeOverride with matching
 instanceId and name will have its value updated; if there is
 no existing AttributeOverride that matches, a new
 AttributeOverride is created.  The type of the value must match
 the type of the attribute value being overridden.
 If value is not set, an existing AttributeOverride matching
 the specified instanceId and name is deleted.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualMachineDeviceRuntimeInfoDeviceRuntimeState"
      type-id="vim.vm.DeviceRuntimeInfo.DeviceRuntimeState"
      vmodl-name="vim.vm.DeviceRuntimeInfo.DeviceRuntimeState"
      enclosing-type-id-ref="vim.vm.DeviceRuntimeInfo"
      version-id-ref="vim.version.version6"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Runtime state of a device.  Subclassed for information that is specific
  to certain device types.]]>
      </description-html>
   </data-object>
   <data-object name="GuestInfoNamespaceGenerationInfo"
      type-id="vim.vm.GuestInfo.NamespaceGenerationInfo"
      vmodl-name="vim.vm.GuestInfo.NamespaceGenerationInfo"
      enclosing-type-id-ref="vim.vm.GuestInfo"
      version-id-ref="vim.version.version8"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[A data class for the namespace and its corresponding generation number
 The generation number can be used to track updates to the corresponding
 namespace. An update to the generation number indicates that the return
 value of <a href="vim.vm.NamespaceManager.html#fetchEventsFromGuest">FetchEventsFromGuest</a> may have
 changed.]]>
      </description-html>
            <property name="key" type-id-ref="java.lang.String"
      vmodl-name="key"
      >
      <description-html>
         <![CDATA[The namespace name as the unique key.]]>
      </description-html>
      </property>

            <property name="generationNo" type-id-ref="INT"
      vmodl-name="generationNo"
      >
      <description-html>
         <![CDATA[Namespace generation number.  Generation number is changed whenever
 there is new unread event pending from the guest to the VMODL.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VmwareDistributedVirtualSwitchVlanSpec"
      type-id="vim.dvs.VmwareDistributedVirtualSwitch.VlanSpec"
      vmodl-name="vim.dvs.VmwareDistributedVirtualSwitch.VlanSpec"
      enclosing-type-id-ref="vim.dvs.VmwareDistributedVirtualSwitch"
      version-id-ref="vim.version.version5"
      base-type-id="vim.InheritablePolicy"
      >
      <description-html>
         <![CDATA[Base class for Vlan Specifiation for ports.]]>
      </description-html>
   </data-object>
   <data-object name="VmResourceReallocatedEvent"
      type-id="vim.event.VmResourceReallocatedEvent"
      vmodl-name="vim.event.VmResourceReallocatedEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.VmEvent"
      >
      <description-html>
         <![CDATA[This event records a change in resource allocation of a virtual machine.]]>
      </description-html>
            <property name="configChanges" type-id-ref="vim.event.ChangesInfoEventArgument"
      vmodl-name="configChanges"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The configuration values changed during the reconfiguration.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DistributedVirtualSwitchPortConnectee"
      type-id="vim.dvs.PortConnectee"
      vmodl-name="vim.dvs.PortConnectee"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Information about the entity that connects to a DistributedVirtualPort.]]>
      </description-html>
            <property name="connectedEntity" type-id-ref="vim.ManagedEntity"
      vmodl-name="connectedEntity"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The connected entity.
 This property should always be set unless the user's setting
 does not have System.Read privilege on the object referred to
 by this property.]]>
      </description-html>
      </property>

            <property name="nicKey" type-id-ref="java.lang.String"
      vmodl-name="nicKey"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The key of the virtual NIC that connects to this port.]]>
      </description-html>
      </property>

            <property name="type" type-id-ref="java.lang.String"
      vmodl-name="type"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The type of the connectee.
  See <a href="vim.dvs.PortConnectee.ConnecteeType.html">ConnecteeType</a> for valid values.]]>
      </description-html>
      </property>

            <property name="addressHint" type-id-ref="java.lang.String"
      vmodl-name="addressHint"
      is-optional="true"
      >
      <description-html>
         <![CDATA[A hint on address information of the NIC that connects to this port.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.dvs.PortConnectee.ConnecteeType</nested-type-id-ref>
   </data-object>
   <data-object name="HostEnterMaintenanceResult"
      type-id="vim.host.EnterMaintenanceResult"
      vmodl-name="vim.host.EnterMaintenanceResult"
      version-id-ref="vim.version.version12"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[EnterMaintenanceResult is the result returned to the
   <a href="vim.HostSystem.html#queryWhatIfEnterMaintenance">QueryWhatIfEnterMaintenance</a> method.]]>
      </description-html>
            <property name="vmFaults" type-id-ref="vim.FaultsByVM"
      vmodl-name="vmFaults"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[VM specific faults that would prevent host from
 entering maintenance mode.]]>
      </description-html>
      </property>

            <property name="hostFaults" type-id-ref="vim.FaultsByHost"
      vmodl-name="hostFaults"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Host specific faults that would prevent host from
 entering maintenance mode.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostNvmeNamespace"
      type-id="vim.host.NvmeNamespace"
      vmodl-name="vim.host.NvmeNamespace"
      version-id-ref="vim.version.v7_0"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object represents an NVM Express Namespace.
  <p>
  In the NVME model, the underlying non-volatile storage medium
  is exposed via namespaces. For further information, see:
  <ul>
  <li>"NVM Express over Fabrics 1.0", Section 1.5.2,
  "NVM Subsystem".</li>
  <li>"NVM Express 1.3", section 6.1, "Namespaces".</li>
  </ul>]]>
      </description-html>
            <property name="key" type-id-ref="java.lang.String"
      vmodl-name="key"
      >
      <description-html>
         <![CDATA[The linkable identifier.
  <p>
  This is a unique identifier of the NVME namespace within
  the host system.]]>
      </description-html>
      </property>

            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      >
      <description-html>
         <![CDATA[The name of the namespace.
  <p>
  The name identifies the underlying storage exposed
  by the NvmeNamespace. In multipath scenarios, two
  namespaces can have the same name if they expose the
  same underlying storage through different NVME controllers.]]>
      </description-html>
      </property>

            <property name="id" type-id-ref="INT"
      vmodl-name="id"
      >
      <description-html>
         <![CDATA[The namespace ID is an identifier used by an NVME controller
  to provide access to a namespace.
  <p>
  The namespace ID is only unique among the namespaces
  attached to the same controller. For details, see:
  <ul>
  <li>"NVM Express 1.3", section 6.1, "Namespaces".</li>
  </ul>]]>
      </description-html>
      </property>

            <property name="blockSize" type-id-ref="INT"
      vmodl-name="blockSize"
      >
      <description-html>
         <![CDATA[Block size of the namespace in bytes.
  <p>
  Namespaces are comprised of a number of logical blocks with
  a fixed size - the smallest units of data that may be
  read or written by the NVME controller.]]>
      </description-html>
      </property>

            <property name="capacityInBlocks" type-id-ref="LONG"
      vmodl-name="capacityInBlocks"
      >
      <description-html>
         <![CDATA[The maximum number of logical blocks that may be allocated
  in the namespace at any point in time.
  <p>
  Corresponds to the NCAP field in the Identify Namespace data
  structure:
  <ul>
  <li>"NVM Express 1.3", Section 5.15, Figure 114,
  "Identify Namespace Data Structure"</li>
  </ul>]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="vslmInfrastructureObjectPolicy"
      type-id="vim.vslm.InfrastructureObjectPolicy"
      vmodl-name="vim.vslm.InfrastructureObjectPolicy"
      version-id-ref="vim.version.version12"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The data object type describes improved virtual disk infrastructure namespace
 storage policy details.]]>
      </description-html>
            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      >
      </property>

            <property name="backingObjectId" type-id-ref="java.lang.String"
      vmodl-name="backingObjectId"
      >
      </property>

            <property name="profileId" type-id-ref="java.lang.String"
      vmodl-name="profileId"
      >
      </property>

            <property name="error" type-id-ref="vmodl.LocalizedMethodFault"
      vmodl-name="error"
      is-optional="true"
      >
      </property>

   </data-object>
   <data-object name="StoragePlacementAction"
      type-id="vim.storageDrs.StoragePlacementAction"
      vmodl-name="vim.storageDrs.StoragePlacementAction"
      version-id-ref="vim.version.version7"
      base-type-id="vim.cluster.Action"
      >
      <description-html>
         <![CDATA[Describes a single storage initial placement action for placing a virtual
 machine or a set of virtual disks on a datastore.
 <p>]]>
      </description-html>
            <property name="vm" type-id-ref="vim.VirtualMachine"
      vmodl-name="vm"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Virtual machine reference.
  It is possible that the VM has not been created, in which case,
  this property is left unset.]]>
      </description-html>
      </property>

            <property name="relocateSpec" type-id-ref="vim.vm.RelocateSpec"
      vmodl-name="relocateSpec"
      >
      <description-html>
         <![CDATA[Specification for placing a virtual machine or a set of virtual disks
  to a datastore.]]>
      </description-html>
      </property>

            <property name="destination" type-id-ref="vim.Datastore"
      vmodl-name="destination"
      >
      <description-html>
         <![CDATA[Target datastore.]]>
      </description-html>
      </property>

            <property name="spaceUtilBefore" type-id-ref="FLOAT"
      vmodl-name="spaceUtilBefore"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Current space utilization on the target datastore.
  Unit: percentage. For example, if set to 70.0, space utilization is 70%.
  If not set, the value is not available.]]>
      </description-html>
      </property>

            <property name="spaceDemandBefore" type-id-ref="FLOAT"
      vmodl-name="spaceDemandBefore"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Current space demand on the target datastore.
  Unit: percentage. For example, if set to 70.0, space demand is 70%. This
  value include the space demanded by thin provisioned VMs. Hence, it may
  be higher than 100%. If not set, the value is not available.]]>
      </description-html>
      </property>

            <property name="spaceUtilAfter" type-id-ref="FLOAT"
      vmodl-name="spaceUtilAfter"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Space utilization on the target datastore after placing the virtual disk.
  Unit: percentage. For example, if set to 70.0, space utilization is 70%.
  If not set, the value is not available.]]>
      </description-html>
      </property>

            <property name="spaceDemandAfter" type-id-ref="FLOAT"
      vmodl-name="spaceDemandAfter"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Space demand on the target datastore after placing the virtual disk.
  Unit: percentage. For example, if set to 70.0, space demand is 70%. This
  value include the space demanded by thin provisioned VMs. Hence, it may
  be higher than 100%. If not set, the value is not available.]]>
      </description-html>
      </property>

            <property name="ioLatencyBefore" type-id-ref="FLOAT"
      vmodl-name="ioLatencyBefore"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Current I/O latency on the target datastore.
  Unit: millisecond.
  If not set, the value is not available.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="PassiveNodeNetworkSpec"
      type-id="vim.vcha.FailoverClusterConfigurator.PassiveNodeNetworkSpec"
      vmodl-name="vim.vcha.FailoverClusterConfigurator.PassiveNodeNetworkSpec"
      enclosing-type-id-ref="vim.vcha.FailoverClusterConfigurator"
      version-id-ref="vim.version.version11"
      base-type-id="vim.vcha.FailoverClusterConfigurator.NodeNetworkSpec"
      >
      <description-html>
         <![CDATA[The PassiveNodeNetworkSpec class defines VCHA Failover and Cluster
 network configuration of the Passive node VM in the VCHA Cluster.]]>
      </description-html>
            <property name="failoverIpSettings" type-id-ref="vim.vm.customization.IPSettings"
      vmodl-name="failoverIpSettings"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Failover IP address that this node must assume after the failover
 to serve client requests. If not specified, it will assume the public
 IP address of the Active vCenter Server.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VmfsUnmapBandwidthSpec"
      type-id="vim.host.VmfsVolume.UnmapBandwidthSpec"
      vmodl-name="vim.host.VmfsVolume.UnmapBandwidthSpec"
      enclosing-type-id-ref="vim.host.VmfsVolume"
      version-id-ref="vim.version.version12"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[VMFS unmap reclaims unused storage space. This data object type
 describes the specification of VMFS unmap bandwidth.]]>
      </description-html>
            <property name="policy" type-id-ref="java.lang.String"
      vmodl-name="policy"
      >
      <description-html>
         <![CDATA[This property determines the unmap bandwidth policy.
  See <a href="vim.host.VmfsVolume.UnmapBandwidthPolicy.html">HostVmfsVolumeUnmapBandwidthPolicy</a> for supported
  values. If not specified, the default value is
  vim.host.VmfsVolume.UnmapBandwidthPolicy#fixed, which means
  unmap is processed at a fixed rate.]]>
      </description-html>
      </property>

            <property name="fixedValue" type-id-ref="LONG"
      vmodl-name="fixedValue"
      >
      <description-html>
         <![CDATA[This property determines the bandwidth under the fixed policy.]]>
      </description-html>
      </property>

            <property name="dynamicMin" type-id-ref="LONG"
      vmodl-name="dynamicMin"
      >
      <description-html>
         <![CDATA[This property determines the lower limits of the unmap bandwidth
  under the dynamic policy.]]>
      </description-html>
      </property>

            <property name="dynamicMax" type-id-ref="LONG"
      vmodl-name="dynamicMax"
      >
      <description-html>
         <![CDATA[This property determines the upper limits of the unmap bandwidth
  under the dynamic policy.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="PropertyFilterUpdate"
      type-id="vmodl.query.PropertyCollector.FilterUpdate"
      vmodl-name="vmodl.query.PropertyCollector.FilterUpdate"
      enclosing-type-id-ref="vmodl.query.PropertyCollector"
      version-id-ref="vmodl.query.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The <a href="vmodl.query.PropertyCollector.FilterUpdate.html">PropertyFilterUpdate</a> data object type contains a
  list of updates to data visible through a specific filter. Note that if a
  property changes through multiple filters, then a client receives an
  update for each filter.]]>
      </description-html>
            <property name="filter" type-id-ref="vmodl.query.PropertyCollector.Filter"
      vmodl-name="filter"
      >
      <description-html>
         <![CDATA[Filter that was updated.]]>
      </description-html>
      </property>

            <property name="objectSet" type-id-ref="vmodl.query.PropertyCollector.ObjectUpdate"
      vmodl-name="objectSet"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Set of changes to object properties in the filter.]]>
      </description-html>
      </property>

            <property name="missingSet" type-id-ref="vmodl.query.PropertyCollector.MissingObject"
      vmodl-name="missingSet"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Objects that could not be found on the server, but were specified in a
  <a href="vmodl.query.PropertyCollector.FilterSpec.html#objectSet">objectSet</a>.

  <p> This field will only be populated for objects that were determined
  to be missing since the data version passed to <a href="vmodl.query.PropertyCollector.html#checkForUpdates">CheckForUpdates</a>, <a href="vmodl.query.PropertyCollector.html#waitForUpdates">WaitForUpdates</a>, or <a href="vmodl.query.PropertyCollector.html#waitForUpdatesEx">WaitForUpdatesEx</a> and will not contain objects that were missing
  prior to that data version.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostSystemIdentificationInfo"
      type-id="vim.host.SystemIdentificationInfo"
      vmodl-name="vim.host.SystemIdentificationInfo"
      version-id-ref="vim.version.version2"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object describes system identifying information of the host. This
  information may be vendor specific.]]>
      </description-html>
            <property name="identifierValue" type-id-ref="java.lang.String"
      vmodl-name="identifierValue"
      >
      <description-html>
         <![CDATA[The system identification information]]>
      </description-html>
      </property>

            <property name="identifierType" type-id-ref="vim.ElementDescription"
      vmodl-name="identifierType"
      is-localizable="true"
      >
      <description-html>
         <![CDATA[The description of the identifying information.<br>See <a href="vim.host.SystemIdentificationInfo.Identifier.html">HostSystemIdentificationInfoIdentifier</a><br>]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.host.SystemIdentificationInfo.Identifier</nested-type-id-ref>
   </data-object>
   <data-object name="VirtualMachineDefaultPowerOpInfo"
      type-id="vim.vm.DefaultPowerOpInfo"
      vmodl-name="vim.vm.DefaultPowerOpInfo"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The DefaultPowerOpInfo data object type holds the configured defaults for the power
 operations on a virtual machine. The properties indicated whether to do a "soft"
 or guest initiated operation, or a "hard" operation.]]>
      </description-html>
            <property name="powerOffType" type-id-ref="java.lang.String"
      vmodl-name="powerOffType"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Describes the default power off type for this virtual machine.
 The possible values are specified by the PowerOpType.
 <ul>
 <li> hard - Perform power off by using the PowerOff method.
 <li> soft - Perform power off by using the ShutdownGuest method.
 <li> preset - The preset value is specified in the defaultPowerOffType
      section.
 </ul>
 This setting is advisory and clients can choose to ignore it.]]>
      </description-html>
      </property>

            <property name="suspendType" type-id-ref="java.lang.String"
      vmodl-name="suspendType"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Describes the default suspend type for this virtual machine.
 The possible values are specified by the PowerOpType.
 <ul>
 <li> hard - Perform suspend by using the Suspend method.
 <li> soft - Perform suspend by using the StandbyGuest method.
 <li> preset - The preset value is specified in the defaultSuspendType
      section.
 </ul>
 This setting is advisory and clients can choose to ignore it.]]>
      </description-html>
      </property>

            <property name="resetType" type-id-ref="java.lang.String"
      vmodl-name="resetType"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Describes the default reset type for this virtual machine.
 The possible values are specified by the PowerOpType.
 <ul>
 <li> hard - Perform reset by using the Reset method.
 <li> soft - Perform reset by using the RebootGuest method.
 <li> preset - The preset value is specified in the defaultResetType
      section.
 </ul>
 This setting is advisory and clients can choose to ignore it.]]>
      </description-html>
      </property>

            <property name="defaultPowerOffType" type-id-ref="java.lang.String"
      vmodl-name="defaultPowerOffType"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Default operation for power off: soft or hard]]>
      </description-html>
      </property>

            <property name="defaultSuspendType" type-id-ref="java.lang.String"
      vmodl-name="defaultSuspendType"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Default operation for suspend: soft or hard]]>
      </description-html>
      </property>

            <property name="defaultResetType" type-id-ref="java.lang.String"
      vmodl-name="defaultResetType"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Default operation for reset: soft or hard]]>
      </description-html>
      </property>

            <property name="standbyAction" type-id-ref="java.lang.String"
      vmodl-name="standbyAction"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Behavior of virtual machine when it receives the S1 ACPI call.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.vm.DefaultPowerOpInfo.PowerOpType</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.DefaultPowerOpInfo.StandbyActionType</nested-type-id-ref>
   </data-object>
   <data-object name="VmNvramFileQuery"
      type-id="vim.host.DatastoreBrowser.VmNvramQuery"
      vmodl-name="vim.host.DatastoreBrowser.VmNvramQuery"
      enclosing-type-id-ref="vim.host.DatastoreBrowser"
      version-id-ref="vim.version.version1"
      base-type-id="vim.host.DatastoreBrowser.Query"
      >
      <description-html>
         <![CDATA[This data object type describes the query specification for a non-volatile memory
  file.]]>
      </description-html>
   </data-object>
   <data-object name="VmConfigInfo"
      type-id="vim.vApp.VmConfigInfo"
      vmodl-name="vim.vApp.VmConfigInfo"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[VM Configuration.]]>
      </description-html>
            <property name="product" type-id-ref="vim.vApp.ProductInfo"
      vmodl-name="product"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Information about the package content.]]>
      </description-html>
      </property>

            <property name="property" type-id-ref="vim.vApp.PropertyInfo"
      vmodl-name="property"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of properties]]>
      </description-html>
      </property>

            <property name="ipAssignment" type-id-ref="vim.vApp.IPAssignmentInfo"
      vmodl-name="ipAssignment"
      >
      <description-html>
         <![CDATA[IP assignment policy and DHCP support configuration.]]>
      </description-html>
      </property>

            <property name="eula" type-id-ref="java.lang.String"
      vmodl-name="eula"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[End User Liceses Agreements.]]>
      </description-html>
      </property>

            <property name="ovfSection" type-id-ref="vim.vApp.OvfSectionInfo"
      vmodl-name="ovfSection"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of uninterpreted OVF meta-data sections.]]>
      </description-html>
      </property>

            <property name="ovfEnvironmentTransport" type-id-ref="java.lang.String"
      vmodl-name="ovfEnvironmentTransport"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List the transports to use for properties. Supported values are: iso and
 com.vmware.guestInfo.]]>
      </description-html>
      </property>

            <property name="installBootRequired" type-id-ref="BOOLEAN"
      vmodl-name="installBootRequired"
      >
      <description-html>
         <![CDATA[Specifies whether the VM needs an initial boot before the deployment is complete.
 <p>
 Not relevant for vApps. This means that the value is always false when reading the
 configuration and is ignored when setting the configuration.
 <p>
 If a vApp requires an install boot (because one of its VMs does), this is visible
 on the <a href="vim.VirtualApp.Summary.html#installBootRequired">installBootRequired</a> field of the vApp.]]>
      </description-html>
      </property>

            <property name="installBootStopDelay" type-id-ref="INT"
      vmodl-name="installBootStopDelay"
      >
      <description-html>
         <![CDATA[Specifies the delay in seconds to wait for the VM to power off after the initial
 boot (used only if installBootRequired is true). A value of 0 means wait forever.
 <p>
 Not relevant for vApps. This means that the value is always false when reading the
 configuration and is ignored when setting the configuration.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="CustomizationName"
      type-id="vim.vm.customization.NameGenerator"
      vmodl-name="vim.vm.customization.NameGenerator"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[A base object type for a virtual machine name that can be either fixed or
  auto-generated.]]>
      </description-html>
   </data-object>
   <data-object name="VmRegisteredEvent"
      type-id="vim.event.VmRegisteredEvent"
      vmodl-name="vim.event.VmRegisteredEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.VmEvent"
      >
      <description-html>
         <![CDATA[This event records that a virtual machine was successfully registered.]]>
      </description-html>
   </data-object>
   <data-object name="HostNvmeTransportParameters"
      type-id="vim.host.NvmeTransportParameters"
      vmodl-name="vim.host.NvmeTransportParameters"
      version-id-ref="vim.version.v7_0"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object represents the transport specific parameters
  necessary to establish an NVM Express over Fabrics connection.
  <p>
  For some further information, see:
  <ul>
  <li>"NVM Express over Fabrics 1.0", Section 1.5.7, "Connection"</li>
  </ul>]]>
      </description-html>
      <nested-type-id-ref>vim.host.NvmeTransportParameters.NvmeAddressFamily</nested-type-id-ref>
   </data-object>
   <data-object name="NetBIOSConfigInfo"
      type-id="vim.net.NetBIOSConfigInfo"
      vmodl-name="vim.net.NetBIOSConfigInfo"
      version-id-ref="vim.version.version6"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object type describes the NetBIOS configuration of
  an operating system.]]>
      </description-html>
            <property name="mode" type-id-ref="java.lang.String"
      vmodl-name="mode"
      >
      <description-html>
         <![CDATA[NetBIOS configuration mode. The supported values are described by
 <a href="vim.net.NetBIOSConfigInfo.Mode.html">NetBIOSConfigInfoMode</a>.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.net.NetBIOSConfigInfo.Mode</nested-type-id-ref>
   </data-object>
   <data-object name="VirtualMachineBootOptionsBootableFloppyDevice"
      type-id="vim.vm.BootOptions.BootableFloppyDevice"
      vmodl-name="vim.vm.BootOptions.BootableFloppyDevice"
      enclosing-type-id-ref="vim.vm.BootOptions"
      version-id-ref="vim.version.version7"
      base-type-id="vim.vm.BootOptions.BootableDevice"
      >
      <description-html>
         <![CDATA[Bootable floppy disk.]]>
      </description-html>
   </data-object>
   <data-object name="VirtualMachineSriovDevicePoolInfo"
      type-id="vim.vm.SriovDevicePoolInfo"
      vmodl-name="vim.vm.SriovDevicePoolInfo"
      version-id-ref="vim.version.version11"
      base-type-id="vmodl.DynamicData"
      >
            <property name="key" type-id-ref="java.lang.String"
      vmodl-name="key"
      >
      <description-html>
         <![CDATA[To be used for extending to other device types]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostSpecificationChangedEvent"
      type-id="vim.event.HostSpecificationChangedEvent"
      vmodl-name="vim.event.HostSpecificationChangedEvent"
      version-id-ref="vim.version.version11"
      base-type-id="vim.event.HostEvent"
      >
      <description-html>
         <![CDATA[This event records that the host specification was changed.]]>
      </description-html>
   </data-object>
   <data-object name="HostGraphicsInfo"
      type-id="vim.host.GraphicsInfo"
      vmodl-name="vim.host.GraphicsInfo"
      version-id-ref="vim.version.version9"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object type describes information about a single
  graphics device.]]>
      </description-html>
            <property name="deviceName" type-id-ref="java.lang.String"
      vmodl-name="deviceName"
      >
      <description-html>
         <![CDATA[The device name.]]>
      </description-html>
      </property>

            <property name="vendorName" type-id-ref="java.lang.String"
      vmodl-name="vendorName"
      >
      <description-html>
         <![CDATA[The vendor name.]]>
      </description-html>
      </property>

            <property name="pciId" type-id-ref="java.lang.String"
      vmodl-name="pciId"
      >
      <description-html>
         <![CDATA[PCI ID of this device composed of "bus:slot.function".]]>
      </description-html>
      </property>

            <property name="graphicsType" type-id-ref="java.lang.String"
      vmodl-name="graphicsType"
      >
      <description-html>
         <![CDATA[Graphics type (@see GraphicsType).]]>
      </description-html>
      </property>

            <property name="memorySizeInKB" type-id-ref="LONG"
      vmodl-name="memorySizeInKB"
      >
      <description-html>
         <![CDATA[Memory capacity of graphics device or zero if not available.]]>
      </description-html>
      </property>

            <property name="vm" type-id-ref="vim.VirtualMachine"
      vmodl-name="vm"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Virtual machines using this graphics device.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.host.GraphicsInfo.GraphicsType</nested-type-id-ref>
   </data-object>
   <data-object name="ClusterRuleSpec"
      type-id="vim.cluster.RuleSpec"
      vmodl-name="vim.cluster.RuleSpec"
      version-id-ref="vim.version.version1"
      base-type-id="vim.option.ArrayUpdateSpec"
      >
      <description-html>
         <![CDATA[An incremental update to the cluster rules.]]>
      </description-html>
            <property name="info" type-id-ref="vim.cluster.RuleInfo"
      vmodl-name="info"
      is-optional="true"
      >
      </property>

   </data-object>
   <data-object name="DatastoreFileMovedEvent"
      type-id="vim.event.DatastoreFileMovedEvent"
      vmodl-name="vim.event.DatastoreFileMovedEvent"
      version-id-ref="vim.version.version5"
      base-type-id="vim.event.DatastoreFileEvent"
      >
      <description-html>
         <![CDATA[This event records move of a file or directory.]]>
      </description-html>
            <property name="sourceDatastore" type-id-ref="vim.event.DatastoreEventArgument"
      vmodl-name="sourceDatastore"
      >
      <description-html>
         <![CDATA[Source datastore.]]>
      </description-html>
      </property>

            <property name="sourceFile" type-id-ref="java.lang.String"
      vmodl-name="sourceFile"
      >
      <description-html>
         <![CDATA[Datastore path of the source file or directory.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostIpToShortNameFailedEvent"
      type-id="vim.event.HostIpToShortNameFailedEvent"
      vmodl-name="vim.event.HostIpToShortNameFailedEvent"
      version-id-ref="vim.version.version2"
      is-deprecated="true"
      base-type-id="vim.event.HostEvent"
      >
      <description-html>
         <![CDATA[This event records that the host's IP address could not be resolved to a short name.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 5.0, the event is no longer relevant.]]>
      </deprecated-html>
   </data-object>
   <data-object name="HostDatastoreSystemVvolDatastoreSpec"
      type-id="vim.host.DatastoreSystem.VvolDatastoreSpec"
      vmodl-name="vim.host.DatastoreSystem.VvolDatastoreSpec"
      enclosing-type-id-ref="vim.host.DatastoreSystem"
      version-id-ref="vim.version.version10"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Specification for creating Virtual Volumed based datastore.]]>
      </description-html>
            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      >
      <description-html>
         <![CDATA[Name of the datastore.]]>
      </description-html>
      </property>

            <property name="scId" type-id-ref="java.lang.String"
      vmodl-name="scId"
      >
      <description-html>
         <![CDATA[Storage contained Id. This is used to retrieve configuration of the
  storage container from SMS.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostProfileAppliedEvent"
      type-id="vim.event.HostProfileAppliedEvent"
      vmodl-name="vim.event.HostProfileAppliedEvent"
      version-id-ref="vim.version.version5"
      base-type-id="vim.event.HostEvent"
      >
      <description-html>
         <![CDATA[This event records that a Profile application was done
 on the host]]>
      </description-html>
            <property name="profile" type-id-ref="vim.event.ProfileEventArgument"
      vmodl-name="profile"
      >
      <description-html>
         <![CDATA[Link to the profile which was applied]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="CreateTaskAction"
      type-id="vim.action.CreateTaskAction"
      vmodl-name="vim.action.CreateTaskAction"
      version-id-ref="vim.version.version2"
      base-type-id="vim.action.Action"
      >
      <description-html>
         <![CDATA[This data object type specifies the type of task to be created
  when this action is triggered.]]>
      </description-html>
            <property name="taskTypeId" type-id-ref="java.lang.String"
      vmodl-name="taskTypeId"
      >
      <description-html>
         <![CDATA[Extension registered task type identifier
  for type of task being created.]]>
      </description-html>
      </property>

            <property name="cancelable" type-id-ref="BOOLEAN"
      vmodl-name="cancelable"
      >
      <description-html>
         <![CDATA[Whether the task should be cancelable.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="BaseConfigInfoFileBackingInfo"
      type-id="vim.vslm.BaseConfigInfo.FileBackingInfo"
      vmodl-name="vim.vslm.BaseConfigInfo.FileBackingInfo"
      enclosing-type-id-ref="vim.vslm.BaseConfigInfo"
      version-id-ref="vim.version.version11"
      base-type-id="vim.vslm.BaseConfigInfo.BackingInfo"
      >
      <description-html>
         <![CDATA[Information for file backing of a virtual storage
 object. File backing is mainly used for virtual disks.]]>
      </description-html>
            <property name="filePath" type-id-ref="java.lang.String"
      vmodl-name="filePath"
      >
      <description-html>
         <![CDATA[Full file path for the host file used in this backing.]]>
      </description-html>
      </property>

            <property name="backingObjectId" type-id-ref="java.lang.String"
      vmodl-name="backingObjectId"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Id refers to the backed storage object where the virtual storage object
 is backed on.]]>
      </description-html>
      </property>

            <property name="parent" type-id-ref="vim.vslm.BaseConfigInfo.FileBackingInfo"
      vmodl-name="parent"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The parent of this virtual disk file, if this is a delta disk backing.
 This will be unset if this is the root disk backing.
 <p>
 Note that the type of the backing is consistent throughout the chain;
 any new delta disk backing which is added is of the same type as the
 original disk. Also note that since the parent backing is not being
 written to, it is possible that the parent backing may be shared among
 multiple disks.
 <p>
  Only raw disk mappings in
  virtual compatibility mode can have parents.]]>
      </description-html>
      </property>

            <property name="deltaSizeInMB" type-id-ref="LONG"
      vmodl-name="deltaSizeInMB"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Size allocated by the FS for this file/chain/link/extent only.
 This property is used only for a delta disk whose
 FileBackingInfo#parent is set.]]>
      </description-html>
      </property>

            <property name="keyId" type-id-ref="vim.encryption.CryptoKeyId"
      vmodl-name="keyId"
      version-id-ref="vim.version.v7_0"
      is-optional="true"
      >
      <description-html>
         <![CDATA[key id used to encrypt the backing disk.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostAuthenticationManagerInfo"
      type-id="vim.host.AuthenticationManagerInfo"
      vmodl-name="vim.host.AuthenticationManagerInfo"
      version-id-ref="vim.version.version6"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The <a href="vim.host.AuthenticationManagerInfo.html">HostAuthenticationManagerInfo</a> data object provides
  access to authentication information for the ESX host.]]>
      </description-html>
            <property name="authConfig" type-id-ref="vim.host.AuthenticationStoreInfo"
      vmodl-name="authConfig"
      is-array="true"
      >
      <description-html>
         <![CDATA[An array containing entries for local authentication and host
 Active Directory authentication.
  <ul>
    <li><a href="vim.host.LocalAuthenticationInfo.html">HostLocalAuthenticationInfo</a> - Local authentication is always enabled.</li>
    <li> <a href="vim.host.ActiveDirectoryInfo.html">HostActiveDirectoryInfo</a> - Host Active Directory authentication information
        includes the name of the domain, membership status,
        and a list of other domains trusted by the membership domain.
    </li>
  </ul>]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VsanNewPolicyBatch"
      type-id="vim.host.VsanInternalSystem.NewPolicyBatch"
      vmodl-name="vim.host.VsanInternalSystem.NewPolicyBatch"
      enclosing-type-id-ref="vim.host.VsanInternalSystem"
      version-id-ref="vim.version.version9"
      internal-before-version-id-ref="vim.version.version10"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[NewPolicyBatch --

    Structure to specify a list of object sizes and a policy for what-if
    analysis.]]>
      </description-html>
            <property name="size" type-id-ref="LONG"
      vmodl-name="size"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Size (in bytes) of the objects.]]>
      </description-html>
      </property>

            <property name="policy" type-id-ref="java.lang.String"
      vmodl-name="policy"
      is-optional="true"
      >
      <description-html>
         <![CDATA[New policy in SPBM or VSAN expression format.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VmfsConfigOption"
      type-id="vim.host.VmfsVolume.ConfigOption"
      vmodl-name="vim.host.VmfsVolume.ConfigOption"
      enclosing-type-id-ref="vim.host.VmfsVolume"
      version-id-ref="vim.version.version11"
      base-type-id="vmodl.DynamicData"
      >
            <property name="blockSizeOption" type-id-ref="INT"
      vmodl-name="blockSizeOption"
      >
      <description-html>
         <![CDATA[Supported values of VMFS block size in kilobytes (KB)
 <a href="vim.host.VmfsVolume.html#blockSize">blockSize</a>.]]>
      </description-html>
      </property>

            <property name="unmapGranularityOption" type-id-ref="INT"
      vmodl-name="unmapGranularityOption"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Supported values of VMFS unmap granularity
 <a href="vim.host.VmfsVolume.html#unmapGranularity">unmapGranularity</a>.
 The unit is KB.]]>
      </description-html>
      </property>

            <property name="unmapBandwidthFixedValue" type-id-ref="vim.option.LongOption"
      vmodl-name="unmapBandwidthFixedValue"
      version-id-ref="vim.version.version12"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Fixed unmap bandwidth min/max/default value]]>
      </description-html>
      </property>

            <property name="unmapBandwidthDynamicMin" type-id-ref="vim.option.LongOption"
      vmodl-name="unmapBandwidthDynamicMin"
      version-id-ref="vim.version.version12"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Dynamic unmap bandwidth lower limit min/max/default value.]]>
      </description-html>
      </property>

            <property name="unmapBandwidthDynamicMax" type-id-ref="vim.option.LongOption"
      vmodl-name="unmapBandwidthDynamicMax"
      version-id-ref="vim.version.version12"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Dynamic unmap bandwitdth upper limit min/max/default value.]]>
      </description-html>
      </property>

            <property name="unmapBandwidthIncrement" type-id-ref="LONG"
      vmodl-name="unmapBandwidthIncrement"
      version-id-ref="vim.version.version12"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Increment value of unmap bandwidth]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualUSBRemoteHostBackingInfo"
      type-id="vim.vm.device.VirtualUSB.RemoteHostBackingInfo"
      vmodl-name="vim.vm.device.VirtualUSB.RemoteHostBackingInfo"
      enclosing-type-id-ref="vim.vm.device.VirtualUSB"
      version-id-ref="vim.version.version6"
      base-type-id="vim.vm.device.VirtualDevice.DeviceBackingInfo"
      >
      <description-html>
         <![CDATA[The <a href="vim.vm.device.VirtualUSB.RemoteHostBackingInfo.html">VirtualUSBRemoteHostBackingInfo</a> data object
 identifies a host and a USB device that is attached to the host.
 Use this object to configure support for persistent access to the USB device
 when vMotion operations migrate a virtual machine to a different host.
 The vCenter Server will not migrate the virtual machine to a host
 that does not support the USB remote host backing capability.
 <p>
 Specify remote host backing as part of the USB device configuration
 when you create or reconfigure a virtual machine
 (<a href="vim.vm.ConfigSpec.html">VirtualMachineConfigSpec</a>.<a href="vim.vm.ConfigSpec.html#deviceChange">deviceChange</a>.<a href="vim.vm.device.VirtualDeviceSpec.html#device">device</a>.<a href="vim.vm.device.VirtualDevice.html#backing">backing</a>).
 <p>
 To identify the USB device, you specify an autoconnect pattern
 for the <a href="vim.vm.device.VirtualDevice.DeviceBackingInfo.html#deviceName">deviceName</a>.
 The virtual machine can connect to the USB device if the ESX server
 can find a USB device described by the autoconnect pattern.
 The autoconnect pattern consists of name:value pairs. You can
 use any combination of the following fields.
 <ul>
 <li>path - USB connection path on the host</li>
 <li>pid - idProduct field in the USB device descriptor</li>
 <li>vid - idVendor field in the USB device descriptor</li>
 <li>hostId - unique ID for the host</li>
 <li>speed - device speed (low, full, or high)</li>
 </ul>
 <p>
 For example, the following pattern identifies a USB device:
 <p>
 &nbsp;&nbsp;&nbsp;&nbsp;<code>"path:1/3/0 hostId:44\ 45\ 4c\ 43\ 00\ 10\ 54-80\ 35\ ca\ c0\ 4f\ 4d\ 37\ 31"</code>
 <p>
 This pattern identifies the USB device connected to port 1/3/0 on the
 host with the unique id <code>0x44454c4c430010548035cac04f4d3731</code>.
 <p>
 Special characters for autoconnect pattern values:
 <ul>
 <li>The name and value are separated by a colon (:).</li>
 <li>Name:value pairs are separated by spaces. </li>
 <li>The escape character is a backslash (\). Use a single backslash to embed
 a space in a value. Use a double blackslash to embed a single backslash
 in the value.</li>
 </ul>]]>
      </description-html>
            <property name="hostname" type-id-ref="java.lang.String"
      vmodl-name="hostname"
      >
      <description-html>
         <![CDATA[Name of the ESX host to which the physical USB device is attached
  (<a href="vim.HostSystem.html">HostSystem</a>.<a href="vim.ManagedEntity.html#name">Name</a>).
  When you configure remote host backing, hostname must identify
  the local host on which the virtual machine is running.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ClusterHostInfraUpdateHaModeAction"
      type-id="vim.cluster.HostInfraUpdateHaModeAction"
      vmodl-name="vim.cluster.HostInfraUpdateHaModeAction"
      version-id-ref="vim.version.version11"
      base-type-id="vim.cluster.Action"
      >
      <description-html>
         <![CDATA[Describes a HostSystem's quarantine or maintenance mode change action.]]>
      </description-html>
            <property name="operationType" type-id-ref="java.lang.String"
      vmodl-name="operationType"
      >
      <description-html>
         <![CDATA[Specify the action type. Values are of type
 <a href="vim.cluster.HostInfraUpdateHaModeAction.OperationType.html">OperationType</a>.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.cluster.HostInfraUpdateHaModeAction.OperationType</nested-type-id-ref>
   </data-object>
   <data-object name="HostParallelScsiTargetTransport"
      type-id="vim.host.ParallelScsiTargetTransport"
      vmodl-name="vim.host.ParallelScsiTargetTransport"
      version-id-ref="vim.version.version1"
      base-type-id="vim.host.TargetTransport"
      >
      <description-html>
         <![CDATA[Parallel SCSI transport information about a SCSI target.]]>
      </description-html>
   </data-object>
   <data-object name="VirtualHardwareOption"
      type-id="vim.vm.VirtualHardwareOption"
      vmodl-name="vim.vm.VirtualHardwareOption"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The VirtualHardwareOption data object contains the options available
  for all virtual devices.]]>
      </description-html>
            <property name="hwVersion" type-id-ref="INT"
      vmodl-name="hwVersion"
      >
      <description-html>
         <![CDATA[The virtual hardware version.]]>
      </description-html>
      </property>

            <property name="virtualDeviceOption" type-id-ref="vim.vm.device.VirtualDeviceOption"
      vmodl-name="virtualDeviceOption"
      is-array="true"
      >
      <description-html>
         <![CDATA[Array of virtual device options valid for this virtual
  machine configuration. The list is unordered.]]>
      </description-html>
      </property>

            <property name="deviceListReadonly" type-id-ref="BOOLEAN"
      vmodl-name="deviceListReadonly"
      >
      <description-html>
         <![CDATA[Whether the set of virtual devices can be changed, e.g., can devices
  be added or removed. This does not preclude changing devices.]]>
      </description-html>
      </property>

            <property name="numCPU" type-id-ref="INT"
      vmodl-name="numCPU"
      is-array="true"
      >
      <description-html>
         <![CDATA[List of acceptable values for the number of CPUs supported by this
  <a href="vim.vm.ConfigOption.html">ConfigOption</a>.
  This is usually superceded by the information available in the
  guest operating system descriptors.
  The guest operating system descriptor describes a maximum CPU
  count, but the acceptable values are still constrained to the
  set specified here. The default value is stored at index 0 in the list.]]>
      </description-html>
      </property>

            <property name="numCoresPerSocket" type-id-ref="vim.option.IntOption"
      vmodl-name="numCoresPerSocket"
      version-id-ref="vim.version.version7"
      >
      <description-html>
         <![CDATA[The minimum, maximum and default number of cores per socket that
  can be used when distributing virtual CPUs.]]>
      </description-html>
      </property>

            <property name="numCpuReadonly" type-id-ref="BOOLEAN"
      vmodl-name="numCpuReadonly"
      >
      <description-html>
         <![CDATA[Can the number of virtual CPUs be changed]]>
      </description-html>
      </property>

            <property name="memoryMB" type-id-ref="vim.option.LongOption"
      vmodl-name="memoryMB"
      >
      <description-html>
         <![CDATA[The minimum, maximum, and default memory options, in MB, per virtual machine,
  for this VirtualHardwareOption. These
  values are typically overruled by the supported and recommended
  values specified in the <a href="vim.vm.GuestOsDescriptor.html">GuestOsDescriptor</a> class.]]>
      </description-html>
      </property>

            <property name="numPCIControllers" type-id-ref="vim.option.IntOption"
      vmodl-name="numPCIControllers"
      >
      <description-html>
         <![CDATA[The minimum, maximum, and default number of PCI controllers for
  this virtual machine configuration.]]>
      </description-html>
      </property>

            <property name="numIDEControllers" type-id-ref="vim.option.IntOption"
      vmodl-name="numIDEControllers"
      >
      <description-html>
         <![CDATA[The minimum, maximum, and default number of IDE controllers for
  this virtual machine configuration. Note: SCSI controllers sit
  on the PCI controller so their options (minimum, maximum, and default values)
  are contained inside the
  <a href="vim.vm.device.VirtualPCIControllerOption.html">VirtualPCIControllerOption</a>
  class.]]>
      </description-html>
      </property>

            <property name="numUSBControllers" type-id-ref="vim.option.IntOption"
      vmodl-name="numUSBControllers"
      >
      <description-html>
         <![CDATA[The minimum, maximum, and default number of USB controllers for
  this virtual machine configuration.]]>
      </description-html>
      </property>

            <property name="numUSBXHCIControllers" type-id-ref="vim.option.IntOption"
      vmodl-name="numUSBXHCIControllers"
      version-id-ref="vim.version.version7"
      >
      <description-html>
         <![CDATA[The minimum, maximum, and default number of XHCI (USB 3.0) controllers for
  this virtual machine configuration.]]>
      </description-html>
      </property>

            <property name="numSIOControllers" type-id-ref="vim.option.IntOption"
      vmodl-name="numSIOControllers"
      >
      <description-html>
         <![CDATA[The minimum, maximum, and default number of SIO controllers for
  this virtual machine configuration.]]>
      </description-html>
      </property>

            <property name="numPS2Controllers" type-id-ref="vim.option.IntOption"
      vmodl-name="numPS2Controllers"
      >
      <description-html>
         <![CDATA[The minimum, maximum, and default number of PS2 controllers for
  this virtual machine configuration.]]>
      </description-html>
      </property>

            <property name="licensingLimit" type-id-ref="vmodl.PropertyPath"
      vmodl-name="licensingLimit"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of propery names which limits are given be a licensing
  restriction of the underlying product, e.g., a limit that is
  not derived based on the product or hardware features.
  For example, the property name "numCPU"]]>
      </description-html>
      </property>

            <property name="numSupportedWwnPorts" type-id-ref="vim.option.IntOption"
      vmodl-name="numSupportedWwnPorts"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The minimum, maximum and default number of NPIV WorldWideNode names
  supported for this virtual machine configuration.]]>
      </description-html>
      </property>

            <property name="numSupportedWwnNodes" type-id-ref="vim.option.IntOption"
      vmodl-name="numSupportedWwnNodes"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The minimum, maximum and default number of NPIV WorldWidePort names
  supported for this virtual machine configuration.]]>
      </description-html>
      </property>

            <property name="resourceConfigOption" type-id-ref="vim.ResourceConfigOption"
      vmodl-name="resourceConfigOption"
      version-id-ref="vim.version.version6"
      >
      <description-html>
         <![CDATA[Default value and value range for <a href="vim.ResourceConfigOption.html">ResourceConfigOption</a>]]>
      </description-html>
      </property>

            <property name="numNVDIMMControllers" type-id-ref="vim.option.IntOption"
      vmodl-name="numNVDIMMControllers"
      version-id-ref="vim.version.version12"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The minimum, maximum and default number of virtual NVDIMM controllers
 for this virtual machine configuration.]]>
      </description-html>
      </property>

            <property name="numTPMDevices" type-id-ref="vim.option.IntOption"
      vmodl-name="numTPMDevices"
      version-id-ref="vim.version.version12"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The minimum, maximum, and default number of virtual TPMs.]]>
      </description-html>
      </property>

            <property name="numWDTDevices" type-id-ref="vim.option.IntOption"
      vmodl-name="numWDTDevices"
      version-id-ref="vim.version.v7_0"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The minimum, maximum, and default number of virtual watchdog timers.]]>
      </description-html>
      </property>

            <property name="numPrecisionClockDevices" type-id-ref="vim.option.IntOption"
      vmodl-name="numPrecisionClockDevices"
      version-id-ref="vim.version.v7_0"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The minimum, maximum and default number of PrecisionClock devices.]]>
      </description-html>
      </property>

            <property name="epcMemoryMB" type-id-ref="vim.option.LongOption"
      vmodl-name="epcMemoryMB"
      version-id-ref="vim.version.v7_0"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The minimum, maximum and default value of Intel's Secure Guard Extensions
 Enclave Page Cache (EPC) memory.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualPointingDevice"
      type-id="vim.vm.device.VirtualPointingDevice"
      vmodl-name="vim.vm.device.VirtualPointingDevice"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.device.VirtualDevice"
      >
      <description-html>
         <![CDATA[The VirtualPointingDevice data object type contains information about
  the mouse type on a virtual machine.]]>
      </description-html>
      <nested-type-id-ref>vim.vm.device.VirtualPointingDevice.DeviceBackingInfo</nested-type-id-ref>
   </data-object>
   <data-object name="VirtualEthernetCardOpaqueNetworkBackingOption"
      type-id="vim.vm.device.VirtualEthernetCardOption.OpaqueNetworkBackingOption"
      vmodl-name="vim.vm.device.VirtualEthernetCardOption.OpaqueNetworkBackingOption"
      enclosing-type-id-ref="vim.vm.device.VirtualEthernetCardOption"
      version-id-ref="vim.version.version9"
      base-type-id="vim.vm.device.VirtualDeviceOption.BackingOption"
      >
      <description-html>
         <![CDATA[This data object type contains the options for
  the virtual network card backing data object type.]]>
      </description-html>
   </data-object>
   <data-object name="HostMultipathInfoHppLogicalUnitPolicy"
      type-id="vim.host.MultipathInfo.HppLogicalUnitPolicy"
      vmodl-name="vim.host.MultipathInfo.HppLogicalUnitPolicy"
      enclosing-type-id-ref="vim.host.MultipathInfo"
      version-id-ref="vim.version.v7_0"
      base-type-id="vim.host.MultipathInfo.LogicalUnitPolicy"
      >
      <description-html>
         <![CDATA[The <a href="vim.host.MultipathInfo.HppLogicalUnitPolicy.html">HostMultipathInfoHppLogicalUnitPolicy</a> data object
 describes a multipathing policy for a HPP claimed logical unit and
 its configuration.]]>
      </description-html>
            <property name="bytes" type-id-ref="LONG"
      vmodl-name="bytes"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Byte count on the paths will be used as criteria to switch path
  for the device.
  Allowed values 1 to (100*1024*1024)
  Default Value 10*1024*1024]]>
      </description-html>
      </property>

            <property name="iops" type-id-ref="LONG"
      vmodl-name="iops"
      is-optional="true"
      >
      <description-html>
         <![CDATA[IOPS count on the paths will be used as criteria to switch path
 for the device.
 Allowed values 1 to 10000
 Default Value 1000]]>
      </description-html>
      </property>

            <property name="path" type-id-ref="java.lang.String"
      vmodl-name="path"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The preferred path for the given device.
 If no prefered path is specified by the user, algorithem at ESX
 side will choose the random possible path.]]>
      </description-html>
      </property>

            <property name="latencyEvalTime" type-id-ref="LONG"
      vmodl-name="latencyEvalTime"
      is-optional="true"
      >
      <description-html>
         <![CDATA[This value can control at what interval (in ms) the latency of
 paths should be evaluated.
 Allowed values 10000 to (300 * 1000) in ms
 Default Value 30 * 1000]]>
      </description-html>
      </property>

            <property name="samplingIosPerPath" type-id-ref="LONG"
      vmodl-name="samplingIosPerPath"
      is-optional="true"
      >
      <description-html>
         <![CDATA[This value will control how many sample IOs should be issued on
 each path to calculate latency of the path.
 Allowed values 16 to 160
 Default Value 16]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="MtuMismatchEvent"
      type-id="vim.event.MtuMismatchEvent"
      vmodl-name="vim.event.MtuMismatchEvent"
      version-id-ref="vim.version.version8"
      base-type-id="vim.event.DvsHealthStatusChangeEvent"
      >
      <description-html>
         <![CDATA[The value of MTU configured in the vSphere Distributed Switch
  mismatches physical switch.]]>
      </description-html>
   </data-object>
   <data-object name="DvsFilterConfig"
      type-id="vim.dvs.DistributedVirtualPort.FilterConfig"
      vmodl-name="vim.dvs.DistributedVirtualPort.FilterConfig"
      enclosing-type-id-ref="vim.dvs.DistributedVirtualPort"
      version-id-ref="vim.version.version9"
      base-type-id="vim.InheritablePolicy"
      >
      <description-html>
         <![CDATA[This class defines Network Filter configuration.
  <p> <b> Supported Qualifier and Actions </b>
  <table border="1" width="100%">
  <tr>
     <th>Network Filter Config</th>
     <th>Supported classes</th>
  </tr>

  <tr>
     <td>Qualifiers supported</td>
     <td><a href="vim.SingleIp.html">SingleIp</a>, <a href="vim.IpRange.html">IpRange</a>,
         <a href="vim.SingleMac.html">SingleMac</a>, <a href="vim.MacRange.html">MacRange</a>,
         <a href="vim.dvs.TrafficRule.SingleIpPort.html">DvsSingleIpPort</a>,
         <a href="vim.dvs.TrafficRule.SystemTrafficQualifier.html">DvsSystemTrafficNetworkRuleQualifier</a>
     </td>
  </tr>

  <tr>
     <td>Actions Supported</td>
     <td><a href="vim.dvs.TrafficRule.DropAction.html">DvsDropNetworkRuleAction</a>,
         <a href="vim.dvs.TrafficRule.AcceptAction.html">DvsAcceptNetworkRuleAction</a>,
         <a href="vim.dvs.TrafficRule.PuntAction.html">DvsPuntNetworkRuleAction</a>,
         <a href="vim.dvs.TrafficRule.CopyAction.html">DvsCopyNetworkRuleAction</a>,
         <a href="vim.dvs.TrafficRule.MacRewriteAction.html">DvsMacRewriteNetworkRuleAction</a>,
         <a href="vim.dvs.TrafficRule.GreAction.html">DvsGreEncapNetworkRuleAction</a>,
         <a href="vim.dvs.TrafficRule.LogAction.html">DvsLogNetworkRuleAction</a>,
         <a href="vim.dvs.TrafficRule.UpdateTagAction.html">DvsUpdateTagNetworkRuleAction</a>,
         <a href="vim.dvs.TrafficRule.RateLimitAction.html">DvsRateLimitNetworkRuleAction</a>
     </td>
  </tr>]]>
      </description-html>
            <property name="key" type-id-ref="java.lang.String"
      vmodl-name="key"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The key of Network Filter Config.]]>
      </description-html>
      </property>

            <property name="agentName" type-id-ref="java.lang.String"
      vmodl-name="agentName"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The name of the network traffic filter agent.]]>
      </description-html>
      </property>

            <property name="slotNumber" type-id-ref="java.lang.String"
      vmodl-name="slotNumber"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The slot number of the network filter agent.]]>
      </description-html>
      </property>

            <property name="parameters" type-id-ref="vim.dvs.DistributedVirtualPort.FilterParameter"
      vmodl-name="parameters"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Network Filter Parameter]]>
      </description-html>
      </property>

            <property name="onFailure" type-id-ref="java.lang.String"
      vmodl-name="onFailure"
      is-optional="true"
      >
      <description-html>
         <![CDATA[This property specifies whether to allow all traffic or to deny all
  traffic when a Network Filter fails to configure.
  Please see <a href="vim.dvs.DistributedVirtualPort.FilterOnFailure.html">DvsFilterOnFailure</a>
  for more details.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DistributedVirtualPortgroupProblem"
      type-id="vim.dvs.DistributedVirtualPortgroup.Problem"
      vmodl-name="vim.dvs.DistributedVirtualPortgroup.Problem"
      enclosing-type-id-ref="vim.dvs.DistributedVirtualPortgroup"
      version-id-ref="vim.version.v7_0"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The <a href="vim.dvs.DistributedVirtualPortgroup.Problem.html">DistributedVirtualPortgroupProblem</a>
 data object defines the error while excuting NSX port group operations.]]>
      </description-html>
            <property name="logicalSwitchUuid" type-id-ref="java.lang.String"
      vmodl-name="logicalSwitchUuid"
      >
      <description-html>
         <![CDATA[The problematic logical switch UUID]]>
      </description-html>
      </property>

            <property name="fault" type-id-ref="vmodl.LocalizedMethodFault"
      vmodl-name="fault"
      >
      <description-html>
         <![CDATA[The failure reason for each problematic logical switch UUID]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VmUpgradeCompleteEvent"
      type-id="vim.event.VmUpgradeCompleteEvent"
      vmodl-name="vim.event.VmUpgradeCompleteEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.VmEvent"
      >
      <description-html>
         <![CDATA[This event records the successful completion of an upgrade operation.]]>
      </description-html>
            <property name="version" type-id-ref="java.lang.String"
      vmodl-name="version"
      >
      <description-html>
         <![CDATA[The version of the agent.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DVSSummary"
      type-id="vim.DistributedVirtualSwitch.Summary"
      vmodl-name="vim.DistributedVirtualSwitch.Summary"
      enclosing-type-id-ref="vim.DistributedVirtualSwitch"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Summary of the distributed switch configuration.]]>
      </description-html>
            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      >
      <description-html>
         <![CDATA[The name of the switch.]]>
      </description-html>
      </property>

            <property name="uuid" type-id-ref="java.lang.String"
      vmodl-name="uuid"
      >
      <description-html>
         <![CDATA[The generated UUID of the switch.]]>
      </description-html>
      </property>

            <property name="numPorts" type-id-ref="INT"
      vmodl-name="numPorts"
      >
      <description-html>
         <![CDATA[Current number of ports, not including conflict ports.]]>
      </description-html>
      </property>

            <property name="productInfo" type-id-ref="vim.dvs.ProductSpec"
      vmodl-name="productInfo"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The product information for the implementation of the switch.]]>
      </description-html>
      </property>

            <property name="hostMember" type-id-ref="vim.HostSystem"
      vmodl-name="hostMember"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The names of the hosts that join the switch.]]>
      </description-html>
      </property>

            <property name="vm" type-id-ref="vim.VirtualMachine"
      vmodl-name="vm"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The Virtual Machines with Virtual NICs that connect to the switch.

  In releases after vSphere API 5.0, vSphere Servers might not
  generate property collector update notifications for this property.
  To obtain the latest value of the property, you can use
  PropertyCollector methods RetrievePropertiesEx or WaitForUpdatesEx.
  If you use the PropertyCollector.WaitForUpdatesEx method, specify
  an empty string for the version parameter.

  Since this property is on a DataObject, an update returned by WaitForUpdatesEx may
  contain values for this property when some other property on the DataObject changes.
  If this update is a result of a call to WaitForUpdatesEx with a non-empty
  version parameter, the value for this property may not be current.]]>
      </description-html>
      </property>

            <property name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The hosts with Virtual NICs that connect to the switch.]]>
      </description-html>
      </property>

            <property name="portgroupName" type-id-ref="java.lang.String"
      vmodl-name="portgroupName"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The names of the portgroups that are defined on the switch.]]>
      </description-html>
      </property>

            <property name="description" type-id-ref="java.lang.String"
      vmodl-name="description"
      is-optional="true"
      >
      <description-html>
         <![CDATA[A description string of the switch.]]>
      </description-html>
      </property>

            <property name="contact" type-id-ref="vim.DistributedVirtualSwitch.ContactInfo"
      vmodl-name="contact"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The human operator contact information.]]>
      </description-html>
      </property>

            <property name="numHosts" type-id-ref="INT"
      vmodl-name="numHosts"
      version-id-ref="vim.version.version9"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The number of hosts in the switch. The value of this property
  is not affected by the privileges granted to the current user.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualMachineDatastoreVolumeOption"
      type-id="vim.vm.DatastoreOption.FileSystemVolumeOption"
      vmodl-name="vim.vm.DatastoreOption.FileSystemVolumeOption"
      enclosing-type-id-ref="vim.vm.DatastoreOption"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object type describes a file system volume option for this
 virtual machine.]]>
      </description-html>
            <property name="fileSystemType" type-id-ref="vmodl.TypeName"
      vmodl-name="fileSystemType"
      >
      <description-html>
         <![CDATA[The type name of the file system volume information object for this
 option.<br>See <a href="vim.host.FileSystemVolumeInfo.html">HostFileSystemVolumeInfo</a><br>]]>
      </description-html>
      </property>

            <property name="majorVersion" type-id-ref="INT"
      vmodl-name="majorVersion"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The major version of the file system volume information for this
 option. If not specified, all versions of this file system are included
 in this option. Currently, this value is set only for VMFS volumes.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostSerialAttachedTargetTransport"
      type-id="vim.host.SerialAttachedTargetTransport"
      vmodl-name="vim.host.SerialAttachedTargetTransport"
      version-id-ref="vim.version.version11"
      base-type-id="vim.host.TargetTransport"
      >
      <description-html>
         <![CDATA[Serial attached adapter transport information about a SCSI target.]]>
      </description-html>
   </data-object>
   <data-object name="ProfileAssociatedEvent"
      type-id="vim.event.ProfileAssociatedEvent"
      vmodl-name="vim.event.ProfileAssociatedEvent"
      version-id-ref="vim.version.version5"
      base-type-id="vim.event.ProfileEvent"
      >
      <description-html>
         <![CDATA[This event records that a Profile was associated with a managed entitiy.]]>
      </description-html>
   </data-object>
   <data-object name="VmRelocateFailedEvent"
      type-id="vim.event.VmRelocateFailedEvent"
      vmodl-name="vim.event.VmRelocateFailedEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.VmRelocateSpecEvent"
      >
      <description-html>
         <![CDATA[This event records a failure to relocate a virtual machine.]]>
      </description-html>
            <property name="destHost" type-id-ref="vim.event.HostEventArgument"
      vmodl-name="destHost"
      >
      <description-html>
         <![CDATA[The destination host to which the virtual machine is being relocated.]]>
      </description-html>
      </property>

            <property name="reason" type-id-ref="vmodl.LocalizedMethodFault"
      vmodl-name="reason"
      >
      <description-html>
         <![CDATA[The reason why this relocate operation failed.]]>
      </description-html>
      </property>

            <property name="destDatacenter" type-id-ref="vim.event.DatacenterEventArgument"
      vmodl-name="destDatacenter"
      version-id-ref="vim.version.version7"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The destination datacenter to which the virtual machine was being relocated]]>
      </description-html>
      </property>

            <property name="destDatastore" type-id-ref="vim.event.DatastoreEventArgument"
      vmodl-name="destDatastore"
      version-id-ref="vim.version.version7"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The destination primary datastore to which the virtual machine was being relocated]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualMachineParallelInfo"
      type-id="vim.vm.ParallelInfo"
      vmodl-name="vim.vm.ParallelInfo"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.TargetInfo"
      >
      <description-html>
         <![CDATA[ParallelInfo class contains information about a physical parallel
 drive on the host.]]>
      </description-html>
   </data-object>
   <data-object name="HostVsanInternalSystemVsanPhysicalDiskDiagnosticsResult"
      type-id="vim.host.VsanInternalSystem.VsanPhysicalDiskDiagnosticsResult"
      vmodl-name="vim.host.VsanInternalSystem.VsanPhysicalDiskDiagnosticsResult"
      enclosing-type-id-ref="vim.host.VsanInternalSystem"
      version-id-ref="vim.version.version9"
      internal-before-version-id-ref="vim.version.version10"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Result structure for a VSAN Physical Disk Diagnostics run. Specifies the
 result of a single disk.]]>
      </description-html>
            <property name="diskUuid" type-id-ref="java.lang.String"
      vmodl-name="diskUuid"
      >
      <description-html>
         <![CDATA[VSAN Disk UUID of the checked disk.]]>
      </description-html>
      </property>

            <property name="success" type-id-ref="BOOLEAN"
      vmodl-name="success"
      >
      <description-html>
         <![CDATA[Indicates success or failure of object creation on the disk.]]>
      </description-html>
      </property>

            <property name="failureReason" type-id-ref="java.lang.String"
      vmodl-name="failureReason"
      is-optional="true"
      >
      <description-html>
         <![CDATA[A failure reason type, in case of failure.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualMachineScsiDiskDeviceInfo"
      type-id="vim.vm.ScsiDiskDeviceInfo"
      vmodl-name="vim.vm.ScsiDiskDeviceInfo"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.DiskDeviceInfo"
      >
      <description-html>
         <![CDATA[The ScsiDiskDeviceInfo class contains detailed information about a specific
  scsi disk hardware device. These devices are for the
  vim.vm.device.VirtualDisk.RawDiskMappingVer1BackingInfo.]]>
      </description-html>
            <property name="disk" type-id-ref="vim.host.ScsiDisk"
      vmodl-name="disk"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Detailed information about the disk.]]>
      </description-html>
      </property>

            <property name="transportHint" type-id-ref="java.lang.String"
      vmodl-name="transportHint"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Transport identifier hint used to identify the device.  To definitively
  correlate this device with a host physical disk, use the disk property.
  This identifier is intended as a hint to end users to identify the
  disk device.]]>
      </description-html>
      </property>

            <property name="lunNumber" type-id-ref="INT"
      vmodl-name="lunNumber"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[LUN number hint used to identify the SCSI device.  To definitively
  correlate this device with a host physical disk, use the disk property.
  This identifier is intended as a hint to end users to identify the
  disk device.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualFloppyRemoteDeviceBackingInfo"
      type-id="vim.vm.device.VirtualFloppy.RemoteDeviceBackingInfo"
      vmodl-name="vim.vm.device.VirtualFloppy.RemoteDeviceBackingInfo"
      enclosing-type-id-ref="vim.vm.device.VirtualFloppy"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.device.VirtualDevice.RemoteDeviceBackingInfo"
      >
      <description-html>
         <![CDATA[The data object type for remote device backing of a virtual floppy drive.]]>
      </description-html>
   </data-object>
   <data-object name="CustomFieldDefRenamedEvent"
      type-id="vim.event.CustomFieldDefRenamedEvent"
      vmodl-name="vim.event.CustomFieldDefRenamedEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.CustomFieldDefEvent"
      >
      <description-html>
         <![CDATA[This event records the renaming of a custom field definition.]]>
      </description-html>
            <property name="newName" type-id-ref="java.lang.String"
      vmodl-name="newName"
      >
      </property>

   </data-object>
   <data-object name="DvsUpgradeRejectedEvent"
      type-id="vim.event.DvsUpgradeRejectedEvent"
      vmodl-name="vim.event.DvsUpgradeRejectedEvent"
      version-id-ref="vim.version.version5"
      base-type-id="vim.event.DvsEvent"
      >
      <description-html>
         <![CDATA[An upgrade for the distributed virtual switch is rejected.]]>
      </description-html>
            <property name="productInfo" type-id-ref="vim.dvs.ProductSpec"
      vmodl-name="productInfo"
      >
      <description-html>
         <![CDATA[The product info of the upgrade.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="SDDCBase"
      type-id="vim.SDDCBase"
      vmodl-name="vim.SDDCBase"
      version-id-ref="vim.version.version10"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[An empty data object which can be used as the base class for data objects
 outside VIM namespace which have to be proxied through vCenter opaquely.
 For example, vSan configuration spec will extend from this which will
 allow HCI API to pass the spec to set up vSan on the cluster.]]>
      </description-html>
   </data-object>
   <data-object name="ObjectContent"
      type-id="vmodl.query.PropertyCollector.ObjectContent"
      vmodl-name="vmodl.query.PropertyCollector.ObjectContent"
      enclosing-type-id-ref="vmodl.query.PropertyCollector"
      version-id-ref="vmodl.query.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The <a href="vmodl.query.PropertyCollector.ObjectContent.html">ObjectContent</a> data object type contains the
  contents retrieved for a single managed object.]]>
      </description-html>
            <property name="obj" type-id-ref="vmodl.ManagedObject"
      vmodl-name="obj"
      >
      <description-html>
         <![CDATA[Reference to the managed object that contains properties of interest.]]>
      </description-html>
      </property>

            <property name="propSet" type-id-ref="vmodl.DynamicProperty"
      vmodl-name="propSet"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Set of name-value pairs for the properties of the managed object.]]>
      </description-html>
      </property>

            <property name="missingSet" type-id-ref="vmodl.query.PropertyCollector.MissingProperty"
      vmodl-name="missingSet"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Properties for which values could not be retrieved and the associated
 fault.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostPlugStoreTopologyPath"
      type-id="vim.host.PlugStoreTopology.Path"
      vmodl-name="vim.host.PlugStoreTopology.Path"
      enclosing-type-id-ref="vim.host.PlugStoreTopology"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object type is an association class that describes a Path and
  its associated Device.  A Path may be claimed by at most one Device.]]>
      </description-html>
            <property name="key" type-id-ref="java.lang.String"
      vmodl-name="key"
      >
      <description-html>
         <![CDATA[The identifier for the Path.]]>
      </description-html>
      </property>

            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      >
      <description-html>
         <![CDATA[Name of path.  Use this property to correlate this path object to other
  path objects.
  <p>
  The state of the Path can be retrieved from the data object (@link
  vim.host.MultipathStateInfo.Path} on the <a href="vim.host.MultipathStateInfo.html">HostMultipathStateInfo</a> data object.
  <p>
  Use this name to configure LogicalUnit multipathing policy using <a href="vim.host.StorageSystem.html#enableMultipathPath">EnableMultipathPath</a> and <a href="vim.host.StorageSystem.html#disableMultipathPath">DisableMultipathPath</a>.]]>
      </description-html>
      </property>

            <property name="channelNumber" type-id-ref="INT"
      vmodl-name="channelNumber"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The channel number for a path if applicable.]]>
      </description-html>
      </property>

            <property name="targetNumber" type-id-ref="INT"
      vmodl-name="targetNumber"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The target number for a path if applicable.  The target number is not
  guaranteed to be consistent across reboots or rescans of the adapter.]]>
      </description-html>
      </property>

            <property name="lunNumber" type-id-ref="INT"
      vmodl-name="lunNumber"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The LUN number for a path if applicable.]]>
      </description-html>
      </property>

            <property name="adapter" type-id-ref="vim.host.PlugStoreTopology.Adapter"
      vmodl-name="adapter"
      is-optional="true"
      is-link="true"
      >
      <description-html>
         <![CDATA[The adapter that provided the Path.]]>
      </description-html>
      </property>

            <property name="target" type-id-ref="vim.host.PlugStoreTopology.Target"
      vmodl-name="target"
      is-optional="true"
      is-link="true"
      >
      <description-html>
         <![CDATA[The target of the Path if any.]]>
      </description-html>
      </property>

            <property name="device" type-id-ref="vim.host.PlugStoreTopology.Device"
      vmodl-name="device"
      is-optional="true"
      is-link="true"
      >
      <description-html>
         <![CDATA[The device that claimed the Path if any.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VsanHostDecommissionMode"
      type-id="vim.vsan.host.DecommissionMode"
      vmodl-name="vim.vsan.host.DecommissionMode"
      version-id-ref="vim.version.version9"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[A <a href="vim.vsan.host.DecommissionMode.html">VsanHostDecommissionMode</a> defines an action to take upon decommissioning
 a host from use with the VSAN service.

 If the VSAN service DecommissionMode is omitted in a call to
 <a href="vim.HostSystem.html#enterMaintenanceMode">EnterMaintenanceMode_Task</a>, the default action chosen
 will be DecommissionMode.ObjectAction#ensureObjectAccessibility.<br>See <a href="vim.HostSystem.html#enterMaintenanceMode">EnterMaintenanceMode_Task</a><br>See <a href="vim.host.MaintenanceSpec.html#vsanMode">vsanMode</a><br>]]>
      </description-html>
            <property name="objectAction" type-id-ref="java.lang.String"
      vmodl-name="objectAction"
      >
      <description-html>
         <![CDATA[Specifies an action to take with regard to the VSAN service upon
 putting a host into maintenance mode.<br>See <a href="vim.vsan.host.DecommissionMode.ObjectAction.html">VsanHostDecommissionModeObjectAction</a><br>]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.vsan.host.DecommissionMode.ObjectAction</nested-type-id-ref>
   </data-object>
   <data-object name="NoDatastoresConfiguredEvent"
      type-id="vim.event.NoDatastoresConfiguredEvent"
      vmodl-name="vim.event.NoDatastoresConfiguredEvent"
      version-id-ref="vim.version.version2"
      base-type-id="vim.event.HostEvent"
      >
      <description-html>
         <![CDATA[No datastores have been configured on the host.]]>
      </description-html>
   </data-object>
   <data-object name="VirtualDeviceFileBackingInfo"
      type-id="vim.vm.device.VirtualDevice.FileBackingInfo"
      vmodl-name="vim.vm.device.VirtualDevice.FileBackingInfo"
      enclosing-type-id-ref="vim.vm.device.VirtualDevice"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.device.VirtualDevice.BackingInfo"
      >
      <description-html>
         <![CDATA[<code><a href="vim.vm.device.VirtualDevice.FileBackingInfo.html">VirtualDeviceFileBackingInfo</a></code> is a data object type
  for information about file backing for a device in a virtual machine.]]>
      </description-html>
            <property name="fileName" type-id-ref="java.lang.String"
      vmodl-name="fileName"
      >
      <description-html>
         <![CDATA[Filename for the host file used in this backing.]]>
      </description-html>
      </property>

            <property name="datastore" type-id-ref="vim.Datastore"
      vmodl-name="datastore"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Reference to the datastore managed object where this file is stored.
  If the file is not located on a datastore, then this reference is null.
  This is not used for configuration.]]>
      </description-html>
      </property>

            <property name="backingObjectId" type-id-ref="java.lang.String"
      vmodl-name="backingObjectId"
      version-id-ref="vim.version.version9"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Backing object's durable and unmutable identifier.
 Each backing object has a unique identifier which is not settable.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="FailoverNodeInfo"
      type-id="vim.vcha.FailoverClusterConfigurator.FailoverNodeInfo"
      vmodl-name="vim.vcha.FailoverClusterConfigurator.FailoverNodeInfo"
      enclosing-type-id-ref="vim.vcha.FailoverClusterConfigurator"
      version-id-ref="vim.version.version11"
      base-type-id="vmodl.DynamicData"
      >
            <property name="clusterIpSettings" type-id-ref="vim.vm.customization.IPSettings"
      vmodl-name="clusterIpSettings"
      >
      <description-html>
         <![CDATA[VCHA Cluster network configuration of the node.
  All cluster communication (state replication, heartbeat,
  cluster messages) happens over this network.]]>
      </description-html>
      </property>

            <property name="failoverIp" type-id-ref="vim.vm.customization.IPSettings"
      vmodl-name="failoverIp"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Failover IP address that this node will assume after the failover
  to serve client requests. Each failover node can have a different
  failover IP address.]]>
      </description-html>
      </property>

            <property name="biosUuid" type-id-ref="java.lang.String"
      vmodl-name="biosUuid"
      is-optional="true"
      >
      <description-html>
         <![CDATA[BIOS UUID for the node. It is set only if the VCHA Cluster was
  formed using automatic provisioning by the deploy API.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="NoMaintenanceModeDrsRecommendationForVM"
      type-id="vim.event.NoMaintenanceModeDrsRecommendationForVM"
      vmodl-name="vim.event.NoMaintenanceModeDrsRecommendationForVM"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.VmEvent"
      >
      <description-html>
         <![CDATA[This event records that DRS did not recommend a migration for a
 powered on virtual machine, even though its host is going
 into maintenance mode.

 DRS may not be able to recommend a migration for a virtual machine
 for reasons, include but not limited to:

  <ul>
  <li> No other connected host is compatible with this virtual machine.
  <li> None of the other compatible hosts have sufficient resources
       to satisfy the reservation requirements of this virtual machine.
  <li> Moving to any other host would violate a DRS rule. For example, all
       other compatible hosts have some incompatible virtual machines
       running.
  <li> DRS is disabled on this virtual machine.
  <li> This virtual machine was still in the process of migrating
       into the host going into maintenance mode and was not
       considered by DRS.
  <li> This virtual machine was in the process of migrating to another
       host when the host tried to enter maintenance mode.
  </ul>]]>
      </description-html>
   </data-object>
   <data-object name="VMwareDVSFeatureCapability"
      type-id="vim.dvs.VmwareDistributedVirtualSwitch.FeatureCapability"
      vmodl-name="vim.dvs.VmwareDistributedVirtualSwitch.FeatureCapability"
      enclosing-type-id-ref="vim.dvs.VmwareDistributedVirtualSwitch"
      version-id-ref="vim.version.version6"
      base-type-id="vim.DistributedVirtualSwitch.FeatureCapability"
      >
      <description-html>
         <![CDATA[Indicators of support for version-specific DVS features that are only
  available on a VMware-class switch.]]>
      </description-html>
            <property name="vspanSupported" type-id-ref="BOOLEAN"
      vmodl-name="vspanSupported"
      version-id-ref="vim.version.version7"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Flag to indicate whether vspan(DVMirror) is supported on the
  vSphere Distributed Switch.
  Distributed Port Mirroring is supported in vSphere Distributed Switch Version 5.0 or later.]]>
      </description-html>
      </property>

            <property name="lldpSupported" type-id-ref="BOOLEAN"
      vmodl-name="lldpSupported"
      version-id-ref="vim.version.version7"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Flag to indicate whether LLDP(Link Layer Discovery Protocol) is supported on the
  vSphere Distributed Switch.
  LLDP is supported in vSphere Distributed Switch Version 5.0 or later.]]>
      </description-html>
      </property>

            <property name="ipfixSupported" type-id-ref="BOOLEAN"
      vmodl-name="ipfixSupported"
      version-id-ref="vim.version.version7"
      is-deprecated="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Flag to indicate whether IPFIX(NetFlow) is supported on the
  vSphere Distributed Switch.
  IPFIX is supported in vSphere Distributed Switch Version 5.0 or later.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[as of vSphere API 6.0, use IpfixFeatureCapability]]>
      </deprecated-html>
      </property>

            <property name="ipfixCapability" type-id-ref="vim.dvs.VmwareDistributedVirtualSwitch.IpfixFeatureCapability"
      vmodl-name="ipfixCapability"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The support for version-specific IPFIX(NetFlow).]]>
      </description-html>
      </property>

            <property name="multicastSnoopingSupported" type-id-ref="BOOLEAN"
      vmodl-name="multicastSnoopingSupported"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Flag to indicate whether multicast snooping(IGMP/MLD Snooping)
  is supported on the vSphere Distributed Switch.
  IGMP/MLD Snooping is supported in vSphere Distributed Switch Version 6.0 or later.]]>
      </description-html>
      </property>

            <property name="vspanCapability" type-id-ref="vim.dvs.VmwareDistributedVirtualSwitch.VspanFeatureCapability"
      vmodl-name="vspanCapability"
      version-id-ref="vim.version.version8"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The support for version-specific Distributed Port Mirroring sessions.]]>
      </description-html>
      </property>

            <property name="lacpCapability" type-id-ref="vim.dvs.VmwareDistributedVirtualSwitch.LacpFeatureCapability"
      vmodl-name="lacpCapability"
      version-id-ref="vim.version.version8"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The support for version-specific Link Aggregation Control Protocol.]]>
      </description-html>
      </property>

            <property name="nsxSupported" type-id-ref="BOOLEAN"
      vmodl-name="nsxSupported"
      version-id-ref="vim.version.v7_0"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Flag to indicate whether NSX is supported on the
  vSphere Distributed Switch.
  NSX is supported in vSphere Distributed Switch Version 7.0 or later.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostLocalFileSystemVolumeSpec"
      type-id="vim.host.LocalFileSystemVolume.Specification"
      vmodl-name="vim.host.LocalFileSystemVolume.Specification"
      enclosing-type-id-ref="vim.host.LocalFileSystemVolume"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The specification for creating a new local file system volume.]]>
      </description-html>
            <property name="device" type-id-ref="java.lang.String"
      vmodl-name="device"
      >
      <description-html>
         <![CDATA[The device of the local file system.]]>
      </description-html>
      </property>

            <property name="localPath" type-id-ref="java.lang.String"
      vmodl-name="localPath"
      >
      <description-html>
         <![CDATA[The file path on the host where the file system is mounted.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DVPortgroupRenamedEvent"
      type-id="vim.event.DVPortgroupRenamedEvent"
      vmodl-name="vim.event.DVPortgroupRenamedEvent"
      version-id-ref="vim.version.version5"
      base-type-id="vim.event.DVPortgroupEvent"
      >
      <description-html>
         <![CDATA[Two distributed virtual portgroup was renamed.]]>
      </description-html>
            <property name="oldName" type-id-ref="java.lang.String"
      vmodl-name="oldName"
      >
      <description-html>
         <![CDATA[The old portgroup name.]]>
      </description-html>
      </property>

            <property name="newName" type-id-ref="java.lang.String"
      vmodl-name="newName"
      >
      <description-html>
         <![CDATA[The new portgroup name.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="CustomizationUnknownFailure"
      type-id="vim.event.CustomizationUnknownFailure"
      vmodl-name="vim.event.CustomizationUnknownFailure"
      version-id-ref="vim.version.version2"
      base-type-id="vim.event.CustomizationFailed"
      >
      <description-html>
         <![CDATA[The customization sequence failed unexpectedly in the guest.]]>
      </description-html>
   </data-object>
   <data-object name="ScsiLunDescriptor"
      type-id="vim.host.ScsiLun.Descriptor"
      vmodl-name="vim.host.ScsiLun.Descriptor"
      enclosing-type-id-ref="vim.host.ScsiLun"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[A structure that encapsulates an identifier and its properties for the
  ScsiLun object.]]>
      </description-html>
            <property name="quality" type-id-ref="java.lang.String"
      vmodl-name="quality"
      >
      <description-html>
         <![CDATA[An indicator of the utility of the descriptor as an identifier that
  is stable, unique, and correlatable.<br>See DescriptorQuality]]>
      </description-html>
      </property>

            <property name="id" type-id-ref="java.lang.String"
      vmodl-name="id"
      >
      <description-html>
         <![CDATA[The identifier represented as a string.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ResourceConfigOption"
      type-id="vim.ResourceConfigOption"
      vmodl-name="vim.ResourceConfigOption"
      version-id-ref="vim.version.version6"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object type is a default value and value range specification
  for <a href="vim.ResourceConfigSpec.html">ResourceConfigSpec</a> object.]]>
      </description-html>
            <property name="cpuAllocationOption" type-id-ref="vim.ResourceAllocationOption"
      vmodl-name="cpuAllocationOption"
      >
      <description-html>
         <![CDATA[Resource allocation options for CPU.<br>See <a href="vim.ResourceAllocationInfo.html">ResourceAllocationInfo</a><br>]]>
      </description-html>
      </property>

            <property name="memoryAllocationOption" type-id-ref="vim.ResourceAllocationOption"
      vmodl-name="memoryAllocationOption"
      >
      <description-html>
         <![CDATA[Resource allocation options for memory.<br>See <a href="vim.ResourceAllocationInfo.html">ResourceAllocationInfo</a><br>]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="NetDhcpConfigSpec"
      type-id="vim.net.DhcpConfigSpec"
      vmodl-name="vim.net.DhcpConfigSpec"
      version-id-ref="vim.version.version6"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Dynamic Host Configuration Protocol Configuration for IP version 4 and version 6.]]>
      </description-html>
            <property name="ipv6" type-id-ref="vim.net.DhcpConfigSpec.DhcpOptionsSpec"
      vmodl-name="ipv6"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Configure IPv6 DHCP client settings.]]>
      </description-html>
      </property>

            <property name="ipv4" type-id-ref="vim.net.DhcpConfigSpec.DhcpOptionsSpec"
      vmodl-name="ipv4"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Configure IPv4 DHCP client settings.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.net.DhcpConfigSpec.DhcpOptionsSpec</nested-type-id-ref>
   </data-object>
   <data-object name="VirtualHardware"
      type-id="vim.vm.VirtualHardware"
      vmodl-name="vim.vm.VirtualHardware"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The VirtualHardware data object type contains the complete configuration
  of the hardware in a virtual machine.]]>
      </description-html>
            <property name="numCPU" type-id-ref="INT"
      vmodl-name="numCPU"
      >
      <description-html>
         <![CDATA[Number of virtual CPUs present in this virtual machine.]]>
      </description-html>
      </property>

            <property name="numCoresPerSocket" type-id-ref="INT"
      vmodl-name="numCoresPerSocket"
      version-id-ref="vim.version.version7"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Number of cores used to distribute virtual CPUs among sockets
  in this virtual machine.
  If the value is unset it implies to numCoresPerSocket = 1.]]>
      </description-html>
      </property>

            <property name="memoryMB" type-id-ref="INT"
      vmodl-name="memoryMB"
      >
      <description-html>
         <![CDATA[Memory size, in MB.]]>
      </description-html>
      </property>

            <property name="virtualICH7MPresent" type-id-ref="BOOLEAN"
      vmodl-name="virtualICH7MPresent"
      version-id-ref="vim.version.version7"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Does this virtual machine have Virtual Intel I/O Controller Hub 7]]>
      </description-html>
      </property>

            <property name="virtualSMCPresent" type-id-ref="BOOLEAN"
      vmodl-name="virtualSMCPresent"
      version-id-ref="vim.version.version7"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Does this virtual machine have System Management Controller]]>
      </description-html>
      </property>

            <property name="device" type-id-ref="vim.vm.device.VirtualDevice"
      vmodl-name="device"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The set of virtual devices belonging to the virtual machine.
  This list is unordered.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="UpdateVirtualMachineFilesResult"
      type-id="vim.UpdateVirtualMachineFilesResult"
      vmodl-name="vim.UpdateVirtualMachineFilesResult"
      version-id-ref="vim.version.version6"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[UpdateVirtualMachineFilesResult is the result returned
  to the <a href="vim.Datastore.html#updateVirtualMachineFiles">UpdateVirtualMachineFiles_Task</a> method.]]>
      </description-html>
            <property name="failedVmFile" type-id-ref="vim.UpdateVirtualMachineFilesResult.FailedVmFileInfo"
      vmodl-name="failedVmFile"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The list of virtual machines files the server has attempted
  to update but failed to update.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.UpdateVirtualMachineFilesResult.FailedVmFileInfo</nested-type-id-ref>
   </data-object>
   <data-object name="HostShortNameInconsistentEvent"
      type-id="vim.event.HostShortNameInconsistentEvent"
      vmodl-name="vim.event.HostShortNameInconsistentEvent"
      version-id-ref="vim.version.version2"
      is-deprecated="true"
      base-type-id="vim.event.HostDasEvent"
      >
      <description-html>
         <![CDATA[This event records that host name resolution returned different names on
 the host. Please check your host's network configuration and your DNS
 configuration. There may be duplicate entries.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 5.0, the event is no longer relevant.]]>
      </deprecated-html>
            <property name="shortName" type-id-ref="java.lang.String"
      vmodl-name="shortName"
      >
      </property>

            <property name="shortName2" type-id-ref="java.lang.String"
      vmodl-name="shortName2"
      >
      </property>

   </data-object>
   <data-object name="DvsHostInfrastructureTrafficResource"
      type-id="vim.DistributedVirtualSwitch.HostInfrastructureTrafficResource"
      vmodl-name="vim.DistributedVirtualSwitch.HostInfrastructureTrafficResource"
      enclosing-type-id-ref="vim.DistributedVirtualSwitch"
      version-id-ref="vim.version.version10"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This class defines the resource allocation for a host infrastructure
  traffic class on a physical NIC]]>
      </description-html>
            <property name="key" type-id-ref="java.lang.String"
      vmodl-name="key"
      is-localizable="true"
      >
      <description-html>
         <![CDATA[The key of the host infrastructure resource.
  Possible value can be of
  <a href="vim.DistributedVirtualSwitch.HostInfrastructureTrafficClass.html">DistributedVirtualSwitchHostInfrastructureTrafficClass</a>.]]>
      </description-html>
      </property>

            <property name="description" type-id-ref="java.lang.String"
      vmodl-name="description"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The description of the host infrastructure resource.
  This property is ignored for update operation.]]>
      </description-html>
      </property>

            <property name="allocationInfo" type-id-ref="vim.DistributedVirtualSwitch.HostInfrastructureTrafficResource.ResourceAllocation"
      vmodl-name="allocationInfo"
      >
      <description-html>
         <![CDATA[The allocation settings of the host infrastructure resource.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.DistributedVirtualSwitch.HostInfrastructureTrafficResource.ResourceAllocation</nested-type-id-ref>
   </data-object>
   <data-object name="PowerSystemInfo"
      type-id="vim.host.PowerSystem.Info"
      vmodl-name="vim.host.PowerSystem.Info"
      enclosing-type-id-ref="vim.host.PowerSystem"
      version-id-ref="vim.version.version6"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Power System Info data object.

  Shows current state of power management system.]]>
      </description-html>
            <property name="currentPolicy" type-id-ref="vim.host.PowerSystem.PowerPolicy"
      vmodl-name="currentPolicy"
      >
      <description-html>
         <![CDATA[Currently selected host power management policy.
  This property can have one of the values from
  <a href="vim.host.PowerSystem.Capability.html#availablePolicy">availablePolicy</a>.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualMachineBootOptionsBootableCdromDevice"
      type-id="vim.vm.BootOptions.BootableCdromDevice"
      vmodl-name="vim.vm.BootOptions.BootableCdromDevice"
      enclosing-type-id-ref="vim.vm.BootOptions"
      version-id-ref="vim.version.version7"
      base-type-id="vim.vm.BootOptions.BootableDevice"
      >
      <description-html>
         <![CDATA[Bootable CDROM.  First CDROM with bootable media found is used.]]>
      </description-html>
   </data-object>
   <data-object name="DvsPortUnblockedEvent"
      type-id="vim.event.DvsPortUnblockedEvent"
      vmodl-name="vim.event.DvsPortUnblockedEvent"
      version-id-ref="vim.version.version5"
      base-type-id="vim.event.DvsEvent"
      >
      <description-html>
         <![CDATA[A port is unblocked in the distributed virtual switch.]]>
      </description-html>
            <property name="portKey" type-id-ref="java.lang.String"
      vmodl-name="portKey"
      >
      <description-html>
         <![CDATA[The port key.]]>
      </description-html>
      </property>

            <property name="runtimeInfo" type-id-ref="vim.dvs.DistributedVirtualPort.RuntimeInfo"
      vmodl-name="runtimeInfo"
      version-id-ref="vim.version.version8"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The port runtime information.]]>
      </description-html>
      </property>

            <property name="prevBlockState" type-id-ref="java.lang.String"
      vmodl-name="prevBlockState"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Previous state of the DvsPort.
 See <a href="vim.event.DvsEvent.PortBlockState.html">DvsEventPortBlockState</a>]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DvsSystemTrafficNetworkRuleQualifier"
      type-id="vim.dvs.TrafficRule.SystemTrafficQualifier"
      vmodl-name="vim.dvs.TrafficRule.SystemTrafficQualifier"
      enclosing-type-id-ref="vim.dvs.TrafficRule"
      version-id-ref="vim.version.version9"
      base-type-id="vim.dvs.TrafficRule.Qualifier"
      >
      <description-html>
         <![CDATA[This class defines the System Traffic Qualifier. Here the type of
  traffic will be used for classifying packets.]]>
      </description-html>
            <property name="typeOfSystemTraffic" type-id-ref="vim.StringExpression"
      vmodl-name="typeOfSystemTraffic"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Type of system traffic.
  See <a href="vim.DistributedVirtualSwitch.HostInfrastructureTrafficClass.html">DistributedVirtualSwitchHostInfrastructureTrafficClass</a>
  for valid values.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ResourcePoolResourceUsage"
      type-id="vim.ResourcePool.ResourceUsage"
      vmodl-name="vim.ResourcePool.ResourceUsage"
      enclosing-type-id-ref="vim.ResourcePool"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Specifies the resource usage for either memory
  or CPU. For CPU the unit is MHz, for memory the unit is bytes.
  <p>
  In the typical case, where a resourcepool is in a consistent state,
  unreservedForVm will be equal to unreservedForPool. Hence, we
  can simply say talk about unreserved resources.
  <p>
  If the reservation on the resource pool is not expandable, then
  the following is true:
  <pre>
           reservation = reservationUsed + unreserved
  </pre>
  If the reservation on the resource pool is expandable, then
  the following is true:
  <pre>
      reservation + parent.unreserved = reservationUsed + unreserved
  </pre>]]>
      </description-html>
            <property name="reservationUsed" type-id-ref="LONG"
      vmodl-name="reservationUsed"
      >
      <description-html>
         <![CDATA[Total amount of resources that have been used to satisfy the
  reservation requirements of all descendants of this
  resource pool (includes both resource pools and virtual
  machines).]]>
      </description-html>
      </property>

            <property name="reservationUsedForVm" type-id-ref="LONG"
      vmodl-name="reservationUsedForVm"
      >
      <description-html>
         <![CDATA[Total amount of resources that have been used to satisfy the reservation
  requirements of running virtual machines in this resource pool or any of its
  child resource pools.]]>
      </description-html>
      </property>

            <property name="unreservedForPool" type-id-ref="LONG"
      vmodl-name="unreservedForPool"
      >
      <description-html>
         <![CDATA[Total amount of resources available to satisfy a reservation
  for a child resource pool. In the undercommitted state, this is
  limited by the capacity at the root node. In the overcommitted case,
  this could be higher since we do not perform the dynamic capacity
  checks.]]>
      </description-html>
      </property>

            <property name="unreservedForVm" type-id-ref="LONG"
      vmodl-name="unreservedForVm"
      >
      <description-html>
         <![CDATA[Total amount of resources available to satisfy a reservation for
  a child virtual machine. In general, this should be the same as
  <a href="vim.ResourcePool.ResourceUsage.html#unreservedForPool">unreservedForPool</a>. However, in the overcommitted case, this
  is limited by the remaining available resources at the root
  node.]]>
      </description-html>
      </property>

            <property name="overallUsage" type-id-ref="LONG"
      vmodl-name="overallUsage"
      is-deprecated="true"
      >
      <description-html>
         <![CDATA[Close to real-time resource usage of all running child virtual
  machines, including virtual machines in child resource pools.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[as of vSphere API 6.5.
  Use <a href="vim.ResourcePool.Summary.QuickStats.html#overallCpuUsage">overallCpuUsage</a> and
  <a href="vim.ResourcePool.Summary.QuickStats.html#hostMemoryUsage">hostMemoryUsage</a>.]]>
      </deprecated-html>
      </property>

            <property name="maxUsage" type-id-ref="LONG"
      vmodl-name="maxUsage"
      >
      <description-html>
         <![CDATA[Current upper-bound on usage. The upper-bound is based on the limit configured
  on this resource pool, as well as limits configured on any parent resource
  pool.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualPointingDeviceOption"
      type-id="vim.vm.device.VirtualPointingDeviceOption"
      vmodl-name="vim.vm.device.VirtualPointingDeviceOption"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.device.VirtualDeviceOption"
      >
      <description-html>
         <![CDATA[The VirtualPointingDeviceOption data object type contains the options
  for the host mouse type defined in the
  <a href="vim.vm.device.VirtualPointingDevice.html">VirtualPointingDevice</a> data object type.
  These options include the valid selections for the mouse type, the supported
  mouse types, and the default mouse type.]]>
      </description-html>
      <nested-type-id-ref>vim.vm.device.VirtualPointingDeviceOption.DeviceBackingOption</nested-type-id-ref>
   </data-object>
   <data-object name="LongOption"
      type-id="vim.option.LongOption"
      vmodl-name="vim.option.LongOption"
      version-id-ref="vim.version.version1"
      base-type-id="vim.option.OptionType"
      >
      <description-html>
         <![CDATA[The LongOption data object type is used to define the minimum, maximum,
  and default values for a 64-bit long option.]]>
      </description-html>
            <property name="min" type-id-ref="LONG"
      vmodl-name="min"
      >
      <description-html>
         <![CDATA[The minimum value.]]>
      </description-html>
      </property>

            <property name="max" type-id-ref="LONG"
      vmodl-name="max"
      >
      <description-html>
         <![CDATA[The maximum value.]]>
      </description-html>
      </property>

            <property name="defaultValue" type-id-ref="LONG"
      vmodl-name="defaultValue"
      >
      <description-html>
         <![CDATA[The default value.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostSgxInfo"
      type-id="vim.host.SgxInfo"
      vmodl-name="vim.host.SgxInfo"
      version-id-ref="vim.version.v7_0"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Data object describing the Software Guard Extension (SGX)
  configuration on the ESXi host.]]>
      </description-html>
            <property name="sgxState" type-id-ref="java.lang.String"
      vmodl-name="sgxState"
      >
      <description-html>
         <![CDATA[SGX state of the host. The set of supported values are described
 in SgxStates.]]>
      </description-html>
      </property>

            <property name="totalEpcMemory" type-id-ref="LONG"
      vmodl-name="totalEpcMemory"
      >
      <description-html>
         <![CDATA[Size of  physical EPC in bytes.]]>
      </description-html>
      </property>

            <property name="flcMode" type-id-ref="java.lang.String"
      vmodl-name="flcMode"
      >
      <description-html>
         <![CDATA[FLC mode of the host. The set of supported values are
 described in FlcModes.]]>
      </description-html>
      </property>

            <property name="lePubKeyHash" type-id-ref="java.lang.String"
      vmodl-name="lePubKeyHash"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Public key hash of the provider launch enclave. This is the SHA256
 digest of the SIGSTRUCT.MODULUS(MR_SIGNER) of the provider launch
 enclave. This attribute is set only if attribute flcMode is
 locked.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.host.SgxInfo.SgxStates</nested-type-id-ref>
      <nested-type-id-ref>vim.host.SgxInfo.FlcModes</nested-type-id-ref>
   </data-object>
   <data-object name="ClusterDasFailoverLevelAdvancedRuntimeInfoVmSlots"
      type-id="vim.cluster.DasFailoverLevelAdvancedRuntimeInfo.VmSlots"
      vmodl-name="vim.cluster.DasFailoverLevelAdvancedRuntimeInfo.VmSlots"
      enclosing-type-id-ref="vim.cluster.DasFailoverLevelAdvancedRuntimeInfo"
      version-id-ref="vim.version.version8"
      base-type-id="vmodl.DynamicData"
      >
            <property name="vm" type-id-ref="vim.VirtualMachine"
      vmodl-name="vm"
      >
      <description-html>
         <![CDATA[The reference to the virtual machine]]>
      </description-html>
      </property>

            <property name="slots" type-id-ref="INT"
      vmodl-name="slots"
      >
      <description-html>
         <![CDATA[The number of slots required by this virtual machine]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="WaitOptions"
      type-id="vmodl.query.PropertyCollector.WaitOptions"
      vmodl-name="vmodl.query.PropertyCollector.WaitOptions"
      enclosing-type-id-ref="vmodl.query.PropertyCollector"
      version-id-ref="vmodl.query.version.version3"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Options for <a href="vmodl.query.PropertyCollector.html#waitForUpdatesEx">WaitForUpdatesEx</a>.]]>
      </description-html>
            <property name="maxWaitSeconds" type-id-ref="INT"
      vmodl-name="maxWaitSeconds"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The number of seconds the <a href="vmodl.query.PropertyCollector.html">PropertyCollector</a> should wait
  before returning null. Returning updates may take longer if the
  actual calculation time exceeds <a href="vmodl.query.PropertyCollector.WaitOptions.html#maxWaitSeconds">maxWaitSeconds</a>. Additionally <a href="vmodl.query.PropertyCollector.html">PropertyCollector</a> policy may
  cause it to return null sooner than <a href="vmodl.query.PropertyCollector.WaitOptions.html#maxWaitSeconds">maxWaitSeconds</a>.

  <p> An unset value causes <a href="vmodl.query.PropertyCollector.html#waitForUpdatesEx">WaitForUpdatesEx</a> to wait as
  long as possible for updates. Policy may still cause the
  <a href="vmodl.query.PropertyCollector.html">PropertyCollector</a> to return null at some point.

  <p> A value of 0 causes <a href="vmodl.query.PropertyCollector.html#waitForUpdatesEx">WaitForUpdatesEx</a> to do one update
  calculation and return any results. This behavior is similar to <a href="vmodl.query.PropertyCollector.html#checkForUpdates">CheckForUpdates</a>.

  <p> A positive value causes <a href="vmodl.query.PropertyCollector.html#waitForUpdatesEx">WaitForUpdatesEx</a> to return
  null if no updates are available within the specified number of
  seconds. The choice of a positive value often depends on the
  client communication stack. For example it may be helpful to
  choose a duration shorter than a local HTTP request timeout.
  Typically it should be no shorter than a few minutes.

  <p> A negative value is illegal.]]>
      </description-html>
      </property>

            <property name="maxObjectUpdates" type-id-ref="INT"
      vmodl-name="maxObjectUpdates"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The maximum number of <a href="vmodl.query.PropertyCollector.ObjectUpdate.html">ObjectUpdate</a>
  entries that should be returned in a single result from <a href="vmodl.query.PropertyCollector.html#waitForUpdatesEx">WaitForUpdatesEx</a>. See <a href="vmodl.query.PropertyCollector.UpdateSet.html#truncated">truncated</a>

  <p> An unset value indicates that there is no maximum. In this case
  <a href="vmodl.query.PropertyCollector.html">PropertyCollector</a> policy may still limit the number of objects
  that appear in an <a href="vmodl.query.PropertyCollector.UpdateSet.html">UpdateSet</a>.

  <p> A positive value causes <a href="vmodl.query.PropertyCollector.html#waitForUpdatesEx">WaitForUpdatesEx</a> to suspend
  the update calculation when the total count of <a href="vmodl.query.PropertyCollector.ObjectUpdate.html">ObjectUpdate</a> entries ready to return reaches
  the specified maximum. <a href="vmodl.query.PropertyCollector.html">PropertyCollector</a> policy may still
  limit the total count to something less than <a href="vmodl.query.PropertyCollector.WaitOptions.html#maxObjectUpdates">maxObjectUpdates</a>.

  <p> A value less than or equal to 0 is illegal.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostVFlashManagerVFlashCacheConfigInfo"
      type-id="vim.host.VFlashManager.VFlashCacheConfigInfo"
      vmodl-name="vim.host.VFlashManager.VFlashCacheConfigInfo"
      enclosing-type-id-ref="vim.host.VFlashManager"
      version-id-ref="vim.version.version9"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Data object describes host vFlash cache configuration information.]]>
      </description-html>
            <property name="vFlashModuleConfigOption" type-id-ref="vim.host.VFlashManager.VFlashCacheConfigInfo.VFlashModuleConfigOption"
      vmodl-name="vFlashModuleConfigOption"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Cache configuration options for the supported vFlash modules.]]>
      </description-html>
      </property>

            <property name="defaultVFlashModule" type-id-ref="java.lang.String"
      vmodl-name="defaultVFlashModule"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Name of the default vFlash module for the read-write cache associated
 with the VMs of this host. This setting can be overridden by
 <a href="vim.vm.device.VirtualDisk.VFlashCacheConfigInfo.html#vFlashModule">vFlashModule</a>
 per VMDK.]]>
      </description-html>
      </property>

            <property name="swapCacheReservationInGB" type-id-ref="LONG"
      vmodl-name="swapCacheReservationInGB"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Amount of vFlash resource is allocated to the host swap cache. As long as set,
 reservation will be permanent and retain regardless of host power state. The host
 swap cache will be disabled if reservation is set to zero.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.host.VFlashManager.VFlashCacheConfigInfo.VFlashModuleConfigOption</nested-type-id-ref>
   </data-object>
   <data-object name="HostInAuditModeEvent"
      type-id="vim.event.HostInAuditModeEvent"
      vmodl-name="vim.event.HostInAuditModeEvent"
      version-id-ref="vim.version.version7"
      base-type-id="vim.event.HostEvent"
      >
      <description-html>
         <![CDATA[Host is booted in audit mode.]]>
      </description-html>
   </data-object>
   <data-object name="HostSystemInfo"
      type-id="vim.host.SystemInfo"
      vmodl-name="vim.host.SystemInfo"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Information about the system as a whole.]]>
      </description-html>
            <property name="vendor" type-id-ref="java.lang.String"
      vmodl-name="vendor"
      >
      <description-html>
         <![CDATA[Hardware vendor identification.]]>
      </description-html>
      </property>

            <property name="model" type-id-ref="java.lang.String"
      vmodl-name="model"
      >
      <description-html>
         <![CDATA[System model identification.]]>
      </description-html>
      </property>

            <property name="uuid" type-id-ref="java.lang.String"
      vmodl-name="uuid"
      >
      <description-html>
         <![CDATA[Hardware BIOS identification.]]>
      </description-html>
      </property>

            <property name="otherIdentifyingInfo" type-id-ref="vim.host.SystemIdentificationInfo"
      vmodl-name="otherIdentifyingInfo"
      version-id-ref="vim.version.version2"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Other System identification information. This information may be vendor
  specific]]>
      </description-html>
      </property>

            <property name="serialNumber" type-id-ref="java.lang.String"
      vmodl-name="serialNumber"
      version-id-ref="vim.version.version12"
      is-optional="true"
      >
      </property>

   </data-object>
   <data-object name="CryptoManagerKmipServerCertInfo"
      type-id="vim.encryption.CryptoManagerKmip.ServerCertInfo"
      vmodl-name="vim.encryption.CryptoManagerKmip.ServerCertInfo"
      enclosing-type-id-ref="vim.encryption.CryptoManagerKmip"
      version-id-ref="vim.version.version11"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Information about the KMIP server certificate.]]>
      </description-html>
            <property name="certificate" type-id-ref="java.lang.String"
      vmodl-name="certificate"
      >
      <description-html>
         <![CDATA[The server certificate.]]>
      </description-html>
      </property>

            <property name="certInfo" type-id-ref="vim.encryption.CryptoManagerKmip.CertificateInfo"
      vmodl-name="certInfo"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The basic information about server's certificate.]]>
      </description-html>
      </property>

            <property name="clientTrustServer" type-id-ref="BOOLEAN"
      vmodl-name="clientTrustServer"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Whether this KMS server is trusted by local Kmip client.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="BaseConfigInfoBackingInfo"
      type-id="vim.vslm.BaseConfigInfo.BackingInfo"
      vmodl-name="vim.vslm.BaseConfigInfo.BackingInfo"
      enclosing-type-id-ref="vim.vslm.BaseConfigInfo"
      version-id-ref="vim.version.version11"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The data object type is a base type of backing of a virtual
 storage object.]]>
      </description-html>
            <property name="datastore" type-id-ref="vim.Datastore"
      vmodl-name="datastore"
      >
      <description-html>
         <![CDATA[The datastore managed object where this backing is located.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualPS2ControllerOption"
      type-id="vim.vm.device.VirtualPS2ControllerOption"
      vmodl-name="vim.vm.device.VirtualPS2ControllerOption"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.device.VirtualControllerOption"
      >
      <description-html>
         <![CDATA[The VirtualPS2ControllerOption data object type contains the options
  for a virtual PS/2 controller for keyboards and mice. In addition to
  the options defined in the <a href="vim.vm.device.VirtualControllerOption.html">VirtualControllerOption</a> data object type, these options include the
  number of keyboards and mice.]]>
      </description-html>
            <property name="numKeyboards" type-id-ref="vim.option.IntOption"
      vmodl-name="numKeyboards"
      >
      <description-html>
         <![CDATA[The minimum, maximum, and default number of keyboards you can
  have at any given time. This is further constrained  by the number
  of available slots in the PS/2 controller. The minimum, maximum,
  and default are integers defined by three properties:
  <p>
  <ul>
  <li><b>numKeyBoards.min</b>:  the minimum.
  <li><b>numKeyBoards.max</b>:  the maximum.
  <li><b>numKeyBoards.defaultValue</b>: the default number.
  </ul>]]>
      </description-html>
      </property>

            <property name="numPointingDevices" type-id-ref="vim.option.IntOption"
      vmodl-name="numPointingDevices"
      >
      <description-html>
         <![CDATA[The minimum, maximum, and default number of mice you can
  have at any given time. The number of mice is also limited by the number
  of available slots in the PS/2 controller. The minimum, maximum, and
  default are integers defined by three properties:
  <p>
  <ul>
  <li><b>numPointingDevices.min</b>: the minimum.
  <li><b>numPointingDevices.max</b>: the maximum.
  <li><b>numPointingDevices.defaultValue</b>: the default number.
  </ul>]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HbrManagerVmReplicationCapability"
      type-id="vim.HbrManager.VmReplicationCapability"
      vmodl-name="vim.HbrManager.VmReplicationCapability"
      enclosing-type-id-ref="vim.HbrManager"
      version-id-ref="vim.version.version10"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object represents the capabilities of a given
 <a href="vim.VirtualMachine.html">VirtualMachine</a>.]]>
      </description-html>
            <property name="vm" type-id-ref="vim.VirtualMachine"
      vmodl-name="vm"
      >
      </property>

            <property name="supportedQuiesceMode" type-id-ref="java.lang.String"
      vmodl-name="supportedQuiesceMode"
      >
      <description-html>
         <![CDATA[A string representing the current QuiesceMode of the virtual machine.]]>
      </description-html>
      </property>

            <property name="compressionSupported" type-id-ref="BOOLEAN"
      vmodl-name="compressionSupported"
      >
      <description-html>
         <![CDATA[Flag indicating compression support on the host on which this virtual
 machine is running.]]>
      </description-html>
      </property>

            <property name="maxSupportedSourceDiskCapacity" type-id-ref="LONG"
      vmodl-name="maxSupportedSourceDiskCapacity"
      >
      <description-html>
         <![CDATA[Maximum disk size supported (in bytes) on the host on which this virtual
 machine is running.]]>
      </description-html>
      </property>

            <property name="minRpo" type-id-ref="LONG"
      vmodl-name="minRpo"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Minimum rpo supported (in minutes) on the host on which this virtual
 machine is running.]]>
      </description-html>
      </property>

            <property name="fault" type-id-ref="vmodl.LocalizedMethodFault"
      vmodl-name="fault"
      is-optional="true"
      >
      <description-html>
         <![CDATA[If we are unable to find the VM, we would set this to NotFound fault.
 And, if we are unable to find the host for a given VM, then we would
 set this to HostNotReachable fault.
 Unset if we are able to fetch the capabilities for the VM.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.HbrManager.VmReplicationCapability.QuiesceMode</nested-type-id-ref>
   </data-object>
   <data-object name="VirtualDiskSparseVer1BackingInfo"
      type-id="vim.vm.device.VirtualDisk.SparseVer1BackingInfo"
      vmodl-name="vim.vm.device.VirtualDisk.SparseVer1BackingInfo"
      enclosing-type-id-ref="vim.vm.device.VirtualDisk"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.device.VirtualDevice.FileBackingInfo"
      >
      <description-html>
         <![CDATA[This data object type contains information about backing a virtual disk by
  using a virtual disk file on the host, in the sparse disk format used by
  GSX Server 2.x.]]>
      </description-html>
            <property name="diskMode" type-id-ref="java.lang.String"
      vmodl-name="diskMode"
      >
      <description-html>
         <![CDATA[The disk persistence mode. Valid values are:
  <ul>
  <li>vim.vm.device.VirtualDiskOption.DiskMode#persistent
  <li>vim.vm.device.VirtualDiskOption.DiskMode#nonpersistent
  <li>vim.vm.device.VirtualDiskOption.DiskMode#undoable
  <li>vim.vm.device.VirtualDiskOption.DiskMode#independent_persistent
  <li>vim.vm.device.VirtualDiskOption.DiskMode#independent_nonpersistent
  <li>vim.vm.device.VirtualDiskOption.DiskMode#append
  </ul><br>See <a href="vim.vm.device.VirtualDiskOption.DiskMode.html">VirtualDiskMode</a><br>]]>
      </description-html>
      </property>

            <property name="split" type-id-ref="BOOLEAN"
      vmodl-name="split"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Flag to indicate the type of virtual disk file: split or monolithic.
  If true, the virtual disk is stored in multiple files, each 2GB.]]>
      </description-html>
      </property>

            <property name="writeThrough" type-id-ref="BOOLEAN"
      vmodl-name="writeThrough"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Flag to indicate whether writes should go directly to the file system
  or should be buffered.]]>
      </description-html>
      </property>

            <property name="spaceUsedInKB" type-id-ref="LONG"
      vmodl-name="spaceUsedInKB"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The space in use for this sparse disk. This information is provided
 when retrieving configuration information for an existing virtual
 machine. The client cannot modify this information using reconfigure
 on a virtual machine.]]>
      </description-html>
      </property>

            <property name="contentId" type-id-ref="java.lang.String"
      vmodl-name="contentId"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Content ID of the virtual disk file, if available.
 <p>
 A content ID indicates the logical contents of the disk backing and its parents.
 <p>
 This property is only guaranteed to be up to date if this disk backing is not
 currently being written to by any virtual machine.
 <p>
 The only supported operation is comparing if two content IDs are equal or not.
 The guarantee provided by the content ID is that if two disk backings have the
 same content ID and are not currently being written to, then reads issued from
 the guest operating system to those disk backings will return the same data.]]>
      </description-html>
      </property>

            <property name="parent" type-id-ref="vim.vm.device.VirtualDisk.SparseVer1BackingInfo"
      vmodl-name="parent"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The parent of this virtual disk file, if this is a delta disk backing.
 This will be unset if this is not a delta disk backing.
 <p>
 A delta disk backing is a way to preserve a virtual disk backing
 at some point in time.  A delta disk backing is a file backing which in
 turn points to the original virtual disk backing (the parent).  After a delta
 disk backing is added, all writes go to the delta disk backing.  All reads
 first try the delta disk backing and then try the parent backing if needed.
 <p>
 A delta disk backing can be added to a disk either implicitly during
 snapshot operations, or explicitly during create or reconfigure of the virtual
 machine.
 <p>
 Note that the type of the backing is consistent throughout the chain; any new
 delta disk backing which is added is of the same type as the original disk .
 Also note that since the parent backing is not being written to,
 it is possible that the parent backing may be shared among multiple
 disks belonging to multiple virtual machines.
 <p>
 During virtual machine <a href="vim.Folder.html#createVm">CreateVM_Task</a> and
 <a href="vim.VirtualMachine.html#reconfigure">ReconfigVM_Task</a> this property is
 only checked if the <a href="vim.vm.device.VirtualDeviceSpec.html">VirtualDeviceConfigSpec</a> specifies
 an add operation with a
 create file operation.
 In this case, a new delta disk backing is created which points to the parent
 disk backing.  Only the <a href="vim.vm.device.VirtualDevice.FileBackingInfo.html#fileName">fileName</a>
 property is important; all other properties will be ignored.  The parent backing
 is assumed to exist and will not be recursively created.
 <p>
 This property may only be set if
 <a href="vim.host.Capability.html#deltaDiskBackingsSupported">deltaDiskBackingsSupported</a>
 is true.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostFirewallInfo"
      type-id="vim.host.FirewallInfo"
      vmodl-name="vim.host.FirewallInfo"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Data object describing the firewall configuration.]]>
      </description-html>
            <property name="defaultPolicy" type-id-ref="vim.host.FirewallInfo.DefaultPolicy"
      vmodl-name="defaultPolicy"
      >
      <description-html>
         <![CDATA[Default firewall policy.]]>
      </description-html>
      </property>

            <property name="ruleset" type-id-ref="vim.host.Ruleset"
      vmodl-name="ruleset"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of configured rulesets.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.host.FirewallInfo.DefaultPolicy</nested-type-id-ref>
   </data-object>
   <data-object name="NasStorageProfile"
      type-id="vim.profile.host.NasStorageProfile"
      vmodl-name="vim.profile.host.NasStorageProfile"
      version-id-ref="vim.version.version5"
      base-type-id="vim.profile.ApplyProfile"
      >
      <description-html>
         <![CDATA[The <a href="vim.profile.host.NasStorageProfile.html">NasStorageProfile</a> data object represents one NAS datastore configuration.
 Use the <a href="vim.profile.ApplyProfile.html#policy">policy</a> list for access to configuration data
 for the NAS storage profile. Use the <a href="vim.profile.ApplyProfile.html#property">property</a> list
 for access to subprofile configuration data, if any.]]>
      </description-html>
            <property name="key" type-id-ref="java.lang.String"
      vmodl-name="key"
      >
      <description-html>
         <![CDATA[Linkable identifier.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="NetDnsConfigSpec"
      type-id="vim.net.DnsConfigSpec"
      vmodl-name="vim.net.DnsConfigSpec"
      version-id-ref="vim.version.version6"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Domain Name Server (DNS) Configuration Specification -
  a data object for configuring the RFC 1034 client side DNS settings.

 TBD: remove this section, only for discussing what goes into this object.
  Place properties here that are specific to the RFC/common to all systems.
  Properties that are platform specific should go into a separate config spec.

     http://technet.microsoft.com/en-us/library/cc778792.aspx
     http://en.wikipedia.org/wiki/Microsoft_DNS]]>
      </description-html>
            <property name="dhcp" type-id-ref="BOOLEAN"
      vmodl-name="dhcp"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The flag to indicate whether or not dynamic host control
  protocol (DHCP) will be used to set DNS configuration automatically.
  See vim.net.DhcpConfigSpec]]>
      </description-html>
      </property>

            <property name="hostName" type-id-ref="java.lang.String"
      vmodl-name="hostName"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The host name portion of DNS name. For example,
  "esx01" part of esx01.example.com. The rules for forming a hostname
  are specified in RFC 1034.]]>
      </description-html>
      </property>

            <property name="domainName" type-id-ref="java.lang.String"
      vmodl-name="domainName"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The domain name portion of the DNS name. This would be the
  "example.com" part of  esx01.example.com. The rules for forming
  a domain name are defined in RFC 1034.]]>
      </description-html>
      </property>

            <property name="ipAddress" type-id-ref="java.lang.String"
      vmodl-name="ipAddress"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Unicast IP address(s) of one or more DNS servers in order of use.
  IPv4 addresses are specified using
  dotted decimal notation.  For example, "192.0.2.1".
  IPv6 addresses are 128-bit addresses represented as
  eight fields of up to four hexadecimal digits.
  A colon separates each field (:). For example,
  2001:DB8:101::230:6eff:fe04:d9ff. The address can also consist of the
  symbol '::' to represent multiple 16-bit groups of
  contiguous 0's only once in an address as described in RFC 2373.]]>
      </description-html>
      </property>

            <property name="searchDomain" type-id-ref="java.lang.String"
      vmodl-name="searchDomain"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The domain in which to search for hosts in order of preference.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DatacenterMismatchArgument"
      type-id="vim.fault.DatacenterMismatch.Argument"
      vmodl-name="vim.fault.DatacenterMismatch.Argument"
      enclosing-type-id-ref="vim.fault.DatacenterMismatch"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[An input entity argument that belongs to a mismatched datacenter.]]>
      </description-html>
            <property name="entity" type-id-ref="vim.ManagedEntity"
      vmodl-name="entity"
      >
      <description-html>
         <![CDATA[The invalid input entity.]]>
      </description-html>
      </property>

            <property name="inputDatacenter" type-id-ref="vim.Datacenter"
      vmodl-name="inputDatacenter"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The datacenter for this entity.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="OrAlarmExpression"
      type-id="vim.alarm.OrAlarmExpression"
      vmodl-name="vim.alarm.OrAlarmExpression"
      version-id-ref="vim.version.version1"
      base-type-id="vim.alarm.AlarmExpression"
      >
      <description-html>
         <![CDATA[A data object type that links multiple alarm expressions with OR operators.]]>
      </description-html>
            <property name="expression" type-id-ref="vim.alarm.AlarmExpression"
      vmodl-name="expression"
      is-array="true"
      >
      <description-html>
         <![CDATA[List of alarm expressions that define the overall status of the alarm.
  <p>
  <ul>
  <li>The state of the alarm expression is gray if all subexpressions are gray.
      Otherwise, gray subexpressions are ignored.
  <li>The state is red if any subexpression is red.
  <li>Otherwise, the state is yellow if any subexpression is yellow.
  <li>Otherwise, the state of the alarm expression is green.
  </ul>]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualMachineFileLayoutDiskLayout"
      type-id="vim.vm.FileLayout.DiskLayout"
      vmodl-name="vim.vm.FileLayout.DiskLayout"
      enclosing-type-id-ref="vim.vm.FileLayout"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Enumerats the set of files for each virtual disk.]]>
      </description-html>
            <property name="key" type-id-ref="INT"
      vmodl-name="key"
      >
      <description-html>
         <![CDATA[Identification of the disk in <a href="vim.vm.ConfigInfo.html">config</a>.]]>
      </description-html>
      </property>

            <property name="diskFile" type-id-ref="java.lang.String"
      vmodl-name="diskFile"
      is-array="true"
      >
      <description-html>
         <![CDATA[List of files that makes up the virtual disk. At least one entry
  always exists in this array. The first entry is the main
  descriptor of the virtual disk (the one used when adding the
  disk to a virtual machine). These are complete datastore paths, not
  relative paths.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VAppPropertyInfo"
      type-id="vim.vApp.PropertyInfo"
      vmodl-name="vim.vApp.PropertyInfo"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[A vApp Property description, including deployment values]]>
      </description-html>
            <property name="key" type-id-ref="INT"
      vmodl-name="key"
      >
      <description-html>
         <![CDATA[A unique integer key for the property.]]>
      </description-html>
      </property>

            <property name="classId" type-id-ref="java.lang.String"
      vmodl-name="classId"
      is-optional="true"
      >
      <description-html>
         <![CDATA[class name for this property
 <p>
 Valid values for classId:
 Any string except any white-space characters
 <p>
 Reconfigure privilege: VApp.ApplicationConfig]]>
      </description-html>
      </property>

            <property name="instanceId" type-id-ref="java.lang.String"
      vmodl-name="instanceId"
      is-optional="true"
      >
      <description-html>
         <![CDATA[class name for this property
 <p>
 Valid values for instanceId:
 Any string except any white-space characters
 <p>
 Reconfigure privilege: VApp.ApplicationConfig]]>
      </description-html>
      </property>

            <property name="id" type-id-ref="java.lang.String"
      vmodl-name="id"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Name of property. In the OVF environment, the property is listed as
  [classId.]id[.instanceId]. The [classId.]name[.instanceId] must be unique.
  <p>
  This field cannot be empty for a property. Thus, it must be specified at creation
  and cannot be set to the empty string.
 <p>
 Valid values for id:
 Any string except any white-space characters
 <p>
 Reconfigure privilege: VApp.ApplicationConfig]]>
      </description-html>
      </property>

            <property name="category" type-id-ref="java.lang.String"
      vmodl-name="category"
      is-optional="true"
      >
      <description-html>
         <![CDATA[A user-visible description the category the property belongs to.
 <p>
 Reconfigure privilege: VApp.ApplicationConfig]]>
      </description-html>
      </property>

            <property name="label" type-id-ref="java.lang.String"
      vmodl-name="label"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The display name for the property.
 <p>
 Reconfigure privilege: VApp.ApplicationConfig]]>
      </description-html>
      </property>

            <property name="type" type-id-ref="java.lang.String"
      vmodl-name="type"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Describes the valid format of the property.
  <p>
  A type must be one of:
  <ul>
  <li>string : A generic string. Max length 65535 (64k).
  <li>string(x..) : A string with minimum character length x.
  <li>string(..y) : A string with maximum character length y.
  <li>string(x..y) : A string with minimum character length x and maximum
                    character length y.
  <li>string["choice1", "choice2", "choice3"] : A set of choices. " inside a choice
  must be either \" or ' e.g "start\"middle\"end" or "start'middle'end" and
  a \ inside a string choice must be encoded as \\ e.g. "start\\end".
  <li>int : An integer value. Is semantically equivalent to
  int(-2147483648..2147483647) e.g. signed int32.
  <li>int(x..y): An integer value with a minimum size x and a maximum size y.
  For example int(0..255) is a number between 0 and 255 both incl. This is
  also a way to specify that the number must be a uint8. There is always a lower
  and lower bound. Max number of digits is 100 including any sign. If exported to OVF the
  value will be truncated to max of uint64 or int64.
  <li>real : IEEE 8-byte floating-point value.
  <li>real(x..y) : IEEE 8-byte floating-point value with a minimum size x and a
  maximum size y. For example real(-1.5..1.5) must be a number between -1.5 and 1.5.
  Because of the nature of float some conversions can truncate the value.
  Real must be encoded according to CIM:
  RealValue = [ "+" | "-" } *decimalDigit "." 1*decimalDigit
              [ ("e" | "E" ) [ "+" | "-" ] 1*decimalDigit ] ]
  <li>boolean : A boolean. The value can be True or False
  <li>password       : A generic string. Max length 65535 (64k).
  <li>password(x..)  : A string with minimum character length x.
  <li>password(..y)  : A string with maximum character length y.
  <li>password(x..y) : A string with minimum character length x and maximum
                       character length y.
  <li>ip  : An IPv4 address in dot-decimal notation or an IPv6 address in
            colon-hexadecimal notation.
  <li>ip:network  : An IP address in dot-notation (IPv4) and colon-hexadecimal (IPv6)
                    on a particular network. The behavior of this type depends on the
                    ipAllocationPolicy. See below.
  <li>expression: The default value specifies an expression that is calculated
                  by the system.
  </ul>
  For properties of type 'password', the value field and default value field will
  always be returned as an empty string when queried. Thus, it is a write-only property.
  Typically, a client application will also render these as a text field with hidden
  text and double prompting.
  <br>
  An expression follows the general patterns of either ${arg} or ${cmd:arg}. The
  list of supported expressions are listed below:
  <ul>
  <li> ${&lt;name&gt;} : This expression evaluates to the same value as the named
                         property in the parent vApp. A parent vApp is the
                         first vApp in the ancestry chain (resource pools are
                         skipped). If no parent vApp exists or the property is
                         not defined on the parent vApp, the expression
                         evaluates to the empty value.
  <li> ${subnet:&lt;network&gt;}  : The subnet value of the given network.
  <li> ${netmask:&lt;network&gt;} : The netmask value of the given network.
  <li> ${gateway:&lt;network&gt;} : The gateway value of the given network.
  <li> ${autoIp:&lt;network&gt;}  : An auto-assigned network address on the given
                                    network
  <li> ${net:&lt;network&gt;}     : The name of the network
  <li> ${domainName:&lt;network&gt;} : The DNS domain name, e.g., vmware.com, of
                                    the given network.
  <li> ${searchPath:&lt;network&gt;} : The DNS search path, e.g.,
                                     eng.vmware.com;vmware.com, of the given
                                     network.
  <li> ${hostPrefix:&lt;network&gt;}: The host prefix on a given network,  e.g.,
                                      "voe-"
  <li> ${dns:network}: A comma-separated string of configured network addresses
  <li> ${httpProxy:network}: The hostname:port for a proxy on the network
  <li> ${vimIp:} : The IP address of the VIM API provider server. This would
                    typical be an ESX Server or VirtualCenter Server.
  </ul>
  A vApp will fail to start if any of the properties cannot be computed. For
  example, if a property reference a gateway on a network, for which is has not
  been specified. The value of the computed computation is assigned to the 'value'
  field upon start of the vApp or virtual machine. The value is cleared once
  the vApp or virtual machine is not-running.
  <p>
  The system provides three ways of specifying IP addresses:
  <ul>
    <li>ip,</li>
    <li>ip:network type,</li>
    <li>${ip:network} expression.</li>
  </ul>
  The <em>ip</em> types are typically used to specify an IP addressed to an
  external system. Thus, these are not used by a virtual ethernet adapter
  within the guest itself. Both the ip:network expression and the ${ip:network}
  expression are intended as a way to obtain an IP address for a virtual machine
  in a vApp.
  <p>
  The behavior of ip:network type is controlled by the ipAssignPolicy, as
  described in the following table:

  <table>
    <tr>
       <td><strong>Policy</strong></td>
       <td>ip:&lt;network&gt; type</td>
  </tr>
  <tr>
     <td>DHCP</td>
     <td>The user is not prompted to enter a value. The variable is set to the
         empty string during power-on, and later updated with the IP value reported
         by the guest software.
     </td>
  </tr>
  <tr>
     <td>Transient</td>
     <td>The user is not prompted to enter a value. An IP address is allocated by
         the platform and is assigned to the variable which is available to the
         guest. The IP address is released at power-off.</td>
  </tr>
  <tr>
     <td>Fixed</td>
     <td>The user is prompted to enter a value. This value is available to the
         guest.</td>
  </tr>
  <tr>
     <td>Fixed Allocated</td>
     <td>The user is not prompted to enter a value. An IP address is allocated by
         the platform and is assigned to the variable which is available to the
         guest. The IP address remains allocated at power-off, and are only
         released if the property is deleted or the vApp is destroyed.</td>
  </tr>
 </table>

 <p>
 Reconfigure privilege: VApp.ApplicationConfig]]>
      </description-html>
      </property>

            <property name="typeReference" type-id-ref="java.lang.String"
      vmodl-name="typeReference"
      version-id-ref="vim.version.version8"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Contains extra configuration data depending on the property type. For types that
 refer to network names the type reference is the managed object reference
 of the network.]]>
      </description-html>
      </property>

            <property name="userConfigurable" type-id-ref="BOOLEAN"
      vmodl-name="userConfigurable"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Whether the property is user-configurable or a system property. This is not used
  if the type is expression.
 <p>
 Reconfigure privilege: VApp.ApplicationConfig]]>
      </description-html>
      </property>

            <property name="defaultValue" type-id-ref="java.lang.String"
      vmodl-name="defaultValue"
      is-optional="true"
      >
      <description-html>
         <![CDATA[This either contains the default value of a field (used if value is empty
  string), or the expression if the type is "expression". See comment for the]]>
      </description-html>
      </property>

            <property name="value" type-id-ref="java.lang.String"
      vmodl-name="value"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The value of the field at deployment time. For expressions, this will contain
   the value that has been computed.
 <p>
 Reconfigure privilege: VApp.InstanceConfig]]>
      </description-html>
      </property>

            <property name="description" type-id-ref="java.lang.String"
      vmodl-name="description"
      is-optional="true"
      >
      <description-html>
         <![CDATA[A description of the field.
 <p>
 Reconfigure privilege: VApp.ApplicationConfig]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ScheduledTaskSpec"
      type-id="vim.scheduler.ScheduledTaskSpec"
      vmodl-name="vim.scheduler.ScheduledTaskSpec"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Parameters for scheduled task creation.]]>
      </description-html>
            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      >
      <description-html>
         <![CDATA[Name of the scheduled task.]]>
      </description-html>
      </property>

            <property name="description" type-id-ref="java.lang.String"
      vmodl-name="description"
      >
      <description-html>
         <![CDATA[Description of the scheduled task.]]>
      </description-html>
      </property>

            <property name="enabled" type-id-ref="BOOLEAN"
      vmodl-name="enabled"
      >
      <description-html>
         <![CDATA[Flag to indicate whether the scheduled task is enabled or disabled.]]>
      </description-html>
      </property>

            <property name="scheduler" type-id-ref="vim.scheduler.TaskScheduler"
      vmodl-name="scheduler"
      >
      <description-html>
         <![CDATA[The time scheduler that determines when the scheduled task runs.]]>
      </description-html>
      </property>

            <property name="action" type-id-ref="vim.action.Action"
      vmodl-name="action"
      >
      <description-html>
         <![CDATA[The action of the scheduled task, to be done when the scheduled task runs.]]>
      </description-html>
      </property>

            <property name="notification" type-id-ref="java.lang.String"
      vmodl-name="notification"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The email notification.
  If not set, this property is set to empty string, indicating no notification.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualPCIController"
      type-id="vim.vm.device.VirtualPCIController"
      vmodl-name="vim.vm.device.VirtualPCIController"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.device.VirtualController"
      >
      <description-html>
         <![CDATA[The VirtualPCIController data object type defines a virtual PCI
  controller.]]>
      </description-html>
   </data-object>
   <data-object name="CustomFieldDefAddedEvent"
      type-id="vim.event.CustomFieldDefAddedEvent"
      vmodl-name="vim.event.CustomFieldDefAddedEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.CustomFieldDefEvent"
      >
      <description-html>
         <![CDATA[This event records the addition of a custom field definition.]]>
      </description-html>
   </data-object>
   <data-object name="GuestListFileInfo"
      type-id="vim.vm.guest.FileManager.ListFileInfo"
      vmodl-name="vim.vm.guest.FileManager.ListFileInfo"
      enclosing-type-id-ref="vim.vm.guest.FileManager"
      version-id-ref="vim.version.version7"
      base-type-id="vmodl.DynamicData"
      >
            <property name="files" type-id-ref="vim.vm.guest.FileManager.FileInfo"
      vmodl-name="files"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[A list of <a href="vim.vm.guest.FileManager.FileInfo.html">GuestFileInfo</a>
 data objects containing information for all the matching files.]]>
      </description-html>
      </property>

            <property name="remaining" type-id-ref="INT"
      vmodl-name="remaining"
      >
      <description-html>
         <![CDATA[The number of files left to be returned.  If non-zero,
 then the next set of files can be returned by calling
 ListFiles again with the index set to the number of results
 already returned.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualMachineSgxTargetInfo"
      type-id="vim.vm.SgxTargetInfo"
      vmodl-name="vim.vm.SgxTargetInfo"
      version-id-ref="vim.version.v7_0"
      base-type-id="vim.vm.TargetInfo"
      >
      <description-html>
         <![CDATA[Description of Intel Software Guard Extensions information.]]>
      </description-html>
            <property name="maxEpcSize" type-id-ref="LONG"
      vmodl-name="maxEpcSize"
      >
      <description-html>
         <![CDATA[Maximum size, in bytes, of EPC available on the compute resource.]]>
      </description-html>
      </property>

            <property name="flcModes" type-id-ref="java.lang.String"
      vmodl-name="flcModes"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[FLC modes available in the compute resource. The set of possible values
 are described in <a href="vim.vm.SgxInfo.FlcModes.html">VirtualMachineSgxInfoFlcModes</a>.]]>
      </description-html>
      </property>

            <property name="lePubKeyHashes" type-id-ref="java.lang.String"
      vmodl-name="lePubKeyHashes"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Public key hashes of the provider launch enclaves available in the
 compute resource.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="SoftwarePackage"
      type-id="vim.host.SoftwarePackage"
      vmodl-name="vim.host.SoftwarePackage"
      version-id-ref="vim.version.version11"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Software Packages provide discrete version and packaging.
  This data is reported by CLI:: esxcli software vib get -n ...]]>
      </description-html>
            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      >
      <description-html>
         <![CDATA[Identifier that uniquely identifies the software package.]]>
      </description-html>
      </property>

            <property name="version" type-id-ref="java.lang.String"
      vmodl-name="version"
      >
      <description-html>
         <![CDATA[Version string uniquely identifies this package.]]>
      </description-html>
      </property>

            <property name="type" type-id-ref="java.lang.String"
      vmodl-name="type"
      >
      <description-html>
         <![CDATA[Type of vib installed.
   See <a href="vim.host.SoftwarePackage.VibType.html">SoftwarePackageVibType</a>.]]>
      </description-html>
      </property>

            <property name="vendor" type-id-ref="java.lang.String"
      vmodl-name="vendor"
      >
      <description-html>
         <![CDATA[The corporate entity that created this package.]]>
      </description-html>
      </property>

            <property name="acceptanceLevel" type-id-ref="java.lang.String"
      vmodl-name="acceptanceLevel"
      >
      <description-html>
         <![CDATA[<br>See <a href="vim.host.ImageConfigManager.AcceptanceLevel.html">HostImageAcceptanceLevel</a><br>]]>
      </description-html>
      </property>

            <property name="summary" type-id-ref="java.lang.String"
      vmodl-name="summary"
      >
      <description-html>
         <![CDATA[A brief description of the package contents.]]>
      </description-html>
      </property>

            <property name="description" type-id-ref="java.lang.String"
      vmodl-name="description"
      >
      <description-html>
         <![CDATA[A full account of the package contents.]]>
      </description-html>
      </property>

            <property name="referenceURL" type-id-ref="java.lang.String"
      vmodl-name="referenceURL"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The list of SupportReference objects with in-depth support information.]]>
      </description-html>
      </property>

            <property name="creationDate" type-id-ref="vmodl.DateTime"
      vmodl-name="creationDate"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The time when the package was installed. On Autodeploy stateless installs
 there is no set value.]]>
      </description-html>
      </property>

            <property name="depends" type-id-ref="vim.host.SoftwarePackage.Relation"
      vmodl-name="depends"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[A list of VIBs that must be installed at the same time as this VIB.]]>
      </description-html>
      </property>

            <property name="conflicts" type-id-ref="vim.host.SoftwarePackage.Relation"
      vmodl-name="conflicts"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[A list of VIBs that cannot be installed at the same time as
 this VIB for a given version.]]>
      </description-html>
      </property>

            <property name="replaces" type-id-ref="vim.host.SoftwarePackage.Relation"
      vmodl-name="replaces"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[A list of SoftwareConstraint objects that identify VIBs that
 replace this VIB or make it obsolete. VIBs automatically replace VIBs with
 the same name but lower versions.]]>
      </description-html>
      </property>

            <property name="provides" type-id-ref="java.lang.String"
      vmodl-name="provides"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[A list of virtual packages or interfaces this VIB provides.]]>
      </description-html>
      </property>

            <property name="maintenanceModeRequired" type-id-ref="BOOLEAN"
      vmodl-name="maintenanceModeRequired"
      is-optional="true"
      >
      <description-html>
         <![CDATA[True if hosts must be in maintenance mode for installation of this VIB.]]>
      </description-html>
      </property>

            <property name="hardwarePlatformsRequired" type-id-ref="java.lang.String"
      vmodl-name="hardwarePlatformsRequired"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[A list of hardware platforms this package is supported on.]]>
      </description-html>
      </property>

            <property name="capability" type-id-ref="vim.host.SoftwarePackage.Capability"
      vmodl-name="capability"
      >
      <description-html>
         <![CDATA[A set of optional attributes for this package.]]>
      </description-html>
      </property>

            <property name="tag" type-id-ref="java.lang.String"
      vmodl-name="tag"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[A list of string tags for this package defined by the vendor
 or publisher. Tags can be used to identify characteristics of a package.]]>
      </description-html>
      </property>

            <property name="payload" type-id-ref="java.lang.String"
      vmodl-name="payload"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[A list of string tags to indicate one or more of what is
 contained: may be one of bootloader, upgrade, bootisobios, bootisoefi,
 vgz, tgz, boot or other values.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.host.SoftwarePackage.VibType</nested-type-id-ref>
      <nested-type-id-ref>vim.host.SoftwarePackage.Capability</nested-type-id-ref>
      <nested-type-id-ref>vim.host.SoftwarePackage.Constraint</nested-type-id-ref>
      <nested-type-id-ref>vim.host.SoftwarePackage.Relation</nested-type-id-ref>
   </data-object>
   <data-object name="DrsResourceConfigureSyncedEvent"
      type-id="vim.event.DrsResourceConfigureSyncedEvent"
      vmodl-name="vim.event.DrsResourceConfigureSyncedEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.HostEvent"
      >
      <description-html>
         <![CDATA[This event records when resource configuration
  specification returns to synchronized from previous failure.]]>
      </description-html>
   </data-object>
   <data-object name="AnswerFileCreateSpec"
      type-id="vim.profile.host.ProfileManager.AnswerFileCreateSpec"
      vmodl-name="vim.profile.host.ProfileManager.AnswerFileCreateSpec"
      enclosing-type-id-ref="vim.profile.host.ProfileManager"
      version-id-ref="vim.version.version7"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Base class for host-specific answer file options.]]>
      </description-html>
            <property name="validating" type-id-ref="BOOLEAN"
      vmodl-name="validating"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[If "false", then the answer file will be saved without being validated.
 The default if not specified is "true".
 This option should be used with caution, since the resulting answer
 file will not be checked for errors.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DvsPortVendorSpecificStateChangeEvent"
      type-id="vim.event.DvsPortVendorSpecificStateChangeEvent"
      vmodl-name="vim.event.DvsPortVendorSpecificStateChangeEvent"
      version-id-ref="vim.version.version8"
      base-type-id="vim.event.DvsEvent"
      >
      <description-html>
         <![CDATA[A port of which vendor specific state is changed in the vNetwork Distributed
  Switch.]]>
      </description-html>
            <property name="portKey" type-id-ref="java.lang.String"
      vmodl-name="portKey"
      >
      <description-html>
         <![CDATA[The port key.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ServiceConsoleReservationInfo"
      type-id="vim.host.MemoryManagerSystem.ServiceConsoleReservationInfo"
      vmodl-name="vim.host.MemoryManagerSystem.ServiceConsoleReservationInfo"
      enclosing-type-id-ref="vim.host.MemoryManagerSystem"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The ServiceConsoleReservationInfo data object type describes the
  amount of memory that is being reserved by the service console.
  Memory reserved for use by the service console is a hard reservation
  that cannot be changed except across hardware restarts.
  <p>
  This memory that is reserved for the service console is used primarily
  to provide system management services.  In addition, a small overhead
  is needed by each virtual machine on the service console.
  <p>
  The only property of the data object that can be changed directly is the
  serviceConsoleReservedCfg property.  This property indicates how much
  memory should be reserved for the service console on the next boot.  In
  most cases, this amount is the same as the current reservation.]]>
      </description-html>
            <property name="serviceConsoleReservedCfg" type-id-ref="LONG"
      vmodl-name="serviceConsoleReservedCfg"
      >
      <description-html>
         <![CDATA[The amount of memory that should be reserved for the service console on
  the next boot.]]>
      </description-html>
      </property>

            <property name="serviceConsoleReserved" type-id-ref="LONG"
      vmodl-name="serviceConsoleReserved"
      >
      <description-html>
         <![CDATA[The amount of memory that is currently reserved for the service console.]]>
      </description-html>
      </property>

            <property name="unreserved" type-id-ref="LONG"
      vmodl-name="unreserved"
      >
      <description-html>
         <![CDATA[The amount of memory that is not reserved for use by the service console.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ClusterProfileConfigInfo"
      type-id="vim.profile.cluster.ClusterProfile.ConfigInfo"
      vmodl-name="vim.profile.cluster.ClusterProfile.ConfigInfo"
      enclosing-type-id-ref="vim.profile.cluster.ClusterProfile"
      version-id-ref="vim.version.version5"
      base-type-id="vim.profile.Profile.ConfigInfo"
      >
            <property name="complyProfile" type-id-ref="vim.profile.ComplianceProfile"
      vmodl-name="complyProfile"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Compliance profile for the cluster]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostDasErrorEvent"
      type-id="vim.event.HostDasErrorEvent"
      vmodl-name="vim.event.HostDasErrorEvent"
      version-id-ref="vim.version.version1"
      is-deprecated="true"
      base-type-id="vim.event.HostEvent"
      >
      <description-html>
         <![CDATA[This event records when there is a HA error on a host.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 5.0, the Server will generate the <a href="vim.event.EventEx.html">EventEx</a> event
  with the <a href="vim.event.EventEx.html#eventTypeId">eventTypeId</a> property set to "com.vmware.vc.HA.HostAgentErrorEvent".]]>
      </deprecated-html>
            <property name="message" type-id-ref="java.lang.String"
      vmodl-name="message"
      version-id-ref="vim.version.version2"
      is-optional="true"
      >
      </property>

            <property name="reason" type-id-ref="java.lang.String"
      vmodl-name="reason"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The reason for the failure.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.event.HostDasErrorEvent.HostDasErrorReason</nested-type-id-ref>
   </data-object>
   <data-object name="VirtualPointingDeviceBackingOption"
      type-id="vim.vm.device.VirtualPointingDeviceOption.DeviceBackingOption"
      vmodl-name="vim.vm.device.VirtualPointingDeviceOption.DeviceBackingOption"
      enclosing-type-id-ref="vim.vm.device.VirtualPointingDeviceOption"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.device.VirtualDeviceOption.DeviceBackingOption"
      >
      <description-html>
         <![CDATA[The DeviceBackingOption data object type represents
  the options for a pointing device backing a
  VirtualPointingDevice data object type.]]>
      </description-html>
            <property name="hostPointingDevice" type-id-ref="vim.option.ChoiceOption"
      vmodl-name="hostPointingDevice"
      >
      <description-html>
         <![CDATA[This object defines the supported mouse types, including the default
  supported mouse type, with the following properties:
  <p>
  <ul>
  <li><b>hostPointingDevices.value</b>:  This array defines the
  supported mouse types.
  <li><b>hostPointingDevices.choiceDescription</b>: This array
  provides the descriptions for the supported mouse types defined by
  hostPointingDevices.value.
  <li><b>hostPointingDevices.defaultIndex</b>: This integer points
  to an index in the hostPointingDevices.value array.  This is the
  mouse type supported by default.
  </ul>]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.vm.device.VirtualPointingDeviceOption.DeviceBackingOption.HostPointingDeviceChoice</nested-type-id-ref>
   </data-object>
   <data-object name="ExtendedDescription"
      type-id="vim.ExtendedDescription"
      vmodl-name="vim.ExtendedDescription"
      version-id-ref="vim.version.version5"
      base-type-id="vim.Description"
      >
            <property name="messageCatalogKeyPrefix" type-id-ref="java.lang.String"
      vmodl-name="messageCatalogKeyPrefix"
      >
      <description-html>
         <![CDATA[Key to the localized message string in the catalog.
 If the localized string contains parameters, values to the
 parameters will be provided in #messageArg.

    E.g: If the message in the catalog is
 "IP address is {address}", value for "address"
 will be provided by #messageArg.

    Both summary and label in Description will have a corresponding
 entry in the message catalog with the keys
 <messageCatalogKeyPrefix>.summary and <messageCatalogKeyPrefix>.label
 respectively.

 Description.summary and Description.label will contain
 the strings in server locale.]]>
      </description-html>
      </property>

            <property name="messageArg" type-id-ref="vmodl.KeyAnyValue"
      vmodl-name="messageArg"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Provides named arguments that can be used to localize the
 message in the catalog.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="GuestInfoVirtualDiskMapping"
      type-id="vim.vm.GuestInfo.VirtualDiskMapping"
      vmodl-name="vim.vm.GuestInfo.VirtualDiskMapping"
      enclosing-type-id-ref="vim.vm.GuestInfo"
      version-id-ref="vim.version.v7_0"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Describes the virtual disk backing a local guest disk.]]>
      </description-html>
            <property name="key" type-id-ref="INT"
      vmodl-name="key"
      >
      <description-html>
         <![CDATA[The key of the VirtualDevice.
 <a href="vim.vm.device.VirtualDevice.html#key">key</a>]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="NetIpConfigInfoIpAddress"
      type-id="vim.net.IpConfigInfo.IpAddress"
      vmodl-name="vim.net.IpConfigInfo.IpAddress"
      enclosing-type-id-ref="vim.net.IpConfigInfo"
      version-id-ref="vim.version.version6"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Information about a specific IP Address.]]>
      </description-html>
            <property name="ipAddress" type-id-ref="java.lang.String"
      vmodl-name="ipAddress"
      >
      <description-html>
         <![CDATA[IPv4 address is specified using dotted decimal notation.
  For example, "192.0.2.1".
  IPv6 addresses are 128-bit addresses represented as eight fields
  of up to four hexadecimal digits.
  A colon separates each field (:). For example,
  2001:DB8:101::230:6eff:fe04:d9ff. The address can also consist of the
  symbol '::' to represent multiple 16-bit groups of
  contiguous 0's only once in an address as described in RFC 2373.]]>
      </description-html>
      </property>

            <property name="prefixLength" type-id-ref="INT"
      vmodl-name="prefixLength"
      >
      <description-html>
         <![CDATA[Denotes the length of a generic Internet network address
 prefix.
 The prefix length for IPv4 the value range is 0-32.
 For IPv6 prefixLength is a decimal value range 0-128.
 A value of n corresponds to an IP address mask
 that has n contiguous 1-bits from the most significant
 bit (MSB), with all other bits set to 0.
 A value of zero is valid only if the calling context defines
 it.]]>
      </description-html>
      </property>

            <property name="origin" type-id-ref="java.lang.String"
      vmodl-name="origin"
      is-optional="true"
      >
      <description-html>
         <![CDATA[How this address was configured. This can be
 one of the values from the enum IpAddressOrigin
 See IpAddressOrigin for values.]]>
      </description-html>
      </property>

            <property name="state" type-id-ref="java.lang.String"
      vmodl-name="state"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The state of this ipAddress. Can be one of IpAddressStatus.]]>
      </description-html>
      </property>

            <property name="lifetime" type-id-ref="vmodl.DateTime"
      vmodl-name="lifetime"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The time when will this address expire. Durning this time
 state may change states but is still visible
 from the network.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualMachineDatastoreInfo"
      type-id="vim.vm.DatastoreInfo"
      vmodl-name="vim.vm.DatastoreInfo"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.TargetInfo"
      >
      <description-html>
         <![CDATA[DatastoreInfo describes a datastore that a virtual disk can be
  stored on.]]>
      </description-html>
            <property name="datastore" type-id-ref="vim.Datastore.Summary"
      vmodl-name="datastore"
      >
      <description-html>
         <![CDATA[Information about the datastore]]>
      </description-html>
      </property>

            <property name="capability" type-id-ref="vim.Datastore.Capability"
      vmodl-name="capability"
      >
      <description-html>
         <![CDATA[Information about the datastore capabilities]]>
      </description-html>
      </property>

            <property name="maxFileSize" type-id-ref="LONG"
      vmodl-name="maxFileSize"
      >
      <description-html>
         <![CDATA[The maximum size of a file that can reside on this datastore.]]>
      </description-html>
      </property>

            <property name="maxVirtualDiskCapacity" type-id-ref="LONG"
      vmodl-name="maxVirtualDiskCapacity"
      version-id-ref="vim.version.version9"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The maximum capacity of a virtual disk which can be created on this volume]]>
      </description-html>
      </property>

            <property name="maxPhysicalRDMFileSize" type-id-ref="LONG"
      vmodl-name="maxPhysicalRDMFileSize"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Maximum raw device mapping size (physical compatibility)]]>
      </description-html>
      </property>

            <property name="maxVirtualRDMFileSize" type-id-ref="LONG"
      vmodl-name="maxVirtualRDMFileSize"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Maximum raw device mapping size (virtual compatibility)]]>
      </description-html>
      </property>

            <property name="mode" type-id-ref="java.lang.String"
      vmodl-name="mode"
      >
      <description-html>
         <![CDATA[Access mode for this datastore. This is either
  readOnly or readWrite. A virtual disk needs to be
  stored on readWrite datastore. ISOs can be read
  from a readOnly datastore.<br>See <a href="vim.host.MountInfo.AccessMode.html">HostMountMode</a><br>]]>
      </description-html>
      </property>

            <property name="vStorageSupport" type-id-ref="java.lang.String"
      vmodl-name="vStorageSupport"
      version-id-ref="vim.version.version7"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicate the states of vStorage hardware acceleration
 support for this datastore.
 <p><br>See <a href="vim.host.FileSystemMountInfo.VStorageSupportStatus.html">FileSystemMountInfoVStorageSupportStatus</a><br>]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostVFlashManagerVFlashConfigInfo"
      type-id="vim.host.VFlashManager.VFlashConfigInfo"
      vmodl-name="vim.host.VFlashManager.VFlashConfigInfo"
      enclosing-type-id-ref="vim.host.VFlashManager"
      version-id-ref="vim.version.version9"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[vFlash configuration Information.]]>
      </description-html>
            <property name="vFlashResourceConfigInfo" type-id-ref="vim.host.VFlashManager.VFlashResourceConfigInfo"
      vmodl-name="vFlashResourceConfigInfo"
      is-optional="true"
      >
      <description-html>
         <![CDATA[vFlash resource configuration information]]>
      </description-html>
      </property>

            <property name="vFlashCacheConfigInfo" type-id-ref="vim.host.VFlashManager.VFlashCacheConfigInfo"
      vmodl-name="vFlashCacheConfigInfo"
      is-optional="true"
      >
      <description-html>
         <![CDATA[vFlash cache configuration information]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VmRelayoutUpToDateEvent"
      type-id="vim.event.VmRelayoutUpToDateEvent"
      vmodl-name="vim.event.VmRelayoutUpToDateEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.VmEvent"
      >
      <description-html>
         <![CDATA[This event records that a virtual machine is already in the
 correct format. No relay out is necessary.]]>
      </description-html>
   </data-object>
   <data-object name="CustomizationIPSettingsIpV6AddressSpec"
      type-id="vim.vm.customization.IPSettings.IpV6AddressSpec"
      vmodl-name="vim.vm.customization.IPSettings.IpV6AddressSpec"
      enclosing-type-id-ref="vim.vm.customization.IPSettings"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[IPv6 settings]]>
      </description-html>
            <property name="ip" type-id-ref="vim.vm.customization.IpV6Generator"
      vmodl-name="ip"
      is-array="true"
      >
      <description-html>
         <![CDATA[ipv6 address generators]]>
      </description-html>
      </property>

            <property name="gateway" type-id-ref="java.lang.String"
      vmodl-name="gateway"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[gateways]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="OvfFileItem"
      type-id="vim.OvfManager.FileItem"
      vmodl-name="vim.OvfManager.FileItem"
      enclosing-type-id-ref="vim.OvfManager"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[An FileItem represents a file that must be uploaded by the caller when the
 inventory objects has been created in VI. These objects are created by <a href="vim.ResourcePool.html#importVApp">ImportVApp</a>.
 <p>
 Files can either be new files, in which case the "create" flag will be true, or
 updates to existing files in VI. The latter is used to support the OVF parentRef
 mechanism for Disks.]]>
      </description-html>
            <property name="deviceId" type-id-ref="java.lang.String"
      vmodl-name="deviceId"
      >
      <description-html>
         <![CDATA[Uniquely identifies the device (disk, CD-ROM etc.) within the entity hierarchy.
 <p>
 When <a href="vim.ResourcePool.html#importVApp">ImportVApp</a> is
 called to create the <a href="vim.VirtualMachine.html">VirtualMachine</a>s and <a href="vim.VirtualApp.html">VirtualApp</a>s, it returns a map,
 device ID -> URL, of where to upload the backing files.]]>
      </description-html>
      </property>

            <property name="path" type-id-ref="java.lang.String"
      vmodl-name="path"
      >
      <description-html>
         <![CDATA[The path of the item to upload, relative to the path of the OVF descriptor.]]>
      </description-html>
      </property>

            <property name="compressionMethod" type-id-ref="java.lang.String"
      vmodl-name="compressionMethod"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The compression method as specified by the OVF
 specification (for example "gzip" or "bzip2").]]>
      </description-html>
      </property>

            <property name="chunkSize" type-id-ref="LONG"
      vmodl-name="chunkSize"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The chunksize as specified by the OVF specification.

 If this attribute is set, the "path" attribute is a prefix to
 each chunk of the complete file.

 For example, if chunksize is 2000000000 bytes, the actual files
 might be:

 myfile.000000000  (2000000000 bytes)
 myfile.000000001  (2000000000 bytes)
 myfile.000000002  (1500000000 bytes)]]>
      </description-html>
      </property>

            <property name="size" type-id-ref="LONG"
      vmodl-name="size"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The complete size of the file, if it is specified in the
 OVF descriptor.]]>
      </description-html>
      </property>

            <property name="cimType" type-id-ref="INT"
      vmodl-name="cimType"
      >
      <description-html>
         <![CDATA[The CIM type of the device for which this file provides
 backing.
 <p>
 For example, the value 17 means "Disk drive".]]>
      </description-html>
      </property>

            <property name="create" type-id-ref="BOOLEAN"
      vmodl-name="create"
      >
      <description-html>
         <![CDATA[True if the item is not expected to exist in the infrastructure
 and should therefore be created by the caller (for example using HTTP PUT).]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualSoundCard"
      type-id="vim.vm.device.VirtualSoundCard"
      vmodl-name="vim.vm.device.VirtualSoundCard"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.device.VirtualDevice"
      >
      <description-html>
         <![CDATA[This data object type represents a sound card in
 a virtual machine.]]>
      </description-html>
      <nested-type-id-ref>vim.vm.device.VirtualSoundCard.DeviceBackingInfo</nested-type-id-ref>
   </data-object>
   <data-object name="ResourcePoolRuntimeInfo"
      type-id="vim.ResourcePool.RuntimeInfo"
      vmodl-name="vim.ResourcePool.RuntimeInfo"
      enclosing-type-id-ref="vim.ResourcePool"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Current runtime resource usage and state of the resource pool]]>
      </description-html>
            <property name="memory" type-id-ref="vim.ResourcePool.ResourceUsage"
      vmodl-name="memory"
      >
      <description-html>
         <![CDATA[Runtime resource usage for memory. Values are in bytes.]]>
      </description-html>
      </property>

            <property name="cpu" type-id-ref="vim.ResourcePool.ResourceUsage"
      vmodl-name="cpu"
      >
      <description-html>
         <![CDATA[Runtime resource usage for CPU. Values are in Mhz.]]>
      </description-html>
      </property>

            <property name="overallStatus" type-id-ref="vim.ManagedEntity.Status"
      vmodl-name="overallStatus"
      is-deprecated="true"
      >
      <description-html>
         <![CDATA[Overall health of the tree. See header for description of various
 statuses and when they are set.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[as of vSphere API 6.5.
 Use <a href="vim.ManagedEntity.html#overallStatus">OverallStatus</a>.]]>
      </deprecated-html>
      </property>

            <property name="sharesScalable" type-id-ref="java.lang.String"
      vmodl-name="sharesScalable"
      version-id-ref="vim.version.v7_0"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The scaling behavior of the shares of a given resource pool. See <a href="vim.ResourceConfigSpec.ScaleSharesBehavior.html">ResourceConfigSpecScaleSharesBehavior</a> for possible values. The
 system will automatically compute this property based on the <a href="vim.ResourceConfigSpec.html#scaleDescendantsShares">scaleDescendantsShares</a> setting on every
 ancestor resource pool. This property does not apply to virtual
 machines.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostDevice"
      type-id="vim.host.Device"
      vmodl-name="vim.host.Device"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object type defines a device on the host.]]>
      </description-html>
            <property name="deviceName" type-id-ref="java.lang.String"
      vmodl-name="deviceName"
      >
      <description-html>
         <![CDATA[The name of the device on the host. For example,
  /dev/cdrom or \\serverX\device_name.]]>
      </description-html>
      </property>

            <property name="deviceType" type-id-ref="java.lang.String"
      vmodl-name="deviceType"
      >
      <description-html>
         <![CDATA[Device type when available:
  floppy, mouse, cdrom, disk, scsi device, or adapter.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="UpdateSet"
      type-id="vmodl.query.PropertyCollector.UpdateSet"
      vmodl-name="vmodl.query.PropertyCollector.UpdateSet"
      enclosing-type-id-ref="vmodl.query.PropertyCollector"
      version-id-ref="vmodl.query.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[A set of updates that represent the changes since a prior call to <a href="vmodl.query.PropertyCollector.html#checkForUpdates">CheckForUpdates</a>, <a href="vmodl.query.PropertyCollector.html#waitForUpdates">WaitForUpdates</a>, or <a href="vmodl.query.PropertyCollector.html#waitForUpdatesEx">WaitForUpdatesEx</a>.]]>
      </description-html>
            <property name="version" type-id-ref="java.lang.String"
      vmodl-name="version"
      >
      <description-html>
         <![CDATA[New data version to pass in the next call to <a href="vmodl.query.PropertyCollector.html#checkForUpdates">CheckForUpdates</a>,
  <a href="vmodl.query.PropertyCollector.html#waitForUpdates">WaitForUpdates</a>, or <a href="vmodl.query.PropertyCollector.html#waitForUpdatesEx">WaitForUpdatesEx</a>.  These versions,
  although they are opaque, are strongly ordered in the sense that passing
  a version to <a href="vmodl.query.PropertyCollector.html#waitForUpdates">WaitForUpdates</a>, <a href="vmodl.query.PropertyCollector.html#checkForUpdates">CheckForUpdates</a> or
  <a href="vmodl.query.PropertyCollector.html#waitForUpdatesEx">WaitForUpdatesEx</a> requests updates that reflect changes in the
  objects selected by the Filter that happened after the specified version.]]>
      </description-html>
      </property>

            <property name="filterSet" type-id-ref="vmodl.query.PropertyCollector.FilterUpdate"
      vmodl-name="filterSet"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Set of managed object updates detected by specific filters.  Updates
  are reported in sets. Each set is associated with a reference to a
  filter that detected the updates in the set.]]>
      </description-html>
      </property>

            <property name="truncated" type-id-ref="BOOLEAN"
      vmodl-name="truncated"
      version-id-ref="vmodl.query.version.version3"
      is-optional="true"
      >
      <description-html>
         <![CDATA[If true, this <a href="vmodl.query.PropertyCollector.UpdateSet.html">UpdateSet</a> contains results
  from a suspended change calculation, which places restrictions on the
  use of version.

  <p> The <a href="vmodl.query.PropertyCollector.html">PropertyCollector</a> may suspend a calculation due to server
  policy or if the total number of <a href="vmodl.query.PropertyCollector.ObjectUpdate.html">ObjectUpdate</a> entries summed across every <a href="vmodl.query.PropertyCollector.FilterUpdate.html">PropertyFilterUpdate</a> reached the maximum specified in
  <a href="vmodl.query.PropertyCollector.WaitOptions.html#maxObjectUpdates">maxObjectUpdates</a>.  The client
  can pass the "truncated data version" to <a href="vmodl.query.PropertyCollector.html#waitForUpdatesEx">WaitForUpdatesEx</a> to
  resume the update calculation, which will start on the filter where it
  left off. A truncated data version cannot be used more than once and
  may not be passed to <a href="vmodl.query.PropertyCollector.html#checkForUpdates">CheckForUpdates</a> or <a href="vmodl.query.PropertyCollector.html#waitForUpdates">WaitForUpdates</a>.  <a href="vmodl.query.PropertyCollector.UpdateSet.html#truncated">truncated</a> will
  never be true in an <a href="vmodl.query.PropertyCollector.UpdateSet.html">UpdateSet</a> returned from
  <a href="vmodl.query.PropertyCollector.html#checkForUpdates">CheckForUpdates</a> or <a href="vmodl.query.PropertyCollector.html#waitForUpdates">WaitForUpdates</a>.

  <p> If false, this <a href="vmodl.query.PropertyCollector.UpdateSet.html">UpdateSet</a> contains a
  complete change calculation or the last part of a series of suspended
  change calculations.  The version may be passed to <a href="vmodl.query.PropertyCollector.html#checkForUpdates">CheckForUpdates</a>, <a href="vmodl.query.PropertyCollector.html#waitForUpdates">WaitForUpdates</a>, or <a href="vmodl.query.PropertyCollector.html#waitForUpdatesEx">WaitForUpdatesEx</a> more than once. Re-using a version allows a client
  to recover a change sequence after a transient failure on a previous
  call.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="StorageDrsConfigInfo"
      type-id="vim.storageDrs.ConfigInfo"
      vmodl-name="vim.storageDrs.ConfigInfo"
      version-id-ref="vim.version.version7"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The <a href="vim.storageDrs.ConfigInfo.html">StorageDrsConfigInfo</a> data object describes storage DRS configuration
  for a pod <a href="vim.StoragePod.html">StoragePod</a>.
  <p>]]>
      </description-html>
            <property name="podConfig" type-id-ref="vim.storageDrs.PodConfigInfo"
      vmodl-name="podConfig"
      >
      <description-html>
         <![CDATA[Pod-wide configuration of the storage DRS service.]]>
      </description-html>
      </property>

            <property name="vmConfig" type-id-ref="vim.storageDrs.VmConfigInfo"
      vmodl-name="vmConfig"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of virtual machine configurations for the storage DRS
  service. Each entry applies to all the virtual disks of the virtual machine
  on this pod.
  <p>
  If a virtual machine is not specified in this array, the service uses
  the default settings for that virtual machine.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DVSVmVnicNetworkResourcePool"
      type-id="vim.dvs.VmVnicNetworkResourcePool"
      vmodl-name="vim.dvs.VmVnicNetworkResourcePool"
      version-id-ref="vim.version.version10"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[DataObject describing the resource configuration and management of
  virtual NIC network resource pools.]]>
      </description-html>
            <property name="key" type-id-ref="java.lang.String"
      vmodl-name="key"
      >
      <description-html>
         <![CDATA[The key of the virtual NIC network resource pool.]]>
      </description-html>
      </property>

            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The name of the virtual NIC network resource pool.]]>
      </description-html>
      </property>

            <property name="description" type-id-ref="java.lang.String"
      vmodl-name="description"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The description of the virtual NIC network resource pool.]]>
      </description-html>
      </property>

            <property name="configVersion" type-id-ref="java.lang.String"
      vmodl-name="configVersion"
      >
      <description-html>
         <![CDATA[The config version for the virtual NIC network resource pool.]]>
      </description-html>
      </property>

            <property name="allocationInfo" type-id-ref="vim.dvs.VmVnicNetworkResourcePool.ResourceAllocation"
      vmodl-name="allocationInfo"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The resource settings of the virtual NIC network resource pool.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.dvs.VmVnicNetworkResourcePool.ResourceAllocation</nested-type-id-ref>
      <nested-type-id-ref>vim.dvs.VmVnicNetworkResourcePool.ConfigSpec</nested-type-id-ref>
      <nested-type-id-ref>vim.dvs.VmVnicNetworkResourcePool.VnicAllocatedResource</nested-type-id-ref>
      <nested-type-id-ref>vim.dvs.VmVnicNetworkResourcePool.RuntimeInfo</nested-type-id-ref>
   </data-object>
   <data-object name="RecoveryEvent"
      type-id="vim.event.RecoveryEvent"
      vmodl-name="vim.event.RecoveryEvent"
      version-id-ref="vim.version.version8"
      base-type-id="vim.event.DvsEvent"
      >
      <description-html>
         <![CDATA[This event is generated when recovery takes place on a management vmknic]]>
      </description-html>
            <property name="hostName" type-id-ref="java.lang.String"
      vmodl-name="hostName"
      >
      <description-html>
         <![CDATA[The host on which recovery happened]]>
      </description-html>
      </property>

            <property name="portKey" type-id-ref="java.lang.String"
      vmodl-name="portKey"
      >
      <description-html>
         <![CDATA[The key of the new port]]>
      </description-html>
      </property>

            <property name="dvsUuid" type-id-ref="java.lang.String"
      vmodl-name="dvsUuid"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The uuid of the DVS]]>
      </description-html>
      </property>

            <property name="vnic" type-id-ref="java.lang.String"
      vmodl-name="vnic"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The virtual management NIC device where recovery was done]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostProxySwitchConfig"
      type-id="vim.host.HostProxySwitch.Config"
      vmodl-name="vim.host.HostProxySwitch.Config"
      enclosing-type-id-ref="vim.host.HostProxySwitch"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object type describes the HostProxySwitch configuration
  containing both the configurable
  properties on a HostProxySwitch and identification information.]]>
      </description-html>
            <property name="changeOperation" type-id-ref="java.lang.String"
      vmodl-name="changeOperation"
      is-optional="true"
      >
      <description-html>
         <![CDATA[This property indicates the change operation to apply on
  this configuration specification. Valid values are:
  <ul>
  <li> vim.host.ConfigChange.Operation#edit </li>
  <li> vim.host.ConfigChange.Operation#remove </li>
  </ul><br>See <a href="vim.host.ConfigChange.Operation.html">HostConfigChangeOperation</a><br>]]>
      </description-html>
      </property>

            <property name="uuid" type-id-ref="java.lang.String"
      vmodl-name="uuid"
      >
      <description-html>
         <![CDATA[The uuid of the DistributedVirtualSwitch that the HostProxySwitch
  is a part of.]]>
      </description-html>
      </property>

            <property name="spec" type-id-ref="vim.host.HostProxySwitch.Specification"
      vmodl-name="spec"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The specification of the HostProxySwitch.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="AnswerFileUpdateFailure"
      type-id="vim.fault.AnswerFileUpdateFailed.UpdateFailure"
      vmodl-name="vim.fault.AnswerFileUpdateFailed.UpdateFailure"
      enclosing-type-id-ref="vim.fault.AnswerFileUpdateFailed"
      version-id-ref="vim.version.version7"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[DataObject which represents the errors that occurred when an
 answer file update was performed.]]>
      </description-html>
            <property name="userInputPath" type-id-ref="vim.profile.ProfilePropertyPath"
      vmodl-name="userInputPath"
      >
      <description-html>
         <![CDATA[The user input that has the error]]>
      </description-html>
      </property>

            <property name="errMsg" type-id-ref="vmodl.LocalizableMessage"
      vmodl-name="errMsg"
      >
      <description-html>
         <![CDATA[Message which explains the error]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="SessionManagerLocalTicket"
      type-id="vim.SessionManager.LocalTicket"
      vmodl-name="vim.SessionManager.LocalTicket"
      enclosing-type-id-ref="vim.SessionManager"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object type contains the user name
  and location of the file containing the password that
  clients can use for one-time logon to a server.]]>
      </description-html>
            <property name="userName" type-id-ref="java.lang.String"
      vmodl-name="userName"
      >
      <description-html>
         <![CDATA[User name to be used for logon.]]>
      </description-html>
      </property>

            <property name="passwordFilePath" type-id-ref="java.lang.String"
      vmodl-name="passwordFilePath"
      >
      <description-html>
         <![CDATA[Absolute local path to the file containing a one-time password.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ProfileChangedEvent"
      type-id="vim.event.ProfileChangedEvent"
      vmodl-name="vim.event.ProfileChangedEvent"
      version-id-ref="vim.version.version5"
      base-type-id="vim.event.ProfileEvent"
      >
      <description-html>
         <![CDATA[This event records that the profile has beed edited]]>
      </description-html>
   </data-object>
   <data-object name="KmipClusterInfo"
      type-id="vim.encryption.KmipClusterInfo"
      vmodl-name="vim.encryption.KmipClusterInfo"
      version-id-ref="vim.version.version11"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Data Object representing a cluster of KMIP servers.
 All servers in a cluster must provide the same keys.]]>
      </description-html>
            <property name="clusterId" type-id-ref="vim.encryption.KeyProviderId"
      vmodl-name="clusterId"
      >
      <description-html>
         <![CDATA[Globally unique ID for the servers providing the same keys.
 All KMIP servers with the same clusterId are in a cluster and all must
 provide the same keys for redundancy.]]>
      </description-html>
      </property>

            <property name="servers" type-id-ref="vim.encryption.KmipServerInfo"
      vmodl-name="servers"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Servers in this cluster.]]>
      </description-html>
      </property>

            <property name="useAsDefault" type-id-ref="BOOLEAN"
      vmodl-name="useAsDefault"
      >
      <description-html>
         <![CDATA[Use this cluster as default for system wide,
 when the optional CryptoKeyId.providerId is not set.]]>
      </description-html>
      </property>

            <property name="managementType" type-id-ref="java.lang.String"
      vmodl-name="managementType"
      version-id-ref="vim.version.v7_0"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Key provider management type.

  See KmsManagementType for valid values.]]>
      </description-html>
      </property>

            <property name="useAsEntityDefault" type-id-ref="vim.ManagedEntity"
      vmodl-name="useAsEntityDefault"
      version-id-ref="vim.version.v7_0"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Use this cluster as default for the managed entities,
 when the optional CryptoKeyId.providerId is not set.

 See <a href="vim.encryption.CryptoManagerKmip.html#setDefaultKmsCluster">SetDefaultKmsCluster</a> for
 supported managed entity type.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.encryption.KmipClusterInfo.KmsManagementType</nested-type-id-ref>
   </data-object>
   <data-object name="CustomizationStatelessIpV6Generator"
      type-id="vim.vm.customization.StatelessIpV6Generator"
      vmodl-name="vim.vm.customization.StatelessIpV6Generator"
      version-id-ref="vim.version.version5"
      base-type-id="vim.vm.customization.IpV6Generator"
      >
      <description-html>
         <![CDATA[Use stateless autoconfiguration to configure to ipv6 address]]>
      </description-html>
   </data-object>
   <data-object name="HostProfileManagerCompositionResultResultElement"
      type-id="vim.profile.host.ProfileManager.CompositionResult.ResultElement"
      vmodl-name="vim.profile.host.ProfileManager.CompositionResult.ResultElement"
      enclosing-type-id-ref="vim.profile.host.ProfileManager.CompositionResult"
      version-id-ref="vim.version.version11"
      internal-before-version-id-ref="vim.version.version12"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Composition result for a specific target host profile.]]>
      </description-html>
            <property name="target" type-id-ref="vim.profile.Profile"
      vmodl-name="target"
      >
      <description-html>
         <![CDATA[The target host profile.]]>
      </description-html>
      </property>

            <property name="status" type-id-ref="java.lang.String"
      vmodl-name="status"
      >
      <description-html>
         <![CDATA[The composition status. See <a href="vim.profile.host.ProfileManager.CompositionResult.ResultElement.Status.html">HostProfileManagerCompositionResultResultElementStatus</a>
 for details of supported values.]]>
      </description-html>
      </property>

            <property name="errors" type-id-ref="vmodl.LocalizableMessage"
      vmodl-name="errors"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The composition errors.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.profile.host.ProfileManager.CompositionResult.ResultElement.Status</nested-type-id-ref>
   </data-object>
   <data-object name="HostVirtualNic"
      type-id="vim.host.VirtualNic"
      vmodl-name="vim.host.VirtualNic"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The <a href="vim.host.VirtualNic.html">HostVirtualNic</a> data object describes a virtual network adapter
  that connects to a virtual switch. A host virtual NIC differs from a physical NIC:
  <ul>
  <li>A host virtual NIC is a virtual device that is connected to a virtual switch.
  <li>A physical NIC (<a href="vim.host.NetworkInfo.html#pnic">pnic</a>) corresponds to a physical
  device that is connected to the physical network.
  </ul>
  <p>
  A host virtual NIC provides access to the external network through a virtual switch
  that is bridged through a Physical NIC to a physical network.]]>
      </description-html>
            <property name="device" type-id-ref="java.lang.String"
      vmodl-name="device"
      >
      <description-html>
         <![CDATA[Device name.]]>
      </description-html>
      </property>

            <property name="key" type-id-ref="java.lang.String"
      vmodl-name="key"
      >
      <description-html>
         <![CDATA[Linkable identifier.]]>
      </description-html>
      </property>

            <property name="portgroup" type-id-ref="java.lang.String"
      vmodl-name="portgroup"
      >
      <description-html>
         <![CDATA[If the Virtual NIC is connecting to a vSwitch, this property is the name of
 portgroup connected. If the Virtual NIC is connecting to a
 DistributedVirtualSwitch or opaque network, this property is an empty string.]]>
      </description-html>
      </property>

            <property name="spec" type-id-ref="vim.host.VirtualNic.Specification"
      vmodl-name="spec"
      >
      <description-html>
         <![CDATA[Configurable properties for the virtual network adapter object.]]>
      </description-html>
      </property>

            <property name="port" type-id-ref="vim.host.PortGroup.Port"
      vmodl-name="port"
      is-optional="true"
      is-link="true"
      >
      <description-html>
         <![CDATA[Port(<a href="vim.host.PortGroup.html#port">port</a>) on the port group that the virtual
  NIC is using when it is enabled. If the Virtual NIC is connected to
  DistributedVirtualSwitch or opaque network, this property is unset.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.host.VirtualNic.Specification</nested-type-id-ref>
      <nested-type-id-ref>vim.host.VirtualNic.Config</nested-type-id-ref>
      <nested-type-id-ref>vim.host.VirtualNic.OpaqueNetworkSpec</nested-type-id-ref>
      <nested-type-id-ref>vim.host.VirtualNic.IpRouteSpec</nested-type-id-ref>
   </data-object>
   <data-object name="VirtualKeyboardOption"
      type-id="vim.vm.device.VirtualKeyboardOption"
      vmodl-name="vim.vm.device.VirtualKeyboardOption"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.device.VirtualDeviceOption"
      >
      <description-html>
         <![CDATA[The VirtualKeyboardOption data object type contains the options for the
  virtual keyboard class.]]>
      </description-html>
   </data-object>
   <data-object name="VmFailedMigrateEvent"
      type-id="vim.event.VmFailedMigrateEvent"
      vmodl-name="vim.event.VmFailedMigrateEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.VmEvent"
      >
      <description-html>
         <![CDATA[This event records a failure to migrate a virtual machine.]]>
      </description-html>
            <property name="destHost" type-id-ref="vim.event.HostEventArgument"
      vmodl-name="destHost"
      >
      <description-html>
         <![CDATA[The destination host.]]>
      </description-html>
      </property>

            <property name="reason" type-id-ref="vmodl.LocalizedMethodFault"
      vmodl-name="reason"
      >
      <description-html>
         <![CDATA[The reason for the failure.]]>
      </description-html>
      </property>

            <property name="destDatacenter" type-id-ref="vim.event.DatacenterEventArgument"
      vmodl-name="destDatacenter"
      version-id-ref="vim.version.version7"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The destination datacenter]]>
      </description-html>
      </property>

            <property name="destDatastore" type-id-ref="vim.event.DatastoreEventArgument"
      vmodl-name="destDatastore"
      version-id-ref="vim.version.version7"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The destination primary datastore]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostInternetScsiHbaAuthenticationProperties"
      type-id="vim.host.InternetScsiHba.AuthenticationProperties"
      vmodl-name="vim.host.InternetScsiHba.AuthenticationProperties"
      enclosing-type-id-ref="vim.host.InternetScsiHba"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The authentication settings for this host bus adapter or target.]]>
      </description-html>
            <property name="chapAuthEnabled" type-id-ref="BOOLEAN"
      vmodl-name="chapAuthEnabled"
      >
      <description-html>
         <![CDATA[True if CHAP is currently enabled]]>
      </description-html>
      </property>

            <property name="chapName" type-id-ref="java.lang.String"
      vmodl-name="chapName"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The CHAP user name if enabled]]>
      </description-html>
      </property>

            <property name="chapSecret" type-id-ref="java.lang.String"
      vmodl-name="chapSecret"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The CHAP secret if enabled]]>
      </description-html>
      </property>

            <property name="chapAuthenticationType" type-id-ref="java.lang.String"
      vmodl-name="chapAuthenticationType"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The preference for CHAP or non-CHAP protocol if CHAP is enabled]]>
      </description-html>
      </property>

            <property name="chapInherited" type-id-ref="BOOLEAN"
      vmodl-name="chapInherited"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[CHAP settings are inherited]]>
      </description-html>
      </property>

            <property name="mutualChapName" type-id-ref="java.lang.String"
      vmodl-name="mutualChapName"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[When Mutual-CHAP is enabled, the user name that target needs to
  use to authenticate with the initiator]]>
      </description-html>
      </property>

            <property name="mutualChapSecret" type-id-ref="java.lang.String"
      vmodl-name="mutualChapSecret"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[When Mutual-CHAP is enabled, the secret that target needs to
  use to authenticate with the initiator]]>
      </description-html>
      </property>

            <property name="mutualChapAuthenticationType" type-id-ref="java.lang.String"
      vmodl-name="mutualChapAuthenticationType"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The preference for CHAP or non-CHAP protocol if CHAP is enabled]]>
      </description-html>
      </property>

            <property name="mutualChapInherited" type-id-ref="BOOLEAN"
      vmodl-name="mutualChapInherited"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Mutual-CHAP settings are inherited]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="PerformanceManagerCounterLevelMapping"
      type-id="vim.PerformanceManager.CounterLevelMapping"
      vmodl-name="vim.PerformanceManager.CounterLevelMapping"
      enclosing-type-id-ref="vim.PerformanceManager"
      version-id-ref="vim.version.version6"
      internal-before-version-id-ref="vim.version.version7"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[<a href="vim.PerformanceManager.CounterLevelMapping.html">PerformanceManagerCounterLevelMapping</a> class captures the counter
  and level mapping. Any counter has two aspects: aggregate value or the
  per-device value. For example, cpu.usage.average on a host is an
  aggregate counter and cpu.usage.average on pcpus in a host is a
  per-device counters. There is a need to be able to specify different
  levels for the two versions. Currently, all per-device stats are
  collected at level greater than or equal to 3.

  <p> In order to be able to configure the level of collections for
  aggregate and per-device counters we have two optional level fields.
  <a href="vim.PerformanceManager.CounterLevelMapping.html">PerformanceManagerCounterLevelMapping</a> is used to update the
  levels for a counter.]]>
      </description-html>
            <property name="counterId" type-id-ref="INT"
      vmodl-name="counterId"
      >
      <description-html>
         <![CDATA[The counter Id]]>
      </description-html>
      </property>

            <property name="aggregateLevel" type-id-ref="INT"
      vmodl-name="aggregateLevel"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Level for the aggregate counter. If not set then the value is not
  changed when updateCounterLevelMapping is called.]]>
      </description-html>
      </property>

            <property name="perDeviceLevel" type-id-ref="INT"
      vmodl-name="perDeviceLevel"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Level for the per device counter. If not set then the value is not
  changed when updateCounterLevelMapping is called.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="MonthlyByWeekdayTaskScheduler"
      type-id="vim.scheduler.MonthlyByWeekdayTaskScheduler"
      vmodl-name="vim.scheduler.MonthlyByWeekdayTaskScheduler"
      version-id-ref="vim.version.version1"
      base-type-id="vim.scheduler.MonthlyTaskScheduler"
      >
      <description-html>
         <![CDATA[The <a href="vim.scheduler.MonthlyByWeekdayTaskScheduler.html">MonthlyByWeekdayTaskScheduler</a> data object sets the time for
 monthly task execution. You identify a single day for task execution
 by specifying the week of the month and day of the week, and you
 complete the schedule by setting the inherited properties for the
 hour and minute.
 <p>
 By default, the scheduler executes the task on the specified day
 every month. If you set the interval to a value greater than 1,
 the task will execute at the specified monthly interval. (For example,
 an interval of 2 will cause the task to execute on the specified
 day, hour, and minute every 2 months.)]]>
      </description-html>
            <property name="offset" type-id-ref="vim.scheduler.MonthlyByWeekdayTaskScheduler.WeekOfMonth"
      vmodl-name="offset"
      >
      <description-html>
         <![CDATA[The week in the month during which the scheduled task is to run.]]>
      </description-html>
      </property>

            <property name="weekday" type-id-ref="vim.scheduler.MonthlyByWeekdayTaskScheduler.DayOfWeek"
      vmodl-name="weekday"
      >
      <description-html>
         <![CDATA[The day in the week when the scheduled task is to run.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.scheduler.MonthlyByWeekdayTaskScheduler.DayOfWeek</nested-type-id-ref>
      <nested-type-id-ref>vim.scheduler.MonthlyByWeekdayTaskScheduler.WeekOfMonth</nested-type-id-ref>
   </data-object>
   <data-object name="AccountCreatedEvent"
      type-id="vim.event.AccountCreatedEvent"
      vmodl-name="vim.event.AccountCreatedEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.HostEvent"
      >
      <description-html>
         <![CDATA[This event records that an account was created on a host.]]>
      </description-html>
            <property name="spec" type-id-ref="vim.host.LocalAccountManager.AccountSpecification"
      vmodl-name="spec"
      >
      </property>

            <property name="group" type-id-ref="BOOLEAN"
      vmodl-name="group"
      >
      </property>

   </data-object>
   <data-object name="HostNasVolumeSpec"
      type-id="vim.host.NasVolume.Specification"
      vmodl-name="vim.host.NasVolume.Specification"
      enclosing-type-id-ref="vim.host.NasVolume"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Specification for creating NAS volume.
 When mounting a NAS volume on multiple hosts, the same remoteHost and remotePath
 values should be used on every host, otherwise it will be treated as different
 datastores.  For example, if one host references the remotePath of a NAS volume
 as "/mnt/mount1" and another references it as "/mnt/mount1/", it will not be
 recognized as the same datastore.]]>
      </description-html>
            <property name="remoteHost" type-id-ref="java.lang.String"
      vmodl-name="remoteHost"
      >
      <description-html>
         <![CDATA[The host that runs the NFS v3 or CIFS server. For NFS v4.1
  and beyond use remoteHostNames defined later. The field remotehost
  may be deprecated in future for NFS, so clients should plan to use the
  property remoteHostNames to send in the host name(s) for both NFS v3
  and v4.1]]>
      </description-html>
      </property>

            <property name="remotePath" type-id-ref="java.lang.String"
      vmodl-name="remotePath"
      >
      <description-html>
         <![CDATA[The remote path of the NFS mount point.]]>
      </description-html>
      </property>

            <property name="localPath" type-id-ref="java.lang.String"
      vmodl-name="localPath"
      >
      <description-html>
         <![CDATA[The localPath refers to the name of the NAS datastore to be created
  using this specification.
  <p>
  In the case of ESX Server, the datastore name is a component in the
  file system path at which the NAS volume can be found. For example,
  if localPath is set to "nas_volume" the created NAS datastore will be
  named "nas_volume" and it can be accessed via the file system path
  "/vmfs/volumes/nas_volume".
  <p>
  In the case of VMware Server, the localPath will also be used as the
  datastore name, but the datastore name may not necessarily be
  reflected in the file system path where the NAS volume may be
  accessed.]]>
      </description-html>
      </property>

            <property name="accessMode" type-id-ref="java.lang.String"
      vmodl-name="accessMode"
      >
      <description-html>
         <![CDATA[Access mode for the mount point.
  <p>
  Mounting in read-write mode would be successful irregardless on
  how the mount point is exported or access permissions. For
  example, mounting a volume that is exported as read-only as
  readWrite will succeed. Hence, that a readWrite mount succeeds
  should not be taken as an indication that all files on a mount
  is writable.
  <p>
  If a file system is mounted readOnly, the system cannot create
  or modify any files on the file system. This is mostly useful
  for storing ISO images and templates, since a virtual machine
  cannot be powered on from a readOnly volume.
  <p>
  The access mode of a mounted NFS volume can be obtained at
  <a href="vim.host.MountInfo.html#accessMode">accessMode</a>.
  <p><br>See <a href="vim.host.MountInfo.AccessMode.html">HostMountMode</a><br>]]>
      </description-html>
      </property>

            <property name="type" type-id-ref="java.lang.String"
      vmodl-name="type"
      version-id-ref="vim.version.version2"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Specifies the type of the the NAS volume.

  Supported types are
  vim.host.FileSystemVolume.FileSystemType#CIFS,
  vim.host.FileSystemVolume.FileSystemType#NFS,
  vim.host.FileSystemVolume.FileSystemType#NFS41

  If not specified, defaults to
  vim.host.FileSystemVolume.FileSystemType#NFS]]>
      </description-html>
      </property>

            <property name="userName" type-id-ref="java.lang.String"
      vmodl-name="userName"
      version-id-ref="vim.version.version2"
      is-optional="true"
      >
      <description-html>
         <![CDATA[If type is CIFS, the user name to use when connecting to the
  CIFS server. If type is NFS, this field will be ignored.]]>
      </description-html>
      </property>

            <property name="password" type-id-ref="java.lang.String"
      vmodl-name="password"
      version-id-ref="vim.version.version2"
      is-optional="true"
      >
      <description-html>
         <![CDATA[If type is CIFS, the password to use when connecting to the
  CIFS server. If type is NFS, this field will be ignored.]]>
      </description-html>
      </property>

            <property name="remoteHostNames" type-id-ref="java.lang.String"
      vmodl-name="remoteHostNames"
      version-id-ref="vim.version.version10"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Hostnames or IP addresses of remote NFS server. In case
  of NFS v4.1 this may have multiple entries. For NFS v3 the
  input should be same in both remoteHost and remoteHostNames.]]>
      </description-html>
      </property>

            <property name="securityType" type-id-ref="java.lang.String"
      vmodl-name="securityType"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Provided during mount indicating what security type,
  if any, to use
  See <a href="vim.host.NasVolume.SecurityType.html">HostNasVolumeSecurityType</a>]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ClusterComputeResourceHostVmkNicInfo"
      type-id="vim.ClusterComputeResource.HostVmkNicInfo"
      vmodl-name="vim.ClusterComputeResource.HostVmkNicInfo"
      enclosing-type-id-ref="vim.ClusterComputeResource"
      version-id-ref="vim.version.version13"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object describes how a vmknic on a host must be configured.]]>
      </description-html>
            <property name="nicSpec" type-id-ref="vim.host.VirtualNic.Specification"
      vmodl-name="nicSpec"
      >
      <description-html>
         <![CDATA[NIC specification]]>
      </description-html>
      </property>

            <property name="service" type-id-ref="java.lang.String"
      vmodl-name="service"
      >
      <description-html>
         <![CDATA[Service type for this adapter. See
 <a href="vim.host.VirtualNicManager.NicType.html">HostVirtualNicManagerNicType</a> for supported values.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="PermissionUpdatedEvent"
      type-id="vim.event.PermissionUpdatedEvent"
      vmodl-name="vim.event.PermissionUpdatedEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.PermissionEvent"
      >
      <description-html>
         <![CDATA[This event records the update of a permission.]]>
      </description-html>
            <property name="role" type-id-ref="vim.event.RoleEventArgument"
      vmodl-name="role"
      >
      <description-html>
         <![CDATA[The associated role.]]>
      </description-html>
      </property>

            <property name="propagate" type-id-ref="BOOLEAN"
      vmodl-name="propagate"
      >
      <description-html>
         <![CDATA[Whether or not the permission applies to sub-entities.]]>
      </description-html>
      </property>

            <property name="prevRole" type-id-ref="vim.event.RoleEventArgument"
      vmodl-name="prevRole"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The previous associated role.]]>
      </description-html>
      </property>

            <property name="prevPropagate" type-id-ref="BOOLEAN"
      vmodl-name="prevPropagate"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Previous propogate value.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualEthernetCardNetworkBackingInfo"
      type-id="vim.vm.device.VirtualEthernetCard.NetworkBackingInfo"
      vmodl-name="vim.vm.device.VirtualEthernetCard.NetworkBackingInfo"
      enclosing-type-id-ref="vim.vm.device.VirtualEthernetCard"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.device.VirtualDevice.DeviceBackingInfo"
      >
      <description-html>
         <![CDATA[The <a href="vim.vm.device.VirtualEthernetCard.NetworkBackingInfo.html">VirtualEthernetCardNetworkBackingInfo</a> data object
  defines network backing for a virtual Ethernet card.]]>
      </description-html>
            <property name="network" type-id-ref="vim.Network"
      vmodl-name="network"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Reference to the network managed object to which this backing applies.
  This is not used during configuration.]]>
      </description-html>
      </property>

            <property name="inPassthroughMode" type-id-ref="BOOLEAN"
      vmodl-name="inPassthroughMode"
      version-id-ref="vim.version.version4"
      is-deprecated="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[&nbsp;]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 4.0, this property is not supported.
  &nbsp;]]>
      </deprecated-html>
      </property>

   </data-object>
   <data-object name="VirtualAppImportSpec"
      type-id="vim.vApp.VAppImportSpec"
      vmodl-name="vim.vApp.VAppImportSpec"
      version-id-ref="vim.version.version5"
      base-type-id="vim.ImportSpec"
      >
      <description-html>
         <![CDATA[A VAppImportSpec is used by <a href="vim.ResourcePool.html#importVApp">ImportVApp</a> when importing vApps (single VM or multi-VM).
 <p>
 It provides all information needed to import a <a href="vim.VirtualApp.html">VirtualApp</a>.
 <p>
 See also <a href="vim.ImportSpec.html">ImportSpec</a>.]]>
      </description-html>
            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      >
      <description-html>
         <![CDATA[The name of the vApp]]>
      </description-html>
      </property>

            <property name="vAppConfigSpec" type-id-ref="vim.vApp.VAppConfigSpec"
      vmodl-name="vAppConfigSpec"
      >
      <description-html>
         <![CDATA[vApp configuration]]>
      </description-html>
      </property>

            <property name="resourcePoolSpec" type-id-ref="vim.ResourceConfigSpec"
      vmodl-name="resourcePoolSpec"
      >
      <description-html>
         <![CDATA[Resource pool specification.
 <p>
 If resourcePoolSpec.entity is specified, that resource pool is used as the parent
 resource pool and the vApp will be made a linked child to the parent vApp. This
 field is ignored for the root node in an ImportSpec tree.

 Use of resourcePoolSpec.entity for creating linked children is deprecated as of
 vSphere API 5.1.]]>
      </description-html>
      </property>

            <property name="child" type-id-ref="vim.ImportSpec"
      vmodl-name="child"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Contains a list of children (<a href="vim.VirtualMachine.html">VirtualMachine</a>s and
 <a href="vim.VirtualApp.html">VirtualApp</a>s).]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="EventAlarmExpression"
      type-id="vim.alarm.EventAlarmExpression"
      vmodl-name="vim.alarm.EventAlarmExpression"
      version-id-ref="vim.version.version2"
      base-type-id="vim.alarm.AlarmExpression"
      >
      <description-html>
         <![CDATA[An alarm expression that uses the event stream to trigger the alarm.
  <p>
  This alarm is triggered when an event matching this expression gets logged.]]>
      </description-html>
            <property name="comparisons" type-id-ref="vim.alarm.EventAlarmExpression.Comparison"
      vmodl-name="comparisons"
      version-id-ref="vim.version.version5"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The attributes/values to compare.]]>
      </description-html>
      </property>

            <property name="eventType" type-id-ref="vmodl.TypeName"
      vmodl-name="eventType"
      is-deprecated="true"
      >
      <description-html>
         <![CDATA[The type of the event to trigger the alarm on.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[use <code>eventTypeId</code> instead.]]>
      </deprecated-html>
      </property>

            <property name="eventTypeId" type-id-ref="java.lang.String"
      vmodl-name="eventTypeId"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The eventTypeId of the event to match.
 <p>
 The semantics of how eventTypeId matching is done is as follows:
 <ul>
 <li>If the event being matched is of type <a href="vim.event.EventEx.html">EventEx</a>
 or <a href="vim.event.ExtendedEvent.html">ExtendedEvent</a>, then we match this value
 against the <code>eventTypeId</code> (for <code>EventEx</code>) or
 <code>eventId</code> (for <code>ExtendedEvent</code>) member of the Event.
 <li>Otherwise, we match it against the type of the Event itself.
 </ul>
 <p>
 Either <code>eventType</code> or <code>eventTypeId</code> <i>must</i>
 be set.]]>
      </description-html>
      </property>

            <property name="objectType" type-id-ref="vmodl.TypeName"
      vmodl-name="objectType"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Name of the type of managed object on which the event is logged.
 <p>
 An event alarm defined on a <a href="vim.ManagedEntity.html">ManagedEntity</a>
 is propagated to child entities in the VirtualCenter inventory depending
 on the value of this attribute. If objectType is any of the following,
 the alarm is propagated down to all children of that type:
 <ul>
 <li> A datacenter: <a href="vim.Datacenter.html">Datacenter</a>.
 <li> A cluster of host systems: <a href="vim.ClusterComputeResource.html">ClusterComputeResource</a>.
 <li> A single host system: <a href="vim.HostSystem.html">HostSystem</a>.
 <li> A resource pool representing a set of physical resources on a single host:
 <a href="vim.ResourcePool.html">ResourcePool</a>.
 <li> A virtual machine: <a href="vim.VirtualMachine.html">VirtualMachine</a>.
 <li> A datastore: <a href="vim.Datastore.html">Datastore</a>.
 <li> A network: <a href="vim.Network.html">Network</a>.
 <li> A distributed virtual switch:  <a href="vim.DistributedVirtualSwitch.html">DistributedVirtualSwitch</a>.
 </ul>
 <p>
 If objectType is unspecified or not contained in the above list,
 the event alarm is not propagated down to child entities in the
 VirtualCenter inventory.
 <p>
 It is possible to specify an event alarm containing two (or more) different
 EventAlarmExpression's which contain different objectTypes. In such a case,
 the event is propagated to all child entities with specified type(s).]]>
      </description-html>
      </property>

            <property name="status" type-id-ref="vim.ManagedEntity.Status"
      vmodl-name="status"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The alarm's new state when this condition is evaluated and satisfied.
 If not specified then there is no change to alarm status, and all
 actions are fired (rather than those for the transition).]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.alarm.EventAlarmExpression.ComparisonOperator</nested-type-id-ref>
      <nested-type-id-ref>vim.alarm.EventAlarmExpression.Comparison</nested-type-id-ref>
   </data-object>
   <data-object name="VirtualDiskSpec"
      type-id="vim.VirtualDiskManager.VirtualDiskSpec"
      vmodl-name="vim.VirtualDiskManager.VirtualDiskSpec"
      enclosing-type-id-ref="vim.VirtualDiskManager"
      version-id-ref="vim.version.version2"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Specification used to create or clone a virtual disk]]>
      </description-html>
            <property name="diskType" type-id-ref="java.lang.String"
      vmodl-name="diskType"
      >
      <description-html>
         <![CDATA[The type of the new virtual disk.<br>See <a href="vim.VirtualDiskManager.VirtualDiskType.html">VirtualDiskType</a><br>]]>
      </description-html>
      </property>

            <property name="adapterType" type-id-ref="java.lang.String"
      vmodl-name="adapterType"
      >
      <description-html>
         <![CDATA[The type of the virtual disk adapter for the new virtual disk.<br>See <a href="vim.VirtualDiskManager.VirtualDiskAdapterType.html">VirtualDiskAdapterType</a><br>]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualControllerOption"
      type-id="vim.vm.device.VirtualControllerOption"
      vmodl-name="vim.vm.device.VirtualControllerOption"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.device.VirtualDeviceOption"
      >
      <description-html>
         <![CDATA[The VirtualControllerOption data object type contains information about
  a virtual controller type.]]>
      </description-html>
            <property name="devices" type-id-ref="vim.option.IntOption"
      vmodl-name="devices"
      >
      <description-html>
         <![CDATA[The minimum and maximum number of devices this controller can control
  at run time.]]>
      </description-html>
      </property>

            <property name="supportedDevice" type-id-ref="vmodl.TypeName"
      vmodl-name="supportedDevice"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Array of supported device options for this controller.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualUSBRemoteHostBackingOption"
      type-id="vim.vm.device.VirtualUSBOption.RemoteHostBackingOption"
      vmodl-name="vim.vm.device.VirtualUSBOption.RemoteHostBackingOption"
      enclosing-type-id-ref="vim.vm.device.VirtualUSBOption"
      version-id-ref="vim.version.version6"
      base-type-id="vim.vm.device.VirtualDeviceOption.DeviceBackingOption"
      >
      <description-html>
         <![CDATA[The <a href="vim.vm.device.VirtualUSBOption.RemoteHostBackingOption.html">VirtualUSBRemoteHostBackingOption</a> data object
  contains options for remote host USB configuration. This backing option
  indicates support for persistent USB connections when vMotion operations
  migrate virtual machines to different hosts.]]>
      </description-html>
   </data-object>
   <data-object name="VmInstanceUuidChangedEvent"
      type-id="vim.event.VmInstanceUuidChangedEvent"
      vmodl-name="vim.event.VmInstanceUuidChangedEvent"
      version-id-ref="vim.version.version5"
      base-type-id="vim.event.VmEvent"
      >
      <description-html>
         <![CDATA[This event records a change in a virtual machine's instance UUID.]]>
      </description-html>
            <property name="oldInstanceUuid" type-id-ref="java.lang.String"
      vmodl-name="oldInstanceUuid"
      >
      <description-html>
         <![CDATA[The old instance UUID.]]>
      </description-html>
      </property>

            <property name="newInstanceUuid" type-id-ref="java.lang.String"
      vmodl-name="newInstanceUuid"
      >
      <description-html>
         <![CDATA[The new instance UUID.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="InvalidEditionEvent"
      type-id="vim.event.InvalidEditionEvent"
      vmodl-name="vim.event.InvalidEditionEvent"
      version-id-ref="vim.version.version2"
      base-type-id="vim.event.LicenseEvent"
      >
      <description-html>
         <![CDATA[This event records if the edition is set to an invalid value.]]>
      </description-html>
            <property name="feature" type-id-ref="java.lang.String"
      vmodl-name="feature"
      >
      </property>

   </data-object>
   <data-object name="StorageDrsPlacementRankVmSpec"
      type-id="vim.storageDrs.PlacementRankVmSpec"
      vmodl-name="vim.storageDrs.PlacementRankVmSpec"
      version-id-ref="vim.version.version10"
      base-type-id="vmodl.DynamicData"
      >
            <property name="vmPlacementSpec" type-id-ref="vim.cluster.PlacementSpec"
      vmodl-name="vmPlacementSpec"
      >
      <description-html>
         <![CDATA[Individual VM placement specification for ranking clusters]]>
      </description-html>
      </property>

            <property name="vmClusters" type-id-ref="vim.ClusterComputeResource"
      vmodl-name="vmClusters"
      is-array="true"
      >
      <description-html>
         <![CDATA[Set of candidate clusters for the placement request]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostMultipathInfo"
      type-id="vim.host.MultipathInfo"
      vmodl-name="vim.host.MultipathInfo"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The <a href="vim.host.MultipathInfo.html">HostMultipathInfo</a> data object describes the multipathing policy
  configuration to determine the storage failover policies
  for a SCSI logical unit.  The multipathing policy configuration operates on
  SCSI logical units and the paths to the logical units.
  <p>
  Multipath policy configuration is only possible on storage devices
  provided by the native multipathing plug-store plugin.  Storage devices
  using the native multipathing storage plugin will have an entry
  in this data object.  Storage devices provided by a different
  storage plugin will not appear in the inventory represented by
  this data object.
  <p>
  Legacy note: In hosts where <a href="vim.host.MultipathStateInfo.html">HostMultipathStateInfo</a> is not
  defined or does not exist on the <a href="vim.host.StorageDeviceInfo.html">HostStorageDeviceInfo</a> object,
  only native multipathing exists.  That means for these hosts, the
  MultipathInfo object contains the complete set of LUNs and paths on the LUNs
  available on the host.]]>
      </description-html>
            <property name="lun" type-id-ref="vim.host.MultipathInfo.LogicalUnit"
      vmodl-name="lun"
      is-array="true"
      is-optional="true"
      is-linkable="true"
      >
      <description-html>
         <![CDATA[List of logical units that can be configured for multipathing.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.host.MultipathInfo.PathState</nested-type-id-ref>
      <nested-type-id-ref>vim.host.MultipathInfo.LogicalUnitPolicy</nested-type-id-ref>
      <nested-type-id-ref>vim.host.MultipathInfo.HppLogicalUnitPolicy</nested-type-id-ref>
      <nested-type-id-ref>vim.host.MultipathInfo.LogicalUnitStorageArrayTypePolicy</nested-type-id-ref>
      <nested-type-id-ref>vim.host.MultipathInfo.FixedLogicalUnitPolicy</nested-type-id-ref>
      <nested-type-id-ref>vim.host.MultipathInfo.LogicalUnit</nested-type-id-ref>
      <nested-type-id-ref>vim.host.MultipathInfo.Path</nested-type-id-ref>
   </data-object>
   <data-object name="VirtualDevicePipeBackingInfo"
      type-id="vim.vm.device.VirtualDevice.PipeBackingInfo"
      vmodl-name="vim.vm.device.VirtualDevice.PipeBackingInfo"
      enclosing-type-id-ref="vim.vm.device.VirtualDevice"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.device.VirtualDevice.BackingInfo"
      >
      <description-html>
         <![CDATA[The <code><a href="vim.vm.device.VirtualDevice.PipeBackingInfo.html">VirtualDevicePipeBackingInfo</a></code> data object type
  defines information for using a named pipe as backing for a device
  in a virtual machine.]]>
      </description-html>
            <property name="pipeName" type-id-ref="java.lang.String"
      vmodl-name="pipeName"
      >
      <description-html>
         <![CDATA[Pipe name for the host pipe associated with this backing.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DiskChangeExtent"
      type-id="vim.VirtualMachine.DiskChangeInfo.DiskChangeExtent"
      vmodl-name="vim.VirtualMachine.DiskChangeInfo.DiskChangeExtent"
      enclosing-type-id-ref="vim.VirtualMachine.DiskChangeInfo"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[An area of the disk flagged as modified]]>
      </description-html>
            <property name="start" type-id-ref="LONG"
      vmodl-name="start"
      >
      <description-html>
         <![CDATA[Start offset (in bytes) of modified area]]>
      </description-html>
      </property>

            <property name="length" type-id-ref="LONG"
      vmodl-name="length"
      >
      <description-html>
         <![CDATA[Length (in bytes) of modified area]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualMachineSerialInfo"
      type-id="vim.vm.SerialInfo"
      vmodl-name="vim.vm.SerialInfo"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.TargetInfo"
      >
      <description-html>
         <![CDATA[SerialInfo class contains information about a physical serial
 drive on the host.]]>
      </description-html>
   </data-object>
   <data-object name="HttpNfcLeaseInfo"
      type-id="vim.HttpNfcLease.Info"
      vmodl-name="vim.HttpNfcLease.Info"
      enclosing-type-id-ref="vim.HttpNfcLease"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This class holds information about the lease, such as the entity covered by the
 lease, and HTTP URLs for up/downloading file backings.]]>
      </description-html>
            <property name="lease" type-id-ref="vim.HttpNfcLease"
      vmodl-name="lease"
      >
      <description-html>
         <![CDATA[The <a href="vim.HttpNfcLease.html">HttpNfcLease</a> object this information belongs to.]]>
      </description-html>
      </property>

            <property name="entity" type-id-ref="vim.ManagedEntity"
      vmodl-name="entity"
      >
      <description-html>
         <![CDATA[The <a href="vim.VirtualMachine.html">VirtualMachine</a> or <a href="vim.VirtualApp.html">VirtualApp</a> this
 lease covers.]]>
      </description-html>
      </property>

            <property name="deviceUrl" type-id-ref="vim.HttpNfcLease.DeviceUrl"
      vmodl-name="deviceUrl"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The deviceUrl property contains a mapping from logical device keys
 to URLs.]]>
      </description-html>
      </property>

            <property name="totalDiskCapacityInKB" type-id-ref="LONG"
      vmodl-name="totalDiskCapacityInKB"
      >
      <description-html>
         <![CDATA[Total capacity in kilobytes of all disks in all Virtual Machines
 covered by this lease. This can be used to track progress when
 transferring disks.]]>
      </description-html>
      </property>

            <property name="leaseTimeout" type-id-ref="INT"
      vmodl-name="leaseTimeout"
      >
      <description-html>
         <![CDATA[Number of seconds before the lease times out. The client extends
 the lease by calling <a href="vim.HttpNfcLease.html#progress">HttpNfcLeaseProgress</a> before
 the timeout has expired.]]>
      </description-html>
      </property>

            <property name="hostMap" type-id-ref="vim.HttpNfcLease.DatastoreLeaseInfo"
      vmodl-name="hostMap"
      version-id-ref="vim.version.version6"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Map of URLs for leased hosts for a given datastore. This is used to
 look up multi-POST-capable hosts for a datastore.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualDevicePipeBackingOption"
      type-id="vim.vm.device.VirtualDeviceOption.PipeBackingOption"
      vmodl-name="vim.vm.device.VirtualDeviceOption.PipeBackingOption"
      enclosing-type-id-ref="vim.vm.device.VirtualDeviceOption"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.device.VirtualDeviceOption.BackingOption"
      >
      <description-html>
         <![CDATA[The <code>PipeBackingOption</code> data object type contains options
  specific to pipe backings.]]>
      </description-html>
   </data-object>
   <data-object name="VsanHostRuntimeInfoDiskIssue"
      type-id="vim.vsan.host.VsanRuntimeInfo.DiskIssue"
      vmodl-name="vim.vsan.host.VsanRuntimeInfo.DiskIssue"
      enclosing-type-id-ref="vim.vsan.host.VsanRuntimeInfo"
      version-id-ref="vim.version.version9"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Data structure of reporting a disk issue.]]>
      </description-html>
            <property name="diskId" type-id-ref="java.lang.String"
      vmodl-name="diskId"
      >
      <description-html>
         <![CDATA[Disk uuid,<br>See <a href="vim.host.ScsiLun.html#uuid">uuid</a><br>]]>
      </description-html>
      </property>

            <property name="issue" type-id-ref="java.lang.String"
      vmodl-name="issue"
      >
      <description-html>
         <![CDATA[Type of issue<br>See DiskIssueType]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VMwareDvsLacpGroupSpec"
      type-id="vim.dvs.VmwareDistributedVirtualSwitch.LacpGroupSpec"
      vmodl-name="vim.dvs.VmwareDistributedVirtualSwitch.LacpGroupSpec"
      enclosing-type-id-ref="vim.dvs.VmwareDistributedVirtualSwitch"
      version-id-ref="vim.version.version9"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This class defines the configuration of a Link Aggregation
  Control Protocol group.]]>
      </description-html>
            <property name="lacpGroupConfig" type-id-ref="vim.dvs.VmwareDistributedVirtualSwitch.LacpGroupConfig"
      vmodl-name="lacpGroupConfig"
      >
      <description-html>
         <![CDATA[The Link Aggregation Control Protocol group to be configured.]]>
      </description-html>
      </property>

            <property name="operation" type-id-ref="java.lang.String"
      vmodl-name="operation"
      >
      <description-html>
         <![CDATA[Operation type, see
  <a href="vim.ConfigSpecOperation.html">ConfigSpecOperation</a> for valid values.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostDatastoreExistsConnectInfo"
      type-id="vim.host.ConnectInfo.DatastoreExistsInfo"
      vmodl-name="vim.host.ConnectInfo.DatastoreExistsInfo"
      enclosing-type-id-ref="vim.host.ConnectInfo"
      version-id-ref="vim.version.version1"
      base-type-id="vim.host.ConnectInfo.DatastoreInfo"
      >
      <description-html>
         <![CDATA[This data object type describes a datastore on the host that matches an existing
  datastore on VirtualCenter that has a different name.]]>
      </description-html>
            <property name="newDatastoreName" type-id-ref="java.lang.String"
      vmodl-name="newDatastoreName"
      >
      <description-html>
         <![CDATA[The name of a matching datastore on VirtualCenter. The datastore on the host
  will be renamed to this name.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostPnicNetworkResourceInfo"
      type-id="vim.host.RuntimeInfo.PnicNetworkResourceInfo"
      vmodl-name="vim.host.RuntimeInfo.PnicNetworkResourceInfo"
      enclosing-type-id-ref="vim.host.RuntimeInfo"
      version-id-ref="vim.version.version10"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data type describes the avaialable capacity
  for VM traffic on a physical NIC]]>
      </description-html>
            <property name="pnicDevice" type-id-ref="java.lang.String"
      vmodl-name="pnicDevice"
      >
      <description-html>
         <![CDATA[The physical NIC device]]>
      </description-html>
      </property>

            <property name="availableBandwidthForVMTraffic" type-id-ref="LONG"
      vmodl-name="availableBandwidthForVMTraffic"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The total bandwidth available for VM traffic]]>
      </description-html>
      </property>

            <property name="unusedBandwidthForVMTraffic" type-id-ref="LONG"
      vmodl-name="unusedBandwidthForVMTraffic"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The unused bandwidth for VM traffic]]>
      </description-html>
      </property>

            <property name="placedVirtualNics" type-id-ref="vim.host.RuntimeInfo.PlacedVirtualNicIdentifier"
      vmodl-name="placedVirtualNics"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The connected virtual NICs of powered on Virtual Machines
 that are placed on this physical NIC]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ProfileExpressionMetadata"
      type-id="vim.profile.ExpressionMetadata"
      vmodl-name="vim.profile.ExpressionMetadata"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[DataObject to represent the metadata associated with a SimpleExpression.]]>
      </description-html>
            <property name="expressionId" type-id-ref="vim.ExtendedElementDescription"
      vmodl-name="expressionId"
      >
      <description-html>
         <![CDATA[Id of the SimpleExpression]]>
      </description-html>
      </property>

            <property name="parameter" type-id-ref="vim.profile.ParameterMetadata"
      vmodl-name="parameter"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Parameters that can be specified for this SimpleExpression]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ClusterAttemptedVmInfo"
      type-id="vim.cluster.AttemptedVmInfo"
      vmodl-name="vim.cluster.AttemptedVmInfo"
      version-id-ref="vim.version.version2"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data class reports virtual machine powerOn information.]]>
      </description-html>
            <property name="vm" type-id-ref="vim.VirtualMachine"
      vmodl-name="vm"
      >
      <description-html>
         <![CDATA[The virtual machine being powered on.]]>
      </description-html>
      </property>

            <property name="task" type-id-ref="vim.Task"
      vmodl-name="task"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The ID of the task, which monitors powering on.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VmfsDatastoreExpandSpec"
      type-id="vim.host.VmfsDatastoreExpandSpec"
      vmodl-name="vim.host.VmfsDatastoreExpandSpec"
      version-id-ref="vim.version.version5"
      base-type-id="vim.host.VmfsDatastoreSpec"
      >
      <description-html>
         <![CDATA[Specification to increase the  capacity of a VMFS datastore by expanding
  (increasing the size of) an existing extent of the datastore.]]>
      </description-html>
            <property name="partition" type-id-ref="vim.host.DiskPartitionInfo.Specification"
      vmodl-name="partition"
      >
      <description-html>
         <![CDATA[Partitioning specification.]]>
      </description-html>
      </property>

            <property name="extent" type-id-ref="vim.host.ScsiDisk.Partition"
      vmodl-name="extent"
      >
      <description-html>
         <![CDATA[VMFS extent to expand.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostLowLevelProvisioningManagerSnapshotLayoutSpec"
      type-id="vim.host.LowLevelProvisioningManager.SnapshotLayoutSpec"
      vmodl-name="vim.host.LowLevelProvisioningManager.SnapshotLayoutSpec"
      enclosing-type-id-ref="vim.host.LowLevelProvisioningManager"
      version-id-ref="vim.version.version7"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[File layout spec of a snapshot, including path to the vmsn file of the
 snapshot and the layout of virtual disks when the snapshot was taken.]]>
      </description-html>
            <property name="id" type-id-ref="INT"
      vmodl-name="id"
      >
      <description-html>
         <![CDATA[The unique identifier of the snapshot]]>
      </description-html>
      </property>

            <property name="srcFilename" type-id-ref="java.lang.String"
      vmodl-name="srcFilename"
      >
      <description-html>
         <![CDATA[Name of the source snapshot file in datastore path.]]>
      </description-html>
      </property>

            <property name="dstFilename" type-id-ref="java.lang.String"
      vmodl-name="dstFilename"
      >
      <description-html>
         <![CDATA[Name of the destination snapshot file in datastore path.]]>
      </description-html>
      </property>

            <property name="disk" type-id-ref="vim.host.LowLevelProvisioningManager.DiskLayoutSpec"
      vmodl-name="disk"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Layout of each virtual disk of the virtual machine when the
  snapshot was taken.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualMachineMemoryReservationInfo"
      type-id="vim.host.MemoryManagerSystem.VirtualMachineReservationInfo"
      vmodl-name="vim.host.MemoryManagerSystem.VirtualMachineReservationInfo"
      enclosing-type-id-ref="vim.host.MemoryManagerSystem"
      version-id-ref="vim.version.version2"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The VirtualMachineReservationInfo data object type describes the
  amount of memory that is being reserved for virtual machines on
  the host, and how additional memory may be acquired.]]>
      </description-html>
            <property name="virtualMachineMin" type-id-ref="LONG"
      vmodl-name="virtualMachineMin"
      >
      <description-html>
         <![CDATA[The minimum amount of memory reserved for all running virtual machines,
  in bytes.]]>
      </description-html>
      </property>

            <property name="virtualMachineMax" type-id-ref="LONG"
      vmodl-name="virtualMachineMax"
      >
      <description-html>
         <![CDATA[The maximum amount of memory reserved for all running virtual machines,
  in bytes.]]>
      </description-html>
      </property>

            <property name="virtualMachineReserved" type-id-ref="LONG"
      vmodl-name="virtualMachineReserved"
      >
      <description-html>
         <![CDATA[The amount of memory reserved for all running virtual machines,
  in bytes.]]>
      </description-html>
      </property>

            <property name="allocationPolicy" type-id-ref="java.lang.String"
      vmodl-name="allocationPolicy"
      >
      <description-html>
         <![CDATA[Policy for allocating additional memory for virtual machines.<br>See AllocationPolicy]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.host.MemoryManagerSystem.VirtualMachineReservationInfo.AllocationPolicy</nested-type-id-ref>
   </data-object>
   <data-object name="DVSManagerDvsConfigTarget"
      type-id="vim.dvs.DistributedVirtualSwitchManager.DvsConfigTarget"
      vmodl-name="vim.dvs.DistributedVirtualSwitchManager.DvsConfigTarget"
      enclosing-type-id-ref="vim.dvs.DistributedVirtualSwitchManager"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Configuration specification for a DistributedVirtualSwitch or
  DistributedVirtualPortgroup.]]>
      </description-html>
            <property name="distributedVirtualPortgroup" type-id-ref="vim.dvs.DistributedVirtualPortgroupInfo"
      vmodl-name="distributedVirtualPortgroup"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of any DistributedVirtualPortgroup available for host Virtual NIC connection.]]>
      </description-html>
      </property>

            <property name="distributedVirtualSwitch" type-id-ref="vim.dvs.DistributedVirtualSwitchInfo"
      vmodl-name="distributedVirtualSwitch"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of any DistributedVirtualSwitch available for host Virtual NIC connection.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DvsIpNetworkRuleQualifier"
      type-id="vim.dvs.TrafficRule.IpQualifier"
      vmodl-name="vim.dvs.TrafficRule.IpQualifier"
      enclosing-type-id-ref="vim.dvs.TrafficRule"
      version-id-ref="vim.version.version9"
      base-type-id="vim.dvs.TrafficRule.Qualifier"
      >
      <description-html>
         <![CDATA[This class defines the IP Rule Qualifier. Here IP addresses of source
  and destination will be used for classifying packets.]]>
      </description-html>
            <property name="sourceAddress" type-id-ref="vim.IpAddress"
      vmodl-name="sourceAddress"
      is-optional="true"
      >
      <description-html>
         <![CDATA[IP qualifier for source.
  If this property is NULL, it will match "any IPv4 or any IPv6 address".]]>
      </description-html>
      </property>

            <property name="destinationAddress" type-id-ref="vim.IpAddress"
      vmodl-name="destinationAddress"
      is-optional="true"
      >
      <description-html>
         <![CDATA[IP qualifier for destination.
  If this property is NULL, it will match "any IPv4 or any IPv6 address".]]>
      </description-html>
      </property>

            <property name="protocol" type-id-ref="vim.IntExpression"
      vmodl-name="protocol"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Protocols like TCP, UDP, ICMP etc. The valid value for a protocol
  is got from IANA assigned value for the protocol. This can be got
  from RFC 5237 and IANA website section related to protocol numbers.]]>
      </description-html>
      </property>

            <property name="sourceIpPort" type-id-ref="vim.dvs.TrafficRule.IpPort"
      vmodl-name="sourceIpPort"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Source IP Port.]]>
      </description-html>
      </property>

            <property name="destinationIpPort" type-id-ref="vim.dvs.TrafficRule.IpPort"
      vmodl-name="destinationIpPort"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Destination IP Port.]]>
      </description-html>
      </property>

            <property name="tcpFlags" type-id-ref="vim.IntExpression"
      vmodl-name="tcpFlags"
      is-optional="true"
      >
      <description-html>
         <![CDATA[TCP flags. The valid values can be found at RFC 3168.
  TCP flags are not supported by Traffic Filtering]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualMachineNetworkShaperInfo"
      type-id="vim.vm.NetworkShaperInfo"
      vmodl-name="vim.vm.NetworkShaperInfo"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Network traffic shaping specification.
  <p>
  Traffic shaping is used to configure the network utilization
  characteristics of a virtual machine.]]>
      </description-html>
            <property name="enabled" type-id-ref="BOOLEAN"
      vmodl-name="enabled"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Is the shaper enabled?]]>
      </description-html>
      </property>

            <property name="peakBps" type-id-ref="LONG"
      vmodl-name="peakBps"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Peak bandwidth, in bits per second.]]>
      </description-html>
      </property>

            <property name="averageBps" type-id-ref="LONG"
      vmodl-name="averageBps"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Average bandwidth, in bits per second.]]>
      </description-html>
      </property>

            <property name="burstSize" type-id-ref="LONG"
      vmodl-name="burstSize"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Burst size, in bytes.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostTpmSoftwareComponentEventDetails"
      type-id="vim.host.TpmSoftwareComponentEventDetails"
      vmodl-name="vim.host.TpmSoftwareComponentEventDetails"
      version-id-ref="vim.version.version8"
      base-type-id="vim.host.TpmEventDetails"
      >
      <description-html>
         <![CDATA[Details of a Trusted Platform Module (TPM) event recording a software component
  related event.
  <p />
  This event is created when measuring a software component installed on the system.
  A software component may be a tardisk, a kernel module or any other type supported
  by the package system.
  <p />
  Some software components are not packaged as VIBs (currently the package database
  and persistent state information of ESXi). For these components the VIB fields
  will contain empty strings.]]>
      </description-html>
            <property name="componentName" type-id-ref="java.lang.String"
      vmodl-name="componentName"
      >
      <description-html>
         <![CDATA[Name of the software component that caused this TPM event.]]>
      </description-html>
      </property>

            <property name="vibName" type-id-ref="java.lang.String"
      vmodl-name="vibName"
      >
      <description-html>
         <![CDATA[Name of the VIB containing the software component.]]>
      </description-html>
      </property>

            <property name="vibVersion" type-id-ref="java.lang.String"
      vmodl-name="vibVersion"
      >
      <description-html>
         <![CDATA[Version of the VIB containing the software component.]]>
      </description-html>
      </property>

            <property name="vibVendor" type-id-ref="java.lang.String"
      vmodl-name="vibVendor"
      >
      <description-html>
         <![CDATA[Vendor of the VIB containing the software component.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ClusterDrsFaults"
      type-id="vim.cluster.DrsFaults"
      vmodl-name="vim.cluster.DrsFaults"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The faults generated by DRS when it tries to make recommendations
 for rule enforcement, power management, etc., and indexed in a tree
 structure with reason for recommendations and VM to migrate (optional)
 as the index keys.]]>
      </description-html>
            <property name="reason" type-id-ref="java.lang.String"
      vmodl-name="reason"
      >
      <description-html>
         <![CDATA[A reason code explaining why this set of recommendations were attempted
 by DRS when it generated the faults.]]>
      </description-html>
      </property>

            <property name="faultsByVm" type-id-ref="vim.cluster.DrsFaults.FaultsByVm"
      vmodl-name="faultsByVm"
      is-array="true"
      >
      <description-html>
         <![CDATA[The faults grouped by VMs that DRS was trying to migrate.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.cluster.DrsFaults.FaultsByVm</nested-type-id-ref>
      <nested-type-id-ref>vim.cluster.DrsFaults.FaultsByVirtualDisk</nested-type-id-ref>
   </data-object>
   <data-object name="VirtualMachinePciPassthroughInfo"
      type-id="vim.vm.PciPassthroughInfo"
      vmodl-name="vim.vm.PciPassthroughInfo"
      version-id-ref="vim.version.version5"
      base-type-id="vim.vm.TargetInfo"
      >
      <description-html>
         <![CDATA[Description of a generic PCI device that can be attached to a virtual machine.]]>
      </description-html>
            <property name="pciDevice" type-id-ref="vim.host.PciDevice"
      vmodl-name="pciDevice"
      >
      <description-html>
         <![CDATA[Details of the PCI device, including vendor, class and
  device identification information.]]>
      </description-html>
      </property>

            <property name="systemId" type-id-ref="java.lang.String"
      vmodl-name="systemId"
      >
      <description-html>
         <![CDATA[The ID of the system the PCI device is attached to.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VStorageObjectSnapshotInfo"
      type-id="vim.vslm.VStorageObjectSnapshotInfo"
      vmodl-name="vim.vslm.VStorageObjectSnapshotInfo"
      version-id-ref="vim.version.version12"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object type contains the brief information of a
 virtual storage snapshot.]]>
      </description-html>
            <property name="snapshots" type-id-ref="vim.vslm.VStorageObjectSnapshotInfo.VStorageObjectSnapshot"
      vmodl-name="snapshots"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[An array of snapshots]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.vslm.VStorageObjectSnapshotInfo.VStorageObjectSnapshot</nested-type-id-ref>
   </data-object>
   <data-object name="HostNatService"
      type-id="vim.host.NatService"
      vmodl-name="vim.host.NatService"
      version-id-ref="vim.version.version2"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[A network address translation (NAT) service instance provides
  firewall and network address translation services for a virtual
  network.]]>
      </description-html>
            <property name="key" type-id-ref="java.lang.String"
      vmodl-name="key"
      >
      <description-html>
         <![CDATA[The instance ID of the NAT service.]]>
      </description-html>
      </property>

            <property name="spec" type-id-ref="vim.host.NatService.Specification"
      vmodl-name="spec"
      >
      <description-html>
         <![CDATA[The configurable properties for the NatService object.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.host.NatService.PortForwardSpecification</nested-type-id-ref>
      <nested-type-id-ref>vim.host.NatService.NameServiceSpec</nested-type-id-ref>
      <nested-type-id-ref>vim.host.NatService.Specification</nested-type-id-ref>
      <nested-type-id-ref>vim.host.NatService.Config</nested-type-id-ref>
   </data-object>
   <data-object name="HostMultipathInfoLogicalUnit"
      type-id="vim.host.MultipathInfo.LogicalUnit"
      vmodl-name="vim.host.MultipathInfo.LogicalUnit"
      enclosing-type-id-ref="vim.host.MultipathInfo"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The <a href="vim.host.MultipathInfo.LogicalUnit.html">HostMultipathInfoLogicalUnit</a> data object
  represents a storage entity that provides disk blocks to a host.]]>
      </description-html>
            <property name="key" type-id-ref="java.lang.String"
      vmodl-name="key"
      >
      <description-html>
         <![CDATA[Linkable identifier.]]>
      </description-html>
      </property>

            <property name="id" type-id-ref="java.lang.String"
      vmodl-name="id"
      >
      <description-html>
         <![CDATA[Identifier of LogicalUnit.
  <p>
  Use this id to configure LogicalUnit multipathing policy using <a href="vim.host.StorageSystem.html#setMultipathLunPolicy">SetMultipathLunPolicy</a>.]]>
      </description-html>
      </property>

            <property name="lun" type-id-ref="vim.host.ScsiLun"
      vmodl-name="lun"
      is-link="true"
      >
      <description-html>
         <![CDATA[SCSI device corresponding to logical unit.]]>
      </description-html>
      </property>

            <property name="path" type-id-ref="vim.host.MultipathInfo.Path"
      vmodl-name="path"
      is-array="true"
      >
      <description-html>
         <![CDATA[Array of paths available to access this LogicalUnit.]]>
      </description-html>
      </property>

            <property name="policy" type-id-ref="vim.host.MultipathInfo.LogicalUnitPolicy"
      vmodl-name="policy"
      >
      <description-html>
         <![CDATA[Policy that the logical unit should use when selecting a path.]]>
      </description-html>
      </property>

            <property name="storageArrayTypePolicy" type-id-ref="vim.host.MultipathInfo.LogicalUnitStorageArrayTypePolicy"
      vmodl-name="storageArrayTypePolicy"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Policy used to determine how a storage device is accessed.  This policy
  is currently immutable.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostGraphicsConfigDeviceType"
      type-id="vim.host.GraphicsConfig.DeviceType"
      vmodl-name="vim.host.GraphicsConfig.DeviceType"
      enclosing-type-id-ref="vim.host.GraphicsConfig"
      version-id-ref="vim.version.version11"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[A particular graphics device and its associated type.]]>
      </description-html>
            <property name="deviceId" type-id-ref="java.lang.String"
      vmodl-name="deviceId"
      >
      <description-html>
         <![CDATA[Graphics device identifier (ex. PCI ID).]]>
      </description-html>
      </property>

            <property name="graphicsType" type-id-ref="java.lang.String"
      vmodl-name="graphicsType"
      >
      <description-html>
         <![CDATA[Graphics type (@see GraphicsType).]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="PerfMetricId"
      type-id="vim.PerformanceManager.MetricId"
      vmodl-name="vim.PerformanceManager.MetricId"
      enclosing-type-id-ref="vim.PerformanceManager"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object type contains information that associates a performance
  counter with a performance metric. When constructing this data object for
  the <a href="vim.PerformanceManager.QuerySpec.html#metricId">metricId</a> property of the <a href="vim.PerformanceManager.QuerySpec.html">PerfQuerySpec</a> to submit to one of the <a href="vim.PerformanceManager.html">PerformanceManager</a> query operations, the <a href="vim.PerformanceManager.MetricId.html#instance">instance</a> property
  supports these special characters: <ul>

  <li> An asterisk (*) to specify all instances of the metric for the
       specified <a href="vim.PerformanceManager.MetricId.html#counterId">counterId</a> </li>

  <li> Double-quotes ("") to specify aggregated statistics </li>

  </ul>]]>
      </description-html>
            <property name="counterId" type-id-ref="INT"
      vmodl-name="counterId"
      >
      <description-html>
         <![CDATA[The <a href="vim.PerformanceManager.CounterInfo.html#key">key</a> of the counter for
  the metric.]]>
      </description-html>
      </property>

            <property name="instance" type-id-ref="java.lang.String"
      vmodl-name="instance"
      >
      <description-html>
         <![CDATA[An identifier that is derived from configuration names for the device
  associated with the metric. It identifies the instance of the metric
  with its source. This property may be empty. <ul>

  <li> For memory and aggregated statistics, this property is empty. </li>

  <li> For host and virtual machine devices, this property contains the
       name of the device, such as the name of the host-bus adapter or
       the name of the virtual Ethernet adapter. For example,
       &#147;mpx&#46;vmhba33&#58;C0&#58;T0&#58;L0&#148; or
       &#147;vmnic0&#58;&#148; </li>

  <li> For a CPU, this property identifies the numeric position within
       the CPU core, such as 0, 1, 2, 3. </li>

  <li> For a virtual disk, this property identifies the file type: <ul>

     <li> DISKFILE, for virtual machine base-disk files </li>
     <li> SWAPFILE, for virtual machine swap files </li>
     <li> DELTAFILE, for virtual machine snapshot overhead files </li>
     <li> OTHERFILE, for all other files of a virtual machine </li>
     </ul></li>

  </ul>]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DvsHostInfrastructureTrafficResourceAllocation"
      type-id="vim.DistributedVirtualSwitch.HostInfrastructureTrafficResource.ResourceAllocation"
      vmodl-name="vim.DistributedVirtualSwitch.HostInfrastructureTrafficResource.ResourceAllocation"
      enclosing-type-id-ref="vim.DistributedVirtualSwitch.HostInfrastructureTrafficResource"
      version-id-ref="vim.version.version10"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Resource allocation information for a
  host infrastructure traffic class.]]>
      </description-html>
            <property name="limit" type-id-ref="LONG"
      vmodl-name="limit"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The maximum allowed usage for a traffic class belonging to
  this resource pool per host physical NIC.
  The utilization of a traffic class will not exceed the specified limit
  even if there are available network resources. If this value is unset
  or set to -1 in an update operation, then there is no limit on the network
  resource usage (only bounded by available resource and shares).
  Units are in Mbits/sec.]]>
      </description-html>
      </property>

            <property name="shares" type-id-ref="vim.SharesInfo"
      vmodl-name="shares"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Network share. The value is used as a relative weight in competing for
 shared bandwidth, in case of resource contention.]]>
      </description-html>
      </property>

            <property name="reservation" type-id-ref="LONG"
      vmodl-name="reservation"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Amount of bandwidth resource that is guaranteed available
  to the host infrastructure traffic class.
  If the utilization is less than the reservation, the extra bandwidth
  is used for other host infrastructure traffic class types. Reservation is not
  allowed to exceed the value of
  <a href="vim.DistributedVirtualSwitch.HostInfrastructureTrafficResource.ResourceAllocation.html#limit">limit</a>, if
  <a href="vim.DistributedVirtualSwitch.HostInfrastructureTrafficResource.ResourceAllocation.html#limit">limit</a> is set.
  Unit is Mbits/sec.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="SystemEventInfo"
      type-id="vim.host.SystemEventInfo"
      vmodl-name="vim.host.SystemEventInfo"
      version-id-ref="vim.version.version11"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[IPMI System Event Log (SEL) provides a history of hardware sensor states.
  This is defined in IPMI specification, section 32.1 SEL Event Records.
  CLI:: esxcli hardware ipmi sel list]]>
      </description-html>
            <property name="recordId" type-id-ref="LONG"
      vmodl-name="recordId"
      >
      <description-html>
         <![CDATA[The recordId uniquely identifies an entry in IPMI System Event Log.]]>
      </description-html>
      </property>

            <property name="when" type-id-ref="java.lang.String"
      vmodl-name="when"
      >
      <description-html>
         <![CDATA[A ISO 8601 timestamp when the event was added to IPMI System Event Log.
  This timestamp comes from the IPMI subsystem clock and may not be
  the same as hypervisor's clock.]]>
      </description-html>
      </property>

            <property name="selType" type-id-ref="LONG"
      vmodl-name="selType"
      >
      <description-html>
         <![CDATA[The IPMI SEL type defines the if the SEL event uses
  the system event format format or is OEM defined.
  A value of 2 indicates system event.
  Values 0xC0-0xDF, 0xE0-0xFF are OEM event ranges.]]>
      </description-html>
      </property>

            <property name="message" type-id-ref="java.lang.String"
      vmodl-name="message"
      >
      <description-html>
         <![CDATA[A description of what the event is about.]]>
      </description-html>
      </property>

            <property name="sensorNumber" type-id-ref="LONG"
      vmodl-name="sensorNumber"
      >
      <description-html>
         <![CDATA[The IPMI Sensor/probe that is reporting this event.
 A value of zero (0) indicates event has no related sensor.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ClusterDrsRecommendation"
      type-id="vim.cluster.DrsRecommendation"
      vmodl-name="vim.cluster.DrsRecommendation"
      version-id-ref="vim.version.version1"
      is-deprecated="true"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[DrsRecommendation describes a recommendation to migrate
   one or more virtual machines.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of VI API 2.5 use <a href="vim.cluster.Recommendation.html">ClusterRecommendation</a>.]]>
      </deprecated-html>
            <property name="key" type-id-ref="java.lang.String"
      vmodl-name="key"
      >
      <description-html>
         <![CDATA[Key to identify the recommendation when calling applyRecommendation.]]>
      </description-html>
      </property>

            <property name="rating" type-id-ref="INT"
      vmodl-name="rating"
      >
      <description-html>
         <![CDATA[A rating of the recommendation.
  Valid values range from 1 (lowest confidence) to 5 (highest confidence).]]>
      </description-html>
      </property>

            <property name="reason" type-id-ref="java.lang.String"
      vmodl-name="reason"
      >
      <description-html>
         <![CDATA[A reason code explaining why this set of migrations is being suggested.]]>
      </description-html>
      </property>

            <property name="reasonText" type-id-ref="java.lang.String"
      vmodl-name="reasonText"
      is-localizable="true"
      >
      <description-html>
         <![CDATA[Text that provides more information about the reason code for the suggested
 set of migrations.]]>
      </description-html>
      </property>

            <property name="migrationList" type-id-ref="vim.cluster.DrsMigration"
      vmodl-name="migrationList"
      is-deprecated="true"
      is-array="true"
      >
      <deprecated-html>
         <![CDATA[A more general <a href="vim.cluster.Recommendation.html">recommendation</a> list should be used. This recommendation type
 and the migrationList is kept for backward compatibility.

 List of migrations in this recommendation and all the parent
 recommendations on which this recommendation depends. All the
 migrations in this list can be constructed from <a href="vim.cluster.Recommendation.html#prerequisite">prerequisite</a> and <a href="vim.cluster.Recommendation.html#action">action</a>.]]>
      </deprecated-html>
      </property>

      <nested-type-id-ref>vim.cluster.DrsRecommendation.ReasonCode</nested-type-id-ref>
   </data-object>
   <data-object name="VmResourcePoolMovedEvent"
      type-id="vim.event.VmResourcePoolMovedEvent"
      vmodl-name="vim.event.VmResourcePoolMovedEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.VmEvent"
      >
      <description-html>
         <![CDATA[This event records when a virtual machine is moved from one resource pool to another.]]>
      </description-html>
            <property name="oldParent" type-id-ref="vim.event.ResourcePoolEventArgument"
      vmodl-name="oldParent"
      >
      <description-html>
         <![CDATA[The old parent resourcePool of the moved virtual machine.]]>
      </description-html>
      </property>

            <property name="newParent" type-id-ref="vim.event.ResourcePoolEventArgument"
      vmodl-name="newParent"
      >
      <description-html>
         <![CDATA[The new parent resourcePool of the moved virtual machine.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ProfileConfigInfo"
      type-id="vim.profile.Profile.ConfigInfo"
      vmodl-name="vim.profile.Profile.ConfigInfo"
      enclosing-type-id-ref="vim.profile.Profile"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      >
      <description-html>
         <![CDATA[Name of the profile]]>
      </description-html>
      </property>

            <property name="annotation" type-id-ref="java.lang.String"
      vmodl-name="annotation"
      is-optional="true"
      >
      <description-html>
         <![CDATA[User Provided description of the profile]]>
      </description-html>
      </property>

            <property name="enabled" type-id-ref="BOOLEAN"
      vmodl-name="enabled"
      >
      <description-html>
         <![CDATA[Flag indicating if the Profile is enabled]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostSriovInfo"
      type-id="vim.host.SriovInfo"
      vmodl-name="vim.host.SriovInfo"
      version-id-ref="vim.version.version9"
      base-type-id="vim.host.PciPassthruInfo"
      >
      <description-html>
         <![CDATA[This data object provides information about the state of SR-IOV device.]]>
      </description-html>
            <property name="sriovEnabled" type-id-ref="BOOLEAN"
      vmodl-name="sriovEnabled"
      >
      <description-html>
         <![CDATA[Whether SRIOV has been enabled by the user]]>
      </description-html>
      </property>

            <property name="sriovCapable" type-id-ref="BOOLEAN"
      vmodl-name="sriovCapable"
      >
      <description-html>
         <![CDATA[Whether SRIOV is possible for this device]]>
      </description-html>
      </property>

            <property name="sriovActive" type-id-ref="BOOLEAN"
      vmodl-name="sriovActive"
      >
      <description-html>
         <![CDATA[Whether SRIOV is active for this device (meaning enabled + rebooted)]]>
      </description-html>
      </property>

            <property name="numVirtualFunctionRequested" type-id-ref="INT"
      vmodl-name="numVirtualFunctionRequested"
      >
      <description-html>
         <![CDATA[Number of SRIOV virtual functions requested for this device]]>
      </description-html>
      </property>

            <property name="numVirtualFunction" type-id-ref="INT"
      vmodl-name="numVirtualFunction"
      >
      <description-html>
         <![CDATA[Number of SRIOV virtual functions present on this device]]>
      </description-html>
      </property>

            <property name="maxVirtualFunctionSupported" type-id-ref="INT"
      vmodl-name="maxVirtualFunctionSupported"
      >
      <description-html>
         <![CDATA[Maximum number of SRIOV virtual functions supported on this device]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DatastoreIORMReconfiguredEvent"
      type-id="vim.event.DatastoreIORMReconfiguredEvent"
      vmodl-name="vim.event.DatastoreIORMReconfiguredEvent"
      version-id-ref="vim.version.version6"
      base-type-id="vim.event.DatastoreEvent"
      >
      <description-html>
         <![CDATA[This event records that the configuration of storage I/O
  resource management for a datastore has changed.]]>
      </description-html>
   </data-object>
   <data-object name="VirtualFloppyRemoteDeviceBackingOption"
      type-id="vim.vm.device.VirtualFloppyOption.RemoteDeviceBackingOption"
      vmodl-name="vim.vm.device.VirtualFloppyOption.RemoteDeviceBackingOption"
      enclosing-type-id-ref="vim.vm.device.VirtualFloppyOption"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.device.VirtualDeviceOption.RemoteDeviceBackingOption"
      >
      <description-html>
         <![CDATA[The RemoteDeviceBackingOption data object type contains the options
  for the floppy remote device backing type.]]>
      </description-html>
   </data-object>
   <data-object name="HostIpInconsistentEvent"
      type-id="vim.event.HostIpInconsistentEvent"
      vmodl-name="vim.event.HostIpInconsistentEvent"
      version-id-ref="vim.version.version2"
      is-deprecated="true"
      base-type-id="vim.event.HostEvent"
      >
      <description-html>
         <![CDATA[This event records that the IP address resolution returned different
  addresses on the host.  Please check your host's network configuration.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 5.0, the event is no longer relevant.]]>
      </deprecated-html>
            <property name="ipAddress" type-id-ref="java.lang.String"
      vmodl-name="ipAddress"
      >
      </property>

            <property name="ipAddress2" type-id-ref="java.lang.String"
      vmodl-name="ipAddress2"
      >
      </property>

   </data-object>
   <data-object name="HostLocalAuthenticationInfo"
      type-id="vim.host.LocalAuthenticationInfo"
      vmodl-name="vim.host.LocalAuthenticationInfo"
      version-id-ref="vim.version.version6"
      base-type-id="vim.host.AuthenticationStoreInfo"
      >
      <description-html>
         <![CDATA[The <a href="vim.host.LocalAuthenticationInfo.html">HostLocalAuthenticationInfo</a> data object represents
  local authentication on the ESX host. Local authentication
  is always enabled.]]>
      </description-html>
   </data-object>
   <data-object name="ClusterDrsVmConfigInfo"
      type-id="vim.cluster.DrsVmConfigInfo"
      vmodl-name="vim.cluster.DrsVmConfigInfo"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[DRS configuration for a single virtual machine. This makes it possible
  to override the default behavior for an individual virtual machine.]]>
      </description-html>
            <property name="key" type-id-ref="vim.VirtualMachine"
      vmodl-name="key"
      >
      <description-html>
         <![CDATA[Reference to the virtual machine.]]>
      </description-html>
      </property>

            <property name="enabled" type-id-ref="BOOLEAN"
      vmodl-name="enabled"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Flag to indicate whether or not VirtualCenter is allowed to perform any
  DRS migration or initial placement recommendations for this virtual
  machine.
  If this flag is false, the virtual machine is effectively excluded from
  DRS.
  <p>
  If no individual DRS specification exists for a virtual machine,
  this property defaults to true.]]>
      </description-html>
      </property>

            <property name="behavior" type-id-ref="vim.cluster.DrsConfigInfo.DrsBehavior"
      vmodl-name="behavior"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Specifies the particular DRS behavior for this virtual machine.<br>See <a href="vim.cluster.DrsConfigInfo.html">ClusterDrsConfigInfo</a><br>]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostRdmaDevice"
      type-id="vim.host.RdmaDevice"
      vmodl-name="vim.host.RdmaDevice"
      version-id-ref="vim.version.v7_0"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object represents a Remote Direct Memory Access
  device as seen by the primary operating system.]]>
      </description-html>
            <property name="key" type-id-ref="java.lang.String"
      vmodl-name="key"
      >
      <description-html>
         <![CDATA[The linkable identifier.]]>
      </description-html>
      </property>

            <property name="device" type-id-ref="java.lang.String"
      vmodl-name="device"
      >
      <description-html>
         <![CDATA[The device name of the RDMA device.]]>
      </description-html>
      </property>

            <property name="driver" type-id-ref="java.lang.String"
      vmodl-name="driver"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The short string name of the device driver, if available.]]>
      </description-html>
      </property>

            <property name="description" type-id-ref="java.lang.String"
      vmodl-name="description"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Device description, if available.]]>
      </description-html>
      </property>

            <property name="backing" type-id-ref="vim.host.RdmaDevice.Backing"
      vmodl-name="backing"
      is-optional="true"
      >
      <description-html>
         <![CDATA[If set, represents the physical backing for the RDMA device.
  Not all RDMA devices are required to have a physical backing.]]>
      </description-html>
      </property>

            <property name="connectionInfo" type-id-ref="vim.host.RdmaDevice.ConnectionInfo"
      vmodl-name="connectionInfo"
      >
      <description-html>
         <![CDATA[Current device connection state.]]>
      </description-html>
      </property>

            <property name="capability" type-id-ref="vim.host.RdmaDevice.Capability"
      vmodl-name="capability"
      >
      <description-html>
         <![CDATA[Supported capabilies of the RDMA device.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.host.RdmaDevice.Backing</nested-type-id-ref>
      <nested-type-id-ref>vim.host.RdmaDevice.PnicBacking</nested-type-id-ref>
      <nested-type-id-ref>vim.host.RdmaDevice.ConnectionState</nested-type-id-ref>
      <nested-type-id-ref>vim.host.RdmaDevice.ConnectionInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.host.RdmaDevice.Capability</nested-type-id-ref>
   </data-object>
   <data-object name="HostServiceSourcePackage"
      type-id="vim.host.Service.SourcePackage"
      vmodl-name="vim.host.Service.SourcePackage"
      enclosing-type-id-ref="vim.host.Service"
      version-id-ref="vim.version.version7"
      base-type-id="vmodl.DynamicData"
      >
            <property name="sourcePackageName" type-id-ref="java.lang.String"
      vmodl-name="sourcePackageName"
      >
      <description-html>
         <![CDATA[The name of the source package]]>
      </description-html>
      </property>

            <property name="description" type-id-ref="java.lang.String"
      vmodl-name="description"
      >
      <description-html>
         <![CDATA[The description of the source package]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VcAgentUninstallFailedEvent"
      type-id="vim.event.VcAgentUninstallFailedEvent"
      vmodl-name="vim.event.VcAgentUninstallFailedEvent"
      version-id-ref="vim.version.version5"
      base-type-id="vim.event.HostEvent"
      >
      <description-html>
         <![CDATA[This event records when the VirtualCenter agent on a host failed to uninstall.]]>
      </description-html>
            <property name="reason" type-id-ref="java.lang.String"
      vmodl-name="reason"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The reason why the uninstall failed, if known.
 See <a href="vim.fault.AgentInstallFailed.Reason.html">AgentInstallFailedReason</a>]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostSpecificationRequireEvent"
      type-id="vim.event.HostSpecificationRequireEvent"
      vmodl-name="vim.event.HostSpecificationRequireEvent"
      version-id-ref="vim.version.version11"
      base-type-id="vim.event.HostEvent"
      >
      <description-html>
         <![CDATA[This event is issued to that the host specification should be updated.]]>
      </description-html>
   </data-object>
   <data-object name="ScheduledTaskInfo"
      type-id="vim.scheduler.ScheduledTaskInfo"
      vmodl-name="vim.scheduler.ScheduledTaskInfo"
      version-id-ref="vim.version.version1"
      base-type-id="vim.scheduler.ScheduledTaskSpec"
      >
      <description-html>
         <![CDATA[The scheduled task details.]]>
      </description-html>
            <property name="scheduledTask" type-id-ref="vim.scheduler.ScheduledTask"
      vmodl-name="scheduledTask"
      >
      <description-html>
         <![CDATA[Scheduled task object.]]>
      </description-html>
      </property>

            <property name="entity" type-id-ref="vim.ManagedEntity"
      vmodl-name="entity"
      >
      <description-html>
         <![CDATA[The entity on which related events will be logged.
 If the task is scheduled on a ManagedEntity, this
 field will also reflect the same ManagedEntity.
 If task is scheduled on a ManagedObject, this field
 will have information about the entity on which
 the events will be logged on behalf of the ManagedObject.
 ManagedObject itself will be denoted by <a href="vim.scheduler.ScheduledTaskInfo.html#taskObject">taskObject</a>]]>
      </description-html>
      </property>

            <property name="lastModifiedTime" type-id-ref="vmodl.DateTime"
      vmodl-name="lastModifiedTime"
      >
      <description-html>
         <![CDATA[The time the scheduled task is created or modified.]]>
      </description-html>
      </property>

            <property name="lastModifiedUser" type-id-ref="java.lang.String"
      vmodl-name="lastModifiedUser"
      >
      <description-html>
         <![CDATA[Last user that modified the scheduled task.]]>
      </description-html>
      </property>

            <property name="nextRunTime" type-id-ref="vmodl.DateTime"
      vmodl-name="nextRunTime"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The next time the scheduled task will run.]]>
      </description-html>
      </property>

            <property name="prevRunTime" type-id-ref="vmodl.DateTime"
      vmodl-name="prevRunTime"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The last time the scheduled task ran.]]>
      </description-html>
      </property>

            <property name="state" type-id-ref="vim.TaskInfo.State"
      vmodl-name="state"
      >
      <description-html>
         <![CDATA[Scheduled task state.]]>
      </description-html>
      </property>

            <property name="error" type-id-ref="vmodl.LocalizedMethodFault"
      vmodl-name="error"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The fault code when the scheduled task state is "error".]]>
      </description-html>
      </property>

            <property name="result" type-id-ref="vmodl.Any"
      vmodl-name="result"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The operation result when the scheduled task state is "success".]]>
      </description-html>
      </property>

            <property name="progress" type-id-ref="INT"
      vmodl-name="progress"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The task progress when the scheduled task state is "running".]]>
      </description-html>
      </property>

            <property name="activeTask" type-id-ref="vim.Task"
      vmodl-name="activeTask"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The running task instance when the scheduled task state is "running".]]>
      </description-html>
      </property>

            <property name="taskObject" type-id-ref="vmodl.ManagedObject"
      vmodl-name="taskObject"
      version-id-ref="vim.version.version5"
      >
      <description-html>
         <![CDATA[The object on which the scheduled task is defined.
 This field will have information about either the
 ManagedEntity or the ManagedObject on which the scheduled
 task is defined.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostUnresolvedVmfsResolutionResult"
      type-id="vim.host.UnresolvedVmfsResolutionResult"
      vmodl-name="vim.host.UnresolvedVmfsResolutionResult"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[When an UnresolvedVmfsVolume has been resignatured or forceMounted, we want to
  return the original spec information along with newly created VMFS volume.]]>
      </description-html>
            <property name="spec" type-id-ref="vim.host.UnresolvedVmfsResolutionSpec"
      vmodl-name="spec"
      >
      <description-html>
         <![CDATA[The original UnresolvedVmfsResolutionSpec which user had specified]]>
      </description-html>
      </property>

            <property name="vmfs" type-id-ref="vim.host.VmfsVolume"
      vmodl-name="vmfs"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Newly created VmfsVolume]]>
      </description-html>
      </property>

            <property name="fault" type-id-ref="vmodl.LocalizedMethodFault"
      vmodl-name="fault"
      is-optional="true"
      >
      <description-html>
         <![CDATA['fault' would be set if the operation was not successful]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DatastoreMountPathDatastorePair"
      type-id="vim.Datastore.MountPathDatastorePair"
      vmodl-name="vim.Datastore.MountPathDatastorePair"
      enclosing-type-id-ref="vim.Datastore"
      version-id-ref="vim.version.version6"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Contains a mapping of an old mount path and its corresponding
  resignatured or remounted datastore]]>
      </description-html>
            <property name="oldMountPath" type-id-ref="java.lang.String"
      vmodl-name="oldMountPath"
      >
      <description-html>
         <![CDATA[Old file path where file system volume is mounted, which
  should be <a href="vim.host.MountInfo.html#path">path</a> value in
  <a href="vim.host.MountInfo.html">HostMountInfo</a>]]>
      </description-html>
      </property>

            <property name="datastore" type-id-ref="vim.Datastore"
      vmodl-name="datastore"
      >
      <description-html>
         <![CDATA[The resignatured or remounted datastore corresponding to the oldMountPath]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DistributedVirtualSwitchManagerImportResult"
      type-id="vim.dvs.DistributedVirtualSwitchManager.ImportResult"
      vmodl-name="vim.dvs.DistributedVirtualSwitchManager.ImportResult"
      enclosing-type-id-ref="vim.dvs.DistributedVirtualSwitchManager"
      version-id-ref="vim.version.version8"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The <a href="vim.dvs.DistributedVirtualSwitchManager.ImportResult.html">DistributedVirtualSwitchManagerImportResult</a>
 data object represents the results of a
 <a href="vim.dvs.DistributedVirtualSwitchManager.html#importEntity">DVSManagerImportEntity_Task</a>
 operation. It contains lists of the switches and portgroups
 that were created. It also contains a list of faults
 that occurred during the operation.]]>
      </description-html>
            <property name="distributedVirtualSwitch" type-id-ref="vim.DistributedVirtualSwitch"
      vmodl-name="distributedVirtualSwitch"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of distributed virtual switches.]]>
      </description-html>
      </property>

            <property name="distributedVirtualPortgroup" type-id-ref="vim.dvs.DistributedVirtualPortgroup"
      vmodl-name="distributedVirtualPortgroup"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of distributed virtual portgroups.]]>
      </description-html>
      </property>

            <property name="importFault" type-id-ref="vim.fault.ImportOperationBulkFault.FaultOnImport"
      vmodl-name="importFault"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Faults that occurred on the entities during the import operation.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualSIOController"
      type-id="vim.vm.device.VirtualSIOController"
      vmodl-name="vim.vm.device.VirtualSIOController"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.device.VirtualController"
      >
      <description-html>
         <![CDATA[This data object type defines a
  Super IO Controller for floppy drives, parallel ports,
  and serial ports.]]>
      </description-html>
   </data-object>
   <data-object name="HostSnmpDestination"
      type-id="vim.host.SnmpSystem.SnmpConfigSpec.Destination"
      vmodl-name="vim.host.SnmpSystem.SnmpConfigSpec.Destination"
      enclosing-type-id-ref="vim.host.SnmpSystem.SnmpConfigSpec"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Defines a receiver for SNMP Notifications]]>
      </description-html>
            <property name="hostName" type-id-ref="java.lang.String"
      vmodl-name="hostName"
      >
      <description-html>
         <![CDATA[A system listening for SNMP notifications.
             These must be a IPv4 unicast address or resolvable dns name.]]>
      </description-html>
      </property>

            <property name="port" type-id-ref="INT"
      vmodl-name="port"
      >
      <description-html>
         <![CDATA[UDP port to Notification receiver is listening on. udp/162 is
          the reserved port]]>
      </description-html>
      </property>

            <property name="community" type-id-ref="java.lang.String"
      vmodl-name="community"
      >
      </property>

   </data-object>
   <data-object name="LocalizableMessage"
      type-id="vmodl.LocalizableMessage"
      vmodl-name="vmodl.LocalizableMessage"
      version-id-ref="vmodl.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Message data which is intended to be displayed according
 to the locale of a client.

 <p>A <a href="vmodl.LocalizableMessage.html">LocalizableMessage</a> contains both a formatted, localized
 version of the text and the data needed to perform localization in
 conjunction with localization catalogs.</p>

 <p>Clients of the VIM API may use vim.SessionManager.setLocale()
 to cause the server to emit a localized <a href="vmodl.LocalizableMessage.html#message">message</a>, or may perform
 client-side localization based on message catalogs provided by the
 server.</p>

 <ul>
 <li>If the substition variable is a string, no further lookup is required.
   <ul>
     <li><a href="vmodl.LocalizableMessage.html#arg">arg</a> = [("address" = "127.0.0.1")]</li>
     <li>CATALOG(locmsg, <a href="vmodl.LocalizableMessage.html#key">key</a>) = "IP address is {address}"</li>
     <li>==&gt; <a href="vmodl.LocalizableMessage.html#message">message</a> = "IP address is 127.0.0.1"</li>
   </ul>
 </li>
 <li>If the substitution variable is an integer, value is a lookup key.
   <ul>
     <li><a href="vmodl.LocalizableMessage.html#arg">arg</a> = [("1" = "button.cancel"), ("2" = "msg.revert")]</li>
     <li>CATALOG(locmsg, <a href="vmodl.LocalizableMessage.html#key">key</a>) = "Select '{1}' to {2}"</li>
     <li>CATALOG(locmsg, button.cancel) = "Cancel"</li>
     <li>CATALOG(locmsg, msg.revert) = "revert"</li>
     <li>==&gt; <a href="vmodl.LocalizableMessage.html#message">message</a> = "Select 'Cancel' to revert"</li>
   </ul>
 </li>
 <li>If the variable contains '@', value is a label lookup in another
 catalog, where {name.@CATALOG.prefix} looks up prefix.<a href="vmodl.LocalizableMessage.html#arg">arg</a>[name].label
 in CATALOG.
   <ul>
     <li><a href="vmodl.LocalizableMessage.html#arg">arg</a> = [("field" = "queued")]</li>
     <li>CATALOG(locmsg, <a href="vmodl.LocalizableMessage.html#key">key</a>) = "State is {field.@enum.TaskInfo.State}"</li>
     <li>CATALOG(enum, TaskInfo.State.queued.label) is "Queued"</li>
     <li>==&gt; <a href="vmodl.LocalizableMessage.html#message">message</a> = "State is Queued"</li>
   </ul>
 </li>
 </ul>]]>
      </description-html>
            <property name="key" type-id-ref="java.lang.String"
      vmodl-name="key"
      >
      <description-html>
         <![CDATA[Unique key identifying the message in the localized message catalog.]]>
      </description-html>
      </property>

            <property name="arg" type-id-ref="vmodl.KeyAnyValue"
      vmodl-name="arg"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Substitution arguments for variables in the localized message.]]>
      </description-html>
      </property>

            <property name="message" type-id-ref="java.lang.String"
      vmodl-name="message"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Message in session locale.
 Use vim.SessionManager.setLocale() to change the session locale.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualSCSIControllerOption"
      type-id="vim.vm.device.VirtualSCSIControllerOption"
      vmodl-name="vim.vm.device.VirtualSCSIControllerOption"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.device.VirtualControllerOption"
      >
      <description-html>
         <![CDATA[The VirtualSCSIControllerOption data object type contains the options
  for a virtual SCSI controller defined by the
  <a href="vim.vm.device.VirtualSCSIController.html">VirtualSCSIController</a>
  data object type.]]>
      </description-html>
            <property name="numSCSIDisks" type-id-ref="vim.option.IntOption"
      vmodl-name="numSCSIDisks"
      >
      <description-html>
         <![CDATA[Three properties (numSCSIDisks.min, numSCSIDisks.max, and
  numSCSIDisks.defaultValue) define the minimum, maximum, and default
  number of SCSI VirtualDisk instances available at any given time in the
  SCSI controller. The number of SCSI VirtualDisk instances is
  also limited by the number of available slots in the SCSI controller.]]>
      </description-html>
      </property>

            <property name="numSCSICdroms" type-id-ref="vim.option.IntOption"
      vmodl-name="numSCSICdroms"
      >
      <description-html>
         <![CDATA[Three properties (numSCSICdroms.min, numSCSICdroms.max, and
  numSCSICdroms.defaultValue) define the minimum, maximum, and default
  number of SCSI VirtualCdrom instances available
  in the SCSI controller. The number of SCSI VirtualCdrom instances is
  also limited by the number of available slots in the SCSI controller.]]>
      </description-html>
      </property>

            <property name="numSCSIPassthrough" type-id-ref="vim.option.IntOption"
      vmodl-name="numSCSIPassthrough"
      >
      <description-html>
         <![CDATA[Three properties (numSCSIPassthrough.min, numSCSIPassthrough.max, and
  numSCSIPassthrough.defaultValue) define the minimum, maximum, and
  default number of VirtualSCSIPassthrough instances available
  have at any given time in the SCSI controller. The number of
  VirtualSCSIPassthrough instances is also limited by the number of
  available slots in the SCSI controller.]]>
      </description-html>
      </property>

            <property name="sharing" type-id-ref="vim.vm.device.VirtualSCSIController.Sharing"
      vmodl-name="sharing"
      is-array="true"
      >
      <description-html>
         <![CDATA[Supported shared bus modes.]]>
      </description-html>
      </property>

            <property name="defaultSharedIndex" type-id-ref="INT"
      vmodl-name="defaultSharedIndex"
      >
      <description-html>
         <![CDATA[Index into sharing array specifying the default value.]]>
      </description-html>
      </property>

            <property name="hotAddRemove" type-id-ref="vim.option.BoolOption"
      vmodl-name="hotAddRemove"
      >
      <description-html>
         <![CDATA[All SCSI controllers support hot adding and removing of devices. This
  support can't be toggled in the current implementation. Therefore, this
  option is ignored when reconfiguring a SCSI controller and is always set
  to "true" when reading an existing configuration.]]>
      </description-html>
      </property>

            <property name="scsiCtlrUnitNumber" type-id-ref="INT"
      vmodl-name="scsiCtlrUnitNumber"
      >
      <description-html>
         <![CDATA[The unit number of the SCSI controller. The SCSI controller sits on its
  own bus, so that this field defines which slot the controller will use.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ComputeResourceConfigInfo"
      type-id="vim.ComputeResource.ConfigInfo"
      vmodl-name="vim.ComputeResource.ConfigInfo"
      enclosing-type-id-ref="vim.ComputeResource"
      version-id-ref="vim.version.version2"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Configuration of the compute resource; applies to both standalone hosts
  and clusters.]]>
      </description-html>
            <property name="vmSwapPlacement" type-id-ref="java.lang.String"
      vmodl-name="vmSwapPlacement"
      >
      <description-html>
         <![CDATA[Swapfile placement policy for virtual machines within this compute
  resource. Any policy except for "inherit" is a valid value for this
  property; the default is "vmDirectory". This setting will be honored
  for each virtual machine within the compute resource for which the
  following is true:
  <ul>
  <li>The virtual machine is executing on a host that has the
  <a href="vim.host.Capability.html#perVmSwapFiles">perVmSwapFiles</a> capability.</li>
  <li>The virtual machine configuration's
  <a href="vim.vm.ConfigInfo.html#swapPlacement">swapPlacement</a> property is set
  to "inherit".</li>
  </ul><br>See <a href="vim.vm.ConfigInfo.SwapPlacementType.html">VirtualMachineConfigInfoSwapPlacementType</a><br>]]>
      </description-html>
      </property>

            <property name="spbmEnabled" type-id-ref="BOOLEAN"
      vmodl-name="spbmEnabled"
      version-id-ref="vim.version.version7"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Flag indicating whether or not the SPBM(Storage Policy Based Management)
 feature is enabled on this compute resource]]>
      </description-html>
      </property>

            <property name="defaultHardwareVersionKey" type-id-ref="java.lang.String"
      vmodl-name="defaultHardwareVersionKey"
      version-id-ref="vim.version.version8"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Key for Default Hardware Version used on this compute resource
  in the format of <a href="vim.vm.ConfigOptionDescriptor.html#key">key</a>.

  This field affects
  <a href="vim.vm.ConfigOptionDescriptor.html#defaultConfigOption">defaultConfigOption</a> returned
  by <a href="vim.ComputeResource.html#environmentBrowser">EnvironmentBrowser</a> of this object and all its children
  with this field unset.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="AuthorizationRole"
      type-id="vim.AuthorizationManager.Role"
      vmodl-name="vim.AuthorizationManager.Role"
      enclosing-type-id-ref="vim.AuthorizationManager"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object type specifies a collection of privileges used
  to grant access to users on managed entities.]]>
      </description-html>
            <property name="roleId" type-id-ref="INT"
      vmodl-name="roleId"
      >
      <description-html>
         <![CDATA[Unique role identifier.]]>
      </description-html>
      </property>

            <property name="system" type-id-ref="BOOLEAN"
      vmodl-name="system"
      >
      <description-html>
         <![CDATA[Whether or not the role is system-defined. System-defined roles cannot be
  changed.]]>
      </description-html>
      </property>

            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      >
      <description-html>
         <![CDATA[System-defined or user-defined role name.]]>
      </description-html>
      </property>

            <property name="info" type-id-ref="vim.Description"
      vmodl-name="info"
      is-localizable="true"
      >
      <description-html>
         <![CDATA[Displayable role information.]]>
      </description-html>
      </property>

            <property name="privilege" type-id-ref="java.lang.String"
      vmodl-name="privilege"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Privileges provided by this role, by privilege identifier.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DistributedVirtualSwitchHostMemberConfigSpec"
      type-id="vim.dvs.HostMember.ConfigSpec"
      vmodl-name="vim.dvs.HostMember.ConfigSpec"
      enclosing-type-id-ref="vim.dvs.HostMember"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Specification to create or reconfigure ESXi host membership
 in a <a href="vim.DistributedVirtualSwitch.html">DistributedVirtualSwitch</a>.]]>
      </description-html>
            <property name="operation" type-id-ref="java.lang.String"
      vmodl-name="operation"
      >
      <description-html>
         <![CDATA[Host member operation type. See
  <a href="vim.ConfigSpecOperation.html">ConfigSpecOperation</a> for valid values.]]>
      </description-html>
      </property>

            <property name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      >
      <description-html>
         <![CDATA[Identifies a host member of a <a href="vim.DistributedVirtualSwitch.html">DistributedVirtualSwitch</a>
 for a <a href="vim.Folder.html#createDistributedVirtualSwitch">CreateDVS_Task</a> or
 <a href="vim.DistributedVirtualSwitch.html">DistributedVirtualSwitch</a>.<a href="vim.DistributedVirtualSwitch.html#reconfigure">ReconfigureDvs_Task</a> operation.]]>
      </description-html>
      </property>

            <property name="backing" type-id-ref="vim.dvs.HostMember.Backing"
      vmodl-name="backing"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Specifies the physical NICs to use as backing for the proxy switch
  on the host.]]>
      </description-html>
      </property>

            <property name="maxProxySwitchPorts" type-id-ref="INT"
      vmodl-name="maxProxySwitchPorts"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Maximum number of ports allowed in the <a href="vim.host.HostProxySwitch.html">HostProxySwitch</a>.
 <p>
 <i>ESXi 5.0 and earlier hosts</i>: If you are reconfiguring an existing
 host membership, that is, the proxy switch already exists, you must reboot
 the host for the new setting to take effect.]]>
      </description-html>
      </property>

            <property name="vendorSpecificConfig" type-id-ref="vim.dvs.KeyedOpaqueBlob"
      vmodl-name="vendorSpecificConfig"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Opaque binary blob that stores vendor specific configuration.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualTPMOption"
      type-id="vim.vm.device.VirtualTPMOption"
      vmodl-name="vim.vm.device.VirtualTPMOption"
      version-id-ref="vim.version.version12"
      base-type-id="vim.vm.device.VirtualDeviceOption"
      >
      <description-html>
         <![CDATA[This data object type contains the options for the
  virtual TPM class.]]>
      </description-html>
            <property name="supportedFirmware" type-id-ref="java.lang.String"
      vmodl-name="supportedFirmware"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of supported firmware selections, using
  <a href="vim.vm.GuestOsDescriptor.FirmwareType.html">GuestOsDescriptorFirmwareType</a> enumeration.
  There is at least one value in this array.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualUSBRemoteClientBackingOption"
      type-id="vim.vm.device.VirtualUSBOption.RemoteClientBackingOption"
      vmodl-name="vim.vm.device.VirtualUSBOption.RemoteClientBackingOption"
      enclosing-type-id-ref="vim.vm.device.VirtualUSBOption"
      version-id-ref="vim.version.version7"
      base-type-id="vim.vm.device.VirtualDeviceOption.RemoteDeviceBackingOption"
      >
      <description-html>
         <![CDATA[This data object type contains the options for
  the virtual remote USB client backing data object type.]]>
      </description-html>
   </data-object>
   <data-object name="HostPlugStoreTopology"
      type-id="vim.host.PlugStoreTopology"
      vmodl-name="vim.host.PlugStoreTopology"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object represents the plug-store topology on a host
  system.  Through this data object, the storage structure of a system
  that utilizes the plug-store architecture can be presented.
  <p>
  The object entity-relationship diagram is modeled below:

  <pre>

               0..N             0..N      0..N
     Plugin ----->  Device  ------>  Path  <------  Adapter
                            <------   |    ------>
                            0,1       |          1
                                      |
                                      | 0,1
                                     \|/
                                    Target

  </pre>

  Description and reasoning behind the relationships:
  <p>
  When a storage device driver is loaded, it claims a PCI device as a
  host bus adapter.  This host bus adapter is represented as an Adapter.
  The PCI device identifier is a property on the HostBusAdapter in the
  Adapter.
  <p>
  Once the host bus adapter is on the system, the hardware bus is scanned.
  If a storage Device is found on the bus, the communication path to the
  Device from the the host bus adapter is represented by a Path.  A Device
  may have more than one Path.  How those Paths are composed to create a
  Device is determined by a storage Plugin.
  <p>
  When a storage Plugin is loaded, it claims a set of Paths.  It groups these
  Paths into a set of Devices.  Devices are hence associated with a set of
  Paths that might be used to provide a single logical device such as in the
  case of multipathing.  Devices may be also composed of zero Paths meaning
  that they do not directly use a host bus adapter for communication with
  underlying storage.
  <p>
  The purpose of this data object is to represent the topology of storage
  as seen by the base plug-store system.  There is some overlap
  with information in other objects such as ScsiTopology which is only
  applicable when a particular "native multipathing" plugin is used.  This
  data object provides the complete inventory of Devices and Paths.  Hence
  it provides a superset of Device mappings over data object such as
  ScsiTopology and Multipa
  <p>
  The use cases that this data object accommodates includes the following
  non-exhaustive list:

  <ul>
  <li>Enumerate paths on a host bus adapter.</li>
  <li>Enumerate paths on a storage device.</li>
  <li>Conveniently access the devices a host bus adapter is
      associated with by traversing the path.</li>
  <li>Determine which plugin a device belongs.</li>
  <li>Determine which paths are claimed by a plugin by
      accumulating the paths of all device of the plugin.</li>
  <li>Determine which plugin a path belongs to by accessing its
      device and finding that device in the Plugin list.</li>
  </ul>]]>
      </description-html>
            <property name="adapter" type-id-ref="vim.host.PlugStoreTopology.Adapter"
      vmodl-name="adapter"
      is-array="true"
      is-optional="true"
      is-linkable="true"
      >
      <description-html>
         <![CDATA[List of host bus adapters in the plug store inventory.]]>
      </description-html>
      </property>

            <property name="path" type-id-ref="vim.host.PlugStoreTopology.Path"
      vmodl-name="path"
      is-array="true"
      is-optional="true"
      is-linkable="true"
      >
      <description-html>
         <![CDATA[List of paths in the plug store inventory.]]>
      </description-html>
      </property>

            <property name="target" type-id-ref="vim.host.PlugStoreTopology.Target"
      vmodl-name="target"
      is-array="true"
      is-optional="true"
      is-linkable="true"
      >
      <description-html>
         <![CDATA[Partial list of targets as seen by the host.  The list of targets
  may not be exhaustive on the host.]]>
      </description-html>
      </property>

            <property name="device" type-id-ref="vim.host.PlugStoreTopology.Device"
      vmodl-name="device"
      is-array="true"
      is-optional="true"
      is-linkable="true"
      >
      <description-html>
         <![CDATA[List of devices in the plug store inventory.]]>
      </description-html>
      </property>

            <property name="plugin" type-id-ref="vim.host.PlugStoreTopology.Plugin"
      vmodl-name="plugin"
      is-array="true"
      is-optional="true"
      is-linkable="true"
      >
      <description-html>
         <![CDATA[List of plugins in the plug store inventory.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.host.PlugStoreTopology.Adapter</nested-type-id-ref>
      <nested-type-id-ref>vim.host.PlugStoreTopology.Path</nested-type-id-ref>
      <nested-type-id-ref>vim.host.PlugStoreTopology.Device</nested-type-id-ref>
      <nested-type-id-ref>vim.host.PlugStoreTopology.Plugin</nested-type-id-ref>
      <nested-type-id-ref>vim.host.PlugStoreTopology.Target</nested-type-id-ref>
   </data-object>
   <data-object name="VirtualMachineRuntimeInfoDasProtectionState"
      type-id="vim.vm.RuntimeInfo.DasProtectionState"
      vmodl-name="vim.vm.RuntimeInfo.DasProtectionState"
      enclosing-type-id-ref="vim.vm.RuntimeInfo"
      version-id-ref="vim.version.version7"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The DasProtectionState object describes the
  vSphere HA protection state of a virtual machine (VM).]]>
      </description-html>
            <property name="dasProtected" type-id-ref="BOOLEAN"
      vmodl-name="dasProtected"
      >
      <description-html>
         <![CDATA[Whether vSphere HA is protecting a virtual machine (VM). If a
  VM is protected, vSphere HA will enforce any availability
  features that have been enabled for this VM. For
  example, if the VM is running on a host
  that fails and the VM is configured to be restarted on a failure,
  then vSphere HA will attempt to restart the VM on another host.
  Similarly, if you enable VM/Application Health Monitoring
  for this VM, vSphere HA will monitor the heartbeats of the
  VM and reset the VM when needed, as dictated by the configured
  policy settings.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="FcoeConfigFcoeSpecification"
      type-id="vim.host.FcoeConfig.FcoeSpecification"
      vmodl-name="vim.host.FcoeConfig.FcoeSpecification"
      enclosing-type-id-ref="vim.host.FcoeConfig"
      version-id-ref="vim.version.version7"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[An FcoeSpecification contains values relevant to issuing FCoE discovery.
 Non-mandatory values are denoted '@optional'.]]>
      </description-html>
            <property name="underlyingPnic" type-id-ref="java.lang.String"
      vmodl-name="underlyingPnic"
      >
      <description-html>
         <![CDATA[The name of this FcoeSpecification's underlying PhysicalNic]]>
      </description-html>
      </property>

            <property name="priorityClass" type-id-ref="INT"
      vmodl-name="priorityClass"
      is-optional="true"
      >
      <description-html>
         <![CDATA[802.1p priority class to use for FCoE traffic.]]>
      </description-html>
      </property>

            <property name="sourceMac" type-id-ref="java.lang.String"
      vmodl-name="sourceMac"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Source MAC address to use for FCoE traffic.

 This MAC address is associated with the logical construct that is a
 physical NIC's associated underlying FCoE Controller, as defined in
 the FC-BB-5 standard.

 This MAC address should be of the form "xx:xx:xx:xx:xx:xx", where 'x'
 is a hexadecimal digit.  Valid MAC addresses are unicast addresses.]]>
      </description-html>
      </property>

            <property name="vlanRange" type-id-ref="vim.host.FcoeConfig.VlanRange"
      vmodl-name="vlanRange"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[VLAN ranges to use for FCoE traffic.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DvsVNicProfile"
      type-id="vim.profile.host.DvsVNicProfile"
      vmodl-name="vim.profile.host.DvsVNicProfile"
      version-id-ref="vim.version.version5"
      base-type-id="vim.profile.ApplyProfile"
      >
      <description-html>
         <![CDATA[The <a href="vim.profile.host.DvsVNicProfile.html">DvsVNicProfile</a> data object is the base object
 for host and service console Virtual NIC subprofiles.
 If a profile plug-in defines additional policies or subprofiles, use the
 <a href="vim.profile.ApplyProfile.html#policy">policy</a> or <a href="vim.profile.ApplyProfile.html#property">property</a>
 list to access the configuration data.]]>
      </description-html>
            <property name="key" type-id-ref="java.lang.String"
      vmodl-name="key"
      >
      <description-html>
         <![CDATA[Linkable identifier.]]>
      </description-html>
      </property>

            <property name="ipConfig" type-id-ref="vim.profile.host.IpAddressProfile"
      vmodl-name="ipConfig"
      >
      <description-html>
         <![CDATA[IP address for the Virtual NIC belonging to a distributed virtual switch.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VmAutoRenameEvent"
      type-id="vim.event.VmAutoRenameEvent"
      vmodl-name="vim.event.VmAutoRenameEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.VmEvent"
      >
      <description-html>
         <![CDATA[This event records that a virtual machine was automatically renamed
  because of a name conflict.]]>
      </description-html>
            <property name="oldName" type-id-ref="java.lang.String"
      vmodl-name="oldName"
      >
      <description-html>
         <![CDATA[The name of the virtual machine before renaming.]]>
      </description-html>
      </property>

            <property name="newName" type-id-ref="java.lang.String"
      vmodl-name="newName"
      >
      <description-html>
         <![CDATA[The name of the virtual machine after renaming.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualIDEController"
      type-id="vim.vm.device.VirtualIDEController"
      vmodl-name="vim.vm.device.VirtualIDEController"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.device.VirtualController"
      >
      <description-html>
         <![CDATA[The VirtualIDEController data object type specifies a virtual IDE controller.]]>
      </description-html>
   </data-object>
   <data-object name="DvsProfile"
      type-id="vim.profile.host.DvsProfile"
      vmodl-name="vim.profile.host.DvsProfile"
      version-id-ref="vim.version.version5"
      base-type-id="vim.profile.ApplyProfile"
      >
      <description-html>
         <![CDATA[The <a href="vim.profile.host.DvsProfile.html">DvsProfile</a> data object represents the distributed virtual switch
 to which this host is connected. If a profile plug-in defines policies or subprofiles,
 use the <a href="vim.profile.ApplyProfile.html#policy">policy</a> or <a href="vim.profile.ApplyProfile.html#property">property</a>
 list to access the additional configuration data.]]>
      </description-html>
            <property name="key" type-id-ref="java.lang.String"
      vmodl-name="key"
      >
      <description-html>
         <![CDATA[Linkable identifier.]]>
      </description-html>
      </property>

            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      >
      <description-html>
         <![CDATA[Unique identifier for the distributed virtual switch.]]>
      </description-html>
      </property>

            <property name="uplink" type-id-ref="vim.profile.host.PnicUplinkProfile"
      vmodl-name="uplink"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of subprofiles that map physical NICs to uplink ports.
 Use the <a href="vim.profile.host.PnicUplinkProfile.html#key">key</a> property to access
 subprofiles in the list.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostPlacedVirtualNicIdentifier"
      type-id="vim.host.RuntimeInfo.PlacedVirtualNicIdentifier"
      vmodl-name="vim.host.RuntimeInfo.PlacedVirtualNicIdentifier"
      enclosing-type-id-ref="vim.host.RuntimeInfo"
      version-id-ref="vim.version.version10"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data type describes the Virtual Machine and
  Virtual NIC to identify virtual adapters placed
  on a physical NIC]]>
      </description-html>
            <property name="vm" type-id-ref="vim.VirtualMachine"
      vmodl-name="vm"
      >
      <description-html>
         <![CDATA[The Virtual Machine]]>
      </description-html>
      </property>

            <property name="vnicKey" type-id-ref="java.lang.String"
      vmodl-name="vnicKey"
      >
      <description-html>
         <![CDATA[The virtual NIC key]]>
      </description-html>
      </property>

            <property name="reservation" type-id-ref="INT"
      vmodl-name="reservation"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The virtual NIC reservation]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DistributedVirtualSwitchHostMember"
      type-id="vim.dvs.HostMember"
      vmodl-name="vim.dvs.HostMember"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The <a href="vim.dvs.HostMember.html">DistributedVirtualSwitchHostMember</a> data object represents an ESXi host that
  is a member of a distributed virtual switch. When you add a host to a switch
  (<a href="vim.dvs.HostMember.ConfigSpec.html">DistributedVirtualSwitchHostMemberConfigSpec</a>.<a href="vim.dvs.HostMember.ConfigSpec.html#host">host</a>),
  the Server creates a proxy switch (<a href="vim.host.HostProxySwitch.html">HostProxySwitch</a>).
  The host member object contains information about the configuration
  and state of the proxy.]]>
      </description-html>
            <property name="runtimeState" type-id-ref="vim.dvs.HostMember.RuntimeState"
      vmodl-name="runtimeState"
      version-id-ref="vim.version.version7"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Host member runtime state.]]>
      </description-html>
      </property>

            <property name="config" type-id-ref="vim.dvs.HostMember.ConfigInfo"
      vmodl-name="config"
      >
      <description-html>
         <![CDATA[Host member configuration.]]>
      </description-html>
      </property>

            <property name="productInfo" type-id-ref="vim.dvs.ProductSpec"
      vmodl-name="productInfo"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Vendor, product and version information for the proxy switch
  module.]]>
      </description-html>
      </property>

            <property name="uplinkPortKey" type-id-ref="java.lang.String"
      vmodl-name="uplinkPortKey"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Port keys of the uplink ports created for the host member. These ports
  will be deleted after the host leaves the switch.]]>
      </description-html>
      </property>

            <property name="status" type-id-ref="java.lang.String"
      vmodl-name="status"
      is-deprecated="true"
      >
      <description-html>
         <![CDATA[The host DistributedVirtualSwitch component status. See
  <a href="vim.dvs.HostMember.HostComponentState.html">HostComponentState</a> for valid values.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 5.1, use
  <a href="vim.dvs.HostMember.RuntimeInfo.html">HostMemberRuntimeInfo</a>.<a href="vim.dvs.HostMember.RuntimeInfo.html#status">status</a> instead.]]>
      </deprecated-html>
      </property>

            <property name="statusDetail" type-id-ref="java.lang.String"
      vmodl-name="statusDetail"
      version-id-ref="vim.version.version6"
      is-deprecated="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Additional information regarding the host's current status.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 5.1, use
  <a href="vim.dvs.HostMember.RuntimeInfo.html">HostMemberRuntimeInfo</a>.<a href="vim.dvs.HostMember.RuntimeInfo.html#statusDetail">statusDetail</a> instead.]]>
      </deprecated-html>
      </property>

      <nested-type-id-ref>vim.dvs.HostMember.HostComponentState</nested-type-id-ref>
      <nested-type-id-ref>vim.dvs.HostMember.ConfigSpec</nested-type-id-ref>
      <nested-type-id-ref>vim.dvs.HostMember.PnicSpec</nested-type-id-ref>
      <nested-type-id-ref>vim.dvs.HostMember.Backing</nested-type-id-ref>
      <nested-type-id-ref>vim.dvs.HostMember.PnicBacking</nested-type-id-ref>
      <nested-type-id-ref>vim.dvs.HostMember.RuntimeState</nested-type-id-ref>
      <nested-type-id-ref>vim.dvs.HostMember.TransportZoneType</nested-type-id-ref>
      <nested-type-id-ref>vim.dvs.HostMember.TransportZoneInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.dvs.HostMember.ConfigInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.dvs.HostMember.RuntimeInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.dvs.HostMember.HealthCheckResult</nested-type-id-ref>
      <nested-type-id-ref>vim.dvs.HostMember.UplinkHealthCheckResult</nested-type-id-ref>
   </data-object>
   <data-object name="HostDiskMappingPartitionOption"
      type-id="vim.vm.device.HostDiskMappingOption.PartitionOption"
      vmodl-name="vim.vm.device.HostDiskMappingOption.PartitionOption"
      enclosing-type-id-ref="vim.vm.device.HostDiskMappingOption"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The PhysicalPartitionOption data class contains the options
  for a partition on a physical disk.]]>
      </description-html>
            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      >
      <description-html>
         <![CDATA[Partition name.]]>
      </description-html>
      </property>

            <property name="fileSystem" type-id-ref="java.lang.String"
      vmodl-name="fileSystem"
      >
      <description-html>
         <![CDATA[File system, if the partition is formatted.]]>
      </description-html>
      </property>

            <property name="capacityInKb" type-id-ref="LONG"
      vmodl-name="capacityInKb"
      >
      <description-html>
         <![CDATA[Partition capacity, in KB.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="LicenseExpiredEvent"
      type-id="vim.event.LicenseExpiredEvent"
      vmodl-name="vim.event.LicenseExpiredEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.Event"
      >
      <description-html>
         <![CDATA[This event records the expiration of a license.]]>
      </description-html>
            <property name="feature" type-id-ref="vim.LicenseManager.FeatureInfo"
      vmodl-name="feature"
      >
      </property>

   </data-object>
   <data-object name="EntityPrivilege"
      type-id="vim.AuthorizationManager.EntityPrivilege"
      vmodl-name="vim.AuthorizationManager.EntityPrivilege"
      enclosing-type-id-ref="vim.AuthorizationManager"
      version-id-ref="vim.version.version9"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This class defines whether a set of privileges are granted for a managed entity.]]>
      </description-html>
            <property name="entity" type-id-ref="vim.ManagedEntity"
      vmodl-name="entity"
      >
      <description-html>
         <![CDATA[The entity on which the privileges are checked.]]>
      </description-html>
      </property>

            <property name="privAvailability" type-id-ref="vim.AuthorizationManager.PrivilegeAvailability"
      vmodl-name="privAvailability"
      is-array="true"
      >
      <description-html>
         <![CDATA[whether a set of privileges are granted for the managed entity.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="AlarmCreatedEvent"
      type-id="vim.event.AlarmCreatedEvent"
      vmodl-name="vim.event.AlarmCreatedEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.AlarmEvent"
      >
      <description-html>
         <![CDATA[This event records the creation of an alarm.]]>
      </description-html>
            <property name="entity" type-id-ref="vim.event.ManagedEntityEventArgument"
      vmodl-name="entity"
      >
      <description-html>
         <![CDATA[The entity with which the alarm is registered.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="SessionManagerHttpServiceRequestSpec"
      type-id="vim.SessionManager.HttpServiceRequestSpec"
      vmodl-name="vim.SessionManager.HttpServiceRequestSpec"
      enclosing-type-id-ref="vim.SessionManager"
      version-id-ref="vim.version.version7"
      base-type-id="vim.SessionManager.ServiceRequestSpec"
      >
      <description-html>
         <![CDATA[This data object type describes a request to an HTTP or HTTPS service.]]>
      </description-html>
            <property name="method" type-id-ref="java.lang.String"
      vmodl-name="method"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The HTTP method used for the request.
  If null, then any method is assumed.
  <p><br>See <a href="vim.SessionManager.HttpServiceRequestSpec.Method.html">SessionManagerHttpServiceRequestSpecMethod</a><br>]]>
      </description-html>
      </property>

            <property name="url" type-id-ref="java.lang.String"
      vmodl-name="url"
      >
      <description-html>
         <![CDATA[URL of the HTTP request.
  E.g. 'https://127.0.0.1:8080/cgi-bin/vm-support.cgi?n=val'.
  <p>
  For ESXi CGI service requests:
  <li> only the path and query parts of the URL are used
       (e.g. "/cgi-bin/vm-support.cgi?n=val"). </li>
  This is so because the scheme is not known to the CGI service,
  and the port may not be the same if using a proxy.
  <p>]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.SessionManager.HttpServiceRequestSpec.Method</nested-type-id-ref>
   </data-object>
   <data-object name="VsanHostConfigInfo"
      type-id="vim.vsan.host.ConfigInfo"
      vmodl-name="vim.vsan.host.ConfigInfo"
      version-id-ref="vim.version.version9"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The <a href="vim.vsan.host.ConfigInfo.html">VsanHostConfigInfo</a> data object contains host-specific settings
 for the VSAN service.  This data object is used both for specifying
 settings for updating the VSAN service, and as an output datatype
 when retrieving current VSAN service settings.]]>
      </description-html>
            <property name="enabled" type-id-ref="BOOLEAN"
      vmodl-name="enabled"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Whether the VSAN service is currently enabled on this host.]]>
      </description-html>
      </property>

            <property name="hostSystem" type-id-ref="vim.HostSystem"
      vmodl-name="hostSystem"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The <a href="vim.HostSystem.html">HostSystem</a> for this host.

 This argument is required when this configuration is specified as
 an input to VC-level APIs.  When this configuration is specified
 to a host-level direct API, this argument may be omitted.<br>See <a href="vim.ComputeResource.html#reconfigureEx">ReconfigureComputeResource_Task</a><br>See <a href="vim.host.VsanSystem.html#update">UpdateVsan_Task</a><br>]]>
      </description-html>
      </property>

            <property name="clusterInfo" type-id-ref="vim.vsan.host.ConfigInfo.ClusterInfo"
      vmodl-name="clusterInfo"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The VSAN service cluster configuration for this host.]]>
      </description-html>
      </property>

            <property name="storageInfo" type-id-ref="vim.vsan.host.ConfigInfo.StorageInfo"
      vmodl-name="storageInfo"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The VSAN storage configuration for this host.

 VSAN storage configuration settings are independent of the
 current value of <a href="vim.vsan.host.ConfigInfo.html#enabled">enabled</a>.]]>
      </description-html>
      </property>

            <property name="networkInfo" type-id-ref="vim.vsan.host.ConfigInfo.NetworkInfo"
      vmodl-name="networkInfo"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The VSAN network configuration for this host.

 VSAN network configuration settings are independent of the
 current value of <a href="vim.vsan.host.ConfigInfo.html#enabled">enabled</a>.]]>
      </description-html>
      </property>

            <property name="faultDomainInfo" type-id-ref="vim.vsan.host.ConfigInfo.FaultDomainInfo"
      vmodl-name="faultDomainInfo"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The VSAN fault domain configuration for this host.

 VSAN host fault domain settings are independent of the
 current value of <a href="vim.vsan.host.ConfigInfo.html#enabled">enabled</a>.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.vsan.host.ConfigInfo.StorageInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.vsan.host.ConfigInfo.ClusterInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.vsan.host.ConfigInfo.NetworkInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.vsan.host.ConfigInfo.FaultDomainInfo</nested-type-id-ref>
   </data-object>
   <data-object name="VirtualMachineConfigOptionDescriptor"
      type-id="vim.vm.ConfigOptionDescriptor"
      vmodl-name="vim.vm.ConfigOptionDescriptor"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Contains the definition of a unique key that can be used to
  retrieve a configOption object.]]>
      </description-html>
            <property name="key" type-id-ref="java.lang.String"
      vmodl-name="key"
      >
      <description-html>
         <![CDATA[A unique key used to identify a configOption object in this
  <a href="vim.EnvironmentBrowser.html">EnvironmentBrowser</a>.]]>
      </description-html>
      </property>

            <property name="description" type-id-ref="java.lang.String"
      vmodl-name="description"
      is-optional="true"
      is-localizable="true"
      >
      <description-html>
         <![CDATA[A description of the configOption object.]]>
      </description-html>
      </property>

            <property name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of hosts to which this descriptor applies.
  List of hosts is not set when descriptor is returned
  from <a href="vim.Datacenter.html#queryConfigOptionDescriptor">queryDatacenterConfigOptionDescriptor</a>.]]>
      </description-html>
      </property>

            <property name="createSupported" type-id-ref="BOOLEAN"
      vmodl-name="createSupported"
      version-id-ref="vim.version.version4"
      >
      <description-html>
         <![CDATA[Indicates whether the associated set of configuration options
  can be used for virtual machine creation on a given host or
  cluster.]]>
      </description-html>
      </property>

            <property name="defaultConfigOption" type-id-ref="BOOLEAN"
      vmodl-name="defaultConfigOption"
      version-id-ref="vim.version.version4"
      >
      <description-html>
         <![CDATA[Indicates whether the associated set of virtual machine
  configuration options is the default one for a given host or
  cluster.  Latest version is marked as default unless
  other version is specified via
  <a href="vim.ComputeResource.ConfigInfo.html#defaultHardwareVersionKey">defaultHardwareVersionKey</a>
  or <a href="vim.Datacenter.ConfigInfo.html#defaultHardwareVersionKey">defaultHardwareVersionKey</a>.

  If this setting is TRUE, virtual machine creates will use the
  associated set of configuration options, unless a config version is
  explicitly specified in the <a href="vim.vm.ConfigSpec.html">ConfigSpec</a>.]]>
      </description-html>
      </property>

            <property name="runSupported" type-id-ref="BOOLEAN"
      vmodl-name="runSupported"
      version-id-ref="vim.version.version8"
      >
      <description-html>
         <![CDATA[Indicates whether the associated set of configuration options
  can be used to power on a virtual machine on a given host or
  cluster.]]>
      </description-html>
      </property>

            <property name="upgradeSupported" type-id-ref="BOOLEAN"
      vmodl-name="upgradeSupported"
      version-id-ref="vim.version.version8"
      >
      <description-html>
         <![CDATA[Indicates whether the associated set of configuration options
  can be used as a virtual hardware upgrade target.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="CustomizationEvent"
      type-id="vim.event.CustomizationEvent"
      vmodl-name="vim.event.CustomizationEvent"
      version-id-ref="vim.version.version2"
      base-type-id="vim.event.VmEvent"
      >
      <description-html>
         <![CDATA[Base for customization events.]]>
      </description-html>
            <property name="logLocation" type-id-ref="java.lang.String"
      vmodl-name="logLocation"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The location of the in-guest customization log which will contain
 details of the customization operation.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualMachineStorageInfo"
      type-id="vim.vm.StorageInfo"
      vmodl-name="vim.vm.StorageInfo"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Information about the amount of storage used by a virtual machine across
  datastores that it is located on.]]>
      </description-html>
            <property name="perDatastoreUsage" type-id-ref="vim.vm.StorageInfo.UsageOnDatastore"
      vmodl-name="perDatastoreUsage"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Storage space used by this virtual machine on all datastores that it
  is located on.
  <p>
  Total storage space committed to this virtual machine across all datastores is
  simply an aggregate of the property
  <a href="vim.vm.StorageInfo.UsageOnDatastore.html#committed">committed</a>.<br>See <a href="vim.vm.Summary.StorageSummary.html#committed">committed</a><br>]]>
      </description-html>
      </property>

            <property name="timestamp" type-id-ref="vmodl.DateTime"
      vmodl-name="timestamp"
      >
      <description-html>
         <![CDATA[Time when values in this structure were last updated.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.vm.StorageInfo.UsageOnDatastore</nested-type-id-ref>
   </data-object>
   <data-object name="HostProfileManagerCompositionValidationResultResultElement"
      type-id="vim.profile.host.ProfileManager.CompositionValidationResult.ResultElement"
      vmodl-name="vim.profile.host.ProfileManager.CompositionValidationResult.ResultElement"
      enclosing-type-id-ref="vim.profile.host.ProfileManager.CompositionValidationResult"
      version-id-ref="vim.version.version11"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The host profile composition validation result for a specific target
 host profile.]]>
      </description-html>
            <property name="target" type-id-ref="vim.profile.Profile"
      vmodl-name="target"
      >
      <description-html>
         <![CDATA[The target host profile.]]>
      </description-html>
      </property>

            <property name="status" type-id-ref="java.lang.String"
      vmodl-name="status"
      >
      <description-html>
         <![CDATA[The composition validation status. See <a href="vim.profile.host.ProfileManager.CompositionValidationResult.ResultElement.Status.html">HostProfileManagerCompositionValidationResultResultElementStatus</a>
 for details of supported values.]]>
      </description-html>
      </property>

            <property name="errors" type-id-ref="vmodl.LocalizableMessage"
      vmodl-name="errors"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The composition validation errors.]]>
      </description-html>
      </property>

            <property name="sourceDiffForToBeMerged" type-id-ref="vim.profile.host.HostApplyProfile"
      vmodl-name="sourceDiffForToBeMerged"
      is-optional="true"
      >
      <description-html>
         <![CDATA[When a selected sub profile for composition exists in both the
 source and target host profile, this member will contain the
 source side difference for the selected sub profiles.]]>
      </description-html>
      </property>

            <property name="targetDiffForToBeMerged" type-id-ref="vim.profile.host.HostApplyProfile"
      vmodl-name="targetDiffForToBeMerged"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Similar to the member  <code>sourceDiffForToBeMerged</code> above
 but contains the target side difference.  Comparing the same
 configurations in these two variables will show the changes for
 the configurations that exist in both source and target host
 profile.]]>
      </description-html>
      </property>

            <property name="toBeAdded" type-id-ref="vim.profile.host.HostApplyProfile"
      vmodl-name="toBeAdded"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The sub profiles doesn't exist in the target and will be added to
 the target at host profile composition.]]>
      </description-html>
      </property>

            <property name="toBeDeleted" type-id-ref="vim.profile.host.HostApplyProfile"
      vmodl-name="toBeDeleted"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The sub profiles exists in the target but not in the source and will
 be deleted from the target at host profile composition.]]>
      </description-html>
      </property>

            <property name="toBeDisabled" type-id-ref="vim.profile.host.HostApplyProfile"
      vmodl-name="toBeDisabled"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The sub profiles to be disabled in the target host profiles.]]>
      </description-html>
      </property>

            <property name="toBeEnabled" type-id-ref="vim.profile.host.HostApplyProfile"
      vmodl-name="toBeEnabled"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The sub profiles to be enabled in the target host profiles.]]>
      </description-html>
      </property>

            <property name="toBeReenableCC" type-id-ref="vim.profile.host.HostApplyProfile"
      vmodl-name="toBeReenableCC"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The sub profile to be unset ignoring compliance check
 in the target host profile.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.profile.host.ProfileManager.CompositionValidationResult.ResultElement.Status</nested-type-id-ref>
   </data-object>
   <data-object name="VirtualDeviceConnectInfo"
      type-id="vim.vm.device.VirtualDevice.ConnectInfo"
      vmodl-name="vim.vm.device.VirtualDevice.ConnectInfo"
      enclosing-type-id-ref="vim.vm.device.VirtualDevice"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The <code><a href="vim.vm.device.VirtualDevice.ConnectInfo.html">VirtualDeviceConnectInfo</a></code> data object type
  contains information about connectable virtual devices.]]>
      </description-html>
            <property name="migrateConnect" type-id-ref="java.lang.String"
      vmodl-name="migrateConnect"
      version-id-ref="vim.version.version12"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Specifies whether the virtual machine should override the
  virtual device connection state upon the completion of a
  migration.

  At this time, this property is only applicable to instant
  clone operations, and will be ignored for other migration
  types. The property is also only valid with
  VirtualEthernetCards, and any attempt to set this property
  on an unsupported device will result in an error.

  This property will persist only until the virtual machine
  undergoes a supported migration, at which point it will be
  consumed and unset on the destination virtual machine,
  preventing the property from affecting future migrations.

  The migration's success is not dependent on whether the device
  reaches the desired connection state.

  The set of possible values are described in
  <a href="vim.vm.device.VirtualDevice.ConnectInfo.MigrateConnectOp.html">VirtualDeviceConnectInfoMigrateConnectOp</a>.]]>
      </description-html>
      </property>

            <property name="startConnected" type-id-ref="BOOLEAN"
      vmodl-name="startConnected"
      >
      <description-html>
         <![CDATA[Specifies whether or not to connect the device
  when the virtual machine starts.]]>
      </description-html>
      </property>

            <property name="allowGuestControl" type-id-ref="BOOLEAN"
      vmodl-name="allowGuestControl"
      >
      <description-html>
         <![CDATA[Enables guest control over whether the connectable device is
  connected.]]>
      </description-html>
      </property>

            <property name="connected" type-id-ref="BOOLEAN"
      vmodl-name="connected"
      >
      <description-html>
         <![CDATA[Indicates whether the device is currently connected.
  Valid only while the virtual machine is running.]]>
      </description-html>
      </property>

            <property name="status" type-id-ref="java.lang.String"
      vmodl-name="status"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates the current status of the connectable device. Valid only while the
  virtual machine is running. The set of possible values is described in
  <a href="vim.vm.device.VirtualDevice.ConnectInfo.Status.html">VirtualDeviceConnectInfoStatus</a>]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.vm.device.VirtualDevice.ConnectInfo.Status</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.device.VirtualDevice.ConnectInfo.MigrateConnectOp</nested-type-id-ref>
   </data-object>
   <data-object name="HostNatServiceSpec"
      type-id="vim.host.NatService.Specification"
      vmodl-name="vim.host.NatService.Specification"
      enclosing-type-id-ref="vim.host.NatService"
      version-id-ref="vim.version.version2"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object type provides the details about the
  Network Address Translation (NAT) service.]]>
      </description-html>
            <property name="virtualSwitch" type-id-ref="java.lang.String"
      vmodl-name="virtualSwitch"
      >
      <description-html>
         <![CDATA[The name of the virtual switch to which nat service is connected.]]>
      </description-html>
      </property>

            <property name="activeFtp" type-id-ref="BOOLEAN"
      vmodl-name="activeFtp"
      >
      <description-html>
         <![CDATA[The flag to indicate whether or not non-passive mode FTP
  connections should be allowed.]]>
      </description-html>
      </property>

            <property name="allowAnyOui" type-id-ref="BOOLEAN"
      vmodl-name="allowAnyOui"
      >
      <description-html>
         <![CDATA[The flag to indicate whether or not the NAT
  Service allows media access control traffic from any
  Organizational Unique Identifier (OUI)?
  By default, it does not allow traffic that originated
  from the host to avoid packet loops.]]>
      </description-html>
      </property>

            <property name="configPort" type-id-ref="BOOLEAN"
      vmodl-name="configPort"
      >
      <description-html>
         <![CDATA[The flag to indicate whether or not the NAT Service
  should open a configuration port.]]>
      </description-html>
      </property>

            <property name="ipGatewayAddress" type-id-ref="java.lang.String"
      vmodl-name="ipGatewayAddress"
      >
      <description-html>
         <![CDATA[The IP address that the NAT Service should use on
 the virtual network.]]>
      </description-html>
      </property>

            <property name="udpTimeout" type-id-ref="INT"
      vmodl-name="udpTimeout"
      >
      <description-html>
         <![CDATA[The time allotted for UDP packets.]]>
      </description-html>
      </property>

            <property name="portForward" type-id-ref="vim.host.NatService.PortForwardSpecification"
      vmodl-name="portForward"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The port forwarding specifications to allow network
  connections to be initiated from outside the firewall.]]>
      </description-html>
      </property>

            <property name="nameService" type-id-ref="vim.host.NatService.NameServiceSpec"
      vmodl-name="nameService"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The configuration of naming services.  These parameters are
  specific to Windows.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VmConfigFileQueryFlags"
      type-id="vim.host.DatastoreBrowser.VmConfigQuery.Details"
      vmodl-name="vim.host.DatastoreBrowser.VmConfigQuery.Details"
      enclosing-type-id-ref="vim.host.DatastoreBrowser.VmConfigQuery"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
            <property name="configVersion" type-id-ref="BOOLEAN"
      vmodl-name="configVersion"
      >
      <description-html>
         <![CDATA[The flag to indicate whether or not the configuration file version number is
  returned.]]>
      </description-html>
      </property>

            <property name="encryption" type-id-ref="BOOLEAN"
      vmodl-name="encryption"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The flag to indicate whether the encryption information of the
  virtual machine configuration is returned.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostNoAvailableNetworksEvent"
      type-id="vim.event.HostNoAvailableNetworksEvent"
      vmodl-name="vim.event.HostNoAvailableNetworksEvent"
      version-id-ref="vim.version.version5"
      base-type-id="vim.event.HostDasEvent"
      >
      <description-html>
         <![CDATA[This event records the fact that a host does not have any available networks
 for HA communication]]>
      </description-html>
            <property name="ips" type-id-ref="java.lang.String"
      vmodl-name="ips"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The comma-separated list of used networks]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DistributedVirtualSwitchHostMemberConfigInfo"
      type-id="vim.dvs.HostMember.ConfigInfo"
      vmodl-name="vim.dvs.HostMember.ConfigInfo"
      enclosing-type-id-ref="vim.dvs.HostMember"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The <a href="vim.dvs.HostMember.ConfigInfo.html">DistributedVirtualSwitchHostMemberConfigInfo</a> data object
 contains membership configuration information for the ESXi host.]]>
      </description-html>
            <property name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      is-optional="true"
      >
      <description-html>
         <![CDATA[ESXi host.
 This property should always be set unless the user's setting
 does not have System.Read privilege on the object referred to
 by this property.]]>
      </description-html>
      </property>

            <property name="maxProxySwitchPorts" type-id-ref="INT"
      vmodl-name="maxProxySwitchPorts"
      >
      <description-html>
         <![CDATA[Maximum number of ports than can be created in the proxy switch.
 <p>
 <i>ESXi 5.0 and earlier hosts</i>:
 If you change the maximum number of ports, you must reboot
 the host for the new value to take effect.]]>
      </description-html>
      </property>

            <property name="vendorSpecificConfig" type-id-ref="vim.dvs.KeyedOpaqueBlob"
      vmodl-name="vendorSpecificConfig"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Opaque binary blob that stores vendor specific configuration.]]>
      </description-html>
      </property>

            <property name="backing" type-id-ref="vim.dvs.HostMember.Backing"
      vmodl-name="backing"
      >
      <description-html>
         <![CDATA[Host membership backing, specifying physical NIC, portgroup, and port
 bindings for the proxy switch.]]>
      </description-html>
      </property>

            <property name="nsxSwitch" type-id-ref="BOOLEAN"
      vmodl-name="nsxSwitch"
      version-id-ref="vim.version.v7_0"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicate whether the proxy switch is used by NSX on this particular
 host member of the VDS.]]>
      </description-html>
      </property>

            <property name="ensEnabled" type-id-ref="BOOLEAN"
      vmodl-name="ensEnabled"
      version-id-ref="vim.version.v7_0"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicate if ENS is enabled for this particular host member of
 the VDS. It is read only.]]>
      </description-html>
      </property>

            <property name="ensInterruptEnabled" type-id-ref="BOOLEAN"
      vmodl-name="ensInterruptEnabled"
      version-id-ref="vim.version.v7_0"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicate if ENS interrupt mode is enabled for this particular host
 member of the VDS. It is read only.]]>
      </description-html>
      </property>

            <property name="transportZones" type-id-ref="vim.dvs.HostMember.TransportZoneInfo"
      vmodl-name="transportZones"
      version-id-ref="vim.version.v7_0"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicate which transport zones this host joins by this VDS.]]>
      </description-html>
      </property>

            <property name="nsxtUsedUplinkNames" type-id-ref="java.lang.String"
      vmodl-name="nsxtUsedUplinkNames"
      version-id-ref="vim.version.v7_0"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicate which uplink ports are used by NSX-T.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ClusterStatusChangedEvent"
      type-id="vim.event.ClusterStatusChangedEvent"
      vmodl-name="vim.event.ClusterStatusChangedEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.ClusterEvent"
      >
      <description-html>
         <![CDATA[This event records when a cluster's overall status changed.]]>
      </description-html>
            <property name="oldStatus" type-id-ref="java.lang.String"
      vmodl-name="oldStatus"
      >
      <description-html>
         <![CDATA[The old (<a href="vim.ComputeResource.Summary.html#overallStatus">overallStatus</a>).]]>
      </description-html>
      </property>

            <property name="newStatus" type-id-ref="java.lang.String"
      vmodl-name="newStatus"
      >
      <description-html>
         <![CDATA[The new (<a href="vim.ComputeResource.Summary.html#overallStatus">overallStatus</a>).]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="LinkProfile"
      type-id="vim.profile.host.VirtualSwitchProfile.LinkProfile"
      vmodl-name="vim.profile.host.VirtualSwitchProfile.LinkProfile"
      enclosing-type-id-ref="vim.profile.host.VirtualSwitchProfile"
      version-id-ref="vim.version.version5"
      base-type-id="vim.profile.ApplyProfile"
      >
      <description-html>
         <![CDATA[The LinkProfile data object represents a subprofile
  for links connected to virtual switch.]]>
      </description-html>
   </data-object>
   <data-object name="VMwareDVSPvlanMapEntry"
      type-id="vim.dvs.VmwareDistributedVirtualSwitch.PvlanMapEntry"
      vmodl-name="vim.dvs.VmwareDistributedVirtualSwitch.PvlanMapEntry"
      enclosing-type-id-ref="vim.dvs.VmwareDistributedVirtualSwitch"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The class represents a PVLAN id.]]>
      </description-html>
            <property name="primaryVlanId" type-id-ref="INT"
      vmodl-name="primaryVlanId"
      >
      <description-html>
         <![CDATA[The primary VLAN ID. The VLAN IDs of 0 and 4095 are reserved
  and cannot be used in this property.]]>
      </description-html>
      </property>

            <property name="secondaryVlanId" type-id-ref="INT"
      vmodl-name="secondaryVlanId"
      >
      <description-html>
         <![CDATA[The secondary VLAN ID. The VLAN IDs of 0 and 4095 are reserved
  and cannot be used in this property.]]>
      </description-html>
      </property>

            <property name="pvlanType" type-id-ref="java.lang.String"
      vmodl-name="pvlanType"
      >
      <description-html>
         <![CDATA[The type of PVLAN.
  See <a href="vim.dvs.VmwareDistributedVirtualSwitch.PvlanPortType.html">VmwareDistributedVirtualSwitchPvlanPortType</a>
  for valid values.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="FcoeConfigFcoeCapabilities"
      type-id="vim.host.FcoeConfig.FcoeCapabilities"
      vmodl-name="vim.host.FcoeConfig.FcoeCapabilities"
      enclosing-type-id-ref="vim.host.FcoeConfig"
      version-id-ref="vim.version.version7"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Flags which indicate what parameters are settable for this FcoeConfig.]]>
      </description-html>
            <property name="priorityClass" type-id-ref="BOOLEAN"
      vmodl-name="priorityClass"
      >
      </property>

            <property name="sourceMacAddress" type-id-ref="BOOLEAN"
      vmodl-name="sourceMacAddress"
      >
      </property>

            <property name="vlanRange" type-id-ref="BOOLEAN"
      vmodl-name="vlanRange"
      >
      </property>

   </data-object>
   <data-object name="ClusterDasAamNodeState"
      type-id="vim.cluster.DasAamNodeState"
      vmodl-name="vim.cluster.DasAamNodeState"
      version-id-ref="vim.version.version5"
      is-deprecated="true"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The <a href="vim.cluster.DasAamNodeState.html">ClusterDasAamNodeState</a> data object represents the state
  of the HA service on an ESX host. (AAM is a component of this service.)]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 5.0, this object is no longer returned by
  vCenter Server. See <a href="vim.host.RuntimeInfo.html#dasHostState">dasHostState</a> for a
  description of the objects now used.]]>
      </deprecated-html>
            <property name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      >
      <description-html>
         <![CDATA[Reference to the host.]]>
      </description-html>
      </property>

            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      >
      <description-html>
         <![CDATA[Name of the host
 (<a href="vim.HostSystem.html">HostSystem</a>.<a href="vim.ManagedEntity.html#name">Name</a>).]]>
      </description-html>
      </property>

            <property name="configState" type-id-ref="java.lang.String"
      vmodl-name="configState"
      >
      <description-html>
         <![CDATA[Configuration state of the HA agent on the host.
 The property can be one of the following values:
 <p>
 configuring<br>
 error<br>
 unconfiguring<br>
 running<br>
 <p>
 <code>configState</code> represents setting or resetting the HA
 configuration on the host. If the configuration operation is
 successful, the value of <code>configState</code> changes
 to <code>running</code>. See <a href="vim.cluster.DasAamNodeState.DasState.html">ClusterDasAamNodeStateDasState</a>.]]>
      </description-html>
      </property>

            <property name="runtimeState" type-id-ref="java.lang.String"
      vmodl-name="runtimeState"
      >
      <description-html>
         <![CDATA[The runtime state of the HA agent on the node.
 The property can be one of the following values:
 <p>
 uninitialized<br>
 initialized<br>
 running<br>
 error<br>
 agentShutdown<br>
 nodeFailed
 <p>
 See <a href="vim.cluster.DasAamNodeState.DasState.html">ClusterDasAamNodeStateDasState</a>.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.cluster.DasAamNodeState.DasState</nested-type-id-ref>
   </data-object>
   <data-object name="DrsExitStandbyModeFailedEvent"
      type-id="vim.event.DrsExitStandbyModeFailedEvent"
      vmodl-name="vim.event.DrsExitStandbyModeFailedEvent"
      version-id-ref="vim.version.version5"
      base-type-id="vim.event.ExitStandbyModeFailedEvent"
      >
      <description-html>
         <![CDATA[This event records that Distributed Power Management tried to bring a host out
  from standby mode, but the host failed to exit standby mode.]]>
      </description-html>
   </data-object>
   <data-object name="SendEmailAction"
      type-id="vim.action.SendEmailAction"
      vmodl-name="vim.action.SendEmailAction"
      version-id-ref="vim.version.version1"
      base-type-id="vim.action.Action"
      >
      <description-html>
         <![CDATA[This data object type defines an email that is triggered by an
  alarm. You can use any
  elements of the <a href="vim.action.Action.ActionParameter.html">ActionParameter</a>
  enumerated list as part of your strings to provide information available
  at runtime.]]>
      </description-html>
            <property name="toList" type-id-ref="java.lang.String"
      vmodl-name="toList"
      >
      <description-html>
         <![CDATA[A comma-separated list of addresses to which the email notification is sent.]]>
      </description-html>
      </property>

            <property name="ccList" type-id-ref="java.lang.String"
      vmodl-name="ccList"
      >
      <description-html>
         <![CDATA[A comma-separated list of addresses that are cc'ed on the email notification.]]>
      </description-html>
      </property>

            <property name="subject" type-id-ref="java.lang.String"
      vmodl-name="subject"
      >
      <description-html>
         <![CDATA[Subject of the email notification.]]>
      </description-html>
      </property>

            <property name="body" type-id-ref="java.lang.String"
      vmodl-name="body"
      >
      <description-html>
         <![CDATA[Content of the email notification.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="AccountRemovedEvent"
      type-id="vim.event.AccountRemovedEvent"
      vmodl-name="vim.event.AccountRemovedEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.HostEvent"
      >
      <description-html>
         <![CDATA[This event records that an account was removed from a host.]]>
      </description-html>
            <property name="account" type-id-ref="java.lang.String"
      vmodl-name="account"
      >
      </property>

            <property name="group" type-id-ref="BOOLEAN"
      vmodl-name="group"
      >
      </property>

   </data-object>
   <data-object name="VirtualCdromRemotePassthroughBackingInfo"
      type-id="vim.vm.device.VirtualCdrom.RemotePassthroughBackingInfo"
      vmodl-name="vim.vm.device.VirtualCdrom.RemotePassthroughBackingInfo"
      enclosing-type-id-ref="vim.vm.device.VirtualCdrom"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.device.VirtualDevice.RemoteDeviceBackingInfo"
      >
      <description-html>
         <![CDATA[The VirtualCdrom.RemotePassthroughBackingInfo data object type
  contains the information to specify a remote pass-through device
  backing of a virtual CD-ROM.]]>
      </description-html>
            <property name="exclusive" type-id-ref="BOOLEAN"
      vmodl-name="exclusive"
      >
      <description-html>
         <![CDATA[Flag to indicate whether or not the virtual machine
  has exclusive access to the CD-ROM device.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VmWwnConflictEvent"
      type-id="vim.event.VmWwnConflictEvent"
      vmodl-name="vim.event.VmWwnConflictEvent"
      version-id-ref="vim.version.version2"
      base-type-id="vim.event.VmEvent"
      >
      <description-html>
         <![CDATA[This event records a conflict of virtual machine WWNs (World Wide Name).]]>
      </description-html>
            <property name="conflictedVms" type-id-ref="vim.event.VmEventArgument"
      vmodl-name="conflictedVms"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The virtual machine whose WWN conflicts with the
  current virtual machine's WWN.]]>
      </description-html>
      </property>

            <property name="conflictedHosts" type-id-ref="vim.event.HostEventArgument"
      vmodl-name="conflictedHosts"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The host whose physical WWN conflicts with the
  current virtual machine's WWN.]]>
      </description-html>
      </property>

            <property name="wwn" type-id-ref="LONG"
      vmodl-name="wwn"
      >
      <description-html>
         <![CDATA[The WWN in conflict.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ManagedByInfo"
      type-id="vim.ext.ManagedByInfo"
      vmodl-name="vim.ext.ManagedByInfo"
      version-id-ref="vim.version.version7"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The ManagedByInfo data object contains information about the extension
  responsible for the life-cycle of the entity.]]>
      </description-html>
            <property name="extensionKey" type-id-ref="java.lang.String"
      vmodl-name="extensionKey"
      >
      <description-html>
         <![CDATA[Key of the extension managing the entity.]]>
      </description-html>
      </property>

            <property name="type" type-id-ref="java.lang.String"
      vmodl-name="type"
      >
      <description-html>
         <![CDATA[Managed entity type, as defined by the extension managing the entity.
  An extension can manage different types of entities - different kinds
  of virtual machines, vApps, etc. - and this property is used to find
  the corresponding <a href="vim.ext.ManagedEntityInfo.html">managedEntityInfo</a>
  entry from the extension.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DatacenterEventArgument"
      type-id="vim.event.DatacenterEventArgument"
      vmodl-name="vim.event.DatacenterEventArgument"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.EntityEventArgument"
      >
      <description-html>
         <![CDATA[The event argument is a Datacenter object.]]>
      </description-html>
            <property name="datacenter" type-id-ref="vim.Datacenter"
      vmodl-name="datacenter"
      >
      <description-html>
         <![CDATA[The Datacenter object.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ProfileRemovedEvent"
      type-id="vim.event.ProfileRemovedEvent"
      vmodl-name="vim.event.ProfileRemovedEvent"
      version-id-ref="vim.version.version5"
      base-type-id="vim.event.ProfileEvent"
      >
      <description-html>
         <![CDATA[This event records that a Profile was removed.]]>
      </description-html>
   </data-object>
   <data-object name="HostInternetScsiHbaDigestProperties"
      type-id="vim.host.InternetScsiHba.DigestProperties"
      vmodl-name="vim.host.InternetScsiHba.DigestProperties"
      enclosing-type-id-ref="vim.host.InternetScsiHba"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The digest settings for this host bus adapter.]]>
      </description-html>
            <property name="headerDigestType" type-id-ref="java.lang.String"
      vmodl-name="headerDigestType"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The header digest preference if header digest is enabled]]>
      </description-html>
      </property>

            <property name="headerDigestInherited" type-id-ref="BOOLEAN"
      vmodl-name="headerDigestInherited"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Header digest setting is inherited]]>
      </description-html>
      </property>

            <property name="dataDigestType" type-id-ref="java.lang.String"
      vmodl-name="dataDigestType"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The data digest preference if data digest is enabled]]>
      </description-html>
      </property>

            <property name="dataDigestInherited" type-id-ref="BOOLEAN"
      vmodl-name="dataDigestInherited"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Data digest setting is inherited]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="EnvironmentBrowserConfigOptionQuerySpec"
      type-id="vim.EnvironmentBrowser.ConfigOptionQuerySpec"
      vmodl-name="vim.EnvironmentBrowser.ConfigOptionQuerySpec"
      enclosing-type-id-ref="vim.EnvironmentBrowser"
      version-id-ref="vim.version.version10"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Represent search criteria and filters on a <a href="vim.vm.ConfigOption.html">VirtualMachineConfigOption</a>
 object.]]>
      </description-html>
            <property name="key" type-id-ref="java.lang.String"
      vmodl-name="key"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The key found in the VirtualMachineConfigOptionDescriptor,
 obtained by invoking the
 <a href="vim.EnvironmentBrowser.html#queryConfigOptionDescriptor">QueryConfigOptionDescriptor</a> operation.]]>
      </description-html>
      </property>

            <property name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The host whose ConfigOption is requested.]]>
      </description-html>
      </property>

            <property name="guestId" type-id-ref="java.lang.String"
      vmodl-name="guestId"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The Guest OS IDs whose <a href="vim.vm.ConfigOption.html">VirtualMachineConfigOption</a> is requested
 <a href="vim.vm.GuestOsDescriptor.GuestOsIdentifier.html">GuestOsIdentifier</a>]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="IoFilterInfo"
      type-id="vim.IoFilterManager.IoFilterInfo"
      vmodl-name="vim.IoFilterManager.IoFilterInfo"
      enclosing-type-id-ref="vim.IoFilterManager"
      version-id-ref="vim.version.version10"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Information about an IO Filter.]]>
      </description-html>
            <property name="id" type-id-ref="java.lang.String"
      vmodl-name="id"
      >
      <description-html>
         <![CDATA[IO Filter identifier.]]>
      </description-html>
      </property>

            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      >
      <description-html>
         <![CDATA[Name of the IO Filter.]]>
      </description-html>
      </property>

            <property name="vendor" type-id-ref="java.lang.String"
      vmodl-name="vendor"
      >
      <description-html>
         <![CDATA[Vendor of the IO Filter.]]>
      </description-html>
      </property>

            <property name="version" type-id-ref="java.lang.String"
      vmodl-name="version"
      >
      <description-html>
         <![CDATA[Version of the IO Filter.]]>
      </description-html>
      </property>

            <property name="type" type-id-ref="java.lang.String"
      vmodl-name="type"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Type of the IO Filter. The set of possible values are listed in
 <a href="vim.IoFilterManager.IoFilterType.html">IoFilterType</a>.

 The property is unset if the information is not available.]]>
      </description-html>
      </property>

            <property name="summary" type-id-ref="java.lang.String"
      vmodl-name="summary"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Short description of the IO Filter.

 The property is unset if the information is not available.]]>
      </description-html>
      </property>

            <property name="releaseDate" type-id-ref="java.lang.String"
      vmodl-name="releaseDate"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Release date of the IO Filter.

 The property is unset if the information is not available.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VAppCloneSpecNetworkMappingPair"
      type-id="vim.vApp.CloneSpec.NetworkMappingPair"
      vmodl-name="vim.vApp.CloneSpec.NetworkMappingPair"
      enclosing-type-id-ref="vim.vApp.CloneSpec"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Maps one network to another as part of the clone process.
 <p>
 Instances of this class are used in the field <a href="vim.vApp.CloneSpec.html#networkMapping">networkMapping</a>]]>
      </description-html>
            <property name="source" type-id-ref="vim.Network"
      vmodl-name="source"
      >
      <description-html>
         <![CDATA[The source network]]>
      </description-html>
      </property>

            <property name="destination" type-id-ref="vim.Network"
      vmodl-name="destination"
      privilege="Network.Assign"
      >
      <description-html>
         <![CDATA[The destination network]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="FaultDomainId"
      type-id="vim.vm.replication.FaultDomainId"
      vmodl-name="vim.vm.replication.FaultDomainId"
      version-id-ref="vim.version.version11"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Represents the identity of a replication fault domain. Fault domains IDs are globally
 unique.]]>
      </description-html>
            <property name="id" type-id-ref="java.lang.String"
      vmodl-name="id"
      >
      <description-html>
         <![CDATA[ID of the fault domain.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ProfileEventArgument"
      type-id="vim.event.ProfileEventArgument"
      vmodl-name="vim.event.ProfileEventArgument"
      version-id-ref="vim.version.version5"
      base-type-id="vim.event.EventArgument"
      >
      <description-html>
         <![CDATA[The event argument is a Profile object]]>
      </description-html>
            <property name="profile" type-id-ref="vim.profile.Profile"
      vmodl-name="profile"
      >
      </property>

            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      >
      </property>

   </data-object>
   <data-object name="HostFileSystemVolumeInfo"
      type-id="vim.host.FileSystemVolumeInfo"
      vmodl-name="vim.host.FileSystemVolumeInfo"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The <a href="vim.host.FileSystemVolumeInfo.html">HostFileSystemVolumeInfo</a> data object describes the file system volume
  information for the host.
  <p>
  A file system volume refers to a storage abstraction that allows files
  to be created and organized.  A host can have multiple file system
  volumes.  File system volumes are typically mounted into a file namespace
  that allows all files in mounted file systems to be addressable from the
  host.
  <p>
  A file system volume is backed by disk storage.  It could span one or more
  disks but need not use an entire disk.
  <p>
  A file system volume by definition must be mounted on the file system
  in order to exist.]]>
      </description-html>
            <property name="volumeTypeList" type-id-ref="java.lang.String"
      vmodl-name="volumeTypeList"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The list of supported file system volume types.]]>
      </description-html>
      </property>

            <property name="mountInfo" type-id-ref="vim.host.FileSystemMountInfo"
      vmodl-name="mountInfo"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The list of file system volumes mounted on the host.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostListSummary"
      type-id="vim.host.Summary"
      vmodl-name="vim.host.Summary"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object type encapsulates a typical set of host information that is useful
  for list views and summary pages.
  <p>
  VirtualCenter can retrieve this information very efficiently, even for a large set
  of hosts.]]>
      </description-html>
            <property name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The reference to the host-managed object.]]>
      </description-html>
      </property>

            <property name="hardware" type-id-ref="vim.host.Summary.HardwareSummary"
      vmodl-name="hardware"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Basic hardware information, if known.]]>
      </description-html>
      </property>

            <property name="runtime" type-id-ref="vim.host.RuntimeInfo"
      vmodl-name="runtime"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Basic runtime information, if known.]]>
      </description-html>
      </property>

            <property name="config" type-id-ref="vim.host.Summary.ConfigSummary"
      vmodl-name="config"
      >
      <description-html>
         <![CDATA[Basic configuration information, if known.]]>
      </description-html>
      </property>

            <property name="quickStats" type-id-ref="vim.host.Summary.QuickStats"
      vmodl-name="quickStats"
      >
      <description-html>
         <![CDATA[Basic host statistics.]]>
      </description-html>
      </property>

            <property name="overallStatus" type-id-ref="vim.ManagedEntity.Status"
      vmodl-name="overallStatus"
      >
      <description-html>
         <![CDATA[The overall alarm status of the host.

  In releases after vSphere API 5.0, vSphere Servers might not
  generate property collector update notifications for this property.
  To obtain the latest value of the property, you can use
  PropertyCollector methods RetrievePropertiesEx or WaitForUpdatesEx.
  If you use the PropertyCollector.WaitForUpdatesEx method, specify
  an empty string for the version parameter.

  Since this property is on a DataObject, an update returned by WaitForUpdatesEx may
  contain values for this property when some other property on the DataObject changes.
  If this update is a result of a call to WaitForUpdatesEx with a non-empty
  version parameter, the value for this property may not be current.]]>
      </description-html>
      </property>

            <property name="rebootRequired" type-id-ref="BOOLEAN"
      vmodl-name="rebootRequired"
      >
      <description-html>
         <![CDATA[Indicates whether or not the host requires a reboot due to a configuration
  change.]]>
      </description-html>
      </property>

            <property name="customValue" type-id-ref="vim.CustomFieldsManager.Value"
      vmodl-name="customValue"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The customized field values.]]>
      </description-html>
      </property>

            <property name="managementServerIp" type-id-ref="java.lang.String"
      vmodl-name="managementServerIp"
      version-id-ref="vim.version.version2"
      is-optional="true"
      >
      <description-html>
         <![CDATA[IP address of the VirtualCenter server managing this host, if any.]]>
      </description-html>
      </property>

            <property name="maxEVCModeKey" type-id-ref="java.lang.String"
      vmodl-name="maxEVCModeKey"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The most capable Enhanced VMotion Compatibility mode supported by the
  host hardware and software; unset if this host cannot participate in
  any EVC mode.<br>See <a href="vim.Capability.html#supportedEVCMode">supportedEVCMode</a><br>]]>
      </description-html>
      </property>

            <property name="currentEVCModeKey" type-id-ref="java.lang.String"
      vmodl-name="currentEVCModeKey"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The Enhanced VMotion Compatibility mode that is currently in effect
  for this host. If the host is in a cluster where EVC is active, this
  will match the cluster's EVC mode; otherwise this will be unset.<br>See <a href="vim.Capability.html#supportedEVCMode">supportedEVCMode</a><br>]]>
      </description-html>
      </property>

            <property name="gateway" type-id-ref="vim.host.Summary.GatewaySummary"
      vmodl-name="gateway"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Gateway configuration, if vCenter server manages the host via a gateway]]>
      </description-html>
      </property>

            <property name="tpmAttestation" type-id-ref="vim.host.TpmAttestationInfo"
      vmodl-name="tpmAttestation"
      version-id-ref="vim.version.version12"
      is-optional="true"
      >
      </property>

      <nested-type-id-ref>vim.host.Summary.HardwareSummary</nested-type-id-ref>
      <nested-type-id-ref>vim.host.Summary.QuickStats</nested-type-id-ref>
      <nested-type-id-ref>vim.host.Summary.ConfigSummary</nested-type-id-ref>
      <nested-type-id-ref>vim.host.Summary.GatewaySummary</nested-type-id-ref>
   </data-object>
   <data-object name="ServiceLocatorNamePassword"
      type-id="vim.ServiceLocator.NamePassword"
      vmodl-name="vim.ServiceLocator.NamePassword"
      enclosing-type-id-ref="vim.ServiceLocator"
      version-id-ref="vim.version.version10"
      base-type-id="vim.ServiceLocator.Credential"
      >
      <description-html>
         <![CDATA[The data object type specifies the username and password credential for
 authenticating to a service endpoint.]]>
      </description-html>
            <property name="username" type-id-ref="java.lang.String"
      vmodl-name="username"
      >
      <description-html>
         <![CDATA[The username for Username-Password authentication]]>
      </description-html>
      </property>

            <property name="password" type-id-ref="java.lang.String"
      vmodl-name="password"
      >
      <description-html>
         <![CDATA[The password for Username-Password authentication]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualParallelPortFileBackingOption"
      type-id="vim.vm.device.VirtualParallelPortOption.FileBackingOption"
      vmodl-name="vim.vm.device.VirtualParallelPortOption.FileBackingOption"
      enclosing-type-id-ref="vim.vm.device.VirtualParallelPortOption"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.device.VirtualDeviceOption.FileBackingOption"
      >
      <description-html>
         <![CDATA[Data object type that represents the options for a file backing
  of a virtual parallel port.]]>
      </description-html>
   </data-object>
   <data-object name="VirtualMachineGuestSummary"
      type-id="vim.vm.Summary.GuestSummary"
      vmodl-name="vim.vm.Summary.GuestSummary"
      enclosing-type-id-ref="vim.vm.Summary"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[A subset of virtual machine guest information.]]>
      </description-html>
            <property name="guestId" type-id-ref="java.lang.String"
      vmodl-name="guestId"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Guest operating system identifier (short name), if known.]]>
      </description-html>
      </property>

            <property name="guestFullName" type-id-ref="java.lang.String"
      vmodl-name="guestFullName"
      is-optional="true"
      is-localizable="true"
      >
      <description-html>
         <![CDATA[Guest operating system name configured on the virtual machine.]]>
      </description-html>
      </property>

            <property name="toolsStatus" type-id-ref="vim.vm.GuestInfo.ToolsStatus"
      vmodl-name="toolsStatus"
      is-deprecated="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Current status of VMware Tools in the guest operating system, if known.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 5.0 use <a href="vim.vm.Summary.GuestSummary.html#toolsVersionStatus2">toolsVersionStatus2</a> and
  <a href="vim.vm.Summary.GuestSummary.html#toolsRunningStatus">toolsRunningStatus</a>.]]>
      </deprecated-html>
      </property>

            <property name="toolsVersionStatus" type-id-ref="java.lang.String"
      vmodl-name="toolsVersionStatus"
      version-id-ref="vim.version.version5"
      is-deprecated="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Current version status of VMware Tools in the guest operating system,
  if known.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 5.0 use <a href="vim.vm.Summary.GuestSummary.html#toolsVersionStatus2">toolsVersionStatus2</a>.]]>
      </deprecated-html>
      </property>

            <property name="toolsVersionStatus2" type-id-ref="java.lang.String"
      vmodl-name="toolsVersionStatus2"
      version-id-ref="vim.version.version7"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Current version status of VMware Tools in the guest operating system,
  if known.]]>
      </description-html>
      </property>

            <property name="toolsRunningStatus" type-id-ref="java.lang.String"
      vmodl-name="toolsRunningStatus"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Current running status of VMware Tools in the guest operating system,
  if known.]]>
      </description-html>
      </property>

            <property name="hostName" type-id-ref="java.lang.String"
      vmodl-name="hostName"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Hostname of the guest operating system, if known.]]>
      </description-html>
      </property>

            <property name="ipAddress" type-id-ref="java.lang.String"
      vmodl-name="ipAddress"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Primary IP address assigned to the guest operating system, if known.]]>
      </description-html>
      </property>

            <property name="hwVersion" type-id-ref="java.lang.String"
      vmodl-name="hwVersion"
      version-id-ref="vim.version.v6_9_1"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The hardware version string for this virtual machine.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="EventArgument"
      type-id="vim.event.EventArgument"
      vmodl-name="vim.event.EventArgument"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This is the base type for event argument types.
  <p>
  Event argument objects, which inherit from a common subtype,
  are used to manage supplementary properties of different kinds
  of event objects.]]>
      </description-html>
   </data-object>
   <data-object name="VmPowerOffOnIsolationEvent"
      type-id="vim.event.VmPowerOffOnIsolationEvent"
      vmodl-name="vim.event.VmPowerOffOnIsolationEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.VmPoweredOffEvent"
      >
      <description-html>
         <![CDATA[This event records when a virtual machine has been powered off on an isolated host
  in a HA cluster.]]>
      </description-html>
            <property name="isolatedHost" type-id-ref="vim.event.HostEventArgument"
      vmodl-name="isolatedHost"
      >
      <description-html>
         <![CDATA[The isolated host on which a virtual machine is powered off.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostProtocolEndpoint"
      type-id="vim.host.ProtocolEndpoint"
      vmodl-name="vim.host.ProtocolEndpoint"
      version-id-ref="vim.version.version10"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[ProtocolEndpoint is configured LUN or NFS directory
 This is used for io path to actual virtual disks (VVols)]]>
      </description-html>
            <property name="peType" type-id-ref="java.lang.String"
      vmodl-name="peType"
      is-deprecated="true"
      >
      <description-html>
         <![CDATA[Type of ProtocolEndpoint
 See <a href="vim.host.ProtocolEndpoint.PEType.html">HostProtocolEndpointPEType</a>]]>
      </description-html>
      <deprecated-html>
         <![CDATA[from all vmodl version above]]>
      </deprecated-html>
      </property>

            <property name="type" type-id-ref="java.lang.String"
      vmodl-name="type"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Type of ProtocolEndpoint
 See <a href="vim.host.ProtocolEndpoint.ProtocolEndpointType.html">HostProtocolEndpointProtocolEndpointType</a>]]>
      </description-html>
      </property>

            <property name="uuid" type-id-ref="java.lang.String"
      vmodl-name="uuid"
      >
      <description-html>
         <![CDATA[Identifier for PE assigned by VASA Provider]]>
      </description-html>
      </property>

            <property name="hostKey" type-id-ref="vim.HostSystem"
      vmodl-name="hostKey"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Set of ESX hosts which can see the same PE]]>
      </description-html>
      </property>

            <property name="storageArray" type-id-ref="java.lang.String"
      vmodl-name="storageArray"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Associated Storage Array]]>
      </description-html>
      </property>

            <property name="nfsServer" type-id-ref="java.lang.String"
      vmodl-name="nfsServer"
      is-optional="true"
      >
      <description-html>
         <![CDATA[NFSv3 and NFSv4x PE will contain information about NFS Server

 For NFSv4x this field may contain comma separated list of IP addresses
 which are associated with the NFS Server]]>
      </description-html>
      </property>

            <property name="nfsDir" type-id-ref="java.lang.String"
      vmodl-name="nfsDir"
      is-optional="true"
      >
      <description-html>
         <![CDATA[NFSv3 and NFSv4x PE will contain information about NFS directory]]>
      </description-html>
      </property>

            <property name="nfsServerScope" type-id-ref="java.lang.String"
      vmodl-name="nfsServerScope"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[NFSv4x PE will contain information about NFSv4x Server Scope]]>
      </description-html>
      </property>

            <property name="nfsServerMajor" type-id-ref="java.lang.String"
      vmodl-name="nfsServerMajor"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[NFSv4x PE will contain information about NFSv4x Server Major]]>
      </description-html>
      </property>

            <property name="nfsServerAuthType" type-id-ref="java.lang.String"
      vmodl-name="nfsServerAuthType"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[NFSv4x PE will contain information about NFSv4x Server Auth-type]]>
      </description-html>
      </property>

            <property name="nfsServerUser" type-id-ref="java.lang.String"
      vmodl-name="nfsServerUser"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[NFSv4x PE will contain information about NFSv4x Server User]]>
      </description-html>
      </property>

            <property name="deviceId" type-id-ref="java.lang.String"
      vmodl-name="deviceId"
      is-optional="true"
      >
      <description-html>
         <![CDATA[SCSI PE will contain information about SCSI device ID]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.host.ProtocolEndpoint.PEType</nested-type-id-ref>
      <nested-type-id-ref>vim.host.ProtocolEndpoint.ProtocolEndpointType</nested-type-id-ref>
   </data-object>
   <data-object name="ManagedEntityEventArgument"
      type-id="vim.event.ManagedEntityEventArgument"
      vmodl-name="vim.event.ManagedEntityEventArgument"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.EntityEventArgument"
      >
      <description-html>
         <![CDATA[The general event argument for a managed entity.]]>
      </description-html>
            <property name="entity" type-id-ref="vim.ManagedEntity"
      vmodl-name="entity"
      >
      <description-html>
         <![CDATA[The managed entity.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VcAgentUninstalledEvent"
      type-id="vim.event.VcAgentUninstalledEvent"
      vmodl-name="vim.event.VcAgentUninstalledEvent"
      version-id-ref="vim.version.version5"
      base-type-id="vim.event.HostEvent"
      >
      <description-html>
         <![CDATA[This event records when the VirtualCenter agent on a host is uninstalled.]]>
      </description-html>
   </data-object>
   <data-object name="VirtualMachineTargetInfo"
      type-id="vim.vm.TargetInfo"
      vmodl-name="vim.vm.TargetInfo"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The TargetInfo specified a value that can be used in the device backings to
  connect the virtual machine to a physical (or logical) host device.]]>
      </description-html>
            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      >
      <description-html>
         <![CDATA[The identification of the endpoint on the host. The format of this depends
  on the kind of virtual device this endpoints is used for. For example,
  for a VirtualEthernetCard this would be a networkname, and for a VirtualCDROM
  it would be a device name.]]>
      </description-html>
      </property>

            <property name="configurationTag" type-id-ref="java.lang.String"
      vmodl-name="configurationTag"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of configurations that this device is available for. This is only filled
  out if more than one configuration is requested.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.vm.TargetInfo.ConfigurationTag</nested-type-id-ref>
   </data-object>
   <data-object name="NoAccessUserEvent"
      type-id="vim.event.NoAccessUserEvent"
      vmodl-name="vim.event.NoAccessUserEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.SessionEvent"
      >
      <description-html>
         <![CDATA[This event records a failed user logon due to insufficient access permission.]]>
      </description-html>
            <property name="ipAddress" type-id-ref="java.lang.String"
      vmodl-name="ipAddress"
      >
      <description-html>
         <![CDATA[The IP address of the peer that initiated the connection. This may
  be the client that originated the session, or it may be an intervening
  proxy if the binding uses a protocol that supports proxies, such as HTTP.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="EventFilterSpecByTime"
      type-id="vim.event.EventFilterSpec.ByTime"
      vmodl-name="vim.event.EventFilterSpec.ByTime"
      enclosing-type-id-ref="vim.event.EventFilterSpec"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This option specifies a time range used to filter event history.]]>
      </description-html>
            <property name="beginTime" type-id-ref="vmodl.DateTime"
      vmodl-name="beginTime"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The beginning of the time range.
  If this property is not set, then events are collected from
  the earliest time in the database.]]>
      </description-html>
      </property>

            <property name="endTime" type-id-ref="vmodl.DateTime"
      vmodl-name="endTime"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The end of the time range.
  If this property is not specified, then events are collected up to
  the latest time in the database.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="StorageRequirement"
      type-id="vim.VirtualMachine.StorageRequirement"
      vmodl-name="vim.VirtualMachine.StorageRequirement"
      enclosing-type-id-ref="vim.VirtualMachine"
      version-id-ref="vim.version.version7"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Describes the storage requirement to perform a consolidation
 operation.]]>
      </description-html>
            <property name="datastore" type-id-ref="vim.Datastore"
      vmodl-name="datastore"
      >
      <description-html>
         <![CDATA[The datastore.]]>
      </description-html>
      </property>

            <property name="freeSpaceRequiredInKb" type-id-ref="LONG"
      vmodl-name="freeSpaceRequiredInKb"
      >
      <description-html>
         <![CDATA[Space required.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="RoleUpdatedEvent"
      type-id="vim.event.RoleUpdatedEvent"
      vmodl-name="vim.event.RoleUpdatedEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.RoleEvent"
      >
      <description-html>
         <![CDATA[This event records the creation of a role.]]>
      </description-html>
            <property name="privilegeList" type-id-ref="java.lang.String"
      vmodl-name="privilegeList"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The privileges granted to the role.]]>
      </description-html>
      </property>

            <property name="prevRoleName" type-id-ref="java.lang.String"
      vmodl-name="prevRoleName"
      version-id-ref="vim.version.version11"
      is-optional="true"
      is-localizable="true"
      >
      <description-html>
         <![CDATA[The name of the previous role.]]>
      </description-html>
      </property>

            <property name="privilegesAdded" type-id-ref="java.lang.String"
      vmodl-name="privilegesAdded"
      version-id-ref="vim.version.version11"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The privileges added to the role.]]>
      </description-html>
      </property>

            <property name="privilegesRemoved" type-id-ref="java.lang.String"
      vmodl-name="privilegesRemoved"
      version-id-ref="vim.version.version11"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The privileges removed from the role.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DVPortStatus"
      type-id="vim.dvs.DistributedVirtualPort.RuntimeInfo"
      vmodl-name="vim.dvs.DistributedVirtualPort.RuntimeInfo"
      enclosing-type-id-ref="vim.dvs.DistributedVirtualPort"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The <a href="vim.dvs.DistributedVirtualPort.RuntimeInfo.html">DVPortStatus</a> data object
 contains runtime information about a <a href="vim.dvs.DistributedVirtualPort.html">DistributedVirtualPort</a>.]]>
      </description-html>
            <property name="linkUp" type-id-ref="BOOLEAN"
      vmodl-name="linkUp"
      >
      <description-html>
         <![CDATA[Indicates whether the port is in linkUp status.]]>
      </description-html>
      </property>

            <property name="blocked" type-id-ref="BOOLEAN"
      vmodl-name="blocked"
      >
      <description-html>
         <![CDATA[Indicates whether the port is blocked by switch implementation.]]>
      </description-html>
      </property>

            <property name="vlanIds" type-id-ref="vim.NumericRange"
      vmodl-name="vlanIds"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[VLAN ID of the port.]]>
      </description-html>
      </property>

            <property name="trunkingMode" type-id-ref="BOOLEAN"
      vmodl-name="trunkingMode"
      is-optional="true"
      >
      <description-html>
         <![CDATA[True if the port VLAN tagging/stripping is disabled.]]>
      </description-html>
      </property>

            <property name="mtu" type-id-ref="INT"
      vmodl-name="mtu"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Maximum transmission unit (MTU) of the port. You can set the MTU only
 at the switch level
 (<a href="vim.dvs.VmwareDistributedVirtualSwitch.ConfigSpec.html">VMwareDVSConfigSpec</a>).
 If you attempt to change it at the portgroup or port level,
 the Server throws an exception.]]>
      </description-html>
      </property>

            <property name="linkPeer" type-id-ref="java.lang.String"
      vmodl-name="linkPeer"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Name of the connected entity.]]>
      </description-html>
      </property>

            <property name="macAddress" type-id-ref="java.lang.String"
      vmodl-name="macAddress"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The MAC address that is used at this port.]]>
      </description-html>
      </property>

            <property name="statusDetail" type-id-ref="java.lang.String"
      vmodl-name="statusDetail"
      version-id-ref="vim.version.version6"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Additional information regarding the current status of the port.]]>
      </description-html>
      </property>

            <property name="vmDirectPathGen2Active" type-id-ref="BOOLEAN"
      vmodl-name="vmDirectPathGen2Active"
      version-id-ref="vim.version.version6"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates whether VMDirectPath Gen 2 is active on this port.
  If false, the reason(s) for inactivity will be provided in one or
  more of <a href="vim.dvs.DistributedVirtualPort.RuntimeInfo.html#vmDirectPathGen2InactiveReasonNetwork">vmDirectPathGen2InactiveReasonNetwork</a>,
  <a href="vim.dvs.DistributedVirtualPort.RuntimeInfo.html#vmDirectPathGen2InactiveReasonOther">vmDirectPathGen2InactiveReasonOther</a>,
  and <a href="vim.dvs.DistributedVirtualPort.RuntimeInfo.html#vmDirectPathGen2InactiveReasonExtended">vmDirectPathGen2InactiveReasonExtended</a>.
  <p>
  If the host software is not capable of VMDirectPath Gen 2,
  this property will be unset. See
  <a href="vim.host.Capability.html">HostCapability</a>.<a href="vim.host.Capability.html#vmDirectPathGen2Supported">vmDirectPathGen2Supported</a>.]]>
      </description-html>
      </property>

            <property name="vmDirectPathGen2InactiveReasonNetwork" type-id-ref="java.lang.String"
      vmodl-name="vmDirectPathGen2InactiveReasonNetwork"
      version-id-ref="vim.version.version6"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[If <a href="vim.dvs.DistributedVirtualPort.RuntimeInfo.html#vmDirectPathGen2Active">vmDirectPathGen2Active</a> is false, this array will be
  populated with reasons for the inactivity that are related to network
  state or configuration. The reasons are chosen from the
  <a href="vim.dvs.DistributedVirtualPort.RuntimeInfo.VmDirectPathGen2InactiveReasonNetwork.html">DVPortStatusVmDirectPathGen2InactiveReasonNetwork</a>
  values.
  <p>
  Other reasons for inactivity will be provided in
  <a href="vim.dvs.DistributedVirtualPort.RuntimeInfo.html#vmDirectPathGen2InactiveReasonOther">vmDirectPathGen2InactiveReasonOther</a>. If there is a reason
  for inactivity that cannot be described by the available constants,
  <a href="vim.dvs.DistributedVirtualPort.RuntimeInfo.html#vmDirectPathGen2InactiveReasonExtended">vmDirectPathGen2InactiveReasonExtended</a> will be populated
  with an additional explanation provided by the platform.
  <p>
  Note that this list of reasons is not guaranteed to be exhaustive.]]>
      </description-html>
      </property>

            <property name="vmDirectPathGen2InactiveReasonOther" type-id-ref="java.lang.String"
      vmodl-name="vmDirectPathGen2InactiveReasonOther"
      version-id-ref="vim.version.version6"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[If <a href="vim.dvs.DistributedVirtualPort.RuntimeInfo.html#vmDirectPathGen2Active">vmDirectPathGen2Active</a> is false, this array will be
  populated with reasons for the inactivity that are not related to
  network state or configuration. The reasons are chosen from the
  <a href="vim.dvs.DistributedVirtualPort.RuntimeInfo.VmDirectPathGen2InactiveReasonOther.html">DVPortStatusVmDirectPathGen2InactiveReasonOther</a>
  values.
  <p>
  Network-related reasons for inactivity will be provided in
  <a href="vim.dvs.DistributedVirtualPort.RuntimeInfo.html#vmDirectPathGen2InactiveReasonNetwork">vmDirectPathGen2InactiveReasonNetwork</a>. If there is a reason
  for inactivity that cannot be described by the available constants,
  <a href="vim.dvs.DistributedVirtualPort.RuntimeInfo.html#vmDirectPathGen2InactiveReasonExtended">vmDirectPathGen2InactiveReasonExtended</a> will be populated
  with an additional explanation provided by the platform.
  <p>
  Note that this list of reasons is not guaranteed to be exhaustive.<br>See <a href="vim.host.Capability.html#vmDirectPathGen2Supported">vmDirectPathGen2Supported</a><br>]]>
      </description-html>
      </property>

            <property name="vmDirectPathGen2InactiveReasonExtended" type-id-ref="java.lang.String"
      vmodl-name="vmDirectPathGen2InactiveReasonExtended"
      version-id-ref="vim.version.version6"
      is-optional="true"
      >
      <description-html>
         <![CDATA[If <a href="vim.dvs.DistributedVirtualPort.RuntimeInfo.html#vmDirectPathGen2Active">vmDirectPathGen2Active</a> is false, this property may
  contain an explanation provided by the platform, beyond the reasons
  (if any) listed in <a href="vim.dvs.DistributedVirtualPort.RuntimeInfo.html#vmDirectPathGen2InactiveReasonNetwork">vmDirectPathGen2InactiveReasonNetwork</a>
  and/or <a href="vim.dvs.DistributedVirtualPort.RuntimeInfo.html#vmDirectPathGen2InactiveReasonOther">vmDirectPathGen2InactiveReasonOther</a>.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.dvs.DistributedVirtualPort.RuntimeInfo.VmDirectPathGen2InactiveReasonNetwork</nested-type-id-ref>
      <nested-type-id-ref>vim.dvs.DistributedVirtualPort.RuntimeInfo.VmDirectPathGen2InactiveReasonOther</nested-type-id-ref>
   </data-object>
   <data-object name="HostSslThumbprintInfo"
      type-id="vim.host.SslThumbprintInfo"
      vmodl-name="vim.host.SslThumbprintInfo"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The SSL thumbprint information for a host managed by a vCenter Server
  or a vCenter extension to login into other hosts without
  username/password authentication.]]>
      </description-html>
            <property name="principal" type-id-ref="java.lang.String"
      vmodl-name="principal"
      >
      <description-html>
         <![CDATA[The principal used for the login session]]>
      </description-html>
      </property>

            <property name="ownerTag" type-id-ref="java.lang.String"
      vmodl-name="ownerTag"
      version-id-ref="vim.version.version7"
      >
      <description-html>
         <![CDATA[The tag associated with this registration.  Owner tags allow
  multiple entities to register the same thumbprint without
  interfering with each other on the life cycle of the thumbprint with
  their unique tags.

  Each solution should use a unique tag to identify itself.]]>
      </description-html>
      </property>

            <property name="sslThumbprints" type-id-ref="java.lang.String"
      vmodl-name="sslThumbprints"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Specify the SSL thumbprints to register on the host.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="EnteredMaintenanceModeEvent"
      type-id="vim.event.EnteredMaintenanceModeEvent"
      vmodl-name="vim.event.EnteredMaintenanceModeEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.HostEvent"
      >
      <description-html>
         <![CDATA[This event records that the host has completely entered
  maintenance mode. A host in this mode has no running virtual machines and no
  provisioning operations are occurring.]]>
      </description-html>
   </data-object>
   <data-object name="VirtualSerialPortFileBackingInfo"
      type-id="vim.vm.device.VirtualSerialPort.FileBackingInfo"
      vmodl-name="vim.vm.device.VirtualSerialPort.FileBackingInfo"
      enclosing-type-id-ref="vim.vm.device.VirtualSerialPort"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.device.VirtualDevice.FileBackingInfo"
      >
      <description-html>
         <![CDATA[The <code><a href="vim.vm.device.VirtualSerialPort.FileBackingInfo.html">VirtualSerialPortFileBackingInfo</a></code> data object provides
  information for backing a virtual serial port with a host file.]]>
      </description-html>
   </data-object>
   <data-object name="GuestRegValueBinarySpec"
      type-id="vim.vm.guest.WindowsRegistryManager.RegistryValueBinary"
      vmodl-name="vim.vm.guest.WindowsRegistryManager.RegistryValueBinary"
      enclosing-type-id-ref="vim.vm.guest.WindowsRegistryManager"
      version-id-ref="vim.version.version10"
      base-type-id="vim.vm.guest.WindowsRegistryManager.RegistryValueData"
      >
      <description-html>
         <![CDATA[This describes the registry value binary.]]>
      </description-html>
            <property name="value" type-id-ref="vmodl.Binary"
      vmodl-name="value"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The data of the registry value.

 The Windows registry allows this type of value to exist without
 having any data associated with it.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="KmipServerInfo"
      type-id="vim.encryption.KmipServerInfo"
      vmodl-name="vim.encryption.KmipServerInfo"
      version-id-ref="vim.version.version11"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Data Object representing a KMIP server connection information.]]>
      </description-html>
            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      >
      <description-html>
         <![CDATA[Name for the KMIP server.]]>
      </description-html>
      </property>

            <property name="address" type-id-ref="java.lang.String"
      vmodl-name="address"
      >
      <description-html>
         <![CDATA[Address of the KMIP server.]]>
      </description-html>
      </property>

            <property name="port" type-id-ref="INT"
      vmodl-name="port"
      >
      <description-html>
         <![CDATA[Port of the KMIP server.]]>
      </description-html>
      </property>

            <property name="proxyAddress" type-id-ref="java.lang.String"
      vmodl-name="proxyAddress"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Address of the proxy server.
 Set value to empty string to delete the entry.]]>
      </description-html>
      </property>

            <property name="proxyPort" type-id-ref="INT"
      vmodl-name="proxyPort"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Port of the proxy server.
 Set value "-1" to delete the entry.]]>
      </description-html>
      </property>

            <property name="reconnect" type-id-ref="INT"
      vmodl-name="reconnect"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Should auto-reconnect be done.
 Set value "-1" to delete the entry.]]>
      </description-html>
      </property>

            <property name="protocol" type-id-ref="java.lang.String"
      vmodl-name="protocol"
      is-optional="true"
      >
      <description-html>
         <![CDATA[KMIP library protocol handler, e.g. KMIP1.
 Set value to empty string to delete the entry.]]>
      </description-html>
      </property>

            <property name="nbio" type-id-ref="INT"
      vmodl-name="nbio"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Non-blocking I/O required.
 Set value "-1" to delete the entry.]]>
      </description-html>
      </property>

            <property name="timeout" type-id-ref="INT"
      vmodl-name="timeout"
      is-optional="true"
      >
      <description-html>
         <![CDATA[I/O timeout in seconds (-1=none,0=infinite).
 Set value "-1" to delete the entry.]]>
      </description-html>
      </property>

            <property name="userName" type-id-ref="java.lang.String"
      vmodl-name="userName"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Username to authenticate to the KMIP server.
 Set value to empty string to delete the entry.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostSystemSwapConfigurationHostCacheOption"
      type-id="vim.host.SystemSwapConfiguration.HostCacheOption"
      vmodl-name="vim.host.SystemSwapConfiguration.HostCacheOption"
      enclosing-type-id-ref="vim.host.SystemSwapConfiguration"
      version-id-ref="vim.version.version8"
      base-type-id="vim.host.SystemSwapConfiguration.SystemSwapOption"
      >
      <description-html>
         <![CDATA[Use option to indicate that the host cache may be used for system
 swap.<br>See <a href="vim.host.CacheConfigurationManager.html">HostCacheConfigurationManager</a><br>]]>
      </description-html>
   </data-object>
   <data-object name="DasAgentUnavailableEvent"
      type-id="vim.event.DasAgentUnavailableEvent"
      vmodl-name="vim.event.DasAgentUnavailableEvent"
      version-id-ref="vim.version.version1"
      is-deprecated="true"
      base-type-id="vim.event.ClusterEvent"
      >
      <description-html>
         <![CDATA[This event records that VirtualCenter cannot contact any primary host
 in this HA cluster. HA designates some hosts as primary hosts in the HA
 cluster. When adding a new host to an existing cluster, HA needs to
 contact one of the primary hosts to finish the configuration. VirtualCenter
 has lost contact with all primary nodes in the connected state. Attempts
 to configure HA on a host in this cluster will fail until a
 DasAgentFoundEvent is logged or unless this is the first node to be
 configured. For example, if all the other hosts are disconnected first.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 5.0, the event is no longer relevant.]]>
      </deprecated-html>
   </data-object>
   <data-object name="NetIpConfigInfo"
      type-id="vim.net.IpConfigInfo"
      vmodl-name="vim.net.IpConfigInfo"
      version-id-ref="vim.version.version6"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Protocol version independent address reporting data object for network
  interfaces.]]>
      </description-html>
            <property name="ipAddress" type-id-ref="vim.net.IpConfigInfo.IpAddress"
      vmodl-name="ipAddress"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Zero, one or more manual (static) assigned IP addresses to be configured
 on a given interface.]]>
      </description-html>
      </property>

            <property name="dhcp" type-id-ref="vim.net.DhcpConfigInfo"
      vmodl-name="dhcp"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Client side DHCP for a given interface.]]>
      </description-html>
      </property>

            <property name="autoConfigurationEnabled" type-id-ref="BOOLEAN"
      vmodl-name="autoConfigurationEnabled"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Enable or disable ICMPv6 router solictitation requests from a given interface
 to acquire an IPv6 address and default gateway route from zero, one or more
 routers on the connected network.

 If not set then ICMPv6 is not available on this system,
 See vim.host.Network.Capabilities]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.net.IpConfigInfo.IpAddressOrigin</nested-type-id-ref>
      <nested-type-id-ref>vim.net.IpConfigInfo.IpAddressStatus</nested-type-id-ref>
      <nested-type-id-ref>vim.net.IpConfigInfo.IpAddress</nested-type-id-ref>
   </data-object>
   <data-object name="DatastoreCapability"
      type-id="vim.Datastore.Capability"
      vmodl-name="vim.Datastore.Capability"
      enclosing-type-id-ref="vim.Datastore"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Information about the capabilities of this datastore.]]>
      </description-html>
            <property name="directoryHierarchySupported" type-id-ref="BOOLEAN"
      vmodl-name="directoryHierarchySupported"
      >
      <description-html>
         <![CDATA[Indicates whether or not directories can be created on this datastore.]]>
      </description-html>
      </property>

            <property name="rawDiskMappingsSupported" type-id-ref="BOOLEAN"
      vmodl-name="rawDiskMappingsSupported"
      >
      <description-html>
         <![CDATA[Indicates whether or not raw disk mappings can be created on this datastore.]]>
      </description-html>
      </property>

            <property name="perFileThinProvisioningSupported" type-id-ref="BOOLEAN"
      vmodl-name="perFileThinProvisioningSupported"
      >
      <description-html>
         <![CDATA[Indicates whether or not the datastore supports thin provisioning on a per file
  basis. When thin provisioning is used, backing storage is lazily allocated.
  <p>
  This is supported by VMFS3. VMFS2 always allocates storage eagerly. Thus, this
  value is false for VMFS2. Most NAS systems always use thin provisioning.
  They do not support configuring this on a per file basis, so for NAS systems
  this value is also false.]]>
      </description-html>
      </property>

            <property name="storageIORMSupported" type-id-ref="BOOLEAN"
      vmodl-name="storageIORMSupported"
      version-id-ref="vim.version.version6"
      >
      <description-html>
         <![CDATA[Indicates whether the datastore supports Storage I/O Resource Management.]]>
      </description-html>
      </property>

            <property name="nativeSnapshotSupported" type-id-ref="BOOLEAN"
      vmodl-name="nativeSnapshotSupported"
      version-id-ref="vim.version.version8"
      >
      <description-html>
         <![CDATA[Indicates whether the datastore supports native snapshot feature which is
  based on Copy-On-Write.]]>
      </description-html>
      </property>

            <property name="topLevelDirectoryCreateSupported" type-id-ref="BOOLEAN"
      vmodl-name="topLevelDirectoryCreateSupported"
      version-id-ref="vim.version.version9"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates whether the datastore supports traditional top-level
  directory creation.<br>See <a href="vim.DatastoreNamespaceManager.html">DatastoreNamespaceManager</a><br>]]>
      </description-html>
      </property>

            <property name="seSparseSupported" type-id-ref="BOOLEAN"
      vmodl-name="seSparseSupported"
      version-id-ref="vim.version.version9"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates whether the datastore supports the Flex-SE(SeSparse) feature.]]>
      </description-html>
      </property>

            <property name="vmfsSparseSupported" type-id-ref="BOOLEAN"
      vmodl-name="vmfsSparseSupported"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates whether the datastore supports the vmfsSparse feature.
 True for VMFS3/VMFS5/NFS/NFS41, False for VMFS6.
 If value is undefined, then it should be read as supported.]]>
      </description-html>
      </property>

            <property name="vsanSparseSupported" type-id-ref="BOOLEAN"
      vmodl-name="vsanSparseSupported"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates whether the datastore supports the vsanSparse feature.]]>
      </description-html>
      </property>

            <property name="upitSupported" type-id-ref="BOOLEAN"
      vmodl-name="upitSupported"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates whether the datastore supports the upit feature.]]>
      </description-html>
      </property>

            <property name="vmdkExpandSupported" type-id-ref="BOOLEAN"
      vmodl-name="vmdkExpandSupported"
      version-id-ref="vim.version.version12"
      is-optional="true"
      >
      <description-html>
         <![CDATA[On certain datastores (e.g. 2016 PMEM datastore) VMDK expand is not supported.
 This field tells user if VMDK on this datastore can be expanded or not.
 If value is undefined, then it should be read as supported.]]>
      </description-html>
      </property>

            <property name="clusteredVmdkSupported" type-id-ref="BOOLEAN"
      vmodl-name="clusteredVmdkSupported"
      version-id-ref="vim.version.v7_0"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates whether the datastore supports clustered VMDK feature.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VmFailedUpdatingSecondaryConfig"
      type-id="vim.event.VmFailedUpdatingSecondaryConfig"
      vmodl-name="vim.event.VmFailedUpdatingSecondaryConfig"
      version-id-ref="vim.version.version5"
      base-type-id="vim.event.VmEvent"
      >
      <description-html>
         <![CDATA[This event records after a failover the new new primary failed to
  update the config of the secondary vm.]]>
      </description-html>
   </data-object>
   <data-object name="VmSecondaryEnabledEvent"
      type-id="vim.event.VmSecondaryEnabledEvent"
      vmodl-name="vim.event.VmSecondaryEnabledEvent"
      version-id-ref="vim.version.version5"
      base-type-id="vim.event.VmEvent"
      >
      <description-html>
         <![CDATA[This event records a secondary VM is enabled.]]>
      </description-html>
   </data-object>
   <data-object name="VirtualMachineCapability"
      type-id="vim.vm.Capability"
      vmodl-name="vim.vm.Capability"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object type contains information about the
 operation/capabilities of a virtual machine]]>
      </description-html>
            <property name="snapshotOperationsSupported" type-id-ref="BOOLEAN"
      vmodl-name="snapshotOperationsSupported"
      >
      <description-html>
         <![CDATA[Indicates whether or not a virtual machine supports snapshot operations.]]>
      </description-html>
      </property>

            <property name="multipleSnapshotsSupported" type-id-ref="BOOLEAN"
      vmodl-name="multipleSnapshotsSupported"
      >
      <description-html>
         <![CDATA[Indicates whether or not a virtual machine supports multiple snapshots.
 This value is not set when the virtual machine is unavailable, for instance,
 when it is being created or deleted.]]>
      </description-html>
      </property>

            <property name="snapshotConfigSupported" type-id-ref="BOOLEAN"
      vmodl-name="snapshotConfigSupported"
      >
      <description-html>
         <![CDATA[Indicates whether or not a virtual machine supports snapshot config.]]>
      </description-html>
      </property>

            <property name="poweredOffSnapshotsSupported" type-id-ref="BOOLEAN"
      vmodl-name="poweredOffSnapshotsSupported"
      >
      <description-html>
         <![CDATA[Indicates whether or not a virtual machine supports snapshot operations in
 poweredOff state. This flag doesn't affect vim.VirtualMachine.GetSnapshot,
 which is always supported.]]>
      </description-html>
      </property>

            <property name="memorySnapshotsSupported" type-id-ref="BOOLEAN"
      vmodl-name="memorySnapshotsSupported"
      >
      <description-html>
         <![CDATA[Indicates whether or not a virtual machine supports memory snapshots.]]>
      </description-html>
      </property>

            <property name="revertToSnapshotSupported" type-id-ref="BOOLEAN"
      vmodl-name="revertToSnapshotSupported"
      >
      <description-html>
         <![CDATA[Indicates whether or not a virtual machine supports reverting to a snapshot.]]>
      </description-html>
      </property>

            <property name="quiescedSnapshotsSupported" type-id-ref="BOOLEAN"
      vmodl-name="quiescedSnapshotsSupported"
      >
      <description-html>
         <![CDATA[Indicates whether or not a virtual machine supports quiesced snapshots.]]>
      </description-html>
      </property>

            <property name="disableSnapshotsSupported" type-id-ref="BOOLEAN"
      vmodl-name="disableSnapshotsSupported"
      version-id-ref="vim.version.version2"
      is-deprecated="true"
      >
      <description-html>
         <![CDATA[Indicates whether or not snapshots can be disabled.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 4.0. The value returned from the server is
  always false.]]>
      </deprecated-html>
      </property>

            <property name="lockSnapshotsSupported" type-id-ref="BOOLEAN"
      vmodl-name="lockSnapshotsSupported"
      version-id-ref="vim.version.version2"
      >
      <description-html>
         <![CDATA[Indicates whether or not the snapshot tree can be locked.]]>
      </description-html>
      </property>

            <property name="consolePreferencesSupported" type-id-ref="BOOLEAN"
      vmodl-name="consolePreferencesSupported"
      >
      <description-html>
         <![CDATA[Indicates whether console preferences can be set for this virtual machine.]]>
      </description-html>
      </property>

            <property name="cpuFeatureMaskSupported" type-id-ref="BOOLEAN"
      vmodl-name="cpuFeatureMaskSupported"
      >
      <description-html>
         <![CDATA[Indicates whether CPU feature requirements masks can be set for this
 virtual machine.  Masking for hardware version 9 and newer virtual
 machines is controlled by <a href="vim.vm.Capability.html#featureRequirementSupported">featureRequirementSupported</a>.]]>
      </description-html>
      </property>

            <property name="s1AcpiManagementSupported" type-id-ref="BOOLEAN"
      vmodl-name="s1AcpiManagementSupported"
      >
      <description-html>
         <![CDATA[Indicates whether or not a virtual machine supports ACPI S1 settings management.]]>
      </description-html>
      </property>

            <property name="settingScreenResolutionSupported" type-id-ref="BOOLEAN"
      vmodl-name="settingScreenResolutionSupported"
      >
      <description-html>
         <![CDATA[Indicates whether of not this virtual machine supports
 setting the screen resolution of the console window.
 This capability depends on the guest operating system
 configured for this virtual machine.]]>
      </description-html>
      </property>

            <property name="toolsAutoUpdateSupported" type-id-ref="BOOLEAN"
      vmodl-name="toolsAutoUpdateSupported"
      >
      <description-html>
         <![CDATA[Supports tools auto-update.]]>
      </description-html>
      </property>

            <property name="vmNpivWwnSupported" type-id-ref="BOOLEAN"
      vmodl-name="vmNpivWwnSupported"
      version-id-ref="vim.version.version2"
      >
      <description-html>
         <![CDATA[Supports virtual machine NPIV WWN.]]>
      </description-html>
      </property>

            <property name="npivWwnOnNonRdmVmSupported" type-id-ref="BOOLEAN"
      vmodl-name="npivWwnOnNonRdmVmSupported"
      version-id-ref="vim.version.version2"
      >
      <description-html>
         <![CDATA[Supports assigning NPIV WWN to virtual machines that don't have RDM disks.]]>
      </description-html>
      </property>

            <property name="vmNpivWwnDisableSupported" type-id-ref="BOOLEAN"
      vmodl-name="vmNpivWwnDisableSupported"
      version-id-ref="vim.version.version5"
      >
      <description-html>
         <![CDATA[Indicates whether the NPIV disabling operation is supported the virtual machine.]]>
      </description-html>
      </property>

            <property name="vmNpivWwnUpdateSupported" type-id-ref="BOOLEAN"
      vmodl-name="vmNpivWwnUpdateSupported"
      version-id-ref="vim.version.version5"
      >
      <description-html>
         <![CDATA[Indicates whether the update of NPIV WWNs are supported on the virtual machine.]]>
      </description-html>
      </property>

            <property name="swapPlacementSupported" type-id-ref="BOOLEAN"
      vmodl-name="swapPlacementSupported"
      version-id-ref="vim.version.version2"
      >
      <description-html>
         <![CDATA[Flag indicating whether the virtual machine has a configurable
  <a href="vim.vm.ConfigInfo.html#swapPlacement">swapPlacement</a>.]]>
      </description-html>
      </property>

            <property name="toolsSyncTimeSupported" type-id-ref="BOOLEAN"
      vmodl-name="toolsSyncTimeSupported"
      version-id-ref="vim.version.version2"
      >
      <description-html>
         <![CDATA[Indicates whether asking tools to sync time with the host is supported.]]>
      </description-html>
      </property>

            <property name="virtualMmuUsageSupported" type-id-ref="BOOLEAN"
      vmodl-name="virtualMmuUsageSupported"
      version-id-ref="vim.version.version2"
      >
      <description-html>
         <![CDATA[Indicates whether or not the use of nested page table hardware support
  can be explicitly set.]]>
      </description-html>
      </property>

            <property name="diskSharesSupported" type-id-ref="BOOLEAN"
      vmodl-name="diskSharesSupported"
      version-id-ref="vim.version.version2"
      >
      <description-html>
         <![CDATA[Indicates whether resource settings for disks can be
  applied to this virtual machine.]]>
      </description-html>
      </property>

            <property name="bootOptionsSupported" type-id-ref="BOOLEAN"
      vmodl-name="bootOptionsSupported"
      version-id-ref="vim.version.version2"
      >
      <description-html>
         <![CDATA[Indicates whether boot options can be configured
  for this virtual machine.]]>
      </description-html>
      </property>

            <property name="bootRetryOptionsSupported" type-id-ref="BOOLEAN"
      vmodl-name="bootRetryOptionsSupported"
      version-id-ref="vim.version.version6"
      >
      <description-html>
         <![CDATA[Indicates whether automatic boot retry can be
  configured for this virtual machine.]]>
      </description-html>
      </property>

            <property name="settingVideoRamSizeSupported" type-id-ref="BOOLEAN"
      vmodl-name="settingVideoRamSizeSupported"
      version-id-ref="vim.version.version2"
      >
      <description-html>
         <![CDATA[Flag indicating whether the video ram size of this virtual machine
  can be configured.]]>
      </description-html>
      </property>

            <property name="settingDisplayTopologySupported" type-id-ref="BOOLEAN"
      vmodl-name="settingDisplayTopologySupported"
      version-id-ref="vim.version.version4"
      >
      <description-html>
         <![CDATA[Indicates whether of not this virtual machine supports
 setting the display topology of the console window.
 This capability depends on the guest operating system
 configured for this virtual machine.]]>
      </description-html>
      </property>

            <property name="recordReplaySupported" type-id-ref="BOOLEAN"
      vmodl-name="recordReplaySupported"
      version-id-ref="vim.version.version5"
      is-deprecated="true"
      >
      <description-html>
         <![CDATA[Indicates whether record and replay functionality is supported on this
 virtual machine.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[as of vSphere API 6.0]]>
      </deprecated-html>
      </property>

            <property name="changeTrackingSupported" type-id-ref="BOOLEAN"
      vmodl-name="changeTrackingSupported"
      version-id-ref="vim.version.version5"
      >
      <description-html>
         <![CDATA[Indicates that change tracking is supported for virtual disks of this
 virtual machine. However, even if change tracking is supported, it might
 not be available for all disks of the virtual machine. For example,
 passthru raw disk mappings or disks backed by any Ver1BackingInfo cannot
 be tracked.]]>
      </description-html>
      </property>

            <property name="multipleCoresPerSocketSupported" type-id-ref="BOOLEAN"
      vmodl-name="multipleCoresPerSocketSupported"
      version-id-ref="vim.version.version7"
      >
      <description-html>
         <![CDATA[Indicates whether multiple virtual cores per socket is supported on this VM.]]>
      </description-html>
      </property>

            <property name="hostBasedReplicationSupported" type-id-ref="BOOLEAN"
      vmodl-name="hostBasedReplicationSupported"
      version-id-ref="vim.version.version7"
      >
      <description-html>
         <![CDATA[Indicates that host based replication is supported on this virtual
 machine. However, even if host based replication is supported,
 it might not be available for all disk types. For example, passthru
 raw disk mappings can not be replicated.]]>
      </description-html>
      </property>

            <property name="guestAutoLockSupported" type-id-ref="BOOLEAN"
      vmodl-name="guestAutoLockSupported"
      version-id-ref="vim.version.version7"
      >
      <description-html>
         <![CDATA[Indicates whether features like guest OS auto-lock and MKS connection
 controls are supported for this virtual machine.]]>
      </description-html>
      </property>

            <property name="memoryReservationLockSupported" type-id-ref="BOOLEAN"
      vmodl-name="memoryReservationLockSupported"
      version-id-ref="vim.version.version7"
      >
      <description-html>
         <![CDATA[Indicates whether
 <a href="vim.vm.ConfigInfo.html#memoryReservationLockedToMax">memoryReservationLockedToMax</a>
 may be set to true for this virtual machine.]]>
      </description-html>
      </property>

            <property name="featureRequirementSupported" type-id-ref="BOOLEAN"
      vmodl-name="featureRequirementSupported"
      version-id-ref="vim.version.version8"
      >
      <description-html>
         <![CDATA[Indicates whether featureRequirement feature is supported.]]>
      </description-html>
      </property>

            <property name="poweredOnMonitorTypeChangeSupported" type-id-ref="BOOLEAN"
      vmodl-name="poweredOnMonitorTypeChangeSupported"
      version-id-ref="vim.version.version8"
      >
      <description-html>
         <![CDATA[Indicates whether a monitor type change is supported while this virtual
 machine is in the poweredOn state.]]>
      </description-html>
      </property>

            <property name="seSparseDiskSupported" type-id-ref="BOOLEAN"
      vmodl-name="seSparseDiskSupported"
      version-id-ref="vim.version.version8"
      >
      <description-html>
         <![CDATA[Indicates whether this virtual machine supports the Flex-SE
 (space-efficient, sparse) format for virtual disks.]]>
      </description-html>
      </property>

            <property name="nestedHVSupported" type-id-ref="BOOLEAN"
      vmodl-name="nestedHVSupported"
      version-id-ref="vim.version.version8"
      >
      <description-html>
         <![CDATA[Indicates whether this virtual machine supports nested hardware-assisted
  virtualization.]]>
      </description-html>
      </property>

            <property name="vPMCSupported" type-id-ref="BOOLEAN"
      vmodl-name="vPMCSupported"
      version-id-ref="vim.version.version8"
      >
      <description-html>
         <![CDATA[Indicates whether this virtual machine supports virtualized CPU performance
 counters.]]>
      </description-html>
      </property>

            <property name="secureBootSupported" type-id-ref="BOOLEAN"
      vmodl-name="secureBootSupported"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates whether secureBoot is supported for this virtual machine.]]>
      </description-html>
      </property>

            <property name="perVmEvcSupported" type-id-ref="BOOLEAN"
      vmodl-name="perVmEvcSupported"
      version-id-ref="vim.version.version12"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates whether this virtual machine supports Per-VM EVC mode.]]>
      </description-html>
      </property>

            <property name="virtualMmuUsageIgnored" type-id-ref="BOOLEAN"
      vmodl-name="virtualMmuUsageIgnored"
      version-id-ref="vim.version.version12"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates that <a href="vim.vm.FlagInfo.html#virtualMmuUsage">virtualMmuUsage</a> is
 ignored by this virtual machine, always operating as if "on" was selected.]]>
      </description-html>
      </property>

            <property name="virtualExecUsageIgnored" type-id-ref="BOOLEAN"
      vmodl-name="virtualExecUsageIgnored"
      version-id-ref="vim.version.version12"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates that <a href="vim.vm.FlagInfo.html#virtualExecUsage">virtualExecUsage</a> is
 ignored by this virtual machine, always operating as if "hvOn" was selected.]]>
      </description-html>
      </property>

            <property name="diskOnlySnapshotOnSuspendedVMSupported" type-id-ref="BOOLEAN"
      vmodl-name="diskOnlySnapshotOnSuspendedVMSupported"
      version-id-ref="vim.version.version12"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates whether this virtual machine supports creating disk-only snapshots
 in suspended state. If this capability is not set, the snapshot of a
 virtual machine in suspended state will always include memory.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostGraphicsConfig"
      type-id="vim.host.GraphicsConfig"
      vmodl-name="vim.host.GraphicsConfig"
      version-id-ref="vim.version.version11"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Data object used for graphics configuration]]>
      </description-html>
            <property name="hostDefaultGraphicsType" type-id-ref="java.lang.String"
      vmodl-name="hostDefaultGraphicsType"
      >
      <description-html>
         <![CDATA[The host default graphics type (@see GraphicsType).  This default
  value can be overridden by specifying graphics type for an individual
  device.  If host supports a single graphics type, specifying an
  individual graphics device is optional.]]>
      </description-html>
      </property>

            <property name="sharedPassthruAssignmentPolicy" type-id-ref="java.lang.String"
      vmodl-name="sharedPassthruAssignmentPolicy"
      >
      <description-html>
         <![CDATA[The policy for assigning shared passthrough VMs to a host graphics
 device (see]]>
      </description-html>
      </property>

            <property name="deviceType" type-id-ref="vim.host.GraphicsConfig.DeviceType"
      vmodl-name="deviceType"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Graphics devices and their associated type.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.host.GraphicsConfig.GraphicsType</nested-type-id-ref>
      <nested-type-id-ref>vim.host.GraphicsConfig.SharedPassthruAssignmentPolicy</nested-type-id-ref>
      <nested-type-id-ref>vim.host.GraphicsConfig.DeviceType</nested-type-id-ref>
   </data-object>
   <data-object name="VirtualMachineConfigOption"
      type-id="vim.vm.ConfigOption"
      vmodl-name="vim.vm.ConfigOption"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This configuration data object type contains information about the execution
  environment for a virtual machine. This includes information about which features are
  supported, such as:
  <ul>
     <li> Which guest operating systems are supported.
     <li> How devices are emulated. For example, that a CD-ROM drive can be emulated
          with a file or that a serial port can be emulated with a pipe.
  </ul>
  VirtualCenter can provide a broader environment than any single physical host. This
  is a departure from traditional virtualization approaches, which rely on the host
  system to define the environment for virtual machines. This data object describes
  environment capabilities and is used by VirtualCenter to choose hosts on which to run
  virtual machines.]]>
      </description-html>
            <property name="version" type-id-ref="java.lang.String"
      vmodl-name="version"
      >
      <description-html>
         <![CDATA[The version corresponding to this configOption.]]>
      </description-html>
      </property>

            <property name="description" type-id-ref="java.lang.String"
      vmodl-name="description"
      >
      <description-html>
         <![CDATA[A description string for this configOption.]]>
      </description-html>
      </property>

            <property name="guestOSDescriptor" type-id-ref="vim.vm.GuestOsDescriptor"
      vmodl-name="guestOSDescriptor"
      is-array="true"
      >
      <description-html>
         <![CDATA[List of supported guest operating systems.
 The choice of guest operating system may limit the set of valid devices.
 For example, you cannot select Vmxnet with all guest operating systems.]]>
      </description-html>
      </property>

            <property name="guestOSDefaultIndex" type-id-ref="INT"
      vmodl-name="guestOSDefaultIndex"
      >
      <description-html>
         <![CDATA[Index into guestOsDescriptor array denoting the default guest
 operating system.]]>
      </description-html>
      </property>

            <property name="hardwareOptions" type-id-ref="vim.vm.VirtualHardwareOption"
      vmodl-name="hardwareOptions"
      >
      <description-html>
         <![CDATA[Processor, memory, and virtual device options for a virtual machine.]]>
      </description-html>
      </property>

            <property name="capabilities" type-id-ref="vim.vm.Capability"
      vmodl-name="capabilities"
      >
      <description-html>
         <![CDATA[Capabilities supported by a virtual machine.]]>
      </description-html>
      </property>

            <property name="datastore" type-id-ref="vim.vm.DatastoreOption"
      vmodl-name="datastore"
      >
      <description-html>
         <![CDATA[The datastore options for this virtual machine.]]>
      </description-html>
      </property>

            <property name="defaultDevice" type-id-ref="vim.vm.device.VirtualDevice"
      vmodl-name="defaultDevice"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The list of virtual devices that are created on a virtual machine by default.
  Clients should not create these devices.]]>
      </description-html>
      </property>

            <property name="supportedMonitorType" type-id-ref="java.lang.String"
      vmodl-name="supportedMonitorType"
      version-id-ref="vim.version.version2"
      is-array="true"
      >
      <description-html>
         <![CDATA[The monitor types supported by a host. The acceptable monitor types
  are enumerated by <a href="vim.vm.FlagInfo.MonitorType.html">VirtualMachineFlagInfoMonitorType</a>.]]>
      </description-html>
      </property>

            <property name="supportedOvfEnvironmentTransport" type-id-ref="java.lang.String"
      vmodl-name="supportedOvfEnvironmentTransport"
      version-id-ref="vim.version.version5"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Specifies the supported property transports that are
  available for the OVF environment]]>
      </description-html>
      </property>

            <property name="supportedOvfInstallTransport" type-id-ref="java.lang.String"
      vmodl-name="supportedOvfInstallTransport"
      version-id-ref="vim.version.version5"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Specifies the supported transports for the OVF
  installation phase.]]>
      </description-html>
      </property>

            <property name="propertyRelations" type-id-ref="vim.vm.PropertyRelation"
      vmodl-name="propertyRelations"
      version-id-ref="vim.version.version12"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The relations between the properties of the virtual
  machine config spec.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DasAdmissionControlEnabledEvent"
      type-id="vim.event.DasAdmissionControlEnabledEvent"
      vmodl-name="vim.event.DasAdmissionControlEnabledEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.ClusterEvent"
      >
      <description-html>
         <![CDATA[This event records when admission control checks have been enabled in a HA cluster.]]>
      </description-html>
   </data-object>
   <data-object name="HostTpmDigestInfo"
      type-id="vim.host.TpmDigestInfo"
      vmodl-name="vim.host.TpmDigestInfo"
      version-id-ref="vim.version.version5"
      base-type-id="vim.host.DigestInfo"
      >
      <description-html>
         <![CDATA[This data object type describes the digest values in the Platform
  Configuration Register (PCR) of a Trusted Platform Module (TPM) device.]]>
      </description-html>
            <property name="pcrNumber" type-id-ref="INT"
      vmodl-name="pcrNumber"
      >
      <description-html>
         <![CDATA[Index of the PCR that stores the TPM digest value.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ClusterConfigSpecEx"
      type-id="vim.cluster.ConfigSpecEx"
      vmodl-name="vim.cluster.ConfigSpecEx"
      version-id-ref="vim.version.version2"
      base-type-id="vim.ComputeResource.ConfigSpec"
      >
      <description-html>
         <![CDATA[The <a href="vim.cluster.ConfigSpecEx.html">ClusterConfigSpecEx</a> data object provides a set of update
  specifications for complete cluster configuration.
  You can configure a cluster when you create a new cluster
  (the <a href="vim.Folder.html#createClusterEx">CreateClusterEx</a> method) or when you
  reconfigure an existing cluster
  (the <a href="vim.ComputeResource.html#reconfigureEx">ReconfigureComputeResource_Task</a> method).
  <p>
  All fields are optional. If you set the <code>modify</code>
  parameter to <code>true</code> when you call
  <a href="vim.ComputeResource.html#reconfigureEx">ReconfigureComputeResource_Task</a>, an unset property has no effect
  on the existing property value in the cluster configuration on the Server.
  If you set the <code>modify</code> parameter to <code>false</code> when you
  reconfigure a cluster, the cluster configuration is reverted to the default
  values, then the new configuration values are applied.
  <p>
  Use the properties defined for this object to configure
  the following services:
  <ul>
    <li>HA (High Availability) -
        provides failover protection for virtual machines
        running in a cluster of ESX Server hosts.
        The virtual machines are located in a <a href="vim.Datastore.html">Datastore</a>, which
        provides shared storage for the cluster.
        When a failure occurs that affects a protected virtual machine,
        HA will restart the virtual machine on another host.
        When HA detects a host failure, either the host has failed or it may be
        isolated from the network. The HA agent on an isolated host will power off
        or shutdown the virtual machines running on that host so that they
        can be restarted elsewhere.
        See <a href="vim.cluster.DasVmSettings.IsolationResponse.html">ClusterDasVmSettingsIsolationResponse</a> for information
        about how a host handles network isolation.
        <p>
        When it chooses a failover host, HA selects a host that is compatible
        with the virtual machine and that can support resource allocation for
        that virtual machine so that service level guarantees remain intact.
        HA does not consider hosts that are in maintenance mode, standby mode,
        or which are disconnected from the vCenter Server. When a host powers
        on or becomes available again, HA is reenabled on that host,
        so it becomes available for failover again.
        VMware recommends that you configure hosts and virtual machines
        so that all virtual machines can run on all hosts in the cluster.
        This will maximize the chances of restarting a VM after a failure.
        <p>
        HA also restarts a virtual machine after a guest operating system failure.
        In this case, the virtual machine health monitoring service detects
        the guest failure, and HA restarts the virtual machine on the same host.
        The service monitors heartbeats from the VmTools service and optionally
        heartbeats that are generated by a third-party application monitor.
        See <a href="vim.cluster.VmToolsMonitoringSettings.html">ClusterVmToolsMonitoringSettings</a> and
        <a href="vim.cluster.DasConfigInfo.html">ClusterDasConfigInfo</a>.<a href="vim.cluster.DasConfigInfo.html#vmMonitoring">vmMonitoring</a>.
        <p>
        To enable HA for a cluster, set the
        <a href="vim.cluster.DasConfigInfo.html">ClusterDasConfigInfo</a>.<a href="vim.cluster.DasConfigInfo.html#enabled">enabled</a>
        property to <code>true</code> and the
        <a href="vim.cluster.DasConfigInfo.html">ClusterDasConfigInfo</a>.<a href="vim.cluster.DasConfigInfo.html#hostMonitoring">hostMonitoring</a>
        property to <a href="vim.cluster.DasConfigInfo.html#enabled">enabled</a>.
        (The vSphere API uses the substring "das" in object, property,
        and method names for HA.<sup>1</sup>)
    </li>
    <li>DRS (Distributed Resource Scheduling) - provides automatic initial
        virtual machine placement on any of the hosts in the cluster. DRS
        also makes automatic resource relocation and optimization decisions
        as hosts or virtual machines are added or removed from the cluster.
        You can also configure DRS for manual control, so that it only makes
        recommendations that you can review and carry out.
        <p>
        To enable DRS for a cluster, set the
       <a href="vim.cluster.DrsConfigInfo.html">ClusterDrsConfigInfo</a>.<a href="vim.cluster.DrsConfigInfo.html#enabled">enabled</a>
       property to <code>true</code>.
    </li>
    <li>DPM (Distributed Power Management) - supports optimized power
        consumption on the cluster. When virtual machines in a DRS
        cluster require fewer resources, DPM consolidates workloads
        onto fewer servers while maintaining quality of service guarantees
        and powers off the rest to reduce power consumption.
        When more resources are required, DPM brings the powered-down hosts online.
       <p>
       To enable DPM for a cluster, set the
       <a href="vim.cluster.DpmConfigInfo.html">ClusterDpmConfigInfo</a>.<a href="vim.cluster.DpmConfigInfo.html#enabled">enabled</a>
       property to <code>true</code>.
    </li>
    <li>VSAN - aggregrates hosts' local disks to present a single
        shared datastore to the cluster.
        <p/>
        To enable VSAN for a cluster, set the
        <a href="vim.vsan.cluster.ConfigInfo.html#enabled">enabled</a> property to
        <code>true</code> for <a href="vim.cluster.ConfigSpecEx.html#vsanConfig">vsanConfig</a>.
    </li>
    <li>InfraUpdateHA (Infrastructure update HA) - supports automatic
        migration of virtual machines to hosts with low risk of a
        catastrophic failure. Similar to DRS, you can also configure
        InfraUpdateHA for manual control to only makes recommendations that
        you can review and carry out. The health state of the hosts are
        propagated to HA to enable restarting of virtual machines in healthy
        hosts as possible.
        <p>
        To enable InfraUpdateHA for a cluster, set the
       <a href="vim.cluster.InfraUpdateHaConfigInfo.html">ClusterInfraUpdateHaConfigInfo</a>.<a href="vim.cluster.InfraUpdateHaConfigInfo.html#enabled">enabled</a> property to
       <code>true</code>.
    </li>
    <li>ProactiveDRS (Proactive Distributed Resources Scheduling) - supports
        virtual machine load balancing decisions that take predicted
        resource demand information into account.
        <p>
        To enable ProactiveDRS for a cluster, set the
        <a href="vim.cluster.ProactiveDrsConfigInfo.html">ClusterProactiveDrsConfigInfo</a>.<a href="vim.cluster.ProactiveDrsConfigInfo.html#enabled">enabled</a> property to
        <code>true</code>.
    </li>
  </ul>
 <p>
 The HA, DRS, and DPM services are integrated with the FT (Fault Tolerance)
 and EVC (Enhanced vMotion Compatibility) services.
 Use the <a href="vim.VirtualMachine.html#createSecondary">CreateSecondaryVM_Task</a> method to establish
 fault tolerance for a virtual machine. Use the vSphere Client to configure EVC.
 The HA, DRS, DPM, FT, and EVC services interact under
 the following circumstances.
 <ul>
   <li>To determine initial placement of a virtual machine, DRS
       checks to see if the HA admission control policy on a
       potential host supports the addition of the powered on
       virtual machine. With the default setting, DRS will not
       power on more than four FT virtual machines per host.
       You can use the configuration editor in the vSphere Client
       to set the HA advanced option <code>das.maxFtVmsPerHost</code>
       to the desired number or to zero to disable.
   <li>When a host fails, HA determines placement within
       the cluster when it restarts the virtual machines.
       If there is insufficient capacity, and DPM has put one or more
       compatible hosts into standby, HA relies on DPM to bring more
       capacity online.
   </li>
   <li>To use FT in a cluster, the cluster must be HA-enabled.</li>
   <li>You can disable HA in a cluster while there are FT virtual
       machines registered on hosts in the cluster.
       While HA is disabled, powered on FT virtual machines will continue
       to run, but HA will not restart any virtual machines after a failure.
       When HA is disabled, you cannot use the following FT operations:
       <ul>
       <li>Turn on FT (<a href="vim.VirtualMachine.html#createSecondary">CreateSecondaryVM_Task</a>)</li>
       <li>Enable FT (<a href="vim.VirtualMachine.html#enableSecondary">EnableSecondaryVM_Task</a>)</li>
       <li>Power on an FT virtual machine
           (<a href="vim.VirtualMachine.html#powerOn">PowerOnVM_Task</a>)</li>
       <li>Test failover and test secondary restart
           (<a href="vim.VirtualMachine.html#terminateFaultTolerantVM">TerminateFaultTolerantVM_Task</a>)</li>
       </ul>
   </li>
   <li>In a cluster using DRS and HA with admission control turned on
   (<a href="vim.cluster.DasConfigInfo.html">ClusterDasConfigInfo</a>.<a href="vim.cluster.DasConfigInfo.html#admissionControlEnabled">admissionControlEnabled</a>),
   the vCenter Server might not migrate virtual machines from hosts
   entering maintenance mode. This is because resources are reserved
   to maintain the failover level. You must use vMotion to manually
   migrate the virtual machines off the hosts.
   <p>
   When admission control is disabled, failover resource constraints
   are not passed on to DRS and DPM. The constraints are not enforced.
     <ul>
     <li>DRS determines virtual machine placement and status
       (maintenance mode, standby mode) regardless of the impact
       this might have on failover requirements.
     </li>
     <li>DPM powers off hosts (places them in standby mode)
         even if doing so violates failover requirements.
         If there is insufficient capacity when a failover
         occurs, DPM will attempt to bring more capacity online
         in order to correct the situation.
     </li>
     </ul>
   </li>
   <li>You must enable EVC in a cluster to enable DRS to manage FT primary
       and secondary virtual machine pairs in the cluster.
       For information about EVC clusters, see <a href="vim.EVCMode.html">EVCMode</a>.
       <p>
       If EVC is disabled, vCenter automatically creates overrides
       to disable DRS for FT primary/secondary pairs in the cluster.
       vCenter will still use DRS to place a secondary virtual machine
       when it powers on.
       Attempts to remove the overrides or to enable DRS operations
       will fail.
  </li>
   <li>EVC clusters support load balancing of powered on FT primary
       and secondary virtual machines. DRS behavior
       is governed by the overrides defined for the primary virtual
       machine. The secondary inherits DRS behavior from its primary.
       If you do not configure a DRS override for an FT virtual
       machine, DRS uses the cluster default
       (<a href="vim.cluster.DrsConfigInfo.html#defaultVmBehavior">defaultVmBehavior</a>).
   </li>
 </ul>

 <sup>1</sup>High Availability was previously called Distributed
        Availability Services.]]>
      </description-html>
            <property name="dasConfig" type-id-ref="vim.cluster.DasConfigInfo"
      vmodl-name="dasConfig"
      is-optional="true"
      >
      <description-html>
         <![CDATA[HA configuration; includes default settings for virtual machines.]]>
      </description-html>
      </property>

            <property name="dasVmConfigSpec" type-id-ref="vim.cluster.DasVmConfigSpec"
      vmodl-name="dasVmConfigSpec"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[HA configuration for individual virtual machines.
 The entries in this array override the cluster default
 settings
 (<a href="vim.cluster.DasConfigInfo.html">ClusterDasConfigInfo</a>.<a href="vim.cluster.DasConfigInfo.html#defaultVmSettings">defaultVmSettings</a>).
 You cannot specify an HA override for a secondary FT virtual
 machine. The secondary virtual machine will inherit whatever
 settings apply to its primary virtual machine. If you
 include an entry for a secondary, the reconfigure method
 will throw the fault
 <a href="vim.fault.CannotChangeHaSettingsForFtSecondary.html">CannotChangeHaSettingsForFtSecondary</a>.]]>
      </description-html>
      </property>

            <property name="drsConfig" type-id-ref="vim.cluster.DrsConfigInfo"
      vmodl-name="drsConfig"
      is-optional="true"
      >
      <description-html>
         <![CDATA[DRS configuration; includes default settings for virtual machines.]]>
      </description-html>
      </property>

            <property name="drsVmConfigSpec" type-id-ref="vim.cluster.DrsVmConfigSpec"
      vmodl-name="drsVmConfigSpec"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[DRS configuration for individual virtual machines.
 The entries in this array override the cluster default
 settings
 (<a href="vim.cluster.DrsConfigInfo.html">ClusterDrsConfigInfo</a>.<a href="vim.cluster.DrsConfigInfo.html#defaultVmBehavior">defaultVmBehavior</a>).
 You cannot specify a DRS override for a secondary FT virtual
 machine. The secondary virtual machine will inherit whatever
 setting applies to its primary virtual machine. If you
 include an entry for a secondary, the reconfigure method
 will throw the fault
 <a href="vim.fault.CannotChangeDrsBehaviorForFtSecondary.html">CannotChangeDrsBehaviorForFtSecondary</a>.]]>
      </description-html>
      </property>

            <property name="rulesSpec" type-id-ref="vim.cluster.RuleSpec"
      vmodl-name="rulesSpec"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Cluster affinity and anti-affinity rule configuration.]]>
      </description-html>
      </property>

            <property name="orchestration" type-id-ref="vim.cluster.OrchestrationInfo"
      vmodl-name="orchestration"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Cluster configuration of VM orchestration.]]>
      </description-html>
      </property>

            <property name="vmOrchestrationSpec" type-id-ref="vim.cluster.VmOrchestrationSpec"
      vmodl-name="vmOrchestrationSpec"
      version-id-ref="vim.version.version11"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of specific VM configurations that apply during cluster wide
  VM orchestration. Each entry applies to one virtual machine, and
  overrides the cluster default settings.]]>
      </description-html>
      </property>

            <property name="dpmConfig" type-id-ref="vim.cluster.DpmConfigInfo"
      vmodl-name="dpmConfig"
      is-optional="true"
      >
      <description-html>
         <![CDATA[DPM configuration; includes default settings for hosts.]]>
      </description-html>
      </property>

            <property name="dpmHostConfigSpec" type-id-ref="vim.cluster.DpmHostConfigSpec"
      vmodl-name="dpmHostConfigSpec"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[DPM configuration for individual hosts.
 The entries in this array override the cluster default
 settings
 (<a href="vim.cluster.DpmConfigInfo.html">ClusterDpmConfigInfo</a>.<a href="vim.cluster.DpmConfigInfo.html#defaultDpmBehavior">defaultDpmBehavior</a>).]]>
      </description-html>
      </property>

            <property name="vsanConfig" type-id-ref="vim.vsan.cluster.ConfigInfo"
      vmodl-name="vsanConfig"
      version-id-ref="vim.version.version9"
      is-optional="true"
      >
      <description-html>
         <![CDATA[VSAN configuration; includes default settings for hosts.]]>
      </description-html>
      </property>

            <property name="vsanHostConfigSpec" type-id-ref="vim.vsan.host.ConfigInfo"
      vmodl-name="vsanHostConfigSpec"
      version-id-ref="vim.version.version9"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[VSAN configuration for individual hosts.
 The entries in this array override the cluster default settings
 as specified in <a href="vim.vsan.cluster.ConfigInfo.html">VsanClusterConfigInfo</a>.]]>
      </description-html>
      </property>

            <property name="groupSpec" type-id-ref="vim.cluster.GroupSpec"
      vmodl-name="groupSpec"
      version-id-ref="vim.version.version6"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Cluster-wide group configuration.
 The array contains one or more group specification objects.
 A group specification object contains a virtual machine group
 (<a href="vim.cluster.VmGroup.html">ClusterVmGroup</a>) or a host group (<a href="vim.cluster.HostGroup.html">ClusterHostGroup</a>).
 Groups can be related; see <a href="vim.cluster.VmHostRuleInfo.html">ClusterVmHostRuleInfo</a>.]]>
      </description-html>
      </property>

            <property name="infraUpdateHaConfig" type-id-ref="vim.cluster.InfraUpdateHaConfigInfo"
      vmodl-name="infraUpdateHaConfig"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[InfraUpdateHA configuration.]]>
      </description-html>
      </property>

            <property name="proactiveDrsConfig" type-id-ref="vim.cluster.ProactiveDrsConfigInfo"
      vmodl-name="proactiveDrsConfig"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[ProactiveDrs configuration.]]>
      </description-html>
      </property>

            <property name="inHciWorkflow" type-id-ref="BOOLEAN"
      vmodl-name="inHciWorkflow"
      version-id-ref="vim.version.version13"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Flag to place the cluster in the HCI workflow during cluster creation.
 This flag is specified only at the time of cluster creation.
 A cluster cannot be reconfigured to place it in the HCI workflow.]]>
      </description-html>
      </property>

            <property name="cryptoConfig" type-id-ref="vim.cluster.CryptoConfigInfo"
      vmodl-name="cryptoConfig"
      version-id-ref="vim.version.v7_0"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Cluster-wide configuration of encryption mode.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ScheduledTaskStartedEvent"
      type-id="vim.event.ScheduledTaskStartedEvent"
      vmodl-name="vim.event.ScheduledTaskStartedEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.ScheduledTaskEvent"
      >
      <description-html>
         <![CDATA[This event records when a scheduled task started.]]>
      </description-html>
   </data-object>
   <data-object name="ScheduledTaskEventArgument"
      type-id="vim.event.ScheduledTaskEventArgument"
      vmodl-name="vim.event.ScheduledTaskEventArgument"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.EntityEventArgument"
      >
      <description-html>
         <![CDATA[The event argument is a scheduled task object.]]>
      </description-html>
            <property name="scheduledTask" type-id-ref="vim.scheduler.ScheduledTask"
      vmodl-name="scheduledTask"
      >
      <description-html>
         <![CDATA[The scheduled task object.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ClusterComputeResourceDvsProfile"
      type-id="vim.ClusterComputeResource.DvsProfile"
      vmodl-name="vim.ClusterComputeResource.DvsProfile"
      enclosing-type-id-ref="vim.ClusterComputeResource"
      version-id-ref="vim.version.version13"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Describes DVS related information to be configured by calling
 <a href="vim.ClusterComputeResource.html#configureHCI">ConfigureHCI_Task</a> method.
 Consists of name of the DVS, the physical adapters to be attached to it
 and the list of dvportgroups to be created on this DVS.]]>
      </description-html>
            <property name="dvsName" type-id-ref="java.lang.String"
      vmodl-name="dvsName"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Name of the new <a href="vim.DistributedVirtualSwitch.html">DistributedVirtualSwitch</a>.]]>
      </description-html>
      </property>

            <property name="dvSwitch" type-id-ref="vim.DistributedVirtualSwitch"
      vmodl-name="dvSwitch"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Managed object reference to an existing <a href="vim.DistributedVirtualSwitch.html">DistributedVirtualSwitch</a>.]]>
      </description-html>
      </property>

            <property name="pnicDevices" type-id-ref="java.lang.String"
      vmodl-name="pnicDevices"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of physical Nics to be attached to the DVS.]]>
      </description-html>
      </property>

            <property name="dvPortgroupMapping" type-id-ref="vim.ClusterComputeResource.DvsProfile.DVPortgroupSpecToServiceMapping"
      vmodl-name="dvPortgroupMapping"
      is-array="true"
      is-optional="true"
      >
      </property>

      <nested-type-id-ref>vim.ClusterComputeResource.DvsProfile.DVPortgroupSpecToServiceMapping</nested-type-id-ref>
   </data-object>
   <data-object name="SessionManagerVmomiServiceRequestSpec"
      type-id="vim.SessionManager.VmomiServiceRequestSpec"
      vmodl-name="vim.SessionManager.VmomiServiceRequestSpec"
      enclosing-type-id-ref="vim.SessionManager"
      version-id-ref="vim.version.version8"
      base-type-id="vim.SessionManager.ServiceRequestSpec"
      >
      <description-html>
         <![CDATA[This data object type describes a request to invoke a specific method
  in a VMOMI service.

  It currently only supports {link vim.SessionManager#cloneSession} method.
  The GenericServiceTicket.id returned from
  <a href="vim.SessionManager.html#acquireGenericServiceTicket">AcquireGenericServiceTicket</a> for this request
  can be use for <a href="vim.SessionManager.html#cloneSession">CloneSession</a> to clone a session]]>
      </description-html>
            <property name="method" type-id-ref="vmodl.MethodName"
      vmodl-name="method"
      >
      <description-html>
         <![CDATA[Name of the method identified by this request spec]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ScheduledTaskEmailCompletedEvent"
      type-id="vim.event.ScheduledTaskEmailCompletedEvent"
      vmodl-name="vim.event.ScheduledTaskEmailCompletedEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.ScheduledTaskEvent"
      >
      <description-html>
         <![CDATA[This event records the sending of a notification via email for a scheduled task.]]>
      </description-html>
            <property name="to" type-id-ref="java.lang.String"
      vmodl-name="to"
      >
      <description-html>
         <![CDATA[The destination email address.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DatacenterBasicConnectInfo"
      type-id="vim.Datacenter.BasicConnectInfo"
      vmodl-name="vim.Datacenter.BasicConnectInfo"
      enclosing-type-id-ref="vim.Datacenter"
      version-id-ref="vim.version.version13"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[BasicConnectInfo consists of essential information about the host. This
  is a subset of <a href="vim.host.ConnectInfo.html">HostConnectInfo</a> and contains the information
  which is relevant when it comes to dealing with a set of hosts.]]>
      </description-html>
            <property name="hostname" type-id-ref="java.lang.String"
      vmodl-name="hostname"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Target host.]]>
      </description-html>
      </property>

            <property name="error" type-id-ref="vmodl.LocalizedMethodFault"
      vmodl-name="error"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Error encountered while querying the host. See
 <a href="vim.Datacenter.html#queryConnectionInfo">QueryConnectionInfo</a> for the list of exceptions which can
 be represented here.]]>
      </description-html>
      </property>

            <property name="serverIp" type-id-ref="java.lang.String"
      vmodl-name="serverIp"
      is-optional="true"
      >
      <description-html>
         <![CDATA[IP address of the VirtualCenter already managing this host, if any.]]>
      </description-html>
      </property>

            <property name="numVm" type-id-ref="INT"
      vmodl-name="numVm"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Specifies the number of VMs on the host.]]>
      </description-html>
      </property>

            <property name="numPoweredOnVm" type-id-ref="INT"
      vmodl-name="numPoweredOnVm"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Specifies the number of powered-on VMs on the host.]]>
      </description-html>
      </property>

            <property name="hostProductInfo" type-id-ref="vim.AboutInfo"
      vmodl-name="hostProductInfo"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Information about the software running on the host.]]>
      </description-html>
      </property>

            <property name="hardwareVendor" type-id-ref="java.lang.String"
      vmodl-name="hardwareVendor"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Hardware vendor identification.]]>
      </description-html>
      </property>

            <property name="hardwareModel" type-id-ref="java.lang.String"
      vmodl-name="hardwareModel"
      is-optional="true"
      >
      <description-html>
         <![CDATA[System model identification.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ResourcePoolCreatedEvent"
      type-id="vim.event.ResourcePoolCreatedEvent"
      vmodl-name="vim.event.ResourcePoolCreatedEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.ResourcePoolEvent"
      >
      <description-html>
         <![CDATA[This event records when a new resource pool is created.]]>
      </description-html>
            <property name="parent" type-id-ref="vim.event.ResourcePoolEventArgument"
      vmodl-name="parent"
      >
      <description-html>
         <![CDATA[The parent resource pool that new resource pool belongs to.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="PhysicalNicNameHint"
      type-id="vim.host.PhysicalNic.NetworkHint.NamedNetwork"
      vmodl-name="vim.host.PhysicalNic.NetworkHint.NamedNetwork"
      enclosing-type-id-ref="vim.host.PhysicalNic.NetworkHint"
      version-id-ref="vim.version.version1"
      base-type-id="vim.host.PhysicalNic.NetworkHint.HintElement"
      >
      <description-html>
         <![CDATA[This data object type describes a network in network hint where
  the network describes the color, label, or the name of the
  network.]]>
      </description-html>
            <property name="network" type-id-ref="java.lang.String"
      vmodl-name="network"
      >
      <description-html>
         <![CDATA[The network name.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ProfilePolicyMetadata"
      type-id="vim.profile.PolicyMetadata"
      vmodl-name="vim.profile.PolicyMetadata"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The <a href="vim.profile.PolicyMetadata.html">ProfilePolicyMetadata</a> data object represents the metadata information
 for a <a href="vim.profile.Policy.html">ProfilePolicy</a>.]]>
      </description-html>
            <property name="id" type-id-ref="vim.ExtendedElementDescription"
      vmodl-name="id"
      >
      <description-html>
         <![CDATA[Identifier for the policy.]]>
      </description-html>
      </property>

            <property name="possibleOption" type-id-ref="vim.profile.PolicyOptionMetadata"
      vmodl-name="possibleOption"
      is-array="true"
      >
      <description-html>
         <![CDATA[Possible policy options that can be set for a policy of the
  given kind. <a href="vim.profile.host.HostProfile.html">HostProfile</a>s and subprofiles
  will contain selected policy options from this list. See
  <a href="vim.profile.PolicyOption.html">PolicyOption</a>.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="NvdimmPMemNamespaceCreateSpec"
      type-id="vim.host.NvdimmSystem.PMemNamespaceCreateSpec"
      vmodl-name="vim.host.NvdimmSystem.PMemNamespaceCreateSpec"
      enclosing-type-id-ref="vim.host.NvdimmSystem"
      version-id-ref="vim.version.version13"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Arguments for creating a persistent memory mode namespace]]>
      </description-html>
            <property name="friendlyName" type-id-ref="java.lang.String"
      vmodl-name="friendlyName"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Friendly name of the namespace to be created.
 A friendly name can be provided by user to associate a name to
 the created namespace, but such a name is not mandatory and is
 empty string by default.]]>
      </description-html>
      </property>

            <property name="size" type-id-ref="LONG"
      vmodl-name="size"
      >
      <description-html>
         <![CDATA[Size of the namespace in bytes.]]>
      </description-html>
      </property>

            <property name="interleavesetID" type-id-ref="INT"
      vmodl-name="interleavesetID"
      >
      <description-html>
         <![CDATA[The interleave set ID of the namespace.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ClusterDasDataSummary"
      type-id="vim.cluster.DasDataSummary"
      vmodl-name="vim.cluster.DasDataSummary"
      version-id-ref="vim.version.version7"
      base-type-id="vim.cluster.DasData"
      >
      <description-html>
         <![CDATA[This class contains the summary of the data that DAS needs/uses.
 The actual data is available in <a href="vim.cluster.DasDataDetails.html">ClusterDasDataDetails</a> and can be retrieved
 using the <a href="vim.ClusterComputeResource.html#retrieveDasData">RetrieveDasData</a> method.

 This class is meant for VMware internal use only.]]>
      </description-html>
            <property name="hostListVersion" type-id-ref="LONG"
      vmodl-name="hostListVersion"
      >
      <description-html>
         <![CDATA[The version corresponding to the hostList]]>
      </description-html>
      </property>

            <property name="clusterConfigVersion" type-id-ref="LONG"
      vmodl-name="clusterConfigVersion"
      >
      <description-html>
         <![CDATA[The version corresponding to the clusterConfig]]>
      </description-html>
      </property>

            <property name="compatListVersion" type-id-ref="LONG"
      vmodl-name="compatListVersion"
      >
      <description-html>
         <![CDATA[The version corresponding to the compatList]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualMachineFileLayoutEx"
      type-id="vim.vm.FileLayoutEx"
      vmodl-name="vim.vm.FileLayoutEx"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Detailed description of files that make up a virtual machine on disk. The
  file layout is broken into 4 major sections:
  <ul>
  <li>Configuration: Files stored in the configuration directory
  <li>Log: Files stored in the log directory
  <li>Disk: Files stored relative to a disk configuration file
  <li>Snapshot: Stored in the snapshot directory
  </ul>
  Often the same directory is used for configuration, log, disk and
  snapshots.]]>
      </description-html>
            <property name="file" type-id-ref="vim.vm.FileLayoutEx.FileInfo"
      vmodl-name="file"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Information about all the files that constitute the virtual machine
  including configuration files, disks, swap file, suspend file, log files,
  core files, memory file etc. <a href="vim.vm.FileLayoutEx.FileType.html">VirtualMachineFileLayoutExFileType</a> lists the
  different file-types that make a virtual machine.]]>
      </description-html>
      </property>

            <property name="disk" type-id-ref="vim.vm.FileLayoutEx.DiskLayout"
      vmodl-name="disk"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Layout of each virtual disk attached to the virtual machine.
  <p>
  For a virtual machine with snaphots, this property gives only those disks
  that are attached to it at the current point of running.]]>
      </description-html>
      </property>

            <property name="snapshot" type-id-ref="vim.vm.FileLayoutEx.SnapshotLayout"
      vmodl-name="snapshot"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Layout of each snapshot of the virtual machine.]]>
      </description-html>
      </property>

            <property name="timestamp" type-id-ref="vmodl.DateTime"
      vmodl-name="timestamp"
      >
      <description-html>
         <![CDATA[Time when values in this structure were last updated.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.vm.FileLayoutEx.FileType</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.FileLayoutEx.FileInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.FileLayoutEx.DiskUnit</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.FileLayoutEx.DiskLayout</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.FileLayoutEx.SnapshotLayout</nested-type-id-ref>
   </data-object>
   <data-object name="HostAssignableHardwareBinding"
      type-id="vim.host.AssignableHardwareBinding"
      vmodl-name="vim.host.AssignableHardwareBinding"
      version-id-ref="vim.version.v7_0"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Data object indicating a device instance has been allocated to a VM.]]>
      </description-html>
            <property name="instanceId" type-id-ref="java.lang.String"
      vmodl-name="instanceId"
      >
      <description-html>
         <![CDATA[Instance ID of assigned device.]]>
      </description-html>
      </property>

            <property name="vm" type-id-ref="vim.VirtualMachine"
      vmodl-name="vm"
      >
      <description-html>
         <![CDATA[Virtual machine to which the device is assigned.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostHardwareInfo"
      type-id="vim.host.HardwareInfo"
      vmodl-name="vim.host.HardwareInfo"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The HardwareInfo data object type describes the hardware
  configuration of the host.]]>
      </description-html>
            <property name="systemInfo" type-id-ref="vim.host.SystemInfo"
      vmodl-name="systemInfo"
      >
      <description-html>
         <![CDATA[Information about the system as a whole.]]>
      </description-html>
      </property>

            <property name="cpuPowerManagementInfo" type-id-ref="vim.host.CpuPowerManagementInfo"
      vmodl-name="cpuPowerManagementInfo"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      </property>

            <property name="cpuInfo" type-id-ref="vim.host.CpuInfo"
      vmodl-name="cpuInfo"
      >
      <description-html>
         <![CDATA[Overall CPU information.]]>
      </description-html>
      </property>

            <property name="cpuPkg" type-id-ref="vim.host.CpuPackage"
      vmodl-name="cpuPkg"
      is-array="true"
      >
      <description-html>
         <![CDATA[Information about each of the physical CPU packages on the host.]]>
      </description-html>
      </property>

            <property name="memorySize" type-id-ref="LONG"
      vmodl-name="memorySize"
      >
      <description-html>
         <![CDATA[Total amount of physical memory on the host in bytes.]]>
      </description-html>
      </property>

            <property name="numaInfo" type-id-ref="vim.host.NumaInfo"
      vmodl-name="numaInfo"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Information about the NUMA (non-uniform memory access).]]>
      </description-html>
      </property>

            <property name="smcPresent" type-id-ref="BOOLEAN"
      vmodl-name="smcPresent"
      version-id-ref="vim.version.version7"
      >
      <description-html>
         <![CDATA[Presence of System Management Controller, indicates the host is
 Apple hardware, and thus capable of running Mac OS guest as VM.]]>
      </description-html>
      </property>

            <property name="pciDevice" type-id-ref="vim.host.PciDevice"
      vmodl-name="pciDevice"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The list of Peripheral Component Interconnect (PCI) devices
  available on this host.]]>
      </description-html>
      </property>

            <property name="cpuFeature" type-id-ref="vim.host.CpuIdInfo"
      vmodl-name="cpuFeature"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[CPU feature set that is supported by the hardware. This is the
  intersection of the feature sets supported by the individual CPU
  packages. This feature set is modified by the
  <a href="vim.host.Capability.html#supportedCpuFeature">supportedCpuFeature</a>
  array in the host capabilities to obtain the feature set supported by
  the virtualization platform.]]>
      </description-html>
      </property>

            <property name="biosInfo" type-id-ref="vim.host.BIOSInfo"
      vmodl-name="biosInfo"
      version-id-ref="vim.version.version2"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Information about the system BIOS]]>
      </description-html>
      </property>

            <property name="reliableMemoryInfo" type-id-ref="vim.host.ReliableMemoryInfo"
      vmodl-name="reliableMemoryInfo"
      version-id-ref="vim.version.version9"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Information about reliable memory.]]>
      </description-html>
      </property>

            <property name="persistentMemoryInfo" type-id-ref="vim.host.PersistentMemoryInfo"
      vmodl-name="persistentMemoryInfo"
      version-id-ref="vim.version.version12"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Persistent memory configuration on this host.]]>
      </description-html>
      </property>

            <property name="sgxInfo" type-id-ref="vim.host.SgxInfo"
      vmodl-name="sgxInfo"
      version-id-ref="vim.version.v7_0"
      is-optional="true"
      >
      <description-html>
         <![CDATA[SGX configuration on this host.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualPointingDeviceDeviceBackingInfo"
      type-id="vim.vm.device.VirtualPointingDevice.DeviceBackingInfo"
      vmodl-name="vim.vm.device.VirtualPointingDevice.DeviceBackingInfo"
      enclosing-type-id-ref="vim.vm.device.VirtualPointingDevice"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.device.VirtualDevice.DeviceBackingInfo"
      >
      <description-html>
         <![CDATA[The VirtualPointingDevice.DeviceBackingInfo provides information about
  the physical mouse backing the VirtualPointingDevice data object
  type.]]>
      </description-html>
            <property name="hostPointingDevice" type-id-ref="java.lang.String"
      vmodl-name="hostPointingDevice"
      >
      <description-html>
         <![CDATA[This optional property defines the mouse type (two-button,
  three-button, and so on).  The mouse type
  determines how the user interacts with the host mouse.
  The valid values are specified in the
  <a href="vim.vm.device.VirtualPointingDeviceOption.DeviceBackingOption.HostPointingDeviceChoice.html">VirtualPointingDeviceHostChoice</a> list.
  <p>
  <b>Note</b>:  The value specified by this property must be
  one of the supported types listed in the hostPointingDevices.value
  array in the <a href="vim.vm.device.VirtualPointingDeviceOption.html">VirtualPointingDeviceOption</a> data object type.  If this property is
  not set, then the property defaults to the
  hostPointingDevices.defaultIndex property in the same data
  object type.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VmMacAssignedEvent"
      type-id="vim.event.VmMacAssignedEvent"
      vmodl-name="vim.event.VmMacAssignedEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.VmEvent"
      >
      <description-html>
         <![CDATA[This event records the assignment of a new MAC address
  to a virtual network adapter.]]>
      </description-html>
            <property name="adapter" type-id-ref="java.lang.String"
      vmodl-name="adapter"
      >
      <description-html>
         <![CDATA[The name of the virtual adapter.]]>
      </description-html>
      </property>

            <property name="mac" type-id-ref="java.lang.String"
      vmodl-name="mac"
      >
      <description-html>
         <![CDATA[The new MAC address.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualDeviceURIBackingInfo"
      type-id="vim.vm.device.VirtualDevice.URIBackingInfo"
      vmodl-name="vim.vm.device.VirtualDevice.URIBackingInfo"
      enclosing-type-id-ref="vim.vm.device.VirtualDevice"
      version-id-ref="vim.version.version6"
      base-type-id="vim.vm.device.VirtualDevice.BackingInfo"
      >
      <description-html>
         <![CDATA[The <code><a href="vim.vm.device.VirtualDevice.URIBackingInfo.html">VirtualDeviceURIBackingInfo</a></code> data object type
  defines information for using a network socket as backing for a virtual device.]]>
      </description-html>
            <property name="serviceURI" type-id-ref="java.lang.String"
      vmodl-name="serviceURI"
      >
      <description-html>
         <![CDATA[Identifies the local host or a system on the network,
  depending on the value of <code><a href="vim.vm.device.VirtualDevice.URIBackingInfo.html#direction">direction</a></code>.
  <ul>
    <li>If you use the virtual machine as a server, the URI identifies
        the host on which the virtual machine runs. In this case,
        the host name part of the URI should be empty, or it should
        specify the address of the local host.
    <li>If you use the virtual machine as a client, the URI identifies
        the remote system on the network.
  </ul>]]>
      </description-html>
      </property>

            <property name="direction" type-id-ref="java.lang.String"
      vmodl-name="direction"
      >
      <description-html>
         <![CDATA[The direction of the connection.  For possible values see
  <a href="vim.vm.device.VirtualDeviceOption.URIBackingOption.Direction.html">VirtualDeviceURIBackingOptionDirection</a>]]>
      </description-html>
      </property>

            <property name="proxyURI" type-id-ref="java.lang.String"
      vmodl-name="proxyURI"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Identifies a proxy service that provides network access to the
  <code><a href="vim.vm.device.VirtualDevice.URIBackingInfo.html#serviceURI">serviceURI</a></code>.
  If you specify a proxy URI, the virtual machine initiates
  a connection with the proxy service and forwards the
  <a href="vim.vm.device.VirtualDevice.URIBackingInfo.html#serviceURI">serviceURI</a> and <a href="vim.vm.device.VirtualDevice.URIBackingInfo.html#direction">direction</a> to the proxy.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostVirtualNicManagerInfo"
      type-id="vim.host.VirtualNicManagerInfo"
      vmodl-name="vim.host.VirtualNicManagerInfo"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object type describes VirtualNic host
  configuration data objects.]]>
      </description-html>
            <property name="netConfig" type-id-ref="vim.host.VirtualNicManager.NetConfig"
      vmodl-name="netConfig"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of VirtualNicManager network configuration.<br>See <a href="vim.host.VirtualNicManager.NetConfig.html">VirtualNicManagerNetConfig</a><br>]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="UserProfile"
      type-id="vim.profile.host.UserProfile"
      vmodl-name="vim.profile.host.UserProfile"
      version-id-ref="vim.version.version5"
      base-type-id="vim.profile.ApplyProfile"
      >
      <description-html>
         <![CDATA[The <a href="vim.profile.host.UserProfile.html">UserProfile</a> data object represents a user.
 Use the <a href="vim.profile.ApplyProfile.html#policy">policy</a> list for access to configuration data
 for the user profile. Use the <a href="vim.profile.ApplyProfile.html#property">property</a> list for access
 to subprofile configuration data, if any.]]>
      </description-html>
            <property name="key" type-id-ref="java.lang.String"
      vmodl-name="key"
      >
      <description-html>
         <![CDATA[Linkable identifier.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ProfileReferenceHostChangedEvent"
      type-id="vim.event.ProfileReferenceHostChangedEvent"
      vmodl-name="vim.event.ProfileReferenceHostChangedEvent"
      version-id-ref="vim.version.version5"
      base-type-id="vim.event.ProfileEvent"
      >
      <description-html>
         <![CDATA[This event records that the reference host associated with this profile has changed]]>
      </description-html>
            <property name="referenceHost" type-id-ref="vim.HostSystem"
      vmodl-name="referenceHost"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The newly associated reference host with this profile]]>
      </description-html>
      </property>

            <property name="referenceHostName" type-id-ref="java.lang.String"
      vmodl-name="referenceHostName"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The newly associated reference host name]]>
      </description-html>
      </property>

            <property name="prevReferenceHostName" type-id-ref="java.lang.String"
      vmodl-name="prevReferenceHostName"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The previous reference host name]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="OvfCreateImportSpecParams"
      type-id="vim.OvfManager.CreateImportSpecParams"
      vmodl-name="vim.OvfManager.CreateImportSpecParams"
      enclosing-type-id-ref="vim.OvfManager"
      version-id-ref="vim.version.version5"
      base-type-id="vim.OvfManager.CommonParams"
      >
      <description-html>
         <![CDATA[Parameters for deploying an OVF.]]>
      </description-html>
            <property name="entityName" type-id-ref="java.lang.String"
      vmodl-name="entityName"
      >
      <description-html>
         <![CDATA[The name to set on the entity (more precisely, on the top-level vApp or
 VM of the entity) as it appears in VI. If empty, the product name is obtained
 from the ProductSection of the descriptor. If that name is not specified, the
 ovf:id of the top-level entity is used.]]>
      </description-html>
      </property>

            <property name="hostSystem" type-id-ref="vim.HostSystem"
      vmodl-name="hostSystem"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The host to validate the OVF descriptor against, if it cannot be deduced from
 the resource pool.
 <p>
 The privilege System.Read is required on the host.]]>
      </description-html>
      </property>

            <property name="networkMapping" type-id-ref="vim.OvfManager.NetworkMapping"
      vmodl-name="networkMapping"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The mapping of network identifiers from the descriptor to networks in the VI
 infrastructure.
 <p>
 The privilege Network.Assign is required on all networks in the list.]]>
      </description-html>
      </property>

            <property name="ipAllocationPolicy" type-id-ref="java.lang.String"
      vmodl-name="ipAllocationPolicy"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The IP allocation policy chosen by the caller.
 <p>
 See <a href="vim.vApp.IPAssignmentInfo.html">VAppIPAssignmentInfo</a>.]]>
      </description-html>
      </property>

            <property name="ipProtocol" type-id-ref="java.lang.String"
      vmodl-name="ipProtocol"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The IP protocol chosen by the caller.
 <p>
 See <a href="vim.vApp.IPAssignmentInfo.html">VAppIPAssignmentInfo</a>.]]>
      </description-html>
      </property>

            <property name="propertyMapping" type-id-ref="vim.KeyValue"
      vmodl-name="propertyMapping"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The assignment of values to the properties found in the descriptor. If no value
 is specified for an option, the default value from the descriptor is used.]]>
      </description-html>
      </property>

            <property name="resourceMapping" type-id-ref="vim.OvfManager.ResourceMap"
      vmodl-name="resourceMapping"
      version-id-ref="vim.version.version6"
      is-deprecated="true"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The resource configuration for the created vApp. This can be used to distribute
  a vApp across  multiple resource pools (and create linked children).]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 5.1.]]>
      </deprecated-html>
      </property>

            <property name="diskProvisioning" type-id-ref="java.lang.String"
      vmodl-name="diskProvisioning"
      version-id-ref="vim.version.version6"
      is-optional="true"
      >
      <description-html>
         <![CDATA[An optional disk provisioning. If set, all the disks in the deployed OVF will
 have get the same specified disk type (e.g., thin provisioned).

  The valide values for disk provisioning are:
  <ul>
  <li>vim.OvfManager.CreateImportSpecParams.DiskProvisioningType#monolithicSparse
  <li>vim.OvfManager.CreateImportSpecParams.DiskProvisioningType#monolithicFlat
  <li>vim.OvfManager.CreateImportSpecParams.DiskProvisioningType#twoGbMaxExtentSparse
  <li>vim.OvfManager.CreateImportSpecParams.DiskProvisioningType#twoGbMaxExtentFlat
  <li>vim.OvfManager.CreateImportSpecParams.DiskProvisioningType#thin
  <li>vim.OvfManager.CreateImportSpecParams.DiskProvisioningType#thick
  <li>vim.OvfManager.CreateImportSpecParams.DiskProvisioningType#sparse
  <li>vim.OvfManager.CreateImportSpecParams.DiskProvisioningType#flat
  <li>vim.OvfManager.CreateImportSpecParams.DiskProvisioningType#seSparse
  </ul><br>See <a href="vim.vm.device.VirtualDiskOption.DiskMode.html">VirtualDiskMode</a><br>]]>
      </description-html>
      </property>

            <property name="instantiationOst" type-id-ref="vim.OvfConsumer.OstNode"
      vmodl-name="instantiationOst"
      version-id-ref="vim.version.version7"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The instantiation OST to configure OVF consumers. This is created by the client
 from the annotated OST. See <a href="vim.OvfConsumer.html">OvfConsumer</a> for details.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.OvfManager.CreateImportSpecParams.DiskProvisioningType</nested-type-id-ref>
   </data-object>
   <data-object name="ClusterProfileCreateSpec"
      type-id="vim.profile.cluster.ClusterProfile.CreateSpec"
      vmodl-name="vim.profile.cluster.ClusterProfile.CreateSpec"
      enclosing-type-id-ref="vim.profile.cluster.ClusterProfile"
      version-id-ref="vim.version.version5"
      base-type-id="vim.profile.Profile.CreateSpec"
      >
      <description-html>
         <![CDATA[Base class for Cluster CreateSpecs]]>
      </description-html>
   </data-object>
   <data-object name="HostFeatureMask"
      type-id="vim.host.FeatureMask"
      vmodl-name="vim.host.FeatureMask"
      version-id-ref="vim.version.version8"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[A mask that is applied to a host feature capability.]]>
      </description-html>
            <property name="key" type-id-ref="java.lang.String"
      vmodl-name="key"
      >
      <description-html>
         <![CDATA[Accessor name to the feature mask.]]>
      </description-html>
      </property>

            <property name="featureName" type-id-ref="java.lang.String"
      vmodl-name="featureName"
      >
      <description-html>
         <![CDATA[Name of the feature Identical to the key.]]>
      </description-html>
      </property>

            <property name="value" type-id-ref="java.lang.String"
      vmodl-name="value"
      >
      <description-html>
         <![CDATA[Opaque value to change the host feature capability to.
 Masking operation is contained in the value.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VmDeployedEvent"
      type-id="vim.event.VmDeployedEvent"
      vmodl-name="vim.event.VmDeployedEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.VmEvent"
      >
      <description-html>
         <![CDATA[This event records the completion of a virtual machine deployment operation.]]>
      </description-html>
            <property name="srcTemplate" type-id-ref="vim.event.VmEventArgument"
      vmodl-name="srcTemplate"
      >
      <description-html>
         <![CDATA[The template object from which the virtual machine has been deployed.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualPCIPassthroughDeviceBackingInfo"
      type-id="vim.vm.device.VirtualPCIPassthrough.DeviceBackingInfo"
      vmodl-name="vim.vm.device.VirtualPCIPassthrough.DeviceBackingInfo"
      enclosing-type-id-ref="vim.vm.device.VirtualPCIPassthrough"
      version-id-ref="vim.version.version5"
      base-type-id="vim.vm.device.VirtualDevice.DeviceBackingInfo"
      >
      <description-html>
         <![CDATA[The VirtualPCIPassthrough.DeviceBackingInfo data object type
  contains information about the backing that maps the
  virtual device onto a physical device.]]>
      </description-html>
            <property name="id" type-id-ref="java.lang.String"
      vmodl-name="id"
      >
      <description-html>
         <![CDATA[The name ID of this PCI, composed of "bus:slot.function".]]>
      </description-html>
      </property>

            <property name="deviceId" type-id-ref="java.lang.String"
      vmodl-name="deviceId"
      >
      <description-html>
         <![CDATA[The device ID of this PCI. You must use the device ID retrieved
 from the vSphere host (<a href="vim.host.PciDevice.html">HostPciDevice</a>.deviceId), converted
 as is to a string.]]>
      </description-html>
      </property>

            <property name="systemId" type-id-ref="java.lang.String"
      vmodl-name="systemId"
      >
      <description-html>
         <![CDATA[The ID of the system the PCI device is attached to.]]>
      </description-html>
      </property>

            <property name="vendorId" type-id-ref="SHORT"
      vmodl-name="vendorId"
      >
      <description-html>
         <![CDATA[The vendor ID for this PCI device. You must use the vendor ID retrieved
 from the vSphere host (<a href="vim.host.PciDevice.html">HostPciDevice</a>.vendorId).]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualDiskPartitionedRawDiskVer2BackingOption"
      type-id="vim.vm.device.VirtualDiskOption.PartitionedRawDiskVer2BackingOption"
      vmodl-name="vim.vm.device.VirtualDiskOption.PartitionedRawDiskVer2BackingOption"
      enclosing-type-id-ref="vim.vm.device.VirtualDiskOption"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.device.VirtualDiskOption.RawDiskVer2BackingOption"
      >
      <description-html>
         <![CDATA[The VirtualDiskOption.PartitionedRawDiskVer2BackingOption object
  type contains the available options when backing a virtual disk
  using one or more partitions on a physical disk device. This
  backing is supported in VMware Server.]]>
      </description-html>
   </data-object>
   <data-object name="MigrationWarningEvent"
      type-id="vim.event.MigrationWarningEvent"
      vmodl-name="vim.event.MigrationWarningEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.MigrationEvent"
      >
      <description-html>
         <![CDATA[A migration warning.]]>
      </description-html>
   </data-object>
   <data-object name="FaultToleranceConfigSpec"
      type-id="vim.vm.FaultToleranceConfigSpec"
      vmodl-name="vim.vm.FaultToleranceConfigSpec"
      version-id-ref="vim.version.version10"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[FaultToleranceConfigSpec contains information about the metadata file
 and vmdk files for a fault tolerant VM pair.]]>
      </description-html>
            <property name="metaDataPath" type-id-ref="vim.vm.FaultToleranceMetaSpec"
      vmodl-name="metaDataPath"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Metadata file information]]>
      </description-html>
      </property>

            <property name="secondaryVmSpec" type-id-ref="vim.vm.FaultToleranceVMConfigSpec"
      vmodl-name="secondaryVmSpec"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Placement information for secondary]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ReplicationVmProgressInfo"
      type-id="vim.HbrManager.ReplicationVmInfo.ProgressInfo"
      vmodl-name="vim.HbrManager.ReplicationVmInfo.ProgressInfo"
      enclosing-type-id-ref="vim.HbrManager.ReplicationVmInfo"
      version-id-ref="vim.version.version7"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[A set of statistics related to the progress of the current
 operation (full sync or lwd).]]>
      </description-html>
            <property name="progress" type-id-ref="INT"
      vmodl-name="progress"
      >
      <description-html>
         <![CDATA[An estimation of the operation progress as a percentage completed,
 from 0 to 100.]]>
      </description-html>
      </property>

            <property name="bytesTransferred" type-id-ref="LONG"
      vmodl-name="bytesTransferred"
      >
      <description-html>
         <![CDATA[Number of bytes transferred so far.
 <p>
 For sync operations, this value includes (i.e. counts multiple
 times) areas that were transferred multiple times (due to stopping
 and continuing the operation, or for some errors).]]>
      </description-html>
      </property>

            <property name="bytesToTransfer" type-id-ref="LONG"
      vmodl-name="bytesToTransfer"
      >
      <description-html>
         <![CDATA[The total number of bytes to be transferred.
 <p>
 For lwd operations, this is the total size of the disk images that
 are transferring. This is known from the start and will not change
 during a lwd operation.
 <p>
 For sync operations, this is the total size of the blocks that have
 been found not to match between the primary and secondary (by
 comparing checksums). It starts from 0 and grows as the checksum
 operations advance. The value includes (i.e. counts multiple times)
 areas that will end up being transferred more than once (due to
 stopping and continuing the operation, or for some errors).]]>
      </description-html>
      </property>

            <property name="checksumTotalBytes" type-id-ref="LONG"
      vmodl-name="checksumTotalBytes"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The total number of bytes to be checksummed, only present for sync
 tasks. This is the total size of all disks.]]>
      </description-html>
      </property>

            <property name="checksumComparedBytes" type-id-ref="LONG"
      vmodl-name="checksumComparedBytes"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The total number of bytes that were checksummed, only present for
 sync tasks.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DynamicArray"
      type-id="vmodl.DynamicArray"
      vmodl-name="vmodl.DynamicArray"
      version-id-ref="vmodl.version.version0"
      >
      <description-html>
         <![CDATA[DynamicArray is a data object type that represents an array of dynamically-typed
 objects. A client should only see a DynamicArray object when the element type
 is unknown (meaning the type is newer than the client). Otherwise, a client would
 see the type as T[] where T is known.]]>
      </description-html>
            <property name="val" type-id-ref="vmodl.Any"
      vmodl-name="val"
      is-array="true"
      >
      <description-html>
         <![CDATA[Array of dynamic values.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DvpgImportEvent"
      type-id="vim.event.DvpgImportEvent"
      vmodl-name="vim.event.DvpgImportEvent"
      version-id-ref="vim.version.version8"
      base-type-id="vim.event.DVPortgroupEvent"
      >
      <description-html>
         <![CDATA[This event is generated when an import operation is
 performed on a distributed virtual portgroup]]>
      </description-html>
            <property name="importType" type-id-ref="java.lang.String"
      vmodl-name="importType"
      >
      <description-html>
         <![CDATA[The type of restore operation. See  <a href="vim.dvs.EntityBackup.ImportType.html">EntityImportType</a> for valid values]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualDeviceFileBackingOption"
      type-id="vim.vm.device.VirtualDeviceOption.FileBackingOption"
      vmodl-name="vim.vm.device.VirtualDeviceOption.FileBackingOption"
      enclosing-type-id-ref="vim.vm.device.VirtualDeviceOption"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.device.VirtualDeviceOption.BackingOption"
      >
      <description-html>
         <![CDATA[The FileBackingOption data class contains file-specific backing options.]]>
      </description-html>
            <property name="fileNameExtensions" type-id-ref="vim.option.ChoiceOption"
      vmodl-name="fileNameExtensions"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Valid filename extension for the filename.
 If no extensions are present, any file extension is acceptable.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.vm.device.VirtualDeviceOption.FileBackingOption.FileExtension</nested-type-id-ref>
   </data-object>
   <data-object name="HostProfileCompleteConfigSpec"
      type-id="vim.profile.host.HostProfile.CompleteConfigSpec"
      vmodl-name="vim.profile.host.HostProfile.CompleteConfigSpec"
      enclosing-type-id-ref="vim.profile.host.HostProfile"
      version-id-ref="vim.version.version5"
      base-type-id="vim.profile.host.HostProfile.ConfigSpec"
      >
      <description-html>
         <![CDATA[The <a href="vim.profile.host.HostProfile.CompleteConfigSpec.html">HostProfileCompleteConfigSpec</a> data object
 specifies the complete configuration for a host profile.]]>
      </description-html>
            <property name="applyProfile" type-id-ref="vim.profile.host.HostApplyProfile"
      vmodl-name="applyProfile"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Profile that contains configuration data for the host.]]>
      </description-html>
      </property>

            <property name="customComplyProfile" type-id-ref="vim.profile.ComplianceProfile"
      vmodl-name="customComplyProfile"
      is-optional="true"
      >
      <description-html>
         <![CDATA[User defined compliance profile.
 Reserved for future use.]]>
      </description-html>
      </property>

            <property name="disabledExpressionListChanged" type-id-ref="BOOLEAN"
      vmodl-name="disabledExpressionListChanged"
      >
      <description-html>
         <![CDATA[Flag indicating if this configuration specification contains changes
 in the <a href="vim.profile.host.HostProfile.CompleteConfigSpec.html#disabledExpressionList">disabledExpressionList</a>.
 If False, the Profile Engine ignores the contents of the disabled expression list.]]>
      </description-html>
      </property>

            <property name="disabledExpressionList" type-id-ref="java.lang.String"
      vmodl-name="disabledExpressionList"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of expressions to be disabled. Each entry in the list specifies
 a <a href="vim.profile.Expression.html">ProfileExpression</a>.<a href="vim.profile.Expression.html#id">id</a>.
 All expressions are enabled by default.
 <p>
 If you set <a href="vim.profile.host.HostProfile.CompleteConfigSpec.html#disabledExpressionListChanged">disabledExpressionListChanged</a>
 to True, the Profile Engine uses the contents of this list to replace the contents
 of the <a href="vim.profile.host.HostProfile.html">HostProfile</a>.<a href="vim.profile.Profile.html#config">Config</a>.<a href="vim.profile.host.HostProfile.ConfigInfo.html#disabledExpressionList">disabledExpressionList</a>.
 <p>
 The expression list is contained in the
 <a href="vim.profile.host.HostProfile.ConfigInfo.html#defaultComplyProfile">defaultComplyProfile</a>.
 The Profile Engine automatically generates the default compliance profile
 when you create a host profile.]]>
      </description-html>
      </property>

            <property name="validatorHost" type-id-ref="vim.HostSystem"
      vmodl-name="validatorHost"
      version-id-ref="vim.version.version7"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Host for profile validation. This can be a host on which the profile
 is intended to be used. If you do not specify a validator host,
 the Profile Engine uses the <a href="vim.profile.host.HostProfile.html">HostProfile</a>.<a href="vim.profile.host.HostProfile.html#referenceHost">ReferenceHost</a>
 to validate the profile.]]>
      </description-html>
      </property>

            <property name="validating" type-id-ref="BOOLEAN"
      vmodl-name="validating"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[If "false", then the host profile will be saved without being validated.
 The default if not specified is "true".
 This option should be used with caution, since the resulting host profile
 will not be checked for errors.]]>
      </description-html>
      </property>

            <property name="hostConfig" type-id-ref="vim.profile.host.HostProfile.ConfigInfo"
      vmodl-name="hostConfig"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Host profile configuration data and compliance information.
 If <a href="vim.profile.host.HostProfile.CompleteConfigSpec.html#hostConfig">hostConfig</a> is set,
 then the HostApplyProfile
 <a href="vim.profile.host.HostProfile.CompleteConfigSpec.html#applyProfile">applyProfile</a> and
 ComplianceProfile
 <a href="vim.profile.host.HostProfile.CompleteConfigSpec.html#customComplyProfile">customComplyProfile</a>
 should not be set in CompleteConfigSpec.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostCacheConfigurationInfo"
      type-id="vim.host.CacheConfigurationManager.CacheConfigurationInfo"
      vmodl-name="vim.host.CacheConfigurationManager.CacheConfigurationInfo"
      enclosing-type-id-ref="vim.host.CacheConfigurationManager"
      version-id-ref="vim.version.version7"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Host solid state drive cache configuration information.]]>
      </description-html>
            <property name="key" type-id-ref="vim.Datastore"
      vmodl-name="key"
      >
      <description-html>
         <![CDATA[Datastore used for swap performance enhancements.]]>
      </description-html>
      </property>

            <property name="swapSize" type-id-ref="LONG"
      vmodl-name="swapSize"
      >
      <description-html>
         <![CDATA[Space allocated on this datastore to implement swap performance
 enhancements, in MB.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostCnxFailedCcagentUpgradeEvent"
      type-id="vim.event.HostCnxFailedCcagentUpgradeEvent"
      vmodl-name="vim.event.HostCnxFailedCcagentUpgradeEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.HostEvent"
      >
      <description-html>
         <![CDATA[This event records a failure to connect to a host
  due to a conflict with an upgrade or installation of the host agent.]]>
      </description-html>
   </data-object>
   <data-object name="VirtualParallelPort"
      type-id="vim.vm.device.VirtualParallelPort"
      vmodl-name="vim.vm.device.VirtualParallelPort"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.device.VirtualDevice"
      >
      <description-html>
         <![CDATA[This data object type represents a parallel port
  in a virtual machine.]]>
      </description-html>
      <nested-type-id-ref>vim.vm.device.VirtualParallelPort.FileBackingInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.device.VirtualParallelPort.DeviceBackingInfo</nested-type-id-ref>
   </data-object>
   <data-object name="HostSystemReconnectSpec"
      type-id="vim.HostSystem.ReconnectSpec"
      vmodl-name="vim.HostSystem.ReconnectSpec"
      enclosing-type-id-ref="vim.HostSystem"
      version-id-ref="vim.version.version7"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Specifies the parameters needed to merge vCenter Server settings
  and host settings on reconnect.]]>
      </description-html>
            <property name="syncState" type-id-ref="BOOLEAN"
      vmodl-name="syncState"
      is-optional="true"
      >
      <description-html>
         <![CDATA[This flag should be set if on a host reconnect, state such as virtual
  machine state in vCenter Server e.g. the virtual machine inventory
  and autostart rules, has to be propogated to the host. Any virtual
  machines that may have been unregistered or orphaned will be
  reregistered according to the vCenter Server inventory. Any autostart
  rules that may have changed on the host will be similarly restored.
  This flag is primarily intended for stateless hosts to enable vCenter
  Server to resync these hosts after a reboot.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="PerformanceStatisticsDescription"
      type-id="vim.ResourcePlanningManager.PerfStatsDescription"
      vmodl-name="vim.ResourcePlanningManager.PerfStatsDescription"
      enclosing-type-id-ref="vim.ResourcePlanningManager"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Data object to capture all information needed to
 describe a sample inventory.]]>
      </description-html>
            <property name="intervals" type-id-ref="vim.HistoricalInterval"
      vmodl-name="intervals"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Historic interval setting.
 Default value is the same as the historic
 interval settings of the current instance
 of running VC.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostMemoryProfile"
      type-id="vim.profile.host.HostMemoryProfile"
      vmodl-name="vim.profile.host.HostMemoryProfile"
      version-id-ref="vim.version.version5"
      base-type-id="vim.profile.ApplyProfile"
      >
      <description-html>
         <![CDATA[The <a href="vim.profile.host.HostMemoryProfile.html">HostMemoryProfile</a> data object represents
 memory configuration for the host.
 This may not be valid all versions of the host.
 <p>
 Use the <a href="vim.profile.ApplyProfile.html#policy">policy</a> list for access to configuration data
 for the host memory profile. Use the <a href="vim.profile.ApplyProfile.html#property">property</a> list
 for access to subprofile configuration data, if any.]]>
      </description-html>
   </data-object>
   <data-object name="DvsPortJoinPortgroupEvent"
      type-id="vim.event.DvsPortJoinPortgroupEvent"
      vmodl-name="vim.event.DvsPortJoinPortgroupEvent"
      version-id-ref="vim.version.version5"
      base-type-id="vim.event.DvsEvent"
      >
      <description-html>
         <![CDATA[A port was moved into the distributed virtual portgroup.]]>
      </description-html>
            <property name="portKey" type-id-ref="java.lang.String"
      vmodl-name="portKey"
      >
      <description-html>
         <![CDATA[The port key.]]>
      </description-html>
      </property>

            <property name="portgroupKey" type-id-ref="java.lang.String"
      vmodl-name="portgroupKey"
      >
      <description-html>
         <![CDATA[The portgroup key.]]>
      </description-html>
      </property>

            <property name="portgroupName" type-id-ref="java.lang.String"
      vmodl-name="portgroupName"
      >
      <description-html>
         <![CDATA[The portgroup name.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ScheduledTaskFailedEvent"
      type-id="vim.event.ScheduledTaskFailedEvent"
      vmodl-name="vim.event.ScheduledTaskFailedEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.ScheduledTaskEvent"
      >
      <description-html>
         <![CDATA[This event records the failure of a scheduled task.]]>
      </description-html>
            <property name="reason" type-id-ref="vmodl.LocalizedMethodFault"
      vmodl-name="reason"
      >
      <description-html>
         <![CDATA[The reason for the failure.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VStorageObjectConfigInfo"
      type-id="vim.vslm.VStorageObject.ConfigInfo"
      vmodl-name="vim.vslm.VStorageObject.ConfigInfo"
      enclosing-type-id-ref="vim.vslm.VStorageObject"
      version-id-ref="vim.version.version11"
      base-type-id="vim.vslm.BaseConfigInfo"
      >
      <description-html>
         <![CDATA[Data object specifies Virtual storage object configuration]]>
      </description-html>
            <property name="capacityInMB" type-id-ref="LONG"
      vmodl-name="capacityInMB"
      >
      <description-html>
         <![CDATA[The size in MB of this object.]]>
      </description-html>
      </property>

            <property name="consumptionType" type-id-ref="java.lang.String"
      vmodl-name="consumptionType"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Consumption type of this object.<br>See ConsumptionType]]>
      </description-html>
      </property>

            <property name="consumerId" type-id-ref="vim.vslm.ID"
      vmodl-name="consumerId"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[IDs of the consumer objects which consume this vstorage object.
 For a virtual disk, this can be VM ID(s).]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VmSecondaryDisabledEvent"
      type-id="vim.event.VmSecondaryDisabledEvent"
      vmodl-name="vim.event.VmSecondaryDisabledEvent"
      version-id-ref="vim.version.version5"
      base-type-id="vim.event.VmEvent"
      >
      <description-html>
         <![CDATA[This event records a secondary VM is disabled.]]>
      </description-html>
   </data-object>
   <data-object name="VirtualMachineGuestIntegrityInfo"
      type-id="vim.vm.GuestIntegrityInfo"
      vmodl-name="vim.vm.GuestIntegrityInfo"
      version-id-ref="vim.version.version11"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object describes the guest integrity platform configuration of
  this virtual machine.]]>
      </description-html>
            <property name="enabled" type-id-ref="BOOLEAN"
      vmodl-name="enabled"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Flag to indicate whether guest integrity platform feature is enabled for
  this virtual machine. Guest integrity adds capabilities in the virtual
  platform to detect attacks on the guest OS kernel]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostRuntimeInfoNetworkRuntimeInfo"
      type-id="vim.host.RuntimeInfo.NetworkRuntimeInfo"
      vmodl-name="vim.host.RuntimeInfo.NetworkRuntimeInfo"
      enclosing-type-id-ref="vim.host.RuntimeInfo"
      version-id-ref="vim.version.version9"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data type describes network related runtime info]]>
      </description-html>
            <property name="netStackInstanceRuntimeInfo" type-id-ref="vim.host.RuntimeInfo.NetStackInstanceRuntimeInfo"
      vmodl-name="netStackInstanceRuntimeInfo"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The list of network stack runtime info]]>
      </description-html>
      </property>

            <property name="networkResourceRuntime" type-id-ref="vim.host.RuntimeInfo.NetworkResourceRuntimeInfo"
      vmodl-name="networkResourceRuntime"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The network resource runtime information]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostVvolVolume"
      type-id="vim.host.VvolVolume"
      vmodl-name="vim.host.VvolVolume"
      version-id-ref="vim.version.version10"
      base-type-id="vim.host.FileSystemVolume"
      >
            <property name="scId" type-id-ref="java.lang.String"
      vmodl-name="scId"
      >
      <description-html>
         <![CDATA[The universally unique identifier assigned to vvolDS.]]>
      </description-html>
      </property>

            <property name="hostPE" type-id-ref="vim.host.VvolVolume.HostProtocolEndpoint"
      vmodl-name="hostPE"
      is-array="true"
      is-optional="true"
      >
      </property>

            <property name="vasaProviderInfo" type-id-ref="vim.VimVasaProviderInfo"
      vmodl-name="vasaProviderInfo"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[VASA Providers that manage this volume]]>
      </description-html>
      </property>

            <property name="storageArray" type-id-ref="vim.VasaStorageArray"
      vmodl-name="storageArray"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of storage array serving this VVol based storage container]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.host.VvolVolume.Specification</nested-type-id-ref>
      <nested-type-id-ref>vim.host.VvolVolume.HostProtocolEndpoint</nested-type-id-ref>
   </data-object>
   <data-object name="VirtualMachineBootOptions"
      type-id="vim.vm.BootOptions"
      vmodl-name="vim.vm.BootOptions"
      version-id-ref="vim.version.version2"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The <a href="vim.vm.BootOptions.html">VirtualMachineBootOptions</a> data object defines the boot-time
  behavior of a virtual machine.
  <p>
  You can use the delay options to specify a time interval
  during which you can enter the virtual machine BIOS setup.
  These options provide a solution for the situation that occurs
  when the console attaches to the virtual machine after
  the boot sequence has passed the BIOS setup entry point.]]>
      </description-html>
            <property name="bootDelay" type-id-ref="LONG"
      vmodl-name="bootDelay"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Delay in milliseconds before starting the boot sequence.
 The boot delay specifies a time interval between virtual machine
 power on or restart and the beginning of the boot sequence.]]>
      </description-html>
      </property>

            <property name="enterBIOSSetup" type-id-ref="BOOLEAN"
      vmodl-name="enterBIOSSetup"
      is-optional="true"
      >
      <description-html>
         <![CDATA[If set to <code>true</code>, the virtual machine
  automatically enters BIOS setup the next time it boots.
  The virtual machine resets this flag to <code>false</code>
  so that subsequent boots proceed normally.]]>
      </description-html>
      </property>

            <property name="efiSecureBootEnabled" type-id-ref="BOOLEAN"
      vmodl-name="efiSecureBootEnabled"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[If set to <code>true</code>, the virtual machine's firmware will
  perform signature checks of any EFI images loaded during startup, and
  will refuse to start any images which do not pass those signature
  checks.
  When creating a new VM:
  - If vim.vm.FlagInfo.vbsEnabled is set to <code>true</code>,
    and this flag is set to <code>false</code> error is returned.
  - If this flag is unset and vim.vm.FlagInfo.vbsEnabled is set to
    <code>true</code>, the value of this flag is set to <code>true</code>.]]>
      </description-html>
      </property>

            <property name="bootRetryEnabled" type-id-ref="BOOLEAN"
      vmodl-name="bootRetryEnabled"
      version-id-ref="vim.version.version6"
      is-optional="true"
      >
      <description-html>
         <![CDATA[If set to <code>true</code>, a virtual machine that fails
  to boot will try again after the <a href="vim.vm.BootOptions.html#bootRetryDelay">bootRetryDelay</a>
  time period has expired. When <code>false</code>,
  the virtual machine waits indefinitely for you to initiate
  boot retry.]]>
      </description-html>
      </property>

            <property name="bootRetryDelay" type-id-ref="LONG"
      vmodl-name="bootRetryDelay"
      version-id-ref="vim.version.version6"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Delay in milliseconds before a boot retry. The boot retry delay
  specifies a time interval between virtual machine boot failure
  and the subsequent attempt to boot again. The virtual machine
  uses this value only if <a href="vim.vm.BootOptions.html#bootRetryEnabled">bootRetryEnabled</a> is true.]]>
      </description-html>
      </property>

            <property name="bootOrder" type-id-ref="vim.vm.BootOptions.BootableDevice"
      vmodl-name="bootOrder"
      version-id-ref="vim.version.version7"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Boot order.  Listed devices are used for booting.  After list
  is exhausted, default BIOS boot device algorithm is used for
  booting.

  Note that order of the entries in the list is important:
  device listed first is used for boot first, if that one
  fails second entry is used, and so on.

  Platform may have some internal limit on the number of devices
  it supports.  If bootable device is not reached before platform's
  limit is hit, boot will fail.  At least single entry is supported
  by all products supporting boot order settings.]]>
      </description-html>
      </property>

            <property name="networkBootProtocol" type-id-ref="java.lang.String"
      vmodl-name="networkBootProtocol"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Protocol to attempt during PXE network boot or NetBoot.<br>See <a href="vim.vm.BootOptions.NetworkBootProtocolType.html">VirtualMachineBootOptionsNetworkBootProtocolType</a><br>]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.vm.BootOptions.NetworkBootProtocolType</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.BootOptions.BootableDevice</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.BootOptions.BootableDiskDevice</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.BootOptions.BootableEthernetDevice</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.BootOptions.BootableFloppyDevice</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.BootOptions.BootableCdromDevice</nested-type-id-ref>
   </data-object>
   <data-object name="HostMaintenanceSpec"
      type-id="vim.host.MaintenanceSpec"
      vmodl-name="vim.host.MaintenanceSpec"
      version-id-ref="vim.version.version9"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The <a href="vim.host.MaintenanceSpec.html">HostMaintenanceSpec</a> data object may be used to specify
 actions to be taken by a host upon entering maintenance mode.

 If the <a href="vim.host.MaintenanceSpec.html">HostMaintenanceSpec</a> or any of its fields are omitted in a
 call to <a href="vim.HostSystem.html#enterMaintenanceMode">EnterMaintenanceMode_Task</a>, default actions
 will be chosen as documented for each field's type.<br>See <a href="vim.HostSystem.html#enterMaintenanceMode">EnterMaintenanceMode_Task</a><br>See <a href="vim.vsan.host.DecommissionMode.html">VsanHostDecommissionMode</a><br>]]>
      </description-html>
            <property name="vsanMode" type-id-ref="vim.vsan.host.DecommissionMode"
      vmodl-name="vsanMode"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The <a href="vim.vsan.host.DecommissionMode.html">VsanHostDecommissionMode</a> for this MaintenanceSpec.]]>
      </description-html>
      </property>

            <property name="purpose" type-id-ref="java.lang.String"
      vmodl-name="purpose"
      version-id-ref="vim.version.v7_0"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Maintenance mode reason code.
  See Purpose for valid values.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.host.MaintenanceSpec.Purpose</nested-type-id-ref>
   </data-object>
   <data-object name="VMFSDatastoreExtendedEvent"
      type-id="vim.event.VMFSDatastoreExtendedEvent"
      vmodl-name="vim.event.VMFSDatastoreExtendedEvent"
      version-id-ref="vim.version.version5"
      base-type-id="vim.event.HostEvent"
      >
      <description-html>
         <![CDATA[This event records when a datastore is extended.]]>
      </description-html>
            <property name="datastore" type-id-ref="vim.event.DatastoreEventArgument"
      vmodl-name="datastore"
      >
      <description-html>
         <![CDATA[The associated datastore.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DvsTrafficFilterConfigSpec"
      type-id="vim.dvs.DistributedVirtualPort.TrafficFilterConfigSpec"
      vmodl-name="vim.dvs.DistributedVirtualPort.TrafficFilterConfigSpec"
      enclosing-type-id-ref="vim.dvs.DistributedVirtualPort"
      version-id-ref="vim.version.version9"
      base-type-id="vim.dvs.DistributedVirtualPort.TrafficFilterConfig"
      >
      <description-html>
         <![CDATA[The specification to reconfigure Traffic Filter.
  This specification allows the user to do fine-grained updates for the
  Traffic Filter in the port settings.
  If the operation is vim.ConfigSpecOperation#remove, only the
  TrafficFilterConfigSpec#key needs to be specified.
  If other fields are specified, they will be ignored. We cannot remove
  an inherited element. Only when the inherited flag is set to false and
  parent does not have an element with same key this operation succeeds.
  If the operation is vim.ConfigSpecOperation#add, then
  TrafficFilterConfigSpec#key should not be specified and
  other fields need to be specified. The inherited flag should be set to
  false.
  If the operation is vim.ConfigSpecOperation#edit, then
  TrafficFilterConfigSpec#key needs be specified and
  specify the other properties that need modification. If the inherited
  flag is set to true, a TrafficFilterConfig object of same
  key must exist at the parent's level. The property values in the spec
  object will be ignored and use the values from the parent's
  TrafficFilterConfig object instead. If inherited
  flag is set to false, then the new modifications will be applied.]]>
      </description-html>
            <property name="operation" type-id-ref="java.lang.String"
      vmodl-name="operation"
      >
      <description-html>
         <![CDATA[Operation type. See <a href="vim.ConfigSpecOperation.html">ConfigSpecOperation</a> for valid values.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="MultipleCertificatesVerifyFaultThumbprintData"
      type-id="vim.fault.MultipleCertificatesVerifyFault.ThumbprintData"
      vmodl-name="vim.fault.MultipleCertificatesVerifyFault.ThumbprintData"
      enclosing-type-id-ref="vim.fault.MultipleCertificatesVerifyFault"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
            <property name="port" type-id-ref="INT"
      vmodl-name="port"
      >
      <description-html>
         <![CDATA[The port used by the service.]]>
      </description-html>
      </property>

            <property name="thumbprint" type-id-ref="java.lang.String"
      vmodl-name="thumbprint"
      >
      <description-html>
         <![CDATA[The SSL thumbprint of the host's certificate used by the service.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualMachineCloneSpec"
      type-id="vim.vm.CloneSpec"
      vmodl-name="vim.vm.CloneSpec"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Specification for a virtual machine cloning operation.]]>
      </description-html>
            <property name="location" type-id-ref="vim.vm.RelocateSpec"
      vmodl-name="location"
      >
      <description-html>
         <![CDATA[A type of RelocateSpec that specifies the location of resources the
  newly cloned virtual machine will use. The location specifies:
  <ul>
    <li> A datastore where the virtual machine will be located on physical
         storage.
         This is always provided because it indicates where the newly
         created clone will be copied.
    <li> a resource pool and optionally a host. The resource pool
         determines what compute resources will be available to the clone
         and the host indicates which machine will host the clone.
  </ul>]]>
      </description-html>
      </property>

            <property name="template" type-id-ref="BOOLEAN"
      vmodl-name="template"
      >
      <description-html>
         <![CDATA[Specifies whether or not the new virtual machine should be marked as a
  template.]]>
      </description-html>
      </property>

            <property name="config" type-id-ref="vim.vm.ConfigSpec"
      vmodl-name="config"
      is-optional="true"
      >
      <description-html>
         <![CDATA[An optional specification of changes to the virtual hardware.
  For example, this can be used to, (but not limited to) reconfigure the
  networks the virtual switches are hooked up to in the cloned virtual
  machine.

  Use <a href="vim.vm.RelocateSpec.html#deviceChange">deviceChange</a> in
  <a href="vim.vm.CloneSpec.html#location">location</a>
  for specifying any virtual device changes for disks and networks.]]>
      </description-html>
      </property>

            <property name="customization" type-id-ref="vim.vm.customization.Specification"
      vmodl-name="customization"
      is-optional="true"
      >
      <description-html>
         <![CDATA[An optional guest operating system customization specification.
  This value is ignored if a template is being created.]]>
      </description-html>
      </property>

            <property name="powerOn" type-id-ref="BOOLEAN"
      vmodl-name="powerOn"
      >
      <description-html>
         <![CDATA[Specifies whether or not the new VirtualMachine should be powered on
  after creation. As part of a customization, this flag is normally set
  to true, since the first power-on operation completes the customization
  process.  This flag is ignored if a template is being created.]]>
      </description-html>
      </property>

            <property name="snapshot" type-id-ref="vim.vm.Snapshot"
      vmodl-name="snapshot"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Snapshot reference from which to base the clone.
  <p>
  If this parameter is set, the clone is based off of the snapshot
  point.  This means that the newly created virtual machine will
  have the same configuration as the virtual machine at the time
  the snapshot was taken.
  <p>
  If this property is not set then the clone is based off of the
  virtual machine's current configuration.
  <p>
  Setting this is only supported if the host this virtual machine
  is currently residing on
  <a href="vim.host.Capability.html#cloneFromSnapshotSupported">cloneFromSnapshotSupported</a>.  Such support does not need to
  exist on the destination host for the clone.
  <p>
  Setting this is only supported if the virtual machine supports
  reporting snapshot configuration information.  See <a href="vim.vm.Capability.html#snapshotConfigSupported">snapshotConfigSupported</a>.  Such support does not need
  to exist on the destination host for the clone.]]>
      </description-html>
      </property>

            <property name="memory" type-id-ref="BOOLEAN"
      vmodl-name="memory"
      version-id-ref="vim.version.version9"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Flag indicating whether to retain a copy of the source virtual machine's
 memory state in the clone. Retaining the memory state during
 clone results in a clone in suspended state with all network adapters
 removed to avoid network conflicts, except those with a
 VirtualEthernetCard.addressType of "manual".
 Users of this flag should take special care so that, when adding a network
 adapter back to the clone, the VM is not resumed on the same VM network
 as the source VM, or else MAC address conflicts could occur.
 When cloning between two hosts with different CPUs outside an EVC cluster,
 users of this flag should be aware that vCenter does not verify
 CPU compatibility between the clone's memory state and the target host
 prior to the clone operation, so the clone may fail to resume
 until it is migrated to a host with a compatible CPU.
 <p>
 This flag is ignored if the snapshot parameter is unset. This flag
 only applies for a snapshot taken on a running or suspended
 virtual machine with the 'memory' parameter set to true, because otherwise
 the snapshot has no memory state. This flag defaults to false.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VsanUpgradeSystemWrongEsxVersionIssue"
      type-id="vim.VsanUpgradeSystem.WrongEsxVersionIssue"
      vmodl-name="vim.VsanUpgradeSystem.WrongEsxVersionIssue"
      enclosing-type-id-ref="vim.VsanUpgradeSystem"
      version-id-ref="vim.version.version10"
      base-type-id="vim.VsanUpgradeSystem.PreflightCheckIssue"
      >
      <description-html>
         <![CDATA[Pre-flight check encountered at least one host with wrong ESX version.
 Only 6.0 is allowed.]]>
      </description-html>
            <property name="hosts" type-id-ref="vim.HostSystem"
      vmodl-name="hosts"
      is-array="true"
      >
      <description-html>
         <![CDATA[Hosts this issue applies to.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ExtensionServerInfo"
      type-id="vim.Extension.ServerInfo"
      vmodl-name="vim.Extension.ServerInfo"
      enclosing-type-id-ref="vim.Extension"
      version-id-ref="vim.version.version2"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object type describes a server for the extension.]]>
      </description-html>
            <property name="url" type-id-ref="java.lang.String"
      vmodl-name="url"
      >
      <description-html>
         <![CDATA[Server url.]]>
      </description-html>
      </property>

            <property name="description" type-id-ref="vim.Description"
      vmodl-name="description"
      is-localizable="true"
      >
      <description-html>
         <![CDATA[Server description.]]>
      </description-html>
      </property>

            <property name="company" type-id-ref="java.lang.String"
      vmodl-name="company"
      >
      <description-html>
         <![CDATA[Company information.]]>
      </description-html>
      </property>

            <property name="type" type-id-ref="java.lang.String"
      vmodl-name="type"
      >
      <description-html>
         <![CDATA[Type of server (examples may include SOAP, REST, HTTP, etc.).]]>
      </description-html>
      </property>

            <property name="adminEmail" type-id-ref="java.lang.String"
      vmodl-name="adminEmail"
      is-array="true"
      >
      <description-html>
         <![CDATA[Extension administrator email addresses.]]>
      </description-html>
      </property>

            <property name="serverThumbprint" type-id-ref="java.lang.String"
      vmodl-name="serverThumbprint"
      version-id-ref="vim.version.version6"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Thumbprint of the extension server certificate presented to clients]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DrsDisabledEvent"
      type-id="vim.event.DrsDisabledEvent"
      vmodl-name="vim.event.DrsDisabledEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.ClusterEvent"
      >
      <description-html>
         <![CDATA[This event records when DRS is disabled on a cluster.]]>
      </description-html>
   </data-object>
   <data-object name="ProfileDeferredPolicyOptionParameter"
      type-id="vim.profile.DeferredPolicyOptionParameter"
      vmodl-name="vim.profile.DeferredPolicyOptionParameter"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The <a href="vim.profile.DeferredPolicyOptionParameter.html">ProfileDeferredPolicyOptionParameter</a> data object contains
 information about a single deferred parameter for host configuration.
 <p>
 <ul>
 <li>The Server verifies deferred parameter data when it calls the
 <a href="vim.profile.host.HostProfile.html">HostProfile</a>.<a href="vim.profile.host.HostProfile.html#execute">ExecuteHostProfile</a>
 method.<br/><br/></li>
 <li>The client supplies deferred parameter data for host configuration when it calls the
 <a href="vim.profile.host.ProfileManager.html">HostProfileManager</a>.<a href="vim.profile.host.ProfileManager.html#applyHostConfiguration">ApplyHostConfig_Task</a>
 method.<br/><br/></li>
 <li>The vCenter Server stores deferred parameter data in answer files
 (<a href="vim.profile.host.AnswerFile.html">AnswerFile</a>.<a href="vim.profile.host.AnswerFile.html#userInput">userInput</a>).
 <br/><br/></li>
 </ul>]]>
      </description-html>
            <property name="inputPath" type-id-ref="vim.profile.ProfilePropertyPath"
      vmodl-name="inputPath"
      >
      <description-html>
         <![CDATA[Complete path to the <a href="vim.profile.PolicyOption.html">PolicyOption</a> that defines the parameters.]]>
      </description-html>
      </property>

            <property name="parameter" type-id-ref="vmodl.KeyAnyValue"
      vmodl-name="parameter"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List that contains values for the policy parameters.
 <p>
 During parameter verification, this property is unspecified
 if the client has not provided the values for this parameter.
 See <a href="vim.profile.host.ExecuteResult.html">ProfileExecuteResult</a>.<a href="vim.profile.host.ExecuteResult.html#requireInput">requireInput</a>.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostUnresolvedVmfsExtent"
      type-id="vim.host.UnresolvedVmfsExtent"
      vmodl-name="vim.host.UnresolvedVmfsExtent"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Information about an unresolved VMFS volume extent
  An unresolved VMFS volume extent is a device partition which is
  detected to have copy of an extent of a VMFS volume.
  Such a copy can be created via replication or snapshots, for example.<br>See <a href="vim.host.UnresolvedVmfsVolume.html">HostUnresolvedVmfsVolume</a><br>]]>
      </description-html>
            <property name="device" type-id-ref="vim.host.ScsiDisk.Partition"
      vmodl-name="device"
      >
      <description-html>
         <![CDATA[The device information]]>
      </description-html>
      </property>

            <property name="devicePath" type-id-ref="java.lang.String"
      vmodl-name="devicePath"
      >
      <description-html>
         <![CDATA[The device path of an VMFS extent]]>
      </description-html>
      </property>

            <property name="vmfsUuid" type-id-ref="java.lang.String"
      vmodl-name="vmfsUuid"
      >
      <description-html>
         <![CDATA[The UUID of the VMFS volume read from to the partition.]]>
      </description-html>
      </property>

            <property name="isHeadExtent" type-id-ref="BOOLEAN"
      vmodl-name="isHeadExtent"
      >
      <description-html>
         <![CDATA[Is this a copy of the head extent of the VMFS volume?]]>
      </description-html>
      </property>

            <property name="ordinal" type-id-ref="INT"
      vmodl-name="ordinal"
      >
      <description-html>
         <![CDATA[A number indicating the order of an extent in a volume.  An extent with
  a lower ordinal value than another extent provides a range of blocks to
  a volume at an earlier block address range.  Extents with the same
  ordinal provide the same range of blocks to a volume.  A zero ordinal
  indicates that the extent is a head extent.
  <p>
  In the case each extent in the <a href="vim.host.UnresolvedVmfsVolume.html">HostUnresolvedVmfsVolume</a> is
  represented in the list of <a href="vim.host.UnresolvedVmfsExtent.html">HostUnresolvedVmfsExtent</a> data objects,
  the ordinal will refer to the absolute index of the extent in the
  volume.  For example, ordinal "1" refers to the second extent;
  ordinal "2" refers to the third extent.
  <p>
  In the case that some extents of the volume are not represented in
  the <a href="vim.host.UnresolvedVmfsExtent.html">HostUnresolvedVmfsExtent</a> list, the ordinal will not precisely
  describe the position in the list of extents.  A number will be skipped
  to indicate holes in the extent order.  For example, given a volume with
  five extents with the second and third extents missing, the ordinal
  values in use will be {0, 2, 3}.  The missing second and third extent
  are represented by the missing ordinal value "1" while the fourth and
  fifth extents will be assigned an ordinal of "2" and "3" respectively.
  <p>
  The reason the ordinals are not reliable in the case of missing extents
  is because the extents are identified by their start and end blocks.
  The ordinals are just a hint used to help indicate extents that
  correspond to the same start and end blocks.]]>
      </description-html>
      </property>

            <property name="startBlock" type-id-ref="INT"
      vmodl-name="startBlock"
      >
      <description-html>
         <![CDATA[Index of the first block that this extent provides.]]>
      </description-html>
      </property>

            <property name="endBlock" type-id-ref="INT"
      vmodl-name="endBlock"
      >
      <description-html>
         <![CDATA[Index of the last block that this extent provides.]]>
      </description-html>
      </property>

            <property name="reason" type-id-ref="java.lang.String"
      vmodl-name="reason"
      >
      <description-html>
         <![CDATA[Reason as to why the partition is marked as copy
 of a VMFS volume's extent.
 Possible reasons are the disk id is not matching with what
 the scsi inq is saying or disk uuid is not matching<br>See <a href="vim.host.UnresolvedVmfsExtent.UnresolvedReason.html">HostUnresolvedVmfsExtentUnresolvedReason</a><br>]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.host.UnresolvedVmfsExtent.UnresolvedReason</nested-type-id-ref>
   </data-object>
   <data-object name="AlarmClearedEvent"
      type-id="vim.event.AlarmClearedEvent"
      vmodl-name="vim.event.AlarmClearedEvent"
      version-id-ref="vim.version.version7"
      base-type-id="vim.event.AlarmEvent"
      >
      <description-html>
         <![CDATA[This event records the manual clearing of an Alarm]]>
      </description-html>
            <property name="source" type-id-ref="vim.event.ManagedEntityEventArgument"
      vmodl-name="source"
      >
      <description-html>
         <![CDATA[The entity that triggered the alarm.]]>
      </description-html>
      </property>

            <property name="entity" type-id-ref="vim.event.ManagedEntityEventArgument"
      vmodl-name="entity"
      >
      <description-html>
         <![CDATA[The entity with which the alarm is registered.]]>
      </description-html>
      </property>

            <property name="from" type-id-ref="java.lang.String"
      vmodl-name="from"
      >
      <description-html>
         <![CDATA[The original alarm status from which it was cleared]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="IntPolicy"
      type-id="vim.IntPolicy"
      vmodl-name="vim.IntPolicy"
      version-id-ref="vim.version.version5"
      base-type-id="vim.InheritablePolicy"
      >
      <description-html>
         <![CDATA[The integer type of setting or configuration that may get an
  inherited value.]]>
      </description-html>
            <property name="value" type-id-ref="INT"
      vmodl-name="value"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The integer value that is either set or inherited.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ClusterComputeResourceValidationResultBase"
      type-id="vim.ClusterComputeResource.ValidationResultBase"
      vmodl-name="vim.ClusterComputeResource.ValidationResultBase"
      enclosing-type-id-ref="vim.ClusterComputeResource"
      version-id-ref="vim.version.version13"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Describes the validation results.]]>
      </description-html>
            <property name="info" type-id-ref="vmodl.LocalizableMessage"
      vmodl-name="info"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Describes the messages relevant to the validation result]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="SendSNMPAction"
      type-id="vim.action.SendSNMPAction"
      vmodl-name="vim.action.SendSNMPAction"
      version-id-ref="vim.version.version1"
      base-type-id="vim.action.Action"
      >
      <description-html>
         <![CDATA[This data object type specifies an SNMP trap that is triggered by an alarm.]]>
      </description-html>
   </data-object>
   <data-object name="LocalizationManagerMessageCatalog"
      type-id="vim.LocalizationManager.MessageCatalog"
      vmodl-name="vim.LocalizationManager.MessageCatalog"
      enclosing-type-id-ref="vim.LocalizationManager"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Description of an available message catalog]]>
      </description-html>
            <property name="moduleName" type-id-ref="java.lang.String"
      vmodl-name="moduleName"
      >
      <description-html>
         <![CDATA[The module or extension that publishes this catalog.

 The moduleName will be empty for the core catalogs for the
 VirtualCenter server itself.]]>
      </description-html>
      </property>

            <property name="catalogName" type-id-ref="java.lang.String"
      vmodl-name="catalogName"
      >
      <description-html>
         <![CDATA[The name of the catalog.]]>
      </description-html>
      </property>

            <property name="locale" type-id-ref="java.lang.String"
      vmodl-name="locale"
      >
      <description-html>
         <![CDATA[The locale for the catalog.]]>
      </description-html>
      </property>

            <property name="catalogUri" type-id-ref="java.lang.String"
      vmodl-name="catalogUri"
      >
      <description-html>
         <![CDATA[The URI (relative to the connection URL for the VirtualCenter server
 itself) from which the catalog can be downloaded.

 The caller will need to augment this with a scheme and authority (host
 and port) to make a complete URL.]]>
      </description-html>
      </property>

            <property name="lastModified" type-id-ref="vmodl.DateTime"
      vmodl-name="lastModified"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The last-modified time of the catalog file, if available]]>
      </description-html>
      </property>

            <property name="md5sum" type-id-ref="java.lang.String"
      vmodl-name="md5sum"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The checksum of the catalog file, if available]]>
      </description-html>
      </property>

            <property name="version" type-id-ref="java.lang.String"
      vmodl-name="version"
      version-id-ref="vim.version.version7"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The version of the catalog file, if available

 The format is dot-separated version string, e.g. "1.2.3".]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VmEvent"
      type-id="vim.event.VmEvent"
      vmodl-name="vim.event.VmEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.Event"
      >
      <description-html>
         <![CDATA[These are virtual machine events.]]>
      </description-html>
            <property name="template" type-id-ref="BOOLEAN"
      vmodl-name="template"
      >
      <description-html>
         <![CDATA[Indicates whether or not the virtual machine is marked as a template.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ServiceConsolePortGroupProfile"
      type-id="vim.profile.host.ServiceConsolePortGroupProfile"
      vmodl-name="vim.profile.host.ServiceConsolePortGroupProfile"
      version-id-ref="vim.version.version5"
      base-type-id="vim.profile.host.PortGroupProfile"
      >
      <description-html>
         <![CDATA[The <a href="vim.profile.host.ServiceConsolePortGroupProfile.html">ServiceConsolePortGroupProfile</a> data object represents
  the profile for a port group that will be used by the service console.
  If a profile plug-in defines policies or subprofiles, use the
  <a href="vim.profile.ApplyProfile.html#policy">policy</a> or <a href="vim.profile.ApplyProfile.html#property">property</a>
  list to access the additional configuration data.]]>
      </description-html>
            <property name="ipConfig" type-id-ref="vim.profile.host.IpAddressProfile"
      vmodl-name="ipConfig"
      >
      <description-html>
         <![CDATA[IP address configuration for the service console network.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="TaskTimeoutEvent"
      type-id="vim.event.TaskTimeoutEvent"
      vmodl-name="vim.event.TaskTimeoutEvent"
      version-id-ref="vim.version.version2"
      base-type-id="vim.event.TaskEvent"
      >
      <description-html>
         <![CDATA[This event records when a task is cleaned up b/c of timeout]]>
      </description-html>
   </data-object>
   <data-object name="VirtualMachineFileLayoutExDiskUnit"
      type-id="vim.vm.FileLayoutEx.DiskUnit"
      vmodl-name="vim.vm.FileLayoutEx.DiskUnit"
      enclosing-type-id-ref="vim.vm.FileLayoutEx"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Information about a single unit of a virtual disk, such as
  the base-disk or a delta-disk.
  <p>
  A disk-unit consists of at least one descriptor
  file, and zero or more extent files.
  <p>
  Sometimes, a disk-unit is also referred to as a <I>backing</I>.]]>
      </description-html>
            <property name="fileKey" type-id-ref="INT"
      vmodl-name="fileKey"
      is-array="true"
      >
      <description-html>
         <![CDATA[Array of keys of the files that make up the disk unit. Values here
  correspond to property <a href="vim.vm.FileLayoutEx.FileInfo.html#key">key</a> in
  <a href="vim.vm.FileLayoutEx.html#file">file</a>.
  <p>
  At least one entry always exists in this array. Property
  <a href="vim.vm.FileLayoutEx.FileInfo.html#type">type</a> of the referenced file
  can be used to distinguish the disk descriptor (type FileLayoutEx.FileType#diskDescriptor) from the extents.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="StorageDrsAutomationConfig"
      type-id="vim.storageDrs.AutomationConfig"
      vmodl-name="vim.storageDrs.AutomationConfig"
      version-id-ref="vim.version.version10"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Storage DRS fine grain automation controls
  <p>]]>
      </description-html>
            <property name="spaceLoadBalanceAutomationMode" type-id-ref="java.lang.String"
      vmodl-name="spaceLoadBalanceAutomationMode"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Specifies the behavior of Storage DRS when it generates
 recommendations for correcting space load imbalance in a
 datastore cluster. See <a href="vim.storageDrs.PodConfigInfo.html">StorageDrsPodConfigInfo</a>. If specified, this option
 overrides the datastore cluster level automation behavior defined in the
 <a href="vim.storageDrs.PodConfigInfo.html">StorageDrsPodConfigInfo</a>.]]>
      </description-html>
      </property>

            <property name="ioLoadBalanceAutomationMode" type-id-ref="java.lang.String"
      vmodl-name="ioLoadBalanceAutomationMode"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Specifies the behavior of Storage DRS when it generates
 recommendations for correcting I/O load imbalance in a datastore
 cluster. See <a href="vim.storageDrs.PodConfigInfo.html">StorageDrsPodConfigInfo</a>. If specified, this option
 overrides the datastore cluster level automation behavior defined in the
 <a href="vim.storageDrs.PodConfigInfo.html">StorageDrsPodConfigInfo</a>.]]>
      </description-html>
      </property>

            <property name="ruleEnforcementAutomationMode" type-id-ref="java.lang.String"
      vmodl-name="ruleEnforcementAutomationMode"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Specifies the behavior of Storage DRS when it generates
 recommendations for correcting affinity rule violations in a
 datastore cluster. See <a href="vim.storageDrs.PodConfigInfo.Behavior.html">StorageDrsPodConfigInfoBehavior</a>. If
 specified, this option overrides the datastore cluster level
 automation behavior defined in the <a href="vim.storageDrs.PodConfigInfo.html">StorageDrsPodConfigInfo</a> for
 recommendations aimed at fixing rule violations.]]>
      </description-html>
      </property>

            <property name="policyEnforcementAutomationMode" type-id-ref="java.lang.String"
      vmodl-name="policyEnforcementAutomationMode"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Specifies the behavior of Storage DRS when it generates
 recommendations for correcting storage and Vm policy violations
 in a datastore cluster. See <a href="vim.storageDrs.PodConfigInfo.Behavior.html">StorageDrsPodConfigInfoBehavior</a>. If
 specified, this option overrides the datastore cluster level
 automation behavior defined in the <a href="vim.storageDrs.PodConfigInfo.html">StorageDrsPodConfigInfo</a> for
 recommendations aimed at fixing storage policy violations.]]>
      </description-html>
      </property>

            <property name="vmEvacuationAutomationMode" type-id-ref="java.lang.String"
      vmodl-name="vmEvacuationAutomationMode"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Specifies the behavior of Storage DRS when it generates
 recommendations for datastore evacuations in a datastore
 cluster. See <a href="vim.storageDrs.PodConfigInfo.Behavior.html">StorageDrsPodConfigInfoBehavior</a>. If specified, this
 option overrides the datastore cluster level automation behavior
 defined in the <a href="vim.storageDrs.PodConfigInfo.html">StorageDrsPodConfigInfo</a> for recommendations aimed at
 evacuating Vms from a datastore.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VmAcquiredTicketEvent"
      type-id="vim.event.VmAcquiredTicketEvent"
      vmodl-name="vim.event.VmAcquiredTicketEvent"
      version-id-ref="vim.version.version6"
      base-type-id="vim.event.VmEvent"
      >
      <description-html>
         <![CDATA[This event records a user successfully acquiring a ticket]]>
      </description-html>
            <property name="ticketType" type-id-ref="java.lang.String"
      vmodl-name="ticketType"
      >
      <description-html>
         <![CDATA[The type of the ticket<br>See VirtualMachine.TicketType]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="UpdateVirtualMachineFilesResultFailedVmFileInfo"
      type-id="vim.UpdateVirtualMachineFilesResult.FailedVmFileInfo"
      vmodl-name="vim.UpdateVirtualMachineFilesResult.FailedVmFileInfo"
      enclosing-type-id-ref="vim.UpdateVirtualMachineFilesResult"
      version-id-ref="vim.version.version6"
      base-type-id="vmodl.DynamicData"
      >
            <property name="vmFile" type-id-ref="java.lang.String"
      vmodl-name="vmFile"
      >
      <description-html>
         <![CDATA[The file path]]>
      </description-html>
      </property>

            <property name="fault" type-id-ref="vmodl.LocalizedMethodFault"
      vmodl-name="fault"
      >
      <description-html>
         <![CDATA[The reason why the update failed.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VmInstanceUuidConflictEvent"
      type-id="vim.event.VmInstanceUuidConflictEvent"
      vmodl-name="vim.event.VmInstanceUuidConflictEvent"
      version-id-ref="vim.version.version5"
      base-type-id="vim.event.VmEvent"
      >
      <description-html>
         <![CDATA[This event records a conflict of virtual machine instance UUIDs.]]>
      </description-html>
            <property name="conflictedVm" type-id-ref="vim.event.VmEventArgument"
      vmodl-name="conflictedVm"
      >
      <description-html>
         <![CDATA[The virtual machine whose instance UUID conflicts with the
  current virtual machine's instance UUID.]]>
      </description-html>
      </property>

            <property name="instanceUuid" type-id-ref="java.lang.String"
      vmodl-name="instanceUuid"
      >
      <description-html>
         <![CDATA[The instance UUID in conflict.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="IscsiPortInfo"
      type-id="vim.host.IscsiManager.IscsiPortInfo"
      vmodl-name="vim.host.IscsiManager.IscsiPortInfo"
      enclosing-type-id-ref="vim.host.IscsiManager"
      version-id-ref="vim.version.version7"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The IscsiPortInfo data object describes the
  Virtual NIC that are bound to an iSCSI adapter and
  also it describes the candidate Virtual NICs that
  can be bound to a given iSCSI adapter.]]>
      </description-html>
            <property name="vnicDevice" type-id-ref="java.lang.String"
      vmodl-name="vnicDevice"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Virtual NIC Name.

 Contains the name of the Virtual NIC device. This may be
 unset in case where the bound Virtual NIC doesn't have the system object or
 where a candidate Physical NIC isn't associated with any Virtual NIC.]]>
      </description-html>
      </property>

            <property name="vnic" type-id-ref="vim.host.VirtualNic"
      vmodl-name="vnic"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Virtual NIC Object corresponding to the vnicDevice.

 May be unset if Virtual NIC object corresponding to vnicDevice doesn't
 exist in the system.]]>
      </description-html>
      </property>

            <property name="pnicDevice" type-id-ref="java.lang.String"
      vmodl-name="pnicDevice"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Physical NIC Name.]]>
      </description-html>
      </property>

            <property name="pnic" type-id-ref="vim.host.PhysicalNic"
      vmodl-name="pnic"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Physical NIC Object corresponding to the pnicDevice.

 May be unset if Physical NIC object corresponding to pnicDevice doesn't
 exist in the system or the vnicDevice doesn't have any Physical NIC
 associated with it.]]>
      </description-html>
      </property>

            <property name="switchName" type-id-ref="java.lang.String"
      vmodl-name="switchName"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Name of the virtual switch this Physical/Virtual NIC belongs.

 May be unset if the vnicDevice and/or pnicDevice do not have a
 virtual switch associated with them.]]>
      </description-html>
      </property>

            <property name="switchUuid" type-id-ref="java.lang.String"
      vmodl-name="switchUuid"
      is-optional="true"
      >
      <description-html>
         <![CDATA[UUID of the virtual switch this Physical/Virtual NIC belongs.

 May be unset if the vnicDevice and/or pnicDevice do not have a
 virtual switch associated with them or the associated switch is not VDS.]]>
      </description-html>
      </property>

            <property name="portgroupName" type-id-ref="java.lang.String"
      vmodl-name="portgroupName"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Name of the portgroup to which this Virtual NIC belongs.

 May be unset if the vnicDevice and/or pnicDevice do not have a
 Portgroup associated with them.]]>
      </description-html>
      </property>

            <property name="portgroupKey" type-id-ref="java.lang.String"
      vmodl-name="portgroupKey"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Portgroup key to which this Virtual NIC belongs.

 May be unset if the vnicDevice and/or pnicDevice do not have a
 Portgroup associated with them or the associated portgroup does
 is not of VDS type.]]>
      </description-html>
      </property>

            <property name="portKey" type-id-ref="java.lang.String"
      vmodl-name="portKey"
      is-optional="true"
      >
      <description-html>
         <![CDATA[portkey to which this Virtual NIC belongs.

 May be unset if the vnicDevice is not assigned to a specific port or
 the switch is not VDS.]]>
      </description-html>
      </property>

            <property name="opaqueNetworkId" type-id-ref="java.lang.String"
      vmodl-name="opaqueNetworkId"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[ID of the Opaque network to which the virtual NIC is connected.

 This property is set only when vnicDevice is associated with an
 opaque network.]]>
      </description-html>
      </property>

            <property name="opaqueNetworkType" type-id-ref="java.lang.String"
      vmodl-name="opaqueNetworkType"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Type of the Opaque network to which the virtual NIC is connected.

 This property is set only when vnicDevice is associated with an
 opaque network.]]>
      </description-html>
      </property>

            <property name="opaqueNetworkName" type-id-ref="java.lang.String"
      vmodl-name="opaqueNetworkName"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Name of the Opaque network to which the virtual NIC is connected.

 This property is set only when vnicDevice is associated with an
 opaque network.]]>
      </description-html>
      </property>

            <property name="externalId" type-id-ref="java.lang.String"
      vmodl-name="externalId"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[An ID assigned to the vmkernel adapter by external management plane
 or controller.

 This property is set only when vnicDevice is associated with an
 opaque network.]]>
      </description-html>
      </property>

            <property name="complianceStatus" type-id-ref="vim.host.IscsiManager.IscsiStatus"
      vmodl-name="complianceStatus"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Status indicating whether the Virtual NIC is compliant with the
 network policy that is required by iSCSI port binding.

 May be unset in the candidate NIC list.]]>
      </description-html>
      </property>

            <property name="pathStatus" type-id-ref="java.lang.String"
      vmodl-name="pathStatus"
      is-optional="true"
      >
      <description-html>
         <![CDATA[A status, as defined in PathStatus, indicating the
 existing storage paths dependency level on a given Virtual NIC.

 May be unset in the candidate NIC list.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.host.IscsiManager.IscsiPortInfo.PathStatus</nested-type-id-ref>
   </data-object>
   <data-object name="ClusterReconfiguredEvent"
      type-id="vim.event.ClusterReconfiguredEvent"
      vmodl-name="vim.event.ClusterReconfiguredEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.ClusterEvent"
      >
      <description-html>
         <![CDATA[This event records when a cluster is reconfigured.]]>
      </description-html>
            <property name="configChanges" type-id-ref="vim.event.ChangesInfoEventArgument"
      vmodl-name="configChanges"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The configuration values changed during the reconfiguration.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostNetworkTrafficShapingPolicy"
      type-id="vim.host.NetworkPolicy.TrafficShapingPolicy"
      vmodl-name="vim.host.NetworkPolicy.TrafficShapingPolicy"
      enclosing-type-id-ref="vim.host.NetworkPolicy"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object type describes traffic shaping policy.]]>
      </description-html>
            <property name="enabled" type-id-ref="BOOLEAN"
      vmodl-name="enabled"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The flag to indicate whether or not traffic shaper is enabled on
  the port.]]>
      </description-html>
      </property>

            <property name="averageBandwidth" type-id-ref="LONG"
      vmodl-name="averageBandwidth"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The average bandwidth in bits per second if shaping is enabled on
  the port.]]>
      </description-html>
      </property>

            <property name="peakBandwidth" type-id-ref="LONG"
      vmodl-name="peakBandwidth"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The peak bandwidth during bursts in bits per second if traffic
  shaping is enabled on the port.]]>
      </description-html>
      </property>

            <property name="burstSize" type-id-ref="LONG"
      vmodl-name="burstSize"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The maximum burst size allowed in bytes if shaping is enabled on
  the port.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DvsHostVNicProfile"
      type-id="vim.profile.host.DvsHostVNicProfile"
      vmodl-name="vim.profile.host.DvsHostVNicProfile"
      version-id-ref="vim.version.version5"
      base-type-id="vim.profile.host.DvsVNicProfile"
      >
      <description-html>
         <![CDATA[The <a href="vim.profile.host.DvsHostVNicProfile.html">DvsHostVNicProfile</a> data object describes the IP configuration
 for a host Virtual NIC connected to a distributed virtual switch.
 The <a href="vim.profile.host.DvsVNicProfile.html#ipConfig">ipConfig</a> property contains the Virtual NIC IP address.
 If a profile plug-in defines policies or subprofiles, use the
 <a href="vim.profile.ApplyProfile.html#policy">policy</a> or <a href="vim.profile.ApplyProfile.html#property">property</a>
 list to access the additional configuration data.]]>
      </description-html>
   </data-object>
   <data-object name="VsanHostConfigInfoStorageInfo"
      type-id="vim.vsan.host.ConfigInfo.StorageInfo"
      vmodl-name="vim.vsan.host.ConfigInfo.StorageInfo"
      enclosing-type-id-ref="vim.vsan.host.ConfigInfo"
      version-id-ref="vim.version.version9"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Host-local VSAN storage configuration.  This data object is used
 both for specifying and retrieving storage configuration for a
 host participating in the VSAN service.]]>
      </description-html>
            <property name="autoClaimStorage" type-id-ref="BOOLEAN"
      vmodl-name="autoClaimStorage"
      is-deprecated="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Whether the VSAN service is configured to automatically claim local
 unused storage on this host.

 When set, the VSAN service will automatically format and use local
 disks.  Side effects from any disk consumption will be reflected in
 <a href="vim.vsan.host.ConfigInfo.StorageInfo.html#diskMapping">diskMapping</a>.

 If this argument is specified as a host-level configuration input
 at the VC-level (see <a href="vim.cluster.ConfigInfoEx.html#vsanHostConfig">vsanHostConfig</a>),
 it will override that of any cluster-level default value.<br>See <a href="vim.vsan.host.ConfigInfo.StorageInfo.html#diskMapping">diskMapping</a><br>See <a href="vim.cluster.ConfigInfoEx.html#vsanHostConfig">vsanHostConfig</a><br>See <a href="vim.vsan.cluster.ConfigInfo.html#defaultConfig">defaultConfig</a><br>]]>
      </description-html>
      <deprecated-html>
         <![CDATA[as this configuration will be deprecated, autoclaim
 will be no longer supported]]>
      </deprecated-html>
      </property>

            <property name="diskMapping" type-id-ref="vim.vsan.host.DiskMapping"
      vmodl-name="diskMapping"
      is-deprecated="true"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of <a href="vim.vsan.host.DiskMapping.html">VsanHostDiskMapping</a> entries in use by the VSAN service.

 DiskMappings to be used by the VSAN service may be manually
 specified using
 vim.host.VsanSystem#initializeDisks(DiskMapping[]).<br>See vim.host.VsanSystem#initializeDisks(DiskMapping[])]]>
      </description-html>
      <deprecated-html>
         <![CDATA[use <a href="vim.vsan.host.ConfigInfo.StorageInfo.html#diskMapInfo">diskMapInfo</a> instead.]]>
      </deprecated-html>
      </property>

            <property name="diskMapInfo" type-id-ref="vim.vsan.host.DiskMapInfo"
      vmodl-name="diskMapInfo"
      version-id-ref="vim.version.version10"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of <a href="vim.vsan.host.DiskMapping.html">VsanHostDiskMapping</a> entries with runtime information from
 the perspective of this host.]]>
      </description-html>
      </property>

            <property name="checksumEnabled" type-id-ref="BOOLEAN"
      vmodl-name="checksumEnabled"
      version-id-ref="vim.version.version10"
      is-deprecated="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Whether checksum is enabled on all the disks in this host.

 If any disk is not checksum capable or 520 bps formatted,
 we will skip it.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[This attribute was originally used for indicating whether
 hardware checksums is supported on the disks. But in vSphere 2016
 hardware checksums are replaced with software implementation,
 supported by all disks. This makes current field redundant,
 and its value as an input/output is ignored.]]>
      </deprecated-html>
      </property>

   </data-object>
   <data-object name="CryptoSpecEncrypt"
      type-id="vim.encryption.CryptoSpecEncrypt"
      vmodl-name="vim.encryption.CryptoSpecEncrypt"
      version-id-ref="vim.version.version11"
      base-type-id="vim.encryption.CryptoSpec"
      >
      <description-html>
         <![CDATA[This data object type encapsulates virtual machine or disk cryptohraphic
  settings for encryption operation.]]>
      </description-html>
            <property name="cryptoKeyId" type-id-ref="vim.encryption.CryptoKeyId"
      vmodl-name="cryptoKeyId"
      >
      </property>

   </data-object>
   <data-object name="PerfMetricSeries"
      type-id="vim.PerformanceManager.MetricSeries"
      vmodl-name="vim.PerformanceManager.MetricSeries"
      enclosing-type-id-ref="vim.PerformanceManager"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This is a generic data object type that stores values for a specific
  performance metric. Useful data objects that store actual metric values
  extend this data object (see <a href="vim.PerformanceManager.IntSeries.html">PerfMetricIntSeries</a>).]]>
      </description-html>
            <property name="id" type-id-ref="vim.PerformanceManager.MetricId"
      vmodl-name="id"
      >
      <description-html>
         <![CDATA[An identifier for the performance metric.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="OvfCreateDescriptorParams"
      type-id="vim.OvfManager.CreateDescriptorParams"
      vmodl-name="vim.OvfManager.CreateDescriptorParams"
      enclosing-type-id-ref="vim.OvfManager"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Collection of parameters for createDescriptor]]>
      </description-html>
            <property name="ovfFiles" type-id-ref="vim.OvfManager.OvfFile"
      vmodl-name="ovfFiles"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Contains information about the files of the entity, if they have already been
 downloaded. Needed to construct the References section of the descriptor.
 <p>
 OvfFile is a positive list of files to include in the export. An Empty list
 will do no filtering.]]>
      </description-html>
      </property>

            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The ovf:id to use for the top-level OVF Entity. If unset, the entity's
 product name is used if available. Otherwise, the VI entity name is used.]]>
      </description-html>
      </property>

            <property name="description" type-id-ref="java.lang.String"
      vmodl-name="description"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The contents of the Annontation section of the top-level OVF Entity. If unset,
 any existing annotation on the entity is left unchanged.]]>
      </description-html>
      </property>

            <property name="includeImageFiles" type-id-ref="BOOLEAN"
      vmodl-name="includeImageFiles"
      version-id-ref="vim.version.version6"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Controls whether attached image files should be included in the descriptor.
 This applies to image files attached to VirtualCdrom and VirtualFloppy.]]>
      </description-html>
      </property>

            <property name="exportOption" type-id-ref="java.lang.String"
      vmodl-name="exportOption"
      version-id-ref="vim.version.version8"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[An optional argument for modifying the export process.
 The option is used to control what extra information that will be included in the
 OVF descriptor.
 <p>
 To get a list of supported keywords see <a href="vim.OvfManager.html#ovfExportOption">OvfExportOption</a>. Unknown
 options will be ignored by the server.]]>
      </description-html>
      </property>

            <property name="snapshot" type-id-ref="vim.vm.Snapshot"
      vmodl-name="snapshot"
      version-id-ref="vim.version.version9"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Snapshot reference from which the OVF descriptor should be based.
 <p>
 If this parameter is set, the OVF descriptor is based off the
 snapshot point. This means that the OVF descriptor will have the
 same configuration as the virtual machine at the time the snapshot
 was taken.
 <p>
 The snapshot must be belong to the specified ManagedEntity in the
 createDescriptor call.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="PhysicalNicHint"
      type-id="vim.host.PhysicalNic.NetworkHint.HintElement"
      vmodl-name="vim.host.PhysicalNic.NetworkHint.HintElement"
      enclosing-type-id-ref="vim.host.PhysicalNic.NetworkHint"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object type describes each network of a physical
  network adapter's network hint.]]>
      </description-html>
            <property name="vlanId" type-id-ref="INT"
      vmodl-name="vlanId"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The optional VLAN Id of the network.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ClusterGroupInfo"
      type-id="vim.cluster.GroupInfo"
      vmodl-name="vim.cluster.GroupInfo"
      version-id-ref="vim.version.version6"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[<a href="vim.cluster.GroupInfo.html">ClusterGroupInfo</a> is the base type for all virtual machine
   and host groups. All virtual machines and hosts that are part of a group
   must be part of the same cluster.]]>
      </description-html>
            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      >
      <description-html>
         <![CDATA[Unique name of the group.]]>
      </description-html>
      </property>

            <property name="userCreated" type-id-ref="BOOLEAN"
      vmodl-name="userCreated"
      version-id-ref="vim.version.version7"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Flag to indicate whether the group is created by the user or the system.]]>
      </description-html>
      </property>

            <property name="uniqueID" type-id-ref="java.lang.String"
      vmodl-name="uniqueID"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Unique ID for the group.
 uniqueID is unique within a cluster.
 Groups residing in different clusters might share a uniqueID.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ClusterCryptoConfigInfo"
      type-id="vim.cluster.CryptoConfigInfo"
      vmodl-name="vim.cluster.CryptoConfigInfo"
      version-id-ref="vim.version.v7_0"
      base-type-id="vmodl.DynamicData"
      >
            <property name="cryptoMode" type-id-ref="java.lang.String"
      vmodl-name="cryptoMode"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The cluster encrypton mode.
  See CryptoMode for valid values.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.cluster.CryptoConfigInfo.CryptoMode</nested-type-id-ref>
   </data-object>
   <data-object name="HostAddFailedEvent"
      type-id="vim.event.HostAddFailedEvent"
      vmodl-name="vim.event.HostAddFailedEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.HostEvent"
      >
      <description-html>
         <![CDATA[This event records that adding a host failed.]]>
      </description-html>
            <property name="hostname" type-id-ref="java.lang.String"
      vmodl-name="hostname"
      >
      </property>

   </data-object>
   <data-object name="VsanUpgradeSystemHostsDisconnectedIssue"
      type-id="vim.VsanUpgradeSystem.HostsDisconnectedIssue"
      vmodl-name="vim.VsanUpgradeSystem.HostsDisconnectedIssue"
      enclosing-type-id-ref="vim.VsanUpgradeSystem"
      version-id-ref="vim.version.version10"
      base-type-id="vim.VsanUpgradeSystem.PreflightCheckIssue"
      >
      <description-html>
         <![CDATA[Pre-flight check encountered at least one host that is disconnected
 or not responding.]]>
      </description-html>
            <property name="hosts" type-id-ref="vim.HostSystem"
      vmodl-name="hosts"
      is-array="true"
      >
      <description-html>
         <![CDATA[Hosts this issue applies to.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VsanHostDiskMapResult"
      type-id="vim.vsan.host.DiskMapResult"
      vmodl-name="vim.vsan.host.DiskMapResult"
      version-id-ref="vim.version.version9"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[A DiskMapResult represents the result of an operation performed
 on the set of disks in a <a href="vim.vsan.host.DiskMapping.html">VsanHostDiskMapping</a>.<br>See <a href="vim.host.VsanSystem.html#initializeDisks">InitializeDisks_Task</a><br>See <a href="vim.host.VsanSystem.html#update">UpdateVsan_Task</a><br>]]>
      </description-html>
            <property name="mapping" type-id-ref="vim.vsan.host.DiskMapping"
      vmodl-name="mapping"
      >
      <description-html>
         <![CDATA[DiskMapping for this result.]]>
      </description-html>
      </property>

            <property name="diskResult" type-id-ref="vim.vsan.host.DiskResult"
      vmodl-name="diskResult"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of results for each disk in the mapping.]]>
      </description-html>
      </property>

            <property name="error" type-id-ref="vmodl.LocalizedMethodFault"
      vmodl-name="error"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Error information for this result.<br>See <a href="vim.fault.VsanDiskFault.html">VsanDiskFault</a><br>]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostMemberHealthCheckResult"
      type-id="vim.dvs.HostMember.HealthCheckResult"
      vmodl-name="vim.dvs.HostMember.HealthCheckResult"
      enclosing-type-id-ref="vim.dvs.HostMember"
      version-id-ref="vim.version.version8"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This class defines healthcheck result of the vSphere Distributed Switch.]]>
      </description-html>
            <property name="summary" type-id-ref="java.lang.String"
      vmodl-name="summary"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The summary of health check result.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostProfileConfigSpec"
      type-id="vim.profile.host.HostProfile.ConfigSpec"
      vmodl-name="vim.profile.host.HostProfile.ConfigSpec"
      enclosing-type-id-ref="vim.profile.host.HostProfile"
      version-id-ref="vim.version.version5"
      base-type-id="vim.profile.Profile.CreateSpec"
      >
      <description-html>
         <![CDATA[<a href="vim.profile.host.HostProfile.ConfigSpec.html">HostProfileConfigSpec</a> is the base data object
  for all <a href="vim.profile.host.HostProfile.html">HostProfile</a> configuration specifications.]]>
      </description-html>
   </data-object>
   <data-object name="StorageDrsIoLoadBalanceConfig"
      type-id="vim.storageDrs.IoLoadBalanceConfig"
      vmodl-name="vim.storageDrs.IoLoadBalanceConfig"
      version-id-ref="vim.version.version7"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Storage DRS configuration for I/O load balancing.
  <p>]]>
      </description-html>
            <property name="reservablePercentThreshold" type-id-ref="INT"
      vmodl-name="reservablePercentThreshold"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Storage DRS makes storage migration recommendations if total
  IOPs reservation of all VMs running on a datastore is higher than
  the specified threshold. Storage DRS recommends migration out of
  all such datastores, if more than one datastore exceed their reserved
  IOPs threshold.
  <p>
  The actual Iops used to determine threshold are computed from Storage
  DRS estimation of IOPs capacity of a datastore. The absolute value
  may change over time, according to storage response to workloads.
  <p>
  The valid values are in the range of 30 (i.e., 30%) to 100 (i.e., 100%).
  If not specified, the default value is 60%.]]>
      </description-html>
      </property>

            <property name="reservableIopsThreshold" type-id-ref="INT"
      vmodl-name="reservableIopsThreshold"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Storage DRS makes storage migration recommendations if total
  IOPs reservation of all VMs running on a datastore is higher than
  the specified threshold. Storage DRS recommends migration out of
  all such datastores, if more than one datastore exceed their reserved
  IOPs threshold.
  <p>
  This is an advanced option, and should only be used if Storage DRS
  estimated IOPs capacity is incorrect for datastores. The value
  should be based on conservative estimate of storage performance,
  and ideally should be set to about 50-60% of worse case peak
  performance of backing LUN.]]>
      </description-html>
      </property>

            <property name="reservableThresholdMode" type-id-ref="java.lang.String"
      vmodl-name="reservableThresholdMode"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Determines which reservation threshold specification to use.
 See <a href="vim.storageDrs.PodConfigInfo.Behavior.html">StorageDrsPodConfigInfoBehavior</a>. If unspecified, the
 mode is assumed automatic by default. Storage DRS uses
 percentage value in that case.
 If mode is specified, but corresponding reservationThreshold
 value is absent, option specific defaults are used.]]>
      </description-html>
      </property>

            <property name="ioLatencyThreshold" type-id-ref="INT"
      vmodl-name="ioLatencyThreshold"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Storage DRS makes storage migration recommendations if
  I/O latency on one (or more) of the datastores is higher than
  the specified threshold.
  <p>
  Unit: millisecond.
  The valid values are in the range of 5 to 100. If not specified,
  the default value is 15.]]>
      </description-html>
      </property>

            <property name="ioLoadImbalanceThreshold" type-id-ref="INT"
      vmodl-name="ioLoadImbalanceThreshold"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Storage DRS makes storage migration recommendations if
  I/O load imbalance level is higher than the specified threshold.
  <p>
  Unit: a number.
  The valid values are in the range of 1 to 100. If not specified,
  the default value is 5.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="TemplateUpgradeFailedEvent"
      type-id="vim.event.TemplateUpgradeFailedEvent"
      vmodl-name="vim.event.TemplateUpgradeFailedEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.TemplateUpgradeEvent"
      >
      <description-html>
         <![CDATA[This event records that the template upgrade failed.]]>
      </description-html>
            <property name="reason" type-id-ref="vmodl.LocalizedMethodFault"
      vmodl-name="reason"
      >
      </property>

   </data-object>
   <data-object name="HostPortGroupConfig"
      type-id="vim.host.PortGroup.Config"
      vmodl-name="vim.host.PortGroup.Config"
      enclosing-type-id-ref="vim.host.PortGroup"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This describes the port group configuration containing both
  the configurable properties on a port group and the associated
  virtual switch.]]>
      </description-html>
            <property name="changeOperation" type-id-ref="java.lang.String"
      vmodl-name="changeOperation"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates the change operation to apply on this configuration
  specification.<br>See <a href="vim.host.ConfigChange.Operation.html">HostConfigChangeOperation</a><br>]]>
      </description-html>
      </property>

            <property name="spec" type-id-ref="vim.host.PortGroup.Specification"
      vmodl-name="spec"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The specification of the port group.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="GhostDvsProxySwitchRemovedEvent"
      type-id="vim.event.GhostDvsProxySwitchRemovedEvent"
      vmodl-name="vim.event.GhostDvsProxySwitchRemovedEvent"
      version-id-ref="vim.version.version5"
      base-type-id="vim.event.HostEvent"
      >
      <description-html>
         <![CDATA[This event records when the ghost DVS proxy switches (a.k.a host
  proxy switches that don't match any DVS defined in Virtual Center)
  were removed on the host.]]>
      </description-html>
            <property name="switchUuid" type-id-ref="java.lang.String"
      vmodl-name="switchUuid"
      is-array="true"
      >
      <description-html>
         <![CDATA[The list of ghost DVS proxy switch uuid that were removed.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ClusterEVCManagerEVCState"
      type-id="vim.cluster.EVCManager.EVCState"
      vmodl-name="vim.cluster.EVCManager.EVCState"
      enclosing-type-id-ref="vim.cluster.EVCManager"
      version-id-ref="vim.version.version10"
      base-type-id="vmodl.DynamicData"
      >
            <property name="supportedEVCMode" type-id-ref="vim.EVCMode"
      vmodl-name="supportedEVCMode"
      is-array="true"
      >
      <description-html>
         <![CDATA[All supported EVC modes. Identical to
 <a href="vim.Capability.html#supportedEVCMode">supportedEVCMode</a>.]]>
      </description-html>
      </property>

            <property name="currentEVCModeKey" type-id-ref="java.lang.String"
      vmodl-name="currentEVCModeKey"
      is-optional="true"
      >
      <description-html>
         <![CDATA[If unset, then EVC is disabled. If set, then EVC is enabled, and the
  value references an EVC mode described in one of the elements of the
  <a href="vim.cluster.EVCManager.EVCState.html#supportedEVCMode">supportedEVCMode</a> array property. The EVC mode determines the
  set of guaranteed clusterwide CPU features. While EVC is enabled, CPU
  compatibility issues will not block any VMotion within the cluster
  (unless some VM is specifically configured to do different CPUID
  overrides).]]>
      </description-html>
      </property>

            <property name="guaranteedCPUFeatures" type-id-ref="vim.host.CpuIdInfo"
      vmodl-name="guaranteedCPUFeatures"
      is-deprecated="true"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[When EVC is enabled, this array contains the CPU feature bits that are
 guaranteed (by EVC) to be the same among all hosts in the cluster.
 This property has the same value as the guaranteedCPUFeatures property
 of the configured EVC mode. On any host in the EVC cluster, the CPU
 features either naturally match these values because of the CPU
 hardware, or else CPU feature override is used to mask out differences
 and enforce a match. This array is empty when EVC is disabled.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 6.5 use <a href="vim.cluster.EVCManager.EVCState.html#featureCapability">featureCapability</a>]]>
      </deprecated-html>
      </property>

            <property name="featureCapability" type-id-ref="vim.host.FeatureCapability"
      vmodl-name="featureCapability"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[When EVC is enabled, this array contains the feature capabilities that
 are guaranteed (by EVC) to be the same among all hosts in the cluster.
 This property has the same value as the featureCapability property
 of the configured EVC mode. On any host in the EVC cluster, the feature
 capabilities either naturally match these values because of the CPU
 hardware, or else feature masks are used to mask out differences and
 enforce a match. This array is empty when EVC is disabled.]]>
      </description-html>
      </property>

            <property name="featureMask" type-id-ref="vim.host.FeatureMask"
      vmodl-name="featureMask"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The masks (modifications to a host's feature capabilities) that limit a
 host's capabilities to that of the EVC mode baseline.]]>
      </description-html>
      </property>

            <property name="featureRequirement" type-id-ref="vim.vm.FeatureRequirement"
      vmodl-name="featureRequirement"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The conditions that must be true of a host's feature capabilities in order
 for the host to meet the minimum requirements of the EVC mode baseline.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostScsiTopologyTarget"
      type-id="vim.host.ScsiTopology.Target"
      vmodl-name="vim.host.ScsiTopology.Target"
      enclosing-type-id-ref="vim.host.ScsiTopology"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object type describes the SCSI target that is associated
  with a list of logical units.]]>
      </description-html>
            <property name="key" type-id-ref="java.lang.String"
      vmodl-name="key"
      >
      <description-html>
         <![CDATA[The identifier for the SCSI target]]>
      </description-html>
      </property>

            <property name="target" type-id-ref="INT"
      vmodl-name="target"
      >
      <description-html>
         <![CDATA[The target identifier.]]>
      </description-html>
      </property>

            <property name="lun" type-id-ref="vim.host.ScsiTopology.Lun"
      vmodl-name="lun"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The list of SCSI logical units with which a target is associated.]]>
      </description-html>
      </property>

            <property name="transport" type-id-ref="vim.host.TargetTransport"
      vmodl-name="transport"
      is-optional="true"
      >
      <description-html>
         <![CDATA[SCSI Transport information about the target.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="MissingObject"
      type-id="vmodl.query.PropertyCollector.MissingObject"
      vmodl-name="vmodl.query.PropertyCollector.MissingObject"
      enclosing-type-id-ref="vmodl.query.PropertyCollector"
      version-id-ref="vmodl.query.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Used for reporting missing objects that were explicitly referenced by a
  filter spec. In other words, any of the objects referenced in <a href="vmodl.query.PropertyCollector.FilterSpec.html#objectSet">objectSet</a>]]>
      </description-html>
            <property name="obj" type-id-ref="vmodl.ManagedObject"
      vmodl-name="obj"
      >
      <description-html>
         <![CDATA[The object that is being reported missing]]>
      </description-html>
      </property>

            <property name="fault" type-id-ref="vmodl.LocalizedMethodFault"
      vmodl-name="fault"
      >
      <description-html>
         <![CDATA[Fault describing the failure to lookup this object

  <p> The possible faults for missing objects are: <ul>

  <li> <a href="vmodl.fault.SystemError.html">SystemError</a> if there was some unknown problem
       looking up the object

  <li> <a href="vmodl.fault.ManagedObjectNotFound.html">ManagedObjectNotFound</a> if the object is no
       longer available

  </ul>]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="LicenseServerAvailableEvent"
      type-id="vim.event.LicenseServerAvailableEvent"
      vmodl-name="vim.event.LicenseServerAvailableEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.LicenseEvent"
      >
      <description-html>
         <![CDATA[This event is reported if the LicenseServer was previously unreachable
 and is now reachable.]]>
      </description-html>
            <property name="licenseServer" type-id-ref="java.lang.String"
      vmodl-name="licenseServer"
      >
      </property>

   </data-object>
   <data-object name="NvdimmSummary"
      type-id="vim.host.NvdimmSystem.Summary"
      vmodl-name="vim.host.NvdimmSystem.Summary"
      enclosing-type-id-ref="vim.host.NvdimmSystem"
      version-id-ref="vim.version.version12"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[\brief Get summary of nvdimm]]>
      </description-html>
            <property name="numDimms" type-id-ref="INT"
      vmodl-name="numDimms"
      >
      <description-html>
         <![CDATA[Number of NVDIMMs in the system]]>
      </description-html>
      </property>

            <property name="healthStatus" type-id-ref="java.lang.String"
      vmodl-name="healthStatus"
      is-localizable="true"
      >
      <description-html>
         <![CDATA[Summary of health status of all NVDIMMs in the system.]]>
      </description-html>
      </property>

            <property name="totalCapacity" type-id-ref="LONG"
      vmodl-name="totalCapacity"
      >
      <description-html>
         <![CDATA[Total capacity of all NVDIMMs in bytes]]>
      </description-html>
      </property>

            <property name="persistentCapacity" type-id-ref="LONG"
      vmodl-name="persistentCapacity"
      >
      <description-html>
         <![CDATA[Persistent region capacity in bytes]]>
      </description-html>
      </property>

            <property name="blockCapacity" type-id-ref="LONG"
      vmodl-name="blockCapacity"
      >
      <description-html>
         <![CDATA[Block region capacity in bytes]]>
      </description-html>
      </property>

            <property name="availableCapacity" type-id-ref="LONG"
      vmodl-name="availableCapacity"
      >
      <description-html>
         <![CDATA[Capacity not covered by namespace in bytes]]>
      </description-html>
      </property>

            <property name="numInterleavesets" type-id-ref="INT"
      vmodl-name="numInterleavesets"
      >
      <description-html>
         <![CDATA[Total number of interleave sets in the system]]>
      </description-html>
      </property>

            <property name="numNamespaces" type-id-ref="INT"
      vmodl-name="numNamespaces"
      >
      <description-html>
         <![CDATA[Total number of namespaces in the system]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostDeploymentInfo"
      type-id="vim.host.DeploymentInfo"
      vmodl-name="vim.host.DeploymentInfo"
      version-id-ref="vim.version.version11"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Data object describing the deployment information for a host.]]>
      </description-html>
            <property name="bootedFromStatelessCache" type-id-ref="BOOLEAN"
      vmodl-name="bootedFromStatelessCache"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Flag indicating if the host was booted from stateless cache.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DatastoreFileCopiedEvent"
      type-id="vim.event.DatastoreFileCopiedEvent"
      vmodl-name="vim.event.DatastoreFileCopiedEvent"
      version-id-ref="vim.version.version5"
      base-type-id="vim.event.DatastoreFileEvent"
      >
      <description-html>
         <![CDATA[This event records copy of a file or directory.]]>
      </description-html>
            <property name="sourceDatastore" type-id-ref="vim.event.DatastoreEventArgument"
      vmodl-name="sourceDatastore"
      >
      <description-html>
         <![CDATA[Source datastore.]]>
      </description-html>
      </property>

            <property name="sourceFile" type-id-ref="java.lang.String"
      vmodl-name="sourceFile"
      >
      <description-html>
         <![CDATA[Datastore path of the source file or directory.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostInternetScsiHbaDiscoveryProperties"
      type-id="vim.host.InternetScsiHba.DiscoveryProperties"
      vmodl-name="vim.host.InternetScsiHba.DiscoveryProperties"
      enclosing-type-id-ref="vim.host.InternetScsiHba"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The discovery settings for this host bus adapter.
  At least one discovery mode must always be active.
  Multiple modes may be active at the same time.]]>
      </description-html>
            <property name="iSnsDiscoveryEnabled" type-id-ref="BOOLEAN"
      vmodl-name="iSnsDiscoveryEnabled"
      >
      <description-html>
         <![CDATA[True if iSNS is currently enabled]]>
      </description-html>
      </property>

            <property name="iSnsDiscoveryMethod" type-id-ref="java.lang.String"
      vmodl-name="iSnsDiscoveryMethod"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The iSNS discovery method in use when iSNS is enabled.
  Must be one of the values of
  <a href="vim.host.InternetScsiHba.DiscoveryProperties.ISnsDiscoveryMethod.html">InternetScsiSnsDiscoveryMethod</a>]]>
      </description-html>
      </property>

            <property name="iSnsHost" type-id-ref="java.lang.String"
      vmodl-name="iSnsHost"
      is-optional="true"
      >
      <description-html>
         <![CDATA[For STATIC iSNS, this is the iSNS server address]]>
      </description-html>
      </property>

            <property name="slpDiscoveryEnabled" type-id-ref="BOOLEAN"
      vmodl-name="slpDiscoveryEnabled"
      >
      <description-html>
         <![CDATA[True if SLP is enabled]]>
      </description-html>
      </property>

            <property name="slpDiscoveryMethod" type-id-ref="java.lang.String"
      vmodl-name="slpDiscoveryMethod"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The current SLP discovery method when SLP is enabled.
  Must be one of the values of
  <a href="vim.host.InternetScsiHba.DiscoveryProperties.SlpDiscoveryMethod.html">SlpDiscoveryMethod</a>]]>
      </description-html>
      </property>

            <property name="slpHost" type-id-ref="java.lang.String"
      vmodl-name="slpHost"
      is-optional="true"
      >
      <description-html>
         <![CDATA[When the SLP discovery method is set to MANUAL, this property
 reflects the hostname, and optionally port number of the SLP DA.]]>
      </description-html>
      </property>

            <property name="staticTargetDiscoveryEnabled" type-id-ref="BOOLEAN"
      vmodl-name="staticTargetDiscoveryEnabled"
      >
      <description-html>
         <![CDATA[True if static target discovery is enabled]]>
      </description-html>
      </property>

            <property name="sendTargetsDiscoveryEnabled" type-id-ref="BOOLEAN"
      vmodl-name="sendTargetsDiscoveryEnabled"
      >
      <description-html>
         <![CDATA[True if send targets discovery is enabled]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.host.InternetScsiHba.DiscoveryProperties.ISnsDiscoveryMethod</nested-type-id-ref>
      <nested-type-id-ref>vim.host.InternetScsiHba.DiscoveryProperties.SlpDiscoveryMethod</nested-type-id-ref>
   </data-object>
   <data-object name="OutOfSyncDvsHost"
      type-id="vim.event.OutOfSyncDvsHost"
      vmodl-name="vim.event.OutOfSyncDvsHost"
      version-id-ref="vim.version.version5"
      base-type-id="vim.event.DvsEvent"
      >
      <description-html>
         <![CDATA[The list of hosts that have the DVS configuration on the host
  diverged from that of the Virtual Center Server.]]>
      </description-html>
            <property name="hostOutOfSync" type-id-ref="vim.event.DvsOutOfSyncHostArgument"
      vmodl-name="hostOutOfSync"
      is-array="true"
      >
      <description-html>
         <![CDATA[The host that went out of sync.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="OvfManagerCommonParams"
      type-id="vim.OvfManager.CommonParams"
      vmodl-name="vim.OvfManager.CommonParams"
      enclosing-type-id-ref="vim.OvfManager"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[A common super-class for basic OVF descriptor parameters]]>
      </description-html>
            <property name="locale" type-id-ref="java.lang.String"
      vmodl-name="locale"
      >
      <description-html>
         <![CDATA[The locale-identifier to choose from the descriptor. If empty, the
  default locale on the server is used.]]>
      </description-html>
      </property>

            <property name="deploymentOption" type-id-ref="java.lang.String"
      vmodl-name="deploymentOption"
      >
      <description-html>
         <![CDATA[The key of the chosen deployment option. If empty, the default option is
 chosen. The list of possible deployment options is returned in the result of
 parseDescriptor.]]>
      </description-html>
      </property>

            <property name="msgBundle" type-id-ref="vim.KeyValue"
      vmodl-name="msgBundle"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[An optional set of localization strings to be used. The server will use
  these message strings to localize information in the result and in
  error and warning messages.
  <p>
  This argument allows a client to pass messages from external
  string bundles. The client is responsible for selecting the right string
  bundle (based on locale) and parsing the external string bundle. The
  passed in key/value pairs are looked up before any messages
  included in the OVF descriptor itself.]]>
      </description-html>
      </property>

            <property name="importOption" type-id-ref="java.lang.String"
      vmodl-name="importOption"
      version-id-ref="vim.version.version8"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[An optional argument for modifing the OVF parsing. When the server parses an OVF
 descriptor a set of options can be used to modify the parsing. The argument is a list
 of keywords.
 <p>
 To get a list of supported keywords see <a href="vim.OvfManager.html#ovfImportOption">OvfImportOption</a>. Unknown
 options will be ignored by the server.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostMultipathInfoFixedLogicalUnitPolicy"
      type-id="vim.host.MultipathInfo.FixedLogicalUnitPolicy"
      vmodl-name="vim.host.MultipathInfo.FixedLogicalUnitPolicy"
      enclosing-type-id-ref="vim.host.MultipathInfo"
      version-id-ref="vim.version.version1"
      base-type-id="vim.host.MultipathInfo.LogicalUnitPolicy"
      >
      <description-html>
         <![CDATA[The <a href="vim.host.MultipathInfo.FixedLogicalUnitPolicy.html">HostMultipathInfoFixedLogicalUnitPolicy</a> data object
 describes a multipathing policy for a logical unit which uses
 a preferred path whenever possible.]]>
      </description-html>
            <property name="prefer" type-id-ref="java.lang.String"
      vmodl-name="prefer"
      >
      <description-html>
         <![CDATA[Preferred path used for the <b>fixed</b> policy.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualE1000eOption"
      type-id="vim.vm.device.VirtualE1000eOption"
      vmodl-name="vim.vm.device.VirtualE1000eOption"
      version-id-ref="vim.version.version7"
      base-type-id="vim.vm.device.VirtualEthernetCardOption"
      >
      <description-html>
         <![CDATA[The VirtualE1000e option data object type contains the options for the
  <a href="vim.vm.device.VirtualE1000e.html">VirtualE1000e</a> data object type.]]>
      </description-html>
   </data-object>
   <data-object name="IpRouteProfile"
      type-id="vim.profile.host.IpRouteProfile"
      vmodl-name="vim.profile.host.IpRouteProfile"
      version-id-ref="vim.version.version5"
      base-type-id="vim.profile.ApplyProfile"
      >
      <description-html>
         <![CDATA[The <a href="vim.profile.host.IpRouteProfile.html">IpRouteProfile</a> data object represents the host IP route configuration.
 If a profile plug-in defines policies or subprofiles, use the
 <a href="vim.profile.ApplyProfile.html#policy">policy</a> or <a href="vim.profile.ApplyProfile.html#property">property</a>
 list to access the additional configuration data.]]>
      </description-html>
            <property name="staticRoute" type-id-ref="vim.profile.host.StaticRouteProfile"
      vmodl-name="staticRoute"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of static routes to be configured.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="PlacementAffinityRule"
      type-id="vim.storageDrs.PlacementAffinityRule"
      vmodl-name="vim.storageDrs.PlacementAffinityRule"
      version-id-ref="vim.version.version10"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The <a href="vim.storageDrs.PlacementAffinityRule.html">PlacementAffinityRule</a> data object specifies
  affinity rules for placement]]>
      </description-html>
            <property name="ruleType" type-id-ref="java.lang.String"
      vmodl-name="ruleType"
      >
      <description-html>
         <![CDATA[Type of affinity rule. The set of possible values are described in
 <a href="vim.storageDrs.PlacementAffinityRule.RuleType.html">PlacementAffinityRuleRuleType</a>]]>
      </description-html>
      </property>

            <property name="ruleScope" type-id-ref="java.lang.String"
      vmodl-name="ruleScope"
      >
      <description-html>
         <![CDATA[Scope of the affinity rule. The set of possible values are described in
 <a href="vim.storageDrs.PlacementAffinityRule.RuleScope.html">PlacementAffinityRuleRuleScope</a>]]>
      </description-html>
      </property>

            <property name="vms" type-id-ref="vim.VirtualMachine"
      vmodl-name="vms"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of virtual machines that are part of this rule.]]>
      </description-html>
      </property>

            <property name="keys" type-id-ref="java.lang.String"
      vmodl-name="keys"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of PlacementSpec keys that are part of this rule representing
 virtual machines yet to be placed.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.storageDrs.PlacementAffinityRule.RuleType</nested-type-id-ref>
      <nested-type-id-ref>vim.storageDrs.PlacementAffinityRule.RuleScope</nested-type-id-ref>
   </data-object>
   <data-object name="OpaqueSwitchProfile"
      type-id="vim.profile.host.OpaqueSwitchProfile"
      vmodl-name="vim.profile.host.OpaqueSwitchProfile"
      version-id-ref="vim.version.v7_0"
      base-type-id="vim.profile.ApplyProfile"
      >
      <description-html>
         <![CDATA[The <a href="vim.profile.host.OpaqueSwitchProfile.html">OpaqueSwitchProfile</a> data object represents opaque switch
 configuration for the host.
 If a profile plug-in defines policies or subprofiles, use the
 <a href="vim.profile.ApplyProfile.html#policy">policy</a> or <a href="vim.profile.ApplyProfile.html#property">property</a>
 list to access the additional configuration data.]]>
      </description-html>
   </data-object>
   <data-object name="FloppyImageFileInfo"
      type-id="vim.host.DatastoreBrowser.FloppyImageInfo"
      vmodl-name="vim.host.DatastoreBrowser.FloppyImageInfo"
      enclosing-type-id-ref="vim.host.DatastoreBrowser"
      version-id-ref="vim.version.version1"
      base-type-id="vim.host.DatastoreBrowser.FileInfo"
      >
      <description-html>
         <![CDATA[This data object type describes a file that is a floppy disk image.]]>
      </description-html>
   </data-object>
   <data-object name="ClusterAction"
      type-id="vim.cluster.Action"
      vmodl-name="vim.cluster.Action"
      version-id-ref="vim.version.version2"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Base class for all action recommendations in VirtualCenter.]]>
      </description-html>
            <property name="type" type-id-ref="java.lang.String"
      vmodl-name="type"
      >
      <description-html>
         <![CDATA[Type of the action. This is encoded to differentiate between
 different types of actions aimed at achieving different goals.]]>
      </description-html>
      </property>

            <property name="target" type-id-ref="vmodl.ManagedObject"
      vmodl-name="target"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The target object on which this action will be applied. For
 instance, a migration action will have a virtual machine as its
 target object, while a host power action will have a host as its
 target action.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.cluster.Action.ActionType</nested-type-id-ref>
   </data-object>
   <data-object name="DistributedVirtualSwitchHostMemberBacking"
      type-id="vim.dvs.HostMember.Backing"
      vmodl-name="vim.dvs.HostMember.Backing"
      enclosing-type-id-ref="vim.dvs.HostMember"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Base class.]]>
      </description-html>
   </data-object>
   <data-object name="VmLogFileQuery"
      type-id="vim.host.DatastoreBrowser.VmLogQuery"
      vmodl-name="vim.host.DatastoreBrowser.VmLogQuery"
      enclosing-type-id-ref="vim.host.DatastoreBrowser"
      version-id-ref="vim.version.version1"
      base-type-id="vim.host.DatastoreBrowser.Query"
      >
      <description-html>
         <![CDATA[This data object type describes the query specification for a virtual machine log
  file file.]]>
      </description-html>
   </data-object>
   <data-object name="VMwareDvsIpfixCapability"
      type-id="vim.dvs.VmwareDistributedVirtualSwitch.IpfixFeatureCapability"
      vmodl-name="vim.dvs.VmwareDistributedVirtualSwitch.IpfixFeatureCapability"
      enclosing-type-id-ref="vim.dvs.VmwareDistributedVirtualSwitch"
      version-id-ref="vim.version.version10"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The feature capabilities of Ipfix supported by the vSphere Distributed Switch.]]>
      </description-html>
            <property name="ipfixSupported" type-id-ref="BOOLEAN"
      vmodl-name="ipfixSupported"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Flag to indicate whether IPFIX(NetFlow) is supported on the
  vSphere Distributed Switch.
  IPFIX is supported in vSphere Distributed Switch Version 5.0 or later.]]>
      </description-html>
      </property>

            <property name="ipv6ForIpfixSupported" type-id-ref="BOOLEAN"
      vmodl-name="ipv6ForIpfixSupported"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Flag to indicate whether IPv6 for IPFIX(NetFlow) is supported on the
  vSphere Distributed Switch.
  IPv6 for IPFIX is supported in vSphere Distributed Switch Version 6.0 or later.]]>
      </description-html>
      </property>

            <property name="observationDomainIdSupported" type-id-ref="BOOLEAN"
      vmodl-name="observationDomainIdSupported"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Flag to indicate whether Observation Domain Id for IPFIX is supported
  on the vSphere Distributed Switch.
  Observation Domain Id is supported in vSphere Distributed Switch Version 6.0 or later.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostCpuPackage"
      type-id="vim.host.CpuPackage"
      vmodl-name="vim.host.CpuPackage"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Information about a physical CPU package.]]>
      </description-html>
            <property name="index" type-id-ref="SHORT"
      vmodl-name="index"
      >
      <description-html>
         <![CDATA[Package index, starting from zero.]]>
      </description-html>
      </property>

            <property name="vendor" type-id-ref="java.lang.String"
      vmodl-name="vendor"
      >
      <description-html>
         <![CDATA[CPU vendor name, possible names currently are "Intel", "AMD",
  "arm", "hygon", or "unknown".]]>
      </description-html>
      </property>

            <property name="hz" type-id-ref="LONG"
      vmodl-name="hz"
      >
      <description-html>
         <![CDATA[CPU speed in HZ.]]>
      </description-html>
      </property>

            <property name="busHz" type-id-ref="LONG"
      vmodl-name="busHz"
      >
      <description-html>
         <![CDATA[Bus speed in HZ.]]>
      </description-html>
      </property>

            <property name="description" type-id-ref="java.lang.String"
      vmodl-name="description"
      >
      <description-html>
         <![CDATA[String summary description of CPU (for display purposes).]]>
      </description-html>
      </property>

            <property name="threadId" type-id-ref="SHORT"
      vmodl-name="threadId"
      is-array="true"
      >
      <description-html>
         <![CDATA[The logical CPU threads on this package.]]>
      </description-html>
      </property>

            <property name="cpuFeature" type-id-ref="vim.host.CpuIdInfo"
      vmodl-name="cpuFeature"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The CPU feature bit on this particular CPU. This is independent of
  the product and licensing capabilities.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.host.CpuPackage.Vendor</nested-type-id-ref>
   </data-object>
   <data-object name="HbrDiskMigrationAction"
      type-id="vim.storageDrs.HbrDiskMigrationAction"
      vmodl-name="vim.storageDrs.HbrDiskMigrationAction"
      version-id-ref="vim.version.version10"
      base-type-id="vim.cluster.Action"
      >
      <description-html>
         <![CDATA[Describes a single HBR secondary disk migration action. The storage migration
  action applies either to a single disk or a set of secondary virtual disks.
  <p>]]>
      </description-html>
            <property name="collectionId" type-id-ref="java.lang.String"
      vmodl-name="collectionId"
      >
      <description-html>
         <![CDATA[HMS Service specific collection id]]>
      </description-html>
      </property>

            <property name="collectionName" type-id-ref="java.lang.String"
      vmodl-name="collectionName"
      >
      <description-html>
         <![CDATA[HMS specific name of this collection]]>
      </description-html>
      </property>

            <property name="diskIds" type-id-ref="java.lang.String"
      vmodl-name="diskIds"
      is-array="true"
      >
      <description-html>
         <![CDATA[HBR disk ids of secondary disks moved by this action]]>
      </description-html>
      </property>

            <property name="source" type-id-ref="vim.Datastore"
      vmodl-name="source"
      >
      <description-html>
         <![CDATA[Source datastore.]]>
      </description-html>
      </property>

            <property name="destination" type-id-ref="vim.Datastore"
      vmodl-name="destination"
      >
      <description-html>
         <![CDATA[Destination datastore.]]>
      </description-html>
      </property>

            <property name="sizeTransferred" type-id-ref="LONG"
      vmodl-name="sizeTransferred"
      >
      <description-html>
         <![CDATA[The amount of data to be transferred.
  Unit: KB.]]>
      </description-html>
      </property>

            <property name="spaceUtilSrcBefore" type-id-ref="FLOAT"
      vmodl-name="spaceUtilSrcBefore"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Space utilization on the source datastore before storage migration.
  Unit: percentage. For example, if set to 70.0, space utilization is 70%.
  If not set, the value is not available.]]>
      </description-html>
      </property>

            <property name="spaceUtilDstBefore" type-id-ref="FLOAT"
      vmodl-name="spaceUtilDstBefore"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Space utilization on the destination datastore before storage migration.
  Unit: percentage. For example, if set to 70.0, space utilization is 70%.
  If not set, the value is not available.]]>
      </description-html>
      </property>

            <property name="spaceUtilSrcAfter" type-id-ref="FLOAT"
      vmodl-name="spaceUtilSrcAfter"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Expected space utilization on the source datastore after storage migration.
  Unit: percentage. For example, if set to 70.0, space utilization is 70%.
  If not set, the value is not available.]]>
      </description-html>
      </property>

            <property name="spaceUtilDstAfter" type-id-ref="FLOAT"
      vmodl-name="spaceUtilDstAfter"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Expected space utilization on the destination datastore after storage migration.
  Unit: percentage. For example, if set to 70.0, space utilization is 70%.
  If not set, the value is not available.]]>
      </description-html>
      </property>

            <property name="ioLatencySrcBefore" type-id-ref="FLOAT"
      vmodl-name="ioLatencySrcBefore"
      is-optional="true"
      >
      <description-html>
         <![CDATA[I/O latency on the source datastore before storage migration.
  Unit: millisecond.
  If not set, the value is not available.]]>
      </description-html>
      </property>

            <property name="ioLatencyDstBefore" type-id-ref="FLOAT"
      vmodl-name="ioLatencyDstBefore"
      is-optional="true"
      >
      <description-html>
         <![CDATA[I/O latency on the destination datastore before storage migration.
  Unit: millisecond.
  If not set, the value is not available.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostCnxFailedBadCcagentEvent"
      type-id="vim.event.HostCnxFailedBadCcagentEvent"
      vmodl-name="vim.event.HostCnxFailedBadCcagentEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.HostEvent"
      >
      <description-html>
         <![CDATA[This event records a failure to connect to a host
  due to no response being received from the host agent.]]>
      </description-html>
   </data-object>
   <data-object name="VmFailedToPowerOffEvent"
      type-id="vim.event.VmFailedToPowerOffEvent"
      vmodl-name="vim.event.VmFailedToPowerOffEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.VmEvent"
      >
      <description-html>
         <![CDATA[This event records a failure to power off a virtual machine.]]>
      </description-html>
            <property name="reason" type-id-ref="vmodl.LocalizedMethodFault"
      vmodl-name="reason"
      >
      <description-html>
         <![CDATA[The reason for the failure.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="FcoeConfigVlanRange"
      type-id="vim.host.FcoeConfig.VlanRange"
      vmodl-name="vim.host.FcoeConfig.VlanRange"
      enclosing-type-id-ref="vim.host.FcoeConfig"
      version-id-ref="vim.version.version7"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Used to represent inclusive intervals of VLAN IDs.

 Valid VLAN IDs fall within the range [0,4094], and the low value of a
 VlanRange must be less than or equal to the high value.]]>
      </description-html>
            <property name="vlanLow" type-id-ref="INT"
      vmodl-name="vlanLow"
      >
      </property>

            <property name="vlanHigh" type-id-ref="INT"
      vmodl-name="vlanHigh"
      >
      </property>

   </data-object>
   <data-object name="DatacenterRenamedEvent"
      type-id="vim.event.DatacenterRenamedEvent"
      vmodl-name="vim.event.DatacenterRenamedEvent"
      version-id-ref="vim.version.version2"
      base-type-id="vim.event.DatacenterEvent"
      >
            <property name="oldName" type-id-ref="java.lang.String"
      vmodl-name="oldName"
      >
      <description-html>
         <![CDATA[The old datacenter name.]]>
      </description-html>
      </property>

            <property name="newName" type-id-ref="java.lang.String"
      vmodl-name="newName"
      >
      <description-html>
         <![CDATA[The new datacenter name.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostActiveDirectorySpec"
      type-id="vim.host.ActiveDirectorySpec.Specification"
      vmodl-name="vim.host.ActiveDirectorySpec.Specification"
      enclosing-type-id-ref="vim.host.ActiveDirectorySpec"
      version-id-ref="vim.version.version6"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The <a href="vim.host.ActiveDirectorySpec.Specification.html">HostActiveDirectorySpec</a> data object defines
  properties for Active Directory domain access.]]>
      </description-html>
            <property name="domainName" type-id-ref="java.lang.String"
      vmodl-name="domainName"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Domain name.]]>
      </description-html>
      </property>

            <property name="userName" type-id-ref="java.lang.String"
      vmodl-name="userName"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Name of an Active Directory account with the authority
 to add a host to the domain.]]>
      </description-html>
      </property>

            <property name="password" type-id-ref="java.lang.String"
      vmodl-name="password"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Password for the Active Directory account.]]>
      </description-html>
      </property>

            <property name="camServer" type-id-ref="java.lang.String"
      vmodl-name="camServer"
      version-id-ref="vim.version.version7"
      is-optional="true"
      >
      <description-html>
         <![CDATA[If set, the CAM server will be used to join the domain
 and the <code>userName</code> and <code>password</code> fields
 will be ignored.]]>
      </description-html>
      </property>

            <property name="thumbprint" type-id-ref="java.lang.String"
      vmodl-name="thumbprint"
      version-id-ref="vim.version.version7"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Thumbprint for the SSL certficate of CAM server]]>
      </description-html>
      </property>

            <property name="smartCardAuthenticationEnabled" type-id-ref="BOOLEAN"
      vmodl-name="smartCardAuthenticationEnabled"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Support smart card authentication of local users.]]>
      </description-html>
      </property>

            <property name="smartCardTrustAnchors" type-id-ref="java.lang.String"
      vmodl-name="smartCardTrustAnchors"
      version-id-ref="vim.version.version10"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Trusted root certificates for smart cards.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DVSSecurityPolicy"
      type-id="vim.dvs.VmwareDistributedVirtualSwitch.SecurityPolicy"
      vmodl-name="vim.dvs.VmwareDistributedVirtualSwitch.SecurityPolicy"
      enclosing-type-id-ref="vim.dvs.VmwareDistributedVirtualSwitch"
      version-id-ref="vim.version.version5"
      base-type-id="vim.InheritablePolicy"
      >
      <description-html>
         <![CDATA[This data object type describes security policy governing ports.]]>
      </description-html>
            <property name="allowPromiscuous" type-id-ref="vim.BoolPolicy"
      vmodl-name="allowPromiscuous"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The flag to indicate whether or not all traffic is seen
  on the port.]]>
      </description-html>
      </property>

            <property name="macChanges" type-id-ref="vim.BoolPolicy"
      vmodl-name="macChanges"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The flag to indicate whether or not the Media Access
  Control (MAC) address can be changed.]]>
      </description-html>
      </property>

            <property name="forgedTransmits" type-id-ref="vim.BoolPolicy"
      vmodl-name="forgedTransmits"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The flag to indicate whether or not the virtual network adapter
  should be allowed to send network traffic with a different MAC
  address than that of the virtual network adapter.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualMachineUsageOnDatastore"
      type-id="vim.vm.StorageInfo.UsageOnDatastore"
      vmodl-name="vim.vm.StorageInfo.UsageOnDatastore"
      enclosing-type-id-ref="vim.vm.StorageInfo"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Storage space used by this virtual machine on a particular datastore.]]>
      </description-html>
            <property name="datastore" type-id-ref="vim.Datastore"
      vmodl-name="datastore"
      >
      <description-html>
         <![CDATA[Reference to datastore for which information is being provided.]]>
      </description-html>
      </property>

            <property name="committed" type-id-ref="LONG"
      vmodl-name="committed"
      >
      <description-html>
         <![CDATA[Storage space, in bytes, on this datastore that is actually being used by
  the virtual machine.
  <p>
  It includes space actually occupied by disks, logs, snapshots,
  configuration files etc. Files of the virtual machine which are present
  on a different datastore (e.g. a virtual disk on another datastore) are not
  included here. <a href="vim.vm.FileLayoutEx.html">VirtualMachineFileLayoutEx</a> provides a detailed
  break-up of the committed space.]]>
      </description-html>
      </property>

            <property name="uncommitted" type-id-ref="LONG"
      vmodl-name="uncommitted"
      >
      <description-html>
         <![CDATA[Additional storage space, in bytes, potentially used by the virtual machine
  on this datastore.
  <p>
  Additional space may be needed for example when lazily allocated disks grow,
  or storage for swap is allocated when powering on the virtual machine.
  <p>
  If the virtual machine is running off delta disks (for example because
  a snapshot was taken), then only the potential growth of the currently
  used delta-disks is considered.]]>
      </description-html>
      </property>

            <property name="unshared" type-id-ref="LONG"
      vmodl-name="unshared"
      >
      <description-html>
         <![CDATA[Storage space, in bytes, occupied by the virtual machine on this datastore
  that is not shared with any other virtual machine.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="OvfDeploymentOption"
      type-id="vim.OvfManager.DeploymentOption"
      vmodl-name="vim.OvfManager.DeploymentOption"
      enclosing-type-id-ref="vim.OvfManager"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[A deployment option as defined in the OVF specfication.
 <p>
 This corresponds to the Configuration element of the DeploymentOptionSection in the
 specification.]]>
      </description-html>
            <property name="key" type-id-ref="java.lang.String"
      vmodl-name="key"
      >
      <description-html>
         <![CDATA[The key of the deployment option, corresponding to the ovf:id attribute in the
 OVF descriptor]]>
      </description-html>
      </property>

            <property name="label" type-id-ref="java.lang.String"
      vmodl-name="label"
      >
      <description-html>
         <![CDATA[A localized label for the deployment option]]>
      </description-html>
      </property>

            <property name="description" type-id-ref="java.lang.String"
      vmodl-name="description"
      >
      <description-html>
         <![CDATA[A localizable description for the deployment option.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="SAMLTokenAuthentication"
      type-id="vim.vm.guest.SAMLTokenAuthentication"
      vmodl-name="vim.vm.guest.SAMLTokenAuthentication"
      version-id-ref="vim.version.version10"
      base-type-id="vim.vm.guest.GuestAuthentication"
      >
      <description-html>
         <![CDATA[SAMLTokenAuthentication contains the information necessary to authenticate
 within a guest using a SAML bearer token.
 SAML token authentication relies on a guest alias that associates a guest
 account with the subject and certificate
 encoded in a SAML token obtained from the VMware SSO Server.
 <ul>
 <li>Use the <a href="vim.vm.guest.AliasManager.html">GuestAliasManager</a>.
 <a href="vim.vm.guest.AliasManager.html#addAlias">AddGuestAlias</a> method to create a guest
 alias.</li>
 <li>Use a SAMLTokenAuthentication object for the
 auth parameter to guest operations methods.</li>
 </ul>
 <p>
 After you have created an alias, you can use SAML token authentication
 for guest operations methods.
 Do not use SAML token authentication for the
 <a href="vim.vm.guest.AuthManager.html#acquireCredentials">AcquireCredentialsInGuest</a> and
 <a href="vim.vm.guest.AuthManager.html#releaseCredentials">ReleaseCredentialsInGuest</a> methods.]]>
      </description-html>
            <property name="token" type-id-ref="java.lang.String"
      vmodl-name="token"
      >
      <description-html>
         <![CDATA[The SAML bearer token.]]>
      </description-html>
      </property>

            <property name="username" type-id-ref="java.lang.String"
      vmodl-name="username"
      is-optional="true"
      >
      <description-html>
         <![CDATA[This is the guest user to be associated with the authentication.
 If none is specified, a guest dependent mapping will decide what
 user account is applied.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostStatusChangedEvent"
      type-id="vim.event.HostStatusChangedEvent"
      vmodl-name="vim.event.HostStatusChangedEvent"
      version-id-ref="vim.version.version5"
      base-type-id="vim.event.ClusterStatusChangedEvent"
      >
      <description-html>
         <![CDATA[This event records when a host's overall status changed.]]>
      </description-html>
   </data-object>
   <data-object name="VirtualE1000e"
      type-id="vim.vm.device.VirtualE1000e"
      vmodl-name="vim.vm.device.VirtualE1000e"
      version-id-ref="vim.version.version7"
      base-type-id="vim.vm.device.VirtualEthernetCard"
      >
      <description-html>
         <![CDATA[The VirtualE1000e data object type represents an instance
  of the E1000e virtual Ethernet adapter attached to a virtual machine.]]>
      </description-html>
   </data-object>
   <data-object name="ProfilePolicyOptionMetadata"
      type-id="vim.profile.PolicyOptionMetadata"
      vmodl-name="vim.profile.PolicyOptionMetadata"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The <a href="vim.profile.PolicyOptionMetadata.html">ProfilePolicyOptionMetadata</a> data object contains the metadata information
 for a <a href="vim.profile.PolicyOption.html">PolicyOption</a>.]]>
      </description-html>
            <property name="id" type-id-ref="vim.ExtendedElementDescription"
      vmodl-name="id"
      >
      <description-html>
         <![CDATA[Identifier for the policy option.
 <ul>
 <li>The <code>id.key</code> value
 (<a href="vim.ExtendedElementDescription.html">ExtendedElementDescription</a>.<a href="vim.ElementDescription.html#key">key</a>)
 identifies the policy option type.</li>
 <li>The <code>id.label</code> property
 (<a href="vim.ExtendedElementDescription.html">ExtendedElementDescription</a>.<a href="vim.Description.html#label">label</a>)
 contains a brief localizable message describing the policy option.</li>
 <li>The <code>id.summary</code> property
 (<a href="vim.ExtendedElementDescription.html">ExtendedElementDescription</a>.<a href="vim.Description.html#summary">summary</a>)
 contains a localizable summary of the policy option.
 Summary information can contain embedded variable names which can
 be replaced with values from the <code>parameter</code> property.</li>]]>
      </description-html>
      </property>

            <property name="parameter" type-id-ref="vim.profile.ParameterMetadata"
      vmodl-name="parameter"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Metadata about the parameters for the policy option.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostRuntimeInfo"
      type-id="vim.host.RuntimeInfo"
      vmodl-name="vim.host.RuntimeInfo"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object type describes the runtime state of a host.]]>
      </description-html>
            <property name="connectionState" type-id-ref="vim.HostSystem.ConnectionState"
      vmodl-name="connectionState"
      >
      <description-html>
         <![CDATA[The host connection state. See the description in the enums for the
  <a href="vim.HostSystem.ConnectionState.html">ConnectionState</a> data object type.]]>
      </description-html>
      </property>

            <property name="powerState" type-id-ref="vim.HostSystem.PowerState"
      vmodl-name="powerState"
      version-id-ref="vim.version.version2"
      >
      <description-html>
         <![CDATA[The host power state. See the description in the enums for the
  <a href="vim.HostSystem.PowerState.html">PowerState</a> data object type.]]>
      </description-html>
      </property>

            <property name="standbyMode" type-id-ref="java.lang.String"
      vmodl-name="standbyMode"
      version-id-ref="vim.version.version6"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The host's standby mode. For valid values see
  <a href="vim.HostSystem.StandbyMode.html">HostStandbyMode</a>. The property is only populated by
  vCenter server. If queried directly from a ESX host, the property is
  is unset.]]>
      </description-html>
      </property>

            <property name="inMaintenanceMode" type-id-ref="BOOLEAN"
      vmodl-name="inMaintenanceMode"
      >
      <description-html>
         <![CDATA[The flag to indicate whether or not the host is in maintenance mode. This
  flag is set when the host has entered the maintenance mode. It is not set
  during the entering phase of maintenance mode.<br>See <a href="vim.HostSystem.html#enterMaintenanceMode">EnterMaintenanceMode_Task</a><br>See <a href="vim.HostSystem.html#exitMaintenanceMode">ExitMaintenanceMode_Task</a><br>]]>
      </description-html>
      </property>

            <property name="inQuarantineMode" type-id-ref="BOOLEAN"
      vmodl-name="inQuarantineMode"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The flag to indicate whether or not the host is in quarantine mode.
  InfraUpdateHa will recommend to set this flag based on the HealthUpdates
  received by the HealthUpdateProviders configured for the cluster. A
  host that is reported as degraded will be recommended to enter quarantine
  mode, while a host that is reported as healthy will be recommended to
  exit quarantine mode. Execution of these recommended actions will set
  this flag. Hosts in quarantine mode will be avoided by vSphere DRS as
  long as the increased consolidation in the cluster does not negatively
  affect VM performance.<br>See <a href="vim.HealthUpdateManager.html">HealthUpdateManager</a><br>See <a href="vim.cluster.InfraUpdateHaConfigInfo.html">ClusterInfraUpdateHaConfigInfo</a><br>See <a href="vim.cluster.HostInfraUpdateHaModeAction.html">ClusterHostInfraUpdateHaModeAction</a><br>]]>
      </description-html>
      </property>

            <property name="bootTime" type-id-ref="vmodl.DateTime"
      vmodl-name="bootTime"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The time when the host was booted.]]>
      </description-html>
      </property>

            <property name="healthSystemRuntime" type-id-ref="vim.host.HealthStatusSystem.Runtime"
      vmodl-name="healthSystemRuntime"
      version-id-ref="vim.version.version2"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Available system  health status]]>
      </description-html>
      </property>

            <property name="dasHostState" type-id-ref="vim.cluster.DasFdmHostState"
      vmodl-name="dasHostState"
      version-id-ref="vim.version.version7"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The availability state of an active host in a vSphere HA enabled
  cluster. A host is inactive if it is in maintenance or standby mode, or
  it has been disconnected from vCenter Server. The active hosts in a cluster
  form a vSphere HA fault domain.
  <p>
  The property is unset if vSphere HA is disabled, the host is
  in maintenance or standby mode, or the host is disconnected from
  vCenter Server. The property is set to hostDown if the host has crashed.]]>
      </description-html>
      </property>

            <property name="tpmPcrValues" type-id-ref="vim.host.TpmDigestInfo"
      vmodl-name="tpmPcrValues"
      version-id-ref="vim.version.version5"
      is-deprecated="true"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The array of PCR digest values stored in the TPM device since the last
  host boot time.
  <p />]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of]]>
      </deprecated-html>
      </property>

            <property name="vsanRuntimeInfo" type-id-ref="vim.vsan.host.VsanRuntimeInfo"
      vmodl-name="vsanRuntimeInfo"
      version-id-ref="vim.version.version9"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Host Runtime information related to the VSAN service.
  <p><br>See <a href="vim.vsan.host.VsanRuntimeInfo.html">VsanHostRuntimeInfo</a><br>]]>
      </description-html>
      </property>

            <property name="networkRuntimeInfo" type-id-ref="vim.host.RuntimeInfo.NetworkRuntimeInfo"
      vmodl-name="networkRuntimeInfo"
      version-id-ref="vim.version.version9"
      is-optional="true"
      >
      <description-html>
         <![CDATA[This property is for getting network related runtime info]]>
      </description-html>
      </property>

            <property name="vFlashResourceRuntimeInfo" type-id-ref="vim.host.VFlashManager.VFlashResourceRunTimeInfo"
      vmodl-name="vFlashResourceRuntimeInfo"
      version-id-ref="vim.version.version9"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Runtime information of vFlash resource of the host.]]>
      </description-html>
      </property>

            <property name="hostMaxVirtualDiskCapacity" type-id-ref="LONG"
      vmodl-name="hostMaxVirtualDiskCapacity"
      version-id-ref="vim.version.version9"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The maximum theoretical virtual disk capacity supported by this host]]>
      </description-html>
      </property>

            <property name="cryptoState" type-id-ref="java.lang.String"
      vmodl-name="cryptoState"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Encryption state of the host. Valid values are enumerated by the
 <a href="vim.HostSystem.CryptoState.html">CryptoState</a> type.]]>
      </description-html>
      </property>

            <property name="cryptoKeyId" type-id-ref="vim.encryption.CryptoKeyId"
      vmodl-name="cryptoKeyId"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Crypto Key used for coredump encryption]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.host.RuntimeInfo.NetStackInstanceRuntimeInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.host.RuntimeInfo.PlacedVirtualNicIdentifier</nested-type-id-ref>
      <nested-type-id-ref>vim.host.RuntimeInfo.PnicNetworkResourceInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.host.RuntimeInfo.NetworkResourceRuntimeInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.host.RuntimeInfo.NetworkRuntimeInfo</nested-type-id-ref>
   </data-object>
   <data-object name="HostNoHAEnabledPortGroupsEvent"
      type-id="vim.event.HostNoHAEnabledPortGroupsEvent"
      vmodl-name="vim.event.HostNoHAEnabledPortGroupsEvent"
      version-id-ref="vim.version.version5"
      base-type-id="vim.event.HostDasEvent"
      >
      <description-html>
         <![CDATA[This event records the fact that a host does not have any HA-enabled port
 groups]]>
      </description-html>
   </data-object>
   <data-object name="ExtensionFaultTypeInfo"
      type-id="vim.Extension.FaultTypeInfo"
      vmodl-name="vim.Extension.FaultTypeInfo"
      enclosing-type-id-ref="vim.Extension"
      version-id-ref="vim.version.version2"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object type describes fault types defined by the extension.]]>
      </description-html>
            <property name="faultID" type-id-ref="java.lang.String"
      vmodl-name="faultID"
      >
      <description-html>
         <![CDATA[The ID of the fault type. Should follow java package
  naming conventions for uniqueness.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DistributedVirtualSwitchHostProductSpec"
      type-id="vim.dvs.HostProductSpec"
      vmodl-name="vim.dvs.HostProductSpec"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object type is a subset of <a href="vim.AboutInfo.html">AboutInfo</a>. An object of
  this type can be used to describe the specification for a host.]]>
      </description-html>
            <property name="productLineId" type-id-ref="java.lang.String"
      vmodl-name="productLineId"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The product-line name.]]>
      </description-html>
      </property>

            <property name="version" type-id-ref="java.lang.String"
      vmodl-name="version"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Dot-separated version string. For example, "1.2".]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="StateAlarmExpression"
      type-id="vim.alarm.StateAlarmExpression"
      vmodl-name="vim.alarm.StateAlarmExpression"
      version-id-ref="vim.version.version1"
      base-type-id="vim.alarm.AlarmExpression"
      >
      <description-html>
         <![CDATA[An alarm expression that uses the running state of either a virtual machine or
  a host as the condition that triggers the alarm. Base type.
  <p>
  There are two alarm operands: yellow and red. At least one of them
  must be set. The value of the alarm expression is determined as follows:
  <ul>
  <li>If the red state is set but the yellow state is not: the expression is red when
  the state operand matches (isEqual operator) or does not match (isUnequal operator)
  the state of the managed entity. The expression is green otherwise.
  <li>If yellow is set but red is not: the expression is yellow when
  the state operand matches (isEqual) or does not match (isUnequal)
  the state of the managed entity. The expression is green otherwise.
  <li>If both yellow and red are set, the value of the expression is red when
  the red state operand matches (isEqual) or does not match (isUnequal)
  the state of the managed entity. Otherwise, the expression is
  yellow when the yellow state operand matches (isEqual) or does not match (isUnequal)
  the state of the managed entity. Otherwise, the expression is green.
  </ul>]]>
      </description-html>
            <property name="operator" type-id-ref="vim.alarm.StateAlarmExpression.StateOperator"
      vmodl-name="operator"
      >
      <description-html>
         <![CDATA[The operation to be tested on the target state.]]>
      </description-html>
      </property>

            <property name="type" type-id-ref="vmodl.TypeName"
      vmodl-name="type"
      >
      <description-html>
         <![CDATA[Name of the object type containing the property.]]>
      </description-html>
      </property>

            <property name="statePath" type-id-ref="vmodl.PropertyPath"
      vmodl-name="statePath"
      >
      <description-html>
         <![CDATA[Path of the state property.
 <p>
 The supported values:
 <ul>
 <li>for vim.VirtualMachine type:
 <li>  runtime.powerState or summary.quickStats.guestHeartbeatStatus
 <li>for vim.HostSystem type: runtime.connectionState
 </ul>]]>
      </description-html>
      </property>

            <property name="yellow" type-id-ref="java.lang.String"
      vmodl-name="yellow"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Whether or not to test for a yellow condition.
  If this property is not set, do not calculate yellow status.]]>
      </description-html>
      </property>

            <property name="red" type-id-ref="java.lang.String"
      vmodl-name="red"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Whether or not to test for a red condition.
  If this property is not set, do not calculate red status.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.alarm.StateAlarmExpression.StateOperator</nested-type-id-ref>
   </data-object>
   <data-object name="ExtensionPrivilegeInfo"
      type-id="vim.Extension.PrivilegeInfo"
      vmodl-name="vim.Extension.PrivilegeInfo"
      enclosing-type-id-ref="vim.Extension"
      version-id-ref="vim.version.version2"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object type describes privileges defined by the extension.]]>
      </description-html>
            <property name="privID" type-id-ref="java.lang.String"
      vmodl-name="privID"
      >
      <description-html>
         <![CDATA[The ID of the privilege.  The format should be
  &quot;&lt;group name&gt;.&lt;privilege name&gt;&quot;.
  The group name should be the same as the privGroupName
  property.
  <p>
  The privilege name should follow java package naming
  conventions for uniqueness. The set of characters allowed
  follow the same rules as <a href="vim.Extension.html#key">key</a>.]]>
      </description-html>
      </property>

            <property name="privGroupName" type-id-ref="java.lang.String"
      vmodl-name="privGroupName"
      >
      <description-html>
         <![CDATA[Hierarchical group name. Each level of the grouping hierarchy is
  separated by a "." so group names may not include a ".".
  <a href="vim.AuthorizationManager.Privilege.html#privGroupName">privGroupName</a>.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="NASDatastoreCreatedEvent"
      type-id="vim.event.NASDatastoreCreatedEvent"
      vmodl-name="vim.event.NASDatastoreCreatedEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.HostEvent"
      >
      <description-html>
         <![CDATA[This event records when a NAS datastore is created.]]>
      </description-html>
            <property name="datastore" type-id-ref="vim.event.DatastoreEventArgument"
      vmodl-name="datastore"
      >
      <description-html>
         <![CDATA[The associated datastore.]]>
      </description-html>
      </property>

            <property name="datastoreUrl" type-id-ref="java.lang.String"
      vmodl-name="datastoreUrl"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Url of the associated datastore.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HttpNfcLeaseSourceFile"
      type-id="vim.HttpNfcLease.SourceFile"
      vmodl-name="vim.HttpNfcLease.SourceFile"
      enclosing-type-id-ref="vim.HttpNfcLease"
      version-id-ref="vim.version.version12"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Descriptor of the remote source file used in pull scenario.]]>
      </description-html>
            <property name="targetDeviceId" type-id-ref="java.lang.String"
      vmodl-name="targetDeviceId"
      >
      <description-html>
         <![CDATA[Target device id that will be used to store remote file.
 Uniquely identifies host, vm and device.
 Given by this lease in DeviceUrl#importKey.]]>
      </description-html>
      </property>

            <property name="url" type-id-ref="java.lang.String"
      vmodl-name="url"
      >
      <description-html>
         <![CDATA[Full url of the source file, for example https://server/path/disk-1.vmdk.
 Or url to OVA, in that case <a href="vim.HttpNfcLease.SourceFile.html#memberName">memberName</a> should be specified.]]>
      </description-html>
      </property>

            <property name="memberName" type-id-ref="java.lang.String"
      vmodl-name="memberName"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Used only when OVA is specified in <a href="vim.HttpNfcLease.SourceFile.html#url">url</a>.
 Should contain file name to extract from OVA.]]>
      </description-html>
      </property>

            <property name="create" type-id-ref="BOOLEAN"
      vmodl-name="create"
      >
      <description-html>
         <![CDATA[True if PUT should be used for upload, otherwise POST.
 Same as <a href="vim.OvfManager.FileItem.html#create">create</a>]]>
      </description-html>
      </property>

            <property name="sslThumbprint" type-id-ref="java.lang.String"
      vmodl-name="sslThumbprint"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Esx has no CA database for checking arbitrary certificates.
 Client should verify the server certificate and provide
 certificate thumbprint here.]]>
      </description-html>
      </property>

            <property name="httpHeaders" type-id-ref="vim.KeyValue"
      vmodl-name="httpHeaders"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[For the case when remote server requires authentication or any other
 type of custom HTTP headers be provided with the request.]]>
      </description-html>
      </property>

            <property name="size" type-id-ref="LONG"
      vmodl-name="size"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Size of the file, if known. Otherwise it will be determined by a HEAD
 request. Not used for OVA members.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="NvdimmHealthInfo"
      type-id="vim.host.NvdimmSystem.HealthInfo"
      vmodl-name="vim.host.NvdimmSystem.HealthInfo"
      enclosing-type-id-ref="vim.host.NvdimmSystem"
      version-id-ref="vim.version.version12"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[\brief NVDIMM health information]]>
      </description-html>
            <property name="healthStatus" type-id-ref="java.lang.String"
      vmodl-name="healthStatus"
      is-localizable="true"
      >
      <description-html>
         <![CDATA[Device health status.]]>
      </description-html>
      </property>

            <property name="healthInformation" type-id-ref="java.lang.String"
      vmodl-name="healthInformation"
      is-localizable="true"
      >
      <description-html>
         <![CDATA[Health status description.]]>
      </description-html>
      </property>

            <property name="stateFlagInfo" type-id-ref="java.lang.String"
      vmodl-name="stateFlagInfo"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[State flag information.
 This information is the cumulation of state flags of all the
 NVDIMM region state flags. It must be one or more of
 HealthInfo.StateFlag]]>
      </description-html>
      </property>

            <property name="dimmTemperature" type-id-ref="INT"
      vmodl-name="dimmTemperature"
      >
      <description-html>
         <![CDATA[Current Nvdimm temperature in degree Celsius.]]>
      </description-html>
      </property>

            <property name="dimmTemperatureThreshold" type-id-ref="INT"
      vmodl-name="dimmTemperatureThreshold"
      >
      <description-html>
         <![CDATA[Nvdimm temperature threshold.
 Default value is 0, indicating threshold has not reached,
 if set to 1, reached threshold limit.]]>
      </description-html>
      </property>

            <property name="spareBlocksPercentage" type-id-ref="INT"
      vmodl-name="spareBlocksPercentage"
      >
      <description-html>
         <![CDATA[Percentage of spare capavity as a percentage of
 factory configured space (valid range 0 to 100)]]>
      </description-html>
      </property>

            <property name="spareBlockThreshold" type-id-ref="INT"
      vmodl-name="spareBlockThreshold"
      >
      <description-html>
         <![CDATA[Spare block threshold.
 Default value is 0, indicating threshold has not reached,
 if set to 1, reached threshold limit.]]>
      </description-html>
      </property>

            <property name="dimmLifespanPercentage" type-id-ref="INT"
      vmodl-name="dimmLifespanPercentage"
      >
      <description-html>
         <![CDATA[Lifespan of Nvdimm as percentage.
 100% = Warranted life span has reached.]]>
      </description-html>
      </property>

            <property name="esTemperature" type-id-ref="INT"
      vmodl-name="esTemperature"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Energy source current temperature in degree Celsius.
 Default value is 0, indicating there is no
 energy source for these nvdimms.]]>
      </description-html>
      </property>

            <property name="esTemperatureThreshold" type-id-ref="INT"
      vmodl-name="esTemperatureThreshold"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Energy source temperature threshold.
 Default value is 0, indicating threshold has not reached,
 if set to 1, reached threshold limit.]]>
      </description-html>
      </property>

            <property name="esLifespanPercentage" type-id-ref="INT"
      vmodl-name="esLifespanPercentage"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Lifespan of Energy source as percentage.
 100% = Warranted life span has reached.
 Default value is 0, indicating there is no energy
 source.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.host.NvdimmSystem.HealthInfo.StateFlag</nested-type-id-ref>
   </data-object>
   <data-object name="HostCnxFailedNoAccessEvent"
      type-id="vim.event.HostCnxFailedNoAccessEvent"
      vmodl-name="vim.event.HostCnxFailedNoAccessEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.HostEvent"
      >
      <description-html>
         <![CDATA[This event records a failure to connect to a host
  due to insufficient account privileges.]]>
      </description-html>
   </data-object>
   <data-object name="HostFirewallRulesetIpNetwork"
      type-id="vim.host.Ruleset.IpNetwork"
      vmodl-name="vim.host.Ruleset.IpNetwork"
      enclosing-type-id-ref="vim.host.Ruleset"
      version-id-ref="vim.version.version7"
      base-type-id="vmodl.DynamicData"
      >
            <property name="network" type-id-ref="java.lang.String"
      vmodl-name="network"
      >
      <description-html>
         <![CDATA[The IPv4 or IPv6 network.
  All IPv4 subnet addresses are specified as strings using dotted
  decimal format. For example, "192.0.20.0".
  IPv6 addresses are 128-bit addresses represented
  as eight fields of up to four hexadecimal digits. A colon separates each
  field (:). For example, 2001:DB8:101::230:6eff:fe04:d9ff. The address can
  also consist of  symbol '::' to represent multiple 16-bit groups of
  contiguous 0's only once in an address as described in RFC 2373.]]>
      </description-html>
      </property>

            <property name="prefixLength" type-id-ref="INT"
      vmodl-name="prefixLength"
      >
      <description-html>
         <![CDATA[The prefix length for the network.
  For example the prefix length for a network 10.20.120/22 is 22]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="CustomizationLicenseFilePrintData"
      type-id="vim.vm.customization.LicenseFilePrintData"
      vmodl-name="vim.vm.customization.LicenseFilePrintData"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The LicenseFilePrintData type maps directly to the LicenseFilePrintData key in the
  <tt>sysprep.xml</tt> answer file. These values are transferred into the
  <tt>sysprep.xml</tt> file that VirtualCenter stores on the target virtual disk. For
  more detailed information, see <a href =
  "https://technet.microsoft.com/en-us/library/cc771830(v=ws.10).aspx" target="_blank"
  >Performing Unattended Installations</a>.

  LicenseFilePrintData provides licensing information for Windows server operating
  systems.]]>
      </description-html>
            <property name="autoMode" type-id-ref="vim.vm.customization.LicenseFilePrintData.AutoMode"
      vmodl-name="autoMode"
      >
      <description-html>
         <![CDATA[Server licensing mode]]>
      </description-html>
      </property>

            <property name="autoUsers" type-id-ref="INT"
      vmodl-name="autoUsers"
      is-optional="true"
      >
      <description-html>
         <![CDATA[This key is valid only if AutoMode = PerServer. The integer value indicates the
  number of client licenses purchased for the VirtualCenter server being
  installed.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.vm.customization.LicenseFilePrintData.AutoMode</nested-type-id-ref>
   </data-object>
   <data-object name="IsoImageFileQuery"
      type-id="vim.host.DatastoreBrowser.IsoImageQuery"
      vmodl-name="vim.host.DatastoreBrowser.IsoImageQuery"
      enclosing-type-id-ref="vim.host.DatastoreBrowser"
      version-id-ref="vim.version.version1"
      base-type-id="vim.host.DatastoreBrowser.Query"
      >
      <description-html>
         <![CDATA[This data object type describes the query specification for an ISO CD-ROM image.]]>
      </description-html>
   </data-object>
   <data-object name="ClusterDasFailoverLevelAdvancedRuntimeInfoHostSlots"
      type-id="vim.cluster.DasFailoverLevelAdvancedRuntimeInfo.HostSlots"
      vmodl-name="vim.cluster.DasFailoverLevelAdvancedRuntimeInfo.HostSlots"
      enclosing-type-id-ref="vim.cluster.DasFailoverLevelAdvancedRuntimeInfo"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
            <property name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      >
      <description-html>
         <![CDATA[The reference to the host.]]>
      </description-html>
      </property>

            <property name="slots" type-id-ref="INT"
      vmodl-name="slots"
      >
      <description-html>
         <![CDATA[The number of slots in this host.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ClusterVmReadiness"
      type-id="vim.cluster.VmReadiness"
      vmodl-name="vim.cluster.VmReadiness"
      version-id-ref="vim.version.version11"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[VM readiness policy specifies when a VM is deemed ready.
 This is used in cluster VM orchestration settings. For example, vSphere HA
 restarts lower priority VMs only after higher priority VMs are ready.]]>
      </description-html>
            <property name="readyCondition" type-id-ref="java.lang.String"
      vmodl-name="readyCondition"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Ready condition for a virtual machine.
  See ReadyCondition.
  <p>
  If not specified at either the cluster level or the virtual machine
  level, this will default to ReadyCondition#none.
  <p>]]>
      </description-html>
      </property>

            <property name="postReadyDelay" type-id-ref="INT"
      vmodl-name="postReadyDelay"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Additional delay in seconds after ready condition is met. A VM is
  considered ready at this point.
  <p>
  If not specified in a VM override, cluster default setting is
  used. Alternatively, set to -1 in per-VM setting to use cluster default
  value.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.cluster.VmReadiness.ReadyCondition</nested-type-id-ref>
   </data-object>
   <data-object name="VirtualMachineProfileRawData"
      type-id="vim.vm.ProfileRawData"
      vmodl-name="vim.vm.ProfileRawData"
      version-id-ref="vim.version.version9"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The extensible data object type encapsulates additional data specific
  to Virtual Machine and its devices.
  <p>
  This data is provided by vSphere Extensions which are integral part
  of vSphere.
  <p>
  The data is not persisted in Virtual Machine configuration file but is
  stored and managed by extensions.
  <p>
  Storage Profile Based Management (SPBM) will be one of the consumers of
  this data structure. SPBM will provide detailed information about
  Virtual Machine storage requirements.
  <p>]]>
      </description-html>
            <property name="extensionKey" type-id-ref="java.lang.String"
      vmodl-name="extensionKey"
      >
      <description-html>
         <![CDATA[vSphere Extension Identifier]]>
      </description-html>
      </property>

            <property name="objectData" type-id-ref="java.lang.String"
      vmodl-name="objectData"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Extension-specific additional data to be associated
 with Virtual machine and its devices.
 <p>]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostHardwareElementInfo"
      type-id="vim.host.HardwareStatusInfo.HardwareElementInfo"
      vmodl-name="vim.host.HardwareStatusInfo.HardwareElementInfo"
      enclosing-type-id-ref="vim.host.HardwareStatusInfo"
      version-id-ref="vim.version.version2"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Data object describing the operational status of a physical
  element.]]>
      </description-html>
            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      >
      <description-html>
         <![CDATA[The name of the physical element]]>
      </description-html>
      </property>

            <property name="status" type-id-ref="vim.ElementDescription"
      vmodl-name="status"
      is-localizable="true"
      >
      <description-html>
         <![CDATA[The operational status of the physical element. The status is one of
  the values specified in HostHardwareElementStatus.<br>See <a href="vim.host.HardwareStatusInfo.Status.html">HostHardwareElementStatus</a><br>]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualFloppyOption"
      type-id="vim.vm.device.VirtualFloppyOption"
      vmodl-name="vim.vm.device.VirtualFloppyOption"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.device.VirtualDeviceOption"
      >
      <description-html>
         <![CDATA[The VirtualFloppyOption data class contains the options for the
  virtual floppy data object type.]]>
      </description-html>
      <nested-type-id-ref>vim.vm.device.VirtualFloppyOption.ImageBackingOption</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.device.VirtualFloppyOption.DeviceBackingOption</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.device.VirtualFloppyOption.RemoteDeviceBackingOption</nested-type-id-ref>
   </data-object>
   <data-object name="NotEnoughResourcesToStartVmEvent"
      type-id="vim.event.NotEnoughResourcesToStartVmEvent"
      vmodl-name="vim.event.NotEnoughResourcesToStartVmEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.VmEvent"
      >
      <description-html>
         <![CDATA[This event records when the HA does not find sufficient resources to failover a
  virtual machine.]]>
      </description-html>
            <property name="reason" type-id-ref="java.lang.String"
      vmodl-name="reason"
      version-id-ref="vim.version.version10"
      >
      <description-html>
         <![CDATA[The reason why the virtual machine could not be restarted]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="BoolPolicy"
      type-id="vim.BoolPolicy"
      vmodl-name="vim.BoolPolicy"
      version-id-ref="vim.version.version5"
      base-type-id="vim.InheritablePolicy"
      >
      <description-html>
         <![CDATA[The boolean type of setting or configuration that may get an
  inherited value.]]>
      </description-html>
            <property name="value" type-id-ref="BOOLEAN"
      vmodl-name="value"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The boolean value that is either set or inherited.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ServerLicenseExpiredEvent"
      type-id="vim.event.ServerLicenseExpiredEvent"
      vmodl-name="vim.event.ServerLicenseExpiredEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.LicenseEvent"
      >
      <description-html>
         <![CDATA[This event records an expired VirtualCenter server license.]]>
      </description-html>
            <property name="product" type-id-ref="java.lang.String"
      vmodl-name="product"
      >
      </property>

   </data-object>
   <data-object name="UpdatedAgentBeingRestartedEvent"
      type-id="vim.event.UpdatedAgentBeingRestartedEvent"
      vmodl-name="vim.event.UpdatedAgentBeingRestartedEvent"
      version-id-ref="vim.version.version2"
      base-type-id="vim.event.HostEvent"
      >
      <description-html>
         <![CDATA[This event records that the agent has been patched and will be
  restarted.]]>
      </description-html>
   </data-object>
   <data-object name="HostCnxFailedNetworkErrorEvent"
      type-id="vim.event.HostCnxFailedNetworkErrorEvent"
      vmodl-name="vim.event.HostCnxFailedNetworkErrorEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.HostEvent"
      >
      <description-html>
         <![CDATA[This event records a failure to connect to a host
  due to a network error.]]>
      </description-html>
   </data-object>
   <data-object name="UsbScanCodeSpec"
      type-id="vim.vm.UsbScanCodeSpec"
      vmodl-name="vim.vm.UsbScanCodeSpec"
      version-id-ref="vim.version.version11"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object contains information about which USB HID codes
 to send to the Virtual Machine's keyboard.]]>
      </description-html>
            <property name="keyEvents" type-id-ref="vim.vm.UsbScanCodeSpec.KeyEvent"
      vmodl-name="keyEvents"
      is-array="true"
      >
      </property>

      <nested-type-id-ref>vim.vm.UsbScanCodeSpec.ModifierType</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.UsbScanCodeSpec.KeyEvent</nested-type-id-ref>
   </data-object>
   <data-object name="HostPortGroup"
      type-id="vim.host.PortGroup"
      vmodl-name="vim.host.PortGroup"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object type is used to describe port groups.
  Port groups are used to group virtual network adapters on a virtual switch,
  associating them with networks and network policies.]]>
      </description-html>
            <property name="key" type-id-ref="java.lang.String"
      vmodl-name="key"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The linkable identifier.]]>
      </description-html>
      </property>

            <property name="port" type-id-ref="vim.host.PortGroup.Port"
      vmodl-name="port"
      is-array="true"
      is-optional="true"
      is-linkable="true"
      >
      <description-html>
         <![CDATA[The ports that currently exist and are used on this port group.]]>
      </description-html>
      </property>

            <property name="vswitch" type-id-ref="vim.host.VirtualSwitch"
      vmodl-name="vswitch"
      is-optional="true"
      is-link="true"
      >
      <description-html>
         <![CDATA[The virtual switch that contains this port group.]]>
      </description-html>
      </property>

            <property name="computedPolicy" type-id-ref="vim.host.NetworkPolicy"
      vmodl-name="computedPolicy"
      >
      <description-html>
         <![CDATA[Computed network policies that are applicable for a port group.  The
  inheritance scheme for PortGroup requires knowledge about the
  NetworkPolicy for a port group and its parent virtual switch as well as
  the logic for computing the results.  This information is provided as
  a convenience so that callers need not duplicate the inheritance logic
  to determine the proper values for a network policy.
  <p>
  See the description of the
  <a href="vim.host.NetworkPolicy.html">NetworkPolicy</a> data object type
  for more information.]]>
      </description-html>
      </property>

            <property name="spec" type-id-ref="vim.host.PortGroup.Specification"
      vmodl-name="spec"
      >
      <description-html>
         <![CDATA[The specification of a port group.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.host.PortGroup.PortConnecteeType</nested-type-id-ref>
      <nested-type-id-ref>vim.host.PortGroup.Specification</nested-type-id-ref>
      <nested-type-id-ref>vim.host.PortGroup.Config</nested-type-id-ref>
      <nested-type-id-ref>vim.host.PortGroup.Port</nested-type-id-ref>
   </data-object>
   <data-object name="HostVMotionManagerDstInstantCloneResult"
      type-id="vim.host.VMotionManager.DstInstantCloneResult"
      vmodl-name="vim.host.VMotionManager.DstInstantCloneResult"
      enclosing-type-id-ref="vim.host.VMotionManager"
      version-id-ref="vim.version.v7_0"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The result of an InstantClone task. Contains the dest VM id and timestamp
 values at the time of different operations.]]>
      </description-html>
            <property name="dstVmId" type-id-ref="INT"
      vmodl-name="dstVmId"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The destination VM ID of the InstantCloned VM.]]>
      </description-html>
      </property>

            <property name="startTime" type-id-ref="LONG"
      vmodl-name="startTime"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Time stamp at the start of the InstantClone operation at the dest
 VM.]]>
      </description-html>
      </property>

            <property name="cptLoadTime" type-id-ref="LONG"
      vmodl-name="cptLoadTime"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Time stamp when the destination VM starts cpt load.]]>
      </description-html>
      </property>

            <property name="cptLoadDoneTime" type-id-ref="LONG"
      vmodl-name="cptLoadDoneTime"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Time stamp when the destination VM completes cpt load.]]>
      </description-html>
      </property>

            <property name="replicateMemDoneTime" type-id-ref="LONG"
      vmodl-name="replicateMemDoneTime"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Time stamp when the destination VM completes replicating memory.]]>
      </description-html>
      </property>

            <property name="endTime" type-id-ref="LONG"
      vmodl-name="endTime"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Time stamp when the migration completes on the destination VM.]]>
      </description-html>
      </property>

            <property name="cptXferTime" type-id-ref="LONG"
      vmodl-name="cptXferTime"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Device checkpoint stream time.]]>
      </description-html>
      </property>

            <property name="cptCacheUsed" type-id-ref="LONG"
      vmodl-name="cptCacheUsed"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Checkpoint cache size used.]]>
      </description-html>
      </property>

            <property name="devCptStreamSize" type-id-ref="LONG"
      vmodl-name="devCptStreamSize"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Device checkpoint stream size.]]>
      </description-html>
      </property>

            <property name="devCptStreamTime" type-id-ref="LONG"
      vmodl-name="devCptStreamTime"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Device checkpoint stream time.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualPrecisionClock"
      type-id="vim.vm.device.VirtualPrecisionClock"
      vmodl-name="vim.vm.device.VirtualPrecisionClock"
      version-id-ref="vim.version.v7_0"
      base-type-id="vim.vm.device.VirtualDevice"
      >
      <description-html>
         <![CDATA[This data object type represents a virtual clock device providing
  precision time in a virtual machine.]]>
      </description-html>
      <nested-type-id-ref>vim.vm.device.VirtualPrecisionClock.SystemClockBackingInfo</nested-type-id-ref>
   </data-object>
   <data-object name="ModeInfo"
      type-id="vim.host.FileAccess.Modes"
      vmodl-name="vim.host.FileAccess.Modes"
      enclosing-type-id-ref="vim.host.FileAccess"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The FileAccess.Modes data object type defines the known access modes
  for a datastore. The property values specify how to interpret
  the "what" property for a FileAccess object.]]>
      </description-html>
            <property name="browse" type-id-ref="java.lang.String"
      vmodl-name="browse"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Can see the existence of a file.]]>
      </description-html>
      </property>

            <property name="read" type-id-ref="java.lang.String"
      vmodl-name="read"
      >
      <description-html>
         <![CDATA[Can read a file.]]>
      </description-html>
      </property>

            <property name="modify" type-id-ref="java.lang.String"
      vmodl-name="modify"
      >
      <description-html>
         <![CDATA[Can read and write a file.]]>
      </description-html>
      </property>

            <property name="use" type-id-ref="java.lang.String"
      vmodl-name="use"
      >
      <description-html>
         <![CDATA[Can execute or operate a file or look inside a directory.]]>
      </description-html>
      </property>

            <property name="admin" type-id-ref="java.lang.String"
      vmodl-name="admin"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Can change permissions for a file.]]>
      </description-html>
      </property>

            <property name="full" type-id-ref="java.lang.String"
      vmodl-name="full"
      >
      <description-html>
         <![CDATA[Can do anything to a file, including change permissions.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="AlarmSnmpFailedEvent"
      type-id="vim.event.AlarmSnmpFailedEvent"
      vmodl-name="vim.event.AlarmSnmpFailedEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.AlarmEvent"
      >
      <description-html>
         <![CDATA[This event records a failure to complete an alarm SNMP notification.]]>
      </description-html>
            <property name="entity" type-id-ref="vim.event.ManagedEntityEventArgument"
      vmodl-name="entity"
      >
      <description-html>
         <![CDATA[The entity with which the alarm is registered.]]>
      </description-html>
      </property>

            <property name="reason" type-id-ref="vmodl.LocalizedMethodFault"
      vmodl-name="reason"
      >
      <description-html>
         <![CDATA[The reason for the failure.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="FolderFailedHostResult"
      type-id="vim.Folder.FailedHostResult"
      vmodl-name="vim.Folder.FailedHostResult"
      enclosing-type-id-ref="vim.Folder"
      version-id-ref="vim.version.version13"
      base-type-id="vmodl.DynamicData"
      >
            <property name="hostName" type-id-ref="java.lang.String"
      vmodl-name="hostName"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Host name for which fault belongs to.]]>
      </description-html>
      </property>

            <property name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Host for which fault belongs to. Only set when the HostSystem
  reference is avaibale as a result of Host being part of inventory.]]>
      </description-html>
      </property>

            <property name="context" type-id-ref="vmodl.LocalizableMessage"
      vmodl-name="context"
      >
      <description-html>
         <![CDATA[Message describing context where the failure happened.]]>
      </description-html>
      </property>

            <property name="fault" type-id-ref="vmodl.LocalizedMethodFault"
      vmodl-name="fault"
      >
      <description-html>
         <![CDATA[Exception encountered while operating on this host.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostProxySwitch"
      type-id="vim.host.HostProxySwitch"
      vmodl-name="vim.host.HostProxySwitch"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The HostProxySwitch is a software entity which represents the component
  of a DistributedVirtualSwitch on a particular host.]]>
      </description-html>
            <property name="dvsUuid" type-id-ref="java.lang.String"
      vmodl-name="dvsUuid"
      >
      <description-html>
         <![CDATA[The uuid of the DistributedVirtualSwitch that the HostProxySwitch
  is a part of.]]>
      </description-html>
      </property>

            <property name="dvsName" type-id-ref="java.lang.String"
      vmodl-name="dvsName"
      >
      <description-html>
         <![CDATA[The name of the DistributedVirtualSwitch that the HostProxySwitch
 is part of.]]>
      </description-html>
      </property>

            <property name="key" type-id-ref="java.lang.String"
      vmodl-name="key"
      >
      <description-html>
         <![CDATA[The proxy switch key.]]>
      </description-html>
      </property>

            <property name="numPorts" type-id-ref="INT"
      vmodl-name="numPorts"
      >
      <description-html>
         <![CDATA[The number of ports that this switch currently has.]]>
      </description-html>
      </property>

            <property name="configNumPorts" type-id-ref="INT"
      vmodl-name="configNumPorts"
      version-id-ref="vim.version.version7"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The configured number of ports that this switch has.
 If configured number of ports is changed,
 a host reboot is required for the new value to take effect.]]>
      </description-html>
      </property>

            <property name="numPortsAvailable" type-id-ref="INT"
      vmodl-name="numPortsAvailable"
      >
      <description-html>
         <![CDATA[The number of ports that are available on this virtual switch.]]>
      </description-html>
      </property>

            <property name="uplinkPort" type-id-ref="vim.KeyValue"
      vmodl-name="uplinkPort"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The list of ports that can be potentially used by physical nics.
  This property contains the keys and names of such ports.]]>
      </description-html>
      </property>

            <property name="mtu" type-id-ref="INT"
      vmodl-name="mtu"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The maximum transmission unit (MTU) associated with this switch
  in bytes.]]>
      </description-html>
      </property>

            <property name="pnic" type-id-ref="vim.host.PhysicalNic"
      vmodl-name="pnic"
      is-array="true"
      is-optional="true"
      is-link="true"
      >
      <description-html>
         <![CDATA[The set of physical network adapters associated with this switch.]]>
      </description-html>
      </property>

            <property name="spec" type-id-ref="vim.host.HostProxySwitch.Specification"
      vmodl-name="spec"
      >
      <description-html>
         <![CDATA[The specification of the switch.]]>
      </description-html>
      </property>

            <property name="hostLag" type-id-ref="vim.host.HostProxySwitch.HostLagConfig"
      vmodl-name="hostLag"
      version-id-ref="vim.version.version9"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The Link Aggregation Control Protocol group and
  Uplink ports in the group.]]>
      </description-html>
      </property>

            <property name="networkReservationSupported" type-id-ref="BOOLEAN"
      vmodl-name="networkReservationSupported"
      version-id-ref="vim.version.version9"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates whether network reservation is supported on this switch]]>
      </description-html>
      </property>

            <property name="nsxtEnabled" type-id-ref="BOOLEAN"
      vmodl-name="nsxtEnabled"
      version-id-ref="vim.version.v7_0"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicate whether NSX-T is enabled on this switch]]>
      </description-html>
      </property>

            <property name="ensEnabled" type-id-ref="BOOLEAN"
      vmodl-name="ensEnabled"
      version-id-ref="vim.version.v7_0"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Is ENS enabled on this switch]]>
      </description-html>
      </property>

            <property name="ensInterruptEnabled" type-id-ref="BOOLEAN"
      vmodl-name="ensInterruptEnabled"
      version-id-ref="vim.version.v7_0"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Is ENS interrupt mode enabled on this switch]]>
      </description-html>
      </property>

            <property name="transportZones" type-id-ref="vim.dvs.HostMember.TransportZoneInfo"
      vmodl-name="transportZones"
      version-id-ref="vim.version.v7_0"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Transport Zones this switch joined]]>
      </description-html>
      </property>

            <property name="nsxUsedUplinkPort" type-id-ref="java.lang.String"
      vmodl-name="nsxUsedUplinkPort"
      version-id-ref="vim.version.v7_0"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Uplink port names used by NSX-T]]>
      </description-html>
      </property>

            <property name="nsxtStatus" type-id-ref="java.lang.String"
      vmodl-name="nsxtStatus"
      version-id-ref="vim.version.v7_0"
      is-optional="true"
      >
      <description-html>
         <![CDATA[NSX-T proxy switch status]]>
      </description-html>
      </property>

            <property name="nsxtStatusDetail" type-id-ref="java.lang.String"
      vmodl-name="nsxtStatusDetail"
      version-id-ref="vim.version.v7_0"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Additional information regarding the NSX-T proxy switch status]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.host.HostProxySwitch.Specification</nested-type-id-ref>
      <nested-type-id-ref>vim.host.HostProxySwitch.Config</nested-type-id-ref>
      <nested-type-id-ref>vim.host.HostProxySwitch.HostLagConfig</nested-type-id-ref>
   </data-object>
   <data-object name="ProfilePropertyPath"
      type-id="vim.profile.ProfilePropertyPath"
      vmodl-name="vim.profile.ProfilePropertyPath"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The <a href="vim.profile.ProfilePropertyPath.html">ProfilePropertyPath</a> data object represents
 the path to a profile, policy option, or specific parameter. If <code>profilePath</code>,
 <code>policyId</code>, and <code>parameterId</code> are all specified, the
 combination of the three identifies a particular parameter. If only <code>profilePath</code>
 and <code>policyId</code> are specified, the combination identifies a
 specific profile policy option. If just the <code>profilePath</code> is
 specified, the data object identifies a profile instance.]]>
      </description-html>
            <property name="profilePath" type-id-ref="vmodl.PropertyPath"
      vmodl-name="profilePath"
      >
      <description-html>
         <![CDATA[Complete path to the leaf profile, relative to the root of the host profile
 document.]]>
      </description-html>
      </property>

            <property name="policyId" type-id-ref="java.lang.String"
      vmodl-name="policyId"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Policy identifier.]]>
      </description-html>
      </property>

            <property name="parameterId" type-id-ref="java.lang.String"
      vmodl-name="parameterId"
      version-id-ref="vim.version.version8"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Key for a parameter in the policy specified by <code>policyId</code>.
 See <a href="vim.profile.PolicyOption.html">PolicyOption</a>.<a href="vim.profile.PolicyOption.html#parameter">parameter</a>
 and <a href="vmodl.KeyAnyValue.html#key">key</a>.]]>
      </description-html>
      </property>

            <property name="policyOptionId" type-id-ref="java.lang.String"
      vmodl-name="policyOptionId"
      version-id-ref="vim.version.version12"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Policy option identifier.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostBIOSInfo"
      type-id="vim.host.BIOSInfo"
      vmodl-name="vim.host.BIOSInfo"
      version-id-ref="vim.version.version2"
      base-type-id="vmodl.DynamicData"
      >
            <property name="biosVersion" type-id-ref="java.lang.String"
      vmodl-name="biosVersion"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The current BIOS version of the physical chassis]]>
      </description-html>
      </property>

            <property name="releaseDate" type-id-ref="vmodl.DateTime"
      vmodl-name="releaseDate"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The release date for the BIOS.]]>
      </description-html>
      </property>

            <property name="vendor" type-id-ref="java.lang.String"
      vmodl-name="vendor"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The vendor for the BIOS.]]>
      </description-html>
      </property>

            <property name="majorRelease" type-id-ref="INT"
      vmodl-name="majorRelease"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[BIOS Major Release]]>
      </description-html>
      </property>

            <property name="minorRelease" type-id-ref="INT"
      vmodl-name="minorRelease"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA["BIOS Minor Release]]>
      </description-html>
      </property>

            <property name="firmwareMajorRelease" type-id-ref="INT"
      vmodl-name="firmwareMajorRelease"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      </property>

            <property name="firmwareMinorRelease" type-id-ref="INT"
      vmodl-name="firmwareMinorRelease"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Embedded Controller Firmware Minor Release]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualMachineFileInfo"
      type-id="vim.vm.FileInfo"
      vmodl-name="vim.vm.FileInfo"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The FileInfo data object type contains the locations of virtual machine
  files other than the virtual disk files. The configurable parameters
  are all in the FileInfo object.
  <p>
  The object also contains a FileLayout object that returns a complete
  list of additional files that makes up the virtual machine
  configuration. This is a read-only structure and is returned when
  the configuration is read. This is ignored during configuration and
  can be left out.]]>
      </description-html>
            <property name="vmPathName" type-id-ref="java.lang.String"
      vmodl-name="vmPathName"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Path name to the configuration file for the virtual machine, e.g., the
 .vmx file. This also implicitly defines the configuration directory.]]>
      </description-html>
      </property>

            <property name="snapshotDirectory" type-id-ref="java.lang.String"
      vmodl-name="snapshotDirectory"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Path name of the directory that holds suspend and snapshot files
  belonging to the virtual machine. Prior to vSphere 5.0, this
  directory also holds snapshot redo files. Starting with vSphere 5.0,
  the redo files will stay in the same directory as the snapshotted
  disk, thus this directory will no longer hold the snapshot redo
  files.
  <p>
  This path name defaults to the same directory as the configuration
  file.
  <p>
  ESX Server requires this to indicate a VMFS volume or NAS volume
  (for ESX Server 3).
  In case the configuration file is not stored on VMFS or NAS, this
  property must be set explicitly.]]>
      </description-html>
      </property>

            <property name="suspendDirectory" type-id-ref="java.lang.String"
      vmodl-name="suspendDirectory"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Some products allow the suspend directory to be different than the
  snapshot directory. On products where this is not possible, setting
  of this property is ignored.]]>
      </description-html>
      </property>

            <property name="logDirectory" type-id-ref="java.lang.String"
      vmodl-name="logDirectory"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Directory to store the log files for the virtual machine. If not specified,
  this defaults to the same directory as the configuration file,]]>
      </description-html>
      </property>

            <property name="ftMetadataDirectory" type-id-ref="java.lang.String"
      vmodl-name="ftMetadataDirectory"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Directory to store the fault tolerance meta data files for the
  virtual machine.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ServiceProfile"
      type-id="vim.profile.host.ServiceProfile"
      vmodl-name="vim.profile.host.ServiceProfile"
      version-id-ref="vim.version.version5"
      base-type-id="vim.profile.ApplyProfile"
      >
      <description-html>
         <![CDATA[The <a href="vim.profile.host.ServiceProfile.html">ServiceProfile</a> data object controls the configuration of a service.
 Use the <a href="vim.profile.ApplyProfile.html#policy">policy</a> list for access to configuration data
 for the service profile. Use the <a href="vim.profile.ApplyProfile.html#property">property</a> list for access
 to subprofiles, if any.]]>
      </description-html>
            <property name="key" type-id-ref="java.lang.String"
      vmodl-name="key"
      >
      <description-html>
         <![CDATA[Linkable identifier.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VmClonedEvent"
      type-id="vim.event.VmClonedEvent"
      vmodl-name="vim.event.VmClonedEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.VmCloneEvent"
      >
      <description-html>
         <![CDATA[This event records the completion of a virtual machine cloning operation.]]>
      </description-html>
            <property name="sourceVm" type-id-ref="vim.event.VmEventArgument"
      vmodl-name="sourceVm"
      >
      <description-html>
         <![CDATA[The source virtual machine for the clone operation.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualMachineSgxInfo"
      type-id="vim.vm.SgxInfo"
      vmodl-name="vim.vm.SgxInfo"
      version-id-ref="vim.version.v7_0"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object describes the virtual software guard extension (vSGX)
  configuration of this virtual machine.]]>
      </description-html>
            <property name="epcSize" type-id-ref="LONG"
      vmodl-name="epcSize"
      >
      <description-html>
         <![CDATA[Size of vEPC, in megabytes.]]>
      </description-html>
      </property>

            <property name="flcMode" type-id-ref="java.lang.String"
      vmodl-name="flcMode"
      is-optional="true"
      >
      <description-html>
         <![CDATA[FLC mode for the virtual machine. The set of possible values are
 described in <a href="vim.vm.SgxInfo.FlcModes.html">VirtualMachineSgxInfoFlcModes</a>. If no value is specified,
 then "unlocked" will be used.]]>
      </description-html>
      </property>

            <property name="lePubKeyHash" type-id-ref="java.lang.String"
      vmodl-name="lePubKeyHash"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Public key hash of the provider launch enclave. This is the SHA256
 digest of the SIGSTRUCT.MODULUS(MR_SIGNER) of the provider launch
 enclave. This hash must only be provided when the launch enclave mode is
 "locked", for the other cases the hash is ignored.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.vm.SgxInfo.FlcModes</nested-type-id-ref>
   </data-object>
   <data-object name="VirtualMachineUsbInfo"
      type-id="vim.vm.UsbInfo"
      vmodl-name="vim.vm.UsbInfo"
      version-id-ref="vim.version.version2"
      base-type-id="vim.vm.TargetInfo"
      >
      <description-html>
         <![CDATA[This data object contains information about a physical USB device
 on the host.]]>
      </description-html>
            <property name="description" type-id-ref="java.lang.String"
      vmodl-name="description"
      >
      <description-html>
         <![CDATA[A user visible name of the USB device.]]>
      </description-html>
      </property>

            <property name="vendor" type-id-ref="INT"
      vmodl-name="vendor"
      >
      <description-html>
         <![CDATA[The vendor ID of the USB device.]]>
      </description-html>
      </property>

            <property name="product" type-id-ref="INT"
      vmodl-name="product"
      >
      <description-html>
         <![CDATA[The product ID of the USB device.]]>
      </description-html>
      </property>

            <property name="physicalPath" type-id-ref="java.lang.String"
      vmodl-name="physicalPath"
      >
      <description-html>
         <![CDATA[An autoconnect pattern which describes the device's physical
  path. This is the path to the specific port on the host where the
  USB device is attached.]]>
      </description-html>
      </property>

            <property name="family" type-id-ref="java.lang.String"
      vmodl-name="family"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The device class families.
  For possible values see
  <a href="vim.vm.UsbInfo.Family.html">VirtualMachineUsbInfoFamily</a>]]>
      </description-html>
      </property>

            <property name="speed" type-id-ref="java.lang.String"
      vmodl-name="speed"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The possible device speeds detected by server.
  For possible values see
  <a href="vim.vm.UsbInfo.Speed.html">VirtualMachineUsbInfoSpeed</a>]]>
      </description-html>
      </property>

            <property name="summary" type-id-ref="vim.vm.Summary"
      vmodl-name="summary"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Summary information about the virtual machine that is currently
 using this device, if any.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.vm.UsbInfo.Speed</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.UsbInfo.Family</nested-type-id-ref>
   </data-object>
   <data-object name="HostMultipathInfoLogicalUnitStorageArrayTypePolicy"
      type-id="vim.host.MultipathInfo.LogicalUnitStorageArrayTypePolicy"
      vmodl-name="vim.host.MultipathInfo.LogicalUnitStorageArrayTypePolicy"
      enclosing-type-id-ref="vim.host.MultipathInfo"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The <a href="vim.host.MultipathInfo.LogicalUnitStorageArrayTypePolicy.html">HostMultipathInfoLogicalUnitStorageArrayTypePolicy</a>
  data object describes a storage array type policy for
  for a device.  This policy determines how device I/O and management
  is performed.]]>
      </description-html>
            <property name="policy" type-id-ref="java.lang.String"
      vmodl-name="policy"
      >
      <description-html>
         <![CDATA[String indicating the storage array type policy.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostVirtualNicOpaqueNetworkSpec"
      type-id="vim.host.VirtualNic.OpaqueNetworkSpec"
      vmodl-name="vim.host.VirtualNic.OpaqueNetworkSpec"
      enclosing-type-id-ref="vim.host.VirtualNic"
      version-id-ref="vim.version.version10"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The <a href="vim.host.VirtualNic.OpaqueNetworkSpec.html">HostVirtualNicOpaqueNetworkSpec</a> data object
  describes the opaque network(<a href="vim.host.OpaqueNetworkInfo.html">HostOpaqueNetworkInfo</a>)
  configuration used by virtual NIC.]]>
      </description-html>
            <property name="opaqueNetworkId" type-id-ref="java.lang.String"
      vmodl-name="opaqueNetworkId"
      >
      <description-html>
         <![CDATA[ID of the Opaque network to which the virtual NIC is connected.]]>
      </description-html>
      </property>

            <property name="opaqueNetworkType" type-id-ref="java.lang.String"
      vmodl-name="opaqueNetworkType"
      >
      <description-html>
         <![CDATA[Type of the Opaque network to which the virtual NIC is connected.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ClusterComputeResourceHCIConfigInfo"
      type-id="vim.ClusterComputeResource.HCIConfigInfo"
      vmodl-name="vim.ClusterComputeResource.HCIConfigInfo"
      enclosing-type-id-ref="vim.ClusterComputeResource"
      version-id-ref="vim.version.version13"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object captures a subset of initial configuration of the cluster,
 which was configured by calling the <a href="vim.ClusterComputeResource.html#configureHCI">ConfigureHCI_Task</a> method.]]>
      </description-html>
            <property name="workflowState" type-id-ref="java.lang.String"
      vmodl-name="workflowState"
      >
      <description-html>
         <![CDATA[Configuration pertinent to state of the HCI workflow. Valid
 values are enumerated by the <a href="vim.ClusterComputeResource.HCIWorkflowState.html">HCIWorkflowState</a>
 type.]]>
      </description-html>
      </property>

            <property name="dvsSetting" type-id-ref="vim.ClusterComputeResource.DVSSetting"
      vmodl-name="dvsSetting"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Contains DVS related information captured while configuring
 the cluster.]]>
      </description-html>
      </property>

            <property name="configuredHosts" type-id-ref="vim.HostSystem"
      vmodl-name="configuredHosts"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Contains a list of hosts that are currently configured using
 <a href="vim.ClusterComputeResource.html#configureHCI">ConfigureHCI_Task</a> and <a href="vim.ClusterComputeResource.html#extendHCI">ExtendHCI_Task</a>
 method. A failed host will not be part of this list.]]>
      </description-html>
      </property>

            <property name="hostConfigProfile" type-id-ref="vim.ClusterComputeResource.HostConfigurationProfile"
      vmodl-name="hostConfigProfile"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Configuration of host services and host settings.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostPosixAccountSpec"
      type-id="vim.host.LocalAccountManager.PosixAccountSpecification"
      vmodl-name="vim.host.LocalAccountManager.PosixAccountSpecification"
      enclosing-type-id-ref="vim.host.LocalAccountManager"
      version-id-ref="vim.version.version1"
      base-type-id="vim.host.LocalAccountManager.AccountSpecification"
      >
      <description-html>
         <![CDATA[This data object type contains a POSIX-specific parameter
  for local account creation.]]>
      </description-html>
            <property name="posixId" type-id-ref="INT"
      vmodl-name="posixId"
      is-deprecated="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The user ID or group ID of a specified account.
  <p/>]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 5.1, this property is deprecated and
  is ignored.]]>
      </deprecated-html>
      </property>

            <property name="shellAccess" type-id-ref="BOOLEAN"
      vmodl-name="shellAccess"
      is-deprecated="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Grants shell access if true. By default, shell access is disallowed.
  <p/>
  As of vSphere API 4.1, this property has effect only on users with Administrator
  role on one or more VIM objects. For all others the default is applied.
  <p/>]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 5.1, this property is deprecated and
  is ignored. <a href="vim.host.LocalAccountManager.html#createUser">CreateUser</a> will always set this to true, and
  <a href="vim.host.LocalAccountManager.html#updateUser">UpdateUser</a> will set it to true if it is already false.
  <p/>
  As of vSphere API 5.1, shell access is granted only to users with
  Administrator role on the root folder and no other non-Admin role on
  any other inventory objects (and this property should not be false).]]>
      </deprecated-html>
      </property>

   </data-object>
   <data-object name="NvdimmInterleaveSetInfo"
      type-id="vim.host.NvdimmSystem.InterleaveSetInfo"
      vmodl-name="vim.host.NvdimmSystem.InterleaveSetInfo"
      enclosing-type-id-ref="vim.host.NvdimmSystem"
      version-id-ref="vim.version.version12"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Characteristics of an interleave set of a NVDIMM]]>
      </description-html>
            <property name="setId" type-id-ref="INT"
      vmodl-name="setId"
      >
      <description-html>
         <![CDATA[Unique set ID]]>
      </description-html>
      </property>

            <property name="rangeType" type-id-ref="java.lang.String"
      vmodl-name="rangeType"
      >
      <description-html>
         <![CDATA[Volatile or persistent interleave set.
  Must be one of the values of
  RangeType]]>
      </description-html>
      </property>

            <property name="baseAddress" type-id-ref="LONG"
      vmodl-name="baseAddress"
      >
      <description-html>
         <![CDATA[Start address of range]]>
      </description-html>
      </property>

            <property name="size" type-id-ref="LONG"
      vmodl-name="size"
      >
      <description-html>
         <![CDATA[Length of range in bytes]]>
      </description-html>
      </property>

            <property name="availableSize" type-id-ref="LONG"
      vmodl-name="availableSize"
      >
      <description-html>
         <![CDATA[Capacity currently not allocated to namespace in bytes]]>
      </description-html>
      </property>

            <property name="deviceList" type-id-ref="INT"
      vmodl-name="deviceList"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of nvdimms contributing to this interleave set]]>
      </description-html>
      </property>

            <property name="state" type-id-ref="java.lang.String"
      vmodl-name="state"
      >
      <description-html>
         <![CDATA[State of interleave set.
  Must be one of the values in
  InterleaveSetInfo.InterleaveSetState]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.host.NvdimmSystem.InterleaveSetInfo.InterleaveSetState</nested-type-id-ref>
   </data-object>
   <data-object name="CustomizationLinuxPrep"
      type-id="vim.vm.customization.LinuxPrep"
      vmodl-name="vim.vm.customization.LinuxPrep"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.customization.IdentitySettings"
      >
      <description-html>
         <![CDATA[This is the Linux counterpart to the Windows Sysprep object. LinuxPrep contains
  machine-wide settings that identify a Linux machine in the same way that the
  Sysprep type identifies a Windows machine.]]>
      </description-html>
            <property name="hostName" type-id-ref="vim.vm.customization.NameGenerator"
      vmodl-name="hostName"
      >
      <description-html>
         <![CDATA[The network host name of the (Linux) virtual machine.]]>
      </description-html>
      </property>

            <property name="domain" type-id-ref="java.lang.String"
      vmodl-name="domain"
      >
      <description-html>
         <![CDATA[The fully qualified domain name.]]>
      </description-html>
      </property>

            <property name="timeZone" type-id-ref="java.lang.String"
      vmodl-name="timeZone"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The case-sensitive timezone, such as Europe/Sofia.
  <a href="timezone.html" title="Display list of Valid timeZone values...">
  <strong>Valid timeZone values</strong></a> are based on the tz (timezone)
  database used by Linux and other Unix systems.
  The values are strings (xsd:string) in the form "Area/Location," in which
  Area is a continent or ocean name, and Location is the city, island, or
  other regional designation.
  <p>
  See the <a href =
  "https://kb.vmware.com/selfservice/microsites/search.do?language=en_US&cmd=displayKC&externalId=2145518" target="_blank"
  >List of supported time zones for different vSphere versions in Linux/Unix systems</a>.]]>
      </description-html>
      </property>

            <property name="hwClockUTC" type-id-ref="BOOLEAN"
      vmodl-name="hwClockUTC"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Specifies whether the hardware clock is in UTC or local time.
  <ul>
  <li>True when the hardware clock is in UTC.</li>
  <li>False when the hardware clock is in local time.</li>
  </ul>]]>
      </description-html>
      </property>

            <property name="scriptText" type-id-ref="java.lang.String"
      vmodl-name="scriptText"
      version-id-ref="vim.version.v7_0"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The script to run before and after GOS customization.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostFibreChannelOverEthernetTargetTransport"
      type-id="vim.host.FibreChannelOverEthernetTargetTransport"
      vmodl-name="vim.host.FibreChannelOverEthernetTargetTransport"
      version-id-ref="vim.version.version7"
      base-type-id="vim.host.FibreChannelTargetTransport"
      >
      <description-html>
         <![CDATA[Fibre Channel Over Ethernet transport information about a SCSI target.

  FCoE transport information is that of: the regular FC World Wide Node
  and Port Names; the VNPort MAC address and FCF MAC address which
  constitute a VN_Port to VF_Port Virtual Link; and the VLAN on which
  an FCoE target resides.

  More FCoE information can be found in the working draft of the T11's
  Fibre Channel Backbone 5 standard (FC-BB-5).  The draft can be found
  at http://www.t11.org.]]>
      </description-html>
            <property name="vnportMac" type-id-ref="java.lang.String"
      vmodl-name="vnportMac"
      >
      <description-html>
         <![CDATA[VNPort MAC address.

 This MAC address should be of the form "xx:xx:xx:xx:xx:xx", where
 'x' is a hexadecimal digit.  Valid MAC addresses are unicast
 addresses.]]>
      </description-html>
      </property>

            <property name="fcfMac" type-id-ref="java.lang.String"
      vmodl-name="fcfMac"
      >
      <description-html>
         <![CDATA[FCF MAC address.

 This MAC address should be of the form "xx:xx:xx:xx:xx:xx", where
 'x' is a hexadecimal digit.  Valid MAC addresses are unicast
 addresses.]]>
      </description-html>
      </property>

            <property name="vlanId" type-id-ref="INT"
      vmodl-name="vlanId"
      >
      <description-html>
         <![CDATA[VLAN ID.

 Valid VLAN IDs fall within the range [0,4094].]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualMachineBootOptionsBootableDevice"
      type-id="vim.vm.BootOptions.BootableDevice"
      vmodl-name="vim.vm.BootOptions.BootableDevice"
      enclosing-type-id-ref="vim.vm.BootOptions"
      version-id-ref="vim.version.version7"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Bootable device.]]>
      </description-html>
   </data-object>
   <data-object name="PortGroupProfile"
      type-id="vim.profile.host.PortGroupProfile"
      vmodl-name="vim.profile.host.PortGroupProfile"
      version-id-ref="vim.version.version5"
      base-type-id="vim.profile.ApplyProfile"
      >
      <description-html>
         <![CDATA[<a href="vim.profile.host.PortGroupProfile.html">PortGroupProfile</a> is the base class for the different port group
  subprofile objects.]]>
      </description-html>
            <property name="key" type-id-ref="java.lang.String"
      vmodl-name="key"
      >
      <description-html>
         <![CDATA[Linkable identifier.]]>
      </description-html>
      </property>

            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      >
      <description-html>
         <![CDATA[Name of the portgroup.]]>
      </description-html>
      </property>

            <property name="vlan" type-id-ref="vim.profile.host.PortGroupProfile.VlanProfile"
      vmodl-name="vlan"
      >
      <description-html>
         <![CDATA[VLAN identifier for the port group.]]>
      </description-html>
      </property>

            <property name="vswitch" type-id-ref="vim.profile.host.PortGroupProfile.VirtualSwitchSelectionProfile"
      vmodl-name="vswitch"
      >
      <description-html>
         <![CDATA[Virtual switch to which the port group is connected.]]>
      </description-html>
      </property>

            <property name="networkPolicy" type-id-ref="vim.profile.host.NetworkPolicyProfile"
      vmodl-name="networkPolicy"
      >
      <description-html>
         <![CDATA[The network policy/policies applicable on the port group.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.profile.host.PortGroupProfile.VlanProfile</nested-type-id-ref>
      <nested-type-id-ref>vim.profile.host.PortGroupProfile.VirtualSwitchSelectionProfile</nested-type-id-ref>
   </data-object>
   <data-object name="CustomizationNetworkSetupFailed"
      type-id="vim.event.CustomizationNetworkSetupFailed"
      vmodl-name="vim.event.CustomizationNetworkSetupFailed"
      version-id-ref="vim.version.version2"
      base-type-id="vim.event.CustomizationFailed"
      >
      <description-html>
         <![CDATA[Network setup failed in the guest during customization.]]>
      </description-html>
   </data-object>
   <data-object name="VmVnicPoolReservationViolationClearEvent"
      type-id="vim.event.VmVnicPoolReservationViolationClearEvent"
      vmodl-name="vim.event.VmVnicPoolReservationViolationClearEvent"
      version-id-ref="vim.version.version10"
      base-type-id="vim.event.DvsEvent"
      >
      <description-html>
         <![CDATA[This event is generated when the reservations used by all
 the virtual network adapters belonging to the virtual NIC network
 resource pool goes below the reservation allocated to the resource pool]]>
      </description-html>
            <property name="vmVnicResourcePoolKey" type-id-ref="java.lang.String"
      vmodl-name="vmVnicResourcePoolKey"
      >
      <description-html>
         <![CDATA[The key of the Virtual NIC network resource pool]]>
      </description-html>
      </property>

            <property name="vmVnicResourcePoolName" type-id-ref="java.lang.String"
      vmodl-name="vmVnicResourcePoolName"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The name of the Virtual NIC network resource pool]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VmPrimaryFailoverEvent"
      type-id="vim.event.VmPrimaryFailoverEvent"
      vmodl-name="vim.event.VmPrimaryFailoverEvent"
      version-id-ref="vim.version.version5"
      base-type-id="vim.event.VmEvent"
      >
      <description-html>
         <![CDATA[This event records a fault tolerance failover.
  The reason could be : lost connection to primary, partial hardware failure
  of primary or by user.]]>
      </description-html>
            <property name="reason" type-id-ref="java.lang.String"
      vmodl-name="reason"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The reason for the failure.
 see <a href="vim.VirtualMachine.NeedSecondaryReason.html">VirtualMachineNeedSecondaryReason</a>]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostSnmpSystemAgentLimits"
      type-id="vim.host.SnmpSystem.AgentLimits"
      vmodl-name="vim.host.SnmpSystem.AgentLimits"
      enclosing-type-id-ref="vim.host.SnmpSystem"
      version-id-ref="vim.version.version2"
      base-type-id="vmodl.DynamicData"
      >
            <property name="maxReadOnlyCommunities" type-id-ref="INT"
      vmodl-name="maxReadOnlyCommunities"
      >
      <description-html>
         <![CDATA[number of allowed communities]]>
      </description-html>
      </property>

            <property name="maxTrapDestinations" type-id-ref="INT"
      vmodl-name="maxTrapDestinations"
      >
      <description-html>
         <![CDATA[number of allowed destinations for notifications]]>
      </description-html>
      </property>

            <property name="maxCommunityLength" type-id-ref="INT"
      vmodl-name="maxCommunityLength"
      >
      <description-html>
         <![CDATA[Max length of community]]>
      </description-html>
      </property>

            <property name="maxBufferSize" type-id-ref="INT"
      vmodl-name="maxBufferSize"
      >
      <description-html>
         <![CDATA[SNMP input buffer size]]>
      </description-html>
      </property>

            <property name="capability" type-id-ref="vim.host.SnmpSystem.AgentLimits.Capability"
      vmodl-name="capability"
      version-id-ref="vim.version.version5"
      >
      <description-html>
         <![CDATA[Supported Capability for this agent]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.host.SnmpSystem.AgentLimits.Capability</nested-type-id-ref>
   </data-object>
   <data-object name="VirtualSriovEthernetCardOption"
      type-id="vim.vm.device.VirtualSriovEthernetCardOption"
      vmodl-name="vim.vm.device.VirtualSriovEthernetCardOption"
      version-id-ref="vim.version.version9"
      base-type-id="vim.vm.device.VirtualEthernetCardOption"
      >
      <description-html>
         <![CDATA[The VirtualSriovEthernetCardOption data object contains the options for the
  VirtualSriovEthernetCard data object type.]]>
      </description-html>
      <nested-type-id-ref>vim.vm.device.VirtualSriovEthernetCardOption.SriovBackingOption</nested-type-id-ref>
   </data-object>
   <data-object name="HostScsiTopologyInterface"
      type-id="vim.host.ScsiTopology.Interface"
      vmodl-name="vim.host.ScsiTopology.Interface"
      enclosing-type-id-ref="vim.host.ScsiTopology"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object type describes the SCSI interface that is associated
  with a list of targets.]]>
      </description-html>
            <property name="key" type-id-ref="java.lang.String"
      vmodl-name="key"
      >
      <description-html>
         <![CDATA[The identifier for the SCSI interface]]>
      </description-html>
      </property>

            <property name="adapter" type-id-ref="vim.host.HostBusAdapter"
      vmodl-name="adapter"
      is-link="true"
      >
      <description-html>
         <![CDATA[The link to data for this SCSI interface.]]>
      </description-html>
      </property>

            <property name="target" type-id-ref="vim.host.ScsiTopology.Target"
      vmodl-name="target"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The list of targets to which the SCSI interface is associated.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="OvfConsumerOvfSection"
      type-id="vim.OvfConsumer.OvfSection"
      vmodl-name="vim.OvfConsumer.OvfSection"
      enclosing-type-id-ref="vim.OvfConsumer"
      version-id-ref="vim.version.version7"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[A self-contained OVF section]]>
      </description-html>
            <property name="lineNumber" type-id-ref="INT"
      vmodl-name="lineNumber"
      >
      <description-html>
         <![CDATA[The line number in the OVF descriptor on which this section starts.
 <p>
 The line number is only present on sections that were imported as part of an OVF
 descriptor (as opposed to sections that are about to be exported to OVF).
 <p>
 The value is zero if the section did not originate from an OVF descriptor.]]>
      </description-html>
      </property>

            <property name="xml" type-id-ref="java.lang.String"
      vmodl-name="xml"
      >
      <description-html>
         <![CDATA[The XML fragment for the section.
 <p>
 The XML fragment must explicitly define all namespaces and namespace prefixes
 that are used in the fragment, including the default namespace.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="SessionManagerGenericServiceTicket"
      type-id="vim.SessionManager.GenericServiceTicket"
      vmodl-name="vim.SessionManager.GenericServiceTicket"
      enclosing-type-id-ref="vim.SessionManager"
      version-id-ref="vim.version.version7"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object represents a ticket which grants access to some service.
 The ticket may be used only once and is valid only for the
 <a href="vim.SessionManager.ServiceRequestSpec.html">SessionManagerServiceRequestSpec</a> with which it was acquired.

  For HTTP service requests (when spec is of type HttpServiceRequestSpec)
  the returned ticket must be used by setting
  <a href="vim.SessionManager.GenericServiceTicket.html#id">id</a>
  as the value of a special cookie in the HTTP request.
  For CGI requests the name of this cookie is 'vmware_cgi_ticket'.

  The use of the returned ticket for other services is to be defined.]]>
      </description-html>
            <property name="id" type-id-ref="java.lang.String"
      vmodl-name="id"
      >
      <description-html>
         <![CDATA[A unique string identifying the ticket.]]>
      </description-html>
      </property>

            <property name="hostName" type-id-ref="java.lang.String"
      vmodl-name="hostName"
      version-id-ref="vim.version.version8"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The name of the host that the service is running on]]>
      </description-html>
      </property>

            <property name="sslThumbprint" type-id-ref="java.lang.String"
      vmodl-name="sslThumbprint"
      version-id-ref="vim.version.version8"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The expected thumbprint of the SSL certificate of the host.
  If it is empty, the host must be authenticated by name.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostEvent"
      type-id="vim.event.HostEvent"
      vmodl-name="vim.event.HostEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.Event"
      >
      <description-html>
         <![CDATA[These are host-related events.]]>
      </description-html>
   </data-object>
   <data-object name="DvsPortBlockedEvent"
      type-id="vim.event.DvsPortBlockedEvent"
      vmodl-name="vim.event.DvsPortBlockedEvent"
      version-id-ref="vim.version.version5"
      base-type-id="vim.event.DvsEvent"
      >
      <description-html>
         <![CDATA[A port is blocked in the distributed virtual switch.]]>
      </description-html>
            <property name="portKey" type-id-ref="java.lang.String"
      vmodl-name="portKey"
      >
      <description-html>
         <![CDATA[The port key.]]>
      </description-html>
      </property>

            <property name="statusDetail" type-id-ref="java.lang.String"
      vmodl-name="statusDetail"
      version-id-ref="vim.version.version6"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Reason for port's current status]]>
      </description-html>
      </property>

            <property name="runtimeInfo" type-id-ref="vim.dvs.DistributedVirtualPort.RuntimeInfo"
      vmodl-name="runtimeInfo"
      version-id-ref="vim.version.version8"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The port runtime information.]]>
      </description-html>
      </property>

            <property name="prevBlockState" type-id-ref="java.lang.String"
      vmodl-name="prevBlockState"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Previous state of the DvsPort.
 See <a href="vim.event.DvsEvent.PortBlockState.html">DvsEventPortBlockState</a>]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="Description"
      type-id="vim.Description"
      vmodl-name="vim.Description"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Static strings used for describing an object or property.]]>
      </description-html>
            <property name="label" type-id-ref="java.lang.String"
      vmodl-name="label"
      is-localizable="true"
      >
      <description-html>
         <![CDATA[Display label.]]>
      </description-html>
      </property>

            <property name="summary" type-id-ref="java.lang.String"
      vmodl-name="summary"
      is-localizable="true"
      >
      <description-html>
         <![CDATA[Summary description.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostListSummaryGatewaySummary"
      type-id="vim.host.Summary.GatewaySummary"
      vmodl-name="vim.host.Summary.GatewaySummary"
      enclosing-type-id-ref="vim.host.Summary"
      version-id-ref="vim.version.version10"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object type describes information about a host gateway server
 that is used for the connection between vCenter Server and the host.
 Gateway servers are identified by type and id. In order to use
 a gateway server it has to be registered with the respective type and id
 in the vCenter Lookup Service.]]>
      </description-html>
            <property name="gatewayType" type-id-ref="java.lang.String"
      vmodl-name="gatewayType"
      >
      <description-html>
         <![CDATA[The type of the gateway server used for communication with the host.
 This is an opaque string that depends on how the gateway server is
 registered with the vCenter Component Manager Service. There might be
 several gateway servers for the same type.]]>
      </description-html>
      </property>

            <property name="gatewayId" type-id-ref="java.lang.String"
      vmodl-name="gatewayId"
      >
      <description-html>
         <![CDATA[Unique ID of the gateway server used for communication with the host.
 This ID must be a unique identifier for the gateway server as
 registered in the vCenter Component Manager Service. There must be
 only one gateway server with the same ID.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualSCSIPassthrough"
      type-id="vim.vm.device.VirtualSCSIPassthrough"
      vmodl-name="vim.vm.device.VirtualSCSIPassthrough"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.device.VirtualDevice"
      >
      <description-html>
         <![CDATA[The VirtualSCSIPassthrough data object type contains information about a
  SCSI device on the virtual machine that is being backed by
  a generic SCSI device on the host via passthrough.]]>
      </description-html>
      <nested-type-id-ref>vim.vm.device.VirtualSCSIPassthrough.DeviceBackingInfo</nested-type-id-ref>
   </data-object>
   <data-object name="VirtualDeviceBackingOption"
      type-id="vim.vm.device.VirtualDeviceOption.BackingOption"
      vmodl-name="vim.vm.device.VirtualDeviceOption.BackingOption"
      enclosing-type-id-ref="vim.vm.device.VirtualDeviceOption"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The <a href="vim.vm.device.VirtualDeviceOption.BackingOption.html">VirtualDeviceBackingOption</a> data class
  defines options for device-specific virtual backing objects.]]>
      </description-html>
            <property name="type" type-id-ref="vmodl.TypeName"
      vmodl-name="type"
      >
      <description-html>
         <![CDATA[The name of the class the client should use to instantiate backing
  for the virtual device.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="InfoUpgradeEvent"
      type-id="vim.event.InfoUpgradeEvent"
      vmodl-name="vim.event.InfoUpgradeEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.UpgradeEvent"
      >
      <description-html>
         <![CDATA[This event is a general information event from upgrade.]]>
      </description-html>
   </data-object>
   <data-object name="HostForceMountedInfo"
      type-id="vim.host.ForceMountedInfo"
      vmodl-name="vim.host.ForceMountedInfo"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[When the system detects a copy of a VmfsVolume, it will not be
  auto-mounted on the host and it will be detected as
  'UnresolvedVmfsVolume'.
  If user decides to keep the original Uuid and mount it on the host,
  it will have 'forceMounted' flag and 'forceMountedInfo' set.
  'ForceMountedInfo' provides additional information specific to
  user-mounted VmfsVolume.]]>
      </description-html>
            <property name="persist" type-id-ref="BOOLEAN"
      vmodl-name="persist"
      >
      <description-html>
         <![CDATA[Indicates if the vmfsExtent information persistent across
  host reboots.]]>
      </description-html>
      </property>

            <property name="mounted" type-id-ref="BOOLEAN"
      vmodl-name="mounted"
      >
      <description-html>
         <![CDATA[Indicates if the volume is currently mounted on the host]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostSystemHealthInfo"
      type-id="vim.host.SystemHealthInfo"
      vmodl-name="vim.host.SystemHealthInfo"
      version-id-ref="vim.version.version2"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object provides information about the health of the phyical
  system. The data is retrieved from numeric sensor probes.]]>
      </description-html>
            <property name="numericSensorInfo" type-id-ref="vim.host.NumericSensorInfo"
      vmodl-name="numericSensorInfo"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Health information provided by the power probes.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostRemovedEvent"
      type-id="vim.event.HostRemovedEvent"
      vmodl-name="vim.event.HostRemovedEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.HostEvent"
      >
      <description-html>
         <![CDATA[This event records the removal of a host from VirtualCenter.]]>
      </description-html>
   </data-object>
   <data-object name="HostNvmeOverRdmaParameters"
      type-id="vim.host.NvmeOverRdmaParameters"
      vmodl-name="vim.host.NvmeOverRdmaParameters"
      version-id-ref="vim.version.v7_0"
      base-type-id="vim.host.NvmeTransportParameters"
      >
      <description-html>
         <![CDATA[This data object represents the transport specific parameters
  necessary to establish an NVME over RDMA connection.]]>
      </description-html>
            <property name="address" type-id-ref="java.lang.String"
      vmodl-name="address"
      >
      <description-html>
         <![CDATA[The address of the connection target.]]>
      </description-html>
      </property>

            <property name="addressFamily" type-id-ref="java.lang.String"
      vmodl-name="addressFamily"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates the type of the address specified above.
  <p>
  If unset, it is assumed to be an IPv4 address. The set of possible
  values is described in
  <a href="vim.host.NvmeTransportParameters.NvmeAddressFamily.html">HostNvmeTransportParametersNvmeAddressFamily</a>.
  Note that not all of the address families may be supported for
  establishing a connection over RDMA.]]>
      </description-html>
      </property>

            <property name="portNumber" type-id-ref="INT"
      vmodl-name="portNumber"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The port number of the RDMA target port.
  <p>
  When IPv4/IPv6 is used as address family above, the port number
  needs to be specified. If this field is unset, a default
  value of 4420 is assumed as per the IANA assignment:
  https://www.iana.org/assignments/service-names-port-numbers/service-names-port-numbers.xhtml]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="RoleEvent"
      type-id="vim.event.RoleEvent"
      vmodl-name="vim.event.RoleEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.AuthorizationEvent"
      >
      <description-html>
         <![CDATA[This event records a role operation.]]>
      </description-html>
            <property name="role" type-id-ref="vim.event.RoleEventArgument"
      vmodl-name="role"
      >
      <description-html>
         <![CDATA[The associated role.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ClusterDpmHostConfigInfo"
      type-id="vim.cluster.DpmHostConfigInfo"
      vmodl-name="vim.cluster.DpmHostConfigInfo"
      version-id-ref="vim.version.version2"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[DPM configuration for a single host. This makes
  it possible to override the default behavior for an individual
  host.]]>
      </description-html>
            <property name="key" type-id-ref="vim.HostSystem"
      vmodl-name="key"
      >
      <description-html>
         <![CDATA[Reference to the host.]]>
      </description-html>
      </property>

            <property name="enabled" type-id-ref="BOOLEAN"
      vmodl-name="enabled"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Flag to indicate whether or not VirtualCenter is allowed to perform any
  power related operations or recommendations for this host.

  If this flag is false, the host is effectively excluded from
  DPM service.
  <p>
  If no individual DPM specification exists for a host,
  this property defaults to true.]]>
      </description-html>
      </property>

            <property name="behavior" type-id-ref="vim.cluster.DpmConfigInfo.DpmBehavior"
      vmodl-name="behavior"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Specifies the particular DPM behavior for this host.<br>See <a href="vim.cluster.DpmConfigInfo.html">ClusterDpmConfigInfo</a><br>]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualMachineVMCIDeviceOption"
      type-id="vim.vm.device.VirtualVMCIDeviceOption"
      vmodl-name="vim.vm.device.VirtualVMCIDeviceOption"
      version-id-ref="vim.version.version4"
      base-type-id="vim.vm.device.VirtualDeviceOption"
      >
      <description-html>
         <![CDATA[The <a href="vim.vm.device.VirtualVMCIDeviceOption.html">VirtualMachineVMCIDeviceOption</a> data object contains the options
   for the virtual VMCI device (<a href="vim.vm.device.VirtualVMCIDevice.html">VirtualMachineVMCIDevice</a>).]]>
      </description-html>
            <property name="allowUnrestrictedCommunication" type-id-ref="vim.option.BoolOption"
      vmodl-name="allowUnrestrictedCommunication"
      >
      <description-html>
         <![CDATA[Indicates support for VMCI communication and specifies the default
  operation. If <a href="vim.option.BoolOption.html#defaultValue">defaultValue</a> is set to true,
  the virtual machine can participate in VMCI communication with all other
  virtual machines on the host. Otherwise, VMCI communication will be
  restricted to trusted services such as the hypervisor on the host.]]>
      </description-html>
      </property>

            <property name="filterSpecOption" type-id-ref="vim.vm.device.VirtualVMCIDeviceOption.FilterSpecOption"
      vmodl-name="filterSpecOption"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Filter specification options.]]>
      </description-html>
      </property>

            <property name="filterSupported" type-id-ref="vim.option.BoolOption"
      vmodl-name="filterSupported"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates support for VMCI firewall filters and specifies the default
 operation. If <a href="vim.option.BoolOption.html#supported">supported</a> is set to true,
 then firewall filtering can be used for this virtual machine to allow
 or deny traffic over VMCI.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.vm.device.VirtualVMCIDeviceOption.FilterSpecOption</nested-type-id-ref>
   </data-object>
   <data-object name="DvsIpPort"
      type-id="vim.dvs.TrafficRule.IpPort"
      vmodl-name="vim.dvs.TrafficRule.IpPort"
      enclosing-type-id-ref="vim.dvs.TrafficRule"
      version-id-ref="vim.version.version9"
      base-type-id="vim.NegatableExpression"
      >
      <description-html>
         <![CDATA[Base class for specifying Ports.
  Objects of the base class represent any port (single/range/list).]]>
      </description-html>
   </data-object>
   <data-object name="VirtualDeviceConfigSpecBackingSpec"
      type-id="vim.vm.device.VirtualDeviceSpec.BackingSpec"
      vmodl-name="vim.vm.device.VirtualDeviceSpec.BackingSpec"
      enclosing-type-id-ref="vim.vm.device.VirtualDeviceSpec"
      version-id-ref="vim.version.version11"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[<code><a href="vim.vm.device.VirtualDeviceSpec.BackingSpec.html">VirtualDeviceConfigSpecBackingSpec</a></code> is a data object
  type for information about configuration of the backing of a device
  in a virtual machine.
  The member <a href="vim.vm.device.VirtualDeviceSpec.BackingSpec.html#parent">parent</a> refers the parent in the chain of
  <a href="vim.vm.device.VirtualDevice.BackingInfo.html">VirtualDeviceBackingInfo</a> objects.]]>
      </description-html>
            <property name="parent" type-id-ref="vim.vm.device.VirtualDeviceSpec.BackingSpec"
      vmodl-name="parent"
      is-optional="true"
      >
      </property>

            <property name="crypto" type-id-ref="vim.encryption.CryptoSpec"
      vmodl-name="crypto"
      is-optional="true"
      >
      </property>

   </data-object>
   <data-object name="VmMessageErrorEvent"
      type-id="vim.event.VmMessageErrorEvent"
      vmodl-name="vim.event.VmMessageErrorEvent"
      version-id-ref="vim.version.version5"
      base-type-id="vim.event.VmEvent"
      >
      <description-html>
         <![CDATA[This event records when an error message (consisting of a collection of "observations")
 is thrown by the virtual machine. This is a generic event for such messages.]]>
      </description-html>
            <property name="message" type-id-ref="java.lang.String"
      vmodl-name="message"
      is-localizable="true"
      >
      <description-html>
         <![CDATA[A raw message returned by the virtualization platform.]]>
      </description-html>
      </property>

            <property name="messageInfo" type-id-ref="vim.vm.Message"
      vmodl-name="messageInfo"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[A set of localizable message data that comprise this event.
 Only available on servers that support localization.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VmStartRecordingEvent"
      type-id="vim.event.VmStartRecordingEvent"
      vmodl-name="vim.event.VmStartRecordingEvent"
      version-id-ref="vim.version.version5"
      is-deprecated="true"
      base-type-id="vim.event.VmEvent"
      >
      <description-html>
         <![CDATA[This event indicates the start of a recording session on a virtual machine.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[as of vSphere API 6.0]]>
      </deprecated-html>
   </data-object>
   <data-object name="DeviceGroupId"
      type-id="vim.vm.replication.DeviceGroupId"
      vmodl-name="vim.vm.replication.DeviceGroupId"
      version-id-ref="vim.version.version11"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Identifier of a replication device group.]]>
      </description-html>
            <property name="id" type-id-ref="java.lang.String"
      vmodl-name="id"
      >
      <description-html>
         <![CDATA[ID of the device group.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="AlarmDescription"
      type-id="vim.alarm.AlarmDescription"
      vmodl-name="vim.alarm.AlarmDescription"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Static strings for alarms.]]>
      </description-html>
            <property name="expr" type-id-ref="vim.TypeDescription"
      vmodl-name="expr"
      is-array="true"
      >
      <description-html>
         <![CDATA[Descriptions of expression types for a trigger.]]>
      </description-html>
      </property>

            <property name="stateOperator" type-id-ref="vim.ElementDescription"
      vmodl-name="stateOperator"
      is-array="true"
      >
      <description-html>
         <![CDATA[<a href="vim.alarm.StateAlarmExpression.StateOperator.html">State Operator enum description</a>]]>
      </description-html>
      </property>

            <property name="metricOperator" type-id-ref="vim.ElementDescription"
      vmodl-name="metricOperator"
      is-array="true"
      >
      <description-html>
         <![CDATA[<a href="vim.alarm.MetricAlarmExpression.MetricOperator.html">MetricAlarmExpression Metric Operator enum description</a>]]>
      </description-html>
      </property>

            <property name="hostSystemConnectionState" type-id-ref="vim.ElementDescription"
      vmodl-name="hostSystemConnectionState"
      is-array="true"
      >
      <description-html>
         <![CDATA[<a href="vim.HostSystem.ConnectionState.html">Host System Connection State enum description</a>]]>
      </description-html>
      </property>

            <property name="virtualMachinePowerState" type-id-ref="vim.ElementDescription"
      vmodl-name="virtualMachinePowerState"
      is-array="true"
      >
      <description-html>
         <![CDATA[<a href="vim.VirtualMachine.PowerState.html">Virtual Machine Power State enum description</a>]]>
      </description-html>
      </property>

            <property name="datastoreConnectionState" type-id-ref="vim.ElementDescription"
      vmodl-name="datastoreConnectionState"
      version-id-ref="vim.version.version5"
      is-array="true"
      >
      <description-html>
         <![CDATA[<a href="vim.Datastore.Summary.html#accessible">accessible</a> and
 <a href="vim.host.MountInfo.html#accessible">accessible</a>]]>
      </description-html>
      </property>

            <property name="hostSystemPowerState" type-id-ref="vim.ElementDescription"
      vmodl-name="hostSystemPowerState"
      version-id-ref="vim.version.version5"
      is-array="true"
      >
      <description-html>
         <![CDATA[<a href="vim.HostSystem.PowerState.html">Host System Power State enum description</a>]]>
      </description-html>
      </property>

            <property name="virtualMachineGuestHeartbeatStatus" type-id-ref="vim.ElementDescription"
      vmodl-name="virtualMachineGuestHeartbeatStatus"
      version-id-ref="vim.version.version5"
      is-array="true"
      >
      <description-html>
         <![CDATA[<a href="vim.ManagedEntity.Status.html">Guest Heartbeat Status enum description</a>]]>
      </description-html>
      </property>

            <property name="entityStatus" type-id-ref="vim.ElementDescription"
      vmodl-name="entityStatus"
      is-array="true"
      >
      <description-html>
         <![CDATA[<a href="vim.ManagedEntity.Status.html">ManagedEntity Status enum description</a>]]>
      </description-html>
      </property>

            <property name="action" type-id-ref="vim.TypeDescription"
      vmodl-name="action"
      is-array="true"
      >
      <description-html>
         <![CDATA[Action class descriptions for an alarm.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="AlarmSpec"
      type-id="vim.alarm.AlarmSpec"
      vmodl-name="vim.alarm.AlarmSpec"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Parameters for alarm creation.]]>
      </description-html>
            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      >
      <description-html>
         <![CDATA[Name of the alarm.]]>
      </description-html>
      </property>

            <property name="systemName" type-id-ref="java.lang.String"
      vmodl-name="systemName"
      version-id-ref="vim.version.version7"
      is-optional="true"
      >
      <description-html>
         <![CDATA[System name of the alarm.
 <p>
 This is set only for predefined Alarms - i.e. Alarms created by the
 server or extensions automatically. After creation this value cannot be
 modified. User-created Alarms do not have a systemName at all.
 <p>
 The purpose of this field is to identify system-created Alarms
 reliably, even if they are edited by users.
 <p>
 When creating Alarms with systemName, the systemName and the name of the
 alarm should be equal.
 <p>
 When reconfiguring an Alarm with systemName, the same systemName should
 be passed in the new AlarmSpec. Renaming Alarms with systemName is not
 allowed, i.e. when reconfiguring, the name passed in the new AlarmSpec
 should be equal to either the systemName or its localized version (the
 current name in the Alarm's info).]]>
      </description-html>
      </property>

            <property name="description" type-id-ref="java.lang.String"
      vmodl-name="description"
      >
      <description-html>
         <![CDATA[Description of the alarm.]]>
      </description-html>
      </property>

            <property name="enabled" type-id-ref="BOOLEAN"
      vmodl-name="enabled"
      >
      <description-html>
         <![CDATA[Flag to indicate whether or not the alarm is enabled or disabled.]]>
      </description-html>
      </property>

            <property name="expression" type-id-ref="vim.alarm.AlarmExpression"
      vmodl-name="expression"
      >
      <description-html>
         <![CDATA[Top-level alarm expression that defines trigger conditions.]]>
      </description-html>
      </property>

            <property name="action" type-id-ref="vim.alarm.AlarmAction"
      vmodl-name="action"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Action to perform when the alarm is triggered.]]>
      </description-html>
      </property>

            <property name="actionFrequency" type-id-ref="INT"
      vmodl-name="actionFrequency"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Frequency in seconds, which specifies how often appropriate actions
 should repeat when an alarm does not change state.]]>
      </description-html>
      </property>

            <property name="setting" type-id-ref="vim.alarm.AlarmSetting"
      vmodl-name="setting"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Tolerance and maximum frequency settings.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualPS2Controller"
      type-id="vim.vm.device.VirtualPS2Controller"
      vmodl-name="vim.vm.device.VirtualPS2Controller"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.device.VirtualController"
      >
      <description-html>
         <![CDATA[The VirtualPS2Controller data object type represents a controller
  for keyboards and mice.]]>
      </description-html>
   </data-object>
   <data-object name="ProfileCompositeExpression"
      type-id="vim.profile.CompositeExpression"
      vmodl-name="vim.profile.CompositeExpression"
      version-id-ref="vim.version.version5"
      base-type-id="vim.profile.Expression"
      >
      <description-html>
         <![CDATA[DataObject to Compose expressions. It is used to group expressions
 together. They are similar to a parentheses in an expression.]]>
      </description-html>
            <property name="operator" type-id-ref="java.lang.String"
      vmodl-name="operator"
      >
      <description-html>
         <![CDATA[Logical operator to be applied between the expressions in
 the composite expression. e.g: or, and]]>
      </description-html>
      </property>

            <property name="expressionName" type-id-ref="java.lang.String"
      vmodl-name="expressionName"
      is-array="true"
      >
      <description-html>
         <![CDATA[List of expression names that will be used for this composition.
 The individual expressions will return a boolean. The return values
 of the individual expressions will be used to compute the final
 return value of the CompositeExpression.

 The expressions specified in the list can themselves be
 CompositeExpressions.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DVSRollbackCapability"
      type-id="vim.DistributedVirtualSwitch.RollbackCapability"
      vmodl-name="vim.DistributedVirtualSwitch.RollbackCapability"
      enclosing-type-id-ref="vim.DistributedVirtualSwitch"
      version-id-ref="vim.version.version8"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The <a href="vim.DistributedVirtualSwitch.RollbackCapability.html">DVSRollbackCapability</a> data object
  describes the rollback capabilities for a <a href="vim.DistributedVirtualSwitch.html">DistributedVirtualSwitch</a>.]]>
      </description-html>
            <property name="rollbackSupported" type-id-ref="BOOLEAN"
      vmodl-name="rollbackSupported"
      >
      <description-html>
         <![CDATA[Indicates whether rollback is supported on the distributed switch.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostWwnChangedEvent"
      type-id="vim.event.HostWwnChangedEvent"
      vmodl-name="vim.event.HostWwnChangedEvent"
      version-id-ref="vim.version.version2"
      base-type-id="vim.event.HostEvent"
      >
      <description-html>
         <![CDATA[This event records a change in a host's WWN (World Wide Name).]]>
      </description-html>
            <property name="oldNodeWwns" type-id-ref="LONG"
      vmodl-name="oldNodeWwns"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The old node WWN.]]>
      </description-html>
      </property>

            <property name="oldPortWwns" type-id-ref="LONG"
      vmodl-name="oldPortWwns"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The old port WWN.]]>
      </description-html>
      </property>

            <property name="newNodeWwns" type-id-ref="LONG"
      vmodl-name="newNodeWwns"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The new node WWN.]]>
      </description-html>
      </property>

            <property name="newPortWwns" type-id-ref="LONG"
      vmodl-name="newPortWwns"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The new port WWN.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DvsApplyOperationFaultFaultOnObject"
      type-id="vim.fault.DvsApplyOperationFault.FaultOnObject"
      vmodl-name="vim.fault.DvsApplyOperationFault.FaultOnObject"
      enclosing-type-id-ref="vim.fault.DvsApplyOperationFault"
      version-id-ref="vim.version.version8"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The fault occurred during an apply operation.]]>
      </description-html>
            <property name="objectId" type-id-ref="java.lang.String"
      vmodl-name="objectId"
      >
      <description-html>
         <![CDATA[The object identifier. It should be UUID for vSphere Distributed Switches,
  keys for vNetwork distributed portgroups and ports.]]>
      </description-html>
      </property>

            <property name="type" type-id-ref="vmodl.TypeName"
      vmodl-name="type"
      >
      <description-html>
         <![CDATA[The Type of the objects.]]>
      </description-html>
      </property>

            <property name="fault" type-id-ref="vmodl.LocalizedMethodFault"
      vmodl-name="fault"
      >
      <description-html>
         <![CDATA[The fault that occurred.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ClusterConfigInfoEx"
      type-id="vim.cluster.ConfigInfoEx"
      vmodl-name="vim.cluster.ConfigInfoEx"
      version-id-ref="vim.version.version2"
      base-type-id="vim.ComputeResource.ConfigInfo"
      >
      <description-html>
         <![CDATA[The <a href="vim.cluster.ConfigInfoEx.html">ClusterConfigInfoEx</a> data object describes a complete cluster
  configuration. For information about configuring a cluster, see
  <a href="vim.cluster.ConfigSpecEx.html">ClusterConfigSpecEx</a>.]]>
      </description-html>
            <property name="dasConfig" type-id-ref="vim.cluster.DasConfigInfo"
      vmodl-name="dasConfig"
      >
      <description-html>
         <![CDATA[Cluster-wide configuration of the vSphere HA service.]]>
      </description-html>
      </property>

            <property name="dasVmConfig" type-id-ref="vim.cluster.DasVmConfigInfo"
      vmodl-name="dasVmConfig"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of virtual machine configurations for the vSphere HA
  service. Each entry applies to one virtual machine.
  <p>
  If a virtual machine is not specified in this array, the service uses
  the default settings for that virtual machine.]]>
      </description-html>
      </property>

            <property name="drsConfig" type-id-ref="vim.cluster.DrsConfigInfo"
      vmodl-name="drsConfig"
      >
      <description-html>
         <![CDATA[Cluster-wide configuration of the VMware DRS service.]]>
      </description-html>
      </property>

            <property name="drsVmConfig" type-id-ref="vim.cluster.DrsVmConfigInfo"
      vmodl-name="drsVmConfig"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of virtual machine configurations for the VMware DRS
  service. Each entry applies to one virtual machine.
  <p>
  If a virtual machine is not specified in this array, the service uses
  the default settings for that virtual machine.]]>
      </description-html>
      </property>

            <property name="rule" type-id-ref="vim.cluster.RuleInfo"
      vmodl-name="rule"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Cluster-wide rules.]]>
      </description-html>
      </property>

            <property name="orchestration" type-id-ref="vim.cluster.OrchestrationInfo"
      vmodl-name="orchestration"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Cluster-wide configuration of VM orchestration.]]>
      </description-html>
      </property>

            <property name="vmOrchestration" type-id-ref="vim.cluster.VmOrchestrationInfo"
      vmodl-name="vmOrchestration"
      version-id-ref="vim.version.version11"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of virtual machine configurations that apply during cluster wide
  VM orchestration. Each entry applies to one virtual machine.
  <p>
  If a virtual machine is not specified in this array, the service uses
  the default settings for that virtual machine.]]>
      </description-html>
      </property>

            <property name="dpmConfigInfo" type-id-ref="vim.cluster.DpmConfigInfo"
      vmodl-name="dpmConfigInfo"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Cluster-wide configuration of the VMware DPM service.]]>
      </description-html>
      </property>

            <property name="dpmHostConfig" type-id-ref="vim.cluster.DpmHostConfigInfo"
      vmodl-name="dpmHostConfig"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of host configurations for the VMware DPM
  service. Each entry applies to one host.
  <p>
  If a host is not specified in this array, the service uses
  the cluster default settings for that host.]]>
      </description-html>
      </property>

            <property name="vsanConfigInfo" type-id-ref="vim.vsan.cluster.ConfigInfo"
      vmodl-name="vsanConfigInfo"
      version-id-ref="vim.version.version9"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Cluster-wide configuration of the VMware VSAN service.]]>
      </description-html>
      </property>

            <property name="vsanHostConfig" type-id-ref="vim.vsan.host.ConfigInfo"
      vmodl-name="vsanHostConfig"
      version-id-ref="vim.version.version9"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of host configurations for the VMware VSAN service.
 Each entry applies to one host.
 <p>
 If a host is not specified in this array, the service uses
 the cluster default settings for that host.]]>
      </description-html>
      </property>

            <property name="group" type-id-ref="vim.cluster.GroupInfo"
      vmodl-name="group"
      version-id-ref="vim.version.version6"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Cluster-wide groups.]]>
      </description-html>
      </property>

            <property name="infraUpdateHaConfig" type-id-ref="vim.cluster.InfraUpdateHaConfigInfo"
      vmodl-name="infraUpdateHaConfig"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Cluster-wide configuration of the VMware InfraUpdateHA service.]]>
      </description-html>
      </property>

            <property name="proactiveDrsConfig" type-id-ref="vim.cluster.ProactiveDrsConfigInfo"
      vmodl-name="proactiveDrsConfig"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Cluster-wide configuration of the ProactiveDRS service.]]>
      </description-html>
      </property>

            <property name="cryptoConfig" type-id-ref="vim.cluster.CryptoConfigInfo"
      vmodl-name="cryptoConfig"
      version-id-ref="vim.version.v7_0"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Cluster-wide configuration of the encryption mode.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostVnicConnectedToCustomizedDVPortEvent"
      type-id="vim.event.HostVnicConnectedToCustomizedDVPortEvent"
      vmodl-name="vim.event.HostVnicConnectedToCustomizedDVPortEvent"
      version-id-ref="vim.version.version5"
      base-type-id="vim.event.HostEvent"
      >
      <description-html>
         <![CDATA[This event records when some host Virtual NICs were reconfigured to use
  DVPorts with port level configuration, which might be different
  from the DVportgroup.]]>
      </description-html>
            <property name="vnic" type-id-ref="vim.event.VnicPortArgument"
      vmodl-name="vnic"
      >
      <description-html>
         <![CDATA[Information about the Virtual NIC that is using the DVport.]]>
      </description-html>
      </property>

            <property name="prevPortKey" type-id-ref="java.lang.String"
      vmodl-name="prevPortKey"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Information about the previous Virtual NIC that is using the DVport.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualDiskSparseVer2BackingInfo"
      type-id="vim.vm.device.VirtualDisk.SparseVer2BackingInfo"
      vmodl-name="vim.vm.device.VirtualDisk.SparseVer2BackingInfo"
      enclosing-type-id-ref="vim.vm.device.VirtualDisk"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.device.VirtualDevice.FileBackingInfo"
      >
      <description-html>
         <![CDATA[This data object type contains information about backing a virtual disk by
  using a virtual disk file on the host, in the sparse disk format used by
  VMware Server.]]>
      </description-html>
            <property name="diskMode" type-id-ref="java.lang.String"
      vmodl-name="diskMode"
      >
      <description-html>
         <![CDATA[The disk persistence mode. Valid modes are:
  <ul>
  <li>vim.vm.device.VirtualDiskOption.DiskMode#persistent
  <li>vim.vm.device.VirtualDiskOption.DiskMode#independent_persistent
  <li>vim.vm.device.VirtualDiskOption.DiskMode#independent_nonpersistent
  </ul><br>See <a href="vim.vm.device.VirtualDiskOption.DiskMode.html">VirtualDiskMode</a><br>]]>
      </description-html>
      </property>

            <property name="split" type-id-ref="BOOLEAN"
      vmodl-name="split"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Flag to indicate the type of virtual disk file: split or monolithic.
  If true, the virtual disk is stored in multiple files, each 2GB.]]>
      </description-html>
      </property>

            <property name="writeThrough" type-id-ref="BOOLEAN"
      vmodl-name="writeThrough"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Flag to indicate whether writes should go directly to the file system
  or should be buffered.]]>
      </description-html>
      </property>

            <property name="spaceUsedInKB" type-id-ref="LONG"
      vmodl-name="spaceUsedInKB"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The space in use for this sparse disk. This information is provided
 when retrieving configuration information for an exisiting virtual
 machine. The client cannot modify this information using reconfigure
 on a virtual machine.]]>
      </description-html>
      </property>

            <property name="uuid" type-id-ref="java.lang.String"
      vmodl-name="uuid"
      version-id-ref="vim.version.version2"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Disk UUID for the virtual disk, if available.]]>
      </description-html>
      </property>

            <property name="contentId" type-id-ref="java.lang.String"
      vmodl-name="contentId"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Content ID of the virtual disk file, if available.
 <p>
 A content ID indicates the logical contents of the disk backing and its parents.
 <p>
 This property is only guaranteed to be up to date if this disk backing is not
 currently being written to by any virtual machine.
 <p>
 The only supported operation is comparing if two content IDs are equal or not.
 The guarantee provided by the content ID is that if two disk backings have the
 same content ID and are not currently being written to, then reads issued from
 the guest operating system to those disk backings will return the same data.]]>
      </description-html>
      </property>

            <property name="changeId" type-id-ref="java.lang.String"
      vmodl-name="changeId"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The change ID of the virtual disk for the corresponding
 snapshot or virtual machine. This can be used to track
 incremental changes to a virtual disk. See
 <a href="vim.VirtualMachine.html#queryChangedDiskAreas">QueryChangedDiskAreas</a>.]]>
      </description-html>
      </property>

            <property name="parent" type-id-ref="vim.vm.device.VirtualDisk.SparseVer2BackingInfo"
      vmodl-name="parent"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The parent of this virtual disk file, if this is a delta disk backing.
 This will be unset if this is not a delta disk backing.
 <p>
 A delta disk backing is a way to preserve a virtual disk backing
 at some point in time.  A delta disk backing is a file backing which in
 turn points to the original virtual disk backing (the parent).  After a delta
 disk backing is added, all writes go to the delta disk backing.  All reads
 first try the delta disk backing and then try the parent backing if needed.
 <p>
 A delta disk backing can be added to a disk either implicitly during
 snapshot operations, or explicitly during create or reconfigure of the virtual
 machine.
 <p>
 Note that the type of the backing is consistent throughout the chain; any new
 delta disk backing which is added is of the same type as the original disk .
 Also note that since the parent backing is not being written to,
 it is possible that the parent backing may be shared among multiple
 disks belonging to multiple virtual machines.
 <p>
 During virtual machine <a href="vim.Folder.html#createVm">CreateVM_Task</a> and
 <a href="vim.VirtualMachine.html#reconfigure">ReconfigVM_Task</a> this property is
 only checked if the <a href="vim.vm.device.VirtualDeviceSpec.html">VirtualDeviceConfigSpec</a> specifies
 an add operation with a
 create file operation.
 In this case, a new delta disk backing is created which points to the parent
 disk backing.  Only the <a href="vim.vm.device.VirtualDevice.FileBackingInfo.html#fileName">fileName</a>
 property is important; all other properties will be ignored.  The parent backing
 is assumed to exist and will not be recursively created.
 <p>
 This property may only be set if
 <a href="vim.host.Capability.html#deltaDiskBackingsSupported">deltaDiskBackingsSupported</a>
 is true.]]>
      </description-html>
      </property>

            <property name="keyId" type-id-ref="vim.encryption.CryptoKeyId"
      vmodl-name="keyId"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Virtual Disk Backing encryption options.
 On modification operations the value is ignored, use the specification
 <a href="vim.vm.device.VirtualDeviceSpec.BackingSpec.html#crypto">crypto</a> in
 <a href="vim.vm.device.VirtualDeviceSpec.html#backing">backing</a>.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualVmxnet3Vrdma"
      type-id="vim.vm.device.VirtualVmxnet3Vrdma"
      vmodl-name="vim.vm.device.VirtualVmxnet3Vrdma"
      version-id-ref="vim.version.version11"
      base-type-id="vim.vm.device.VirtualVmxnet3"
      >
      <description-html>
         <![CDATA[The VirtualVmxnet3Vrdma data object type represents an instance of the
 VRDMA virtual Remote Direct Memory Access adapter attached to a virtual
 machine.]]>
      </description-html>
            <property name="deviceProtocol" type-id-ref="java.lang.String"
      vmodl-name="deviceProtocol"
      version-id-ref="vim.version.version12"
      is-optional="true"
      >
      <description-html>
         <![CDATA[VRDMA Device protocol. See
  <a href="vim.vm.device.VirtualVmxnet3VrdmaOption.DeviceProtocols.html">VirtualVmxnet3VrdmaOptionDeviceProtocols</a> for more information.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="EnumDescription"
      type-id="vim.EnumDescription"
      vmodl-name="vim.EnumDescription"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Static strings used for describing an enumerated type.]]>
      </description-html>
            <property name="key" type-id-ref="vmodl.TypeName"
      vmodl-name="key"
      >
      <description-html>
         <![CDATA[Type of enumeration being described.]]>
      </description-html>
      </property>

            <property name="tags" type-id-ref="vim.ElementDescription"
      vmodl-name="tags"
      is-array="true"
      >
      <description-html>
         <![CDATA[Element descriptions of all the tags for that enumerated type.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DatastoreRemovedOnHostEvent"
      type-id="vim.event.DatastoreRemovedOnHostEvent"
      vmodl-name="vim.event.DatastoreRemovedOnHostEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.HostEvent"
      >
      <description-html>
         <![CDATA[This event records when a datastore is removed from a host
  but not from VirtualCenter.]]>
      </description-html>
            <property name="datastore" type-id-ref="vim.event.DatastoreEventArgument"
      vmodl-name="datastore"
      >
      <description-html>
         <![CDATA[The associated datastore.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ClusterEvent"
      type-id="vim.event.ClusterEvent"
      vmodl-name="vim.event.ClusterEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.Event"
      >
      <description-html>
         <![CDATA[These are cluster events.]]>
      </description-html>
   </data-object>
   <data-object name="IncorrectHostInformationEvent"
      type-id="vim.event.IncorrectHostInformationEvent"
      vmodl-name="vim.event.IncorrectHostInformationEvent"
      version-id-ref="vim.version.version2"
      base-type-id="vim.event.LicenseEvent"
      >
      <description-html>
         <![CDATA[This event records if the host did not provide the information needed
 to acquire the correct set of licenses.]]>
      </description-html>
   </data-object>
   <data-object name="VmDateRolledBackEvent"
      type-id="vim.event.VmDateRolledBackEvent"
      vmodl-name="vim.event.VmDateRolledBackEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.VmEvent"
      >
      <description-html>
         <![CDATA[This event records when the VirtualCenter server date rolled back.]]>
      </description-html>
   </data-object>
   <data-object name="OvfValidateHostParams"
      type-id="vim.OvfManager.ValidateHostParams"
      vmodl-name="vim.OvfManager.ValidateHostParams"
      enclosing-type-id-ref="vim.OvfManager"
      version-id-ref="vim.version.version5"
      base-type-id="vim.OvfManager.CommonParams"
      >
   </data-object>
   <data-object name="LinkDiscoveryProtocolConfig"
      type-id="vim.host.LinkDiscoveryProtocolConfig"
      vmodl-name="vim.host.LinkDiscoveryProtocolConfig"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Dataobject representing the link discovery protocol configuration for a
  virtual or distributed virtual switch.]]>
      </description-html>
            <property name="protocol" type-id-ref="java.lang.String"
      vmodl-name="protocol"
      >
      <description-html>
         <![CDATA[The discovery protocol type. For valid values
  see <a href="vim.host.LinkDiscoveryProtocolConfig.ProtocolType.html">LinkDiscoveryProtocolConfigProtocolType</a>.]]>
      </description-html>
      </property>

            <property name="operation" type-id-ref="java.lang.String"
      vmodl-name="operation"
      >
      <description-html>
         <![CDATA[Whether to advertise or listen. For valid values see
  <a href="vim.host.LinkDiscoveryProtocolConfig.OperationType.html">LinkDiscoveryProtocolConfigOperationType</a>.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.host.LinkDiscoveryProtocolConfig.ProtocolType</nested-type-id-ref>
      <nested-type-id-ref>vim.host.LinkDiscoveryProtocolConfig.OperationType</nested-type-id-ref>
   </data-object>
   <data-object name="DvsVnicAllocatedResource"
      type-id="vim.dvs.VmVnicNetworkResourcePool.VnicAllocatedResource"
      vmodl-name="vim.dvs.VmVnicNetworkResourcePool.VnicAllocatedResource"
      enclosing-type-id-ref="vim.dvs.VmVnicNetworkResourcePool"
      version-id-ref="vim.version.version10"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This class defines the allocated resource information on a virtual NIC]]>
      </description-html>
            <property name="vm" type-id-ref="vim.VirtualMachine"
      vmodl-name="vm"
      >
      <description-html>
         <![CDATA[The virtual machine]]>
      </description-html>
      </property>

            <property name="vnicKey" type-id-ref="java.lang.String"
      vmodl-name="vnicKey"
      >
      <description-html>
         <![CDATA[The virtual NIC key]]>
      </description-html>
      </property>

            <property name="reservation" type-id-ref="LONG"
      vmodl-name="reservation"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The reservation specification on the virtual NIC. Units in Mbits/s]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualMachineConfigSummary"
      type-id="vim.vm.Summary.ConfigSummary"
      vmodl-name="vim.vm.Summary.ConfigSummary"
      enclosing-type-id-ref="vim.vm.Summary"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[A subset of virtual machine configuration.]]>
      </description-html>
            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      >
      <description-html>
         <![CDATA[Name of the virtual machine.]]>
      </description-html>
      </property>

            <property name="template" type-id-ref="BOOLEAN"
      vmodl-name="template"
      >
      <description-html>
         <![CDATA[Flag to determine whether or not this virtual machine is a template.]]>
      </description-html>
      </property>

            <property name="vmPathName" type-id-ref="java.lang.String"
      vmodl-name="vmPathName"
      >
      <description-html>
         <![CDATA[Path name to the configuration file for the virtual machine]]>
      </description-html>
      </property>

            <property name="memorySizeMB" type-id-ref="INT"
      vmodl-name="memorySizeMB"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Memory size of the virtual machine, in megabytes.]]>
      </description-html>
      </property>

            <property name="cpuReservation" type-id-ref="INT"
      vmodl-name="cpuReservation"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Configured CPU reservation in MHz]]>
      </description-html>
      </property>

            <property name="memoryReservation" type-id-ref="INT"
      vmodl-name="memoryReservation"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Configured Memory reservation in MB]]>
      </description-html>
      </property>

            <property name="numCpu" type-id-ref="INT"
      vmodl-name="numCpu"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Number of processors in the virtual machine.]]>
      </description-html>
      </property>

            <property name="numEthernetCards" type-id-ref="INT"
      vmodl-name="numEthernetCards"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Number of virtual network adapters.]]>
      </description-html>
      </property>

            <property name="numVirtualDisks" type-id-ref="INT"
      vmodl-name="numVirtualDisks"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Number of virtual disks attached to the virtual machine.]]>
      </description-html>
      </property>

            <property name="uuid" type-id-ref="java.lang.String"
      vmodl-name="uuid"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Virtual machine BIOS identification.]]>
      </description-html>
      </property>

            <property name="instanceUuid" type-id-ref="java.lang.String"
      vmodl-name="instanceUuid"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[VC-specific identifier of the virtual machine]]>
      </description-html>
      </property>

            <property name="guestId" type-id-ref="java.lang.String"
      vmodl-name="guestId"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Guest operating system identifier (short name).]]>
      </description-html>
      </property>

            <property name="guestFullName" type-id-ref="java.lang.String"
      vmodl-name="guestFullName"
      is-optional="true"
      is-localizable="true"
      >
      <description-html>
         <![CDATA[Guest operating system name configured on the virtual machine.]]>
      </description-html>
      </property>

            <property name="annotation" type-id-ref="java.lang.String"
      vmodl-name="annotation"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Description for the virtual machine.]]>
      </description-html>
      </property>

            <property name="product" type-id-ref="vim.vApp.ProductInfo"
      vmodl-name="product"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Product information. References to properties in the URLs are expanded.]]>
      </description-html>
      </property>

            <property name="installBootRequired" type-id-ref="BOOLEAN"
      vmodl-name="installBootRequired"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Whether the VM requires a reboot to finish installation. False if no vApp
 meta-data is configured.]]>
      </description-html>
      </property>

            <property name="ftInfo" type-id-ref="vim.vm.FaultToleranceConfigInfo"
      vmodl-name="ftInfo"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Fault Tolerance settings for this virtual machine.
  This property will be populated only for fault tolerance virtual
  machines and will be left unset for all other virtual machines.
  See <a href="vim.vm.FaultToleranceConfigInfo.html">FaultToleranceConfigInfo</a> for a description.]]>
      </description-html>
      </property>

            <property name="managedBy" type-id-ref="vim.ext.ManagedByInfo"
      vmodl-name="managedBy"
      version-id-ref="vim.version.version7"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Specifies that this VM is managed by a VC Extension. See the
 <a href="vim.vm.ConfigSpec.html#managedBy">managedBy</a> property in the ConfigSpec
 for more details.]]>
      </description-html>
      </property>

            <property name="tpmPresent" type-id-ref="BOOLEAN"
      vmodl-name="tpmPresent"
      version-id-ref="vim.version.version12"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Is TPM present in a VM?]]>
      </description-html>
      </property>

            <property name="numVmiopBackings" type-id-ref="INT"
      vmodl-name="numVmiopBackings"
      version-id-ref="vim.version.version12"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Number of VMIOP backed devices attached to the virtual machine.]]>
      </description-html>
      </property>

            <property name="hwVersion" type-id-ref="java.lang.String"
      vmodl-name="hwVersion"
      version-id-ref="vim.version.v6_9_1"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The hardware version string for this virtual machine.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostMountInfo"
      type-id="vim.host.MountInfo"
      vmodl-name="vim.host.MountInfo"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The <a href="vim.host.MountInfo.html">HostMountInfo</a> data object provides information related
   to a configured mount point. This object does not include information
   about the mounted file system. (See <a href="vim.host.FileSystemMountInfo.html">HostFileSystemMountInfo</a>.)]]>
      </description-html>
            <property name="path" type-id-ref="java.lang.String"
      vmodl-name="path"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Local file path where file system volume is mounted, if applicable.
  This path identifies the file system volume from the point of view
  of the host.]]>
      </description-html>
      </property>

            <property name="accessMode" type-id-ref="java.lang.String"
      vmodl-name="accessMode"
      >
      <description-html>
         <![CDATA[Access mode to the underlying file system for this host.]]>
      </description-html>
      </property>

            <property name="mounted" type-id-ref="BOOLEAN"
      vmodl-name="mounted"
      version-id-ref="vim.version.version7"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The mount state of this mount point. For a discovered
  volume, which is mounted, this is true. When this value is
  unset, the default value is true.]]>
      </description-html>
      </property>

            <property name="accessible" type-id-ref="BOOLEAN"
      vmodl-name="accessible"
      version-id-ref="vim.version.version2"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Flag that indicates if the datastore is currently accessible from
  the host.
  <p>
  For the case of a standalone host, this property has the same value as
  <a href="vim.Datastore.Summary.html">DatastoreSummary</a>.<a href="vim.Datastore.Summary.html#accessible">accessible</a>.
  You can use the <a href="vim.Datastore.Summary.html">DatastoreSummary</a> property if the <a href="vim.host.MountInfo.html">HostMountInfo</a>
  property is not set. The VirtualCenter Server will always make
  sure the <a href="vim.Datastore.Summary.html">DatastoreSummary</a> property is set correctly.]]>
      </description-html>
      </property>

            <property name="inaccessibleReason" type-id-ref="java.lang.String"
      vmodl-name="inaccessibleReason"
      version-id-ref="vim.version.version8"
      is-optional="true"
      >
      <description-html>
         <![CDATA[This optional property for inaccessible reason is reported only if
  a datastore becomes inaccessible as reported by
  <a href="vim.host.MountInfo.html#accessible">accessible</a> and
  <a href="vim.Datastore.Summary.html">DatastoreSummary</a>.<a href="vim.Datastore.Summary.html#accessible">accessible</a>.

  The values for inaccessible reason are defined in the enum
  InaccessibleReason
  This helps to determine host specific reason for datastore inaccessibility.

  If the datastore becomes accessible following an inaccessible condition,
  the property <a href="vim.host.MountInfo.html#inaccessibleReason">inaccessibleReason</a> will be unset.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.host.MountInfo.AccessMode</nested-type-id-ref>
      <nested-type-id-ref>vim.host.MountInfo.InaccessibleReason</nested-type-id-ref>
   </data-object>
   <data-object name="HostInternetScsiHba"
      type-id="vim.host.InternetScsiHba"
      vmodl-name="vim.host.InternetScsiHba"
      version-id-ref="vim.version.version1"
      base-type-id="vim.host.HostBusAdapter"
      >
      <description-html>
         <![CDATA[This data object type describes the iSCSI host bus adapter
  interface.]]>
      </description-html>
            <property name="isSoftwareBased" type-id-ref="BOOLEAN"
      vmodl-name="isSoftwareBased"
      >
      <description-html>
         <![CDATA[True if this host bus adapter is a software based initiator
 utilizing the hosting system's existing TCP/IP network connection]]>
      </description-html>
      </property>

            <property name="canBeDisabled" type-id-ref="BOOLEAN"
      vmodl-name="canBeDisabled"
      version-id-ref="vim.version.version7"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Can this adapter be disabled]]>
      </description-html>
      </property>

            <property name="networkBindingSupport" type-id-ref="vim.host.InternetScsiHba.NetworkBindingSupportType"
      vmodl-name="networkBindingSupport"
      version-id-ref="vim.version.version7"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Specifies if this iSCSI Adapter requires a bound network
 interface to function.]]>
      </description-html>
      </property>

            <property name="discoveryCapabilities" type-id-ref="vim.host.InternetScsiHba.DiscoveryCapabilities"
      vmodl-name="discoveryCapabilities"
      >
      <description-html>
         <![CDATA[The discovery capabilities for this host bus adapter.]]>
      </description-html>
      </property>

            <property name="discoveryProperties" type-id-ref="vim.host.InternetScsiHba.DiscoveryProperties"
      vmodl-name="discoveryProperties"
      >
      <description-html>
         <![CDATA[The discovery settings for this host bus adapter.]]>
      </description-html>
      </property>

            <property name="authenticationCapabilities" type-id-ref="vim.host.InternetScsiHba.AuthenticationCapabilities"
      vmodl-name="authenticationCapabilities"
      >
      <description-html>
         <![CDATA[The authentication capabilities for this host bus adapter.]]>
      </description-html>
      </property>

            <property name="authenticationProperties" type-id-ref="vim.host.InternetScsiHba.AuthenticationProperties"
      vmodl-name="authenticationProperties"
      >
      <description-html>
         <![CDATA[The authentication settings for this host bus adapter.
  All static and discovery targets will inherit the use of these
  settings unless their authentication settings are explicitly set.]]>
      </description-html>
      </property>

            <property name="digestCapabilities" type-id-ref="vim.host.InternetScsiHba.DigestCapabilities"
      vmodl-name="digestCapabilities"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The authentication capabilities for this host bus adapter.]]>
      </description-html>
      </property>

            <property name="digestProperties" type-id-ref="vim.host.InternetScsiHba.DigestProperties"
      vmodl-name="digestProperties"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The digest settings for this host bus adapter.
  All static and discovery targets will inherit the use of these
  properties unless their digest settings are explicitly set.]]>
      </description-html>
      </property>

            <property name="ipCapabilities" type-id-ref="vim.host.InternetScsiHba.IPCapabilities"
      vmodl-name="ipCapabilities"
      >
      <description-html>
         <![CDATA[The IP capabilities for this host bus adapter.]]>
      </description-html>
      </property>

            <property name="ipProperties" type-id-ref="vim.host.InternetScsiHba.IPProperties"
      vmodl-name="ipProperties"
      >
      <description-html>
         <![CDATA[The IP settings for this host bus adapter.]]>
      </description-html>
      </property>

            <property name="supportedAdvancedOptions" type-id-ref="vim.option.OptionDef"
      vmodl-name="supportedAdvancedOptions"
      version-id-ref="vim.version.version5"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[A list of supported key/value pair advanced options for the
  host bus adapter including their type information.]]>
      </description-html>
      </property>

            <property name="advancedOptions" type-id-ref="vim.host.InternetScsiHba.ParamValue"
      vmodl-name="advancedOptions"
      version-id-ref="vim.version.version5"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[A list of the current options settings for the host bus adapter.]]>
      </description-html>
      </property>

            <property name="iScsiName" type-id-ref="java.lang.String"
      vmodl-name="iScsiName"
      >
      <description-html>
         <![CDATA[The iSCSI name of this host bus adapter.]]>
      </description-html>
      </property>

            <property name="iScsiAlias" type-id-ref="java.lang.String"
      vmodl-name="iScsiAlias"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The iSCSI alias of this host bus adapter.]]>
      </description-html>
      </property>

            <property name="configuredSendTarget" type-id-ref="vim.host.InternetScsiHba.SendTarget"
      vmodl-name="configuredSendTarget"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The configured iSCSI send target entries.]]>
      </description-html>
      </property>

            <property name="configuredStaticTarget" type-id-ref="vim.host.InternetScsiHba.StaticTarget"
      vmodl-name="configuredStaticTarget"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The configured iSCSI static target entries.]]>
      </description-html>
      </property>

            <property name="maxSpeedMb" type-id-ref="INT"
      vmodl-name="maxSpeedMb"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The maximum supported link speed of the port in megabits per second.]]>
      </description-html>
      </property>

            <property name="currentSpeedMb" type-id-ref="INT"
      vmodl-name="currentSpeedMb"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The Current operating link speed of the port in megabits per second.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.host.InternetScsiHba.ParamValue</nested-type-id-ref>
      <nested-type-id-ref>vim.host.InternetScsiHba.DiscoveryCapabilities</nested-type-id-ref>
      <nested-type-id-ref>vim.host.InternetScsiHba.DiscoveryProperties</nested-type-id-ref>
      <nested-type-id-ref>vim.host.InternetScsiHba.ChapAuthenticationType</nested-type-id-ref>
      <nested-type-id-ref>vim.host.InternetScsiHba.AuthenticationCapabilities</nested-type-id-ref>
      <nested-type-id-ref>vim.host.InternetScsiHba.AuthenticationProperties</nested-type-id-ref>
      <nested-type-id-ref>vim.host.InternetScsiHba.DigestType</nested-type-id-ref>
      <nested-type-id-ref>vim.host.InternetScsiHba.DigestCapabilities</nested-type-id-ref>
      <nested-type-id-ref>vim.host.InternetScsiHba.DigestProperties</nested-type-id-ref>
      <nested-type-id-ref>vim.host.InternetScsiHba.IPCapabilities</nested-type-id-ref>
      <nested-type-id-ref>vim.host.InternetScsiHba.IscsiIpv6Address</nested-type-id-ref>
      <nested-type-id-ref>vim.host.InternetScsiHba.IPv6Properties</nested-type-id-ref>
      <nested-type-id-ref>vim.host.InternetScsiHba.IPProperties</nested-type-id-ref>
      <nested-type-id-ref>vim.host.InternetScsiHba.SendTarget</nested-type-id-ref>
      <nested-type-id-ref>vim.host.InternetScsiHba.StaticTarget</nested-type-id-ref>
      <nested-type-id-ref>vim.host.InternetScsiHba.TargetSet</nested-type-id-ref>
      <nested-type-id-ref>vim.host.InternetScsiHba.NetworkBindingSupportType</nested-type-id-ref>
   </data-object>
   <data-object name="DistributedVirtualPort"
      type-id="vim.dvs.DistributedVirtualPort"
      vmodl-name="vim.dvs.DistributedVirtualPort"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The <a href="vim.dvs.DistributedVirtualPort.html">DistributedVirtualPort</a> data object represents a port in a
  <a href="vim.DistributedVirtualSwitch.html">DistributedVirtualSwitch</a>. Virtual ports are part of a distributed
  virtual portgroup. Servers create virtual ports according to the portgroup type
  (<a href="vim.dvs.DistributedVirtualPortgroup.html">DistributedVirtualPortgroup</a>.<a href="vim.dvs.DistributedVirtualPortgroup.html#config">Config</a>.<a href="vim.dvs.DistributedVirtualPortgroup.ConfigInfo.html#type">type</a>).
  See <a href="vim.dvs.DistributedVirtualPortgroup.PortgroupType.html">DistributedVirtualPortgroupPortgroupType</a>.<br />
  <ul>
  <li>To configure host network access by port, set the distributed virtual port
  in the host virtual NIC specification
  (<a href="vim.host.VirtualNic.Specification.html">HostVirtualNicSpec</a>.<a href="vim.host.VirtualNic.Specification.html#distributedVirtualPort">distributedVirtualPort</a>.<a href="vim.dvs.PortConnection.html#portKey">portKey</a>).
   </li><br />
   <li>To configure virtual machine network access by port, set the port
   in the virtual Ethernet card backing
   (<a href="vim.vm.device.VirtualEthernetCard.html">VirtualEthernetCard</a>.<a href="vim.vm.device.VirtualDevice.html#backing">backing</a>.<a href="vim.vm.device.VirtualEthernetCard.DistributedVirtualPortBackingInfo.html#port">port</a>.<a href="vim.dvs.PortConnection.html#portKey">portKey</a>).
  </li>
  </ul>]]>
      </description-html>
            <property name="key" type-id-ref="java.lang.String"
      vmodl-name="key"
      >
      <description-html>
         <![CDATA[Port key.]]>
      </description-html>
      </property>

            <property name="config" type-id-ref="vim.dvs.DistributedVirtualPort.ConfigInfo"
      vmodl-name="config"
      >
      <description-html>
         <![CDATA[Port configuration, including identifying information, network
 settings, and the set of entities that can connect to the port.]]>
      </description-html>
      </property>

            <property name="dvsUuid" type-id-ref="java.lang.String"
      vmodl-name="dvsUuid"
      >
      <description-html>
         <![CDATA[UUID of the <a href="vim.DistributedVirtualSwitch.html">DistributedVirtualSwitch</a> to which the port belongs.]]>
      </description-html>
      </property>

            <property name="portgroupKey" type-id-ref="java.lang.String"
      vmodl-name="portgroupKey"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Key of the portgroup <a href="vim.dvs.DistributedVirtualPortgroup.html">DistributedVirtualPortgroup</a> to which
 the port belongs, if any.]]>
      </description-html>
      </property>

            <property name="proxyHost" type-id-ref="vim.HostSystem"
      vmodl-name="proxyHost"
      is-optional="true"
      >
      <description-html>
         <![CDATA[<a href="vim.HostSystem.html">HostSystem</a> that services this port.]]>
      </description-html>
      </property>

            <property name="connectee" type-id-ref="vim.dvs.PortConnectee"
      vmodl-name="connectee"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Entity that connects to the port.]]>
      </description-html>
      </property>

            <property name="conflict" type-id-ref="BOOLEAN"
      vmodl-name="conflict"
      >
      <description-html>
         <![CDATA[Specifies whether the port is a conflict port. A port could be marked
  as conflict if an entity is discovered connecting to a port that is
  already occupied, or if the host creates a port without conferring
  with vCenter Server.
  <p>
  The distributed virtual switch does not persist the runtime state
  of a conflict port. Also, the port cannot move away from the host.
  vCenter Server will not move a virtual machine (VMotion) that is
  using a conflict port.]]>
      </description-html>
      </property>

            <property name="conflictPortKey" type-id-ref="java.lang.String"
      vmodl-name="conflictPortKey"
      is-optional="true"
      >
      <description-html>
         <![CDATA[If the port is marked conflict in the case of two entities connecting to
  the same port (see
  <a href="vim.dvs.DistributedVirtualPort.html#conflict">conflict</a>), this is the
  key of the port which the connected entity is contending for.]]>
      </description-html>
      </property>

            <property name="state" type-id-ref="vim.dvs.DistributedVirtualPort.State"
      vmodl-name="state"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Runtime state of the port.]]>
      </description-html>
      </property>

            <property name="connectionCookie" type-id-ref="INT"
      vmodl-name="connectionCookie"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Cookie representing the current instance of association between a
  port and a virtual or physical NIC. See <a href="vim.dvs.PortConnection.html">DistributedVirtualSwitchPortConnection</a>.
  The same cookie is present in the physical or virtual NIC configuration
  (<a href="vim.dvs.PortConnection.html">DistributedVirtualSwitchPortConnection</a>.<a href="vim.dvs.PortConnection.html#connectionCookie">connectionCookie</a>)
  so that the Server can verify that the entity is the rightful
  connectee of the port.]]>
      </description-html>
      </property>

            <property name="lastStatusChange" type-id-ref="vmodl.DateTime"
      vmodl-name="lastStatusChange"
      >
      <description-html>
         <![CDATA[The last time the
 <a href="vim.dvs.DistributedVirtualPort.html#state">state</a>.<a href="vim.dvs.DistributedVirtualPort.State.html#runtimeInfo">runtimeInfo</a>
  value was changed.]]>
      </description-html>
      </property>

            <property name="hostLocalPort" type-id-ref="BOOLEAN"
      vmodl-name="hostLocalPort"
      version-id-ref="vim.version.version8"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Specifies whether the port is a host local port. A host local port is  created
  to resurrect the management network connection on a VMkernel virtual NIC.
  You cannot use vCenter Server to reconfigure this port and you cannot
  reassign the port.]]>
      </description-html>
      </property>

            <property name="externalId" type-id-ref="java.lang.String"
      vmodl-name="externalId"
      version-id-ref="vim.version.v7_0"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Populate the Id assigned to vmknic or vnic by external management plane
  to port, if the port is connected to the nics.]]>
      </description-html>
      </property>

            <property name="segmentPortId" type-id-ref="java.lang.String"
      vmodl-name="segmentPortId"
      version-id-ref="vim.version.v7_0"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Populate the segmentPortId assigned to LSP.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.dvs.DistributedVirtualPort.ConfigSpec</nested-type-id-ref>
      <nested-type-id-ref>vim.dvs.DistributedVirtualPort.ConfigInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.dvs.DistributedVirtualPort.TrafficShapingPolicy</nested-type-id-ref>
      <nested-type-id-ref>vim.dvs.DistributedVirtualPort.HostLocalPortInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.dvs.DistributedVirtualPort.VendorSpecificConfig</nested-type-id-ref>
      <nested-type-id-ref>vim.dvs.DistributedVirtualPort.FilterParameter</nested-type-id-ref>
      <nested-type-id-ref>vim.dvs.DistributedVirtualPort.FilterOnFailure</nested-type-id-ref>
      <nested-type-id-ref>vim.dvs.DistributedVirtualPort.FilterConfig</nested-type-id-ref>
      <nested-type-id-ref>vim.dvs.DistributedVirtualPort.TrafficFilterConfig</nested-type-id-ref>
      <nested-type-id-ref>vim.dvs.DistributedVirtualPort.FilterConfigSpec</nested-type-id-ref>
      <nested-type-id-ref>vim.dvs.DistributedVirtualPort.TrafficFilterConfigSpec</nested-type-id-ref>
      <nested-type-id-ref>vim.dvs.DistributedVirtualPort.FilterPolicy</nested-type-id-ref>
      <nested-type-id-ref>vim.dvs.DistributedVirtualPort.Setting</nested-type-id-ref>
      <nested-type-id-ref>vim.dvs.DistributedVirtualPort.RuntimeInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.dvs.DistributedVirtualPort.State</nested-type-id-ref>
   </data-object>
   <data-object name="VmUuidChangedEvent"
      type-id="vim.event.VmUuidChangedEvent"
      vmodl-name="vim.event.VmUuidChangedEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.VmEvent"
      >
      <description-html>
         <![CDATA[This event records a change in a virtual machine's BIOS UUID.]]>
      </description-html>
            <property name="oldUuid" type-id-ref="java.lang.String"
      vmodl-name="oldUuid"
      >
      <description-html>
         <![CDATA[The old BIOS UUID.]]>
      </description-html>
      </property>

            <property name="newUuid" type-id-ref="java.lang.String"
      vmodl-name="newUuid"
      >
      <description-html>
         <![CDATA[The new BIOS UUID.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VmBeingClonedNoFolderEvent"
      type-id="vim.event.VmBeingClonedNoFolderEvent"
      vmodl-name="vim.event.VmBeingClonedNoFolderEvent"
      version-id-ref="vim.version.version6"
      base-type-id="vim.event.VmCloneEvent"
      >
      <description-html>
         <![CDATA[This event records a virtual machine being cloned.]]>
      </description-html>
            <property name="destName" type-id-ref="java.lang.String"
      vmodl-name="destName"
      >
      <description-html>
         <![CDATA[The name of the destination virtual machine.]]>
      </description-html>
      </property>

            <property name="destHost" type-id-ref="vim.event.HostEventArgument"
      vmodl-name="destHost"
      >
      <description-html>
         <![CDATA[The destination host to which the virtual machine is being cloned.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VmStartReplayingEvent"
      type-id="vim.event.VmStartReplayingEvent"
      vmodl-name="vim.event.VmStartReplayingEvent"
      version-id-ref="vim.version.version5"
      is-deprecated="true"
      base-type-id="vim.event.VmEvent"
      >
      <description-html>
         <![CDATA[This event indicates the start of a replay session on a virtual machine.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[as of vSphere API 6.0]]>
      </deprecated-html>
   </data-object>
   <data-object name="FaultsByVM"
      type-id="vim.FaultsByVM"
      vmodl-name="vim.FaultsByVM"
      version-id-ref="vim.version.version12"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[VM specific faults. This Class is used in e.g.
  vim.host#HostEnterMaintenanceResult.]]>
      </description-html>
            <property name="vm" type-id-ref="vim.VirtualMachine"
      vmodl-name="vm"
      >
      <description-html>
         <![CDATA[The VM for which faults were generated.]]>
      </description-html>
      </property>

            <property name="faults" type-id-ref="vmodl.LocalizedMethodFault"
      vmodl-name="faults"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The array of faults related to the given VM.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualMachineTicket"
      type-id="vim.VirtualMachine.Ticket"
      vmodl-name="vim.VirtualMachine.Ticket"
      enclosing-type-id-ref="vim.VirtualMachine"
      version-id-ref="vim.version.version6"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object contains the information needed to establish a
  connection to a running virtual machine.]]>
      </description-html>
            <property name="ticket" type-id-ref="java.lang.String"
      vmodl-name="ticket"
      >
      <description-html>
         <![CDATA[The ticket name. This is used as the username and password for the MKS
  connection.]]>
      </description-html>
      </property>

            <property name="cfgFile" type-id-ref="java.lang.String"
      vmodl-name="cfgFile"
      >
      <description-html>
         <![CDATA[The name of the configuration file for the virtual machine.]]>
      </description-html>
      </property>

            <property name="host" type-id-ref="java.lang.String"
      vmodl-name="host"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The host with which to establish a connection. If the host is not specified,
  it is assumed that the requesting entity knows the appropriate host with which
  to connect.]]>
      </description-html>
      </property>

            <property name="port" type-id-ref="INT"
      vmodl-name="port"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The port number to use. If the port is not specified,
 it is assumed that the requesting entity knows the appropriate port to
 use when making a new connection.]]>
      </description-html>
      </property>

            <property name="sslThumbprint" type-id-ref="java.lang.String"
      vmodl-name="sslThumbprint"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The expected thumbprint of the SSL cert of the host to which
 we are connecting.]]>
      </description-html>
      </property>

            <property name="url" type-id-ref="java.lang.String"
      vmodl-name="url"
      version-id-ref="vim.version.v7_0"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Websocket URL.
 Some tickets are "websocket" tickets and are best expressed
 as a URL.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DynamicData"
      type-id="vmodl.DynamicData"
      vmodl-name="vmodl.DynamicData"
      version-id-ref="vmodl.version.version0"
      >
      <description-html>
         <![CDATA[DynamicData is a builtin object model data object type for manipulating data
 properties dynamically. The primary usage is as a base class for types that may
 be extended with subtypes in the future, where new properties should be sent to
 old clients as a set of dynamic properties.]]>
      </description-html>
   </data-object>
   <data-object name="HostSubSpecification"
      type-id="vim.profile.host.HostSubSpecification"
      vmodl-name="vim.profile.host.HostSubSpecification"
      version-id-ref="vim.version.version11"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Host sub specification data are the data used when create a virtual
 device, and/or configure the virtual device and its related
 host services.

 A typical example of host sub specification data is the DVS host view
 specification, which is used when create DVS host view on an ESXi
 host and configure the virtual switch on the host.

 The introduction of this type of data is for improving the
 availability of the ESXi host management.  For example, when
 the VirtualCenter server is not available, an ESXi host will
 have enough information to reconfigure DVS host view properly
 when the ESXi host is booted from stateless or stateless caching.

 Host sub specification data are data for VMware internal data
 structure used in virtual device creation and configuration.
 They are different to <a href="vim.profile.host.AnswerFile.html">AnswerFile</a>
 which are from public knowledge domain or the public API
 of VMware ESXi host services.

 When the host sub specification data for a single feature
 are stored in multiple host sub specification data objects,
 it is the responsibility of the host specification source
 in this feature to guarantee the completeness and consistency
 of these host sub specification objects.]]>
      </description-html>
            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      >
      <description-html>
         <![CDATA[The full name of the host sub specification. The format of this member
 variable is:
     CompanyName_ProductName_SubSpecName.
 Thus, name conflict is avoided by containing the
 <code>company name</code>, <code>product name</code>, and <code> sub
 specification name</code> in this full name.]]>
      </description-html>
      </property>

            <property name="createdTime" type-id-ref="vmodl.DateTime"
      vmodl-name="createdTime"
      >
      <description-html>
         <![CDATA[Time at which the host sub specification was created.]]>
      </description-html>
      </property>

            <property name="data" type-id-ref="BYTE"
      vmodl-name="data"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The host sub specification data]]>
      </description-html>
      </property>

            <property name="binaryData" type-id-ref="vmodl.Binary"
      vmodl-name="binaryData"
      version-id-ref="vim.version.version12"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The host sub specification data in Binary for wire efficiency.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ClusterDasVmConfigSpec"
      type-id="vim.cluster.DasVmConfigSpec"
      vmodl-name="vim.cluster.DasVmConfigSpec"
      version-id-ref="vim.version.version1"
      base-type-id="vim.option.ArrayUpdateSpec"
      >
      <description-html>
         <![CDATA[An incremental update to the per-virtual-machine vSphere HA configuration.]]>
      </description-html>
            <property name="info" type-id-ref="vim.cluster.DasVmConfigInfo"
      vmodl-name="info"
      is-optional="true"
      >
      </property>

   </data-object>
   <data-object name="HostDnsConfigSpec"
      type-id="vim.host.DnsConfigSpec"
      vmodl-name="vim.host.DnsConfigSpec"
      version-id-ref="vim.version.version5"
      base-type-id="vim.host.DnsConfig"
      >
      <description-html>
         <![CDATA[Dataobject for configuring the DNS settings on the host.]]>
      </description-html>
            <property name="virtualNicConnection" type-id-ref="vim.host.VirtualNicConnection"
      vmodl-name="virtualNicConnection"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Choose a Virtual nic based on what it is connected to.]]>
      </description-html>
      </property>

            <property name="virtualNicConnectionV6" type-id-ref="vim.host.VirtualNicConnection"
      vmodl-name="virtualNicConnectionV6"
      version-id-ref="vim.version.version12"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Choose an IPv6 Virtual nic based on what it is connected to.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualDiskPartitionedRawDiskVer2BackingInfo"
      type-id="vim.vm.device.VirtualDisk.PartitionedRawDiskVer2BackingInfo"
      vmodl-name="vim.vm.device.VirtualDisk.PartitionedRawDiskVer2BackingInfo"
      enclosing-type-id-ref="vim.vm.device.VirtualDisk"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.device.VirtualDisk.RawDiskVer2BackingInfo"
      >
      <description-html>
         <![CDATA[This data object type contains information about backing a virtual disk
  using one or more partitions on a physical disk device. This type of
  backing is supported for VMware Server.]]>
      </description-html>
            <property name="partition" type-id-ref="INT"
      vmodl-name="partition"
      is-array="true"
      >
      <description-html>
         <![CDATA[Array of partition indexes. This array identifies the
  partitions that are used on the physical disk drive.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="GhostDvsProxySwitchDetectedEvent"
      type-id="vim.event.GhostDvsProxySwitchDetectedEvent"
      vmodl-name="vim.event.GhostDvsProxySwitchDetectedEvent"
      version-id-ref="vim.version.version5"
      base-type-id="vim.event.HostEvent"
      >
      <description-html>
         <![CDATA[This event records when Virtual Center server found DVS proxy switches
  on the host that don't match any DVS defined in Virtual Center.]]>
      </description-html>
            <property name="switchUuid" type-id-ref="java.lang.String"
      vmodl-name="switchUuid"
      is-array="true"
      >
      <description-html>
         <![CDATA[The list of ghost DVS proxy switch uuids that were found.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostCnxFailedNoLicenseEvent"
      type-id="vim.event.HostCnxFailedNoLicenseEvent"
      vmodl-name="vim.event.HostCnxFailedNoLicenseEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.HostEvent"
      >
      <description-html>
         <![CDATA[This event records a failure to connect to a host
  due to a licensing issue.]]>
      </description-html>
   </data-object>
   <data-object name="VmDasUpdateErrorEvent"
      type-id="vim.event.VmDasUpdateErrorEvent"
      vmodl-name="vim.event.VmDasUpdateErrorEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.VmEvent"
      >
      <description-html>
         <![CDATA[The event records that an error occurred when updating the HA agents
 with the current state of the virtual machine. If this occurs during a
 powerOn operation, the virtual machine will not be failed over in the
 event of a host failure. If it occurs during a powerOff, the virtual
 machine will be automatically powered on if the host it was last running
 on crashes.]]>
      </description-html>
   </data-object>
   <data-object name="ClusterDrsVmConfigSpec"
      type-id="vim.cluster.DrsVmConfigSpec"
      vmodl-name="vim.cluster.DrsVmConfigSpec"
      version-id-ref="vim.version.version1"
      base-type-id="vim.option.ArrayUpdateSpec"
      >
      <description-html>
         <![CDATA[Updates the per-virtual-machine DRS configuration.
  <p>
  To update the DRS configuration of a virtual machine, a copy of this object
  is included in the <a href="vim.cluster.ConfigSpecEx.html">ClusterConfigSpecEx</a> object passed to the method
  <a href="vim.ComputeResource.html#reconfigureEx">ReconfigureComputeResource_Task</a>.
  <p>
  If <i>reconfigureEx</i> is used to
  incrementally update the cluster configuration (i.e., the parameter <b>modify</b> is true),
  then three operations are provided for updating the DRS configuration for a virtual machine.
  These operations are listed below (see <a href="vim.option.ArrayUpdateSpec.html">ArrayUpdateSpec</a> for more
  information on these operations).
  <ul>
   <li> add: add a configuration for the virtual machine, overwritting the existing
        configuration if one exists
   <li> edit: incrmentally update the existing configuration; an existing configuration
        must exist
   <li> remove: remove the existing configuration; an existing configuration must exist
  </ul>

  If, instead, this method is used to overwrite the cluster configuration (i.e., the parameter
  <b>modify</b> is false) thereby creating a new configuration, only the add operation is allowed.
  In this case, <i>add</i> creates a DRS configuration for a virtual machine in the new cluster
  configuration.]]>
      </description-html>
            <property name="info" type-id-ref="vim.cluster.DrsVmConfigInfo"
      vmodl-name="info"
      is-optional="true"
      >
      </property>

   </data-object>
   <data-object name="PlacementRankResult"
      type-id="vim.storageDrs.PlacementRankResult"
      vmodl-name="vim.storageDrs.PlacementRankResult"
      version-id-ref="vim.version.version10"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[PlacementRankResult is the class of the result returned by
   the vCenter Server for rankClustersForPlacement method
   <p>]]>
      </description-html>
            <property name="key" type-id-ref="java.lang.String"
      vmodl-name="key"
      >
      <description-html>
         <![CDATA[Reference key for the placement request]]>
      </description-html>
      </property>

            <property name="candidate" type-id-ref="vim.ClusterComputeResource"
      vmodl-name="candidate"
      >
      <description-html>
         <![CDATA[Candidate cluster for the placement problem]]>
      </description-html>
      </property>

            <property name="reservedSpaceMB" type-id-ref="LONG"
      vmodl-name="reservedSpaceMB"
      >
      <description-html>
         <![CDATA[The reserved storage space for the candidate cluster after placement
 The unit is in Megabytes]]>
      </description-html>
      </property>

            <property name="usedSpaceMB" type-id-ref="LONG"
      vmodl-name="usedSpaceMB"
      >
      <description-html>
         <![CDATA[The expected space usage for the candidate cluster after placement
 The unit is in Megabytes]]>
      </description-html>
      </property>

            <property name="totalSpaceMB" type-id-ref="LONG"
      vmodl-name="totalSpaceMB"
      >
      <description-html>
         <![CDATA[The expected total space for the candidate cluster after placement
 The unit is in Megabytes]]>
      </description-html>
      </property>

            <property name="utilization" type-id-ref="DOUBLE"
      vmodl-name="utilization"
      >
      <description-html>
         <![CDATA[The expected aggregate resource utilization for the candidate cluster
 after placement
 The unit is a fractional value between 0 and 1.]]>
      </description-html>
      </property>

            <property name="faults" type-id-ref="vmodl.LocalizedMethodFault"
      vmodl-name="faults"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Information about why a given cluster is not recommended for
 placement]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="LicenseRestrictedEvent"
      type-id="vim.event.LicenseRestrictedEvent"
      vmodl-name="vim.event.LicenseRestrictedEvent"
      version-id-ref="vim.version.version2"
      base-type-id="vim.event.LicenseEvent"
      >
      <description-html>
         <![CDATA[This event records if the required licenses could not be reserved because
 of a restriction in the option file.]]>
      </description-html>
   </data-object>
   <data-object name="IpAddressProfile"
      type-id="vim.profile.host.IpAddressProfile"
      vmodl-name="vim.profile.host.IpAddressProfile"
      version-id-ref="vim.version.version5"
      base-type-id="vim.profile.ApplyProfile"
      >
      <description-html>
         <![CDATA[The <a href="vim.profile.host.IpAddressProfile.html">IpAddressProfile</a> represents the Virtual NIC IP address.
 The <a href="vim.profile.ApplyProfile.html#policy">policy</a> property contains
 the configuration data values for the IP address.]]>
      </description-html>
   </data-object>
   <data-object name="VmDiskFileInfo"
      type-id="vim.host.DatastoreBrowser.VmDiskInfo"
      vmodl-name="vim.host.DatastoreBrowser.VmDiskInfo"
      enclosing-type-id-ref="vim.host.DatastoreBrowser"
      version-id-ref="vim.version.version1"
      base-type-id="vim.host.DatastoreBrowser.FileInfo"
      >
      <description-html>
         <![CDATA[This data object type describes a virtual disk primary file.]]>
      </description-html>
            <property name="diskType" type-id-ref="vmodl.TypeName"
      vmodl-name="diskType"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Disk type of the virtual disk.
  <p>
  The specified disk type is one of the backing information types for a virtual
  disk.<br>See <a href="vim.vm.device.VirtualDisk.html">VirtualDisk</a><br>]]>
      </description-html>
      </property>

            <property name="capacityKb" type-id-ref="LONG"
      vmodl-name="capacityKb"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The capacity of a virtual disk from the point of view of a virtual machine.]]>
      </description-html>
      </property>

            <property name="hardwareVersion" type-id-ref="INT"
      vmodl-name="hardwareVersion"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The hardware version of the virtual disk file.]]>
      </description-html>
      </property>

            <property name="controllerType" type-id-ref="vmodl.TypeName"
      vmodl-name="controllerType"
      version-id-ref="vim.version.version2"
      is-deprecated="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The controller type suitable for this virtual disk.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 5.0, this property is no longer
      relevant and should not be used.
      With the current state of emulation, we don't care about the
      adapter type a disk is connected to, as disks may be shuffled
      around. For example, a disk may be unplugged from a buslogic
      controller and plugged into an lsilogic controller.]]>
      </deprecated-html>
      </property>

            <property name="diskExtents" type-id-ref="java.lang.String"
      vmodl-name="diskExtents"
      version-id-ref="vim.version.version2"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The extents of this virtual disk specified in absolute DS paths]]>
      </description-html>
      </property>

            <property name="thin" type-id-ref="BOOLEAN"
      vmodl-name="thin"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates if the disk is thin-provisioned]]>
      </description-html>
      </property>

            <property name="encryption" type-id-ref="vim.host.DatastoreBrowser.VmDiskInfo.VmDiskEncryptionInfo"
      vmodl-name="encryption"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The encryption information of the virtual disk.

  If encryption was selected in VmDiskFileQueryFlags then this
  field is always set. Inspect the VmDiskEncryptionInfo to
  determine if the virtual disk is encrypted.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.host.DatastoreBrowser.VmDiskInfo.VmDiskEncryptionInfo</nested-type-id-ref>
   </data-object>
   <data-object name="AlarmExpression"
      type-id="vim.alarm.AlarmExpression"
      vmodl-name="vim.alarm.AlarmExpression"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Base type for the expressions specifying the conditions that define
  the status of an alarm.]]>
      </description-html>
   </data-object>
   <data-object name="VmfsDatastoreExtendSpec"
      type-id="vim.host.VmfsDatastoreExtendSpec"
      vmodl-name="vim.host.VmfsDatastoreExtendSpec"
      version-id-ref="vim.version.version1"
      base-type-id="vim.host.VmfsDatastoreSpec"
      >
      <description-html>
         <![CDATA[Specification to increase the capacity of a VMFS datastore by adding
  one or more new extents to the datastore.  All the extents to be added
  must be on the same disk.  Extension is different
  from creation in that the VMFS creation specification need not be
  specified.]]>
      </description-html>
            <property name="partition" type-id-ref="vim.host.DiskPartitionInfo.Specification"
      vmodl-name="partition"
      >
      <description-html>
         <![CDATA[Partitioning specification.]]>
      </description-html>
      </property>

            <property name="extent" type-id-ref="vim.host.ScsiDisk.Partition"
      vmodl-name="extent"
      is-array="true"
      >
      <description-html>
         <![CDATA[Extents to append to VMFS.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostAccessControlEntry"
      type-id="vim.host.HostAccessManager.AccessEntry"
      vmodl-name="vim.host.HostAccessManager.AccessEntry"
      enclosing-type-id-ref="vim.host.HostAccessManager"
      version-id-ref="vim.version.version10"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Data structure describing the access mode for a user or group.]]>
      </description-html>
            <property name="principal" type-id-ref="java.lang.String"
      vmodl-name="principal"
      >
      <description-html>
         <![CDATA[User or group having the described access mode.
 The format is "login" for local users or "DOMAIN\login" for users
 in a Windows domain.]]>
      </description-html>
      </property>

            <property name="group" type-id-ref="BOOLEAN"
      vmodl-name="group"
      >
      <description-html>
         <![CDATA[True if 'principal' describes a group account, false otherwise.]]>
      </description-html>
      </property>

            <property name="accessMode" type-id-ref="vim.host.HostAccessManager.AccessMode"
      vmodl-name="accessMode"
      >
      <description-html>
         <![CDATA[Access mode for the principal.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostLowLevelProvisioningManagerVmMigrationStatus"
      type-id="vim.host.LowLevelProvisioningManager.VmMigrationStatus"
      vmodl-name="vim.host.LowLevelProvisioningManager.VmMigrationStatus"
      enclosing-type-id-ref="vim.host.LowLevelProvisioningManager"
      version-id-ref="vim.version.version8"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The status of a virtual machine migration operation.]]>
      </description-html>
            <property name="migrationId" type-id-ref="LONG"
      vmodl-name="migrationId"
      >
      <description-html>
         <![CDATA[Unique identifier for this operation, currently it's unique
  within one virtual center instance.]]>
      </description-html>
      </property>

            <property name="type" type-id-ref="java.lang.String"
      vmodl-name="type"
      >
      <description-html>
         <![CDATA[Manner in which the migration process is performed. The set of
  possible values is described in
  <a href="vim.host.VMotionManager.VMotionType.html">HostVMotionManagerVMotionType</a>.]]>
      </description-html>
      </property>

            <property name="source" type-id-ref="BOOLEAN"
      vmodl-name="source"
      >
      <description-html>
         <![CDATA[Whether the virtual machine is the source of the migration.
  For disk only migration, the value is always true.]]>
      </description-html>
      </property>

            <property name="consideredSuccessful" type-id-ref="BOOLEAN"
      vmodl-name="consideredSuccessful"
      >
      <description-html>
         <![CDATA[Whether the operation is considered successful. A migration
  operation is considered successful if its switch over phase has
  completed successfully.
  <p>
  More specifically, for an in-progress migration, it is considered
  successful if it has had a sucessful switch over, otherwise it is
  considered unsuccessful. Likewise, the status of a completed
  migration operation is also based on the switch over completion
  status.
  <p>
  The difference between a completed vs. in-progress migration with
  the same consideredSuccessful property is that in the former case
  the server is able to complete the clean up process thus leaves
  nothing for the recovery process to clean up.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="GuestRegValueMultiStringSpec"
      type-id="vim.vm.guest.WindowsRegistryManager.RegistryValueMultiString"
      vmodl-name="vim.vm.guest.WindowsRegistryManager.RegistryValueMultiString"
      enclosing-type-id-ref="vim.vm.guest.WindowsRegistryManager"
      version-id-ref="vim.version.version10"
      base-type-id="vim.vm.guest.WindowsRegistryManager.RegistryValueData"
      >
      <description-html>
         <![CDATA[This describes the registry value multi string.]]>
      </description-html>
            <property name="value" type-id-ref="java.lang.String"
      vmodl-name="value"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The data of the registry value.

 The Windows registry allows this type of value to exist without
 having any data associated with it.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VMwareDvsLacpCapability"
      type-id="vim.dvs.VmwareDistributedVirtualSwitch.LacpFeatureCapability"
      vmodl-name="vim.dvs.VmwareDistributedVirtualSwitch.LacpFeatureCapability"
      enclosing-type-id-ref="vim.dvs.VmwareDistributedVirtualSwitch"
      version-id-ref="vim.version.version8"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The feature capabilities of Link Aggregation Control Protocol supported by the
  vSphere Distributed Switch.]]>
      </description-html>
            <property name="lacpSupported" type-id-ref="BOOLEAN"
      vmodl-name="lacpSupported"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Flag to indicate whether Link Aggregation Control Protocol is supported on the
  vSphere Distributed Switch.]]>
      </description-html>
      </property>

            <property name="multiLacpGroupSupported" type-id-ref="BOOLEAN"
      vmodl-name="multiLacpGroupSupported"
      version-id-ref="vim.version.version9"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Flag to indicate whether the vSphere Distributed Switch supports more
  than one Link Aggregation Control Protocol group to be configured.
  It is suppported in vSphere Distributed Switch Version 5.5 or later.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostIpmiInfo"
      type-id="vim.host.IpmiInfo"
      vmodl-name="vim.host.IpmiInfo"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The IpmiInfo data object contains IPMI (Intelligent Platform Management Interface)
   and BMC (Baseboard Management Controller) information for the host.]]>
      </description-html>
            <property name="bmcIpAddress" type-id-ref="java.lang.String"
      vmodl-name="bmcIpAddress"
      is-optional="true"
      >
      <description-html>
         <![CDATA[IP address of the BMC on the host. It should be null terminated.]]>
      </description-html>
      </property>

            <property name="bmcMacAddress" type-id-ref="java.lang.String"
      vmodl-name="bmcMacAddress"
      is-optional="true"
      >
      <description-html>
         <![CDATA[MAC address of the BMC on the host. The MAC address should be of the
  form xx:xx:xx:xx:xx:xx where each x is a hex digit. It should be null
  terminated.]]>
      </description-html>
      </property>

            <property name="login" type-id-ref="java.lang.String"
      vmodl-name="login"
      is-optional="true"
      >
      <description-html>
         <![CDATA[User ID for logging into the BMC. BMC usernames may be up to 16
  characters and must be null terminated. Hence, a login comprises
  17 or fewer characters.]]>
      </description-html>
      </property>

            <property name="password" type-id-ref="java.lang.String"
      vmodl-name="password"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Password for logging into the BMC. Only used for configuration, returned as unset
  while reading. The password can be up to 16 characters and must be null
  terminated. Hence, a password comprises 17 or fewer characters.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualEthernetCard"
      type-id="vim.vm.device.VirtualEthernetCard"
      vmodl-name="vim.vm.device.VirtualEthernetCard"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.device.VirtualDevice"
      >
      <description-html>
         <![CDATA[The <a href="vim.vm.device.VirtualEthernetCard.html">VirtualEthernetCard</a> data object contains the properties
  of an Ethernet adapter attached to a virtual machine.]]>
      </description-html>
            <property name="addressType" type-id-ref="java.lang.String"
      vmodl-name="addressType"
      is-optional="true"
      >
      <description-html>
         <![CDATA[MAC address type.
  <p>
  Valid values for address type are:
  <table>
  <dt>Manual</dt>
  <dd>Statically assigned MAC address.</dd>
  <dt>Generated</dt>
  <dd>Automatically generated MAC address.</dd>
  <dt>Assigned</dt>
  <dd>MAC address assigned by VirtualCenter.</dd>
  </table>]]>
      </description-html>
      </property>

            <property name="macAddress" type-id-ref="java.lang.String"
      vmodl-name="macAddress"
      is-optional="true"
      >
      <description-html>
         <![CDATA[MAC address assigned to the virtual network adapter. Clients can
  set this property to any of the allowed address types. The server might
  override the specified value for "Generated" or "Assigned" if it does not
  fall in the right ranges or is determined to be a duplicate.]]>
      </description-html>
      </property>

            <property name="wakeOnLanEnabled" type-id-ref="BOOLEAN"
      vmodl-name="wakeOnLanEnabled"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates whether wake-on-LAN is enabled on this virtual network adapter. Clients
 can set this property to selectively enable or disable wake-on-LAN.]]>
      </description-html>
      </property>

            <property name="resourceAllocation" type-id-ref="vim.vm.device.VirtualEthernetCard.ResourceAllocation"
      vmodl-name="resourceAllocation"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Resource requirements of the virtual network adapter]]>
      </description-html>
      </property>

            <property name="externalId" type-id-ref="java.lang.String"
      vmodl-name="externalId"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[An ID assigned to the virtual network adapter by external management plane or
  controller. The value and format of this property is determined by external
  management plane or controller, and vSphere doesn't do any validation. It's
  also up to external management plane or controller to set, unset or maintain
  this property. Setting this property with an empty string value will unset the
  property.]]>
      </description-html>
      </property>

            <property name="uptCompatibilityEnabled" type-id-ref="BOOLEAN"
      vmodl-name="uptCompatibilityEnabled"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates whether UPT(Universal Pass-through) compatibility is enabled
 on this network adapter. UPT is only compatible for Vmxnet3 adapter.
 Clients can set this property enabled or disabled if ethernet
 virtual device is Vmxnet3.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.vm.device.VirtualEthernetCard.NetworkBackingInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.device.VirtualEthernetCard.LegacyNetworkBackingInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.device.VirtualEthernetCard.DistributedVirtualPortBackingInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.device.VirtualEthernetCard.OpaqueNetworkBackingInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.device.VirtualEthernetCard.ResourceAllocation</nested-type-id-ref>
   </data-object>
   <data-object name="HostDatastoreConnectInfo"
      type-id="vim.host.ConnectInfo.DatastoreInfo"
      vmodl-name="vim.host.ConnectInfo.DatastoreInfo"
      enclosing-type-id-ref="vim.host.ConnectInfo"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The base data object type for information about datastores on the host.]]>
      </description-html>
            <property name="summary" type-id-ref="vim.Datastore.Summary"
      vmodl-name="summary"
      >
      <description-html>
         <![CDATA[Basic datastore information. The managed object reference is not set.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VmStartingEvent"
      type-id="vim.event.VmStartingEvent"
      vmodl-name="vim.event.VmStartingEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.VmEvent"
      >
      <description-html>
         <![CDATA[This event records a virtual machine powering on.]]>
      </description-html>
   </data-object>
   <data-object name="VmDeployFailedEvent"
      type-id="vim.event.VmDeployFailedEvent"
      vmodl-name="vim.event.VmDeployFailedEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.VmEvent"
      >
      <description-html>
         <![CDATA[This event records a failure to deploy from a template.]]>
      </description-html>
            <property name="destDatastore" type-id-ref="vim.event.EntityEventArgument"
      vmodl-name="destDatastore"
      >
      <description-html>
         <![CDATA[The destination datastore to which the template was being deployed.]]>
      </description-html>
      </property>

            <property name="reason" type-id-ref="vmodl.LocalizedMethodFault"
      vmodl-name="reason"
      >
      <description-html>
         <![CDATA[The reason for the failure.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostBootDevice"
      type-id="vim.host.BootDeviceSystem.BootDevice"
      vmodl-name="vim.host.BootDeviceSystem.BootDevice"
      enclosing-type-id-ref="vim.host.BootDeviceSystem"
      version-id-ref="vim.version.version2"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The <a href="vim.host.BootDeviceSystem.BootDevice.html">HostBootDevice</a> data object represents a boot device on the host system.]]>
      </description-html>
            <property name="key" type-id-ref="java.lang.String"
      vmodl-name="key"
      >
      <description-html>
         <![CDATA[The identifier for the boot device.]]>
      </description-html>
      </property>

            <property name="description" type-id-ref="java.lang.String"
      vmodl-name="description"
      >
      <description-html>
         <![CDATA[The description of the boot device.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ToolsConfigInfo"
      type-id="vim.vm.ToolsConfigInfo"
      vmodl-name="vim.vm.ToolsConfigInfo"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[ToolsConfigInfo is a data object type containing settings for the VMware Tools
  software running in the guest operating system.]]>
      </description-html>
            <property name="toolsVersion" type-id-ref="INT"
      vmodl-name="toolsVersion"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Version of VMware Tools installed on the guest operating system.]]>
      </description-html>
      </property>

            <property name="toolsInstallType" type-id-ref="java.lang.String"
      vmodl-name="toolsInstallType"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Installation type of VMware Tools in the guest operating system.
 The set of possible values is described in
 <a href="vim.vm.GuestInfo.ToolsInstallType.html">VirtualMachineToolsInstallType</a>]]>
      </description-html>
      </property>

            <property name="afterPowerOn" type-id-ref="BOOLEAN"
      vmodl-name="afterPowerOn"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Flag to specify whether or not scripts should run
  after the virtual machine powers on.]]>
      </description-html>
      </property>

            <property name="afterResume" type-id-ref="BOOLEAN"
      vmodl-name="afterResume"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Flag to specify whether or not scripts should run
  after the virtual machine resumes.]]>
      </description-html>
      </property>

            <property name="beforeGuestStandby" type-id-ref="BOOLEAN"
      vmodl-name="beforeGuestStandby"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Flag to specify whether or not scripts should run
  before the virtual machine suspends.]]>
      </description-html>
      </property>

            <property name="beforeGuestShutdown" type-id-ref="BOOLEAN"
      vmodl-name="beforeGuestShutdown"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Flag to specify whether or not scripts should run
  before the virtual machine powers off.]]>
      </description-html>
      </property>

            <property name="beforeGuestReboot" type-id-ref="BOOLEAN"
      vmodl-name="beforeGuestReboot"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Flag to specify whether or not scripts should run
  before the virtual machine reboots.]]>
      </description-html>
      </property>

            <property name="toolsUpgradePolicy" type-id-ref="java.lang.String"
      vmodl-name="toolsUpgradePolicy"
      version-id-ref="vim.version.version2"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Tools upgrade policy setting for the virtual machine.<br>See <a href="vim.vm.ToolsConfigInfo.UpgradePolicy.html">UpgradePolicy</a><br>]]>
      </description-html>
      </property>

            <property name="pendingCustomization" type-id-ref="java.lang.String"
      vmodl-name="pendingCustomization"
      version-id-ref="vim.version.version2"
      is-optional="true"
      >
      <description-html>
         <![CDATA[When set, this indicates that a customization operation is pending on the VM.
  The value represents the filename of the customization package on the host.]]>
      </description-html>
      </property>

            <property name="customizationKeyId" type-id-ref="vim.encryption.CryptoKeyId"
      vmodl-name="customizationKeyId"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[When set, provides the id of the key used to encrypt the customization
  package attached to the VM.]]>
      </description-html>
      </property>

            <property name="syncTimeWithHost" type-id-ref="BOOLEAN"
      vmodl-name="syncTimeWithHost"
      version-id-ref="vim.version.version2"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Flag to specify whether or not the tools program will periodically
 synchronize guest time with host time. Periodical synchronization is
 only allowed if vim.vm.ToolsConfigInfo#syncTimeWithHostAllowed
 is not set to <code>false</code>.]]>
      </description-html>
      </property>

            <property name="lastInstallInfo" type-id-ref="vim.vm.ToolsConfigInfo.ToolsLastInstallInfo"
      vmodl-name="lastInstallInfo"
      version-id-ref="vim.version.version7"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Information about the last tools upgrade attempt if applicable.
 This information is maintained by the server and is ignored if set by the client.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.vm.ToolsConfigInfo.UpgradePolicy</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.ToolsConfigInfo.ToolsLastInstallInfo</nested-type-id-ref>
   </data-object>
   <data-object name="HostFibreChannelOverEthernetHbaLinkInfo"
      type-id="vim.host.FibreChannelOverEthernetHba.LinkInfo"
      vmodl-name="vim.host.FibreChannelOverEthernetHba.LinkInfo"
      enclosing-type-id-ref="vim.host.FibreChannelOverEthernetHba"
      version-id-ref="vim.version.version7"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Represents FCoE link information.

 The link information represents a VNPort to VFPort Virtual Link, as
 described in the FC-BB-5 standard, with the addition of the VLAN ID
 over which a link exists.]]>
      </description-html>
            <property name="vnportMac" type-id-ref="java.lang.String"
      vmodl-name="vnportMac"
      >
      <description-html>
         <![CDATA[VNPort MAC address, as defined by the FC-BB-5 standard.

 This MAC address should be of the form "xx:xx:xx:xx:xx:xx", where
 'x' is a hexadecimal digit.  Valid MAC addresses are unicast
 addresses.]]>
      </description-html>
      </property>

            <property name="fcfMac" type-id-ref="java.lang.String"
      vmodl-name="fcfMac"
      >
      <description-html>
         <![CDATA[FCF MAC address, also known as the VFPort MAC address in the FC-BB-5
 standard.

 This MAC address should be of the form "xx:xx:xx:xx:xx:xx", where
 'x' is a hexadecimal digit.  Valid MAC addresses are unicast
 addresses.]]>
      </description-html>
      </property>

            <property name="vlanId" type-id-ref="INT"
      vmodl-name="vlanId"
      >
      <description-html>
         <![CDATA[VLAN ID.

 This field represents the VLAN on which an FCoE HBA was
 discovered.  Valid numbers fall into the range [0,4094].]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualSriovEthernetCardSriovBackingOption"
      type-id="vim.vm.device.VirtualSriovEthernetCardOption.SriovBackingOption"
      vmodl-name="vim.vm.device.VirtualSriovEthernetCardOption.SriovBackingOption"
      enclosing-type-id-ref="vim.vm.device.VirtualSriovEthernetCardOption"
      version-id-ref="vim.version.version9"
      base-type-id="vim.vm.device.VirtualDeviceOption.BackingOption"
      >
      <description-html>
         <![CDATA[This data object contains the option for SriovBackingInfo data
  of the virtual network SR-IOV card object type.]]>
      </description-html>
   </data-object>
   <data-object name="DiskCryptoSpec"
      type-id="vim.vslm.DiskCryptoSpec"
      vmodl-name="vim.vslm.DiskCryptoSpec"
      version-id-ref="vim.version.v7_0"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object type contains the crypto information of all disks along
 the chain]]>
      </description-html>
            <property name="parent" type-id-ref="vim.vslm.DiskCryptoSpec"
      vmodl-name="parent"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The parent in the chain.]]>
      </description-html>
      </property>

            <property name="crypto" type-id-ref="vim.encryption.CryptoSpec"
      vmodl-name="crypto"
      >
      <description-html>
         <![CDATA[Crypto information of the current disk.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VmSuspendingEvent"
      type-id="vim.event.VmSuspendingEvent"
      vmodl-name="vim.event.VmSuspendingEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.VmEvent"
      >
      <description-html>
         <![CDATA[This event records a virtual machine suspending.]]>
      </description-html>
   </data-object>
   <data-object name="TaskFilterSpecByEntity"
      type-id="vim.TaskFilterSpec.ByEntity"
      vmodl-name="vim.TaskFilterSpec.ByEntity"
      enclosing-type-id-ref="vim.TaskFilterSpec"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object type specifies a managed entity used to
  filter task history.]]>
      </description-html>
            <property name="entity" type-id-ref="vim.ManagedEntity"
      vmodl-name="entity"
      privilege="System.View"
      >
      <description-html>
         <![CDATA[The managed entity to which the task pertains.]]>
      </description-html>
      </property>

            <property name="recursion" type-id-ref="vim.TaskFilterSpec.RecursionOption"
      vmodl-name="recursion"
      >
      <description-html>
         <![CDATA[Specification of related managed entities in the inventory hierarchy.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualSCSIController"
      type-id="vim.vm.device.VirtualSCSIController"
      vmodl-name="vim.vm.device.VirtualSCSIController"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.device.VirtualController"
      >
      <description-html>
         <![CDATA[The VirtualSCSIController data object type represents
  a SCSI controller in a virtual machine.]]>
      </description-html>
            <property name="hotAddRemove" type-id-ref="BOOLEAN"
      vmodl-name="hotAddRemove"
      is-optional="true"
      >
      <description-html>
         <![CDATA[All SCSI controllers support hot adding and removing of devices. This
  support can't be toggled in the current implementation. Therefore, this
  option is ignored when reconfiguring a SCSI controller and is always set
  to "true" when reading an existing configuration.]]>
      </description-html>
      </property>

            <property name="sharedBus" type-id-ref="vim.vm.device.VirtualSCSIController.Sharing"
      vmodl-name="sharedBus"
      >
      <description-html>
         <![CDATA[Mode for sharing the SCSI bus. The modes are physicalSharing,
  virtualSharing, and noSharing. See the
  <a href="vim.vm.device.VirtualSCSIController.Sharing.html">Sharing</a>
  data object type for an explanation of these modes.]]>
      </description-html>
      </property>

            <property name="scsiCtlrUnitNumber" type-id-ref="INT"
      vmodl-name="scsiCtlrUnitNumber"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The unit number of the SCSI controller. The SCSI controller sits on its
  own bus, so this field defines which slot the controller is using.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.vm.device.VirtualSCSIController.Sharing</nested-type-id-ref>
   </data-object>
   <data-object name="ProfileApplyProfileProperty"
      type-id="vim.profile.ApplyProfileProperty"
      vmodl-name="vim.profile.ApplyProfileProperty"
      version-id-ref="vim.version.version7"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The <a href="vim.profile.ApplyProfileProperty.html">ProfileApplyProfileProperty</a> data object defines one or more subprofiles.]]>
      </description-html>
            <property name="propertyName" type-id-ref="java.lang.String"
      vmodl-name="propertyName"
      >
      <description-html>
         <![CDATA[Name of the property.]]>
      </description-html>
      </property>

            <property name="array" type-id-ref="BOOLEAN"
      vmodl-name="array"
      >
      <description-html>
         <![CDATA[Flag indicating whether this property is an array of profiles.]]>
      </description-html>
      </property>

            <property name="profile" type-id-ref="vim.profile.ApplyProfile"
      vmodl-name="profile"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Subprofiles that define policies and nested subprofiles.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="LicenseManagerEvaluationInfo"
      type-id="vim.LicenseManager.EvaluationInfo"
      vmodl-name="vim.LicenseManager.EvaluationInfo"
      enclosing-type-id-ref="vim.LicenseManager"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Encapsulates product evaluation information]]>
      </description-html>
            <property name="properties" type-id-ref="vmodl.KeyAnyValue"
      vmodl-name="properties"
      is-array="true"
      >
      <description-html>
         <![CDATA[Evaluation properties]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VmFailedToShutdownGuestEvent"
      type-id="vim.event.VmFailedToShutdownGuestEvent"
      vmodl-name="vim.event.VmFailedToShutdownGuestEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.VmEvent"
      >
      <description-html>
         <![CDATA[This event records a failure to shut down the guest on a virtual machine.]]>
      </description-html>
            <property name="reason" type-id-ref="vmodl.LocalizedMethodFault"
      vmodl-name="reason"
      >
      <description-html>
         <![CDATA[The reason for the failure.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualWDTOption"
      type-id="vim.vm.device.VirtualWDTOption"
      vmodl-name="vim.vm.device.VirtualWDTOption"
      version-id-ref="vim.version.v7_0"
      base-type-id="vim.vm.device.VirtualDeviceOption"
      >
      <description-html>
         <![CDATA[This data object type contains the options for the
  virtual watchdog timer class.]]>
      </description-html>
            <property name="runOnBoot" type-id-ref="vim.option.BoolOption"
      vmodl-name="runOnBoot"
      >
      <description-html>
         <![CDATA[Flag to indicate whether or not the "run on boot" option
  is settable on this device.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ExitMaintenanceModeEvent"
      type-id="vim.event.ExitMaintenanceModeEvent"
      vmodl-name="vim.event.ExitMaintenanceModeEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.HostEvent"
      >
      <description-html>
         <![CDATA[This event records that the host is no longer in
  maintenance mode.]]>
      </description-html>
   </data-object>
   <data-object name="VirtualLsiLogicSASControllerOption"
      type-id="vim.vm.device.VirtualLsiLogicSASControllerOption"
      vmodl-name="vim.vm.device.VirtualLsiLogicSASControllerOption"
      version-id-ref="vim.version.version4"
      base-type-id="vim.vm.device.VirtualSCSIControllerOption"
      >
      <description-html>
         <![CDATA[VirtualLsiLogicSASControllerOption is the data object that contains
 the options for a LSI Logic SAS SCSI controller.]]>
      </description-html>
   </data-object>
   <data-object name="HostDiagnosticPartition"
      type-id="vim.host.DiagnosticPartition"
      vmodl-name="vim.host.DiagnosticPartition"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object type contains information about an available or active
  diagnostic partition.]]>
      </description-html>
            <property name="storageType" type-id-ref="java.lang.String"
      vmodl-name="storageType"
      >
      <description-html>
         <![CDATA[Indicates the storage type of the diagnostic partition.<br>See <a href="vim.host.DiagnosticPartition.StorageType.html">DiagnosticPartitionStorageType</a><br>]]>
      </description-html>
      </property>

            <property name="diagnosticType" type-id-ref="java.lang.String"
      vmodl-name="diagnosticType"
      >
      <description-html>
         <![CDATA[Indicates the type of the diagnostic partition.<br>See <a href="vim.host.DiagnosticPartition.DiagnosticType.html">DiagnosticPartitionType</a><br>]]>
      </description-html>
      </property>

            <property name="slots" type-id-ref="INT"
      vmodl-name="slots"
      >
      <description-html>
         <![CDATA[The number of slots in the diagnostic partition.]]>
      </description-html>
      </property>

            <property name="id" type-id-ref="vim.host.ScsiDisk.Partition"
      vmodl-name="id"
      >
      <description-html>
         <![CDATA[Diagnostic partition identification information.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.host.DiagnosticPartition.StorageType</nested-type-id-ref>
      <nested-type-id-ref>vim.host.DiagnosticPartition.DiagnosticType</nested-type-id-ref>
      <nested-type-id-ref>vim.host.DiagnosticPartition.CreateOption</nested-type-id-ref>
      <nested-type-id-ref>vim.host.DiagnosticPartition.CreateSpec</nested-type-id-ref>
      <nested-type-id-ref>vim.host.DiagnosticPartition.CreateDescription</nested-type-id-ref>
   </data-object>
   <data-object name="VirtualEthernetCardNetworkBackingOption"
      type-id="vim.vm.device.VirtualEthernetCardOption.NetworkBackingOption"
      vmodl-name="vim.vm.device.VirtualEthernetCardOption.NetworkBackingOption"
      enclosing-type-id-ref="vim.vm.device.VirtualEthernetCardOption"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.device.VirtualDeviceOption.DeviceBackingOption"
      >
      <description-html>
         <![CDATA[This data object type contains the options for
  the virtual network card backing data object type.]]>
      </description-html>
   </data-object>
   <data-object name="VirtualMachineStorageSummary"
      type-id="vim.vm.Summary.StorageSummary"
      vmodl-name="vim.vm.Summary.StorageSummary"
      enclosing-type-id-ref="vim.vm.Summary"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[A subset of the storage information of this virtual machine.
  <p>
  See <a href="vim.vm.StorageInfo.html">VirtualMachineStorageInfo</a> for a detailed storage break-up.]]>
      </description-html>
            <property name="committed" type-id-ref="LONG"
      vmodl-name="committed"
      >
      <description-html>
         <![CDATA[Total storage space, in bytes, committed to this virtual machine across
  all datastores.
  <p>
  Essentially an aggregate of the property
  <a href="vim.vm.StorageInfo.UsageOnDatastore.html#committed">committed</a> across all
  datastores that this virtual machine is located on.]]>
      </description-html>
      </property>

            <property name="uncommitted" type-id-ref="LONG"
      vmodl-name="uncommitted"
      >
      <description-html>
         <![CDATA[Additional storage space, in bytes, potentially used by this virtual machine
  on all datastores.
  <p>
  Essentially an aggregate of the property
  <a href="vim.vm.StorageInfo.UsageOnDatastore.html#uncommitted">uncommitted</a> across all
  datastores that this virtual machine is located on.]]>
      </description-html>
      </property>

            <property name="unshared" type-id-ref="LONG"
      vmodl-name="unshared"
      >
      <description-html>
         <![CDATA[Total storage space, in bytes, occupied by the virtual machine across
  all datastores, that is not shared with any other virtual machine.]]>
      </description-html>
      </property>

            <property name="timestamp" type-id-ref="vmodl.DateTime"
      vmodl-name="timestamp"
      >
      <description-html>
         <![CDATA[Time when values in this structure were last updated.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="UplinkPortVlanUntrunkedEvent"
      type-id="vim.event.UplinkPortVlanUntrunkedEvent"
      vmodl-name="vim.event.UplinkPortVlanUntrunkedEvent"
      version-id-ref="vim.version.version8"
      base-type-id="vim.event.DvsHealthStatusChangeEvent"
      >
      <description-html>
         <![CDATA[Vlans health check status of an uplink port is changed, and in the latest vlan health check,
  not all the vlans are trunked by the physical switch connected to the uplink port.]]>
      </description-html>
   </data-object>
   <data-object name="VirtualUSBRemoteClientBackingInfo"
      type-id="vim.vm.device.VirtualUSB.RemoteClientBackingInfo"
      vmodl-name="vim.vm.device.VirtualUSB.RemoteClientBackingInfo"
      enclosing-type-id-ref="vim.vm.device.VirtualUSB"
      version-id-ref="vim.version.version7"
      base-type-id="vim.vm.device.VirtualDevice.RemoteDeviceBackingInfo"
      >
      <description-html>
         <![CDATA[The virtual remote client USB device backing class.]]>
      </description-html>
            <property name="hostname" type-id-ref="java.lang.String"
      vmodl-name="hostname"
      >
      <description-html>
         <![CDATA[Hostname of the remote client where the physical USB device resides.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="NvdimmNamespaceDeleteSpec"
      type-id="vim.host.NvdimmSystem.NamespaceDeleteSpec"
      vmodl-name="vim.host.NvdimmSystem.NamespaceDeleteSpec"
      enclosing-type-id-ref="vim.host.NvdimmSystem"
      version-id-ref="vim.version.version12"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Arguments for deleting a namespace]]>
      </description-html>
            <property name="uuid" type-id-ref="java.lang.String"
      vmodl-name="uuid"
      >
      <description-html>
         <![CDATA[Universally unique identifier of the namespace to be deleted]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostMonitoringStateChangedEvent"
      type-id="vim.event.HostMonitoringStateChangedEvent"
      vmodl-name="vim.event.HostMonitoringStateChangedEvent"
      version-id-ref="vim.version.version5"
      base-type-id="vim.event.ClusterEvent"
      >
      <description-html>
         <![CDATA[This event records when host monitoring state has changed.]]>
      </description-html>
            <property name="state" type-id-ref="java.lang.String"
      vmodl-name="state"
      >
      <description-html>
         <![CDATA[The service state in
    <a href="vim.cluster.DasConfigInfo.ServiceState.html">ClusterDasConfigInfoServiceState</a>]]>
      </description-html>
      </property>

            <property name="prevState" type-id-ref="java.lang.String"
      vmodl-name="prevState"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The previous service state in
    <a href="vim.cluster.DasConfigInfo.ServiceState.html">ClusterDasConfigInfoServiceState</a>]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ClusterVmToolsMonitoringSettings"
      type-id="vim.cluster.VmToolsMonitoringSettings"
      vmodl-name="vim.cluster.VmToolsMonitoringSettings"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The <a href="vim.cluster.VmToolsMonitoringSettings.html">ClusterVmToolsMonitoringSettings</a> data object contains
  virtual machine monitoring settings that are used by the Virtual Machine Health Monitoring Service.
  The Service checks the VMware Tools heartbeat of a virtual machine.
  If heartbeats have not been received within a specified time interval, the Service
  declares the virtual machine as failed and resets the virtual machine.
  <p>
  These settings are applied to individual virtual machines during cluster reconfiguration
  (<a href="vim.cluster.DasVmConfigInfo.html">ClusterDasVmConfigInfo</a>.<a href="vim.cluster.DasVmConfigInfo.html#dasSettings">dasSettings</a>.<a href="vim.cluster.DasVmSettings.html#vmToolsMonitoringSettings">vmToolsMonitoringSettings</a>). You can also specify them as default values
  (<a href="vim.cluster.DasConfigInfo.html">ClusterDasConfigInfo</a>.<a href="vim.cluster.DasConfigInfo.html#defaultVmSettings">defaultVmSettings</a>).
  </p>
  <p>
  All fields are optional. In case of a reconfiguration, fields left unset are not changed.]]>
      </description-html>
            <property name="enabled" type-id-ref="BOOLEAN"
      vmodl-name="enabled"
      is-deprecated="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Flag indicating whether or not the Virtual Machine Health Monitoring
 service is enabled.
 <p>
 The Server does not use this property.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 4.1, use <a href="vim.cluster.VmToolsMonitoringSettings.html#vmMonitoring">vmMonitoring</a>]]>
      </deprecated-html>
      </property>

            <property name="vmMonitoring" type-id-ref="java.lang.String"
      vmodl-name="vmMonitoring"
      version-id-ref="vim.version.version6"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates the type of virtual machine monitoring.
 Specify a string value corresponding to one of the
 following <a href="vim.cluster.DasConfigInfo.VmMonitoringState.html">ClusterDasConfigInfoVmMonitoringState</a> values:
 <ul>
 <li><code>vmMonitoringDisabled</code> (the default value)</li>
 <li><code>vmMonitoringOnly</code></li>
 <li><code>vmAndAppMonitoring</code></li>
 </ul>
 <p>
 The individual VMware Tools setting for virtual machine monitoring depends on
 the HA Virtual Machine Health Monitoring Service level that is
 defined for the cluster
 (<a href="vim.cluster.DasConfigInfo.html">ClusterDasConfigInfo</a>.<a href="vim.cluster.DasConfigInfo.html#vmMonitoring">vmMonitoring</a>).
 The following list indicates the supported VMware Tools <code>vmMonitoring</code> values
 according to the cluster configuration.
 </p>
 <ul>
 <li>If the cluster configuration specifies <code>vmMonitoringDisabled</code>,
 the Service is disabled and the HA Service ignores the VMware Tools monitoring setting.</li>
 <li>If the cluster configuration specifies <code>vmMonitoringOnly</code>,
 the Service supports <code>vmMonitoringOnly</code> or <code>vmMonitoringDisabled</code> only.</li>
 <li>If the cluster configuration specifies <code>vmAndAppMonitoring</code>,
 you can use any of the <a href="vim.cluster.DasConfigInfo.VmMonitoringState.html">ClusterDasConfigInfoVmMonitoringState</a> values.
 </li>
 </ul>
 <p>
 The <a href="vim.cluster.VmToolsMonitoringSettings.html#clusterSettings">clusterSettings</a> value has no
 effect on the constraint imposed by the HA Virtual Machine Health Monitoring Service
 level that is defined for the cluster
 (<a href="vim.cluster.DasConfigInfo.html">ClusterDasConfigInfo</a>.<a href="vim.cluster.DasConfigInfo.html#vmMonitoring">vmMonitoring</a>).
 <p>
 Application monitoring events are generated regardless of the
 currently configured type of virtual machine monitoring.
 You can use these events even if monitoring is being disabled
 or set to <code>vmMonitoringOnly</code>.
 </p>]]>
      </description-html>
      </property>

            <property name="clusterSettings" type-id-ref="BOOLEAN"
      vmodl-name="clusterSettings"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Flag indicating whether to use the cluster settings or the per VM settings.
 <p>
 The default value is true.]]>
      </description-html>
      </property>

            <property name="failureInterval" type-id-ref="INT"
      vmodl-name="failureInterval"
      is-optional="true"
      >
      <description-html>
         <![CDATA[If no heartbeat has been received for at least the specified number of seconds,
 the virtual machine is declared as failed.
 <p>
 The default value is 30.]]>
      </description-html>
      </property>

            <property name="minUpTime" type-id-ref="INT"
      vmodl-name="minUpTime"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The number of seconds for the virtual machine's heartbeats to stabilize
 after the virtual machine has been powered on. This time should include
 the guest operating system boot-up time. The virtual machine monitoring
 will begin only after this period.
 <p>
 The default value is 120.]]>
      </description-html>
      </property>

            <property name="maxFailures" type-id-ref="INT"
      vmodl-name="maxFailures"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Maximum number of failures and automated resets allowed during the time that
 <a href="vim.cluster.VmToolsMonitoringSettings.html#maxFailureWindow">maxFailureWindow</a> specifies. If <a href="vim.cluster.VmToolsMonitoringSettings.html#maxFailureWindow">maxFailureWindow</a> is -1
 (no window), this represents the absolute number of failures after which
 automated response is stopped.
 <p>
 If a virtual machine exceeds this threshold, in-depth problem analysis is
 usually needed.
 <p>
 The default value is 3.]]>
      </description-html>
      </property>

            <property name="maxFailureWindow" type-id-ref="INT"
      vmodl-name="maxFailureWindow"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The number of seconds for the window during which up to <a href="vim.cluster.VmToolsMonitoringSettings.html#maxFailures">maxFailures</a>
 resets can occur before automated responses stop.
 <p>
 If set to -1, no failure window is specified.
 <p>
 The default value is -1.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VmMacChangedEvent"
      type-id="vim.event.VmMacChangedEvent"
      vmodl-name="vim.event.VmMacChangedEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.VmEvent"
      >
      <description-html>
         <![CDATA[This event records a change in a virtual machine's MAC address.]]>
      </description-html>
            <property name="adapter" type-id-ref="java.lang.String"
      vmodl-name="adapter"
      >
      <description-html>
         <![CDATA[The name of the virtual network adapter.]]>
      </description-html>
      </property>

            <property name="oldMac" type-id-ref="java.lang.String"
      vmodl-name="oldMac"
      >
      <description-html>
         <![CDATA[The old MAC address.]]>
      </description-html>
      </property>

            <property name="newMac" type-id-ref="java.lang.String"
      vmodl-name="newMac"
      >
      <description-html>
         <![CDATA[The new MAC address.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostSystemResourceInfo"
      type-id="vim.host.SystemResourceInfo"
      vmodl-name="vim.host.SystemResourceInfo"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The SystemResourceInfo data object describes the configuration of
  a single system resource group.  System resource groups are analogous
  to <a href="vim.ResourcePool.html">ResourcePool</a> objects for virtual machines; however,
  their structure is fixed and groups may not be created nor destroyed,
  only configured.]]>
      </description-html>
            <property name="key" type-id-ref="java.lang.String"
      vmodl-name="key"
      >
      <description-html>
         <![CDATA[ID of the system resource group.]]>
      </description-html>
      </property>

            <property name="config" type-id-ref="vim.ResourceConfigSpec"
      vmodl-name="config"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Configuration of this system resource group.]]>
      </description-html>
      </property>

            <property name="child" type-id-ref="vim.host.SystemResourceInfo"
      vmodl-name="child"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of child resource groups.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="PropertySpec"
      type-id="vmodl.query.PropertyCollector.PropertySpec"
      vmodl-name="vmodl.query.PropertyCollector.PropertySpec"
      enclosing-type-id-ref="vmodl.query.PropertyCollector"
      version-id-ref="vmodl.query.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Within a <a href="vmodl.query.PropertyCollector.FilterSpec.html">PropertyFilterSpec</a>, A <a href="vmodl.query.PropertyCollector.PropertySpec.html">PropertySpec</a> specifies which properties should be
  reported to the client for objects of the given managed object type that
  are visited and not skipped.  One more subtle side effect is that if a
  managed object is visited and not skipped, but there is no <a href="vmodl.query.PropertyCollector.PropertySpec.html">PropertySpec</a> associated with the managed object's
  type, the managed object will not be reported to the client.

  <p> Also, the set of properties applicable to a given managed object type
  is the union of the properties implied by the <a href="vmodl.query.PropertyCollector.PropertySpec.html">PropertySpec</a> objects even, in the case of a <a href="vmodl.query.PropertyCollector.RetrieveResult.html">RetrieveResult</a>, where there may be an applicable
  <a href="vmodl.query.PropertyCollector.PropertySpec.html">PropertySpec</a> in more than one filter.]]>
      </description-html>
            <property name="type" type-id-ref="vmodl.TypeName"
      vmodl-name="type"
      >
      <description-html>
         <![CDATA[Name of the managed object type being collected.]]>
      </description-html>
      </property>

            <property name="all" type-id-ref="BOOLEAN"
      vmodl-name="all"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Specifies whether or not all properties of the object are read. If
  this property is set to true, the <a href="vmodl.query.PropertyCollector.PropertySpec.html#pathSet">pathSet</a> property is ignored.]]>
      </description-html>
      </property>

            <property name="pathSet" type-id-ref="vmodl.PropertyPath"
      vmodl-name="pathSet"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Specifies which managed object properties are retrieved. If the <a href="vmodl.query.PropertyCollector.PropertySpec.html#pathSet">pathSet</a> is empty, then the
  <a href="vmodl.query.PropertyCollector.html">PropertyCollector</a> retrieves references to the managed objects
  and no managed object properties are collected.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="LongPolicy"
      type-id="vim.LongPolicy"
      vmodl-name="vim.LongPolicy"
      version-id-ref="vim.version.version5"
      base-type-id="vim.InheritablePolicy"
      >
      <description-html>
         <![CDATA[The long integer type of setting or configuration that may get an
  inherited value.]]>
      </description-html>
            <property name="value" type-id-ref="LONG"
      vmodl-name="value"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The boolean value that is either set or inherited.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="UserInputRequiredParameterMetadata"
      type-id="vim.profile.UserInputRequiredParameterMetadata"
      vmodl-name="vim.profile.UserInputRequiredParameterMetadata"
      version-id-ref="vim.version.version5"
      base-type-id="vim.profile.PolicyOptionMetadata"
      >
      <description-html>
         <![CDATA[The <a href="vim.profile.UserInputRequiredParameterMetadata.html">UserInputRequiredParameterMetadata</a> data object represents policy option metadata
 information for configuration data. The Profile Engine saves configuration
 data from the user input options in the host <a href="vim.profile.host.AnswerFile.html">AnswerFile</a>.
 See the <a href="vim.profile.host.HostProfile.html#execute">ExecuteHostProfile</a> and
 <a href="vim.profile.host.ProfileManager.html#applyHostConfiguration">ApplyHostConfig_Task</a> methods.]]>
      </description-html>
            <property name="userInputParameter" type-id-ref="vim.profile.ParameterMetadata"
      vmodl-name="userInputParameter"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Metadata for user input options.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualSATAControllerOption"
      type-id="vim.vm.device.VirtualSATAControllerOption"
      vmodl-name="vim.vm.device.VirtualSATAControllerOption"
      version-id-ref="vim.version.version9"
      base-type-id="vim.vm.device.VirtualControllerOption"
      >
      <description-html>
         <![CDATA[The VirtualSATAControllerOption data object type contains the options
  for a virtual SATA controller defined by the
  <a href="vim.vm.device.VirtualSATAController.html">VirtualSATAController</a>
  data object type.]]>
      </description-html>
            <property name="numSATADisks" type-id-ref="vim.option.IntOption"
      vmodl-name="numSATADisks"
      >
      <description-html>
         <![CDATA[Three properties (numSATADisks.min, numSATADisks.max, and
  numSATADisks.defaultValue) define the minimum, maximum, and default
  number of SATA VirtualDisk instances available at any given time in the
  SATA controller. The number of SATA VirtualDisk instances is
  also limited by the number of available slots in the SATA controller.]]>
      </description-html>
      </property>

            <property name="numSATACdroms" type-id-ref="vim.option.IntOption"
      vmodl-name="numSATACdroms"
      >
      <description-html>
         <![CDATA[Three properties (numSATACdroms.min, numSATACdroms.max, and
  numSATACdroms.defaultValue) define the minimum, maximum, and default
  number of SATA VirtualCdrom instances available
  in the SATA controller. The number of SATA VirtualCdrom instances is
  also limited by the number of available slots in the SATA controller.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="PerfMetricIntSeries"
      type-id="vim.PerformanceManager.IntSeries"
      vmodl-name="vim.PerformanceManager.IntSeries"
      enclosing-type-id-ref="vim.PerformanceManager"
      version-id-ref="vim.version.version1"
      base-type-id="vim.PerformanceManager.MetricSeries"
      >
      <description-html>
         <![CDATA[This data object type describes integer metric values. The size of the
  array must match the size of <a href="vim.PerformanceManager.EntityMetric.html#sampleInfo">sampleInfo</a> property in the <a href="vim.PerformanceManager.EntityMetric.html">PerfEntityMetric</a> that contains this series.]]>
      </description-html>
            <property name="value" type-id-ref="LONG"
      vmodl-name="value"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[An array of 64-bit integer values. The size of the array matches the
  size as the <a href="vim.PerformanceManager.SampleInfo.html">PerfSampleInfo</a>, because the values
  can only be interpreted in the context of the sample that generated
  the value.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="NasDatastoreInfo"
      type-id="vim.host.NasDatastoreInfo"
      vmodl-name="vim.host.NasDatastoreInfo"
      version-id-ref="vim.version.version1"
      base-type-id="vim.Datastore.Info"
      >
      <description-html>
         <![CDATA[Information details about a network-attached storage
  (NAS) datastore.]]>
      </description-html>
            <property name="nas" type-id-ref="vim.host.NasVolume"
      vmodl-name="nas"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The NFS mount information for the datastore.  May not
  be available when the datastore is not accessible.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="AlarmRemovedEvent"
      type-id="vim.event.AlarmRemovedEvent"
      vmodl-name="vim.event.AlarmRemovedEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.AlarmEvent"
      >
      <description-html>
         <![CDATA[This event records the removal of an alarm.]]>
      </description-html>
            <property name="entity" type-id-ref="vim.event.ManagedEntityEventArgument"
      vmodl-name="entity"
      >
      <description-html>
         <![CDATA[The entity with which the alarm is registered.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostProfileValidationFailureInfo"
      type-id="vim.profile.host.HostProfile.ValidationFailureInfo"
      vmodl-name="vim.profile.host.HostProfile.ValidationFailureInfo"
      enclosing-type-id-ref="vim.profile.host.HostProfile"
      version-id-ref="vim.version.version12"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This defines the validation result for the host profile.]]>
      </description-html>
            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      >
      <description-html>
         <![CDATA[The name of host profile to be validated.]]>
      </description-html>
      </property>

            <property name="annotation" type-id-ref="java.lang.String"
      vmodl-name="annotation"
      >
      <description-html>
         <![CDATA[Host profile annotation at update.]]>
      </description-html>
      </property>

            <property name="updateType" type-id-ref="java.lang.String"
      vmodl-name="updateType"
      >
      <description-html>
         <![CDATA[Host profile update type. See the enumerate class
 <code>UpdateType</code> above for the valid values.]]>
      </description-html>
      </property>

            <property name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The host where the host profile is updated from.]]>
      </description-html>
      </property>

            <property name="applyProfile" type-id-ref="vim.profile.host.HostApplyProfile"
      vmodl-name="applyProfile"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The host configuration after validation.]]>
      </description-html>
      </property>

            <property name="failures" type-id-ref="vim.fault.ProfileUpdateFailed.UpdateFailure"
      vmodl-name="failures"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of failures in the host profile configuration.]]>
      </description-html>
      </property>

            <property name="faults" type-id-ref="vmodl.LocalizedMethodFault"
      vmodl-name="faults"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The <code>MethodFault</code>s happened at validation.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.profile.host.HostProfile.ValidationFailureInfo.UpdateType</nested-type-id-ref>
   </data-object>
   <data-object name="HourlyTaskScheduler"
      type-id="vim.scheduler.HourlyTaskScheduler"
      vmodl-name="vim.scheduler.HourlyTaskScheduler"
      version-id-ref="vim.version.version1"
      base-type-id="vim.scheduler.RecurrentTaskScheduler"
      >
      <description-html>
         <![CDATA[The <a href="vim.scheduler.HourlyTaskScheduler.html">HourlyTaskScheduler</a> data object sets the time for hourly
  task execution. By default, the scheduled task will run once every hour,
  at the specified minute.
  <p>
  If you set the interval to a value greater than 1, the task will
  execute at the specified hourly interval. (For example, an interval
  of 2 will cause the task to execute at the specified minute every 2 hours.)]]>
      </description-html>
            <property name="minute" type-id-ref="INT"
      vmodl-name="minute"
      >
      <description-html>
         <![CDATA[The minute at which the <a href="vim.scheduler.RecurrentTaskScheduler.html">RecurrentTaskScheduler</a> runs
  the task. Specify the minute value as a UTC (Coordinated Universal Time)
  value in the range 0 to 59.
  <p>
  For vCenter 2.x and prior releases, use the server's local time.
  For example, use Australia Northern Territory (UTC +9:30) or Indian (UTC +5:30)
  time values, rather than a UTC value.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="CustomizationWinOptions"
      type-id="vim.vm.customization.WinOptions"
      vmodl-name="vim.vm.customization.WinOptions"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.customization.Options"
      >
      <description-html>
         <![CDATA[Optional operations supported by the customization process for Windows.]]>
      </description-html>
            <property name="changeSID" type-id-ref="BOOLEAN"
      vmodl-name="changeSID"
      >
      <description-html>
         <![CDATA[The customization process should modify the machine's security identifier (SID).
  For Vista OS and greater, SID will always be modified and a value of false will
  generate an error.]]>
      </description-html>
      </property>

            <property name="deleteAccounts" type-id-ref="BOOLEAN"
      vmodl-name="deleteAccounts"
      is-deprecated="true"
      >
      <description-html>
         <![CDATA[If deleteAccounts is true, then all user accounts are removed from the system as
  part of the customization. Mini-setup creates a new Administrator account with a
  blank password.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of VI API 2.5, this value is ignored. Removing user accounts
              during customization is no longer supported. To change the
              administrator password, set the administrator password to
              blank in the master vm. Sysprep will then be able to change the
              password to the one specified by the <a href="vim.vm.customization.GuiUnattended.html#password">password</a>.]]>
      </deprecated-html>
      </property>

            <property name="reboot" type-id-ref="vim.vm.customization.WinOptions.SysprepRebootOption"
      vmodl-name="reboot"
      version-id-ref="vim.version.version2"
      is-optional="true"
      >
      <description-html>
         <![CDATA[A value of type SysprepRebootOption specifying the action that should be
 taken after running sysprep. Defaults to "reboot".]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.vm.customization.WinOptions.SysprepRebootOption</nested-type-id-ref>
   </data-object>
   <data-object name="NoLicenseEvent"
      type-id="vim.event.NoLicenseEvent"
      vmodl-name="vim.event.NoLicenseEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.LicenseEvent"
      >
      <description-html>
         <![CDATA[These are events reported by License Manager.
 <p>
 A NoLicenseEvent is reported if the required licenses could not be
 reserved. Each feature that is not fully licensed is reported.]]>
      </description-html>
            <property name="feature" type-id-ref="vim.LicenseManager.FeatureInfo"
      vmodl-name="feature"
      >
      </property>

   </data-object>
   <data-object name="CustomFieldValueChangedEvent"
      type-id="vim.event.CustomFieldValueChangedEvent"
      vmodl-name="vim.event.CustomFieldValueChangedEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.CustomFieldEvent"
      >
      <description-html>
         <![CDATA[This event records a change to a custom field value for a particular entity.]]>
      </description-html>
            <property name="entity" type-id-ref="vim.event.ManagedEntityEventArgument"
      vmodl-name="entity"
      >
      <description-html>
         <![CDATA[The entity on which the field value was changed.]]>
      </description-html>
      </property>

            <property name="fieldKey" type-id-ref="INT"
      vmodl-name="fieldKey"
      >
      <description-html>
         <![CDATA[The custom field whose value was changed for the entity.]]>
      </description-html>
      </property>

            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      >
      <description-html>
         <![CDATA[The name of the custom field at the time the value was changed.]]>
      </description-html>
      </property>

            <property name="value" type-id-ref="java.lang.String"
      vmodl-name="value"
      >
      <description-html>
         <![CDATA[The new value that was set.]]>
      </description-html>
      </property>

            <property name="prevState" type-id-ref="java.lang.String"
      vmodl-name="prevState"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The previous service state.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="UsbScanCodeSpecKeyEvent"
      type-id="vim.vm.UsbScanCodeSpec.KeyEvent"
      vmodl-name="vim.vm.UsbScanCodeSpec.KeyEvent"
      enclosing-type-id-ref="vim.vm.UsbScanCodeSpec"
      version-id-ref="vim.version.version11"
      base-type-id="vmodl.DynamicData"
      >
            <property name="usbHidCode" type-id-ref="INT"
      vmodl-name="usbHidCode"
      >
      <description-html>
         <![CDATA[USB HID code of the event]]>
      </description-html>
      </property>

            <property name="modifiers" type-id-ref="vim.vm.UsbScanCodeSpec.ModifierType"
      vmodl-name="modifiers"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Modifiers to apply to the USB HID code]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostPersistentMemoryInfo"
      type-id="vim.host.PersistentMemoryInfo"
      vmodl-name="vim.host.PersistentMemoryInfo"
      version-id-ref="vim.version.version12"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Host Hardware information about configured and available
 persistent memory on a host.]]>
      </description-html>
            <property name="capacityInMB" type-id-ref="LONG"
      vmodl-name="capacityInMB"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Amount of configured persistent memory available on a host in MB.]]>
      </description-html>
      </property>

            <property name="volumeUUID" type-id-ref="java.lang.String"
      vmodl-name="volumeUUID"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Unique persistent memory host indentifier.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="EntityBackupConfig"
      type-id="vim.dvs.EntityBackup.Config"
      vmodl-name="vim.dvs.EntityBackup.Config"
      enclosing-type-id-ref="vim.dvs.EntityBackup"
      version-id-ref="vim.version.version8"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The <a href="vim.dvs.EntityBackup.Config.html">EntityBackupConfig</a> data object
 contains <a href="vim.dvs.VmwareDistributedVirtualSwitch.html">VmwareDistributedVirtualSwitch</a>
 or <a href="vim.dvs.DistributedVirtualPortgroup.html">DistributedVirtualPortgroup</a> backup
 configuration data produced by the
 <a href="vim.dvs.DistributedVirtualSwitchManager.html#exportEntity">DVSManagerExportEntity_Task</a>
 method. It also contains properties that support
 <a href="vim.dvs.DistributedVirtualSwitchManager.html#importEntity">DVSManagerImportEntity_Task</a>
 operations.
 <p>
 A <a href="vim.dvs.DistributedVirtualSwitchManager.html#exportEntity">DVSManagerExportEntity_Task</a> operation
 sets properties that identify the entity instance
 (<a href="vim.dvs.EntityBackup.Config.html#entityType">entityType</a>,
 <a href="vim.dvs.EntityBackup.Config.html#key">key</a>, and
 <a href="vim.dvs.EntityBackup.Config.html#name">name</a>) and
 inventory location (<a href="vim.dvs.EntityBackup.Config.html#container">container</a>).
 When you import a backup configuration, you can set
 the <code>key</code>, <code>name</code>, and <code>container</code>
 properties in accordance with the <code>importType</code>
 specified in the call to
 <a href="vim.dvs.DistributedVirtualSwitchManager.html#importEntity">DVSManagerImportEntity_Task</a>.
 See <a href="vim.dvs.EntityBackup.ImportType.html">EntityImportType</a>.]]>
      </description-html>
            <property name="entityType" type-id-ref="java.lang.String"
      vmodl-name="entityType"
      >
      <description-html>
         <![CDATA[Type of the exported entity
 (<a href="vim.dvs.DistributedVirtualSwitchManager.html#exportEntity">DVSManagerExportEntity_Task</a>).
 See <a href="vim.dvs.EntityBackup.EntityType.html">EntityType</a>
 for valid values.]]>
      </description-html>
      </property>

            <property name="configBlob" type-id-ref="vmodl.Binary"
      vmodl-name="configBlob"
      >
      <description-html>
         <![CDATA[Opaque blob that contains the configuration of the entity.]]>
      </description-html>
      </property>

            <property name="key" type-id-ref="java.lang.String"
      vmodl-name="key"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Unique identifier of the exported entity or the entity to be restored
 through an import operation.
 <ul>
 <li>If you are importing a virtual distributed switch and the import type is
 vim.dvs.EntityBackup.ImportType#applyToEntitySpecified,
 set the <code>key</code> to
 <a href="vim.DistributedVirtualSwitch.html">DistributedVirtualSwitch</a>.<a href="vim.DistributedVirtualSwitch.html#uuid">Uuid</a>.
 </li>
 <li>If you are importing a virtual distributed portgroup and the import type is
 vim.dvs.EntityBackup.ImportType#applyToEntitySpecified,
 set the <code>key</code> to
 <a href="vim.dvs.DistributedVirtualPortgroup.html">DistributedVirtualPortgroup</a>.<a href="vim.dvs.DistributedVirtualPortgroup.html#key">Key</a>.
 </li>
 </ul>
 <p>
 The Server ignores the key value when the import operation creates a new entity.]]>
      </description-html>
      </property>

            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Name of the exported entity or the entity to be restored with the backup configuration.
 If you are importing an entity and the import type is
 vim.dvs.EntityBackup.ImportType#applyToEntitySpecified,
 the Server will use this value to rename the existing entity.]]>
      </description-html>
      </property>

            <property name="container" type-id-ref="vim.ManagedEntity"
      vmodl-name="container"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Container for this entity.
 If <a href="vim.dvs.EntityBackup.Config.html#entityType">entityType</a> is "distributedVirtualSwitch",
 the container type is <a href="vim.Folder.html">Folder</a>. If <a href="vim.dvs.EntityBackup.Config.html#entityType">entityType</a>
 is "distributedVirtualPortgroup", the container type is
 <a href="vim.DistributedVirtualSwitch.html">DistributedVirtualSwitch</a>.]]>
      </description-html>
      </property>

            <property name="configVersion" type-id-ref="java.lang.String"
      vmodl-name="configVersion"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Configuration version.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualDeviceConnectOption"
      type-id="vim.vm.device.VirtualDeviceOption.ConnectOption"
      vmodl-name="vim.vm.device.VirtualDeviceOption.ConnectOption"
      enclosing-type-id-ref="vim.vm.device.VirtualDeviceOption"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The ConnectOption data object type contains information about options for
  connectable virtual devices.]]>
      </description-html>
            <property name="startConnected" type-id-ref="vim.option.BoolOption"
      vmodl-name="startConnected"
      >
      <description-html>
         <![CDATA[Flag to indicate whether or not the device supports
  the startConnected feature.]]>
      </description-html>
      </property>

            <property name="allowGuestControl" type-id-ref="vim.option.BoolOption"
      vmodl-name="allowGuestControl"
      >
      <description-html>
         <![CDATA[Flag to indicate whether or not the device can be
  connected and disconnected from within the guest operating system.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DvsRenamedEvent"
      type-id="vim.event.DvsRenamedEvent"
      vmodl-name="vim.event.DvsRenamedEvent"
      version-id-ref="vim.version.version5"
      base-type-id="vim.event.DvsEvent"
      >
      <description-html>
         <![CDATA[A distributed virtual switch was renamed.]]>
      </description-html>
            <property name="oldName" type-id-ref="java.lang.String"
      vmodl-name="oldName"
      >
      <description-html>
         <![CDATA[The old DistributedVirtualSwitch name.]]>
      </description-html>
      </property>

            <property name="newName" type-id-ref="java.lang.String"
      vmodl-name="newName"
      >
      <description-html>
         <![CDATA[The new DistributedVirtualSwitch name.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DvsVmVnicResourceAllocation"
      type-id="vim.dvs.VmVnicNetworkResourcePool.ResourceAllocation"
      vmodl-name="vim.dvs.VmVnicNetworkResourcePool.ResourceAllocation"
      enclosing-type-id-ref="vim.dvs.VmVnicNetworkResourcePool"
      version-id-ref="vim.version.version10"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Resource allocation information for a virtual NIC network resource pool.]]>
      </description-html>
            <property name="reservationQuota" type-id-ref="LONG"
      vmodl-name="reservationQuota"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Quota for the total amount of virtual machine nic reservation in this pool.
  Unit in Mbits/sec.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VmStartingSecondaryEvent"
      type-id="vim.event.VmStartingSecondaryEvent"
      vmodl-name="vim.event.VmStartingSecondaryEvent"
      version-id-ref="vim.version.version5"
      base-type-id="vim.event.VmEvent"
      >
      <description-html>
         <![CDATA[This event records a vmotion to start a secondary VM.]]>
      </description-html>
   </data-object>
   <data-object name="HostVmfsVolume"
      type-id="vim.host.VmfsVolume"
      vmodl-name="vim.host.VmfsVolume"
      version-id-ref="vim.version.version1"
      base-type-id="vim.host.FileSystemVolume"
      >
      <description-html>
         <![CDATA[The VMFS file system.]]>
      </description-html>
            <property name="blockSizeMb" type-id-ref="INT"
      vmodl-name="blockSizeMb"
      is-deprecated="true"
      >
      <description-html>
         <![CDATA[Block size of VMFS.  Determines maximum file size.  The maximum number
  of blocks is typically fixed with each specific version of VMFS.  To
  increase the maximum size of a VMFS file, increase the block size.
  <p>
  The minimum block size is 1MB.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 6.5, use
  <a href="vim.host.VmfsVolume.html#blockSize">blockSize</a> instead.]]>
      </deprecated-html>
      </property>

            <property name="blockSize" type-id-ref="INT"
      vmodl-name="blockSize"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Block size of VMFS in KB. Determines maximum file size. The maximum
  number of blocks is typically fixed with each specific version of VMFS.
  To increase the maximum size of a VMFS file, increase the block size.
  <p>
  The minimum block size is 1MB.]]>
      </description-html>
      </property>

            <property name="unmapGranularity" type-id-ref="INT"
      vmodl-name="unmapGranularity"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[VMFS unmap reclaims unused storage space. This property
  determines the granularity of unmap operations.

  The unit is KB. If not specified, the default value is the same as
  the block size of VMFS <a href="vim.host.VmfsVolume.html#blockSize">blockSize</a>.
  This property cannot be changed after a VMFS volume is created.]]>
      </description-html>
      </property>

            <property name="unmapPriority" type-id-ref="java.lang.String"
      vmodl-name="unmapPriority"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[VMFS unmap reclaims unused storage space. This property
  determines the processing rate of unmaps.

  See <a href="vim.host.VmfsVolume.UnmapPriority.html">HostVmfsVolumeUnmapPriority</a> for supported values.
  If not specified, the default value is
  vim.host.VmfsVolume.UnmapPriority#low, which means
  unmap is processed at low rate. This property can be updated by
  calling <a href="vim.host.StorageSystem.html#updateVmfsUnmapPriority">UpdateVmfsUnmapPriority</a>.]]>
      </description-html>
      </property>

            <property name="unmapBandwidthSpec" type-id-ref="vim.host.VmfsVolume.UnmapBandwidthSpec"
      vmodl-name="unmapBandwidthSpec"
      version-id-ref="vim.version.version12"
      is-optional="true"
      >
      <description-html>
         <![CDATA[VMFS unmap bandwidth related specification. See
 <a href="vim.host.VmfsVolume.UnmapBandwidthSpec.html">VmfsUnmapBandwidthSpec</a> for detail.]]>
      </description-html>
      </property>

            <property name="maxBlocks" type-id-ref="INT"
      vmodl-name="maxBlocks"
      >
      <description-html>
         <![CDATA[Maximum number of blocks.  Determines maximum file size along
  with blockSize. See information about the blockSize.
  <p>]]>
      </description-html>
      </property>

            <property name="majorVersion" type-id-ref="INT"
      vmodl-name="majorVersion"
      >
      <description-html>
         <![CDATA[Major version number of VMFS.]]>
      </description-html>
      </property>

            <property name="version" type-id-ref="java.lang.String"
      vmodl-name="version"
      >
      <description-html>
         <![CDATA[Version string.  Contains major and minor version numbers.]]>
      </description-html>
      </property>

            <property name="uuid" type-id-ref="java.lang.String"
      vmodl-name="uuid"
      >
      <description-html>
         <![CDATA[The universally unique identifier assigned to VMFS.]]>
      </description-html>
      </property>

            <property name="extent" type-id-ref="vim.host.ScsiDisk.Partition"
      vmodl-name="extent"
      is-array="true"
      >
      <description-html>
         <![CDATA[The list of partition names that comprise this disk's
  VMFS extents.
  <p>
  This property can be accessed via various enclosing objects.
  In VirtualCenter, where it can be accessed from multiple
  hosts, the value of this property may differ according to the context
  in which it is accessed. When accessed from the
  <a href="vim.host.VmfsDatastoreInfo.html">VmfsDatastoreInfo</a> object, in VirtualCenter, this
  property reflects the extent information of any one of the hosts visible
  to the datastore.
  <p>
  For a VirtualCenter system which manages ESX Server 2.x and
  ESX Server 3.x hosts, this extent information is only correlatable
  across hosts if the extents are exposed on the same adapter on all hosts
  which can access them. To find the extent names for a specific host,
  this same property should be accessed via the host's
  <a href="vim.host.FileSystemVolume.html">HostFileSystemVolume</a> object, by correlating the uuid of
  the VMFS datastore in the VmfsDatastoreInfo object to the uuid in the
  FileSystemVolume object.
  <p>
  For a Virtual Center system which manages only ESX Server hosts with
  versions 4.0 onwards , this extent information is correlatable across
  hosts, irrespective of the adapters the extents are exposed on.]]>
      </description-html>
      </property>

            <property name="vmfsUpgradable" type-id-ref="BOOLEAN"
      vmodl-name="vmfsUpgradable"
      >
      <description-html>
         <![CDATA[Can the filesystem be upgraded to a newer version.<br>See <a href="vim.host.StorageSystem.html#upgradeVmfs">UpgradeVmfs</a><br>]]>
      </description-html>
      </property>

            <property name="forceMountedInfo" type-id-ref="vim.host.ForceMountedInfo"
      vmodl-name="forceMountedInfo"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Information about 'forceMounted' VmfsVolume.
  When the system detects a copy of a VmfsVolume, it will not be
  auto-mounted on the host and it will be detected as
  'UnresolvedVmfsVolume'. If user decides to 'forceMount' the
  VmfsVolume on the host, forceMountedInfo will be populated.
  It will not be set for automounted VMFS volumes.]]>
      </description-html>
      </property>

            <property name="ssd" type-id-ref="BOOLEAN"
      vmodl-name="ssd"
      version-id-ref="vim.version.version7"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates whether the volume is SSD backed.
 If unset, the information whether the volume is SSD backed is unknown.]]>
      </description-html>
      </property>

            <property name="local" type-id-ref="BOOLEAN"
      vmodl-name="local"
      version-id-ref="vim.version.version9"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates whether the volume is backed by local disk.
 If unset, the information of the volume is local-disk backed is unknown.]]>
      </description-html>
      </property>

            <property name="scsiDiskType" type-id-ref="java.lang.String"
      vmodl-name="scsiDiskType"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The type of disk drives. See <a href="vim.host.ScsiDisk.ScsiDiskType.html">ScsiDiskType</a>
 for supported types.
 If unset, the default disk drive type is
 vim.host.ScsiDisk.ScsiDiskType#native512.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.host.VmfsVolume.Specification</nested-type-id-ref>
      <nested-type-id-ref>vim.host.VmfsVolume.UnmapBandwidthSpec</nested-type-id-ref>
      <nested-type-id-ref>vim.host.VmfsVolume.UnmapPriority</nested-type-id-ref>
      <nested-type-id-ref>vim.host.VmfsVolume.UnmapBandwidthPolicy</nested-type-id-ref>
      <nested-type-id-ref>vim.host.VmfsVolume.ConfigOption</nested-type-id-ref>
   </data-object>
   <data-object name="DVPortgroupCreatedEvent"
      type-id="vim.event.DVPortgroupCreatedEvent"
      vmodl-name="vim.event.DVPortgroupCreatedEvent"
      version-id-ref="vim.version.version5"
      base-type-id="vim.event.DVPortgroupEvent"
      >
      <description-html>
         <![CDATA[Two distributed virtual portgroup was created.]]>
      </description-html>
   </data-object>
   <data-object name="HttpNfcLeaseDatastoreLeaseInfo"
      type-id="vim.HttpNfcLease.DatastoreLeaseInfo"
      vmodl-name="vim.HttpNfcLease.DatastoreLeaseInfo"
      enclosing-type-id-ref="vim.HttpNfcLease"
      version-id-ref="vim.version.version6"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[For a given datastore, represented by datastoreKey, contains a list of leased
 multi-POST-capable hosts connected to it.]]>
      </description-html>
            <property name="datastoreKey" type-id-ref="java.lang.String"
      vmodl-name="datastoreKey"
      >
      <description-html>
         <![CDATA[Datastore key.]]>
      </description-html>
      </property>

            <property name="hosts" type-id-ref="vim.HttpNfcLease.HostInfo"
      vmodl-name="hosts"
      is-array="true"
      >
      <description-html>
         <![CDATA[List of hosts connected to this datastore and covered by this lease. The
 hosts in this list are multi-POST-capable, and any one of them can be used
 to transfer disks on this datastore.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="TeamingMatchEvent"
      type-id="vim.event.TeamingMatchEvent"
      vmodl-name="vim.event.TeamingMatchEvent"
      version-id-ref="vim.version.version8"
      base-type-id="vim.event.DvsHealthStatusChangeEvent"
      >
      <description-html>
         <![CDATA[The teaming configuration of the uplink ports in the DVS matches
  physical switch configuration.]]>
      </description-html>
   </data-object>
   <data-object name="VsanUpgradeSystemV2ObjectsPresentDuringDowngradeIssue"
      type-id="vim.VsanUpgradeSystem.V2ObjectsPresentDuringDowngradeIssue"
      vmodl-name="vim.VsanUpgradeSystem.V2ObjectsPresentDuringDowngradeIssue"
      enclosing-type-id-ref="vim.VsanUpgradeSystem"
      version-id-ref="vim.version.version10"
      base-type-id="vim.VsanUpgradeSystem.PreflightCheckIssue"
      >
      <description-html>
         <![CDATA[Pre-flight check encountered v2 objects preventing a downgrade.]]>
      </description-html>
            <property name="uuids" type-id-ref="java.lang.String"
      vmodl-name="uuids"
      is-array="true"
      >
      <description-html>
         <![CDATA[Object UUIDs of v2 objects.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="GuestRegKeyNameSpec"
      type-id="vim.vm.guest.WindowsRegistryManager.RegistryKeyName"
      vmodl-name="vim.vm.guest.WindowsRegistryManager.RegistryKeyName"
      enclosing-type-id-ref="vim.vm.guest.WindowsRegistryManager"
      version-id-ref="vim.version.version10"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This describes the registry key name.]]>
      </description-html>
            <property name="registryPath" type-id-ref="java.lang.String"
      vmodl-name="registryPath"
      >
      <description-html>
         <![CDATA[The full path to a registry key.]]>
      </description-html>
      </property>

            <property name="wowBitness" type-id-ref="java.lang.String"
      vmodl-name="wowBitness"
      >
      <description-html>
         <![CDATA[The wow bitness, one of <a href="vim.vm.guest.WindowsRegistryManager.RegistryKeyName.RegistryKeyWowBitness.html">GuestRegKeyWowSpec</a>.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.vm.guest.WindowsRegistryManager.RegistryKeyName.RegistryKeyWowBitness</nested-type-id-ref>
   </data-object>
   <data-object name="HostSerialAttachedHba"
      type-id="vim.host.SerialAttachedHba"
      vmodl-name="vim.host.SerialAttachedHba"
      version-id-ref="vim.version.version11"
      base-type-id="vim.host.HostBusAdapter"
      >
      <description-html>
         <![CDATA[The data object type describes the
  Serial Attached Scsi(SAS) interface.]]>
      </description-html>
            <property name="nodeWorldWideName" type-id-ref="java.lang.String"
      vmodl-name="nodeWorldWideName"
      >
      <description-html>
         <![CDATA[The world wide node name for the adapter.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VmRelayoutSuccessfulEvent"
      type-id="vim.event.VmRelayoutSuccessfulEvent"
      vmodl-name="vim.event.VmRelayoutSuccessfulEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.VmEvent"
      >
      <description-html>
         <![CDATA[This event records that a virtual machine was successfully
 converted to the new virtual machine format on a VMFS3 volume.]]>
      </description-html>
   </data-object>
   <data-object name="VsanHostClusterStatusStateCompletionEstimate"
      type-id="vim.vsan.host.ClusterStatus.State.CompletionEstimate"
      vmodl-name="vim.vsan.host.ClusterStatus.State.CompletionEstimate"
      enclosing-type-id-ref="vim.vsan.host.ClusterStatus.State"
      version-id-ref="vim.version.version9"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Estimated completion status for transitory node states.<br>See <a href="vim.vsan.host.NodeState.html">VsanHostNodeState</a><br>]]>
      </description-html>
            <property name="completeTime" type-id-ref="vmodl.DateTime"
      vmodl-name="completeTime"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Estimated time of completion.]]>
      </description-html>
      </property>

            <property name="percentComplete" type-id-ref="INT"
      vmodl-name="percentComplete"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Estimated percent of completion as a value in the range [0, 100].]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="UnlicensedVirtualMachinesFoundEvent"
      type-id="vim.event.UnlicensedVirtualMachinesFoundEvent"
      vmodl-name="vim.event.UnlicensedVirtualMachinesFoundEvent"
      version-id-ref="vim.version.version2"
      base-type-id="vim.event.LicenseEvent"
      >
      <description-html>
         <![CDATA[This event records that we discovered unlicensed virtual machines on
 the specified host. After this event is entered into the event log, we
 expect to see a corresponding (@link
 vim.event.Event.UnlicensedVirtualMachinesEvent
 UnlicensedVirtualMachinesEvent) (@link vim.ManagedEntity.configIssue
 configIssue) on the host.]]>
      </description-html>
            <property name="available" type-id-ref="INT"
      vmodl-name="available"
      >
      </property>

   </data-object>
   <data-object name="ProfileExpression"
      type-id="vim.profile.Expression"
      vmodl-name="vim.profile.Expression"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
            <property name="id" type-id-ref="java.lang.String"
      vmodl-name="id"
      >
      <description-html>
         <![CDATA[Identifier of this expression. The id has to be unique within a Profile.
 The id can be used as a key while building composite expressions.]]>
      </description-html>
      </property>

            <property name="displayName" type-id-ref="java.lang.String"
      vmodl-name="displayName"
      >
      <description-html>
         <![CDATA[User visible display name]]>
      </description-html>
      </property>

            <property name="negated" type-id-ref="BOOLEAN"
      vmodl-name="negated"
      >
      <description-html>
         <![CDATA[Flag indicating if the condition of the expression should be negated.
 e.g: conditions like VSwitch0 has vmnic0 connected to it can be turned into
 VSwitch0 doesn't have vmnic0 connected to it.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VmEndRecordingEvent"
      type-id="vim.event.VmEndRecordingEvent"
      vmodl-name="vim.event.VmEndRecordingEvent"
      version-id-ref="vim.version.version5"
      is-deprecated="true"
      base-type-id="vim.event.VmEvent"
      >
      <description-html>
         <![CDATA[This event indicates the end of a recording session on a virtual machine.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[as of vSphere API 6.0]]>
      </deprecated-html>
   </data-object>
   <data-object name="DVSNetworkResourcePoolConfigSpec"
      type-id="vim.dvs.NetworkResourcePool.ConfigSpec"
      vmodl-name="vim.dvs.NetworkResourcePool.ConfigSpec"
      enclosing-type-id-ref="vim.dvs.NetworkResourcePool"
      version-id-ref="vim.version.version6"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The <a href="vim.dvs.NetworkResourcePool.ConfigSpec.html">DVSNetworkResourcePoolConfigSpec</a> data object
 contains properties to create or update a network resource pool
 for a distributed virtual switch.]]>
      </description-html>
            <property name="key" type-id-ref="java.lang.String"
      vmodl-name="key"
      >
      <description-html>
         <![CDATA[Key of the network resource pool. The property is ignored for
 <a href="vim.DistributedVirtualSwitch.html">DistributedVirtualSwitch</a>.<a href="vim.DistributedVirtualSwitch.html#addNetworkResourcePool">AddNetworkResourcePool</a>
 operations.]]>
      </description-html>
      </property>

            <property name="configVersion" type-id-ref="java.lang.String"
      vmodl-name="configVersion"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Unique identifier for a given version
  of the configuration. Each change to the configuration will
  update this value. This is typically implemented as a
  non-decreasing count or a time-stamp. However, a client should
  always treat this as an opaque string.
  <p>
  If you specify the configuration version when you update
  the resource configuration, the Server will apply the changes
  only if the specified identifier matches the current
  <a href="vim.dvs.NetworkResourcePool.html">DVSNetworkResourcePool</a>.<a href="vim.dvs.NetworkResourcePool.html#configVersion">configVersion</a>
  value. You can use this field to guard against updates
  that may have occurred between the time when the client
  reads <a href="vim.dvs.NetworkResourcePool.html#configVersion">configVersion</a>
  and when the configuration is applied.]]>
      </description-html>
      </property>

            <property name="allocationInfo" type-id-ref="vim.dvs.NetworkResourcePool.AllocationInfo"
      vmodl-name="allocationInfo"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Network resource allocation for the network resource pool.]]>
      </description-html>
      </property>

            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      version-id-ref="vim.version.version7"
      is-optional="true"
      >
      <description-html>
         <![CDATA[User defined name for the resource pool.
  The property is required for
  <a href="vim.DistributedVirtualSwitch.html">DistributedVirtualSwitch</a>.<a href="vim.DistributedVirtualSwitch.html#addNetworkResourcePool">AddNetworkResourcePool</a>
  operations.]]>
      </description-html>
      </property>

            <property name="description" type-id-ref="java.lang.String"
      vmodl-name="description"
      version-id-ref="vim.version.version7"
      is-optional="true"
      >
      <description-html>
         <![CDATA[User-defined description for the resource pool.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VsanUpgradeSystemMissingHostsInClusterIssue"
      type-id="vim.VsanUpgradeSystem.MissingHostsInClusterIssue"
      vmodl-name="vim.VsanUpgradeSystem.MissingHostsInClusterIssue"
      enclosing-type-id-ref="vim.VsanUpgradeSystem"
      version-id-ref="vim.version.version10"
      base-type-id="vim.VsanUpgradeSystem.PreflightCheckIssue"
      >
      <description-html>
         <![CDATA[Pre-flight check encountered at least one host that is part of the
 VC cluster but not the VSAN cluster.]]>
      </description-html>
            <property name="hosts" type-id-ref="vim.HostSystem"
      vmodl-name="hosts"
      is-array="true"
      >
      <description-html>
         <![CDATA[Hosts this issue applies to.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostIpChangedEvent"
      type-id="vim.event.HostIpChangedEvent"
      vmodl-name="vim.event.HostIpChangedEvent"
      version-id-ref="vim.version.version2"
      base-type-id="vim.event.HostEvent"
      >
      <description-html>
         <![CDATA[This event records a change in host IP address.]]>
      </description-html>
            <property name="oldIP" type-id-ref="java.lang.String"
      vmodl-name="oldIP"
      >
      <description-html>
         <![CDATA[Old IP address of the host.]]>
      </description-html>
      </property>

            <property name="newIP" type-id-ref="java.lang.String"
      vmodl-name="newIP"
      >
      <description-html>
         <![CDATA[New IP address of the host.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostBlockHba"
      type-id="vim.host.BlockHba"
      vmodl-name="vim.host.BlockHba"
      version-id-ref="vim.version.version1"
      base-type-id="vim.host.HostBusAdapter"
      >
      <description-html>
         <![CDATA[This data object type describes the host bus adapter that
  provides block devices.]]>
      </description-html>
   </data-object>
   <data-object name="VirtualAHCIController"
      type-id="vim.vm.device.VirtualAHCIController"
      vmodl-name="vim.vm.device.VirtualAHCIController"
      version-id-ref="vim.version.version9"
      base-type-id="vim.vm.device.VirtualSATAController"
      >
      <description-html>
         <![CDATA[The VirtualAHCIController data object type represents
  an AHCI SATA controller in a virtual machine.]]>
      </description-html>
   </data-object>
   <data-object name="VirtualDiskRawDiskMappingVer1BackingInfo"
      type-id="vim.vm.device.VirtualDisk.RawDiskMappingVer1BackingInfo"
      vmodl-name="vim.vm.device.VirtualDisk.RawDiskMappingVer1BackingInfo"
      enclosing-type-id-ref="vim.vm.device.VirtualDisk"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.device.VirtualDevice.FileBackingInfo"
      >
      <description-html>
         <![CDATA[This data object type contains information about backing a virtual disk using a
  raw device mapping. Supported for ESX Server 2.5 and 3.x.]]>
      </description-html>
            <property name="lunUuid" type-id-ref="java.lang.String"
      vmodl-name="lunUuid"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Unique identifier of the LUN accessed by the raw disk mapping.]]>
      </description-html>
      </property>

            <property name="deviceName" type-id-ref="java.lang.String"
      vmodl-name="deviceName"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The host-specific device the LUN is being accessed through. If the
  target LUN is not available on the host then it is empty. For example, this
  could happen if it has accidentally been masked out.]]>
      </description-html>
      </property>

            <property name="compatibilityMode" type-id-ref="java.lang.String"
      vmodl-name="compatibilityMode"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The compatibility mode of the raw disk mapping (RDM). This must be specified
  when a new virtual disk with an RDM backing is created. On subsequent virtual
  machine reconfigurations, this property should be handled as follows,
  depending on the version of the host:
  <p>
  On ESX Server 2.5, the compatibility mode of an RDM backing is a
  characteristic of the virtual machine's configuration. When reconfiguring
  a virtual machine that currently uses a virtual disk backed by an RDM,
  the compatibility mode of that backing may be modified. When reconfiguring a
  virtual machine to add an existing virtual disk backed by an RDM, the
  compatibility mode of that backing may be specified. If left unspecified it
  defaults to "physicalMode".
  <p>
  On ESX Server 3.x, the compatibility mode of an RDM backing is a
  characteristic of the RDM itself. Once the RDM is created, its compatibility
  mode cannot be changed by reconfiguring the virtual machine. When
  reconfiguring a virtual machine to add an existing virtual disk backed by an
  RDM, the compatibility mode of that backing must be left unspecified.
  <p><br>See <a href="vim.vm.device.VirtualDiskOption.CompatibilityMode.html">VirtualDiskCompatibilityMode</a><br>]]>
      </description-html>
      </property>

            <property name="diskMode" type-id-ref="java.lang.String"
      vmodl-name="diskMode"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The disk mode. Valid values are:
  <ul>
  <li>vim.vm.device.VirtualDiskOption.DiskMode#persistent
  <li>vim.vm.device.VirtualDiskOption.DiskMode#independent_persistent
  <li>vim.vm.device.VirtualDiskOption.DiskMode#independent_nonpersistent
  <li>vim.vm.device.VirtualDiskOption.DiskMode#nonpersistent
  <li>vim.vm.device.VirtualDiskOption.DiskMode#undoable
  <li>vim.vm.device.VirtualDiskOption.DiskMode#append
  </ul>
  <p>
  Disk modes are only supported when the raw disk mapping is using virtual
  compatibility mode.<br>See <a href="vim.vm.device.VirtualDiskOption.DiskMode.html">VirtualDiskMode</a><br>]]>
      </description-html>
      </property>

            <property name="uuid" type-id-ref="java.lang.String"
      vmodl-name="uuid"
      version-id-ref="vim.version.version2"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Disk UUID for the virtual disk, if available. Disk UUID is not available if
  the raw disk mapping is in physical compatibility mode.]]>
      </description-html>
      </property>

            <property name="contentId" type-id-ref="java.lang.String"
      vmodl-name="contentId"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Content ID of the virtual disk file, if available.
 <p>
 A content ID indicates the logical contents of the disk backing and its parents.
 <p>
 This property is only guaranteed to be up to date if this disk backing is not
 currently being written to by any virtual machine.
 <p>
 The only supported operation is comparing if two content IDs are equal or not.
 The guarantee provided by the content ID is that if two disk backings have the
 same content ID and are not currently being written to, then reads issued from
 the guest operating system to those disk backings will return the same data.]]>
      </description-html>
      </property>

            <property name="changeId" type-id-ref="java.lang.String"
      vmodl-name="changeId"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The change ID of the virtual disk for the corresponding
 snapshot or virtual machine. This can be used to track
 incremental changes to a virtual disk. See
 <a href="vim.VirtualMachine.html#queryChangedDiskAreas">QueryChangedDiskAreas</a>.]]>
      </description-html>
      </property>

            <property name="parent" type-id-ref="vim.vm.device.VirtualDisk.RawDiskMappingVer1BackingInfo"
      vmodl-name="parent"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The parent of this virtual disk file, if this is a delta disk backing.
 This will be unset if this is not a delta disk backing.
 <p>
 A delta disk backing is a way to preserve a virtual disk backing
 at some point in time.  A delta disk backing is a file backing which in
 turn points to the original virtual disk backing (the parent).  After a delta
 disk backing is added, all writes go to the delta disk backing.  All reads
 first try the delta disk backing and then try the parent backing if needed.
 <p>
 A delta disk backing can be added to a disk either implicitly during
 snapshot operations, or explicitly during create or reconfigure of the virtual
 machine.
 <p>
 Note that the type of the backing is consistent throughout the chain; any new
 delta disk backing which is added is of the same type as the original disk .
 Also note that since the parent backing is not being written to,
 it is possible that the parent backing may be shared among multiple
 disks belonging to multiple virtual machines.
 <p>
 During virtual machine <a href="vim.Folder.html#createVm">CreateVM_Task</a> and
 <a href="vim.VirtualMachine.html#reconfigure">ReconfigVM_Task</a> this property is
 only checked if the <a href="vim.vm.device.VirtualDeviceSpec.html">VirtualDeviceConfigSpec</a> specifies
 an add operation with a
 create file operation.
 In this case, a new delta disk backing is created which points to the parent
 disk backing.  Only the <a href="vim.vm.device.VirtualDevice.FileBackingInfo.html#fileName">fileName</a>
 property is important; all other properties will be ignored.  The parent backing
 is assumed to exist and will not be recursively created.
 <p>
 Only raw disk mappings in virtual compatibility mode can have parents.
 <p>
 This property may only be set if
 <a href="vim.host.Capability.html#deltaDiskBackingsSupported">deltaDiskBackingsSupported</a>
 is true.]]>
      </description-html>
      </property>

            <property name="deltaDiskFormat" type-id-ref="java.lang.String"
      vmodl-name="deltaDiskFormat"
      version-id-ref="vim.version.version12"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The format of the delta disk.
  <p>
  This field is valid only for a delta disk.
  <p>
  See <a href="vim.vm.device.VirtualDisk.DeltaDiskFormat.html">DeltaDiskFormat</a> for the
  supported formats. The default value used for VM with hardware
  version 8 and lower is
  redoLogFormat.
  The default value used for VM with hardware
  version 9 and higher is
  seSparseFormat.
  <p>
  nativeFormat is not
  supported for bask disk of type RawDiskMappingVer1BackingInfo.]]>
      </description-html>
      </property>

            <property name="deltaGrainSize" type-id-ref="INT"
      vmodl-name="deltaGrainSize"
      version-id-ref="vim.version.version12"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Grain size in kB for a delta disk of format type seSparseFormat.  The default
 size is 4 kB.

 The grain size of
 <a href="vim.vm.device.VirtualDisk.SeSparseBackingInfo.html">Flex-SE</a> delta disks
 when the base disk is of type RawDiskMappingVer1BackingInfo.
 The <a href="vim.vm.device.VirtualDisk.DeltaDiskFormat.html">DeltaDiskFormat</a> must also
 be set to seSparseFormat.]]>
      </description-html>
      </property>

            <property name="sharing" type-id-ref="java.lang.String"
      vmodl-name="sharing"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The sharing mode of the virtual disk.
 See <a href="vim.vm.device.VirtualDisk.Sharing.html">VirtualDiskSharing</a>. The default value is
 no sharing.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="TaskReasonUser"
      type-id="vim.TaskReasonUser"
      vmodl-name="vim.TaskReasonUser"
      version-id-ref="vim.version.version1"
      base-type-id="vim.TaskReason"
      >
      <description-html>
         <![CDATA[Indicates that the task was queued by a specific user.]]>
      </description-html>
            <property name="userName" type-id-ref="java.lang.String"
      vmodl-name="userName"
      >
      <description-html>
         <![CDATA[Name of the user that queued the task.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="StorageDrsOptionSpec"
      type-id="vim.storageDrs.OptionSpec"
      vmodl-name="vim.storageDrs.OptionSpec"
      version-id-ref="vim.version.version7"
      base-type-id="vim.option.ArrayUpdateSpec"
      >
      <description-html>
         <![CDATA[An incremental update to the advance settings.
  <p>]]>
      </description-html>
            <property name="option" type-id-ref="vim.option.OptionValue"
      vmodl-name="option"
      is-optional="true"
      >
      </property>

   </data-object>
   <data-object name="DeviceBackedVirtualDiskSpec"
      type-id="vim.VirtualDiskManager.DeviceBackedVirtualDiskSpec"
      vmodl-name="vim.VirtualDiskManager.DeviceBackedVirtualDiskSpec"
      enclosing-type-id-ref="vim.VirtualDiskManager"
      version-id-ref="vim.version.version2"
      base-type-id="vim.VirtualDiskManager.VirtualDiskSpec"
      >
      <description-html>
         <![CDATA[Specification used to create a host device backed virtual disk]]>
      </description-html>
            <property name="device" type-id-ref="java.lang.String"
      vmodl-name="device"
      >
      <description-html>
         <![CDATA[The deviceName of the backing device<br>See <a href="vim.host.ScsiLun.html">ScsiLun</a><br>]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="IntOption"
      type-id="vim.option.IntOption"
      vmodl-name="vim.option.IntOption"
      version-id-ref="vim.version.version1"
      base-type-id="vim.option.OptionType"
      >
      <description-html>
         <![CDATA[The IntOption data object type is used to define the minimum, maximum,
 and default values for an integer option.]]>
      </description-html>
            <property name="min" type-id-ref="INT"
      vmodl-name="min"
      >
      <description-html>
         <![CDATA[The minimum value.]]>
      </description-html>
      </property>

            <property name="max" type-id-ref="INT"
      vmodl-name="max"
      >
      <description-html>
         <![CDATA[The maximum value.]]>
      </description-html>
      </property>

            <property name="defaultValue" type-id-ref="INT"
      vmodl-name="defaultValue"
      >
      <description-html>
         <![CDATA[The default value.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualVmxnet3Option"
      type-id="vim.vm.device.VirtualVmxnet3Option"
      vmodl-name="vim.vm.device.VirtualVmxnet3Option"
      version-id-ref="vim.version.version4"
      base-type-id="vim.vm.device.VirtualVmxnetOption"
      >
      <description-html>
         <![CDATA[The VirtualVmxnet3Option data object type contains the options for the
  <a href="vim.vm.device.VirtualVmxnet3.html">VirtualVmxnet3</a> data object type.]]>
      </description-html>
   </data-object>
   <data-object name="VslmCreateSpecBackingSpec"
      type-id="vim.vslm.CreateSpec.BackingSpec"
      vmodl-name="vim.vslm.CreateSpec.BackingSpec"
      enclosing-type-id-ref="vim.vslm.CreateSpec"
      version-id-ref="vim.version.version11"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Specification of the backing of a virtual
 storage object.]]>
      </description-html>
            <property name="datastore" type-id-ref="vim.Datastore"
      vmodl-name="datastore"
      >
      <description-html>
         <![CDATA[The datastore managed object where this backing is located.]]>
      </description-html>
      </property>

            <property name="path" type-id-ref="java.lang.String"
      vmodl-name="path"
      version-id-ref="vim.version.version12"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Relative location in the specified datastore where disk needs to be
 created. If not specified disk gets created at the defualt
 VStorageObject location on the specified datastore.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualMachineSnapshotTree"
      type-id="vim.vm.SnapshotTree"
      vmodl-name="vim.vm.SnapshotTree"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[SnapshotTree encapsulates all the read-only data produced by the snapshot.]]>
      </description-html>
            <property name="snapshot" type-id-ref="vim.vm.Snapshot"
      vmodl-name="snapshot"
      >
      <description-html>
         <![CDATA[The managed object for this snapshot.]]>
      </description-html>
      </property>

            <property name="vm" type-id-ref="vim.VirtualMachine"
      vmodl-name="vm"
      >
      <description-html>
         <![CDATA[The virtual machine for which the snapshot was taken.]]>
      </description-html>
      </property>

            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      >
      <description-html>
         <![CDATA[Name of the snapshot.]]>
      </description-html>
      </property>

            <property name="description" type-id-ref="java.lang.String"
      vmodl-name="description"
      >
      <description-html>
         <![CDATA[Description of the snapshot.]]>
      </description-html>
      </property>

            <property name="id" type-id-ref="INT"
      vmodl-name="id"
      version-id-ref="vim.version.version5"
      >
      <description-html>
         <![CDATA[The unique identifier that distinguishes this snapshot from
  other snapshots of the virtual machine.]]>
      </description-html>
      </property>

            <property name="createTime" type-id-ref="vmodl.DateTime"
      vmodl-name="createTime"
      >
      <description-html>
         <![CDATA[The date and time the snapshot was taken.]]>
      </description-html>
      </property>

            <property name="state" type-id-ref="vim.VirtualMachine.PowerState"
      vmodl-name="state"
      >
      <description-html>
         <![CDATA[The power state of the virtual machine when this snapshot was taken.]]>
      </description-html>
      </property>

            <property name="quiesced" type-id-ref="BOOLEAN"
      vmodl-name="quiesced"
      >
      <description-html>
         <![CDATA[Flag to indicate whether or not the snapshot was created with
  the "quiesce" option, ensuring a consistent state of the file system.]]>
      </description-html>
      </property>

            <property name="backupManifest" type-id-ref="java.lang.String"
      vmodl-name="backupManifest"
      version-id-ref="vim.version.version4"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The relative path from the snapshotDirectory pointing to the backup
  manifest. Available for certain quiesced snapshots only.]]>
      </description-html>
      </property>

            <property name="childSnapshotList" type-id-ref="vim.vm.SnapshotTree"
      vmodl-name="childSnapshotList"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The snapshot data for all snapshots for which this snapshot is the parent.]]>
      </description-html>
      </property>

            <property name="replaySupported" type-id-ref="BOOLEAN"
      vmodl-name="replaySupported"
      version-id-ref="vim.version.version5"
      is-deprecated="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Flag to indicate whether this snapshot is associated with a recording
 session on the virtual machine that can be replayed.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[as of vSphere API 6.0]]>
      </deprecated-html>
      </property>

   </data-object>
   <data-object name="FaultToleranceSecondaryConfigInfo"
      type-id="vim.vm.FaultToleranceSecondaryConfigInfo"
      vmodl-name="vim.vm.FaultToleranceSecondaryConfigInfo"
      version-id-ref="vim.version.version5"
      base-type-id="vim.vm.FaultToleranceConfigInfo"
      >
      <description-html>
         <![CDATA[FaultToleranceSecondaryConfigInfo is a data object type containing Fault Tolerance
  settings for a secondary virtual machine in a fault tolerance group]]>
      </description-html>
            <property name="primaryVM" type-id-ref="vim.VirtualMachine"
      vmodl-name="primaryVM"
      >
      </property>

   </data-object>
   <data-object name="ResourcePoolQuickStats"
      type-id="vim.ResourcePool.Summary.QuickStats"
      vmodl-name="vim.ResourcePool.Summary.QuickStats"
      enclosing-type-id-ref="vim.ResourcePool.Summary"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[A set of statistics that are typically updated with near real-time regularity.
  These statistics are aggregates of the corresponding statistics of all virtual
  machines in the given resource pool, and unless otherwise noted, only make sense
  when at least one virtual machine in the given resource pool is powered on.
  This data object type does not support notification, for scalability reasons.
  Therefore, changes in QuickStats do not generate property collector updates. To
  monitor statistics values, use the statistics and alarms modules instead.]]>
      </description-html>
            <property name="overallCpuUsage" type-id-ref="LONG"
      vmodl-name="overallCpuUsage"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Basic CPU performance statistics, in MHz.]]>
      </description-html>
      </property>

            <property name="overallCpuDemand" type-id-ref="LONG"
      vmodl-name="overallCpuDemand"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Basic CPU performance statistics, in MHz.]]>
      </description-html>
      </property>

            <property name="guestMemoryUsage" type-id-ref="LONG"
      vmodl-name="guestMemoryUsage"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Guest memory utilization statistics, in MB. This
  is also known as active guest memory. The number
  can be between 0 and the configured memory size of
  a virtual machine.]]>
      </description-html>
      </property>

            <property name="hostMemoryUsage" type-id-ref="LONG"
      vmodl-name="hostMemoryUsage"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Host memory utilization statistics, in MB. This
  is also known as consummed host memory. This is between 0 and
  the configured resource limit. Valid while a virtual machine is
  running. This includes the overhead memory of a virtual machine.]]>
      </description-html>
      </property>

            <property name="distributedCpuEntitlement" type-id-ref="LONG"
      vmodl-name="distributedCpuEntitlement"
      is-optional="true"
      >
      <description-html>
         <![CDATA[This is the amount of CPU resource, in MHz, that this VM is entitled to, as
  calculated by DRS. Valid only for a VM managed by DRS.]]>
      </description-html>
      </property>

            <property name="distributedMemoryEntitlement" type-id-ref="LONG"
      vmodl-name="distributedMemoryEntitlement"
      is-optional="true"
      >
      <description-html>
         <![CDATA[This is the amount of memory, in MB, that this VM is entitled to, as
  calculated by DRS. Valid only for a VM managed by DRS.]]>
      </description-html>
      </property>

            <property name="staticCpuEntitlement" type-id-ref="INT"
      vmodl-name="staticCpuEntitlement"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The static CPU resource entitlement for a virtual machine. This value is
  calculated based on this virtual machine's resource reservations, shares
  and limit, and doesn't take into account current usage. This is the worst
  case CPU allocation for this virtual machine, that is, the amount of CPU
  resource this virtual machine would receive if all virtual machines running
  in the cluster went to maximum consumption. Units are MHz.]]>
      </description-html>
      </property>

            <property name="staticMemoryEntitlement" type-id-ref="INT"
      vmodl-name="staticMemoryEntitlement"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The static memory resource entitlement for a virtual machine. This value is
  calculated based on this virtual machine's resource reservations, shares
  and limit, and doesn't take into account current usage. This is the worst
  case memory allocation for this virtual machine, that is, the amount of
  memory this virtual machine would receive if all virtual machines running
  in the cluster went to maximum consumption. Units are MB.]]>
      </description-html>
      </property>

            <property name="privateMemory" type-id-ref="LONG"
      vmodl-name="privateMemory"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The portion of memory, in MB, that is granted to a virtual machine from
  non-shared host memory.]]>
      </description-html>
      </property>

            <property name="sharedMemory" type-id-ref="LONG"
      vmodl-name="sharedMemory"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The portion of memory, in MB, that is granted to a virtual machine from host
  memory that is shared between VMs.]]>
      </description-html>
      </property>

            <property name="swappedMemory" type-id-ref="LONG"
      vmodl-name="swappedMemory"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The portion of memory, in MB, that is granted to a virtual machine from the
  host's swap space. This is a sign that there is memory pressure on the host.]]>
      </description-html>
      </property>

            <property name="balloonedMemory" type-id-ref="LONG"
      vmodl-name="balloonedMemory"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The size of the balloon driver in a virtual machine, in MB. The host will
  inflate the balloon driver to reclaim physical memory from a virtual machine.
  This is a sign that there is memory pressure on the host.]]>
      </description-html>
      </property>

            <property name="overheadMemory" type-id-ref="LONG"
      vmodl-name="overheadMemory"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The amount of memory resource (in MB) that will be used by
  a virtual machine above its guest memory requirements.
  This value is set if and only if a virtual machine is registered
  on a host that supports memory resource allocation features.

  For powered off VMs, this is the minimum overhead required to
  power on the VM on the registered host.

  For powered on VMs, this is the current overhead reservation, a
  value which is almost always larger than the minimum overhead, and
  which grows with time.<br>See <a href="vim.HostSystem.html#queryOverheadEx">QueryMemoryOverheadEx</a><br>]]>
      </description-html>
      </property>

            <property name="consumedOverheadMemory" type-id-ref="LONG"
      vmodl-name="consumedOverheadMemory"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The amount of overhead memory, in MB, currently being consumed to run a VM.
  This value is limited by the overhead memory reservation for a VM, stored
  in <a href="vim.ResourcePool.Summary.QuickStats.html#overheadMemory">overheadMemory</a>.]]>
      </description-html>
      </property>

            <property name="compressedMemory" type-id-ref="LONG"
      vmodl-name="compressedMemory"
      version-id-ref="vim.version.version6"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The amount of compressed memory currently consumed by VM, in KB.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualPrecisionClockSystemClockBackingInfo"
      type-id="vim.vm.device.VirtualPrecisionClock.SystemClockBackingInfo"
      vmodl-name="vim.vm.device.VirtualPrecisionClock.SystemClockBackingInfo"
      enclosing-type-id-ref="vim.vm.device.VirtualPrecisionClock"
      version-id-ref="vim.version.v7_0"
      base-type-id="vim.vm.device.VirtualDevice.BackingInfo"
      >
      <description-html>
         <![CDATA[The <a href="vim.vm.device.VirtualPrecisionClock.SystemClockBackingInfo.html">VirtualPrecisionClockSystemClockBackingInfo</a>
  data object contains information about using host system clock as the
  backing reference clock for this virtual device.]]>
      </description-html>
            <property name="protocol" type-id-ref="java.lang.String"
      vmodl-name="protocol"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The time synchronization protocol used to discipline system clock.
  See <a href="vim.host.DateTimeInfo.Protocol.html">HostDateTimeInfoProtocol</a> for valid values.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="IpPoolIpPoolConfigInfo"
      type-id="vim.vApp.IpPool.IpPoolConfigInfo"
      vmodl-name="vim.vApp.IpPool.IpPoolConfigInfo"
      enclosing-type-id-ref="vim.vApp.IpPool"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Specifications of either IPv4 or IPv6 configuration to be used
  on this network. This is a part of network configuration.
  <p>
  IPv4 addresses are in dot-decimal notation, e.g.: 192.0.2.235
  <p>
  IPv6 addresses are in colon-hexadecimal notation,
  e.g.: 2001:0db8:85a3::0370:7334]]>
      </description-html>
            <property name="subnetAddress" type-id-ref="java.lang.String"
      vmodl-name="subnetAddress"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Address of the subnet.
 <p>
 For example:
 <ul>
 <li>IPv4: 192.168.5.0</li>
 <li>IPv6: 2001:0db8:85a3::</li>
 </ul>]]>
      </description-html>
      </property>

            <property name="netmask" type-id-ref="java.lang.String"
      vmodl-name="netmask"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Netmask
 <p>
 For example:
 <ul>
 <li>IPv4: 255.255.255.0</li>
 <li>IPv6: ffff:ffff:ffff::</li>
 </ul>]]>
      </description-html>
      </property>

            <property name="gateway" type-id-ref="java.lang.String"
      vmodl-name="gateway"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Gateway. This can be an empty string - if no gateway is configured.
 <p>
 Examples:
 <ul>
 <li>IPv4: 192.168.5.1</li>
 <li>IPv6: 2001:0db8:85a3::1</li>
 </ul>]]>
      </description-html>
      </property>

            <property name="range" type-id-ref="java.lang.String"
      vmodl-name="range"
      is-optional="true"
      >
      <description-html>
         <![CDATA[IP range. This is specified as a set of ranges separated with commas.
  One range is given by a start address, a hash (#), and the length
  of the range.
  <p>
  For example:
  <ul>
  <li>192.0.2.235 # 20 is the IPv4 range from 192.0.2.235 to 192.0.2.254</li>
  <li>2001::7334 # 20 is the IPv6 range from 2001::7334 to 2001::7347</li>
  </ul>]]>
      </description-html>
      </property>

            <property name="dns" type-id-ref="java.lang.String"
      vmodl-name="dns"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[DNS servers
 <p>
 For example:
 <ul>
 <li>IPv4: ["10.20.0.1", "10.20.0.2"]</li>
 <li>IPv6: ["2001:0db8:85a3::0370:7334", "2001:0db8:85a3::0370:7335"]</li>
 </ul>
 <p>
 If an empty list is passed, the existing value remains unchanged. To clear this
 list, pass an array containing the empty string as it's only element.]]>
      </description-html>
      </property>

            <property name="dhcpServerAvailable" type-id-ref="BOOLEAN"
      vmodl-name="dhcpServerAvailable"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Whether a DHCP server is available on this network.]]>
      </description-html>
      </property>

            <property name="ipPoolEnabled" type-id-ref="BOOLEAN"
      vmodl-name="ipPoolEnabled"
      is-optional="true"
      >
      <description-html>
         <![CDATA[IP addresses can only be allocated from the range if the IP pool is
  enabled.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostInternetScsiHbaIPCapabilities"
      type-id="vim.host.InternetScsiHba.IPCapabilities"
      vmodl-name="vim.host.InternetScsiHba.IPCapabilities"
      enclosing-type-id-ref="vim.host.InternetScsiHba"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The IP Capabilities for the host bus adapter]]>
      </description-html>
            <property name="addressSettable" type-id-ref="BOOLEAN"
      vmodl-name="addressSettable"
      >
      <description-html>
         <![CDATA[True if the host bus adapter supports setting its IPv4 address.]]>
      </description-html>
      </property>

            <property name="ipConfigurationMethodSettable" type-id-ref="BOOLEAN"
      vmodl-name="ipConfigurationMethodSettable"
      >
      <description-html>
         <![CDATA[True if the host bus adapter supports DHCPv4.]]>
      </description-html>
      </property>

            <property name="subnetMaskSettable" type-id-ref="BOOLEAN"
      vmodl-name="subnetMaskSettable"
      >
      <description-html>
         <![CDATA[True if the host bus adapter supports setting its IPv4 subnet mask.]]>
      </description-html>
      </property>

            <property name="defaultGatewaySettable" type-id-ref="BOOLEAN"
      vmodl-name="defaultGatewaySettable"
      >
      <description-html>
         <![CDATA[True if the host bus adapter supports setting its IPv4 gateway.]]>
      </description-html>
      </property>

            <property name="primaryDnsServerAddressSettable" type-id-ref="BOOLEAN"
      vmodl-name="primaryDnsServerAddressSettable"
      >
      <description-html>
         <![CDATA[True if the host bus adapter supports setting its primary DNS.]]>
      </description-html>
      </property>

            <property name="alternateDnsServerAddressSettable" type-id-ref="BOOLEAN"
      vmodl-name="alternateDnsServerAddressSettable"
      >
      <description-html>
         <![CDATA[True if the host bus adapter supports setting its secondary DNS.]]>
      </description-html>
      </property>

            <property name="ipv6Supported" type-id-ref="BOOLEAN"
      vmodl-name="ipv6Supported"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[True if the host bus adapter supports the use of IPv6 addresses]]>
      </description-html>
      </property>

            <property name="arpRedirectSettable" type-id-ref="BOOLEAN"
      vmodl-name="arpRedirectSettable"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[True if the host bus adapter supports setting its ARP Redirect value]]>
      </description-html>
      </property>

            <property name="mtuSettable" type-id-ref="BOOLEAN"
      vmodl-name="mtuSettable"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[True if the host bus adapter supports setting its MTU, (for Jumbo
  Frames, etc)]]>
      </description-html>
      </property>

            <property name="hostNameAsTargetAddress" type-id-ref="BOOLEAN"
      vmodl-name="hostNameAsTargetAddress"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[True if the discovery and static targets can be configured with
  a host name as opposed to an IP address.]]>
      </description-html>
      </property>

            <property name="nameAliasSettable" type-id-ref="BOOLEAN"
      vmodl-name="nameAliasSettable"
      version-id-ref="vim.version.version6"
      is-optional="true"
      >
      <description-html>
         <![CDATA[True if the host bus adapter supports setting its name and alias]]>
      </description-html>
      </property>

            <property name="ipv4EnableSettable" type-id-ref="BOOLEAN"
      vmodl-name="ipv4EnableSettable"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[True if IPv4 addresssing can be enabled or disabled on the host bus adapter.]]>
      </description-html>
      </property>

            <property name="ipv6EnableSettable" type-id-ref="BOOLEAN"
      vmodl-name="ipv6EnableSettable"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[True if IPv6 addresssing can be enabled or disabled on the host bus adapter.]]>
      </description-html>
      </property>

            <property name="ipv6PrefixLengthSettable" type-id-ref="BOOLEAN"
      vmodl-name="ipv6PrefixLengthSettable"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[True if the Host bus adapter supports setting IPv6 Prefix Length.]]>
      </description-html>
      </property>

            <property name="ipv6PrefixLength" type-id-ref="INT"
      vmodl-name="ipv6PrefixLength"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Provides the value that user should be using if host bus adapter
 does not support changing of prefix length.]]>
      </description-html>
      </property>

            <property name="ipv6DhcpConfigurationSettable" type-id-ref="BOOLEAN"
      vmodl-name="ipv6DhcpConfigurationSettable"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[True if the Host bus adapter supports DHCPv6 configuration.]]>
      </description-html>
      </property>

            <property name="ipv6LinkLocalAutoConfigurationSettable" type-id-ref="BOOLEAN"
      vmodl-name="ipv6LinkLocalAutoConfigurationSettable"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[True if the Host bus adapter supports setting configuration of its IPv6 link local address
 User can specify link local static address if link local auto configuration is set to false.
 link local address usually starts with fe80: and has prefix 64.]]>
      </description-html>
      </property>

            <property name="ipv6RouterAdvertisementConfigurationSettable" type-id-ref="BOOLEAN"
      vmodl-name="ipv6RouterAdvertisementConfigurationSettable"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[True if the Host bus adapter supports router advertisement configuration method.

 Note: Currently Qlogic adapter does not support plumbing of any user specified
       static address if router advertisement method is enabled.]]>
      </description-html>
      </property>

            <property name="ipv6DefaultGatewaySettable" type-id-ref="BOOLEAN"
      vmodl-name="ipv6DefaultGatewaySettable"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[True if the Host bus adapter supports setting its IPv6 default gateway.]]>
      </description-html>
      </property>

            <property name="ipv6MaxStaticAddressesSupported" type-id-ref="INT"
      vmodl-name="ipv6MaxStaticAddressesSupported"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The maximum number of supported IPv6 static addresses on the
 host bus adapter that user can set.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="CryptoManagerKmipCryptoKeyStatus"
      type-id="vim.encryption.CryptoManagerKmip.CryptoKeyStatus"
      vmodl-name="vim.encryption.CryptoManagerKmip.CryptoKeyStatus"
      enclosing-type-id-ref="vim.encryption.CryptoManagerKmip"
      version-id-ref="vim.version.version14"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Status of a Crypto key]]>
      </description-html>
            <property name="keyId" type-id-ref="vim.encryption.CryptoKeyId"
      vmodl-name="keyId"
      >
      <description-html>
         <![CDATA[Crypto key Id]]>
      </description-html>
      </property>

            <property name="keyAvailable" type-id-ref="BOOLEAN"
      vmodl-name="keyAvailable"
      is-optional="true"
      >
      <description-html>
         <![CDATA[If the key is available for crypto operation]]>
      </description-html>
      </property>

            <property name="reason" type-id-ref="java.lang.String"
      vmodl-name="reason"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The reason for key not available, valid when keyAvailable is false.
 KeyUnavailableReason lists the set of supported values.]]>
      </description-html>
      </property>

            <property name="encryptedVMs" type-id-ref="vim.VirtualMachine"
      vmodl-name="encryptedVMs"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The list of VMs which use that key]]>
      </description-html>
      </property>

            <property name="affectedHosts" type-id-ref="vim.HostSystem"
      vmodl-name="affectedHosts"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The lists of hosts which use that key as host key]]>
      </description-html>
      </property>

            <property name="referencedByTags" type-id-ref="java.lang.String"
      vmodl-name="referencedByTags"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The identifier list for the 3rd party who are using the key]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.encryption.CryptoManagerKmip.CryptoKeyStatus.KeyUnavailableReason</nested-type-id-ref>
   </data-object>
   <data-object name="DrsEnteredStandbyModeEvent"
      type-id="vim.event.DrsEnteredStandbyModeEvent"
      vmodl-name="vim.event.DrsEnteredStandbyModeEvent"
      version-id-ref="vim.version.version2"
      base-type-id="vim.event.EnteredStandbyModeEvent"
      >
      <description-html>
         <![CDATA[This event records that the host has successfully entered standby mode initiated by
  Distributed Power Management. A host in this mode has no running virtual
  machines and no provisioning operations are occurring.]]>
      </description-html>
   </data-object>
   <data-object name="StorageDrsVmConfigInfo"
      type-id="vim.storageDrs.VmConfigInfo"
      vmodl-name="vim.storageDrs.VmConfigInfo"
      version-id-ref="vim.version.version7"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Storage DRS configuration for a single virtual machine. This makes it
  possible to override the default behavior for an individual virtual machine.
  <p>]]>
      </description-html>
            <property name="vm" type-id-ref="vim.VirtualMachine"
      vmodl-name="vm"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Reference to the virtual machine. Can be NULL during initial placement.]]>
      </description-html>
      </property>

            <property name="enabled" type-id-ref="BOOLEAN"
      vmodl-name="enabled"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Flag to indicate whether or not VirtualCenter is allowed to perform any
  storage migration or initial placement recommendations for this virtual
  machine on the pod <a href="vim.StoragePod.html">StoragePod</a>.
  If this flag is false, the virtual machine is effectively excluded from
  storage DRS.
  <p>
  If no individual DRS specification exists for a virtual machine,
  this property defaults to true.]]>
      </description-html>
      </property>

            <property name="behavior" type-id-ref="java.lang.String"
      vmodl-name="behavior"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Specifies the particular storage DRS behavior for this virtual machine.

  For supported values, see <a href="vim.storageDrs.PodConfigInfo.Behavior.html">StorageDrsPodConfigInfoBehavior</a>.]]>
      </description-html>
      </property>

            <property name="intraVmAffinity" type-id-ref="BOOLEAN"
      vmodl-name="intraVmAffinity"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Specifies whether or not to have the affinity rule for the virtual disks
  of this virtual machine. If not set, the default value is derived from
  the pod-wide default <a href="vim.storageDrs.PodConfigInfo.html#defaultIntraVmAffinity">defaultIntraVmAffinity</a>.]]>
      </description-html>
      </property>

            <property name="intraVmAntiAffinity" type-id-ref="vim.storageDrs.VirtualDiskAntiAffinityRuleSpec"
      vmodl-name="intraVmAntiAffinity"
      is-deprecated="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Specifies the disks for this virtual machine that should be placed
  on different datastores. A VM cannot have both an affinity and an
  anti-affinity rule at the same time. Virtual machine disks that are
  not in this rule are unconstrained and can be placed either on the
  same datastore or on a different datastore as other disks from this
  virtual machine.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 7.0]]>
      </deprecated-html>
      </property>

            <property name="virtualDiskRules" type-id-ref="vim.storageDrs.VirtualDiskRuleSpec"
      vmodl-name="virtualDiskRules"
      version-id-ref="vim.version.version12"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of the virtual disk rules that can be overridden/created.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VmSuspendedEvent"
      type-id="vim.event.VmSuspendedEvent"
      vmodl-name="vim.event.VmSuspendedEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.VmEvent"
      >
      <description-html>
         <![CDATA[This event records when a virtual machine finished suspending.]]>
      </description-html>
   </data-object>
   <data-object name="VasaProviderContainerSpec"
      type-id="vim.VasaVvolManager.VasaProviderContainerSpec"
      vmodl-name="vim.VasaVvolManager.VasaProviderContainerSpec"
      enclosing-type-id-ref="vim.VasaVvolManager"
      version-id-ref="vim.version.version10"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Represents a VASA provider and its related datastores.]]>
      </description-html>
            <property name="vasaProviderInfo" type-id-ref="vim.VimVasaProviderInfo"
      vmodl-name="vasaProviderInfo"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[VASA Providers that manage this volume]]>
      </description-html>
      </property>

            <property name="scId" type-id-ref="java.lang.String"
      vmodl-name="scId"
      >
      <description-html>
         <![CDATA[Vendor specified Storage Container ID]]>
      </description-html>
      </property>

            <property name="deleted" type-id-ref="BOOLEAN"
      vmodl-name="deleted"
      >
      <description-html>
         <![CDATA[Indicates whether the container got deleted]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="StaticRouteProfile"
      type-id="vim.profile.host.StaticRouteProfile"
      vmodl-name="vim.profile.host.StaticRouteProfile"
      version-id-ref="vim.version.version5"
      base-type-id="vim.profile.ApplyProfile"
      >
      <description-html>
         <![CDATA[The <a href="vim.profile.host.StaticRouteProfile.html">StaticRouteProfile</a> data object represents a single static IP route.
  The <a href="vim.profile.ApplyProfile.html#policy">policy</a> property contains
  data values for static route configuration.]]>
      </description-html>
            <property name="key" type-id-ref="java.lang.String"
      vmodl-name="key"
      version-id-ref="vim.version.version8"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Linkable identifier.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ProfileProfileStructureProperty"
      type-id="vim.profile.ProfileStructureProperty"
      vmodl-name="vim.profile.ProfileStructureProperty"
      version-id-ref="vim.version.version7"
      base-type-id="vmodl.DynamicData"
      >
            <property name="propertyName" type-id-ref="java.lang.String"
      vmodl-name="propertyName"
      >
      <description-html>
         <![CDATA[Name of the property where this ProfileStructureProperty is being used]]>
      </description-html>
      </property>

            <property name="array" type-id-ref="BOOLEAN"
      vmodl-name="array"
      >
      <description-html>
         <![CDATA[Flag indicating if this property is an Array of profiles]]>
      </description-html>
      </property>

            <property name="element" type-id-ref="vim.profile.ProfileStructure"
      vmodl-name="element"
      >
      <description-html>
         <![CDATA[Details about the profile contained within this property]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DvsPortRuntimeChangeEvent"
      type-id="vim.event.DvsPortRuntimeChangeEvent"
      vmodl-name="vim.event.DvsPortRuntimeChangeEvent"
      version-id-ref="vim.version.version8"
      base-type-id="vim.event.DvsEvent"
      >
      <description-html>
         <![CDATA[A port of which runtime information is changed in the vNetwork Distributed
  Switch.]]>
      </description-html>
            <property name="portKey" type-id-ref="java.lang.String"
      vmodl-name="portKey"
      >
      <description-html>
         <![CDATA[The port key.]]>
      </description-html>
      </property>

            <property name="runtimeInfo" type-id-ref="vim.dvs.DistributedVirtualPort.RuntimeInfo"
      vmodl-name="runtimeInfo"
      >
      <description-html>
         <![CDATA[The new port runtime information.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualEnsoniq1371"
      type-id="vim.vm.device.VirtualEnsoniq1371"
      vmodl-name="vim.vm.device.VirtualEnsoniq1371"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.device.VirtualSoundCard"
      >
      <description-html>
         <![CDATA[The VirtualEnsoniq1371 data object type represents an Ensoniq 1371
 sound card in a virtual machine.]]>
      </description-html>
   </data-object>
   <data-object name="PolicyOption"
      type-id="vim.profile.PolicyOption"
      vmodl-name="vim.profile.PolicyOption"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The <a href="vim.profile.PolicyOption.html">PolicyOption</a> data object represents one or more configuration
  values. A policy option is one of the configuration options from the
  <a href="vim.profile.PolicyMetadata.html">ProfilePolicyMetadata</a>.<a href="vim.profile.PolicyMetadata.html#possibleOption">possibleOption</a>
  list.]]>
      </description-html>
            <property name="id" type-id-ref="java.lang.String"
      vmodl-name="id"
      >
      <description-html>
         <![CDATA[Identifier for the policy option. This value matches one of the
  keys from the list of possible options in the policy metadata
  (<a href="vim.profile.PolicyMetadata.html">ProfilePolicyMetadata</a>.<a href="vim.profile.PolicyMetadata.html#possibleOption">possibleOption</a>[].<a href="vim.profile.PolicyOptionMetadata.html#id">id</a>.<a href="vim.ElementDescription.html#key">key</a>).]]>
      </description-html>
      </property>

            <property name="parameter" type-id-ref="vmodl.KeyAnyValue"
      vmodl-name="parameter"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Parameters for the policy option.
  This list must include all parameters that are not marked as optional
  in the policy option metadata parameter list
  (<a href="vim.profile.PolicyMetadata.html">ProfilePolicyMetadata</a>.<a href="vim.profile.PolicyMetadata.html#possibleOption">possibleOption</a>[].<a href="vim.profile.PolicyOptionMetadata.html#parameter">parameter</a>[].<a href="vim.profile.ParameterMetadata.html#optional">optional</a>).]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="MtuMatchEvent"
      type-id="vim.event.MtuMatchEvent"
      vmodl-name="vim.event.MtuMatchEvent"
      version-id-ref="vim.version.version8"
      base-type-id="vim.event.DvsHealthStatusChangeEvent"
      >
      <description-html>
         <![CDATA[The value of MTU configured in the vSphere Distributed Switch
  matches physical switch.]]>
      </description-html>
   </data-object>
   <data-object name="PhysicalNicCdpDeviceCapability"
      type-id="vim.host.PhysicalNic.CdpDeviceCapability"
      vmodl-name="vim.host.PhysicalNic.CdpDeviceCapability"
      enclosing-type-id-ref="vim.host.PhysicalNic"
      version-id-ref="vim.version.version2"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The capability of the CDP-awared device that connects to a Physical NIC.
  <a href="vim.host.PhysicalNic.CdpInfo.html">PhysicalNicCdpInfo</a>]]>
      </description-html>
            <property name="router" type-id-ref="BOOLEAN"
      vmodl-name="router"
      >
      <description-html>
         <![CDATA[The CDP-awared device has the capability of a routing for
  at least one network layer protocol]]>
      </description-html>
      </property>

            <property name="transparentBridge" type-id-ref="BOOLEAN"
      vmodl-name="transparentBridge"
      >
      <description-html>
         <![CDATA[The CDP-awared device has the capability of transparent
  bridging]]>
      </description-html>
      </property>

            <property name="sourceRouteBridge" type-id-ref="BOOLEAN"
      vmodl-name="sourceRouteBridge"
      >
      <description-html>
         <![CDATA[The CDP-awared device has the capability of source-route
  bridging]]>
      </description-html>
      </property>

            <property name="networkSwitch" type-id-ref="BOOLEAN"
      vmodl-name="networkSwitch"
      >
      <description-html>
         <![CDATA[The CDP-awared device has the capability of switching. The
  difference between this capability and transparentBridge is
  that a switch does not run the Spanning-Tree Protocol. This
  device is assumed to be deployed in a physical loop-free topology.]]>
      </description-html>
      </property>

            <property name="host" type-id-ref="BOOLEAN"
      vmodl-name="host"
      >
      <description-html>
         <![CDATA[The CDP-awared device has the capability of a host, which
  Sends and receives packets for at least one network layer protocol.]]>
      </description-html>
      </property>

            <property name="igmpEnabled" type-id-ref="BOOLEAN"
      vmodl-name="igmpEnabled"
      >
      <description-html>
         <![CDATA[The CDP-awared device is IGMP-enabled, which does not forward IGMP
  Report packets on nonrouter ports.]]>
      </description-html>
      </property>

            <property name="repeater" type-id-ref="BOOLEAN"
      vmodl-name="repeater"
      >
      <description-html>
         <![CDATA[The CDP-awared device has the capability of a repeater]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="MetricAlarmExpression"
      type-id="vim.alarm.MetricAlarmExpression"
      vmodl-name="vim.alarm.MetricAlarmExpression"
      version-id-ref="vim.version.version1"
      base-type-id="vim.alarm.AlarmExpression"
      >
      <description-html>
         <![CDATA[An alarm expression that uses a metric as the condition that triggers an
  alarm. Base type.
  <p>
  There are two alarm operands: yellow and red. At least one of them
  must be set. The value of the alarm expression is determined as follows:
  <ul>
  <li>If the host is not connected, the host metric expression is gray.
  <li>If the vm is not connected, the vm metric expression is gray.
  <li>If red is set but yellow is not, the expression is red when
  the metric is over (isAbove operator) or under (isBelow operator)
  the red value. Otherwise, the expression is green.
  <li>If yellow is set but red is not, the expression is yellow when
  the metric is over (isAbove) or under (isBelow)
  the yellow value. Otherwise, the expression is green.
  <li>If both yellow and red are set, the value of the expression is red
  when the metric is over (isAbove) or under (isBelow) the red value.
  Otherwise, the expression is yellow when the metric is over (isAbove)
  or under (isBelow) the yellow value. Otherwise, the expression is green.
  </ul>]]>
      </description-html>
            <property name="operator" type-id-ref="vim.alarm.MetricAlarmExpression.MetricOperator"
      vmodl-name="operator"
      >
      <description-html>
         <![CDATA[The operation to be tested on the metric.]]>
      </description-html>
      </property>

            <property name="type" type-id-ref="vmodl.TypeName"
      vmodl-name="type"
      >
      <description-html>
         <![CDATA[Name of the object type containing the property.]]>
      </description-html>
      </property>

            <property name="metric" type-id-ref="vim.PerformanceManager.MetricId"
      vmodl-name="metric"
      >
      <description-html>
         <![CDATA[The instance of the metric.]]>
      </description-html>
      </property>

            <property name="yellow" type-id-ref="INT"
      vmodl-name="yellow"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Whether or not to test for a yellow condition.
  If not set, do not calculate yellow status.
  If set, it contains the threshold value that triggers yellow status.]]>
      </description-html>
      </property>

            <property name="yellowInterval" type-id-ref="INT"
      vmodl-name="yellowInterval"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Time interval in seconds for which the yellow condition must be true
 before the yellow status is triggered. If unset, the yellow status is
 triggered immediately when the yellow condition becomes true.]]>
      </description-html>
      </property>

            <property name="red" type-id-ref="INT"
      vmodl-name="red"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Whether or not to test for a red condition.
  If not set, do not calculate red status.
  If set, it contains the threshold value that triggers red status.]]>
      </description-html>
      </property>

            <property name="redInterval" type-id-ref="INT"
      vmodl-name="redInterval"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Time interval in seconds for which the red condition must be true
 before the red status is triggered. If unset, the red status is
 triggered immediately when the red condition becomes true.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.alarm.MetricAlarmExpression.MetricOperator</nested-type-id-ref>
   </data-object>
   <data-object name="DvsPortExitedPassthruEvent"
      type-id="vim.event.DvsPortExitedPassthruEvent"
      vmodl-name="vim.event.DvsPortExitedPassthruEvent"
      version-id-ref="vim.version.version6"
      base-type-id="vim.event.DvsEvent"
      >
      <description-html>
         <![CDATA[A port has exited passthrough mode on the distributed virtual switch.]]>
      </description-html>
            <property name="portKey" type-id-ref="java.lang.String"
      vmodl-name="portKey"
      >
      <description-html>
         <![CDATA[The port key.]]>
      </description-html>
      </property>

            <property name="runtimeInfo" type-id-ref="vim.dvs.DistributedVirtualPort.RuntimeInfo"
      vmodl-name="runtimeInfo"
      version-id-ref="vim.version.version8"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The port runtime information.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="IpAddress"
      type-id="vim.IpAddress"
      vmodl-name="vim.IpAddress"
      version-id-ref="vim.version.version9"
      base-type-id="vim.NegatableExpression"
      >
      <description-html>
         <![CDATA[This is the abstract base class for IP address.]]>
      </description-html>
   </data-object>
   <data-object name="HostUpgradeFailedEvent"
      type-id="vim.event.HostUpgradeFailedEvent"
      vmodl-name="vim.event.HostUpgradeFailedEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.HostEvent"
      >
      <description-html>
         <![CDATA[This event records a failure to connect to a host
  due to an installation or upgrade issue.]]>
      </description-html>
   </data-object>
   <data-object name="HostSpecificationUpdateEvent"
      type-id="vim.event.HostSpecificationUpdateEvent"
      vmodl-name="vim.event.HostSpecificationUpdateEvent"
      version-id-ref="vim.version.version11"
      base-type-id="vim.event.HostEvent"
      >
      <description-html>
         <![CDATA[This event suggests that update the host specification with the
 encapsulated copy.]]>
      </description-html>
            <property name="hostSpec" type-id-ref="vim.profile.host.HostSpecification"
      vmodl-name="hostSpec"
      >
      </property>

   </data-object>
   <data-object name="DvsEventArgument"
      type-id="vim.event.DvsEventArgument"
      vmodl-name="vim.event.DvsEventArgument"
      version-id-ref="vim.version.version5"
      base-type-id="vim.event.EntityEventArgument"
      >
      <description-html>
         <![CDATA[The event argument is a Host object.]]>
      </description-html>
            <property name="dvs" type-id-ref="vim.DistributedVirtualSwitch"
      vmodl-name="dvs"
      >
      <description-html>
         <![CDATA[The distributed virtual switch object.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="EventFilterSpecByUsername"
      type-id="vim.event.EventFilterSpec.ByUsername"
      vmodl-name="vim.event.EventFilterSpec.ByUsername"
      enclosing-type-id-ref="vim.event.EventFilterSpec"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This option specifies users used to filter event history.]]>
      </description-html>
            <property name="systemUser" type-id-ref="BOOLEAN"
      vmodl-name="systemUser"
      >
      <description-html>
         <![CDATA[filter by system user
  true for system user event]]>
      </description-html>
      </property>

            <property name="userList" type-id-ref="java.lang.String"
      vmodl-name="userList"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[all interested username list
  If this property is not set, then all regular user events are
  collected]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VVolHostPE"
      type-id="vim.host.VvolVolume.HostProtocolEndpoint"
      vmodl-name="vim.host.VvolVolume.HostProtocolEndpoint"
      enclosing-type-id-ref="vim.host.VvolVolume"
      version-id-ref="vim.version.version10"
      base-type-id="vmodl.DynamicData"
      >
            <property name="key" type-id-ref="vim.HostSystem"
      vmodl-name="key"
      >
      <description-html>
         <![CDATA[The host associated with this volume.]]>
      </description-html>
      </property>

            <property name="protocolEndpoint" type-id-ref="vim.host.ProtocolEndpoint"
      vmodl-name="protocolEndpoint"
      is-array="true"
      >
      <description-html>
         <![CDATA[Host-specific information about the ProtocolEndpoint.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualMachineMessage"
      type-id="vim.vm.Message"
      vmodl-name="vim.vm.Message"
      version-id-ref="vim.version.version2"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Message data which is intended to be displayed according
 to the locale of a client.

 <p>A <a href="vim.vm.Message.html">VirtualMachineMessage</a> contains both a formatted, localized version of the
 text and the data needed to perform localization in conjunction
 with localization catalogs.</p>

 <p>Clients of the VIM API may use
 <a href="vim.SessionManager.html">SessionManager</a>.<a href="vim.SessionManager.html#setLocale">SetLocale</a>
 to cause the server to emit localized <a href="vim.vm.Message.html#text">text</a>, or may perform
 client-side localization based on message catalogs provided by the
 <a href="vim.LocalizationManager.html">LocalizationManager</a>.</p>

 <p>Message variables are always integers, e.g. {1} and {2}, which are
 1-based indexes into <a href="vim.vm.Message.html#argument">argument</a>.</p>

 <ul>
 <li>The corresponding argument may be a recursive lookup:
   <ul>
     <li><a href="vim.vm.Message.html#argument">argument</a> = ["button.cancel", "msg.revert"]</li>
     <li>CATALOG(locmsg, <a href="vim.vm.Message.html#id">id</a>) = "Select '{1}' to {2}"</li>
     <li>CATALOG(locmsg, button.cancel) = "Cancel"</li>
     <li>CATALOG(locmsg, msg.revert) = "revert"</li>
     <li>==&gt; <a href="vim.vm.Message.html#text">text</a> = "Select 'Cancel' to revert"</li>
   </ul>
 </li>
 <li>If the recursive lookup fails, the argument is a plain string.
   <ul>
     <li><a href="vim.vm.Message.html#argument">argument</a> = ["127.0.0.1"]</li>
     <li>CATALOG(locmsg, <a href="vim.vm.Message.html#id">id</a>) = "IP address is {1}"</li>
     <li>==&gt; <a href="vim.vm.Message.html#text">text</a> "IP address is 127.0.0.1"</li>
   </ul>
 </li>
 </ul><br>See <a href="vim.LocalizationManager.html">LocalizationManager</a><br>]]>
      </description-html>
            <property name="id" type-id-ref="java.lang.String"
      vmodl-name="id"
      >
      <description-html>
         <![CDATA[A unique identifier for this particular message.

 This field is a key for looking up format strings in the locmsg
 catalog.]]>
      </description-html>
      </property>

            <property name="argument" type-id-ref="vmodl.Any"
      vmodl-name="argument"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Substitution arguments for variables in the localized message.

 Substitution variables in the format string identified by <a href="vim.vm.Message.html#id">id</a>
 are 1-based indexes into this array. Substitution variable {1}
 corresponds to argument[0], etc.]]>
      </description-html>
      </property>

            <property name="text" type-id-ref="java.lang.String"
      vmodl-name="text"
      version-id-ref="vim.version.version5"
      is-optional="true"
      is-localizable="true"
      >
      <description-html>
         <![CDATA[Text in session locale.
 Use <a href="vim.SessionManager.html">SessionManager</a>.<a href="vim.SessionManager.html#setLocale">SetLocale</a> to
 change the session locale.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VMwareDVSPortSetting"
      type-id="vim.dvs.VmwareDistributedVirtualSwitch.VmwarePortConfigPolicy"
      vmodl-name="vim.dvs.VmwareDistributedVirtualSwitch.VmwarePortConfigPolicy"
      enclosing-type-id-ref="vim.dvs.VmwareDistributedVirtualSwitch"
      version-id-ref="vim.version.version5"
      base-type-id="vim.dvs.DistributedVirtualPort.Setting"
      >
      <description-html>
         <![CDATA[This class defines the VMware specific configuration for
  DistributedVirtualPort.]]>
      </description-html>
            <property name="vlan" type-id-ref="vim.dvs.VmwareDistributedVirtualSwitch.VlanSpec"
      vmodl-name="vlan"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The VLAN Specification of the port.]]>
      </description-html>
      </property>

            <property name="qosTag" type-id-ref="vim.IntPolicy"
      vmodl-name="qosTag"
      is-deprecated="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[deprecated  As of vSphere API 5.0]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 5.0]]>
      </deprecated-html>
      </property>

            <property name="uplinkTeamingPolicy" type-id-ref="vim.dvs.VmwareDistributedVirtualSwitch.UplinkPortTeamingPolicy"
      vmodl-name="uplinkTeamingPolicy"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The uplink teaming policy. This property is ignored for uplink
  ports.]]>
      </description-html>
      </property>

            <property name="securityPolicy" type-id-ref="vim.dvs.VmwareDistributedVirtualSwitch.SecurityPolicy"
      vmodl-name="securityPolicy"
      is-deprecated="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[deprecated As of vSphere API 6.7, use
  <a href="vim.dvs.VmwareDistributedVirtualSwitch.MacManagementPolicy.html">DVSMacManagementPolicy</a>
  instead to specify the security policy.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 6.7, use
  <a href="vim.dvs.VmwareDistributedVirtualSwitch.MacManagementPolicy.html">DVSMacManagementPolicy</a>
  instead to specify the security policy.]]>
      </deprecated-html>
      </property>

            <property name="ipfixEnabled" type-id-ref="vim.BoolPolicy"
      vmodl-name="ipfixEnabled"
      version-id-ref="vim.version.version7"
      is-optional="true"
      >
      <description-html>
         <![CDATA[True if ipfix monitoring is enabled. To successfully enable ipfix
  monitoring, the switch must have an assigned
  <a href="vim.DistributedVirtualSwitch.ConfigInfo.html#switchIpAddress">switchIpAddress</a>
  and an appropriately populated
  <a href="vim.dvs.VmwareDistributedVirtualSwitch.ConfigInfo.html#ipfixConfig">ipfixConfig</a>
  that specifies a collector IP address and port.]]>
      </description-html>
      </property>

            <property name="txUplink" type-id-ref="vim.BoolPolicy"
      vmodl-name="txUplink"
      is-optional="true"
      >
      <description-html>
         <![CDATA[If true, a copy of packets sent to the switch will always be forwarded to
   an uplink in addition to the regular packet forwarded done by the switch.]]>
      </description-html>
      </property>

            <property name="lacpPolicy" type-id-ref="vim.dvs.VmwareDistributedVirtualSwitch.UplinkLacpPolicy"
      vmodl-name="lacpPolicy"
      version-id-ref="vim.version.version8"
      is-deprecated="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Link Aggregation Control Protocol policy.
  This policy is ignored on non-uplink portgroups.
  Setting this policy at port level is not supported.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 5.5, use
  <a href="vim.dvs.VmwareDistributedVirtualSwitch.html#updateLacpGroupConfig">UpdateDVSLacpGroupConfig_Task</a> and
  <a href="vim.dvs.VmwareDistributedVirtualSwitch.ConfigInfo.html#lacpGroupConfig">lacpGroupConfig</a>
  instead.]]>
      </deprecated-html>
      </property>

            <property name="macManagementPolicy" type-id-ref="vim.dvs.VmwareDistributedVirtualSwitch.MacManagementPolicy"
      vmodl-name="macManagementPolicy"
      version-id-ref="vim.version.version12"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The MAC learning policy.]]>
      </description-html>
      </property>

            <property name="VNI" type-id-ref="vim.IntPolicy"
      vmodl-name="VNI"
      version-id-ref="vim.version.v7_0"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The VNI number of overlay logical switch, which is used by
 NSX portgroup.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualUSBXHCIController"
      type-id="vim.vm.device.VirtualUSBXHCIController"
      vmodl-name="vim.vm.device.VirtualUSBXHCIController"
      version-id-ref="vim.version.version7"
      base-type-id="vim.vm.device.VirtualController"
      >
      <description-html>
         <![CDATA[The <a href="vim.vm.device.VirtualUSBXHCIController.html">VirtualUSBXHCIController</a> data object describes a virtual
  USB Extensible Host Controller Interface (USB 3.0).
  For more informatino see <a href="vim.vm.device.VirtualUSBController.html">VirtualUSBController</a>.]]>
      </description-html>
            <property name="autoConnectDevices" type-id-ref="BOOLEAN"
      vmodl-name="autoConnectDevices"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Flag to indicate whether or not the ability to hot plug devices
  is enabled on this controller.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="FailoverLevelRestored"
      type-id="vim.event.FailoverLevelRestored"
      vmodl-name="vim.event.FailoverLevelRestored"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.ClusterEvent"
      >
      <description-html>
         <![CDATA[This event records that the amount of cluster resources has increased
 and is now sufficient to satisfy the configured HA failover level.]]>
      </description-html>
   </data-object>
   <data-object name="HostProfileManagerCompositionValidationResult"
      type-id="vim.profile.host.ProfileManager.CompositionValidationResult"
      vmodl-name="vim.profile.host.ProfileManager.CompositionValidationResult"
      enclosing-type-id-ref="vim.profile.host.ProfileManager"
      version-id-ref="vim.version.version11"
      internal-before-version-id-ref="vim.version.version12"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The data class for the host profile composition validation
 results.]]>
      </description-html>
            <property name="results" type-id-ref="vim.profile.host.ProfileManager.CompositionValidationResult.ResultElement"
      vmodl-name="results"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The array of
 <a href="vim.profile.host.ProfileManager.CompositionValidationResult.ResultElement.html">HostProfileManagerCompositionValidationResultResultElement</a>
 for all the target host profiles.]]>
      </description-html>
      </property>

            <property name="errors" type-id-ref="vmodl.LocalizableMessage"
      vmodl-name="errors"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The common error happened at validation.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.profile.host.ProfileManager.CompositionValidationResult.ResultElement</nested-type-id-ref>
   </data-object>
   <data-object name="VMwareDVSHealthCheckCapability"
      type-id="vim.dvs.VmwareDistributedVirtualSwitch.VmwareHealthCheckFeatureCapability"
      vmodl-name="vim.dvs.VmwareDistributedVirtualSwitch.VmwareHealthCheckFeatureCapability"
      enclosing-type-id-ref="vim.dvs.VmwareDistributedVirtualSwitch"
      version-id-ref="vim.version.version8"
      base-type-id="vim.DistributedVirtualSwitch.HealthCheckFeatureCapability"
      >
      <description-html>
         <![CDATA[The feature capabilities of health check supported by the
  vSphere Distributed Switch]]>
      </description-html>
            <property name="vlanMtuSupported" type-id-ref="BOOLEAN"
      vmodl-name="vlanMtuSupported"
      >
      <description-html>
         <![CDATA[Flag to indicate whether vlan/mtu health check is supported on the
  vSphere Distributed Switch.]]>
      </description-html>
      </property>

            <property name="teamingSupported" type-id-ref="BOOLEAN"
      vmodl-name="teamingSupported"
      >
      <description-html>
         <![CDATA[Flag to indicate whether teaming health check is supported on the
  vSphere Distributed Switch.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualMachineConfigInfo"
      type-id="vim.vm.ConfigInfo"
      vmodl-name="vim.vm.ConfigInfo"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The ConfigInfo data object type encapsulates the configuration settings and
  virtual hardware for a virtual machine. This type holds all the information
  that is present in the .vmx configuration file for the virtual machine.]]>
      </description-html>
            <property name="changeVersion" type-id-ref="java.lang.String"
      vmodl-name="changeVersion"
      >
      <description-html>
         <![CDATA[The changeVersion is a unique identifier for a given version
   of the configuration. Each change to the configuration
   updates this value. This is typically implemented as an ever
   increasing count or a time-stamp. However, a client should
   always treat this as an opaque string.]]>
      </description-html>
      </property>

            <property name="modified" type-id-ref="vmodl.DateTime"
      vmodl-name="modified"
      >
      <description-html>
         <![CDATA[Last time a virtual machine's configuration was modified.]]>
      </description-html>
      </property>

            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      >
      <description-html>
         <![CDATA[Display name of the virtual machine.
  <p>
  Any / (slash), \ (backslash), character used in this
  name element is escaped. Similarly, any % (percent) character used in
 this name element is escaped, unless it is used to start an escape
  sequence. A slash is escaped as %2F or %2f. A backslash is escaped as %5C or
  %5c, and a percent is escaped as %25.]]>
      </description-html>
      </property>

            <property name="guestFullName" type-id-ref="java.lang.String"
      vmodl-name="guestFullName"
      is-localizable="true"
      >
      <description-html>
         <![CDATA[This is the full name of the guest operating system for the virtual machine.
  For example: Windows 2000 Professional.
 <p><br>See <a href="vim.vm.ConfigInfo.html#alternateGuestName">alternateGuestName</a><br>]]>
      </description-html>
      </property>

            <property name="version" type-id-ref="java.lang.String"
      vmodl-name="version"
      >
      <description-html>
         <![CDATA[The version string for this virtual machine.]]>
      </description-html>
      </property>

            <property name="uuid" type-id-ref="java.lang.String"
      vmodl-name="uuid"
      >
      <description-html>
         <![CDATA[128-bit SMBIOS UUID of a virtual machine represented as a hexadecimal string
  in "12345678-abcd-1234-cdef-123456789abc" format.]]>
      </description-html>
      </property>

            <property name="createDate" type-id-ref="vmodl.DateTime"
      vmodl-name="createDate"
      version-id-ref="vim.version.version12"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Time the virtual machine's configuration was created.]]>
      </description-html>
      </property>

            <property name="instanceUuid" type-id-ref="java.lang.String"
      vmodl-name="instanceUuid"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[VirtualCenter-specific 128-bit UUID of a virtual machine, represented
  as a hexademical string. This identifier is used by VirtualCenter to
  uniquely identify all virtual machine instances, including those that
  may share the same SMBIOS UUID.]]>
      </description-html>
      </property>

            <property name="npivNodeWorldWideName" type-id-ref="LONG"
      vmodl-name="npivNodeWorldWideName"
      version-id-ref="vim.version.version2"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[A 64-bit node WWN (World Wide Name). These WWNs are paired with the
  <a href="vim.vm.ConfigInfo.html#npivPortWorldWideName">npivPortWorldWideName</a> to be used by the NPIV VPORTs instantiated for the
  virtual machine on the physical HBAs of the host. A pair of node and port WWNs
  serves as a unique identifier in accessing a LUN, so that it can be monitored or
  controlled by the storage administrator.
  <p>
  If this property contains a single node WWN, the same node WWN is used to pair
  with all port WWNs listed in <a href="vim.vm.ConfigInfo.html#npivPortWorldWideName">npivPortWorldWideName</a>. If this property or
  <a href="vim.vm.ConfigInfo.html#npivPortWorldWideName">npivPortWorldWideName</a> is empty or unset, NPIV WWN is disabled for the
  virtual machine.]]>
      </description-html>
      </property>

            <property name="npivPortWorldWideName" type-id-ref="LONG"
      vmodl-name="npivPortWorldWideName"
      version-id-ref="vim.version.version2"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[A 64-bit port WWN (World Wide Name). For detail description on WWN, see
 <a href="vim.vm.ConfigInfo.html#npivNodeWorldWideName">npivNodeWorldWideName</a>.]]>
      </description-html>
      </property>

            <property name="npivWorldWideNameType" type-id-ref="java.lang.String"
      vmodl-name="npivWorldWideNameType"
      version-id-ref="vim.version.version2"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The source that provides/generates the assigned WWNs.
  <p><br>See <a href="vim.vm.ConfigInfo.NpivWwnType.html">VirtualMachineConfigInfoNpivWwnType</a><br>]]>
      </description-html>
      </property>

            <property name="npivDesiredNodeWwns" type-id-ref="SHORT"
      vmodl-name="npivDesiredNodeWwns"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The NPIV node WWNs to be extended from the original list of WWN nummbers. This
  property should be set to desired number which is an aggregate of existing
  plus new numbers. Desired Node WWNs should always be greater than the existing
  number of node WWNs]]>
      </description-html>
      </property>

            <property name="npivDesiredPortWwns" type-id-ref="SHORT"
      vmodl-name="npivDesiredPortWwns"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The NPIV port WWNs to be extended from the original list of WWN nummbers. This
  property should be set to desired number which is an aggregate of existing
  plus new numbers. Desired Node WWNs should always be greater than the existing
  number of port WWNs]]>
      </description-html>
      </property>

            <property name="npivTemporaryDisabled" type-id-ref="BOOLEAN"
      vmodl-name="npivTemporaryDisabled"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[This property is used to enable or disable the NPIV capability on a desired
  virtual machine on a temporary basis. When this property is set NPIV Vport
  will not be instantiated by the VMX process of the Virtual Machine. When this
  property is set port WWNs and node WWNs in the VM configuration are preserved.]]>
      </description-html>
      </property>

            <property name="npivOnNonRdmDisks" type-id-ref="BOOLEAN"
      vmodl-name="npivOnNonRdmDisks"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[This property is used to check whether the NPIV can be enabled on the Virtual
  machine with non-rdm disks in the configuration, so this is potentially not
  enabling npiv on vmfs disks. Also this property is used to check whether RDM
  is required to generate WWNs for a virtual machine.]]>
      </description-html>
      </property>

            <property name="locationId" type-id-ref="java.lang.String"
      vmodl-name="locationId"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Hash incorporating the virtual machine's config file location
  and the UUID of the host assigned to run the virtual machine.]]>
      </description-html>
      </property>

            <property name="template" type-id-ref="BOOLEAN"
      vmodl-name="template"
      >
      <description-html>
         <![CDATA[Flag indicating whether or not a virtual machine is a template.]]>
      </description-html>
      </property>

            <property name="guestId" type-id-ref="java.lang.String"
      vmodl-name="guestId"
      >
      <description-html>
         <![CDATA[Guest operating system configured on a virtual machine.
  This is a guest identifier that can be used to access the
  <a href="vim.vm.GuestOsDescriptor.html">GuestOsDescriptor</a>
  list for information about default configuration.
  For more information on possible values, see
  <a href="vim.vm.GuestOsDescriptor.GuestOsIdentifier.html">VirtualMachineGuestOsIdentifier</a>.]]>
      </description-html>
      </property>

            <property name="alternateGuestName" type-id-ref="java.lang.String"
      vmodl-name="alternateGuestName"
      version-id-ref="vim.version.version2"
      >
      <description-html>
         <![CDATA[Used as display name for the operating system if guestId is <tt>other</tt>
  or <tt>other-64</tt>.
  <p><br>See <a href="vim.vm.ConfigInfo.html#guestFullName">guestFullName</a><br>]]>
      </description-html>
      </property>

            <property name="annotation" type-id-ref="java.lang.String"
      vmodl-name="annotation"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Description for the virtual machine.]]>
      </description-html>
      </property>

            <property name="files" type-id-ref="vim.vm.FileInfo"
      vmodl-name="files"
      >
      <description-html>
         <![CDATA[Information about the files associated with a virtual machine.
  This information does not include files for specific virtual disks or
  snapshots.]]>
      </description-html>
      </property>

            <property name="tools" type-id-ref="vim.vm.ToolsConfigInfo"
      vmodl-name="tools"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Configuration of VMware Tools running in the guest operating system.]]>
      </description-html>
      </property>

            <property name="flags" type-id-ref="vim.vm.FlagInfo"
      vmodl-name="flags"
      >
      <description-html>
         <![CDATA[Additional flags for a virtual machine.]]>
      </description-html>
      </property>

            <property name="consolePreferences" type-id-ref="vim.vm.ConsolePreferences"
      vmodl-name="consolePreferences"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Legacy console viewer preferences when doing power operations.]]>
      </description-html>
      </property>

            <property name="defaultPowerOps" type-id-ref="vim.vm.DefaultPowerOpInfo"
      vmodl-name="defaultPowerOps"
      >
      <description-html>
         <![CDATA[Configuration of default power operations.]]>
      </description-html>
      </property>

            <property name="hardware" type-id-ref="vim.vm.VirtualHardware"
      vmodl-name="hardware"
      >
      <description-html>
         <![CDATA[Processor, memory, and virtual devices for a virtual machine.]]>
      </description-html>
      </property>

            <property name="vcpuConfig" type-id-ref="vim.vm.VcpuConfig"
      vmodl-name="vcpuConfig"
      version-id-ref="vim.version.v7_0"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Vcpu configuration. The <code>vcpuConfig</code> array is indexed
 by vcpu number.]]>
      </description-html>
      </property>

            <property name="cpuAllocation" type-id-ref="vim.ResourceAllocationInfo"
      vmodl-name="cpuAllocation"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Resource limits for CPU.]]>
      </description-html>
      </property>

            <property name="memoryAllocation" type-id-ref="vim.ResourceAllocationInfo"
      vmodl-name="memoryAllocation"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Resource limits for memory.]]>
      </description-html>
      </property>

            <property name="latencySensitivity" type-id-ref="vim.LatencySensitivity"
      vmodl-name="latencySensitivity"
      version-id-ref="vim.version.version8"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The latency-sensitivity of the virtual machine.]]>
      </description-html>
      </property>

            <property name="memoryHotAddEnabled" type-id-ref="BOOLEAN"
      vmodl-name="memoryHotAddEnabled"
      version-id-ref="vim.version.version4"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Whether memory can be added while this virtual machine is running.]]>
      </description-html>
      </property>

            <property name="cpuHotAddEnabled" type-id-ref="BOOLEAN"
      vmodl-name="cpuHotAddEnabled"
      version-id-ref="vim.version.version4"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Whether virtual processors can be added while this
  virtual machine is running.]]>
      </description-html>
      </property>

            <property name="cpuHotRemoveEnabled" type-id-ref="BOOLEAN"
      vmodl-name="cpuHotRemoveEnabled"
      version-id-ref="vim.version.version4"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Whether virtual processors can be removed while this
  virtual machine is running.]]>
      </description-html>
      </property>

            <property name="hotPlugMemoryLimit" type-id-ref="LONG"
      vmodl-name="hotPlugMemoryLimit"
      version-id-ref="vim.version.version4"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The maximum amount of memory, in MB, than can be added to a
  running virtual machine. This value is determined by the
  virtual machine and is specified only if
  <a href="vim.vm.ConfigInfo.html#memoryHotAddEnabled">memoryHotAddEnabled</a>
  is set to true.]]>
      </description-html>
      </property>

            <property name="hotPlugMemoryIncrementSize" type-id-ref="LONG"
      vmodl-name="hotPlugMemoryIncrementSize"
      version-id-ref="vim.version.version4"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Memory, in MB that can be added to a running virtual machine
  must be in increments of this value and needs be a
  multiple of this value.

  This value is determined by the virtual machine and is specified
  only if <a href="vim.vm.ConfigSpec.html#memoryHotAddEnabled">memoryHotAddEnabled</a>
  has been set to true.]]>
      </description-html>
      </property>

            <property name="cpuAffinity" type-id-ref="vim.vm.AffinityInfo"
      vmodl-name="cpuAffinity"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Affinity settings for CPU.]]>
      </description-html>
      </property>

            <property name="memoryAffinity" type-id-ref="vim.vm.AffinityInfo"
      vmodl-name="memoryAffinity"
      is-deprecated="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Affinity settings for memory.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[since vSphere 6.0.]]>
      </deprecated-html>
      </property>

            <property name="networkShaper" type-id-ref="vim.vm.NetworkShaperInfo"
      vmodl-name="networkShaper"
      is-deprecated="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Resource limits for network.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[from vSphere 5.5, shaping policy on VM is not supported.]]>
      </deprecated-html>
      </property>

            <property name="extraConfig" type-id-ref="vim.option.OptionValue"
      vmodl-name="extraConfig"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Additional configuration information for the virtual machine.]]>
      </description-html>
      </property>

            <property name="cpuFeatureMask" type-id-ref="vim.host.CpuIdInfo"
      vmodl-name="cpuFeatureMask"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Specifies CPU feature compatibility masks that override the
  defaults from the <a href="vim.vm.GuestOsDescriptor.html">GuestOsDescriptor</a>
  of the virtual machine's guest OS.
  As of vSphere API 6.5 <a href="vim.host.FeatureMask.html">FeatureMask</a>
  is the recommended method for masking virtual machines with
  hardware version 9 and above (newer). They can be viewed via
  <a href="vim.vm.RuntimeInfo.html#featureMask">featureMask</a>.]]>
      </description-html>
      </property>

            <property name="datastoreUrl" type-id-ref="vim.vm.ConfigInfo.DatastoreUrlPair"
      vmodl-name="datastoreUrl"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Enumerates the set of datastores that this virtual machine is
  stored on, as well as the URL identification for each of these.
  <p>
  Changes to datastores do not generate property updates on this
  property. However, when this property is retrieved it returns the
  current datastore information.]]>
      </description-html>
      </property>

            <property name="swapPlacement" type-id-ref="java.lang.String"
      vmodl-name="swapPlacement"
      version-id-ref="vim.version.version2"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Virtual machine swapfile placement policy. This will be unset if the
  virtual machine's
  <a href="vim.vm.Capability.html#swapPlacementSupported">swapPlacementSupported</a>
  capability is false. If swapPlacementSupported is true, the default
  policy is "inherit".
  <p><br>See <a href="vim.vm.ConfigInfo.SwapPlacementType.html">VirtualMachineConfigInfoSwapPlacementType</a><br>]]>
      </description-html>
      </property>

            <property name="bootOptions" type-id-ref="vim.vm.BootOptions"
      vmodl-name="bootOptions"
      version-id-ref="vim.version.version2"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Configuration options for the boot behavior of the virtual machine.]]>
      </description-html>
      </property>

            <property name="ftInfo" type-id-ref="vim.vm.FaultToleranceConfigInfo"
      vmodl-name="ftInfo"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Fault Tolerance settings for this virtual machine.]]>
      </description-html>
      </property>

            <property name="repConfig" type-id-ref="vim.vm.ReplicationConfigSpec"
      vmodl-name="repConfig"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[vSphere Replication settings for this virtual machine.
  Note this may become deprecated in the future releases. We discourage
  any unnecessary dependency on this field.]]>
      </description-html>
      </property>

            <property name="vAppConfig" type-id-ref="vim.vApp.VmConfigInfo"
      vmodl-name="vAppConfig"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[vApp meta-data for the virtual machine]]>
      </description-html>
      </property>

            <property name="vAssertsEnabled" type-id-ref="BOOLEAN"
      vmodl-name="vAssertsEnabled"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates whether user-configured virtual asserts will be
  triggered during virtual machine replay.]]>
      </description-html>
      </property>

            <property name="changeTrackingEnabled" type-id-ref="BOOLEAN"
      vmodl-name="changeTrackingEnabled"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates whether changed block tracking for this VM's disks
 is active.]]>
      </description-html>
      </property>

            <property name="firmware" type-id-ref="java.lang.String"
      vmodl-name="firmware"
      version-id-ref="vim.version.version7"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Information about firmware type for this Virtual Machine.

  Possible values are described in
  <a href="vim.vm.GuestOsDescriptor.FirmwareType.html">GuestOsDescriptorFirmwareType</a>
  When creating a new VM:
  - If vim.vm.FlagInfo.vbsEnabled is set to <code>true</code> and
    this property is set to <code>bios</code>, error is returned.
  - If this property is unset and vim.vm.FlagInfo.vbsEnabled is set
    to <code>true</code>, this property is set to <code>efi</code>.]]>
      </description-html>
      </property>

            <property name="maxMksConnections" type-id-ref="INT"
      vmodl-name="maxMksConnections"
      version-id-ref="vim.version.version7"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates the maximum number of active remote display connections
 that the virtual machine will support.]]>
      </description-html>
      </property>

            <property name="guestAutoLockEnabled" type-id-ref="BOOLEAN"
      vmodl-name="guestAutoLockEnabled"
      version-id-ref="vim.version.version7"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates whether the guest operating system will logout any active
 sessions whenever there are no remote display connections open to
 the virtual machine.]]>
      </description-html>
      </property>

            <property name="managedBy" type-id-ref="vim.ext.ManagedByInfo"
      vmodl-name="managedBy"
      version-id-ref="vim.version.version7"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Specifies that this VM is managed by a VC Extension. See the
 <a href="vim.vm.ConfigSpec.html#managedBy">managedBy</a> property in the ConfigSpec
 for more details.]]>
      </description-html>
      </property>

            <property name="memoryReservationLockedToMax" type-id-ref="BOOLEAN"
      vmodl-name="memoryReservationLockedToMax"
      version-id-ref="vim.version.version7"
      is-optional="true"
      >
      <description-html>
         <![CDATA[If set true, memory resource reservation for this virtual machine will always be
 equal to the virtual machine's memory size; increases in memory size will be
 rejected when a corresponding reservation increase is not possible.]]>
      </description-html>
      </property>

            <property name="initialOverhead" type-id-ref="vim.vm.ConfigInfo.OverheadInfo"
      vmodl-name="initialOverhead"
      version-id-ref="vim.version.version7"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Set of values to be used only to perform admission control when
 determining if a host has sufficient resources for the virtual
 machine to power on.]]>
      </description-html>
      </property>

            <property name="nestedHVEnabled" type-id-ref="BOOLEAN"
      vmodl-name="nestedHVEnabled"
      version-id-ref="vim.version.version8"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates whether this VM is configured to use nested
 hardware-assisted virtualization.]]>
      </description-html>
      </property>

            <property name="vPMCEnabled" type-id-ref="BOOLEAN"
      vmodl-name="vPMCEnabled"
      version-id-ref="vim.version.version8"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates whether this VM have vurtual CPU performance counters
  enabled.]]>
      </description-html>
      </property>

            <property name="scheduledHardwareUpgradeInfo" type-id-ref="vim.vm.ScheduledHardwareUpgradeInfo"
      vmodl-name="scheduledHardwareUpgradeInfo"
      version-id-ref="vim.version.version8"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Configuration of scheduled hardware upgrades and result from last
  attempt to run scheduled hardware upgrade.<br>See <a href="vim.vm.ScheduledHardwareUpgradeInfo.html">ScheduledHardwareUpgradeInfo</a><br>]]>
      </description-html>
      </property>

            <property name="forkConfigInfo" type-id-ref="vim.vm.ForkConfigInfo"
      vmodl-name="forkConfigInfo"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Fork configuration of this virtual machines. If unset, this virtual machine
 is not configured for fork.<br>See <a href="vim.vm.ForkConfigInfo.html">VirtualMachineForkConfigInfo</a><br>]]>
      </description-html>
      </property>

            <property name="vFlashCacheReservation" type-id-ref="LONG"
      vmodl-name="vFlashCacheReservation"
      version-id-ref="vim.version.version9"
      is-deprecated="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Specifies the total vFlash resource reservation for the vFlash caches associated
 with this VM's virtual disks, in bytes. This reservation must be allocated to power on the VM.
 See <a href="vim.vm.RuntimeInfo.html#vFlashCacheAllocation">vFlashCacheAllocation</a> for allocated
 reservation when VM is powered on.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[since vSphere 7.0 because vFlash Read Cache
 end of availability.]]>
      </deprecated-html>
      </property>

            <property name="vmxConfigChecksum" type-id-ref="vmodl.Binary"
      vmodl-name="vmxConfigChecksum"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[A checksum of vmx config file.]]>
      </description-html>
      </property>

            <property name="messageBusTunnelEnabled" type-id-ref="BOOLEAN"
      vmodl-name="messageBusTunnelEnabled"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Whether to allow tunneling of clients from the guest VM into the
 common message bus on the host network.]]>
      </description-html>
      </property>

            <property name="vmStorageObjectId" type-id-ref="java.lang.String"
      vmodl-name="vmStorageObjectId"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Virtual Machine Object Identifier.
 With Object-based Storage systems, Virtual Machine home directory
 is backed by an object.
 This identifier will be set only if VM directory resided  on
 object-based storage systems.]]>
      </description-html>
      </property>

            <property name="swapStorageObjectId" type-id-ref="java.lang.String"
      vmodl-name="swapStorageObjectId"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Virtual Machine Swap Object Identifier.
 With Object-based Storage systems, VM's Swap is backed by an object.
 This identifier will be set only if VM swap resided on
 object-based storage systems.]]>
      </description-html>
      </property>

            <property name="keyId" type-id-ref="vim.encryption.CryptoKeyId"
      vmodl-name="keyId"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Virtual Machine cryptographic options.]]>
      </description-html>
      </property>

            <property name="guestIntegrityInfo" type-id-ref="vim.vm.GuestIntegrityInfo"
      vmodl-name="guestIntegrityInfo"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Guest integrity platform configuration]]>
      </description-html>
      </property>

            <property name="migrateEncryption" type-id-ref="java.lang.String"
      vmodl-name="migrateEncryption"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[An enum describing whether encrypted vMotion is required for this VM.
 See <a href="vim.vm.ConfigSpec.EncryptedVMotionModes.html">VirtualMachineConfigSpecEncryptedVMotionModes</a> for allowed values.

 This defaults to opportunistic for a regular VM, and will be set to
 required for an encrypted VM.]]>
      </description-html>
      </property>

            <property name="sgxInfo" type-id-ref="vim.vm.SgxInfo"
      vmodl-name="sgxInfo"
      version-id-ref="vim.version.v7_0"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Configuration of SGX, Software Guard Extensions for the VM.]]>
      </description-html>
      </property>

            <property name="contentLibItemInfo" type-id-ref="vim.vm.ContentLibraryItemInfo"
      vmodl-name="contentLibItemInfo"
      version-id-ref="vim.version.v7_0"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Content Library Item info.]]>
      </description-html>
      </property>

            <property name="guestMonitoringModeInfo" type-id-ref="vim.vm.GuestMonitoringModeInfo"
      vmodl-name="guestMonitoringModeInfo"
      version-id-ref="vim.version.v7_0"
      is-optional="true"
      >
      <description-html>
         <![CDATA[GMM configuration]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.vm.ConfigInfo.NpivWwnType</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.ConfigInfo.SwapPlacementType</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.ConfigInfo.DatastoreUrlPair</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.ConfigInfo.OverheadInfo</nested-type-id-ref>
   </data-object>
   <data-object name="VVolVmConfigFileUpdateResult"
      type-id="vim.VVolVmConfigFileUpdateResult"
      vmodl-name="vim.VVolVmConfigFileUpdateResult"
      version-id-ref="vim.version.version11"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[VVolVmConfigFileUpdateResult is the result returned
  by the <a href="vim.Datastore.html#updateVVolVirtualMachineFiles">UpdateVVolVirtualMachineFiles_Task</a> method.]]>
      </description-html>
            <property name="succeededVmConfigFile" type-id-ref="vim.KeyValue"
      vmodl-name="succeededVmConfigFile"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Mapping of target config VVol IDs to the target virtual machine
 config file paths which are successfully updated.]]>
      </description-html>
      </property>

            <property name="failedVmConfigFile" type-id-ref="vim.VVolVmConfigFileUpdateResult.FailedVmConfigFileInfo"
      vmodl-name="failedVmConfigFile"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The list of virtual machines config files the server has attempted,
  but failed to update.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.VVolVmConfigFileUpdateResult.FailedVmConfigFileInfo</nested-type-id-ref>
   </data-object>
   <data-object name="VmHealthMonitoringStateChangedEvent"
      type-id="vim.event.VmHealthMonitoringStateChangedEvent"
      vmodl-name="vim.event.VmHealthMonitoringStateChangedEvent"
      version-id-ref="vim.version.version5"
      base-type-id="vim.event.ClusterEvent"
      >
      <description-html>
         <![CDATA[This event records when host monitoring state has changed.]]>
      </description-html>
            <property name="state" type-id-ref="java.lang.String"
      vmodl-name="state"
      >
      <description-html>
         <![CDATA[The service state in
    <a href="vim.cluster.DasConfigInfo.VmMonitoringState.html">ClusterDasConfigInfoVmMonitoringState</a>]]>
      </description-html>
      </property>

            <property name="prevState" type-id-ref="java.lang.String"
      vmodl-name="prevState"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The previous service state in
    <a href="vim.cluster.DasConfigInfo.VmMonitoringState.html">ClusterDasConfigInfoVmMonitoringState</a>]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DvsHostBackInSyncEvent"
      type-id="vim.event.DvsHostBackInSyncEvent"
      vmodl-name="vim.event.DvsHostBackInSyncEvent"
      version-id-ref="vim.version.version5"
      base-type-id="vim.event.DvsEvent"
      >
      <description-html>
         <![CDATA[The DVS configuration on the host was synchronized with that of
  the Virtual Center Server and the configuration is the same on
  the host and Virtual Center Server.]]>
      </description-html>
            <property name="hostBackInSync" type-id-ref="vim.event.HostEventArgument"
      vmodl-name="hostBackInSync"
      >
      <description-html>
         <![CDATA[The host that was synchronized.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ServiceManagerServiceInfo"
      type-id="vim.ServiceManager.ServiceInfo"
      vmodl-name="vim.ServiceManager.ServiceInfo"
      enclosing-type-id-ref="vim.ServiceManager"
      version-id-ref="vim.version.version1"
      internal-before-version-id-ref="vim.version.version8"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object represents essential information about a particular service.
  The information is sufficient to be able to identify the service and retrieve
  the object implementing it.]]>
      </description-html>
            <property name="serviceName" type-id-ref="java.lang.String"
      vmodl-name="serviceName"
      >
      <description-html>
         <![CDATA[A service name. Each service is expected to create a unique name
  for itself that can be used to locate the service. This name
  does not need to be unique across hosts or other such locations though.]]>
      </description-html>
      </property>

            <property name="location" type-id-ref="java.lang.String"
      vmodl-name="location"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[A list of data that can be used to uniquely identify a particular instance of a service.
  Multiple instances of a service can exist across different domains (for instance, a service
  that is associated with a particular virtual machine or a particular host). In such cases,
  the service name is insufficient to identify the service and location data can be used
  to identify the instance of interest. A service may publish as much location data
  as is needed to identify it (e.g, vmware.host.<hostname> or vmware.vm.<uuid> or both).
  The particular choice of locations have to be agreed upon by
  the client and the service.]]>
      </description-html>
      </property>

            <property name="service" type-id-ref="vmodl.ManagedObject"
      vmodl-name="service"
      >
      <description-html>
         <![CDATA[The managed object that presents this service.]]>
      </description-html>
      </property>

            <property name="description" type-id-ref="java.lang.String"
      vmodl-name="description"
      is-localizable="true"
      >
      <description-html>
         <![CDATA[A description of the service. Provides help text on how
  to use the service.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="EntityBackup"
      type-id="vim.dvs.EntityBackup"
      vmodl-name="vim.dvs.EntityBackup"
      version-id-ref="vim.version.version8"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[<a href="vim.dvs.EntityBackup.html">EntityBackup</a> is an abstract data object that contains
 the related entity backup and restore elements for virtual distributed
 switches and virtual distributed portgroups. See the following elements:
 <ul>
 <li><a href="vim.dvs.EntityBackup.Config.html">EntityBackupConfig</a></li>
 <li><a href="vim.dvs.EntityBackup.ImportType.html">EntityImportType</a></li>
 <li><a href="vim.dvs.EntityBackup.EntityType.html">EntityType</a></li>
 </ul>]]>
      </description-html>
      <nested-type-id-ref>vim.dvs.EntityBackup.Config</nested-type-id-ref>
      <nested-type-id-ref>vim.dvs.EntityBackup.EntityType</nested-type-id-ref>
      <nested-type-id-ref>vim.dvs.EntityBackup.ImportType</nested-type-id-ref>
   </data-object>
   <data-object name="VimVasaProvider"
      type-id="vim.VimVasaProvider"
      vmodl-name="vim.VimVasaProvider"
      version-id-ref="vim.version.version10"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Data object representing VASA Provider.]]>
      </description-html>
            <property name="uid" type-id-ref="java.lang.String"
      vmodl-name="uid"
      version-id-ref="vim.version.version12"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Provider UID. This is populated with namespace prefixed to providerId,
  which uniquely identifies a VASA Provider. Both namespace and providerId
  are sourced from Vasa Provider and available within SMS. This field
  helps in preventing a regeneration of duplicate VASA Provider within
  vvold when a user attempts to register the same VP using  different names
  or alternative urls.]]>
      </description-html>
      </property>

            <property name="url" type-id-ref="java.lang.String"
      vmodl-name="url"
      >
      <description-html>
         <![CDATA[VASA Provider URL]]>
      </description-html>
      </property>

            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Name]]>
      </description-html>
      </property>

            <property name="selfSignedCertificate" type-id-ref="java.lang.String"
      vmodl-name="selfSignedCertificate"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Self signed certificate of VASA provider]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.VimVasaProvider.StatePerArray</nested-type-id-ref>
   </data-object>
   <data-object name="StorageIOAllocationOption"
      type-id="vim.StorageResourceManager.IOAllocationOption"
      vmodl-name="vim.StorageResourceManager.IOAllocationOption"
      enclosing-type-id-ref="vim.StorageResourceManager"
      version-id-ref="vim.version.version6"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The IOAllocationOption specifies value ranges that can be used
 to initialize IOAllocationInfo object.]]>
      </description-html>
            <property name="limitOption" type-id-ref="vim.option.LongOption"
      vmodl-name="limitOption"
      >
      <description-html>
         <![CDATA[limitOptions defines a range of values allowed to be used for
 storage IO limit <a href="vim.StorageResourceManager.IOAllocationInfo.html#limit">limit</a>.]]>
      </description-html>
      </property>

            <property name="sharesOption" type-id-ref="vim.SharesOption"
      vmodl-name="sharesOption"
      >
      <description-html>
         <![CDATA[sharesOption defines a range of values allowed to be used to
 specify allocated io shares <a href="vim.StorageResourceManager.IOAllocationInfo.html#shares">shares</a>.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ImportOperationBulkFaultFaultOnImport"
      type-id="vim.fault.ImportOperationBulkFault.FaultOnImport"
      vmodl-name="vim.fault.ImportOperationBulkFault.FaultOnImport"
      enclosing-type-id-ref="vim.fault.ImportOperationBulkFault"
      version-id-ref="vim.version.version8"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The fault occurred on the entity during an import operation.]]>
      </description-html>
            <property name="entityType" type-id-ref="java.lang.String"
      vmodl-name="entityType"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The entity type on which import failed. See <a href="vim.dvs.EntityBackup.EntityType.html">EntityType</a>
  for valid values]]>
      </description-html>
      </property>

            <property name="key" type-id-ref="java.lang.String"
      vmodl-name="key"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The key on which import failed]]>
      </description-html>
      </property>

            <property name="fault" type-id-ref="vmodl.LocalizedMethodFault"
      vmodl-name="fault"
      >
      <description-html>
         <![CDATA[The fault that occurred.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostNewNetworkConnectInfo"
      type-id="vim.host.ConnectInfo.NewNetworkInfo"
      vmodl-name="vim.host.ConnectInfo.NewNetworkInfo"
      enclosing-type-id-ref="vim.host.ConnectInfo"
      version-id-ref="vim.version.version1"
      base-type-id="vim.host.ConnectInfo.NetworkInfo"
      >
      <description-html>
         <![CDATA[Network information for a network that will be added to VirtualCenter when the
  host is added.]]>
      </description-html>
   </data-object>
   <data-object name="VirtualNVDIMMController"
      type-id="vim.vm.device.VirtualNVDIMMController"
      vmodl-name="vim.vm.device.VirtualNVDIMMController"
      version-id-ref="vim.version.version12"
      base-type-id="vim.vm.device.VirtualController"
      >
      <description-html>
         <![CDATA[The Virtual NVDIMM controller.]]>
      </description-html>
   </data-object>
   <data-object name="StructuredCustomizations"
      type-id="vim.profile.host.ProfileManager.StructuredCustomizations"
      vmodl-name="vim.profile.host.ProfileManager.StructuredCustomizations"
      enclosing-type-id-ref="vim.profile.host.ProfileManager"
      version-id-ref="vim.version.version11"
      base-type-id="vim.profile.host.ProfileManager.EntityCustomizations"
      >
      <description-html>
         <![CDATA[Implementation of <a href="vim.profile.host.ProfileManager.EntityCustomizations.html">HostProfilesEntityCustomizations</a>
 that maps a cluster or host profile to the <a href="vim.profile.host.AnswerFile.html">AnswerFile</a>
 object containing the host profiles customizations for that entity. This
 object will be used as elements of the
 <a href="vim.profile.host.ProfileManager.EntityCustomizations.html">HostProfilesEntityCustomizations</a>.{vim.profile.host.ProfileManager.EntityCustomizations#entityCustomizations}
 when the <a href="vim.profile.host.ProfileManager.EntityCustomizations.html">HostProfilesEntityCustomizations</a>.{vim.profile.host.ProfileManager.EntityCustomizations#customizationsFormat}
 value is "structured".]]>
      </description-html>
            <property name="entity" type-id-ref="vim.ManagedEntity"
      vmodl-name="entity"
      >
      <description-html>
         <![CDATA[Entity associated with the host customizations specified in the
 <code>customizations</code> <a href="vim.profile.host.AnswerFile.html">AnswerFile</a> object.
 In the current release, this object will always be a host.]]>
      </description-html>
      </property>

            <property name="customizations" type-id-ref="vim.profile.host.AnswerFile"
      vmodl-name="customizations"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Host Profile Customizations for the associated <code>entity</code>.
 This is the same object that would be returned by the
 <a href="vim.profile.host.ProfileManager.html#retrieveAnswerFile">RetrieveAnswerFile</a> method]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="CustomizationAutoIpV6Generator"
      type-id="vim.vm.customization.AutoIpV6Generator"
      vmodl-name="vim.vm.customization.AutoIpV6Generator"
      version-id-ref="vim.version.version5"
      base-type-id="vim.vm.customization.IpV6Generator"
      >
      <description-html>
         <![CDATA[Use automatic address configuration to generate linklocal ipv6 addresses]]>
      </description-html>
   </data-object>
   <data-object name="VirtualPCIControllerOption"
      type-id="vim.vm.device.VirtualPCIControllerOption"
      vmodl-name="vim.vm.device.VirtualPCIControllerOption"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.device.VirtualControllerOption"
      >
      <description-html>
         <![CDATA[This data object type contains the options
  for a virtual PCI Controller.]]>
      </description-html>
            <property name="numSCSIControllers" type-id-ref="vim.option.IntOption"
      vmodl-name="numSCSIControllers"
      >
      <description-html>
         <![CDATA[Defines the minimum, maximum, and
  default number of VirtualSCSIController instances available
  at any given time in the PCI controller. The number of
  VirtualSCSIController instances is also limited by the number of
  available slots in the PCI controller.]]>
      </description-html>
      </property>

            <property name="numEthernetCards" type-id-ref="vim.option.IntOption"
      vmodl-name="numEthernetCards"
      >
      <description-html>
         <![CDATA[Defines the minimum, maximum, and
  default number of VirtualEthernetCard instances available,
  at any given time, in the PCI controller. The number of
  VirtualEthernetCard instances is also limited by the number of
  available slots in the PCI controller.]]>
      </description-html>
      </property>

            <property name="numVideoCards" type-id-ref="vim.option.IntOption"
      vmodl-name="numVideoCards"
      >
      <description-html>
         <![CDATA[Defines the minimum, maximum, and default
  number of VirtualVideoCard instances available,
  at any given time, in the PCI controller. The number of
  VirtualVideoCard instances is also limited by the number of
  available slots in the PCI controller.]]>
      </description-html>
      </property>

            <property name="numSoundCards" type-id-ref="vim.option.IntOption"
      vmodl-name="numSoundCards"
      >
      <description-html>
         <![CDATA[Defines the minimum, maximum, and default
  number of VirtualSoundCard instances available,
  at any given time, in the PCI controller. The number of
  VirtualSoundCard instances is also limited by the number of
  available slots in the PCI controller.]]>
      </description-html>
      </property>

            <property name="numVmiRoms" type-id-ref="vim.option.IntOption"
      vmodl-name="numVmiRoms"
      version-id-ref="vim.version.version2"
      >
      <description-html>
         <![CDATA[Defines the minimum, maximum, and default
  number of VirtualVMIROM instances available,
  at any given time, in the PCI controller. This is also limited
  by the number of available slots in the PCI controller.]]>
      </description-html>
      </property>

            <property name="numVmciDevices" type-id-ref="vim.option.IntOption"
      vmodl-name="numVmciDevices"
      version-id-ref="vim.version.version4"
      >
      <description-html>
         <![CDATA[Defines the minimum, maximum, and default
  number of VirtualVMCIDevice instances available,
  at any given time, in the PCI controller. This is also limited
  by the number of available slots in the PCI controller.]]>
      </description-html>
      </property>

            <property name="numPCIPassthroughDevices" type-id-ref="vim.option.IntOption"
      vmodl-name="numPCIPassthroughDevices"
      version-id-ref="vim.version.version4"
      >
      <description-html>
         <![CDATA[Defines the minimum, maximum, and default
  number of VirtualPCIPassthrough instances available,
  at any given time, in the PCI controller. This is also limited
  by the number of available PCI Express slots in the PCI controller.]]>
      </description-html>
      </property>

            <property name="numSasSCSIControllers" type-id-ref="vim.option.IntOption"
      vmodl-name="numSasSCSIControllers"
      version-id-ref="vim.version.version4"
      >
      <description-html>
         <![CDATA[Defines the minimum, maximum, and default
  number of VirtualLsiLogicSASController instances available,
  at any given time, in the PCI controller.  This is also limited
  by the number of available PCI Express slots in the PCI controller
  as well as the total number of supported SCSI controllers.]]>
      </description-html>
      </property>

            <property name="numVmxnet3EthernetCards" type-id-ref="vim.option.IntOption"
      vmodl-name="numVmxnet3EthernetCards"
      version-id-ref="vim.version.version4"
      >
      <description-html>
         <![CDATA[Defines the minimum, maximum, and default
  number of VirtualVmxnet3 ethernet card instances available,
  at any given time, in the PCI controller. This is also limited
  by the number of available PCI Express slots in the PCI controller
  as well as the total number of supported ethernet cards.]]>
      </description-html>
      </property>

            <property name="numParaVirtualSCSIControllers" type-id-ref="vim.option.IntOption"
      vmodl-name="numParaVirtualSCSIControllers"
      version-id-ref="vim.version.version4"
      >
      <description-html>
         <![CDATA[Defines the minimum, maximum, and default
  number of ParaVirtualScsiController instances available,
  at any given time, in the PCI controller.  This is also limited
  by the number of available PCI Express slots in the PCI controller
  as well as the total number of supported SCSI controllers.]]>
      </description-html>
      </property>

            <property name="numSATAControllers" type-id-ref="vim.option.IntOption"
      vmodl-name="numSATAControllers"
      version-id-ref="vim.version.version9"
      >
      <description-html>
         <![CDATA[Defines the minimum, maximum, and default
  number of VirtualSATAController instances available,
  at any given time, in the PCI controller.  This is also limited
  by the number of available PCI Express slots in the PCI controller
  as well as the total number of supported SATA controllers.]]>
      </description-html>
      </property>

            <property name="numNVMEControllers" type-id-ref="vim.option.IntOption"
      vmodl-name="numNVMEControllers"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Defines the minimum, maximum, and default
  number of VirtualNVMEController instances available,
  at any given time, in the PCI controller.  This is also limited
  by the number of available PCI Express slots in the PCI controller
  as well as the total number of supported NVME controllers.]]>
      </description-html>
      </property>

            <property name="numVmxnet3VrdmaEthernetCards" type-id-ref="vim.option.IntOption"
      vmodl-name="numVmxnet3VrdmaEthernetCards"
      version-id-ref="vim.version.version12"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Defines the minimum, maximum, and default
  number of VirtualVmxnet3Vrdma ethernet card instances available,
  at any given time, in the PCI controller. This is also limited
  by the number of available PCI Express slots in the PCI controller
  as well as the total number of supported ethernet cards.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualBusLogicControllerOption"
      type-id="vim.vm.device.VirtualBusLogicControllerOption"
      vmodl-name="vim.vm.device.VirtualBusLogicControllerOption"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.device.VirtualSCSIControllerOption"
      >
      <description-html>
         <![CDATA[This data object contains
  the options for a BusLogic SCSI controller.]]>
      </description-html>
   </data-object>
   <data-object name="EventDescriptionEventDetail"
      type-id="vim.event.EventDescription.EventDetail"
      vmodl-name="vim.event.EventDescription.EventDetail"
      enclosing-type-id-ref="vim.event.EventDescription"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Each Event object provides an automatic event message string through
  its <a href="vim.event.Event.html#fullFormattedMessage">fullFormattedMessage</a> 
  property. However, you can use the EventDetail object's properties to 
  format an event message string that is appropriate when viewed from 
  a specific context. The variable information (vm.name, and so on) is 
  derived from the Event object's event arguments 
  (<a href="vim.event.Event.html#vm">vm</a>, and so on).]]>
      </description-html>
            <property name="key" type-id-ref="vmodl.TypeName"
      vmodl-name="key"
      >
      <description-html>
         <![CDATA[Type of event being described.]]>
      </description-html>
      </property>

            <property name="description" type-id-ref="java.lang.String"
      vmodl-name="description"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[A string that is a short human-parseable description of the event.
  <p>
  This is not the full message string (which may contain details
  of the arguments, etc.), but merely a more understandable, and
  localized, description of what the event stands for. It is meant
  for contexts where the <i>name</i> of the event has to be displayed
  to end-users, e.g. when creating Event-based Alarms.
 `     *  <p>
  E.g., for <a href="vim.event.VmPoweredOnEvent.html">VmPoweredOnEvent</a>, the eventDescription
  in English might say "VM Powered On".]]>
      </description-html>
      </property>

            <property name="category" type-id-ref="java.lang.String"
      vmodl-name="category"
      >
      <description-html>
         <![CDATA[A category of events.]]>
      </description-html>
      </property>

            <property name="formatOnDatacenter" type-id-ref="java.lang.String"
      vmodl-name="formatOnDatacenter"
      >
      <description-html>
         <![CDATA[A string that is appropriate in the context of a specific 
  Datacenter. For example, a renaming event in this context produces 
  the following string:
  <p>
     "Renamed {vm.name} from {oldName} to {newName}"
  <p>
  where <a href="vim.event.VmRenamedEvent.html#oldName">oldName</a> and 
  <a href="vim.event.VmRenamedEvent.html#newName">newName</a> are properties of the 
  VmRenamedEvent object.]]>
      </description-html>
      </property>

            <property name="formatOnComputeResource" type-id-ref="java.lang.String"
      vmodl-name="formatOnComputeResource"
      >
      <description-html>
         <![CDATA[A string that is appropriate in the context of a specific cluster. 
  For example, a powering on event in this context produces the 
  following string:
  <p>
     "{vm.name} on {host.name} is powered on".]]>
      </description-html>
      </property>

            <property name="formatOnHost" type-id-ref="java.lang.String"
      vmodl-name="formatOnHost"
      >
      <description-html>
         <![CDATA[A string that is appropriate in the context 
  of a specific Host. For example, a powering on event in this 
  context produces the following string:
  <p>
     "{vm.name} is powered on"]]>
      </description-html>
      </property>

            <property name="formatOnVm" type-id-ref="java.lang.String"
      vmodl-name="formatOnVm"
      >
      <description-html>
         <![CDATA[A string that is appropriate for the context of a specific 
  virtual machine. For example, a powering on event in this context 
  produces the following string:
  <p>
     "Virtual machine on {host.name} is powered on"]]>
      </description-html>
      </property>

            <property name="fullFormat" type-id-ref="java.lang.String"
      vmodl-name="fullFormat"
      >
      <description-html>
         <![CDATA[A string whose context is not entity-specific.  For example, a 
  powering on event produces the following string:
  <p>
     "{vm.name} on  {host.name} in {datacenter.name} is powered on"]]>
      </description-html>
      </property>

            <property name="longDescription" type-id-ref="java.lang.String"
      vmodl-name="longDescription"
      version-id-ref="vim.version.version6"
      is-optional="true"
      >
      <description-html>
         <![CDATA[A detailed description of the event.  It includes common causes
  and actions to remediate them.  It may also include links to kb
  articles and other diagnostic information.
  For example, the BadUserNameSessionEvent may produce the
  following string:
  <p>
     <EventLongDescription id="vim.event.BadUserNameSessionEvent">
        <description>
           The user could not be logged in because of an unknown or invalid
           user name.
        </description>
        <cause>
           <description>The user name was unknown to the system</description>
           <action>Use a user name known to the system user directory</action>
           <action>(On Linux) Check if the user directory is correctly
                   configured.</action>
           <action>Check the health of the domain controller (if you are using
                   Active Directory)</action>
        </cause>
        <cause>
           <description>The user provided an invalid password</description>
           <action>Supply the correct password</action>
        </cause>
     </EventLongDescription>]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="NetStackInstanceProfile"
      type-id="vim.profile.host.NetStackInstanceProfile"
      vmodl-name="vim.profile.host.NetStackInstanceProfile"
      version-id-ref="vim.version.version9"
      base-type-id="vim.profile.ApplyProfile"
      >
      <description-html>
         <![CDATA[The <a href="vim.profile.host.NetStackInstanceProfile.html">NetStackInstanceProfile</a> data object represents a subprofile
  for a netStackInstance.]]>
      </description-html>
            <property name="key" type-id-ref="java.lang.String"
      vmodl-name="key"
      >
      <description-html>
         <![CDATA[Linkable identifier.]]>
      </description-html>
      </property>

            <property name="dnsConfig" type-id-ref="vim.profile.host.NetworkProfile.DnsConfigProfile"
      vmodl-name="dnsConfig"
      >
      <description-html>
         <![CDATA[DnsConfig SubProfile for this instance of the stack.]]>
      </description-html>
      </property>

            <property name="ipRouteConfig" type-id-ref="vim.profile.host.IpRouteProfile"
      vmodl-name="ipRouteConfig"
      >
      <description-html>
         <![CDATA[IpRoute  SubProfile for this instance of the stack.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ClusterComputeResourceHostConfigurationValidation"
      type-id="vim.ClusterComputeResource.HostConfigurationValidation"
      vmodl-name="vim.ClusterComputeResource.HostConfigurationValidation"
      enclosing-type-id-ref="vim.ClusterComputeResource"
      version-id-ref="vim.version.version13"
      base-type-id="vim.ClusterComputeResource.ValidationResultBase"
      >
      <description-html>
         <![CDATA[Describes the validations applicable to the settings on the host.]]>
      </description-html>
            <property name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      >
      <description-html>
         <![CDATA[Host being validated.]]>
      </description-html>
      </property>

            <property name="isDvsSettingValid" type-id-ref="BOOLEAN"
      vmodl-name="isDvsSettingValid"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Check if the host is attached to the DVS on right adapters.]]>
      </description-html>
      </property>

            <property name="isVmknicSettingValid" type-id-ref="BOOLEAN"
      vmodl-name="isVmknicSettingValid"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Check if the adapters for services are present and on the right
 portgroups.]]>
      </description-html>
      </property>

            <property name="isNtpSettingValid" type-id-ref="BOOLEAN"
      vmodl-name="isNtpSettingValid"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Check if NTP is configured per specification.]]>
      </description-html>
      </property>

            <property name="isLockdownModeValid" type-id-ref="BOOLEAN"
      vmodl-name="isLockdownModeValid"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Check if lockdown mode is set per specification]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ServiceLocator"
      type-id="vim.ServiceLocator"
      vmodl-name="vim.ServiceLocator"
      version-id-ref="vim.version.version10"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object type specifies the information of a service endpoint as
  well as the parameters needed to locate and login to to the service
  endpoint.]]>
      </description-html>
            <property name="instanceUuid" type-id-ref="java.lang.String"
      vmodl-name="instanceUuid"
      >
      <description-html>
         <![CDATA[Unique ID of the instance to which the service belongs.  For
 instances that support the vSphere API, this is the same as the
 value found in <a href="vim.AboutInfo.html#instanceUuid">instanceUuid</a>.]]>
      </description-html>
      </property>

            <property name="url" type-id-ref="java.lang.String"
      vmodl-name="url"
      >
      <description-html>
         <![CDATA[URL used to access the service endpoint]]>
      </description-html>
      </property>

            <property name="credential" type-id-ref="vim.ServiceLocator.Credential"
      vmodl-name="credential"
      >
      <description-html>
         <![CDATA[Credential to establish the connection and login to the service.]]>
      </description-html>
      </property>

            <property name="sslThumbprint" type-id-ref="java.lang.String"
      vmodl-name="sslThumbprint"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The sslThumbprint of the service endpoint]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.ServiceLocator.Credential</nested-type-id-ref>
      <nested-type-id-ref>vim.ServiceLocator.NamePassword</nested-type-id-ref>
      <nested-type-id-ref>vim.ServiceLocator.SAMLCredential</nested-type-id-ref>
   </data-object>
   <data-object name="HostAuthenticationStoreInfo"
      type-id="vim.host.AuthenticationStoreInfo"
      vmodl-name="vim.host.AuthenticationStoreInfo"
      version-id-ref="vim.version.version6"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The <a href="vim.host.AuthenticationStoreInfo.html">HostAuthenticationStoreInfo</a> base class defines status information
  for local and host Active Directory authentication.]]>
      </description-html>
            <property name="enabled" type-id-ref="BOOLEAN"
      vmodl-name="enabled"
      >
      <description-html>
         <![CDATA[Indicates whether the authentication store is configured.
  <ul>
    <li> Host Active Directory authentication - <code>enabled</code>
         is <code>True</code> if the host is a member of a domain.
    </li>
    <li> Local authentication - <code>enabled</code> is always <code>True</code>.
    </li>
  </ul>]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualDiskRawDiskVer2BackingInfo"
      type-id="vim.vm.device.VirtualDisk.RawDiskVer2BackingInfo"
      vmodl-name="vim.vm.device.VirtualDisk.RawDiskVer2BackingInfo"
      enclosing-type-id-ref="vim.vm.device.VirtualDisk"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.device.VirtualDevice.DeviceBackingInfo"
      >
      <description-html>
         <![CDATA[This data object type contains information about backing a virtual disk by
  using a host device, as used by VMware Server.]]>
      </description-html>
            <property name="descriptorFileName" type-id-ref="java.lang.String"
      vmodl-name="descriptorFileName"
      >
      <description-html>
         <![CDATA[The name of the raw disk descriptor file.]]>
      </description-html>
      </property>

            <property name="uuid" type-id-ref="java.lang.String"
      vmodl-name="uuid"
      version-id-ref="vim.version.version2"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Disk UUID for the virtual disk, if available.]]>
      </description-html>
      </property>

            <property name="changeId" type-id-ref="java.lang.String"
      vmodl-name="changeId"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The change ID of the virtual disk for the corresponding
 snapshot or virtual machine. This can be used to track
 incremental changes to a virtual disk. See
 <a href="vim.VirtualMachine.html#queryChangedDiskAreas">QueryChangedDiskAreas</a>.]]>
      </description-html>
      </property>

            <property name="sharing" type-id-ref="java.lang.String"
      vmodl-name="sharing"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The sharing mode of the virtual disk.
 See <a href="vim.vm.device.VirtualDisk.Sharing.html">VirtualDiskSharing</a>. The default value is
 no sharing.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VchaClusterConfigSpec"
      type-id="vim.vcha.FailoverClusterConfigurator.VchaClusterConfigSpec"
      vmodl-name="vim.vcha.FailoverClusterConfigurator.VchaClusterConfigSpec"
      enclosing-type-id-ref="vim.vcha.FailoverClusterConfigurator"
      version-id-ref="vim.version.version11"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The VchaClusterConfigSpec class contains IP addresses of
  Passive and Witness nodes to configure and form the VCHA Cluster.
  Passive and Witness nodes are assumed to be pre-configured
  to allow access to them over the specified IP addresses.
  Active Node IP address is not required as it is retrieved from
  the already configured interface on VCHA Cluster network.]]>
      </description-html>
            <property name="passiveIp" type-id-ref="java.lang.String"
      vmodl-name="passiveIp"
      >
      <description-html>
         <![CDATA[IP Address of Passive node in the VCHA Cluster network.]]>
      </description-html>
      </property>

            <property name="witnessIp" type-id-ref="java.lang.String"
      vmodl-name="witnessIp"
      >
      <description-html>
         <![CDATA[IP Address of Witness node in the VCHA Cluster network.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="LicenseSource"
      type-id="vim.LicenseManager.LicenseSource"
      vmodl-name="vim.LicenseManager.LicenseSource"
      enclosing-type-id-ref="vim.LicenseManager"
      version-id-ref="vim.version.version1"
      is-deprecated="true"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object type is used to communicate configuration about
  where to find licenses to use for this system.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 4.0, this is not used by the system.]]>
      </deprecated-html>
   </data-object>
   <data-object name="DatastoreCapacityIncreasedEvent"
      type-id="vim.event.DatastoreCapacityIncreasedEvent"
      vmodl-name="vim.event.DatastoreCapacityIncreasedEvent"
      version-id-ref="vim.version.version5"
      base-type-id="vim.event.DatastoreEvent"
      >
      <description-html>
         <![CDATA[This event records when increase in a datastore's capacity is observed.
 It may happen due to different reasons, like extending or expanding a
 datastore.]]>
      </description-html>
            <property name="oldCapacity" type-id-ref="LONG"
      vmodl-name="oldCapacity"
      >
      <description-html>
         <![CDATA[The old datastore capacity.]]>
      </description-html>
      </property>

            <property name="newCapacity" type-id-ref="LONG"
      vmodl-name="newCapacity"
      >
      <description-html>
         <![CDATA[The new datastore capacity.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostUnresolvedVmfsVolume"
      type-id="vim.host.UnresolvedVmfsVolume"
      vmodl-name="vim.host.UnresolvedVmfsVolume"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Information about detected unbound, unresolved VMFS volume.
  An unresolved VMFS volume is reported when one or more device
  partitions of volume are detected to have copies of extents
  of the volume. Such copies can be created via replication or
  snapshots.

  <p>
  UnresolvedVmfsVolume are not mounted on the host where they
  are detected. User may choose to resignature the volume in
  which case a new Uuid is assigned to the volume and contents
  of the VMFS volume is kept intact.

  <p>
  User may choose to keep the original Uuid and mount the VMFS
  volume as it is on the given host. In this case, user has
  chosen to mount the copy of the VMFS volume on that host with
  no change to the original Uuid. This may fail with
  VmfsVolumeAlreadyMounted exception if there is an existing
  VMFS volume with the same Uuid mounted somewhere in the same
  datacenter.

  <p>
  Simple diagram representing the possible operations on UnresolvedVmfsVolume

  <pre>
                resignature                 forceMount
  VmfsVolume <---------------  Unresolved ------------>  VmfsVolume with
 forceMountedInfo              Vmfs Volume              forceMountedInfo
  not set                                                  will be set

  </pre><br>See <a href="vim.host.StorageSystem.html">HostStorageSystem</a><br>]]>
      </description-html>
            <property name="extent" type-id-ref="vim.host.UnresolvedVmfsExtent"
      vmodl-name="extent"
      is-array="true"
      >
      <description-html>
         <![CDATA[List of detected copies of VMFS extents.]]>
      </description-html>
      </property>

            <property name="vmfsLabel" type-id-ref="java.lang.String"
      vmodl-name="vmfsLabel"
      >
      <description-html>
         <![CDATA[The detected VMFS label name]]>
      </description-html>
      </property>

            <property name="vmfsUuid" type-id-ref="java.lang.String"
      vmodl-name="vmfsUuid"
      >
      <description-html>
         <![CDATA[The detected VMFS UUID]]>
      </description-html>
      </property>

            <property name="totalBlocks" type-id-ref="INT"
      vmodl-name="totalBlocks"
      >
      <description-html>
         <![CDATA[Total number of blocks in this volume.]]>
      </description-html>
      </property>

            <property name="resolveStatus" type-id-ref="vim.host.UnresolvedVmfsVolume.ResolveStatus"
      vmodl-name="resolveStatus"
      >
      <description-html>
         <![CDATA[Information related to how the volume might be resolved.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.host.UnresolvedVmfsVolume.ResolveStatus</nested-type-id-ref>
   </data-object>
   <data-object name="HostCpuInfo"
      type-id="vim.host.CpuInfo"
      vmodl-name="vim.host.CpuInfo"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Information about the CPUs.]]>
      </description-html>
            <property name="numCpuPackages" type-id-ref="SHORT"
      vmodl-name="numCpuPackages"
      >
      <description-html>
         <![CDATA[Number of physical CPU packages on the host.]]>
      </description-html>
      </property>

            <property name="numCpuCores" type-id-ref="SHORT"
      vmodl-name="numCpuCores"
      >
      <description-html>
         <![CDATA[Number of physical CPU cores on the host.]]>
      </description-html>
      </property>

            <property name="numCpuThreads" type-id-ref="SHORT"
      vmodl-name="numCpuThreads"
      >
      <description-html>
         <![CDATA[Number of physical CPU threads on the host.]]>
      </description-html>
      </property>

            <property name="hz" type-id-ref="LONG"
      vmodl-name="hz"
      >
      <description-html>
         <![CDATA[CPU speed per core. This might be an averaged value if the speed
  is not uniform across all cores. The total CPU speed of the box is
  defined as hz * numCpuCores]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DvsRateLimitNetworkRuleAction"
      type-id="vim.dvs.TrafficRule.RateLimitAction"
      vmodl-name="vim.dvs.TrafficRule.RateLimitAction"
      enclosing-type-id-ref="vim.dvs.TrafficRule"
      version-id-ref="vim.version.version9"
      base-type-id="vim.dvs.TrafficRule.Action"
      >
      <description-html>
         <![CDATA[This class defines network rule action to ratelimit packets.]]>
      </description-html>
            <property name="packetsPerSecond" type-id-ref="INT"
      vmodl-name="packetsPerSecond"
      >
      <description-html>
         <![CDATA[Rate limit value specified in packets per second.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualDiskDeltaDiskFormatsSupported"
      type-id="vim.vm.device.VirtualDiskOption.DeltaDiskFormatsSupported"
      vmodl-name="vim.vm.device.VirtualDiskOption.DeltaDiskFormatsSupported"
      enclosing-type-id-ref="vim.vm.device.VirtualDiskOption"
      version-id-ref="vim.version.version8"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Delta disk format supported for each datastore type.]]>
      </description-html>
            <property name="datastoreType" type-id-ref="vmodl.TypeName"
      vmodl-name="datastoreType"
      >
      <description-html>
         <![CDATA[Datastore type name]]>
      </description-html>
      </property>

            <property name="deltaDiskFormat" type-id-ref="vim.option.ChoiceOption"
      vmodl-name="deltaDiskFormat"
      >
      <description-html>
         <![CDATA[Delta disk formats supported. Valid values are:
  <ul>
  <li>vim.vm.device.VirtualDisk.DeltaDiskFormat#redoLogFormat
  <li>vim.vm.device.VirtualDisk.DeltaDiskFormat#nativeFormat
  </ul>]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="WinNetBIOSConfigInfo"
      type-id="vim.net.WinNetBIOSConfigInfo"
      vmodl-name="vim.net.WinNetBIOSConfigInfo"
      version-id-ref="vim.version.version6"
      base-type-id="vim.net.NetBIOSConfigInfo"
      >
      <description-html>
         <![CDATA[This data object type describes the Windows-specific
 NetBIOS configuration.]]>
      </description-html>
            <property name="primaryWINS" type-id-ref="java.lang.String"
      vmodl-name="primaryWINS"
      >
      <description-html>
         <![CDATA[The IP address of the primary WINS server.]]>
      </description-html>
      </property>

            <property name="secondaryWINS" type-id-ref="java.lang.String"
      vmodl-name="secondaryWINS"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The IP address of the secondary WINS server.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="GuestDiskInfo"
      type-id="vim.vm.GuestInfo.DiskInfo"
      vmodl-name="vim.vm.GuestInfo.DiskInfo"
      enclosing-type-id-ref="vim.vm.GuestInfo"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Information about each local virtual disk configured in the
 guest operating system.]]>
      </description-html>
            <property name="diskPath" type-id-ref="java.lang.String"
      vmodl-name="diskPath"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Name of the virtual disk in the guest operating system.
 For example: C:\]]>
      </description-html>
      </property>

            <property name="capacity" type-id-ref="LONG"
      vmodl-name="capacity"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Total capacity of the disk, in bytes.
 This is part of the virtual machine configuration.]]>
      </description-html>
      </property>

            <property name="freeSpace" type-id-ref="LONG"
      vmodl-name="freeSpace"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Free space on the disk, in bytes.
 This is retrieved by VMware Tools.]]>
      </description-html>
      </property>

            <property name="filesystemType" type-id-ref="java.lang.String"
      vmodl-name="filesystemType"
      version-id-ref="vim.version.v7_0"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Filesystem type, if known. For example NTFS or ext3.]]>
      </description-html>
      </property>

            <property name="mappings" type-id-ref="vim.vm.GuestInfo.VirtualDiskMapping"
      vmodl-name="mappings"
      version-id-ref="vim.version.v7_0"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[VirtualDisks backing the guest partition, if known.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="AlarmActionTriggeredEvent"
      type-id="vim.event.AlarmActionTriggeredEvent"
      vmodl-name="vim.event.AlarmActionTriggeredEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.AlarmEvent"
      >
      <description-html>
         <![CDATA[This event records that an alarm was triggered.]]>
      </description-html>
            <property name="source" type-id-ref="vim.event.ManagedEntityEventArgument"
      vmodl-name="source"
      >
      <description-html>
         <![CDATA[The entity that triggered the alarm.]]>
      </description-html>
      </property>

            <property name="entity" type-id-ref="vim.event.ManagedEntityEventArgument"
      vmodl-name="entity"
      >
      <description-html>
         <![CDATA[The entity with which the alarm is registered.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="WarningUpgradeEvent"
      type-id="vim.event.WarningUpgradeEvent"
      vmodl-name="vim.event.WarningUpgradeEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.UpgradeEvent"
      >
      <description-html>
         <![CDATA[This event is a general warning event from upgrade.]]>
      </description-html>
   </data-object>
   <data-object name="VcAgentUpgradedEvent"
      type-id="vim.event.VcAgentUpgradedEvent"
      vmodl-name="vim.event.VcAgentUpgradedEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.HostEvent"
      >
      <description-html>
         <![CDATA[This event records when the VirtualCenter agent on a host upgraded.]]>
      </description-html>
   </data-object>
   <data-object name="OnceTaskScheduler"
      type-id="vim.scheduler.OnceTaskScheduler"
      vmodl-name="vim.scheduler.OnceTaskScheduler"
      version-id-ref="vim.version.version1"
      base-type-id="vim.scheduler.TaskScheduler"
      >
      <description-html>
         <![CDATA[The <a href="vim.scheduler.OnceTaskScheduler.html">OnceTaskScheduler</a> data object establishes the time for running
  a scheduled task only once.]]>
      </description-html>
            <property name="runAt" type-id-ref="vmodl.DateTime"
      vmodl-name="runAt"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The time a task will run.
  If you do not set the time, it executes immediately.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VnicPortArgument"
      type-id="vim.event.VnicPortArgument"
      vmodl-name="vim.event.VnicPortArgument"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This argument records a Virtual NIC device that connects to a DVPort.]]>
      </description-html>
            <property name="vnic" type-id-ref="java.lang.String"
      vmodl-name="vnic"
      >
      <description-html>
         <![CDATA[The Virtual NIC devices that were using the DVports.]]>
      </description-html>
      </property>

            <property name="port" type-id-ref="vim.dvs.PortConnection"
      vmodl-name="port"
      >
      <description-html>
         <![CDATA[The DVPorts that were being used.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostPlugStoreTopologyAdapter"
      type-id="vim.host.PlugStoreTopology.Adapter"
      vmodl-name="vim.host.PlugStoreTopology.Adapter"
      enclosing-type-id-ref="vim.host.PlugStoreTopology"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object type is an association class that describes a host bus
  adapter and its associated storage Paths.  The set of Paths on all the
  host bus adapters is the complete set of Paths in the system.]]>
      </description-html>
            <property name="key" type-id-ref="java.lang.String"
      vmodl-name="key"
      >
      <description-html>
         <![CDATA[The identifier for the host bus adapter.]]>
      </description-html>
      </property>

            <property name="adapter" type-id-ref="vim.host.HostBusAdapter"
      vmodl-name="adapter"
      is-link="true"
      >
      <description-html>
         <![CDATA[The link to the host bus adapter for this inebtrface.]]>
      </description-html>
      </property>

            <property name="path" type-id-ref="vim.host.PlugStoreTopology.Path"
      vmodl-name="path"
      is-array="true"
      is-optional="true"
      is-link="true"
      >
      <description-html>
         <![CDATA[The list of paths to which the host bus adapter is associated.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ClusterInitialPlacementAction"
      type-id="vim.cluster.InitialPlacementAction"
      vmodl-name="vim.cluster.InitialPlacementAction"
      version-id-ref="vim.version.version2"
      base-type-id="vim.cluster.Action"
      >
      <description-html>
         <![CDATA[Describes an initial placement of a single virtual machine]]>
      </description-html>
            <property name="targetHost" type-id-ref="vim.HostSystem"
      vmodl-name="targetHost"
      >
      <description-html>
         <![CDATA[The host where the virtual machine should be initially placed.]]>
      </description-html>
      </property>

            <property name="pool" type-id-ref="vim.ResourcePool"
      vmodl-name="pool"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The resource pool to place the virtual machine into in case this
       action is for migrating from outside cluster.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="AlarmState"
      type-id="vim.alarm.AlarmState"
      vmodl-name="vim.alarm.AlarmState"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Information about the alarm's state.]]>
      </description-html>
            <property name="key" type-id-ref="java.lang.String"
      vmodl-name="key"
      >
      <description-html>
         <![CDATA[Unique key that identifies the alarm.]]>
      </description-html>
      </property>

            <property name="entity" type-id-ref="vim.ManagedEntity"
      vmodl-name="entity"
      >
      <description-html>
         <![CDATA[Entity on which the alarm is instantiated.]]>
      </description-html>
      </property>

            <property name="alarm" type-id-ref="vim.alarm.Alarm"
      vmodl-name="alarm"
      >
      <description-html>
         <![CDATA[Alarm object from which the AlarmState object is instantiated.]]>
      </description-html>
      </property>

            <property name="overallStatus" type-id-ref="vim.ManagedEntity.Status"
      vmodl-name="overallStatus"
      >
      <description-html>
         <![CDATA[Overall status of the alarm object.
  This is the value of the alarm's top-level expression.

  In releases after vSphere API 5.0, vSphere Servers might not
  generate property collector update notifications for this property.
  To obtain the latest value of the property, you can use
  PropertyCollector methods RetrievePropertiesEx or WaitForUpdatesEx.
  If you use the PropertyCollector.WaitForUpdatesEx method, specify
  an empty string for the version parameter.

  Since this property is on a DataObject, an update returned by WaitForUpdatesEx may
  contain values for this property when some other property on the DataObject changes.
  If this update is a result of a call to WaitForUpdatesEx with a non-empty
  version parameter, the value for this property may not be current.]]>
      </description-html>
      </property>

            <property name="time" type-id-ref="vmodl.DateTime"
      vmodl-name="time"
      >
      <description-html>
         <![CDATA[Time the alarm triggered.]]>
      </description-html>
      </property>

            <property name="acknowledged" type-id-ref="BOOLEAN"
      vmodl-name="acknowledged"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Flag to indicate if the alarm's actions have been acknowledged for the
  associated ManagedEntity.]]>
      </description-html>
      </property>

            <property name="acknowledgedByUser" type-id-ref="java.lang.String"
      vmodl-name="acknowledgedByUser"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The user who acknowledged this triggering.  If the triggering has not
  been acknowledged, then the value is not valid.]]>
      </description-html>
      </property>

            <property name="acknowledgedTime" type-id-ref="vmodl.DateTime"
      vmodl-name="acknowledgedTime"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The time this triggering was acknowledged.  If the triggering has not
  been acknowledged, then the value is not valid.]]>
      </description-html>
      </property>

            <property name="eventKey" type-id-ref="INT"
      vmodl-name="eventKey"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Contains the key of the event that has triggered the alarm. The value
  is set only for event based alarms. The value is not set for gray or
  manually reset alarms (via vim.AlarmManager.setAlarmStatus).]]>
      </description-html>
      </property>

            <property name="disabled" type-id-ref="BOOLEAN"
      vmodl-name="disabled"
      version-id-ref="vim.version.v6_9_1"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Flag to indicate if the alarm is disabled for the associated
  ManagedEntity.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VAppConfigSpec"
      type-id="vim.vApp.VAppConfigSpec"
      vmodl-name="vim.vApp.VAppConfigSpec"
      version-id-ref="vim.version.version5"
      base-type-id="vim.vApp.VmConfigSpec"
      >
      <description-html>
         <![CDATA[Configuration of a vApp]]>
      </description-html>
            <property name="entityConfig" type-id-ref="vim.vApp.EntityConfigInfo"
      vmodl-name="entityConfig"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Configuration of sub-entities (virtual machine or vApp container).
 <p>
 Reconfigure privilege: See EntityConfigInfo]]>
      </description-html>
      </property>

            <property name="annotation" type-id-ref="java.lang.String"
      vmodl-name="annotation"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Description for the vApp.
 <p>
 Reconfigure privilege: VApp.Rename.]]>
      </description-html>
      </property>

            <property name="instanceUuid" type-id-ref="java.lang.String"
      vmodl-name="instanceUuid"
      version-id-ref="vim.version.version6"
      is-optional="true"
      >
      <description-html>
         <![CDATA[vCenter-specific 128-bit UUID of a vApp, represented as a hexadecimal
  string. This identifier is used  by vCenter to uniquely identify all
  vApp instances in the Virtual Infrastructure environment.
  <p>
  Normally, this property is not set by a client, allowing the
  Virtual Infrastructure environment to assign or change it when
  VirtualCenter detects an identifier conflict between vApps.
  <p>
  Reconfigure privilege: VApp.ApplicationConfig]]>
      </description-html>
      </property>

            <property name="managedBy" type-id-ref="vim.ext.ManagedByInfo"
      vmodl-name="managedBy"
      version-id-ref="vim.version.version7"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Specifies that this vApp is managed by a VC Extension.
 <p>
 This information is primarily used in the Client to show a custom icon for
 managed vApps, and a description of the function of the vApp. If no extension
 can be found with the extension key in the <a href="vim.ext.ManagedByInfo.html">managedBy</a>
 object, or the type is not found in the
 <a href="vim.Extension.html#managedEntityInfo">managedEntityInfo</a> list of the
 extension, the default vApp icon is used, and no description is shown.
 <p>
 Reconfigure privilege: VApp.ApplicationConfig]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualMachineRelocateSpecDiskLocatorBackingSpec"
      type-id="vim.vm.RelocateSpec.DiskLocator.BackingSpec"
      vmodl-name="vim.vm.RelocateSpec.DiskLocator.BackingSpec"
      enclosing-type-id-ref="vim.vm.RelocateSpec.DiskLocator"
      version-id-ref="vim.version.v7_0"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[<code><a href="vim.vm.RelocateSpec.DiskLocator.BackingSpec.html">VirtualMachineRelocateSpecDiskLocatorBackingSpec</a></code> is a data
 object type for crytographic information about the backing of a
 device.
 The member <a href="vim.vm.RelocateSpec.DiskLocator.BackingSpec.html#parent">parent</a> refers the parent in the chain of
 <a href="vim.vm.device.VirtualDevice.BackingInfo.html">VirtualDeviceBackingInfo</a> objects.]]>
      </description-html>
            <property name="parent" type-id-ref="vim.vm.RelocateSpec.DiskLocator.BackingSpec"
      vmodl-name="parent"
      is-optional="true"
      >
      </property>

            <property name="crypto" type-id-ref="vim.encryption.CryptoSpec"
      vmodl-name="crypto"
      is-optional="true"
      >
      </property>

   </data-object>
   <data-object name="VsanUpgradeSystemUpgradeHistoryDiskGroupOp"
      type-id="vim.VsanUpgradeSystem.UpgradeHistoryDiskGroupOp"
      vmodl-name="vim.VsanUpgradeSystem.UpgradeHistoryDiskGroupOp"
      enclosing-type-id-ref="vim.VsanUpgradeSystem"
      version-id-ref="vim.version.version10"
      base-type-id="vim.VsanUpgradeSystem.UpgradeHistoryItem"
      >
      <description-html>
         <![CDATA[The upgrade process removed or added VSAN from/to a disk group. Class
 provides details about the operation and the disk group.]]>
      </description-html>
            <property name="operation" type-id-ref="java.lang.String"
      vmodl-name="operation"
      >
      <description-html>
         <![CDATA[Type of the operation, e.g. add or remove.<br>See <a href="vim.VsanUpgradeSystem.UpgradeHistoryDiskGroupOpType.html">VsanUpgradeSystemUpgradeHistoryDiskGroupOpType</a><br>]]>
      </description-html>
      </property>

            <property name="diskMapping" type-id-ref="vim.vsan.host.DiskMapping"
      vmodl-name="diskMapping"
      >
      <description-html>
         <![CDATA[Disk group that is being added/removed]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualEthernetCardOption"
      type-id="vim.vm.device.VirtualEthernetCardOption"
      vmodl-name="vim.vm.device.VirtualEthernetCardOption"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.device.VirtualDeviceOption"
      >
      <description-html>
         <![CDATA[This data object type contains the options for the
  virtual ethernet card data object type.]]>
      </description-html>
            <property name="supportedOUI" type-id-ref="vim.option.ChoiceOption"
      vmodl-name="supportedOUI"
      >
      <description-html>
         <![CDATA[The valid Organizational Unique Identifiers (OUIs)
  supported by this virtual Ethernet card.
  <table>
  <dt>Supported OUIs for statically assigned MAC addresses:</dt>
  <dd>"00:50:56"</dd>
  </table>]]>
      </description-html>
      </property>

            <property name="macType" type-id-ref="vim.option.ChoiceOption"
      vmodl-name="macType"
      >
      <description-html>
         <![CDATA[The supported MAC address types.]]>
      </description-html>
      </property>

            <property name="wakeOnLanEnabled" type-id-ref="vim.option.BoolOption"
      vmodl-name="wakeOnLanEnabled"
      >
      <description-html>
         <![CDATA[Flag to indicate whether or not wake-on-LAN is settable on this device.]]>
      </description-html>
      </property>

            <property name="vmDirectPathGen2Supported" type-id-ref="BOOLEAN"
      vmodl-name="vmDirectPathGen2Supported"
      version-id-ref="vim.version.version6"
      >
      <description-html>
         <![CDATA[Flag to indicate whether VMDirectPath Gen 2 is available on this device.]]>
      </description-html>
      </property>

            <property name="uptCompatibilityEnabled" type-id-ref="vim.option.BoolOption"
      vmodl-name="uptCompatibilityEnabled"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Flag to indicate whether Universal Pass-through(UPT) is settable on this device.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.vm.device.VirtualEthernetCardOption.NetworkBackingOption</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.device.VirtualEthernetCardOption.OpaqueNetworkBackingOption</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.device.VirtualEthernetCardOption.LegacyNetworkBackingOption</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.device.VirtualEthernetCardOption.DistributedVirtualPortBackingOption</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.device.VirtualEthernetCardOption.MacTypes</nested-type-id-ref>
   </data-object>
   <data-object name="VirtualMachineBootOptionsBootableDiskDevice"
      type-id="vim.vm.BootOptions.BootableDiskDevice"
      vmodl-name="vim.vm.BootOptions.BootableDiskDevice"
      enclosing-type-id-ref="vim.vm.BootOptions"
      version-id-ref="vim.version.version7"
      base-type-id="vim.vm.BootOptions.BootableDevice"
      >
      <description-html>
         <![CDATA[Bootable disk.]]>
      </description-html>
            <property name="deviceKey" type-id-ref="INT"
      vmodl-name="deviceKey"
      >
      <description-html>
         <![CDATA[<a href="vim.vm.device.VirtualDevice.html#key">key</a>
  property of the bootable harddisk.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DVSConfigInfo"
      type-id="vim.DistributedVirtualSwitch.ConfigInfo"
      vmodl-name="vim.DistributedVirtualSwitch.ConfigInfo"
      enclosing-type-id-ref="vim.DistributedVirtualSwitch"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Configuration of a <a href="vim.DistributedVirtualSwitch.html">DistributedVirtualSwitch</a>.]]>
      </description-html>
            <property name="uuid" type-id-ref="java.lang.String"
      vmodl-name="uuid"
      >
      <description-html>
         <![CDATA[Generated UUID of the switch. Unique across vCenter Server
  inventory and instances.]]>
      </description-html>
      </property>

            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      >
      <description-html>
         <![CDATA[Name of the switch.]]>
      </description-html>
      </property>

            <property name="numStandalonePorts" type-id-ref="INT"
      vmodl-name="numStandalonePorts"
      >
      <description-html>
         <![CDATA[Number of standalone ports in the switch. Standalone ports are
  ports that do not belong to any portgroup.]]>
      </description-html>
      </property>

            <property name="numPorts" type-id-ref="INT"
      vmodl-name="numPorts"
      >
      <description-html>
         <![CDATA[Current number of ports, not including conflict ports.]]>
      </description-html>
      </property>

            <property name="maxPorts" type-id-ref="INT"
      vmodl-name="maxPorts"
      >
      <description-html>
         <![CDATA[Maximum number of ports allowed in the switch,
  not including conflict ports.]]>
      </description-html>
      </property>

            <property name="uplinkPortPolicy" type-id-ref="vim.DistributedVirtualSwitch.UplinkPortPolicy"
      vmodl-name="uplinkPortPolicy"
      >
      <description-html>
         <![CDATA[Uplink port policy.]]>
      </description-html>
      </property>

            <property name="uplinkPortgroup" type-id-ref="vim.dvs.DistributedVirtualPortgroup"
      vmodl-name="uplinkPortgroup"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of uplink portgroups. When adding host members, the server
  uses the <a href="vim.DistributedVirtualSwitch.ConfigInfo.html#uplinkPortPolicy">uplinkPortPolicy</a> to create a number of
  uplink ports for the host. If portgroups are shown here,
  those uplink ports will be added to the portgroups, with uplink ports
  evenly spread among the portgroups.]]>
      </description-html>
      </property>

            <property name="defaultPortConfig" type-id-ref="vim.dvs.DistributedVirtualPort.Setting"
      vmodl-name="defaultPortConfig"
      >
      <description-html>
         <![CDATA[Default configuration for the ports in the switch, if the port
  does not inherit configuration from the parent portgroup or has
  its own configuration.]]>
      </description-html>
      </property>

            <property name="host" type-id-ref="vim.dvs.HostMember"
      vmodl-name="host"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Hosts that join the switch.]]>
      </description-html>
      </property>

            <property name="productInfo" type-id-ref="vim.dvs.ProductSpec"
      vmodl-name="productInfo"
      >
      <description-html>
         <![CDATA[Vendor, product, and version information for the implementation
  module of the switch.]]>
      </description-html>
      </property>

            <property name="targetInfo" type-id-ref="vim.dvs.ProductSpec"
      vmodl-name="targetInfo"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Intended vendor, product, and version information for the
  implementation module of the switch.]]>
      </description-html>
      </property>

            <property name="extensionKey" type-id-ref="java.lang.String"
      vmodl-name="extensionKey"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Key of the extension registered by the remote server that
  controls the switch.]]>
      </description-html>
      </property>

            <property name="vendorSpecificConfig" type-id-ref="vim.dvs.KeyedOpaqueBlob"
      vmodl-name="vendorSpecificConfig"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Opaque binary blob that stores vendor specific configuration.]]>
      </description-html>
      </property>

            <property name="policy" type-id-ref="vim.DistributedVirtualSwitch.SwitchPolicy"
      vmodl-name="policy"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Usage policy of the switch.]]>
      </description-html>
      </property>

            <property name="description" type-id-ref="java.lang.String"
      vmodl-name="description"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Description string for the switch.]]>
      </description-html>
      </property>

            <property name="configVersion" type-id-ref="java.lang.String"
      vmodl-name="configVersion"
      >
      <description-html>
         <![CDATA[Version string of the configuration.]]>
      </description-html>
      </property>

            <property name="contact" type-id-ref="vim.DistributedVirtualSwitch.ContactInfo"
      vmodl-name="contact"
      >
      <description-html>
         <![CDATA[Human operator contact information.]]>
      </description-html>
      </property>

            <property name="switchIpAddress" type-id-ref="java.lang.String"
      vmodl-name="switchIpAddress"
      version-id-ref="vim.version.version7"
      is-optional="true"
      >
      <description-html>
         <![CDATA[IP address for the switch, specified using IPv4 dot notation. The
  utility of this address is defined by other switch features.]]>
      </description-html>
      </property>

            <property name="createTime" type-id-ref="vmodl.DateTime"
      vmodl-name="createTime"
      >
      <description-html>
         <![CDATA[Create time of the switch.]]>
      </description-html>
      </property>

            <property name="networkResourceManagementEnabled" type-id-ref="BOOLEAN"
      vmodl-name="networkResourceManagementEnabled"
      version-id-ref="vim.version.version6"
      >
      <description-html>
         <![CDATA[Boolean to indicate if network I/O control is enabled on the
  switch.]]>
      </description-html>
      </property>

            <property name="defaultProxySwitchMaxNumPorts" type-id-ref="INT"
      vmodl-name="defaultProxySwitchMaxNumPorts"
      version-id-ref="vim.version.version8"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Default host proxy switch maximum port number]]>
      </description-html>
      </property>

            <property name="healthCheckConfig" type-id-ref="vim.DistributedVirtualSwitch.HealthCheckConfig"
      vmodl-name="healthCheckConfig"
      version-id-ref="vim.version.version8"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[VDS health check configuration.]]>
      </description-html>
      </property>

            <property name="infrastructureTrafficResourceConfig" type-id-ref="vim.DistributedVirtualSwitch.HostInfrastructureTrafficResource"
      vmodl-name="infrastructureTrafficResourceConfig"
      version-id-ref="vim.version.version10"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Host infrastructure traffic class resource configuration.]]>
      </description-html>
      </property>

            <property name="netResourcePoolTrafficResourceConfig" type-id-ref="vim.DistributedVirtualSwitch.HostInfrastructureTrafficResource"
      vmodl-name="netResourcePoolTrafficResourceConfig"
      version-id-ref="vim.version.version12"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Dynamic Host infrastructure traffic class resource configuration.]]>
      </description-html>
      </property>

            <property name="networkResourceControlVersion" type-id-ref="java.lang.String"
      vmodl-name="networkResourceControlVersion"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Network resource control version of the switch.
 Possible value can be of
 <a href="vim.DistributedVirtualSwitch.NetworkResourceControlVersion.html">DistributedVirtualSwitchNetworkResourceControlVersion</a>.]]>
      </description-html>
      </property>

            <property name="vmVnicNetworkResourcePool" type-id-ref="vim.dvs.VmVnicNetworkResourcePool"
      vmodl-name="vmVnicNetworkResourcePool"
      version-id-ref="vim.version.version10"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The Virtual NIC network resource pool information for the switch.]]>
      </description-html>
      </property>

            <property name="pnicCapacityRatioForReservation" type-id-ref="INT"
      vmodl-name="pnicCapacityRatioForReservation"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The percentage of physical nic link speed
  <a href="vim.host.PhysicalNic.LinkSpeedDuplex.html#speedMb">speedMb</a>
  available for infrastructure traffic reservation.
  If this value is 75, then for a 1Gbps physical nic, only
  750Mbps is allowed for all infrastructure traffic reservations.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostVirtualSwitchBeaconConfig"
      type-id="vim.host.VirtualSwitch.BeaconConfig"
      vmodl-name="vim.host.VirtualSwitch.BeaconConfig"
      enclosing-type-id-ref="vim.host.VirtualSwitch"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object type describes the configuration of the beacon
  to probe connectivity of physical network adapters.  A
  beacon is sent out of one network adapter and should arrive on another
  network adapter in the team.  The successful roundtrip indicates
  that the network adapters are working.
  <p>
  Define this data object to enable beacon probing as a method to validate
  the link status of a physical network adapter.  Beacon probing must
  be configured in order to use the beacon status as a criteria to
  determine if a physical network adapter failed.<br>See <a href="vim.host.NetworkPolicy.NicFailureCriteria.html#checkBeacon">checkBeacon</a><br>]]>
      </description-html>
            <property name="interval" type-id-ref="INT"
      vmodl-name="interval"
      >
      <description-html>
         <![CDATA[Determines how often, in seconds, a beacon should be sent.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DvsOperationBulkFaultFaultOnHost"
      type-id="vim.fault.DvsOperationBulkFault.FaultOnHost"
      vmodl-name="vim.fault.DvsOperationBulkFault.FaultOnHost"
      enclosing-type-id-ref="vim.fault.DvsOperationBulkFault"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The fault occurred on the host during an operation.]]>
      </description-html>
            <property name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      >
      <description-html>
         <![CDATA[The host.]]>
      </description-html>
      </property>

            <property name="fault" type-id-ref="vmodl.LocalizedMethodFault"
      vmodl-name="fault"
      >
      <description-html>
         <![CDATA[The fault that occurred.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostMissingNetworksEvent"
      type-id="vim.event.HostMissingNetworksEvent"
      vmodl-name="vim.event.HostMissingNetworksEvent"
      version-id-ref="vim.version.version5"
      is-deprecated="true"
      base-type-id="vim.event.HostDasEvent"
      >
      <description-html>
         <![CDATA[This event records the fact that a host is missing networks that
 other hosts are using for HA communication]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 5.0, the event is no longer relevant.]]>
      </deprecated-html>
            <property name="ips" type-id-ref="java.lang.String"
      vmodl-name="ips"
      is-optional="true"
      >
      </property>

   </data-object>
   <data-object name="VirtualVmxnet"
      type-id="vim.vm.device.VirtualVmxnet"
      vmodl-name="vim.vm.device.VirtualVmxnet"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.device.VirtualEthernetCard"
      >
      <description-html>
         <![CDATA[The VirtualVmxnet data object type represents an instance
  of the Vmxnet virtual Ethernet adapter attached to a virtual machine.]]>
      </description-html>
   </data-object>
   <data-object name="StorageDrsPodSelectionSpec"
      type-id="vim.storageDrs.PodSelectionSpec"
      vmodl-name="vim.storageDrs.PodSelectionSpec"
      version-id-ref="vim.version.version7"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Specification for moving or copying a virtual machine to a different Storage Pod.
  <p>]]>
      </description-html>
            <property name="initialVmConfig" type-id-ref="vim.storageDrs.PodSelectionSpec.VmPodConfig"
      vmodl-name="initialVmConfig"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[An optional list that allows specifying the storage pod location
  for each virtual disk and the VM configurations and overrides to be
  used during placement.]]>
      </description-html>
      </property>

            <property name="storagePod" type-id-ref="vim.StoragePod"
      vmodl-name="storagePod"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The storage pod where the virtual machine should be located.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.storageDrs.PodSelectionSpec.VmPodConfig</nested-type-id-ref>
      <nested-type-id-ref>vim.storageDrs.PodSelectionSpec.DiskLocator</nested-type-id-ref>
   </data-object>
   <data-object name="HostDasDisablingEvent"
      type-id="vim.event.HostDasDisablingEvent"
      vmodl-name="vim.event.HostDasDisablingEvent"
      version-id-ref="vim.version.version1"
      is-deprecated="true"
      base-type-id="vim.event.HostEvent"
      >
      <description-html>
         <![CDATA[This event records when HA is being disabled on a host.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 5.0, the event is no longer relevant.]]>
      </deprecated-html>
   </data-object>
   <data-object name="DvsFilterParameter"
      type-id="vim.dvs.DistributedVirtualPort.FilterParameter"
      vmodl-name="vim.dvs.DistributedVirtualPort.FilterParameter"
      enclosing-type-id-ref="vim.dvs.DistributedVirtualPort"
      version-id-ref="vim.version.version9"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This class defines Network Filter parameter.]]>
      </description-html>
            <property name="parameters" type-id-ref="java.lang.String"
      vmodl-name="parameters"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of parameters for a Network Filter.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ReplicationGroupId"
      type-id="vim.vm.replication.ReplicationGroupId"
      vmodl-name="vim.vm.replication.ReplicationGroupId"
      version-id-ref="vim.version.version11"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The identity of a replication group.
 <p>
 A following well-known ReplicationGroupId
 <p>{
 <p>   faultDomainId: <a valid fault domain id>
 <p>   deviceGroupId:  ffffffff-ffff-ffff-ffff-ffffffffffff
 <p>}
 <p>means that VASA provider can create a new ReplicationGroupId
 on demand (this feature may not be supported in the first
 vSphere release that supports VVol replication).]]>
      </description-html>
            <property name="faultDomainId" type-id-ref="vim.vm.replication.FaultDomainId"
      vmodl-name="faultDomainId"
      >
      <description-html>
         <![CDATA[ID of the fault domain to which the group belongs. Combined with the fault
 domain id, the group id is unique. A group may (or may not) have the same
 id in all the fault domains.]]>
      </description-html>
      </property>

            <property name="deviceGroupId" type-id-ref="vim.vm.replication.DeviceGroupId"
      vmodl-name="deviceGroupId"
      >
      <description-html>
         <![CDATA[Id of the replication device group. A group may have the same (or different) id in each fault
 domain.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="SessionManagerServiceRequestSpec"
      type-id="vim.SessionManager.ServiceRequestSpec"
      vmodl-name="vim.SessionManager.ServiceRequestSpec"
      enclosing-type-id-ref="vim.SessionManager"
      version-id-ref="vim.version.version7"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object type describes a request to a service.
  It is used as argument to
  <a href="vim.SessionManager.html#acquireGenericServiceTicket">AcquireGenericServiceTicket</a>.

  This is the base class for more specific service request specifications.
  E.g. for HTTP services the derived class will provide a URL property.]]>
      </description-html>
   </data-object>
   <data-object name="VmwareDistributedVirtualSwitchPvlanSpec"
      type-id="vim.dvs.VmwareDistributedVirtualSwitch.PvlanSpec"
      vmodl-name="vim.dvs.VmwareDistributedVirtualSwitch.PvlanSpec"
      enclosing-type-id-ref="vim.dvs.VmwareDistributedVirtualSwitch"
      version-id-ref="vim.version.version5"
      base-type-id="vim.dvs.VmwareDistributedVirtualSwitch.VlanSpec"
      >
      <description-html>
         <![CDATA[This data type defines the configuration when PVLAN id is to be
 used for the ports.]]>
      </description-html>
            <property name="pvlanId" type-id-ref="INT"
      vmodl-name="pvlanId"
      >
      <description-html>
         <![CDATA[The <a href="vim.dvs.VmwareDistributedVirtualSwitch.PvlanMapEntry.html#secondaryVlanId">secondaryVlanId</a>.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="NumPortsProfile"
      type-id="vim.profile.host.VirtualSwitchProfile.NumPortsProfile"
      vmodl-name="vim.profile.host.VirtualSwitchProfile.NumPortsProfile"
      enclosing-type-id-ref="vim.profile.host.VirtualSwitchProfile"
      version-id-ref="vim.version.version5"
      base-type-id="vim.profile.ApplyProfile"
      >
      <description-html>
         <![CDATA[The NumPortsProfile data object represents a
  subprofile for the number of ports for a
  virtual switch]]>
      </description-html>
   </data-object>
   <data-object name="VirtualDiskVFlashCacheConfigInfo"
      type-id="vim.vm.device.VirtualDisk.VFlashCacheConfigInfo"
      vmodl-name="vim.vm.device.VirtualDisk.VFlashCacheConfigInfo"
      enclosing-type-id-ref="vim.vm.device.VirtualDisk"
      version-id-ref="vim.version.version9"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Data object describes the vFlash cache configuration on this virtual disk.]]>
      </description-html>
            <property name="vFlashModule" type-id-ref="java.lang.String"
      vmodl-name="vFlashModule"
      is-deprecated="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Name of vFlash module which manages the cache. If not specified, default setting
 <a href="vim.host.VFlashManager.VFlashCacheConfigSpec.html#defaultVFlashModule">defaultVFlashModule</a>
 will be used.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[since vSphere 7.0 because vFlash Read Cache
 end of availability.]]>
      </deprecated-html>
      </property>

            <property name="reservationInMB" type-id-ref="LONG"
      vmodl-name="reservationInMB"
      is-deprecated="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Amount of vFlash resource that is guaranteed available to the cache. If not specified,
 default reservation will be used.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[since vSphere 7.0 because vFlash Read Cache
 end of availability.]]>
      </deprecated-html>
      </property>

            <property name="cacheConsistencyType" type-id-ref="java.lang.String"
      vmodl-name="cacheConsistencyType"
      is-deprecated="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Cache data consistency types after a crash.
 See <a href="vim.vm.device.VirtualDisk.VFlashCacheConfigInfo.CacheConsistencyType.html">VirtualDiskVFlashCacheConfigInfoCacheConsistencyType</a>
 for supported types. If not specified, the default value used is
 vim.vm.device.VirtualDisk.VFlashCacheConfigInfo.CacheConsistencyType#strong]]>
      </description-html>
      <deprecated-html>
         <![CDATA[since vSphere 7.0 because vFlash Read Cache
 end of availability.]]>
      </deprecated-html>
      </property>

            <property name="cacheMode" type-id-ref="java.lang.String"
      vmodl-name="cacheMode"
      is-deprecated="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Cache modes.
 See <a href="vim.vm.device.VirtualDisk.VFlashCacheConfigInfo.CacheMode.html">VirtualDiskVFlashCacheConfigInfoCacheMode</a>
 for supported modes. If not specified, the default value used is
 vim.vm.device.VirtualDisk.VFlashCacheConfigInfo.CacheMode#write_thru.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[since vSphere 7.0 because vFlash Read Cache
 end of availability.]]>
      </deprecated-html>
      </property>

            <property name="blockSizeInKB" type-id-ref="LONG"
      vmodl-name="blockSizeInKB"
      is-deprecated="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Cache block size. This parameter allows the user to control how much
 data gets cached on a single access to the VMDK. Max block size is 1MB.
 Default is 4KB.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[since vSphere 7.0 because vFlash Read Cache
 end of availability.]]>
      </deprecated-html>
      </property>

      <nested-type-id-ref>vim.vm.device.VirtualDisk.VFlashCacheConfigInfo.CacheConsistencyType</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.device.VirtualDisk.VFlashCacheConfigInfo.CacheMode</nested-type-id-ref>
   </data-object>
   <data-object name="VirtualMachineRelocateSpecDiskLocator"
      type-id="vim.vm.RelocateSpec.DiskLocator"
      vmodl-name="vim.vm.RelocateSpec.DiskLocator"
      enclosing-type-id-ref="vim.vm.RelocateSpec"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The DiskLocator data object type specifies a virtual disk device (by ID) and
  a datastore locator for the disk's storage.]]>
      </description-html>
            <property name="diskId" type-id-ref="INT"
      vmodl-name="diskId"
      >
      <description-html>
         <![CDATA[Device ID of the virtual disk.]]>
      </description-html>
      </property>

            <property name="datastore" type-id-ref="vim.Datastore"
      vmodl-name="datastore"
      >
      <description-html>
         <![CDATA[Target datastore.]]>
      </description-html>
      </property>

            <property name="diskMoveType" type-id-ref="java.lang.String"
      vmodl-name="diskMoveType"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Manner in which to move the virtual disk to the <a href="vim.vm.RelocateSpec.DiskLocator.html#datastore">datastore</a>.  The set of possible values is described
  in <a href="vim.vm.RelocateSpec.DiskMoveOptions.html">VirtualMachineRelocateDiskMoveOptions</a>.
  <p>
  This property can only be set if <a href="vim.host.Capability.html#deltaDiskBackingsSupported">deltaDiskBackingsSupported</a> is true.
  <p>
  If left unset then vim.vm.RelocateSpec.DiskMoveOptions#moveAllDiskBackingsAndDisallowSharing
  is assumed.]]>
      </description-html>
      </property>

            <property name="diskBackingInfo" type-id-ref="vim.vm.device.VirtualDevice.BackingInfo"
      vmodl-name="diskBackingInfo"
      version-id-ref="vim.version.version7"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Backing information for the virtual disk at the destination.
 This can be used, for instance, to change the format of the
 virtual disk. If the specified backing is invalid or not
 supported at the destination, <a href="vim.fault.InvalidDeviceBacking.html">InvalidDeviceBacking</a> is thrown. Specific property
 changes may be ignored if they are not supported.
 <p>
 Supported BackingInfo types and properties:
 <ul>
 <li><a href="vim.vm.device.VirtualDisk.FlatVer2BackingInfo.html">VirtualDiskFlatVer2BackingInfo</a>
   <ul>
   <li>thinProvisioned
   <li>eagerlyScrub
   </ul>
 </li>
 <li><a href="vim.vm.device.VirtualDisk.SeSparseBackingInfo.html">VirtualDiskSeSparseBackingInfo</a>
 (ESX 5.1 or later)
 </li>
 </ul>]]>
      </description-html>
      </property>

            <property name="profile" type-id-ref="vim.vm.ProfileSpec"
      vmodl-name="profile"
      version-id-ref="vim.version.version9"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Virtual Disk Profile requirement.

 Profiles are solution specific.

 Profile Based Storage Management is a vSphere server extension.
 The API users who want to provision VMs using Storage Profiles, need to
 interact with it.

 This is an optional parameter and if user doesn't specify profile,
 the default behavior will apply.]]>
      </description-html>
      </property>

            <property name="backing" type-id-ref="vim.vm.RelocateSpec.DiskLocator.BackingSpec"
      vmodl-name="backing"
      version-id-ref="vim.version.v7_0"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Cryptographic option of the current disk.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.vm.RelocateSpec.DiskLocator.BackingSpec</nested-type-id-ref>
   </data-object>
   <data-object name="TaskReasonAlarm"
      type-id="vim.TaskReasonAlarm"
      vmodl-name="vim.TaskReasonAlarm"
      version-id-ref="vim.version.version1"
      base-type-id="vim.TaskReason"
      >
      <description-html>
         <![CDATA[Indicates that the task was queued by an alarm.]]>
      </description-html>
            <property name="alarmName" type-id-ref="java.lang.String"
      vmodl-name="alarmName"
      >
      <description-html>
         <![CDATA[The name of the alarm that queued the task, retained in the history
  collector database.]]>
      </description-html>
      </property>

            <property name="alarm" type-id-ref="vim.alarm.Alarm"
      vmodl-name="alarm"
      >
      <description-html>
         <![CDATA[The alarm object that queued the task.]]>
      </description-html>
      </property>

            <property name="entityName" type-id-ref="java.lang.String"
      vmodl-name="entityName"
      >
      <description-html>
         <![CDATA[The name of the managed entity on which the alarm is triggered,
  retained in the history collector database.]]>
      </description-html>
      </property>

            <property name="entity" type-id-ref="vim.ManagedEntity"
      vmodl-name="entity"
      >
      <description-html>
         <![CDATA[The managed entity object on which the alarm is triggered.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="SelectionSet"
      type-id="vim.SelectionSet"
      vmodl-name="vim.SelectionSet"
      version-id-ref="vim.version.version7"
      internal-before-version-id-ref="vim.version.version8"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Base class for selecting entities]]>
      </description-html>
   </data-object>
   <data-object name="VsanHostDiskMapInfo"
      type-id="vim.vsan.host.DiskMapInfo"
      vmodl-name="vim.vsan.host.DiskMapInfo"
      version-id-ref="vim.version.version10"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[A DiskMapInfo represents a <a href="vim.vsan.host.DiskMapping.html">VsanHostDiskMapping</a> and its
 corresponding runtime information.<br>See <a href="vim.vsan.host.ConfigInfo.StorageInfo.html">VsanHostConfigInfoStorageInfo</a><br>See vim.host.VsanSystem#initializeDisks(DiskMapping[])]]>
      </description-html>
            <property name="mapping" type-id-ref="vim.vsan.host.DiskMapping"
      vmodl-name="mapping"
      >
      <description-html>
         <![CDATA[DiskMapping.]]>
      </description-html>
      </property>

            <property name="mounted" type-id-ref="BOOLEAN"
      vmodl-name="mounted"
      >
      <description-html>
         <![CDATA[Indicates whether the <a href="vim.vsan.host.DiskMapping.html">VsanHostDiskMapping</a> is mounted.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VmGuestStandbyEvent"
      type-id="vim.event.VmGuestStandbyEvent"
      vmodl-name="vim.event.VmGuestStandbyEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.VmEvent"
      >
      <description-html>
         <![CDATA[This is a virtual machine guest standby request event.]]>
      </description-html>
   </data-object>
   <data-object name="OptionDef"
      type-id="vim.option.OptionDef"
      vmodl-name="vim.option.OptionDef"
      version-id-ref="vim.version.version1"
      base-type-id="vim.ElementDescription"
      >
      <description-html>
         <![CDATA[Describes a user-defined option. The name of each option is identified by the
  "key" property, inherited from the <a href="vim.ElementDescription.html">ElementDescription</a>
  data object type.
  You can indicate the property's position in a hierarchy by using a dot-separated
  notation. The string preceding the first dot is the top of the hierarchy. The
  hierarchy descends to a new sublevel with each dot.
  For example,  "Ethernet.NetworkConnection.Bridged".]]>
      </description-html>
            <property name="optionType" type-id-ref="vim.option.OptionType"
      vmodl-name="optionType"
      >
      <description-html>
         <![CDATA[The option type which defines allowed values.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ResourcePoolEventArgument"
      type-id="vim.event.ResourcePoolEventArgument"
      vmodl-name="vim.event.ResourcePoolEventArgument"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.EntityEventArgument"
      >
      <description-html>
         <![CDATA[The event argument is a ResourcePool object.]]>
      </description-html>
            <property name="resourcePool" type-id-ref="vim.ResourcePool"
      vmodl-name="resourcePool"
      >
      <description-html>
         <![CDATA[The ResourcePool object.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="PosixUserSearchResult"
      type-id="vim.PosixUserSearchResult"
      vmodl-name="vim.PosixUserSearchResult"
      version-id-ref="vim.version.version1"
      base-type-id="vim.UserSearchResult"
      >
      <description-html>
         <![CDATA[Searching for users and groups on POSIX systems provides
  User ID and Group ID information, in addition to that
  defined in UserSearchResult.]]>
      </description-html>
            <property name="id" type-id-ref="INT"
      vmodl-name="id"
      >
      <description-html>
         <![CDATA[If the search result is for a user, then id refers to User ID. For a group,
  the value of Group ID is assigned to id.]]>
      </description-html>
      </property>

            <property name="shellAccess" type-id-ref="BOOLEAN"
      vmodl-name="shellAccess"
      is-optional="true"
      >
      <description-html>
         <![CDATA[If the search result is for a user, shellAccess indicates whether shell
  access has been granted or not.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ExtendedEvent"
      type-id="vim.event.ExtendedEvent"
      vmodl-name="vim.event.ExtendedEvent"
      version-id-ref="vim.version.version2"
      base-type-id="vim.event.GeneralEvent"
      >
      <description-html>
         <![CDATA[This event is the base class for extended events.]]>
      </description-html>
            <property name="eventTypeId" type-id-ref="java.lang.String"
      vmodl-name="eventTypeId"
      >
      <description-html>
         <![CDATA[The id of the type of extended event.]]>
      </description-html>
      </property>

            <property name="managedObject" type-id-ref="vmodl.ManagedObject"
      vmodl-name="managedObject"
      >
      <description-html>
         <![CDATA[The object on which the event was logged.]]>
      </description-html>
      </property>

            <property name="data" type-id-ref="vim.event.ExtendedEvent.Pair"
      vmodl-name="data"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Key/value pairs associated with event.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.event.ExtendedEvent.Pair</nested-type-id-ref>
   </data-object>
   <data-object name="DVSHostLocalPortInfo"
      type-id="vim.dvs.DistributedVirtualPort.HostLocalPortInfo"
      vmodl-name="vim.dvs.DistributedVirtualPort.HostLocalPortInfo"
      enclosing-type-id-ref="vim.dvs.DistributedVirtualPort"
      version-id-ref="vim.version.version8"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object type describes the information about the host local port.
  A host local port is  created to resurrect the management network connection
  on a VMkernel Virtual NIC.]]>
      </description-html>
            <property name="switchUuid" type-id-ref="java.lang.String"
      vmodl-name="switchUuid"
      >
      <description-html>
         <![CDATA[UUID of the vSphere Distributed Switch that management interface is connected to.]]>
      </description-html>
      </property>

            <property name="portKey" type-id-ref="java.lang.String"
      vmodl-name="portKey"
      >
      <description-html>
         <![CDATA[Portkey of the DVPort that management interface is now connected to.]]>
      </description-html>
      </property>

            <property name="setting" type-id-ref="vim.dvs.DistributedVirtualPort.Setting"
      vmodl-name="setting"
      >
      <description-html>
         <![CDATA[The configuration of the new host local port.]]>
      </description-html>
      </property>

            <property name="vnic" type-id-ref="java.lang.String"
      vmodl-name="vnic"
      >
      <description-html>
         <![CDATA[The Virtual NIC device connected to this port]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VMwareDVSConfigSpec"
      type-id="vim.dvs.VmwareDistributedVirtualSwitch.ConfigSpec"
      vmodl-name="vim.dvs.VmwareDistributedVirtualSwitch.ConfigSpec"
      enclosing-type-id-ref="vim.dvs.VmwareDistributedVirtualSwitch"
      version-id-ref="vim.version.version5"
      base-type-id="vim.DistributedVirtualSwitch.ConfigSpec"
      >
      <description-html>
         <![CDATA[This class defines the VMware specific configuration for
  DistributedVirtualSwitch.]]>
      </description-html>
            <property name="pvlanConfigSpec" type-id-ref="vim.dvs.VmwareDistributedVirtualSwitch.PvlanConfigSpec"
      vmodl-name="pvlanConfigSpec"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The PVLAN configuration specification.
  <p>
  A <a href="vim.dvs.VmwareDistributedVirtualSwitch.PvlanMapEntry.html">VMwareDVSPvlanMapEntry</a>
  that has the same value for
  <a href="vim.dvs.VmwareDistributedVirtualSwitch.PvlanMapEntry.html#primaryVlanId">primaryVlanId</a> and
  <a href="vim.dvs.VmwareDistributedVirtualSwitch.PvlanMapEntry.html#secondaryVlanId">secondaryVlanId</a>
  is referred to as a primary PVLAN entry.
  Otherwise, the <a href="vim.dvs.VmwareDistributedVirtualSwitch.PvlanMapEntry.html">VMwareDVSPvlanMapEntry</a>
  is referred to as a secondary PVLAN entry.
  <p>
  The <a href="vim.dvs.VmwareDistributedVirtualSwitch.PvlanMapEntry.html#pvlanType">pvlanType</a>
  of a primary PVLAN entry must be
  VmwareDistributedVirtualSwitch.PvlanPortType#promiscuous.
  A secondary PVLAN entry can have a
  <a href="vim.dvs.VmwareDistributedVirtualSwitch.PvlanMapEntry.html#pvlanType">pvlanType</a>
  of either
  VmwareDistributedVirtualSwitch.PvlanPortType#community or
  VmwareDistributedVirtualSwitch.PvlanPortType#isolated.
  <p>
  Primary PVLAN entries must be explicitly added.
  If there is no primary PVLAN entry corresponding to the
  <a href="vim.dvs.VmwareDistributedVirtualSwitch.PvlanMapEntry.html#primaryVlanId">primaryVlanId</a>
  of a secondary PVLAN entry, a fault is thrown.
  <p>
  While deleting a primary PVLAN entry, any associated secondary PVLAN
  entries must be explicitly deleted.]]>
      </description-html>
      </property>

            <property name="vspanConfigSpec" type-id-ref="vim.dvs.VmwareDistributedVirtualSwitch.VspanConfigSpec"
      vmodl-name="vspanConfigSpec"
      version-id-ref="vim.version.version7"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The Distributed Port Mirroring configuration specification. The VSPAN
  sessions in the array cannot be of the same key.]]>
      </description-html>
      </property>

            <property name="maxMtu" type-id-ref="INT"
      vmodl-name="maxMtu"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The maximum MTU in the switch.]]>
      </description-html>
      </property>

            <property name="linkDiscoveryProtocolConfig" type-id-ref="vim.host.LinkDiscoveryProtocolConfig"
      vmodl-name="linkDiscoveryProtocolConfig"
      is-optional="true"
      >
      <description-html>
         <![CDATA[See <a href="vim.host.LinkDiscoveryProtocolConfig.html">LinkDiscoveryProtocolConfig</a>.]]>
      </description-html>
      </property>

            <property name="ipfixConfig" type-id-ref="vim.dvs.VmwareDistributedVirtualSwitch.IpfixConfig"
      vmodl-name="ipfixConfig"
      version-id-ref="vim.version.version7"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Configuration for ipfix monitoring of the switch traffic. This must be
  set before ipfix monitoring can be enabled for the switch, or for any
  portgroup or port of the switch.<br>See <a href="vim.dvs.VmwareDistributedVirtualSwitch.VmwarePortConfigPolicy.html#ipfixEnabled">ipfixEnabled</a><br>]]>
      </description-html>
      </property>

            <property name="lacpApiVersion" type-id-ref="java.lang.String"
      vmodl-name="lacpApiVersion"
      version-id-ref="vim.version.version9"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The Link Aggregation Control Protocol group version in the switch.
  See LacpApiVersion for valid values.]]>
      </description-html>
      </property>

            <property name="multicastFilteringMode" type-id-ref="java.lang.String"
      vmodl-name="multicastFilteringMode"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The Multicast Filtering mode in the switch.
  See MulticastFilteringMode for valid values.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DrsEnabledEvent"
      type-id="vim.event.DrsEnabledEvent"
      vmodl-name="vim.event.DrsEnabledEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.ClusterEvent"
      >
      <description-html>
         <![CDATA[This event records when DRS is enabled on a cluster.]]>
      </description-html>
            <property name="behavior" type-id-ref="java.lang.String"
      vmodl-name="behavior"
      >
      <description-html>
         <![CDATA[The DRS automation level in (<a href="vim.cluster.DrsConfigInfo.DrsBehavior.html">DrsBehavior</a>)]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="OptionType"
      type-id="vim.option.OptionType"
      vmodl-name="vim.option.OptionType"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The base data object type for all options.]]>
      </description-html>
            <property name="valueIsReadonly" type-id-ref="BOOLEAN"
      vmodl-name="valueIsReadonly"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The flag to indicate whether or not a user
  can modify a value belonging to this option type. If
  the flag is not set, the value can be modified.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="MigrationResourceWarningEvent"
      type-id="vim.event.MigrationResourceWarningEvent"
      vmodl-name="vim.event.MigrationResourceWarningEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.MigrationEvent"
      >
      <description-html>
         <![CDATA[A migration warning that includes both the destination host and resource pool.]]>
      </description-html>
            <property name="dstPool" type-id-ref="vim.event.ResourcePoolEventArgument"
      vmodl-name="dstPool"
      >
      <description-html>
         <![CDATA[The name of the destination resource pool.]]>
      </description-html>
      </property>

            <property name="dstHost" type-id-ref="vim.event.HostEventArgument"
      vmodl-name="dstHost"
      >
      <description-html>
         <![CDATA[The name of the destination host.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="FaultToleranceConfigInfo"
      type-id="vim.vm.FaultToleranceConfigInfo"
      vmodl-name="vim.vm.FaultToleranceConfigInfo"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[FaultToleranceConfigInfo is a data object type containing Fault Tolerance
  settings for this virtual machine.
  role, instanceUuids and configPaths contain information about the
  whole fault tolerance group.]]>
      </description-html>
            <property name="role" type-id-ref="INT"
      vmodl-name="role"
      >
      <description-html>
         <![CDATA[The index of the current VM in instanceUuids array starting from 1, so
  1 means that it is the primary VM.]]>
      </description-html>
      </property>

            <property name="instanceUuids" type-id-ref="java.lang.String"
      vmodl-name="instanceUuids"
      is-array="true"
      >
      <description-html>
         <![CDATA[The instanceUuid of all the VMs in this fault tolerance group. The
 first element is the instanceUuid of the primary VM.]]>
      </description-html>
      </property>

            <property name="configPaths" type-id-ref="java.lang.String"
      vmodl-name="configPaths"
      is-array="true"
      >
      <description-html>
         <![CDATA[The configuration file path for all the VMs in this fault tolerance
 group.]]>
      </description-html>
      </property>

            <property name="orphaned" type-id-ref="BOOLEAN"
      vmodl-name="orphaned"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates whether a secondary VM is orphaned (no longer associated with
  the primary VM).]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualMachineDynamicPassthroughInfo"
      type-id="vim.vm.DynamicPassthroughInfo"
      vmodl-name="vim.vm.DynamicPassthroughInfo"
      version-id-ref="vim.version.v7_0"
      base-type-id="vim.vm.TargetInfo"
      >
      <description-html>
         <![CDATA[Description of a Dynamic DirectPath PCI device.]]>
      </description-html>
            <property name="vendorName" type-id-ref="java.lang.String"
      vmodl-name="vendorName"
      >
      <description-html>
         <![CDATA[The vendor name of this PCI device.]]>
      </description-html>
      </property>

            <property name="deviceName" type-id-ref="java.lang.String"
      vmodl-name="deviceName"
      >
      <description-html>
         <![CDATA[The device name of this PCI device.]]>
      </description-html>
      </property>

            <property name="customLabel" type-id-ref="java.lang.String"
      vmodl-name="customLabel"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The custom label attached to this PCI device.]]>
      </description-html>
      </property>

            <property name="vendorId" type-id-ref="INT"
      vmodl-name="vendorId"
      >
      <description-html>
         <![CDATA[PCI vendor ID for this device.]]>
      </description-html>
      </property>

            <property name="deviceId" type-id-ref="INT"
      vmodl-name="deviceId"
      >
      <description-html>
         <![CDATA[PCI device ID for this device.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostSystemSwapConfiguration"
      type-id="vim.host.SystemSwapConfiguration"
      vmodl-name="vim.host.SystemSwapConfiguration"
      version-id-ref="vim.version.version8"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Information and specification for control of the system swap configuration
 on the current host.]]>
      </description-html>
            <property name="option" type-id-ref="vim.host.SystemSwapConfiguration.SystemSwapOption"
      vmodl-name="option"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The currently enabled options.

 When this property contains only one value and this value is <a href="vim.host.SystemSwapConfiguration.DisabledOption.html">HostSystemSwapConfigurationDisabledOption</a>,
 this indicates that the system swap is disabled.<br/>
 If the <a href="vim.host.SystemSwapConfiguration.DisabledOption.html">HostSystemSwapConfigurationDisabledOption</a> option is
 used together with some other option in call to <a href="vim.HostSystem.html#updateSystemSwapConfiguration">UpdateSystemSwapConfiguration</a>, a
 <a href="vmodl.fault.InvalidArgument.html">InvalidArgument</a> is thrown.<br/>
 It is not allowed to have duplicate values in this array. If so a
 <a href="vmodl.fault.InvalidArgument.html">InvalidArgument</a> is thrown.<br/>]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.host.SystemSwapConfiguration.SystemSwapOption</nested-type-id-ref>
      <nested-type-id-ref>vim.host.SystemSwapConfiguration.DisabledOption</nested-type-id-ref>
      <nested-type-id-ref>vim.host.SystemSwapConfiguration.HostCacheOption</nested-type-id-ref>
      <nested-type-id-ref>vim.host.SystemSwapConfiguration.HostLocalSwapOption</nested-type-id-ref>
      <nested-type-id-ref>vim.host.SystemSwapConfiguration.DatastoreOption</nested-type-id-ref>
   </data-object>
   <data-object name="CustomizationGuiUnattended"
      type-id="vim.vm.customization.GuiUnattended"
      vmodl-name="vim.vm.customization.GuiUnattended"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The GuiUnattended type maps to the GuiUnattended key in the <tt>sysprep.xml</tt>
  answer file. These values are plugged directly into the <tt>sysprep.xml</tt> file
  that VirtualCenter stores on the target virtual disk. For more detailed
  information, see <a href =
  "https://technet.microsoft.com/en-us/library/cc771830(v=ws.10).aspx" target="_blank"
  >Performing Unattended Installations</a>.]]>
      </description-html>
            <property name="password" type-id-ref="vim.vm.customization.Password"
      vmodl-name="password"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The new administrator password for the machine. To specify that the password
  should be set to blank (that is, no password), set the password value to NULL.
  Because of encryption, "" is NOT a valid value.
  <p>
  If password is set to blank and <a href="vim.vm.customization.GuiUnattended.html#autoLogon">autoLogon</a> is set, the
  guest customization will fail.
  <p>
  If the XML file is generated by the VirtualCenter Customization Wizard, then the
  password is encrypted. Otherwise, the client should set the plainText attribute
  to true, so that the customization process does not attempt to decrypt the
  string.]]>
      </description-html>
      </property>

            <property name="timeZone" type-id-ref="INT"
      vmodl-name="timeZone"
      >
      <description-html>
         <![CDATA[The time zone index for the virtual machine. Numbers correspond to time zones
  listed at <a href =
  "https://support.microsoft.com/en-us/help/973627/microsoft-time-zone-index-values" target="_blank"
  >Microsoft Time Zone Index Values</a>.]]>
      </description-html>
      </property>

            <property name="autoLogon" type-id-ref="BOOLEAN"
      vmodl-name="autoLogon"
      >
      <description-html>
         <![CDATA[Flag to determine whether or not the machine automatically logs on as
  Administrator.  See also the password property.
  <p>
  If the AutoLogon flag is set, <a href="vim.vm.customization.GuiUnattended.html#password">password</a> must not be
  blank or the guest customization will fail.]]>
      </description-html>
      </property>

            <property name="autoLogonCount" type-id-ref="INT"
      vmodl-name="autoLogonCount"
      >
      <description-html>
         <![CDATA[If the AutoLogon flag is set, then the AutoLogonCount property specifies the
  number of times the machine should automatically log on as Administrator.
  Generally it should be 1, but if your setup requires a number of reboots, you
  may want to increase it. This number may be determined by the list of commands
  executed by the <a href="vim.vm.customization.GuiRunOnce.html">GuiRunOnce</a> command.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VAppConfigInfo"
      type-id="vim.vApp.VAppConfigInfo"
      vmodl-name="vim.vApp.VAppConfigInfo"
      version-id-ref="vim.version.version5"
      base-type-id="vim.vApp.VmConfigInfo"
      >
      <description-html>
         <![CDATA[Configuration of a vApp container.]]>
      </description-html>
            <property name="entityConfig" type-id-ref="vim.vApp.EntityConfigInfo"
      vmodl-name="entityConfig"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Configuration of sub-entities (virtual machine or vApp).]]>
      </description-html>
      </property>

            <property name="annotation" type-id-ref="java.lang.String"
      vmodl-name="annotation"
      >
      <description-html>
         <![CDATA[Description for the vApp.]]>
      </description-html>
      </property>

            <property name="instanceUuid" type-id-ref="java.lang.String"
      vmodl-name="instanceUuid"
      version-id-ref="vim.version.version6"
      is-optional="true"
      >
      <description-html>
         <![CDATA[vCenter-specific 128-bit UUID of a vApp, represented  as a hexademical
  string. This identifier is used by vCenter to uniquely identify all
  vApp instances.]]>
      </description-html>
      </property>

            <property name="managedBy" type-id-ref="vim.ext.ManagedByInfo"
      vmodl-name="managedBy"
      version-id-ref="vim.version.version7"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Specifies that this vApp is managed by a VC Extension. See the
 <a href="vim.vApp.VAppConfigSpec.html#managedBy">managedBy</a> property in the
 VAppConfigSpec for more details.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VMwareDVSPvlanConfigSpec"
      type-id="vim.dvs.VmwareDistributedVirtualSwitch.PvlanConfigSpec"
      vmodl-name="vim.dvs.VmwareDistributedVirtualSwitch.PvlanConfigSpec"
      enclosing-type-id-ref="vim.dvs.VmwareDistributedVirtualSwitch"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This class defines the configuration of a PVLAN map entry]]>
      </description-html>
            <property name="pvlanEntry" type-id-ref="vim.dvs.VmwareDistributedVirtualSwitch.PvlanMapEntry"
      vmodl-name="pvlanEntry"
      >
      <description-html>
         <![CDATA[The PVLAN entry to be added or removed.]]>
      </description-html>
      </property>

            <property name="operation" type-id-ref="java.lang.String"
      vmodl-name="operation"
      >
      <description-html>
         <![CDATA[Operation type.  See
  <a href="vim.ConfigSpecOperation.html">ConfigSpecOperation</a> for valid values,
  except for the "edit" value, which is not supported.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualSerialPortPipeBackingInfo"
      type-id="vim.vm.device.VirtualSerialPort.PipeBackingInfo"
      vmodl-name="vim.vm.device.VirtualSerialPort.PipeBackingInfo"
      enclosing-type-id-ref="vim.vm.device.VirtualSerialPort"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.device.VirtualDevice.PipeBackingInfo"
      >
      <description-html>
         <![CDATA[The <code><a href="vim.vm.device.VirtualSerialPort.PipeBackingInfo.html">VirtualSerialPortPipeBackingInfo</a></code> data object defines information
  for backing a <code><a href="vim.vm.device.VirtualSerialPort.html">VirtualSerialPort</a></code> with a named pipe.
  You can use a pipe to connect a virtual serial port to a host
  application or to another virtual machine on the host computer.
  This is useful for capturing debugging information sent through
  the virtual serial port.]]>
      </description-html>
            <property name="endpoint" type-id-ref="java.lang.String"
      vmodl-name="endpoint"
      >
      <description-html>
         <![CDATA[Indicates the role the virtual machine assumes as an endpoint
  for the pipe. The valid values are "client" or "server".]]>
      </description-html>
      </property>

            <property name="noRxLoss" type-id-ref="BOOLEAN"
      vmodl-name="noRxLoss"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Enables optimized data transfer over the pipe. When you use this feature,
  the ESX server buffers data to prevent data overrun.
  This allows the virtual machine to read
  all of the data transferred over the pipe with no data loss.
  To use optimized data transfer, set <code>noRxLoss</code> to <code>true</code>.
  To disable this feature, set the property to <code>false</false>.
  <p>
  This property is optional. If this property is not set, the ESX server
  uses the default value specified in the pipe backing options
  (noRxLoss.defaultValue - see
  <code><a href="vim.vm.device.VirtualSerialPortOption.PipeBackingOption.html#noRxLoss">noRxLoss</a></code>
  in the pipe backing option object).
  <p>
  To use this property, optimized data transfer must be supported on the host.
  (See <code><a href="vim.vm.device.VirtualSerialPortOption.PipeBackingOption.html#noRxLoss">noRxLoss</a></code>
  in the pipe backing option object.)
  If the ESX server does not support the option, it ignores the
  <code>noRxLoss</code> setting in the pipe backing information object.
  <p>
  <b>Note</b>: You can use this feature even if the other end of the pipe
  is not an application, but this is more likely to fail.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualMachineProfileDetails"
      type-id="vim.vm.ProfileDetails"
      vmodl-name="vim.vm.ProfileDetails"
      version-id-ref="vim.version.version12"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The <a href="vim.vm.ProfileDetails.html">VirtualMachineProfileDetails</a> data object type provides details of the policy
 associated with a virtual machine and it's virtual disks.]]>
      </description-html>
            <property name="profile" type-id-ref="vim.vm.ProfileSpec"
      vmodl-name="profile"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Storage profile associated with Virtual Machine's home directory.]]>
      </description-html>
      </property>

            <property name="diskProfileDetails" type-id-ref="vim.vm.ProfileDetails.DiskProfileDetails"
      vmodl-name="diskProfileDetails"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[An optional list that allows specifying details of the policy associated
 with virutual disks.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.vm.ProfileDetails.DiskProfileDetails</nested-type-id-ref>
   </data-object>
   <data-object name="VirtualMachineSnapshotInfo"
      type-id="vim.vm.SnapshotInfo"
      vmodl-name="vim.vm.SnapshotInfo"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The SnapshotInfo data object type provides all the information about the
  hierarchy of snapshots in a virtual machine.]]>
      </description-html>
            <property name="currentSnapshot" type-id-ref="vim.vm.Snapshot"
      vmodl-name="currentSnapshot"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Current snapshot of the virtual machine
  <p>
  This property is set by calling
  <a href="vim.vm.Snapshot.html#revert">RevertToSnapshot_Task</a> or
  <a href="vim.VirtualMachine.html#createSnapshot">CreateSnapshot_Task</a>.
  This property will be empty when the working snapshot is at the root
  of the snapshot tree.]]>
      </description-html>
      </property>

            <property name="rootSnapshotList" type-id-ref="vim.vm.SnapshotTree"
      vmodl-name="rootSnapshotList"
      is-array="true"
      >
      <description-html>
         <![CDATA[Data for the entire set of snapshots for one virtual machine.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualFloppyImageBackingInfo"
      type-id="vim.vm.device.VirtualFloppy.ImageBackingInfo"
      vmodl-name="vim.vm.device.VirtualFloppy.ImageBackingInfo"
      enclosing-type-id-ref="vim.vm.device.VirtualFloppy"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.device.VirtualDevice.FileBackingInfo"
      >
      <description-html>
         <![CDATA[The data object type for file image backing of a virtual floppy drive.]]>
      </description-html>
   </data-object>
   <data-object name="GeneralVmInfoEvent"
      type-id="vim.event.GeneralVmInfoEvent"
      vmodl-name="vim.event.GeneralVmInfoEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.GeneralEvent"
      >
      <description-html>
         <![CDATA[This event is the general information event for a virtual machine.]]>
      </description-html>
   </data-object>
   <data-object name="VmNoNetworkAccessEvent"
      type-id="vim.event.VmNoNetworkAccessEvent"
      vmodl-name="vim.event.VmNoNetworkAccessEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.VmEvent"
      >
      <description-html>
         <![CDATA[This event records a migration failure when the destination host
  is not on the same network as the source host.]]>
      </description-html>
            <property name="destHost" type-id-ref="vim.event.HostEventArgument"
      vmodl-name="destHost"
      >
      <description-html>
         <![CDATA[The destination host.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="CryptoSpec"
      type-id="vim.encryption.CryptoSpec"
      vmodl-name="vim.encryption.CryptoSpec"
      version-id-ref="vim.version.version11"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object type encapsulates virtual machine or disk encryption
  settings.]]>
      </description-html>
   </data-object>
   <data-object name="TemplateUpgradeEvent"
      type-id="vim.event.TemplateUpgradeEvent"
      vmodl-name="vim.event.TemplateUpgradeEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.Event"
      >
      <description-html>
         <![CDATA[This event is the base class for all the template upgrade events.]]>
      </description-html>
            <property name="legacyTemplate" type-id-ref="java.lang.String"
      vmodl-name="legacyTemplate"
      >
      </property>

   </data-object>
   <data-object name="DvsTrafficFilterConfig"
      type-id="vim.dvs.DistributedVirtualPort.TrafficFilterConfig"
      vmodl-name="vim.dvs.DistributedVirtualPort.TrafficFilterConfig"
      enclosing-type-id-ref="vim.dvs.DistributedVirtualPort"
      version-id-ref="vim.version.version9"
      base-type-id="vim.dvs.DistributedVirtualPort.FilterConfig"
      >
      <description-html>
         <![CDATA[This class defines Traffic Filter configuration.
  <p> <b> Supported Qualifier and Actions </b>
  <table border="1" width="100%">
  <tr>
     <th>Traffic Filter Config</th>
     <th>Supported classes</th>
  </tr>

  <tr>
     <td>Qualifiers supported</td>
     <td><a href="vim.SingleIp.html">SingleIp</a>, <a href="vim.IpRange.html">IpRange</a>,
         <a href="vim.SingleMac.html">SingleMac</a>, <a href="vim.MacRange.html">MacRange</a>,
         <a href="vim.dvs.TrafficRule.SingleIpPort.html">DvsSingleIpPort</a>,
         <a href="vim.dvs.TrafficRule.SystemTrafficQualifier.html">DvsSystemTrafficNetworkRuleQualifier</a>
     </td>
  </tr>

  <tr>
     <td>Actions Supported</td>
     <td><a href="vim.dvs.TrafficRule.DropAction.html">DvsDropNetworkRuleAction</a>,
         <a href="vim.dvs.TrafficRule.AcceptAction.html">DvsAcceptNetworkRuleAction</a>,
         <a href="vim.dvs.TrafficRule.PuntAction.html">DvsPuntNetworkRuleAction</a>,
         <a href="vim.dvs.TrafficRule.CopyAction.html">DvsCopyNetworkRuleAction</a>,
         <a href="vim.dvs.TrafficRule.MacRewriteAction.html">DvsMacRewriteNetworkRuleAction</a>,
         <a href="vim.dvs.TrafficRule.GreAction.html">DvsGreEncapNetworkRuleAction</a>,
         <a href="vim.dvs.TrafficRule.LogAction.html">DvsLogNetworkRuleAction</a>,
         <a href="vim.dvs.TrafficRule.UpdateTagAction.html">DvsUpdateTagNetworkRuleAction</a>,
         <a href="vim.dvs.TrafficRule.RateLimitAction.html">DvsRateLimitNetworkRuleAction</a>
     </td>
  </tr>]]>
      </description-html>
            <property name="trafficRuleset" type-id-ref="vim.dvs.TrafficRuleset"
      vmodl-name="trafficRuleset"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Network Traffic Ruleset]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DatastoreOption"
      type-id="vim.vm.DatastoreOption"
      vmodl-name="vim.vm.DatastoreOption"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The DatastoreOption data object describes datastore options
  for a virtual machine.]]>
      </description-html>
            <property name="unsupportedVolumes" type-id-ref="vim.vm.DatastoreOption.FileSystemVolumeOption"
      vmodl-name="unsupportedVolumes"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The type of file system volumes on which this virtual machine cannot have
 its disk and configuration files.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.vm.DatastoreOption.FileSystemVolumeOption</nested-type-id-ref>
   </data-object>
   <data-object name="HostFirewallConfig"
      type-id="vim.host.FirewallConfig"
      vmodl-name="vim.host.FirewallConfig"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[DataObject used for firewall configuration]]>
      </description-html>
            <property name="rule" type-id-ref="vim.host.FirewallConfig.RuleSetConfig"
      vmodl-name="rule"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Rules determining firewall settings.]]>
      </description-html>
      </property>

            <property name="defaultBlockingPolicy" type-id-ref="vim.host.FirewallInfo.DefaultPolicy"
      vmodl-name="defaultBlockingPolicy"
      >
      <description-html>
         <![CDATA[Default settings for the firewall,
 used for ports that are not explicitly opened.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.host.FirewallConfig.RuleSetConfig</nested-type-id-ref>
   </data-object>
   <data-object name="VirtualMachineConfigSpec"
      type-id="vim.vm.ConfigSpec"
      vmodl-name="vim.vm.ConfigSpec"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object type encapsulates configuration settings
  when creating or reconfiguring a virtual machine. To support incremental changes,
  these properties are all optional. If an optional property is unset,
  or any nested optional property is unset, the property will not
  be changed unless 'unset' is a valid value for the property. To determine
  whether 'unset' is a valid value for a particular property, refer to
  the documentation for that property.]]>
      </description-html>
            <property name="changeVersion" type-id-ref="java.lang.String"
      vmodl-name="changeVersion"
      is-optional="true"
      >
      <description-html>
         <![CDATA[If specified, the changes are only applied if the current changeVersion matches
  the specified changeVersion. This field can be used to guard against updates that
  have happened between when configInfo is read and when it is applied.
  <p>
  For more information about how configurations are uniquely identified, see
  <a href="vim.vm.ConfigInfo.html#changeVersion">changeVersion</a>.]]>
      </description-html>
      </property>

            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Display name of the virtual machine.
 <p>
 Any % (percent) character used in this name parameter must be escaped, unless it
 is used to start an escape sequence. Clients may also escape any other characters
 in this name parameter. Snapshots of virtual machines that have spaces in their
 names and are associated with ESX 2.x servers are not supported. Therefore, if you
 want the option to take snapshots of this virtual machine and you are associating
 it with an ESX 2.x server, do not use spaces in the name.
 <p>
 Reconfigure privilege: VirtualMachine.Config.Rename]]>
      </description-html>
      </property>

            <property name="version" type-id-ref="java.lang.String"
      vmodl-name="version"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The version string for this virtual machine. This is used only while
 creating a new virtual machine, and can be updated by invoking
 <a href="vim.VirtualMachine.html#upgradeVirtualHardware">UpgradeVM_Task</a> for this virtual
 machine.]]>
      </description-html>
      </property>

            <property name="createDate" type-id-ref="vmodl.DateTime"
      vmodl-name="createDate"
      version-id-ref="vim.version.version12"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Creation date of a virtual machine represented in DateTime format.
 <p>
 This property is populated by the vCenter Server with the date
 and time of creation of the virtual machine. Values provided by the
 client will be ignored.
 <p>
 Reconfigure privilege: VirtualMachine.Config.Settings]]>
      </description-html>
      </property>

            <property name="uuid" type-id-ref="java.lang.String"
      vmodl-name="uuid"
      is-optional="true"
      >
      <description-html>
         <![CDATA[128-bit SMBIOS UUID of a virtual machine represented as a hexadecimal string
  in "12345678-abcd-1234-cdef-123456789abc" format.
  <p>
  Normally, this property is not set by a client, allowing the
  Virtual Infrastructure environment to assign a UUID when
  the virtual machine is created. However, in some rare cases,
  such as a manual copy of a virtual machine, it may be necessary
  to set this property.
  <p>
  Reconfigure privilege: VirtualMachine.Config.Settings]]>
      </description-html>
      </property>

            <property name="instanceUuid" type-id-ref="java.lang.String"
      vmodl-name="instanceUuid"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[VirtualCenter-specific 128-bit UUID of a virtual machine, represented
  as a hexadecimal string. This identifier is used  by VirtalCenter
  to uniquely identify all virtual machine instances in the Virtual
  Infrastructure environment, including those that may share the same
  SMBIOS UUID.
  <p>
  Normally, this property is not set by a client, allowing the
  Virtual Infrastructure environment to assign or change it when
  VirtualCenter detects an identifier conflict between virtual
  machines. This identifier can be modified even when a virtual
  machine is powered on. Clients can specify that vCenter Server
  reassign a new identifier by a providing an empty string. Reassigning
  the identifer is not allowed for Fault Tolerance virtual machines.
  <p>
  Reconfigure privilege: VirtualMachine.Config.Settings]]>
      </description-html>
      </property>

            <property name="npivNodeWorldWideName" type-id-ref="LONG"
      vmodl-name="npivNodeWorldWideName"
      version-id-ref="vim.version.version2"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The NPIV node WWN to be assigned to a virtual machine.  This property should only
  be used or set when the value of <a href="vim.vm.ConfigSpec.html#npivWorldWideNameOp">npivWorldWideNameOp</a> property is "set".
  Otherwise, an <a href="vim.fault.InvalidVmConfig.html">InvalidVmConfig</a> fault will be thrown. If the
  specified node WWN is currently being used by another virtual machine, a
  <a href="vim.fault.VmWwnConflict.html">VmWwnConflict</a> fault will be thrown.
  <p>
  For detail description on WWN, see <a href="vim.vm.ConfigInfo.html#npivNodeWorldWideName">npivNodeWorldWideName</a>.
  <p>
  Reconfigure privilege: VirtualMachine.Config.Settings.]]>
      </description-html>
      </property>

            <property name="npivPortWorldWideName" type-id-ref="LONG"
      vmodl-name="npivPortWorldWideName"
      version-id-ref="vim.version.version2"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The NPIV port WWN to be assigned to a virtual machine.  This property should only
  be used or set when the value of <a href="vim.vm.ConfigSpec.html#npivWorldWideNameOp">npivWorldWideNameOp</a> property is "set".
  Otherwise, an <a href="vim.fault.InvalidVmConfig.html">InvalidVmConfig</a> fault will be thrown. If the
  specified port WWN is currently being used by another virtual machine, a
  <a href="vim.fault.VmWwnConflict.html">VmWwnConflict</a> fault will be thrown.
  <p>
  For detail description on WWN, see <a href="vim.vm.ConfigInfo.html#npivPortWorldWideName">npivPortWorldWideName</a>.
  <p>
  Reconfigure privilege: VirtualMachine.Config.Settings.]]>
      </description-html>
      </property>

            <property name="npivWorldWideNameType" type-id-ref="java.lang.String"
      vmodl-name="npivWorldWideNameType"
      version-id-ref="vim.version.version2"
      is-optional="true"
      >
      <description-html>
         <![CDATA[This property is used internally in the communication between the
  VirtualCenter server and ESX Server to indicate the source for
  <a href="vim.vm.ConfigSpec.html#npivNodeWorldWideName">npivNodeWorldWideName</a> and
  <a href="vim.vm.ConfigSpec.html#npivPortWorldWideName">npivPortWorldWideName</a> when <a href="vim.vm.ConfigSpec.html#npivWorldWideNameOp">npivWorldWideNameOp</a> is "set".
  This property should only be set by the VirtualCenter server.
  <p>
  If this property is set in a call to a VirtualCenter server,
  an <a href="vim.fault.InvalidVmConfig.html">InvalidVmConfig</a> fault will always be thrown.  In a
  call to an ESX Server host, an <a href="vim.fault.InvalidVmConfig.html">InvalidVmConfig</a>
  fault will be thrown if the value of <a href="vim.vm.ConfigSpec.html#npivWorldWideNameOp">npivWorldWideNameOp</a> is not set to
  "set".
  <p>
  Reconfigure privilege: VirtualMachine.Config.Settings.]]>
      </description-html>
      </property>

            <property name="npivDesiredNodeWwns" type-id-ref="SHORT"
      vmodl-name="npivDesiredNodeWwns"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The NPIV node WWNs to be extended from the original list of WWN nummbers. This
  property should be set to desired number which is an aggregate of existing
  plus new numbers. Desired Node WWNs should always be greater than the existing
  number of node WWNs]]>
      </description-html>
      </property>

            <property name="npivDesiredPortWwns" type-id-ref="SHORT"
      vmodl-name="npivDesiredPortWwns"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The NPIV port WWNs to be extended from the original list of WWN nummbers. This
  property should be set to desired number which is an aggregate of existing
  plus new numbers. Desired Node WWNs should always be greater than the existing
  number of port WWNs]]>
      </description-html>
      </property>

            <property name="npivTemporaryDisabled" type-id-ref="BOOLEAN"
      vmodl-name="npivTemporaryDisabled"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[This property is used to enable or disable the NPIV capability on a desired
  virtual machine on a temporary basis. When this property is set NPIV Vport
  will not be instantiated by the VMX process of the Virtual Machine. When this
  property is set port WWNs and node WWNs in the VM configuration are preserved.
  <p>
  Reconfigure privilege: VirtualMachine.Config.Settings.]]>
      </description-html>
      </property>

            <property name="npivOnNonRdmDisks" type-id-ref="BOOLEAN"
      vmodl-name="npivOnNonRdmDisks"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[This property is used to check whether the NPIV can be enabled on the Virtual
  machine with non-rdm disks in the configuration, so this is potentially not
  enabling npiv on vmfs disks. Also this property is used to check whether RDM
  is required to generate WWNs for a virtual machine.]]>
      </description-html>
      </property>

            <property name="npivWorldWideNameOp" type-id-ref="java.lang.String"
      vmodl-name="npivWorldWideNameOp"
      version-id-ref="vim.version.version2"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The flag to indicate what type of NPIV WWN operation is going to be performed
  on the virtual machine.  If unset, it indicates no change to existing NPIV WWN
  assignment (or not assigned) in the virtual machine.
  <p>
  Reconfigure privilege: VirtualMachine.Config.Settings.<br>See NpivWwnOp]]>
      </description-html>
      </property>

            <property name="locationId" type-id-ref="java.lang.String"
      vmodl-name="locationId"
      is-optional="true"
      >
      <description-html>
         <![CDATA[128-bit hash based on the virtual machine's configuration file location
  and the UUID of the host assigned to run the virtual machine.
  <p>
  Normally, this property is not set by a client, allowing the
  Virtual Infrastructure environment to assign a location ID when
  the virtual machine is created. However, if the virtual machine's
  configuration file has been manually moved, it may be desirable to clear this
  property, setting it to an empty string, so the property is regenerated.
  <p>
  Reconfigure privilege: VirtualMachine.Config.Settings]]>
      </description-html>
      </property>

            <property name="guestId" type-id-ref="java.lang.String"
      vmodl-name="guestId"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Short guest operating system identifier.
  <p>
  Reconfigure privilege: VirtualMachine.Config.Settings]]>
      </description-html>
      </property>

            <property name="alternateGuestName" type-id-ref="java.lang.String"
      vmodl-name="alternateGuestName"
      version-id-ref="vim.version.version2"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Full name for guest, if guestId is specified as <tt>other</tt>
  or <tt>other-64</tt>.
  <p>
  Reconfigure privilege: VirtualMachine.Config.Settings]]>
      </description-html>
      </property>

            <property name="annotation" type-id-ref="java.lang.String"
      vmodl-name="annotation"
      is-optional="true"
      >
      <description-html>
         <![CDATA[User-provided description of the virtual machine. Because this property
  is optional in the virtual machine configuration, it is necessary
  to pass an explicit empty string in a ConfigSpec object to remove an annotation
  that is already present in the <a href="vim.vm.ConfigInfo.html">VirtualMachineConfigInfo</a>
  for a virtual machine.
  <p>
  Reconfigure privilege: VirtualMachine.Config.Rename]]>
      </description-html>
      </property>

            <property name="files" type-id-ref="vim.vm.FileInfo"
      vmodl-name="files"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Information about virtual machine files.
  <p>
  Reconfigure privilege: VirtualMachine.Config.Settings]]>
      </description-html>
      </property>

            <property name="tools" type-id-ref="vim.vm.ToolsConfigInfo"
      vmodl-name="tools"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Configuration of VMware Tools running in the guest operating system.
  <p>
  Reconfigure privilege: VirtualMachine.Config.Settings]]>
      </description-html>
      </property>

            <property name="flags" type-id-ref="vim.vm.FlagInfo"
      vmodl-name="flags"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Additional flags for a virtual machine.
  <p>
  Reconfigure privilege: VirtualMachine.Config.Settings]]>
      </description-html>
      </property>

            <property name="consolePreferences" type-id-ref="vim.vm.ConsolePreferences"
      vmodl-name="consolePreferences"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Legacy console viewer preferences that are used with power operations. For
  example, power on.
  <p>
  Reconfigure privilege: VirtualMachine.Config.Settings]]>
      </description-html>
      </property>

            <property name="powerOpInfo" type-id-ref="vim.vm.DefaultPowerOpInfo"
      vmodl-name="powerOpInfo"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Configuration for default power operations.
  <p>
  Reconfigure privilege: VirtualMachine.Config.Settings]]>
      </description-html>
      </property>

            <property name="numCPUs" type-id-ref="INT"
      vmodl-name="numCPUs"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Number of virtual processors in a virtual machine.
  <p>
  Reconfigure privilege: VirtualMachine.Config.CpuCount]]>
      </description-html>
      </property>

            <property name="vcpuConfig" type-id-ref="vim.vm.VcpuConfig"
      vmodl-name="vcpuConfig"
      version-id-ref="vim.version.v7_0"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Vcpu configuration. The <code>vcpuConfig</code> array is indexed
 by vcpu number.]]>
      </description-html>
      </property>

            <property name="numCoresPerSocket" type-id-ref="INT"
      vmodl-name="numCoresPerSocket"
      version-id-ref="vim.version.version7"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Number of cores among which to distribute
 CPUs in this virtual machine.]]>
      </description-html>
      </property>

            <property name="memoryMB" type-id-ref="LONG"
      vmodl-name="memoryMB"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Size of a virtual machine's memory, in MB.
  <p>
  Reconfigure privilege: VirtualMachine.Config.Memory]]>
      </description-html>
      </property>

            <property name="memoryHotAddEnabled" type-id-ref="BOOLEAN"
      vmodl-name="memoryHotAddEnabled"
      version-id-ref="vim.version.version4"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates whether or not memory can be added to the virtual
  machine while it is running.

  This attribute can only be set when the virtual machine is
  powered-off.
  <p>
  Reconfigure privilege: VirtualMachine.Config.Memory]]>
      </description-html>
      </property>

            <property name="cpuHotAddEnabled" type-id-ref="BOOLEAN"
      vmodl-name="cpuHotAddEnabled"
      version-id-ref="vim.version.version4"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates whether or not virtual processors can be added to
  the virtual machine while it is running.

  This attribute can only be set when the virtual machine is
  powered-off.
  <p>
  Reconfigure privilege: VirtualMachine.Config.CpuCount]]>
      </description-html>
      </property>

            <property name="cpuHotRemoveEnabled" type-id-ref="BOOLEAN"
      vmodl-name="cpuHotRemoveEnabled"
      version-id-ref="vim.version.version4"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates whether or not virtual processors can be removed
  from the virtual machine while it is running.

  This attribute can only be set when the virtual machine is
  powered-off.
  <p>
  Reconfigure privilege: VirtualMachine.Config.CpuCount]]>
      </description-html>
      </property>

            <property name="virtualICH7MPresent" type-id-ref="BOOLEAN"
      vmodl-name="virtualICH7MPresent"
      version-id-ref="vim.version.version7"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Does this virtual machine have Virtual Intel I/O Controller Hub 7]]>
      </description-html>
      </property>

            <property name="virtualSMCPresent" type-id-ref="BOOLEAN"
      vmodl-name="virtualSMCPresent"
      version-id-ref="vim.version.version7"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Does this virtual machine have System Management Controller]]>
      </description-html>
      </property>

            <property name="deviceChange" type-id-ref="vim.vm.device.VirtualDeviceSpec"
      vmodl-name="deviceChange"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Set of virtual devices being modified by the configuration operation.
  <p>
  Reconfigure privileges:
  <ul>
     <li>VirtualMachine.Config.Resource if setting the "shares" property of
         a new or existing VirtualDisk device
     <li>VirtualMachine.Config.RawDevice if adding, removing, or modifying a
         raw device (also required when creating a virtual machine)
     <li>VirtualMachine.Config.HostUSBDevice if adding, removing, or
         modifying a VirtualUSB device backed by a host USB device (also
         required when creating a virtual machine).
     <li>VirtualMachine.Interact.DeviceConnection if setting the "connectable"
         property of a connectable device
     <li>VirtualMachine.Interact.SetCDMedia if setting the "backing" property
         of a VirtualCdrom device
     <li>VirtualMachine.Interact.SetFloppyMedia if setting the "backing" property
         of a VirtualFloppy device
     <li>VirtualMachine.Config.EditDevice if setting any property of a
         non-CDROM non-Floppy device
     <li>VirtualMachine.Config.AddExistingDisk if adding a VirtualDisk, and
         the fileOperation is unset (also required when creating a virtual machine)
     <li>VirtualMachine.Config.AddNewDisk if adding a VirtualDisk and the
         fileOperation is set (also required when creating a virtual machine)
     <li>VirtualMachine.Config.RemoveDisk if removing a VirtualDisk device
     <li>VirtualMachine.Config.AddRemoveDevice if adding or removing any
         device other than disk, raw, or USB device.
     <li>Network.Assign if if setting the "backing" property of a
         VirtualEthernetCard device.
  </ul>]]>
      </description-html>
      </property>

            <property name="cpuAllocation" type-id-ref="vim.ResourceAllocationInfo"
      vmodl-name="cpuAllocation"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Resource limits for CPU.
  <p>
  Reconfigure privilege: VirtualMachine.Config.Resource]]>
      </description-html>
      </property>

            <property name="memoryAllocation" type-id-ref="vim.ResourceAllocationInfo"
      vmodl-name="memoryAllocation"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Resource limits for memory.
  <p>
  Reconfigure privilege: VirtualMachine.Config.Resource]]>
      </description-html>
      </property>

            <property name="latencySensitivity" type-id-ref="vim.LatencySensitivity"
      vmodl-name="latencySensitivity"
      version-id-ref="vim.version.version8"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The latency-sensitivity setting of the virtual machine.
  <p>
  Reconfigure privilege: VirtualMachine.Config.Resource]]>
      </description-html>
      </property>

            <property name="cpuAffinity" type-id-ref="vim.vm.AffinityInfo"
      vmodl-name="cpuAffinity"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Affinity settings for CPU.
  <p>
  Reconfigure privilege: VirtualMachine.Config.Resource]]>
      </description-html>
      </property>

            <property name="memoryAffinity" type-id-ref="vim.vm.AffinityInfo"
      vmodl-name="memoryAffinity"
      is-deprecated="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Affinity settings for memory.
  <p>
  Reconfigure privilege: VirtualMachine.Config.Resource]]>
      </description-html>
      <deprecated-html>
         <![CDATA[since vSphere 6.0.]]>
      </deprecated-html>
      </property>

            <property name="networkShaper" type-id-ref="vim.vm.NetworkShaperInfo"
      vmodl-name="networkShaper"
      is-deprecated="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Resource limits for network.
  <p>
  Reconfigure privilege: VirtualMachine.Config.Resource]]>
      </description-html>
      <deprecated-html>
         <![CDATA[from vSphere 5.5, shaping policy on VM is not supported.]]>
      </deprecated-html>
      </property>

            <property name="cpuFeatureMask" type-id-ref="vim.vm.ConfigSpec.CpuIdInfoSpec"
      vmodl-name="cpuFeatureMask"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Specifies the CPU feature compatibility masks.
  <p>
  Reconfigure privilege: VirtualMachine.Config.Settings
  As of vSphere API 6.5 <a href="vim.host.FeatureMask.html">FeatureMask</a>
  is the recommended method for masking virtual machines with
  hardware version 9 and above (newer).]]>
      </description-html>
      </property>

            <property name="extraConfig" type-id-ref="vim.option.OptionValue"
      vmodl-name="extraConfig"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Additional configuration information for the virtual machine.
  This describes a set of modifications to the additional options. If the key is
  already present, it will be reset with the new value provided. Otherwise, a new
  option is added. Keys with empty values will be removed.
  <p>
  Configuration keys that would conflict with parameters that are explicitly
  configurable through other fields in the ConfigSpec object are silently ignored.
  <p>
  Reconfigure privilege: VirtualMachine.Config.AdvancedConfig
    (also required when setting this property while creating a virtual machine)]]>
      </description-html>
      </property>

            <property name="swapPlacement" type-id-ref="java.lang.String"
      vmodl-name="swapPlacement"
      version-id-ref="vim.version.version2"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Virtual machine swapfile placement policy. This may only be set if the
  <a href="vim.vm.Capability.html#swapPlacementSupported">swapPlacementSupported</a>
  capability is true for this virtual machine. Any change to this policy
  will take effect the next time the virtual machine powers on, resumes
  from a suspended state, or migrates while powered on.
  <p>
  Reconfigure privilege: VirtualMachine.Config.SwapPlacement
    (also required when setting this property while creating a virtual machine)
  <p><br>See <a href="vim.vm.ConfigInfo.SwapPlacementType.html">VirtualMachineConfigInfoSwapPlacementType</a><br>]]>
      </description-html>
      </property>

            <property name="bootOptions" type-id-ref="vim.vm.BootOptions"
      vmodl-name="bootOptions"
      version-id-ref="vim.version.version2"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Settings that control the boot behavior of the virtual
  machine. These settings take effect during the next power-on
  of the virtual machine.
  <p>
  Reconfigure privilege: VirtualMachine.Config.Settings]]>
      </description-html>
      </property>

            <property name="vAppConfig" type-id-ref="vim.vApp.VmConfigSpec"
      vmodl-name="vAppConfig"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Configuration of vApp meta-data for a virtual machine]]>
      </description-html>
      </property>

            <property name="ftInfo" type-id-ref="vim.vm.FaultToleranceConfigInfo"
      vmodl-name="ftInfo"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Fault Tolerance settings for this virtual machine.]]>
      </description-html>
      </property>

            <property name="repConfig" type-id-ref="vim.vm.ReplicationConfigSpec"
      vmodl-name="repConfig"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[vSphere Replication settings.
 Note this may become deprecated in the future releases. We
 discourage any unnecessary dependency on this field.]]>
      </description-html>
      </property>

            <property name="vAppConfigRemoved" type-id-ref="BOOLEAN"
      vmodl-name="vAppConfigRemoved"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Set to true, if the vApp configuration should be removed
 <p>
 Reconfigure privilege: VApp.ApplicationConfig]]>
      </description-html>
      </property>

            <property name="vAssertsEnabled" type-id-ref="BOOLEAN"
      vmodl-name="vAssertsEnabled"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates whether user-configured virtual asserts will be
  triggered during virtual machine replay. This setting takes
  effect during the next replay of the virtual machine.
  <p>
  Enabling this functionality can potentially cause some
  performance overhead during virtual machine execution.]]>
      </description-html>
      </property>

            <property name="changeTrackingEnabled" type-id-ref="BOOLEAN"
      vmodl-name="changeTrackingEnabled"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Setting to control enabling/disabling changed block tracking for
  the virtual disks of this VM. This may only be set if the
  <a href="vim.vm.Capability.html#changeTrackingSupported">changeTrackingSupported</a>
  capability is true for this virtual machine. Any change to this property
  will take effect the next time the virtual machine powers on, resumes
  from a suspended state, performs a snapshot create/delete/revert operation
  or migrates while powered on.
  <p>
  Reconfigure privilege: VirtualMachine.Config.ChangeTracking
    (also required when setting this property while creating a virtual machine)]]>
      </description-html>
      </property>

            <property name="firmware" type-id-ref="java.lang.String"
      vmodl-name="firmware"
      version-id-ref="vim.version.version7"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Set the desired firmware type for this Virtual Machine.

  Possible values are described in
  <a href="vim.vm.GuestOsDescriptor.FirmwareType.html">GuestOsDescriptorFirmwareType</a>]]>
      </description-html>
      </property>

            <property name="maxMksConnections" type-id-ref="INT"
      vmodl-name="maxMksConnections"
      version-id-ref="vim.version.version7"
      is-optional="true"
      >
      <description-html>
         <![CDATA[If set, this setting limits the maximum number of active remote
 display connections that the virtual machine will support to
 the specified value.
 <p>
 Reconfigure privilege: VirtualMachine.Config.MksControl]]>
      </description-html>
      </property>

            <property name="guestAutoLockEnabled" type-id-ref="BOOLEAN"
      vmodl-name="guestAutoLockEnabled"
      version-id-ref="vim.version.version7"
      is-optional="true"
      >
      <description-html>
         <![CDATA[If set to True, this causes the guest operating system to automatically
 logout any active sessions whenever there are no remote display
 connections open to the virtual machine.
 <p>
 Reconfigure privilege: VirtualMachine.Config.MksControl]]>
      </description-html>
      </property>

            <property name="managedBy" type-id-ref="vim.ext.ManagedByInfo"
      vmodl-name="managedBy"
      version-id-ref="vim.version.version7"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Specifies that this VM is managed by a VC Extension.
 <p>
 This information is primarily used in the Client to show a custom icon for
 managed virtual machines, and a description of the function of the virtual
 machine. If no extension can be found with the extension key in the
 <a href="vim.ext.ManagedByInfo.html">managedBy</a> object, or the type is not found
 in the <a href="vim.Extension.html#managedEntityInfo">managedEntityInfo</a> list of the
 extension, the default virtual machine icon is used, and no description is
 shown.
 To unset this field pass a <a href="vim.ext.ManagedByInfo.html">ManagedByInfo</a> object with an
 empty <a href="vim.ext.ManagedByInfo.html#extensionKey">extensionKey</a>.
 <p>
 Reconfigure privilege: VirtualMachine.Config.ManagedBy]]>
      </description-html>
      </property>

            <property name="memoryReservationLockedToMax" type-id-ref="BOOLEAN"
      vmodl-name="memoryReservationLockedToMax"
      version-id-ref="vim.version.version7"
      is-optional="true"
      >
      <description-html>
         <![CDATA[If set true, memory resource reservation for this virtual machine will always be
 equal to the virtual machine's memory size; increases in memory size will be
 rejected when a corresponding reservation increase is not possible. This feature
 may only be enabled if it is currently possible to reserve all of the virtual machine's memory.
  <p>
  Reconfigure privilege: VirtualMachine.Config.Resource]]>
      </description-html>
      </property>

            <property name="nestedHVEnabled" type-id-ref="BOOLEAN"
      vmodl-name="nestedHVEnabled"
      version-id-ref="vim.version.version8"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Specifies that this VM will use nested hardware-assisted virtualization.
  When creating a new VM:
  - If vim.vm.FlagInfo.vbsEnabled is set to <code>true</code>,
    and this flag is set to <code>false</code> error is returned.
  - If this flag is unset and vim.vm.FlagInfo.vbsEnabled is set to
    <code>true</code>, the value of this flag is set to <code>true</code>.
  <p>
  Reconfigure privilege: VirtualMachine.Config.Settings]]>
      </description-html>
      </property>

            <property name="vPMCEnabled" type-id-ref="BOOLEAN"
      vmodl-name="vPMCEnabled"
      version-id-ref="vim.version.version8"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Specifies that this VM will have virtual CPU performance counters
  enabled.
  <p>
  Reconfigure privilege: VirtualMachine.Config.Settings]]>
      </description-html>
      </property>

            <property name="scheduledHardwareUpgradeInfo" type-id-ref="vim.vm.ScheduledHardwareUpgradeInfo"
      vmodl-name="scheduledHardwareUpgradeInfo"
      version-id-ref="vim.version.version8"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Configuration of scheduled hardware upgrades.
  <p>
  Reconfigure privilege: VirtualMachine.Config.UpgradeVirtualHardware<br>See <a href="vim.vm.ScheduledHardwareUpgradeInfo.html">ScheduledHardwareUpgradeInfo</a><br>]]>
      </description-html>
      </property>

            <property name="vmProfile" type-id-ref="vim.vm.ProfileSpec"
      vmodl-name="vmProfile"
      version-id-ref="vim.version.version9"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Virtual Machine Profile requirement.

 Profiles are solution specific.

 Profile Based Storage Management is a vSphere server extension.
 API users who want to provision VMs using Storage Profiles, need to
 interact with it.

 This is an optional parameter and if user doesn't specify profile,
 the default behavior will apply.]]>
      </description-html>
      </property>

            <property name="messageBusTunnelEnabled" type-id-ref="BOOLEAN"
      vmodl-name="messageBusTunnelEnabled"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Whether to allow tunneling of clients from the guest VM into the
 common message bus on the host network.]]>
      </description-html>
      </property>

            <property name="crypto" type-id-ref="vim.encryption.CryptoSpec"
      vmodl-name="crypto"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Virtual Machine cryptographic options.
 The cryptographic options are inherited to all disks of the VM.
 The cryptographic options for a disk can be different by setting
 its CryptoSpec.]]>
      </description-html>
      </property>

            <property name="migrateEncryption" type-id-ref="java.lang.String"
      vmodl-name="migrateEncryption"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[An enum describing whether encrypted vMotion is required for this VM.
  Supported values are listed in EncryptedVMotionModes.

 This defaults to opportunistic for a regular VM, and will be set to
 required for an encrypted VM.]]>
      </description-html>
      </property>

            <property name="sgxInfo" type-id-ref="vim.vm.SgxInfo"
      vmodl-name="sgxInfo"
      version-id-ref="vim.version.v7_0"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Configuration of SGX, Software Guard Extensions for the VM.]]>
      </description-html>
      </property>

            <property name="guestMonitoringModeInfo" type-id-ref="vim.vm.GuestMonitoringModeInfo"
      vmodl-name="guestMonitoringModeInfo"
      version-id-ref="vim.version.v7_0"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Configuration of GMM, Guest Monitoring Mode for the VM.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.vm.ConfigSpec.NpivWwnOp</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.ConfigSpec.EncryptedVMotionModes</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.ConfigSpec.CpuIdInfoSpec</nested-type-id-ref>
   </data-object>
   <data-object name="VsanHostIpConfig"
      type-id="vim.vsan.host.IpConfig"
      vmodl-name="vim.vsan.host.IpConfig"
      version-id-ref="vim.version.version9"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[An <a href="vim.vsan.host.IpConfig.html">VsanHostIpConfig</a> is a pair of multicast IP addresses for use by the VSAN
 service.  For VSAN there is one such IpConfig pair per "virtual network" as
 represented by <a href="vim.vsan.host.ConfigInfo.NetworkInfo.PortConfig.html">VsanHostConfigInfoNetworkInfoPortConfig</a>.<br>See <a href="vim.vsan.host.ConfigInfo.NetworkInfo.html">VsanHostConfigInfoNetworkInfo</a><br>See <a href="vim.vsan.host.ConfigInfo.NetworkInfo.html#port">port</a><br>See <a href="vim.vsan.host.ConfigInfo.NetworkInfo.PortConfig.html">VsanHostConfigInfoNetworkInfoPortConfig</a><br>See <a href="vim.host.VsanSystem.html#update">UpdateVsan_Task</a><br>]]>
      </description-html>
            <property name="upstreamIpAddress" type-id-ref="java.lang.String"
      vmodl-name="upstreamIpAddress"
      >
      <description-html>
         <![CDATA[Agent-to-master multicast IP address.]]>
      </description-html>
      </property>

            <property name="downstreamIpAddress" type-id-ref="java.lang.String"
      vmodl-name="downstreamIpAddress"
      >
      <description-html>
         <![CDATA[Master-to-agent multicast IP address.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostSpecification"
      type-id="vim.profile.host.HostSpecification"
      vmodl-name="vim.profile.host.HostSpecification"
      version-id-ref="vim.version.version11"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The host specification data are those needed at host boot time to create and
 configure virtual devices and host services.

 The <a href="vim.profile.host.HostSpecification.html">HostSpecification</a> data object contains a collection of host sub
 specification data.

 For host sub specification data, see
 <a href="vim.profile.host.HostSubSpecification.html">HostSubSpecification</a>
 for details.]]>
      </description-html>
            <property name="createdTime" type-id-ref="vmodl.DateTime"
      vmodl-name="createdTime"
      >
      <description-html>
         <![CDATA[Time at which the host specification was created.]]>
      </description-html>
      </property>

            <property name="lastModified" type-id-ref="vmodl.DateTime"
      vmodl-name="lastModified"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Time at which the host specification was last modified. If it isn't set,
 it is the same as <code>createdTime</code>.]]>
      </description-html>
      </property>

            <property name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      >
      <description-html>
         <![CDATA[The host that the spec data belongs to.]]>
      </description-html>
      </property>

            <property name="subSpecs" type-id-ref="vim.profile.host.HostSubSpecification"
      vmodl-name="subSpecs"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The collection of the host sub specifications. It is optional.]]>
      </description-html>
      </property>

            <property name="changeID" type-id-ref="java.lang.String"
      vmodl-name="changeID"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The change ID for querying the host specification data updated in a
 time period.  It has a format of timestamp:change_number, where
 timestamp is the decimal string of a start time, and change_number is
 the decimal string of an auto incremented variable counting from the
 start time.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DistributedVirtualSwitchHostMemberTransportZoneInfo"
      type-id="vim.dvs.HostMember.TransportZoneInfo"
      vmodl-name="vim.dvs.HostMember.TransportZoneInfo"
      enclosing-type-id-ref="vim.dvs.HostMember"
      version-id-ref="vim.version.v7_0"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Transport zone information.]]>
      </description-html>
            <property name="uuid" type-id-ref="java.lang.String"
      vmodl-name="uuid"
      >
      <description-html>
         <![CDATA[The UUID of transport zone.]]>
      </description-html>
      </property>

            <property name="type" type-id-ref="java.lang.String"
      vmodl-name="type"
      >
      <description-html>
         <![CDATA[The type of transport zone.
 See TransportZoneType for valid values.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VmDiskFileQueryFlags"
      type-id="vim.host.DatastoreBrowser.VmDiskQuery.Details"
      vmodl-name="vim.host.DatastoreBrowser.VmDiskQuery.Details"
      enclosing-type-id-ref="vim.host.DatastoreBrowser.VmDiskQuery"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Details for the virtual disk primary file.]]>
      </description-html>
            <property name="diskType" type-id-ref="BOOLEAN"
      vmodl-name="diskType"
      >
      <description-html>
         <![CDATA[The flag to indicate whether the type of the physical disk backing
  the virtual disk is returned.]]>
      </description-html>
      </property>

            <property name="capacityKb" type-id-ref="BOOLEAN"
      vmodl-name="capacityKb"
      >
      <description-html>
         <![CDATA[The flag to indicate whether the capacity of the virtual disk from
  the point of view of a virtual machine is returned.]]>
      </description-html>
      </property>

            <property name="hardwareVersion" type-id-ref="BOOLEAN"
      vmodl-name="hardwareVersion"
      >
      <description-html>
         <![CDATA[The flag to indicate whether the hardware version of the virtual disk
  file is returned.]]>
      </description-html>
      </property>

            <property name="controllerType" type-id-ref="BOOLEAN"
      vmodl-name="controllerType"
      version-id-ref="vim.version.version2"
      is-deprecated="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The flag to indicate whether or not the controller type of the virtual disk
  file is returned.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 5.0, this property is no longer
      relevant and should not be used.
      With the current state of emulation, we don't care about the
      adapter type a disk is connected to, as disks may be shuffled
      around. For example, a disk may be unplugged from a buslogic
      controller and plugged into an lsilogic controller.]]>
      </deprecated-html>
      </property>

            <property name="diskExtents" type-id-ref="BOOLEAN"
      vmodl-name="diskExtents"
      version-id-ref="vim.version.version2"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The flag to indicate whether or not the disk extents of the virtual disk
  are returned.]]>
      </description-html>
      </property>

            <property name="thin" type-id-ref="BOOLEAN"
      vmodl-name="thin"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The flag to indicate whether the thin-ness of the disk is returned.]]>
      </description-html>
      </property>

            <property name="encryption" type-id-ref="BOOLEAN"
      vmodl-name="encryption"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The flag to indicate whether the encryption information of the
  virtual disk is returned.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostSriovConfig"
      type-id="vim.host.SriovConfig"
      vmodl-name="vim.host.SriovConfig"
      version-id-ref="vim.version.version9"
      base-type-id="vim.host.PciPassthruConfig"
      >
      <description-html>
         <![CDATA[This data object allows configuration of SR-IOV device.]]>
      </description-html>
            <property name="sriovEnabled" type-id-ref="BOOLEAN"
      vmodl-name="sriovEnabled"
      >
      <description-html>
         <![CDATA[enable SR-IOV for this device]]>
      </description-html>
      </property>

            <property name="numVirtualFunction" type-id-ref="INT"
      vmodl-name="numVirtualFunction"
      >
      <description-html>
         <![CDATA[Number of SR-IOV virtual functions to enable on this device]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="OvfCreateImportSpecResult"
      type-id="vim.OvfManager.CreateImportSpecResult"
      vmodl-name="vim.OvfManager.CreateImportSpecResult"
      enclosing-type-id-ref="vim.OvfManager"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The CreateImportSpecResult contains all information regarding the import that can
 be extracted from the OVF descriptor.
 <p>
 For example, this includes the list of items that the caller must upload in order
 to complete the import, but not the list of URLs to which the files must be
 uploaded. These paths are not known until the VMs have been created, ie. until
 <a href="vim.ResourcePool.html#importVApp">ImportVApp</a> has been
 called.]]>
      </description-html>
            <property name="importSpec" type-id-ref="vim.ImportSpec"
      vmodl-name="importSpec"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The ImportSpec contains information about which <a href="vim.VirtualMachine.html">VirtualMachine</a>s
 and <a href="vim.VirtualApp.html">VirtualApp</a>s are present in the entity and
 how they relate to each other.]]>
      </description-html>
      </property>

            <property name="fileItem" type-id-ref="vim.OvfManager.FileItem"
      vmodl-name="fileItem"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The files that must be uploaded by the caller as part of importing the entity.
 <p>
 The files must be uploaded in order, because some of them may be delta files
 that patch already-uploaded files.]]>
      </description-html>
      </property>

            <property name="warning" type-id-ref="vmodl.LocalizedMethodFault"
      vmodl-name="warning"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Non-fatal warnings from the processing.  The ImportSpec will be valid, but the
 user may choose to reject it based on these warnings.]]>
      </description-html>
      </property>

            <property name="error" type-id-ref="vmodl.LocalizedMethodFault"
      vmodl-name="error"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Errors that happened during processing. Something will be wrong with the
 ImportSpec, or it is not present.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DiskChangeInfo"
      type-id="vim.VirtualMachine.DiskChangeInfo"
      vmodl-name="vim.VirtualMachine.DiskChangeInfo"
      enclosing-type-id-ref="vim.VirtualMachine"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Data structure to describe areas in a disk associated with this VM that have
 been modified since a well-defined point in the past. Returned by
 <a href="vim.VirtualMachine.html#queryChangedDiskAreas">QueryChangedDiskAreas</a>. This data structure describes
 a subset of the disk identified by startOffset and length. All areas that
 have been modified within this interval are listed under changedArea.]]>
      </description-html>
            <property name="startOffset" type-id-ref="LONG"
      vmodl-name="startOffset"
      >
      <description-html>
         <![CDATA[Start offset (in bytes) of disk area described by this data structure.]]>
      </description-html>
      </property>

            <property name="length" type-id-ref="LONG"
      vmodl-name="length"
      >
      <description-html>
         <![CDATA[Length (in bytes) of disk area described by this data structure.]]>
      </description-html>
      </property>

            <property name="changedArea" type-id-ref="vim.VirtualMachine.DiskChangeInfo.DiskChangeExtent"
      vmodl-name="changedArea"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Modified disk areas. Might be empty if no parts of the disk between
 startOffset and startOffset + length were modified.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.VirtualMachine.DiskChangeInfo.DiskChangeExtent</nested-type-id-ref>
   </data-object>
   <data-object name="PermissionEvent"
      type-id="vim.event.PermissionEvent"
      vmodl-name="vim.event.PermissionEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.AuthorizationEvent"
      >
      <description-html>
         <![CDATA[This event records a permission operation.]]>
      </description-html>
            <property name="entity" type-id-ref="vim.event.ManagedEntityEventArgument"
      vmodl-name="entity"
      >
      <description-html>
         <![CDATA[The entity to which the permission applied.]]>
      </description-html>
      </property>

            <property name="principal" type-id-ref="java.lang.String"
      vmodl-name="principal"
      >
      <description-html>
         <![CDATA[The user name or group to which the permission was granted.]]>
      </description-html>
      </property>

            <property name="group" type-id-ref="BOOLEAN"
      vmodl-name="group"
      >
      <description-html>
         <![CDATA[Whether or not the principal was a group.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="AnswerFileStatusResult"
      type-id="vim.profile.host.AnswerFileStatusResult"
      vmodl-name="vim.profile.host.AnswerFileStatusResult"
      version-id-ref="vim.version.version7"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The <a href="vim.profile.host.AnswerFileStatusResult.html">AnswerFileStatusResult</a> data object shows the validity of the
 answer file associated with a host.]]>
      </description-html>
            <property name="checkedTime" type-id-ref="vmodl.DateTime"
      vmodl-name="checkedTime"
      >
      <description-html>
         <![CDATA[Time that the answer file status was determined.]]>
      </description-html>
      </property>

            <property name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      >
      <description-html>
         <![CDATA[Host associated with the answer file.]]>
      </description-html>
      </property>

            <property name="status" type-id-ref="java.lang.String"
      vmodl-name="status"
      >
      <description-html>
         <![CDATA[Status of the answer file.
 See <a href="vim.profile.host.ProfileManager.AnswerFileStatus.html">HostProfileManagerAnswerFileStatus</a> for valid values.]]>
      </description-html>
      </property>

            <property name="error" type-id-ref="vim.profile.host.AnswerFileStatusResult.AnswerFileStatusError"
      vmodl-name="error"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[If <code>status</code> is <code>invalid</code>, this property contains a list
 of status error objects.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.profile.host.AnswerFileStatusResult.AnswerFileStatusError</nested-type-id-ref>
   </data-object>
   <data-object name="LicenseEvent"
      type-id="vim.event.LicenseEvent"
      vmodl-name="vim.event.LicenseEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.Event"
      >
      <description-html>
         <![CDATA[This is a base licensing event to group all license events.]]>
      </description-html>
   </data-object>
   <data-object name="VirtualDiskConfigSpec"
      type-id="vim.vm.device.VirtualDiskSpec"
      vmodl-name="vim.vm.device.VirtualDiskSpec"
      version-id-ref="vim.version.version9"
      base-type-id="vim.vm.device.VirtualDeviceSpec"
      >
      <description-html>
         <![CDATA[The VirtualDiskSpec data object type encapsulates change
  specifications for an individual virtual disk device. The virtual
  disk being added or modified must be fully specified.]]>
      </description-html>
            <property name="diskMoveType" type-id-ref="java.lang.String"
      vmodl-name="diskMoveType"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Manner in which to move the virtual disk to the target datastore.
  The set of possible values is described in
  <a href="vim.vm.RelocateSpec.DiskMoveOptions.html">VirtualMachineRelocateDiskMoveOptions</a>.
  <p>
  This property can only be set if <a href="vim.host.Capability.html#deltaDiskBackingsSupported">deltaDiskBackingsSupported</a> is true.
  <p>
  If left unset then vim.vm.RelocateSpec.DiskMoveOptions#moveAllDiskBackingsAndDisallowSharing
  is assumed.]]>
      </description-html>
      </property>

            <property name="migrateCache" type-id-ref="BOOLEAN"
      vmodl-name="migrateCache"
      is-deprecated="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Manner in which to transfer the cache associated with the virtual disk to the
  target host.
  If left unset then migrate is used when virtual flash resource on the source host
  is accessible and when the backing vFlash module version is compatible with the
  specific vFalsh module on the target host; otherwise flush is used for write back
  cache, or a no-op for write through cache. This setting can avoid VM migration failure
  due to incompatibility.
  If true then migrate is always used. VM migration may fail if the backing vFlash module
  version is incompatible with the module on the target host.
  If false then flush is used for write back cache. It is a no-op for write through
  cache. This setting can avoid VM migration failure due to incompatibility, but cache
  files have to be rebuilt on the target host.
  Default is unset.
  <p><br>See <a href="vim.host.VFlashManager.VFlashCacheConfigInfo.VFlashModuleConfigOption.html">HostVFlashManagerVFlashCacheConfigInfoVFlashModuleConfigOption</a><br>]]>
      </description-html>
      <deprecated-html>
         <![CDATA[since vSphere 7.0 because vFlash Read Cache
 end of availability.]]>
      </deprecated-html>
      </property>

   </data-object>
   <data-object name="VmConfigFileEncryptionInfo"
      type-id="vim.host.DatastoreBrowser.VmConfigInfo.VmConfigEncryptionInfo"
      vmodl-name="vim.host.DatastoreBrowser.VmConfigInfo.VmConfigEncryptionInfo"
      enclosing-type-id-ref="vim.host.DatastoreBrowser.VmConfigInfo"
      version-id-ref="vim.version.version11"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The encryption information of a virtual machine configuration.]]>
      </description-html>
            <property name="keyId" type-id-ref="vim.encryption.CryptoKeyId"
      vmodl-name="keyId"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The key identifier for an encrypted virtual machine
  configuration file.

  If the virtual machine configuration file is encrypted, then
  the keyId is set and indicates the identifier that can be
  used to lookup the key material. Unset if the virtual machine
  configuration file is not encrypted.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ReplicationSpec"
      type-id="vim.vm.replication.ReplicationSpec"
      vmodl-name="vim.vm.replication.ReplicationSpec"
      version-id-ref="vim.version.version11"
      base-type-id="vmodl.DynamicData"
      >
            <property name="replicationGroupId" type-id-ref="vim.vm.replication.ReplicationGroupId"
      vmodl-name="replicationGroupId"
      >
      <description-html>
         <![CDATA[Replication Group id]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ProductComponentInfo"
      type-id="vim.ServiceInstance.ProductComponentInfo"
      vmodl-name="vim.ServiceInstance.ProductComponentInfo"
      enclosing-type-id-ref="vim.ServiceInstance"
      version-id-ref="vim.version.version2"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[ProductComponentInfo data object type describes installed components.
 Product component is defined as a software module that is released
 and versioned independently but has dependency relationship with other products.
 If one product, for usability or any other reason, bundles other products,
 ProductComponentInfo type may be used to describe installed components.
 For example, ESX product may bundle VI Client in its releases.]]>
      </description-html>
            <property name="id" type-id-ref="java.lang.String"
      vmodl-name="id"
      >
      <description-html>
         <![CDATA[Opaque identifier that is unique for this product component]]>
      </description-html>
      </property>

            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      is-localizable="true"
      >
      <description-html>
         <![CDATA[Canonical name of product component]]>
      </description-html>
      </property>

            <property name="version" type-id-ref="java.lang.String"
      vmodl-name="version"
      >
      <description-html>
         <![CDATA[Version of product component]]>
      </description-html>
      </property>

            <property name="release" type-id-ref="INT"
      vmodl-name="release"
      >
      <description-html>
         <![CDATA[Release property is a number which increments with each
 new release of product. Product release may not rev version
 but release number is always incremented.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostMemberUplinkHealthCheckResult"
      type-id="vim.dvs.HostMember.UplinkHealthCheckResult"
      vmodl-name="vim.dvs.HostMember.UplinkHealthCheckResult"
      enclosing-type-id-ref="vim.dvs.HostMember"
      version-id-ref="vim.version.version8"
      base-type-id="vim.dvs.HostMember.HealthCheckResult"
      >
      <description-html>
         <![CDATA[This class defines healthcheck result of a specified Uplink port
  in vSphere Distributed Switch.]]>
      </description-html>
            <property name="uplinkPortKey" type-id-ref="java.lang.String"
      vmodl-name="uplinkPortKey"
      >
      <description-html>
         <![CDATA[The uplink port key.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostNatServiceConfig"
      type-id="vim.host.NatService.Config"
      vmodl-name="vim.host.NatService.Config"
      enclosing-type-id-ref="vim.host.NatService"
      version-id-ref="vim.version.version2"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object type describes the network address
  translation (NAT) service configuration
  representing both the configured properties
  on a NAT Service and identification information.]]>
      </description-html>
            <property name="changeOperation" type-id-ref="java.lang.String"
      vmodl-name="changeOperation"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates the change operation to apply on this configuration
  specification.<br>See <a href="vim.host.ConfigChange.Operation.html">HostConfigChangeOperation</a><br>]]>
      </description-html>
      </property>

            <property name="key" type-id-ref="java.lang.String"
      vmodl-name="key"
      >
      <description-html>
         <![CDATA[The instance ID of the NAT service.]]>
      </description-html>
      </property>

            <property name="spec" type-id-ref="vim.host.NatService.Specification"
      vmodl-name="spec"
      >
      <description-html>
         <![CDATA[The specification of the NAT service.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="NetIpStackInfoDefaultRouter"
      type-id="vim.net.IpStackInfo.DefaultRouter"
      vmodl-name="vim.net.IpStackInfo.DefaultRouter"
      enclosing-type-id-ref="vim.net.IpStackInfo"
      version-id-ref="vim.version.version6"
      base-type-id="vmodl.DynamicData"
      >
            <property name="ipAddress" type-id-ref="java.lang.String"
      vmodl-name="ipAddress"
      >
      <description-html>
         <![CDATA[Unicast IP address of a next-hop router.]]>
      </description-html>
      </property>

            <property name="device" type-id-ref="java.lang.String"
      vmodl-name="device"
      >
      <description-html>
         <![CDATA[This value will contain the name of the interface as reported by the
 operationg system.]]>
      </description-html>
      </property>

            <property name="lifetime" type-id-ref="vmodl.DateTime"
      vmodl-name="lifetime"
      >
      <description-html>
         <![CDATA[When this entry will no longer valid. For IPv6 this value
 see For IPv6 RFC 2462 sections 4.2 and 6.3.4.]]>
      </description-html>
      </property>

            <property name="preference" type-id-ref="java.lang.String"
      vmodl-name="preference"
      >
      <description-html>
         <![CDATA[Value of this entry compared to others that this IP stack uses
 when making selection to route traffic on the default
 route when there are multiple default routers. Value must be one of
 <a href="vim.net.IpStackInfo.Preference.html">NetIpStackInfoPreference</a>]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ProfileSimpleExpression"
      type-id="vim.profile.SimpleExpression"
      vmodl-name="vim.profile.SimpleExpression"
      version-id-ref="vim.version.version5"
      base-type-id="vim.profile.Expression"
      >
      <description-html>
         <![CDATA[DataObject represents a pre-defined expression]]>
      </description-html>
            <property name="expressionType" type-id-ref="java.lang.String"
      vmodl-name="expressionType"
      >
      <description-html>
         <![CDATA[Type of the simple expression to instantiate.
 The expressionType should be derived from the available expressions as
 listed in the metadata.]]>
      </description-html>
      </property>

            <property name="parameter" type-id-ref="vmodl.KeyAnyValue"
      vmodl-name="parameter"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The parameters for the expressionType.
 The list of parameters needed for a simple expression can
 be obtained from the metadata.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostVMotionCompatibility"
      type-id="vim.ServiceInstance.HostVMotionCompatibility"
      vmodl-name="vim.ServiceInstance.HostVMotionCompatibility"
      enclosing-type-id-ref="vim.ServiceInstance"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The object type for the array returned by queryVMotionCompatibility;
  specifies the VMotion compatibility types for a host.]]>
      </description-html>
            <property name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      >
      <description-html>
         <![CDATA[The prospective host for the virtual machine.]]>
      </description-html>
      </property>

            <property name="compatibility" type-id-ref="java.lang.String"
      vmodl-name="compatibility"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Ways in which the host is compatible with the designated virtual
  machine that is a candidate for VMotion. This array will be
  a subset of the set of VMotionCompatibilityType strings that
  were input to queryVMotionCompatibility.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostInternetScsiHbaSendTarget"
      type-id="vim.host.InternetScsiHba.SendTarget"
      vmodl-name="vim.host.InternetScsiHba.SendTarget"
      enclosing-type-id-ref="vim.host.InternetScsiHba"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The iSCSI send target.]]>
      </description-html>
            <property name="address" type-id-ref="java.lang.String"
      vmodl-name="address"
      >
      <description-html>
         <![CDATA[The IP address or hostname of the storage device.]]>
      </description-html>
      </property>

            <property name="port" type-id-ref="INT"
      vmodl-name="port"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The TCP port of the storage device.
 If not specified, the standard default of 3260 is used.]]>
      </description-html>
      </property>

            <property name="authenticationProperties" type-id-ref="vim.host.InternetScsiHba.AuthenticationProperties"
      vmodl-name="authenticationProperties"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The authentication settings for this discovery target.
  All static targets discovered via this target will inherit the
  use of these settings unless the static target's authentication
  settings are explicitly set.]]>
      </description-html>
      </property>

            <property name="digestProperties" type-id-ref="vim.host.InternetScsiHba.DigestProperties"
      vmodl-name="digestProperties"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The digest settings for this discovery target.
  All static targets discovered via this target will inherit the
  use of these settings unless the static target's digest
  settings are explicitly set.]]>
      </description-html>
      </property>

            <property name="supportedAdvancedOptions" type-id-ref="vim.option.OptionDef"
      vmodl-name="supportedAdvancedOptions"
      version-id-ref="vim.version.version5"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[A list of supported key/value pair advanced options for the
  host bus adapter including their type information.]]>
      </description-html>
      </property>

            <property name="advancedOptions" type-id-ref="vim.host.InternetScsiHba.ParamValue"
      vmodl-name="advancedOptions"
      version-id-ref="vim.version.version5"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[A list of the current options settings for the host bus adapter.]]>
      </description-html>
      </property>

            <property name="parent" type-id-ref="java.lang.String"
      vmodl-name="parent"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The device name of the host bus adapter from which settings
 can be inherited.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ClusterAffinityRuleSpec"
      type-id="vim.cluster.AffinityRuleSpec"
      vmodl-name="vim.cluster.AffinityRuleSpec"
      version-id-ref="vim.version.version1"
      base-type-id="vim.cluster.RuleInfo"
      >
      <description-html>
         <![CDATA[The <a href="vim.cluster.AffinityRuleSpec.html">ClusterAffinityRuleSpec</a> data object defines a set
  of virtual machines. DRS will attempt to schedule the virtual machines
  to run on the same host.]]>
      </description-html>
            <property name="vm" type-id-ref="vim.VirtualMachine"
      vmodl-name="vm"
      is-array="true"
      >
      <description-html>
         <![CDATA[List of virtual machine references.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="OvfValidateHostResult"
      type-id="vim.OvfManager.ValidateHostResult"
      vmodl-name="vim.OvfManager.ValidateHostResult"
      enclosing-type-id-ref="vim.OvfManager"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
            <property name="downloadSize" type-id-ref="LONG"
      vmodl-name="downloadSize"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The total amount of data that must be transferred to download the entity.
 <p>
 This may be inaccurate due to disk compression etc.]]>
      </description-html>
      </property>

            <property name="flatDeploymentSize" type-id-ref="LONG"
      vmodl-name="flatDeploymentSize"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The total amount of space required to deploy the entity if using flat disks.]]>
      </description-html>
      </property>

            <property name="sparseDeploymentSize" type-id-ref="LONG"
      vmodl-name="sparseDeploymentSize"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The total amount of space required to deploy the entity using sparse disks,
 if known.]]>
      </description-html>
      </property>

            <property name="error" type-id-ref="vmodl.LocalizedMethodFault"
      vmodl-name="error"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Errors that happened during validation. The presence of faults in this list
 indicates that the validation failed.]]>
      </description-html>
      </property>

            <property name="warning" type-id-ref="vmodl.LocalizedMethodFault"
      vmodl-name="warning"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Non-fatal warnings from the validation.]]>
      </description-html>
      </property>

            <property name="supportedDiskProvisioning" type-id-ref="java.lang.String"
      vmodl-name="supportedDiskProvisioning"
      version-id-ref="vim.version.version6"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[An array of the disk provisioning type supported by the target host system.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ParaVirtualSCSIControllerOption"
      type-id="vim.vm.device.ParaVirtualSCSIControllerOption"
      vmodl-name="vim.vm.device.ParaVirtualSCSIControllerOption"
      version-id-ref="vim.version.version4"
      base-type-id="vim.vm.device.VirtualSCSIControllerOption"
      >
      <description-html>
         <![CDATA[ParaVirtualSCSIControllerOption is the data object that contains
 the options for a a paravirtualized SCSI controller.]]>
      </description-html>
   </data-object>
   <data-object name="ClusterComputeResourceVCProfile"
      type-id="vim.ClusterComputeResource.VCProfile"
      vmodl-name="vim.ClusterComputeResource.VCProfile"
      enclosing-type-id-ref="vim.ClusterComputeResource"
      version-id-ref="vim.version.version13"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Describes cluster configuration for various vCenter services.]]>
      </description-html>
            <property name="clusterSpec" type-id-ref="vim.cluster.ConfigSpecEx"
      vmodl-name="clusterSpec"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Cluster configurarion.]]>
      </description-html>
      </property>

            <property name="evcModeKey" type-id-ref="java.lang.String"
      vmodl-name="evcModeKey"
      is-optional="true"
      >
      <description-html>
         <![CDATA[EVC mode key.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VimVasaProviderStatePerArray"
      type-id="vim.VimVasaProvider.StatePerArray"
      vmodl-name="vim.VimVasaProvider.StatePerArray"
      enclosing-type-id-ref="vim.VimVasaProvider"
      version-id-ref="vim.version.version10"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Per Storage Array VP status.]]>
      </description-html>
            <property name="priority" type-id-ref="INT"
      vmodl-name="priority"
      >
      <description-html>
         <![CDATA[Priority of the provider for the given array]]>
      </description-html>
      </property>

            <property name="arrayId" type-id-ref="java.lang.String"
      vmodl-name="arrayId"
      >
      <description-html>
         <![CDATA[Storage Array object Id]]>
      </description-html>
      </property>

            <property name="active" type-id-ref="BOOLEAN"
      vmodl-name="active"
      >
      <description-html>
         <![CDATA[Indicates whether a VASA Provider (<a href="vim.VimVasaProvider.html#url">url</a>) is active
 for the specified storage array.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualUSBControllerOption"
      type-id="vim.vm.device.VirtualUSBControllerOption"
      vmodl-name="vim.vm.device.VirtualUSBControllerOption"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.device.VirtualControllerOption"
      >
      <description-html>
         <![CDATA[The VirtualUSBControllerOption data object type contains the options
  for a virtual USB Host Controller Interface.]]>
      </description-html>
            <property name="autoConnectDevices" type-id-ref="vim.option.BoolOption"
      vmodl-name="autoConnectDevices"
      >
      <description-html>
         <![CDATA[Flag to indicate whether or not the ability to autoconnect devices
  is enabled for this virtual USB controller.]]>
      </description-html>
      </property>

            <property name="ehciSupported" type-id-ref="vim.option.BoolOption"
      vmodl-name="ehciSupported"
      version-id-ref="vim.version.version2"
      >
      <description-html>
         <![CDATA[Flag to indicate whether or not enhanced host controller
  interface (USB 2.0) is available on this virtual USB controller.]]>
      </description-html>
      </property>

            <property name="supportedSpeeds" type-id-ref="java.lang.String"
      vmodl-name="supportedSpeeds"
      version-id-ref="vim.version.version7"
      is-array="true"
      >
      <description-html>
         <![CDATA[Range of USB device speeds supported by this USB controller type.
  Acceptable values are specified at <a href="vim.vm.UsbInfo.Speed.html">VirtualMachineUsbInfoSpeed</a>.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="CryptoSpecRegister"
      type-id="vim.encryption.CryptoSpecRegister"
      vmodl-name="vim.encryption.CryptoSpecRegister"
      version-id-ref="vim.version.version11"
      base-type-id="vim.encryption.CryptoSpecNoOp"
      >
      <description-html>
         <![CDATA[This data object type indicates that the operation requires keys to be sent
  but the encryption settings of the virtual machine or disk
  should not be modified by the operation.]]>
      </description-html>
            <property name="cryptoKeyId" type-id-ref="vim.encryption.CryptoKeyId"
      vmodl-name="cryptoKeyId"
      >
      <description-html>
         <![CDATA[The key the VM/disk is already encrypted with.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualMachineAffinityInfo"
      type-id="vim.vm.AffinityInfo"
      vmodl-name="vim.vm.AffinityInfo"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Specification of scheduling affinity.
  <p>
  Scheduling affinity is used for explicitly specifying which
  processors or NUMA nodes may be used by a virtual machine.]]>
      </description-html>
            <property name="affinitySet" type-id-ref="INT"
      vmodl-name="affinitySet"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of nodes (processors for CPU, NUMA nodes for memory) that
  may be used by the virtual machine.  If the array is empty when
  modifying the affinity setting, then any existing affinity is removed.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="CustomFieldDef"
      type-id="vim.CustomFieldsManager.FieldDef"
      vmodl-name="vim.CustomFieldsManager.FieldDef"
      enclosing-type-id-ref="vim.CustomFieldsManager"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Describes a custom field.]]>
      </description-html>
            <property name="key" type-id-ref="INT"
      vmodl-name="key"
      >
      <description-html>
         <![CDATA[A unique ID used to reference this custom field in assignments. This
  ID is unique for the lifetime of the field (even across
  rename operations).]]>
      </description-html>
      </property>

            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      >
      <description-html>
         <![CDATA[Name of the field.]]>
      </description-html>
      </property>

            <property name="type" type-id-ref="vmodl.TypeName"
      vmodl-name="type"
      >
      <description-html>
         <![CDATA[Type of the field.]]>
      </description-html>
      </property>

            <property name="managedObjectType" type-id-ref="vmodl.TypeName"
      vmodl-name="managedObjectType"
      version-id-ref="vim.version.version2"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Type of object for which the field is valid. If not specified,
  the field is valid for all managed objects.]]>
      </description-html>
      </property>

            <property name="fieldDefPrivileges" type-id-ref="vim.PrivilegePolicyDef"
      vmodl-name="fieldDefPrivileges"
      version-id-ref="vim.version.version2"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The set of privileges to apply on this field definition]]>
      </description-html>
      </property>

            <property name="fieldInstancePrivileges" type-id-ref="vim.PrivilegePolicyDef"
      vmodl-name="fieldInstancePrivileges"
      version-id-ref="vim.version.version2"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The set of privileges to apply on instances of this field]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VslmCreateSpec"
      type-id="vim.vslm.CreateSpec"
      vmodl-name="vim.vslm.CreateSpec"
      version-id-ref="vim.version.version11"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Specification to create a virtual storage object.]]>
      </description-html>
            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      >
      <description-html>
         <![CDATA[Descriptive name of this virtual storage object.]]>
      </description-html>
      </property>

            <property name="keepAfterDeleteVm" type-id-ref="BOOLEAN"
      vmodl-name="keepAfterDeleteVm"
      version-id-ref="vim.version.version12"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Choice of the deletion behavior of this virtual storage object.
 If not set, the default value is false.]]>
      </description-html>
      </property>

            <property name="backingSpec" type-id-ref="vim.vslm.CreateSpec.BackingSpec"
      vmodl-name="backingSpec"
      >
      <description-html>
         <![CDATA[Specification of the backings of the virtual storage object.]]>
      </description-html>
      </property>

            <property name="capacityInMB" type-id-ref="LONG"
      vmodl-name="capacityInMB"
      >
      <description-html>
         <![CDATA[Size in MB of the virtual storage object.]]>
      </description-html>
      </property>

            <property name="profile" type-id-ref="vim.vm.ProfileSpec"
      vmodl-name="profile"
      version-id-ref="vim.version.version12"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Virtual storage object Profile requirement. If unset,
 the default behavior will apply.]]>
      </description-html>
      </property>

            <property name="crypto" type-id-ref="vim.encryption.CryptoSpec"
      vmodl-name="crypto"
      version-id-ref="vim.version.v7_0"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Crypto operation of the disk.
 If unset and if <a href="vim.vslm.CreateSpec.html#profile">profile</a> contains an encryption iofilter,
 then crypto will be of type CryptoSpecEncrypt, and filled with
 keyId that is automatically generated and keyProviderId that is the
 default kms cluster.]]>
      </description-html>
      </property>

            <property name="metadata" type-id-ref="vim.KeyValue"
      vmodl-name="metadata"
      version-id-ref="vim.version.version14"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The metadata KV pairs that are supposed to be created on the newly created
 virtual storage object. The create task is atomic by design. That being
 said, failing to add the specified metadata pairs leads to the failure
 of the create task. If unset, no metadata will be added. An empty string
 value is indicative of a vcenter tag.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.vslm.CreateSpec.BackingSpec</nested-type-id-ref>
      <nested-type-id-ref>vim.vslm.CreateSpec.DiskFileBackingSpec</nested-type-id-ref>
      <nested-type-id-ref>vim.vslm.CreateSpec.RawDiskMappingBackingSpec</nested-type-id-ref>
   </data-object>
   <data-object name="VlanProfile"
      type-id="vim.profile.host.PortGroupProfile.VlanProfile"
      vmodl-name="vim.profile.host.PortGroupProfile.VlanProfile"
      enclosing-type-id-ref="vim.profile.host.PortGroupProfile"
      version-id-ref="vim.version.version5"
      base-type-id="vim.profile.ApplyProfile"
      >
      <description-html>
         <![CDATA[The <a href="vim.profile.host.PortGroupProfile.VlanProfile.html">VlanProfile</a> data object represents
 the VLAN identifier subprofile. The <a href="vim.profile.ApplyProfile.html#policy">policy</a>
 property contains the configuration data values for the VLAN identifier.]]>
      </description-html>
   </data-object>
   <data-object name="TaskScheduler"
      type-id="vim.scheduler.TaskScheduler"
      vmodl-name="vim.scheduler.TaskScheduler"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The <a href="vim.scheduler.TaskScheduler.html">TaskScheduler</a> data object is the base type for the scheduler objects.
  The hierarchy of scheduler objects is as follows:

  <pre>
    TaskScheduler
        <a href="vim.scheduler.AfterStartupTaskScheduler.html">AfterStartupTaskScheduler</a>
        <a href="vim.scheduler.OnceTaskScheduler.html">OnceTaskScheduler</a>
        <a href="vim.scheduler.RecurrentTaskScheduler.html">RecurrentTaskScheduler</a>
            <a href="vim.scheduler.HourlyTaskScheduler.html">HourlyTaskScheduler</a>
                <a href="vim.scheduler.DailyTaskScheduler.html">DailyTaskScheduler</a>
                    <a href="vim.scheduler.WeeklyTaskScheduler.html">WeeklyTaskScheduler</a>
                    <a href="vim.scheduler.MonthlyTaskScheduler.html">MonthlyTaskScheduler</a>
                        <a href="vim.scheduler.MonthlyByDayTaskScheduler.html">MonthlyByDayTaskScheduler</a>
                        <a href="vim.scheduler.MonthlyByWeekdayTaskScheduler.html">MonthlyByWeekdayTaskScheduler</a>
  </pre>
  <p>
  Use a scheduler object to set the time(s) for task execution.
  You can use two scheduling modes - single execution or
  recurring execution:
  <ul>
     <li>Use the <a href="vim.scheduler.AfterStartupTaskScheduler.html">AfterStartupTaskScheduler</a> or the <a href="vim.scheduler.OnceTaskScheduler.html">OnceTaskScheduler</a>
         to schedule a single instance of task execution.
     <li>Use one of the recurrent task schedulers to schedule
         hourly, daily, weekly, or monthly task execution.
  </ul>
  <p>
  After you have established the task timing, use the scheduler
  object for the <a href="vim.scheduler.ScheduledTaskSpec.html">ScheduledTaskSpec</a>
  <a href="vim.scheduler.ScheduledTaskSpec.html#scheduler">scheduler</a> property value.]]>
      </description-html>
            <property name="activeTime" type-id-ref="vmodl.DateTime"
      vmodl-name="activeTime"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The time that the schedule for the task takes effect.
  Task activation is distinct from task execution.
  When you activate a task, its schedule starts,
  and when the next execution time occurs, the task will run.
  If you do not set activeTime, the activation time defaults to
  the time that you create the scheduled task.]]>
      </description-html>
      </property>

            <property name="expireTime" type-id-ref="vmodl.DateTime"
      vmodl-name="expireTime"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The time the schedule for the task expires.
  If you do not set expireTime, the schedule does not expire.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VAppOvfSectionInfo"
      type-id="vim.vApp.OvfSectionInfo"
      vmodl-name="vim.vApp.OvfSectionInfo"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The OvfSection encapsulates uninterpreted meta-data sections in
  an OVF descriptor. When an OVF package is imported, non-required /
  non-interpreted sections will be stored as OvfSection object. During
  the creation of an OVF package, these sections will be placed in the
  OVF descriptor.]]>
      </description-html>
            <property name="key" type-id-ref="INT"
      vmodl-name="key"
      is-optional="true"
      >
      <description-html>
         <![CDATA[A unique key to identify a section.]]>
      </description-html>
      </property>

            <property name="namespace" type-id-ref="java.lang.String"
      vmodl-name="namespace"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The namespace for the value in xsi:type attribute.]]>
      </description-html>
      </property>

            <property name="type" type-id-ref="java.lang.String"
      vmodl-name="type"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The value of the xsi:type attribute not including the namespace prefix.]]>
      </description-html>
      </property>

            <property name="atEnvelopeLevel" type-id-ref="BOOLEAN"
      vmodl-name="atEnvelopeLevel"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Whether this is a global envelope section]]>
      </description-html>
      </property>

            <property name="contents" type-id-ref="java.lang.String"
      vmodl-name="contents"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The XML fragment including the top-level &lt;Section...&gt; element. The
  fragment is self-contained will all required namespace definitions.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="PlacementSpec"
      type-id="vim.cluster.PlacementSpec"
      vmodl-name="vim.cluster.PlacementSpec"
      version-id-ref="vim.version.version10"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[PlacementSpec encapsulates all of the information passed to the
   <a href="vim.ClusterComputeResource.html#placeVm">PlaceVm</a> method, which asks
   DRS for recommendations for target hosts and datastores for placing
   a virtual machine and its virtual disks in a cluster using
   unified VMotion.
   <p>]]>
      </description-html>
            <property name="priority" type-id-ref="vim.VirtualMachine.MovePriority"
      vmodl-name="priority"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Priority of the migration operation.
  The default value is defaultPriority.]]>
      </description-html>
      </property>

            <property name="vm" type-id-ref="vim.VirtualMachine"
      vmodl-name="vm"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The virtual machine to be placed.
  For an intra-vCenter migration, this argument is required.
  For a cross-vCenter migration, this argument is optional,
  and if this argument is unset, the caller is responsible for
  applying the DRS-recommended placement to the correct vm.]]>
      </description-html>
      </property>

            <property name="configSpec" type-id-ref="vim.vm.ConfigSpec"
      vmodl-name="configSpec"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Configuration information for the virtual machine.
  For an intra-vCenter migration, this argument should be unset.
  For a cross-vCenter migration, this argument is required.
  In the latter case, the following elements of the configSpec
  will be expected: version, cpuAllocation, memoryAllocation, numCPUs,
  memoryMB, files, swapPlacement; in addition, the configSpec.deviceChange
  should contain all the virtual disks of the virtual machine to be migrated.
  If configSpec.deviceChange is empty, the vm will be treated as a
  diskless vm.
  If a storage profile is specified for a virtual disk or vm configuration,
  only datastores that match this profile will be considered for that
  virtual disk or vm configuration.]]>
      </description-html>
      </property>

            <property name="relocateSpec" type-id-ref="vim.vm.RelocateSpec"
      vmodl-name="relocateSpec"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Specification for relocating a virtual machine.
  Can be used to optionally specify a target host, a target datastore,
  or a target resource pool. If a target host is specified, this host
  becomes the recommended host; if a target datastore is specified,
  this datastore becomes the recommended datastore; if no resource
  pool is specified, the virtual machine will be attached to the
  cluster root resource pool; if the target resource pool specified
  is a VirtualApp, an InvalidArgument fault will be thrown.
  If a storage profile is specified for a virtual disk or vm configuration,
  only datastores that match this profile will be considered for that
  virtual disk or vm configuration.
  For cross-vCenter migration, the caller
  should set the service and the folder arguments properly either in
  the input relocateSpec or in the output relocateSpec in the placement
  recommendation before passing the relocateSpec to the RelocateVM API.]]>
      </description-html>
      </property>

            <property name="hosts" type-id-ref="vim.HostSystem"
      vmodl-name="hosts"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[A list of compatible hosts for the virtual machine.
  This list is ignored if relocateSpec.host is set.
  For both intra-vCenter and cross-vCenter migrations, this list is required
  if relocateSpec.host is unset.
  If neither relocateSpec.host nor a list of compatible hosts are specified,
  all hosts in the cluster will be considered, in which case, the selected
  hosts in the PlacementResult are not guaranteed to be compatible with the
  incoming virtual machine.]]>
      </description-html>
      </property>

            <property name="datastores" type-id-ref="vim.Datastore"
      vmodl-name="datastores"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[A list of compatible datastores for the virtual machine.
  This list is ignored if relocateSpec.datastore is set.
  For both intra-vCenter and cross-vCenter migrations, this list is required
  if relocateSpec.datastore is unset.
  If neither relocateSpec.datastore nor a list of compatible datastores are
  specified, all datastores connected to hosts in the cluster will be
  considered, in which case, the selected datastores in the PlacementResult
  are not guaranteed to be compatible with the incoming virtual machine.]]>
      </description-html>
      </property>

            <property name="storagePods" type-id-ref="vim.StoragePod"
      vmodl-name="storagePods"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[A list of compatible datastore clusters for the virtual machine.
  This list is ignored if relocateSpec.datastore is set.
  For both intra-vCenter and cross-vCenter migrations, this list can be
  empty, in which case, the user should set either RelocateSpec.datastore
  or PlacementSpec.datastores as the target datastore or the list of
  compatible datastores.]]>
      </description-html>
      </property>

            <property name="disallowPrerequisiteMoves" type-id-ref="BOOLEAN"
      vmodl-name="disallowPrerequisiteMoves"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Specification for whether to disable pre-requisite vmotions or storage
  vmotions for virtual machine placement. The default value is true,
  that is, to disallow such prerequisite moves.]]>
      </description-html>
      </property>

            <property name="rules" type-id-ref="vim.cluster.RuleInfo"
      vmodl-name="rules"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[A list of rules to respect while placing the virtual machine on
 target cluster.
 If the list is empty, rules will not be considered during placement,
 in case of cross-cluster placement within a VC and cross VC
 placement across VCs.]]>
      </description-html>
      </property>

            <property name="key" type-id-ref="java.lang.String"
      vmodl-name="key"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Client generated identifier as a reference to the placement request]]>
      </description-html>
      </property>

            <property name="placementType" type-id-ref="java.lang.String"
      vmodl-name="placementType"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Type of the placement. The set of possible values are described in
 <a href="vim.cluster.PlacementSpec.PlacementType.html">PlacementSpecPlacementType</a>]]>
      </description-html>
      </property>

            <property name="cloneSpec" type-id-ref="vim.vm.CloneSpec"
      vmodl-name="cloneSpec"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Specification for a virtual machine clone operation]]>
      </description-html>
      </property>

            <property name="cloneName" type-id-ref="java.lang.String"
      vmodl-name="cloneName"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Name for the cloned virtual machine, if the operation type is a clone]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.cluster.PlacementSpec.PlacementType</nested-type-id-ref>
   </data-object>
   <data-object name="VirtualUSBXHCIControllerOption"
      type-id="vim.vm.device.VirtualUSBXHCIControllerOption"
      vmodl-name="vim.vm.device.VirtualUSBXHCIControllerOption"
      version-id-ref="vim.version.version7"
      base-type-id="vim.vm.device.VirtualControllerOption"
      >
      <description-html>
         <![CDATA[The VirtualUSBXHCIControllerOption data object type contains the options
  for a virtual USB Extensible Host Controller Interface (USB 3.0).]]>
      </description-html>
            <property name="autoConnectDevices" type-id-ref="vim.option.BoolOption"
      vmodl-name="autoConnectDevices"
      >
      <description-html>
         <![CDATA[Flag to indicate whether or not the ability to autoconnect devices
  is enabled for this virtual USB controller.]]>
      </description-html>
      </property>

            <property name="supportedSpeeds" type-id-ref="java.lang.String"
      vmodl-name="supportedSpeeds"
      is-array="true"
      >
      <description-html>
         <![CDATA[Range of USB device speeds supported by this USB controller type.
  Acceptable values are specified at <a href="vim.vm.UsbInfo.Speed.html">VirtualMachineUsbInfoSpeed</a>.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="AccountUpdatedEvent"
      type-id="vim.event.AccountUpdatedEvent"
      vmodl-name="vim.event.AccountUpdatedEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.HostEvent"
      >
      <description-html>
         <![CDATA[This event records that an account was updated on a host.]]>
      </description-html>
            <property name="spec" type-id-ref="vim.host.LocalAccountManager.AccountSpecification"
      vmodl-name="spec"
      >
      </property>

            <property name="group" type-id-ref="BOOLEAN"
      vmodl-name="group"
      >
      </property>

            <property name="prevDescription" type-id-ref="java.lang.String"
      vmodl-name="prevDescription"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The previous account description]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ClusterDasData"
      type-id="vim.cluster.DasData"
      vmodl-name="vim.cluster.DasData"
      version-id-ref="vim.version.version7"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Base class for DAS data for high availability service for a cluster.]]>
      </description-html>
   </data-object>
   <data-object name="DvsUpdateTagNetworkRuleAction"
      type-id="vim.dvs.TrafficRule.UpdateTagAction"
      vmodl-name="vim.dvs.TrafficRule.UpdateTagAction"
      enclosing-type-id-ref="vim.dvs.TrafficRule"
      version-id-ref="vim.version.version9"
      base-type-id="vim.dvs.TrafficRule.Action"
      >
      <description-html>
         <![CDATA[This class defines network rule action to tag packets(qos,dscp) or
  clear tags(clear qos, dscp tags) on packets.
  One or both of qos and dscp may be specified.]]>
      </description-html>
            <property name="qosTag" type-id-ref="INT"
      vmodl-name="qosTag"
      is-optional="true"
      >
      <description-html>
         <![CDATA[QOS tag. IEEE 802.1p supports 3 bit Priority Code Point (PCP).
  The valid values are between 0-7. Please refer the IEEE 802.1p
  documentation for more details about what each value represents.
  If qosTag is set to 0 then the tag on the packets will be cleared.]]>
      </description-html>
      </property>

            <property name="dscpTag" type-id-ref="INT"
      vmodl-name="dscpTag"
      is-optional="true"
      >
      <description-html>
         <![CDATA[DSCP tag. The valid values for DSCP tag can be found in
  'Differentiated Services Field Codepoints' section of IANA website.
  The information can also be got from reading all of the below RFC:
  RFC 2474, RFC 2597, RFC 3246, RFC 5865.
  If the dscpTag is set to 0 then the dscp tag on packets will be cleared.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DvsPortReconfiguredEvent"
      type-id="vim.event.DvsPortReconfiguredEvent"
      vmodl-name="vim.event.DvsPortReconfiguredEvent"
      version-id-ref="vim.version.version5"
      base-type-id="vim.event.DvsEvent"
      >
      <description-html>
         <![CDATA[Existing ports are reconfigured in the distributed virtual switch.]]>
      </description-html>
            <property name="portKey" type-id-ref="java.lang.String"
      vmodl-name="portKey"
      is-array="true"
      >
      <description-html>
         <![CDATA[The key of the ports that are reconfigured.]]>
      </description-html>
      </property>

            <property name="configChanges" type-id-ref="vim.event.ChangesInfoEventArgument"
      vmodl-name="configChanges"
      version-id-ref="vim.version.version11"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The configuration values changed during the reconfiguration.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostScsiDisk"
      type-id="vim.host.ScsiDisk"
      vmodl-name="vim.host.ScsiDisk"
      version-id-ref="vim.version.version1"
      base-type-id="vim.host.ScsiLun"
      >
      <description-html>
         <![CDATA[This data object type describes a SCSI disk.  A SCSI disk contains a
  partition table which can be changed.
  To change a SCSI disk, use the device name and the partition specification.<br>See <a href="vim.host.StorageSystem.html#retrieveDiskPartitionInfo">RetrieveDiskPartitionInfo</a><br>See <a href="vim.host.StorageSystem.html#updateDiskPartitions">UpdateDiskPartitions</a><br>]]>
      </description-html>
            <property name="capacity" type-id-ref="vim.host.DiskDimensions.Lba"
      vmodl-name="capacity"
      >
      <description-html>
         <![CDATA[The size of SCSI disk using the Logical Block Addressing scheme.]]>
      </description-html>
      </property>

            <property name="devicePath" type-id-ref="java.lang.String"
      vmodl-name="devicePath"
      >
      <description-html>
         <![CDATA[The device path of the ScsiDisk.  This device path is a file path
  that can be opened to create partitions on the disk.<br>See <a href="vim.host.StorageSystem.html#retrieveDiskPartitionInfo">RetrieveDiskPartitionInfo</a><br>See <a href="vim.host.StorageSystem.html#updateDiskPartitions">UpdateDiskPartitions</a><br>]]>
      </description-html>
      </property>

            <property name="ssd" type-id-ref="BOOLEAN"
      vmodl-name="ssd"
      version-id-ref="vim.version.version7"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates whether the ScsiDisk is SSD backed.
 If unset, the information whether the ScsiDisk is SSD backed
 is unknown.]]>
      </description-html>
      </property>

            <property name="localDisk" type-id-ref="BOOLEAN"
      vmodl-name="localDisk"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates whether the ScsiDisk is local.
 If unset, the information whether the ScsiDisk is local is unknown.]]>
      </description-html>
      </property>

            <property name="physicalLocation" type-id-ref="java.lang.String"
      vmodl-name="physicalLocation"
      version-id-ref="vim.version.version10"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The physical location of the ScsiDisk if can be determined, otherwise
 unset. If the ScsiDisk is a logical drive, it should be the
 location of all constituent physical drives of the logical drive.
 If the ScsiDisk is a physical drive, it's an array of one element.]]>
      </description-html>
      </property>

            <property name="emulatedDIXDIFEnabled" type-id-ref="BOOLEAN"
      vmodl-name="emulatedDIXDIFEnabled"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates whether the ScsiDisk has emulated Data Integrity Extension
 (DIX) / Data Integrity Field (DIF) enabled.
 If unset, the default value is false.]]>
      </description-html>
      </property>

            <property name="vsanDiskInfo" type-id-ref="vim.vsan.host.VsanDiskInfo"
      vmodl-name="vsanDiskInfo"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates the additional VSAN information
 if this disk is used by VSAN.]]>
      </description-html>
      </property>

            <property name="scsiDiskType" type-id-ref="java.lang.String"
      vmodl-name="scsiDiskType"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The type of disk drives. See ScsiDiskType
 for definitions of supported types.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.host.ScsiDisk.Partition</nested-type-id-ref>
      <nested-type-id-ref>vim.host.ScsiDisk.ScsiDiskType</nested-type-id-ref>
   </data-object>
   <data-object name="VmUpgradingEvent"
      type-id="vim.event.VmUpgradingEvent"
      vmodl-name="vim.event.VmUpgradingEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.VmEvent"
      >
      <description-html>
         <![CDATA[This event records the process of upgrading the virtual hardware on a
 virtual machine.]]>
      </description-html>
            <property name="version" type-id-ref="java.lang.String"
      vmodl-name="version"
      >
      <description-html>
         <![CDATA[The version of the agent.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="FileInfo"
      type-id="vim.host.DatastoreBrowser.FileInfo"
      vmodl-name="vim.host.DatastoreBrowser.FileInfo"
      enclosing-type-id-ref="vim.host.DatastoreBrowser"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object type contains rudimentary information about a file in a
  datastore. The information here is not meant to cover all information in
  traditional file systems, but rather to provide sufficient information for files
  that are associated with virtual machines. Derived types describe the known file
  types for a datastore.]]>
      </description-html>
            <property name="path" type-id-ref="java.lang.String"
      vmodl-name="path"
      >
      <description-html>
         <![CDATA[The path relative to the folder path in the search results.]]>
      </description-html>
      </property>

            <property name="friendlyName" type-id-ref="java.lang.String"
      vmodl-name="friendlyName"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[User friendly name.]]>
      </description-html>
      </property>

            <property name="fileSize" type-id-ref="LONG"
      vmodl-name="fileSize"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The size of the file in bytes.]]>
      </description-html>
      </property>

            <property name="modification" type-id-ref="vmodl.DateTime"
      vmodl-name="modification"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The last date and time the file was modified.]]>
      </description-html>
      </property>

            <property name="owner" type-id-ref="java.lang.String"
      vmodl-name="owner"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The user name of the owner of the file.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.host.DatastoreBrowser.FileInfo.Details</nested-type-id-ref>
   </data-object>
   <data-object name="DvsEvent"
      type-id="vim.event.DvsEvent"
      vmodl-name="vim.event.DvsEvent"
      version-id-ref="vim.version.version5"
      base-type-id="vim.event.Event"
      >
      <description-html>
         <![CDATA[These are dvs-related events.]]>
      </description-html>
      <nested-type-id-ref>vim.event.DvsEvent.PortBlockState</nested-type-id-ref>
   </data-object>
   <data-object name="HealthStatusChangedEvent"
      type-id="vim.event.HealthStatusChangedEvent"
      vmodl-name="vim.event.HealthStatusChangedEvent"
      version-id-ref="vim.version.version5"
      base-type-id="vim.event.Event"
      >
      <description-html>
         <![CDATA[Event used to report change in health status of VirtualCenter components.]]>
      </description-html>
            <property name="componentId" type-id-ref="java.lang.String"
      vmodl-name="componentId"
      >
      <description-html>
         <![CDATA[Unique ID of the VirtualCenter component.]]>
      </description-html>
      </property>

            <property name="oldStatus" type-id-ref="java.lang.String"
      vmodl-name="oldStatus"
      >
      <description-html>
         <![CDATA[Previous health status of the component.]]>
      </description-html>
      </property>

            <property name="newStatus" type-id-ref="java.lang.String"
      vmodl-name="newStatus"
      >
      <description-html>
         <![CDATA[Current health status of the component.]]>
      </description-html>
      </property>

            <property name="componentName" type-id-ref="java.lang.String"
      vmodl-name="componentName"
      >
      <description-html>
         <![CDATA[Component name.]]>
      </description-html>
      </property>

            <property name="serviceId" type-id-ref="java.lang.String"
      vmodl-name="serviceId"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Service Id of component.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VMwareUplinkLacpPolicy"
      type-id="vim.dvs.VmwareDistributedVirtualSwitch.UplinkLacpPolicy"
      vmodl-name="vim.dvs.VmwareDistributedVirtualSwitch.UplinkLacpPolicy"
      enclosing-type-id-ref="vim.dvs.VmwareDistributedVirtualSwitch"
      version-id-ref="vim.version.version8"
      is-deprecated="true"
      base-type-id="vim.InheritablePolicy"
      >
      <description-html>
         <![CDATA[This class defines VMware specific Link Aggregation Control Protocol
  policy.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 5.5.]]>
      </deprecated-html>
            <property name="enable" type-id-ref="vim.BoolPolicy"
      vmodl-name="enable"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The flag to indicate whether or not
  Link Aggregation Control Protocol is enabled.
  It can be set to true if the value of
  <a href="vim.dvs.VmwareDistributedVirtualSwitch.ConfigInfo.html#lacpApiVersion">lacpApiVersion</a>
  is LacpApiVersion#singleLag,
  else an exception ConflictingConfiguration will be thrown.]]>
      </description-html>
      </property>

            <property name="mode" type-id-ref="vim.StringPolicy"
      vmodl-name="mode"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The mode of Link Aggregation Control Protocol.
  See UplinkLacpMode for valid values.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="PhysicalNicCdpInfo"
      type-id="vim.host.PhysicalNic.CdpInfo"
      vmodl-name="vim.host.PhysicalNic.CdpInfo"
      enclosing-type-id-ref="vim.host.PhysicalNic"
      version-id-ref="vim.version.version2"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[CDP (Cisco Discovery Protocol) is a link level protocol that allows
   for discovering the CDP-awared network hardware at either end of a
   DIRECT connection. It's only good for direct connection because CDP
   doesn't get forwarded through switches.

   It's a simple advertisement protocol which beacons information about
   the switch or host along with some port information. The CDP information
   allows ESX Server admins to know which Cisco switch port is connected to
   any given virtual switch uplink (PNIC).]]>
      </description-html>
            <property name="cdpVersion" type-id-ref="INT"
      vmodl-name="cdpVersion"
      is-optional="true"
      >
      <description-html>
         <![CDATA[CDP version. The value is always 1.]]>
      </description-html>
      </property>

            <property name="timeout" type-id-ref="INT"
      vmodl-name="timeout"
      is-optional="true"
      >
      <description-html>
         <![CDATA[This is the periodicity of advertisement, the time between two
  successive CDP message transmissions]]>
      </description-html>
      </property>

            <property name="ttl" type-id-ref="INT"
      vmodl-name="ttl"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Time-To-Live.  the amount of time, in seconds, that a receiver should
  retain the information contained in the CDP packet.]]>
      </description-html>
      </property>

            <property name="samples" type-id-ref="INT"
      vmodl-name="samples"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The number of CDP messages we have received from the device.]]>
      </description-html>
      </property>

            <property name="devId" type-id-ref="java.lang.String"
      vmodl-name="devId"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Device ID which identifies the device. By default, the device ID is
  either the device's fully-qualified host name (including the domain
  name) or the device's hardware serial number in ASCII.]]>
      </description-html>
      </property>

            <property name="address" type-id-ref="java.lang.String"
      vmodl-name="address"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The advertised IP address that is assigned to the interface of the device
  on which the CDP message is sent. The device can advertise all addresses for
  a given protocol suite and, optionally, can advertise one or more loopback
  IP addresses. But this property only show the first address.]]>
      </description-html>
      </property>

            <property name="portId" type-id-ref="java.lang.String"
      vmodl-name="portId"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Port ID. An ASCII character string that identifies the port on which
  the CDP message is sent, e.g. "FastEthernet0/8"]]>
      </description-html>
      </property>

            <property name="deviceCapability" type-id-ref="vim.host.PhysicalNic.CdpDeviceCapability"
      vmodl-name="deviceCapability"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Device Capability
  <a href="vim.host.PhysicalNic.CdpDeviceCapability.html">PhysicalNicCdpDeviceCapability</a>]]>
      </description-html>
      </property>

            <property name="softwareVersion" type-id-ref="java.lang.String"
      vmodl-name="softwareVersion"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Software version on the device. A character string that provides
  information about the software release version that the device is
  running. e.g. "Cisco Internetwork Operating Syscisco WS-C2940-8TT-S"]]>
      </description-html>
      </property>

            <property name="hardwarePlatform" type-id-ref="java.lang.String"
      vmodl-name="hardwarePlatform"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Hardware platform. An ASCII character string that describes the
  hardware platform of the device , e.g. "cisco WS-C2940-8TT-S"]]>
      </description-html>
      </property>

            <property name="ipPrefix" type-id-ref="java.lang.String"
      vmodl-name="ipPrefix"
      is-optional="true"
      >
      <description-html>
         <![CDATA[IP prefix. Each IP prefix represents one of the directly connected
  IP network segments of the local route.]]>
      </description-html>
      </property>

            <property name="ipPrefixLen" type-id-ref="INT"
      vmodl-name="ipPrefixLen"
      is-optional="true"
      >
      <description-html>
         <![CDATA[ipPrefix length.]]>
      </description-html>
      </property>

            <property name="vlan" type-id-ref="INT"
      vmodl-name="vlan"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The native VLAN of advertising port. The native VLAN is the VLAN to
  which a port returns when it is not trunking. Also, the native VLAN
  is the untagged VLAN on an 802.1Q trunk.]]>
      </description-html>
      </property>

            <property name="fullDuplex" type-id-ref="BOOLEAN"
      vmodl-name="fullDuplex"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Half/full duplex setting of the advertising port.]]>
      </description-html>
      </property>

            <property name="mtu" type-id-ref="INT"
      vmodl-name="mtu"
      is-optional="true"
      >
      <description-html>
         <![CDATA[MTU, the maximum transmission unit for the advertising port. Possible
  values are 1500 through 18190.]]>
      </description-html>
      </property>

            <property name="systemName" type-id-ref="java.lang.String"
      vmodl-name="systemName"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The configured SNMP system name of the device.]]>
      </description-html>
      </property>

            <property name="systemOID" type-id-ref="java.lang.String"
      vmodl-name="systemOID"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The configured SNMP system OID of the device.]]>
      </description-html>
      </property>

            <property name="mgmtAddr" type-id-ref="java.lang.String"
      vmodl-name="mgmtAddr"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The configured IP address of the SNMP management interface for the
  device.]]>
      </description-html>
      </property>

            <property name="location" type-id-ref="java.lang.String"
      vmodl-name="location"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The configured location of the device.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ComplianceLocator"
      type-id="vim.profile.ComplianceLocator"
      vmodl-name="vim.profile.ComplianceLocator"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This dataObject contains information about location of applyProfile
 which was responsible for generation of a particular ComplianceExpression.]]>
      </description-html>
            <property name="expressionName" type-id-ref="java.lang.String"
      vmodl-name="expressionName"
      >
      <description-html>
         <![CDATA[Exression for which the Locator corresponds to]]>
      </description-html>
      </property>

            <property name="applyPath" type-id-ref="vim.profile.ProfilePropertyPath"
      vmodl-name="applyPath"
      >
      <description-html>
         <![CDATA[Complete path to the profile/policy which was responsible for the
  generation of the ComplianceExpression.
  [ProfilePath + policyId] will uniquely identify a Policy.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="PodStorageDrsEntry"
      type-id="vim.StorageResourceManager.PodStorageDrsEntry"
      vmodl-name="vim.StorageResourceManager.PodStorageDrsEntry"
      enclosing-type-id-ref="vim.StorageResourceManager"
      version-id-ref="vim.version.version7"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[An entry containing storage DRS configuration, runtime
  results, and history for a pod <a href="vim.StoragePod.html">StoragePod</a>.
  <p>]]>
      </description-html>
            <property name="storageDrsConfig" type-id-ref="vim.storageDrs.ConfigInfo"
      vmodl-name="storageDrsConfig"
      >
      <description-html>
         <![CDATA[Storage DRS configuration.]]>
      </description-html>
      </property>

            <property name="recommendation" type-id-ref="vim.cluster.Recommendation"
      vmodl-name="recommendation"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of recommended actions for the Storage Pod. It is
  possible that the current set of recommendations may be empty,
  either due to not having any running dynamic recommendation
  generation module, or since there may be no recommended actions
  at this time.]]>
      </description-html>
      </property>

            <property name="drsFault" type-id-ref="vim.cluster.DrsFaults"
      vmodl-name="drsFault"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[A collection of the DRS faults generated in the last Storage DRS invocation.
 Each element of the collection is the set of faults generated in one
 recommendation.]]>
      </description-html>
      </property>

            <property name="actionHistory" type-id-ref="vim.cluster.ActionHistory"
      vmodl-name="actionHistory"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The set of actions that have been performed recently.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ClusterProfileConfigServiceCreateSpec"
      type-id="vim.profile.cluster.ClusterProfile.ConfigServiceCreateSpec"
      vmodl-name="vim.profile.cluster.ClusterProfile.ConfigServiceCreateSpec"
      enclosing-type-id-ref="vim.profile.cluster.ClusterProfile"
      version-id-ref="vim.version.version5"
      base-type-id="vim.profile.cluster.ClusterProfile.ConfigSpec"
      >
      <description-html>
         <![CDATA[DataObject which allows reconfiguration of a profile
 based on services that will be available on the cluster.]]>
      </description-html>
            <property name="serviceType" type-id-ref="java.lang.String"
      vmodl-name="serviceType"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Type of the service for which the ClusterProfile is being requested.
 If more than one service is specified, the created ClusterProfile
 will cater for all the services.
 Possible values are specified by
 <a href="vim.profile.cluster.ClusterProfile.ServiceType.html">ClusterProfileServiceType</a>.
 If unset, clear the compliance expressions on the profile.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostNvmeTopology"
      type-id="vim.host.NvmeTopology"
      vmodl-name="vim.host.NvmeTopology"
      version-id-ref="vim.version.v7_0"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object type describes the NVME topology information.
  The data objects in this data object type model the NVME storage objects
  from a topological point of view.  The NVME topological view organizes
  objects by NVME interface, which contains connected controllers,
  which in turn contain attached namespaces.
  <p>
  Only storage adapters which support the NVME protocol will be represented
  as NVME interfaces in this data object. In particular, an NVME interface
  will be created for each NVME over Fabrics adapter in the system.
  <p>
  Note that it is possible for an adapter to be represented by both
  an NVME interface in the NVME topology and a SCSI interface in the SCSI
  topology. This can happen when an adapter supporting the NVME protocol is
  also presented as a SCSI adapter and SCSI to NVME translation is performed.]]>
      </description-html>
            <property name="adapter" type-id-ref="vim.host.NvmeTopology.Interface"
      vmodl-name="adapter"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The list of NVME interfaces (could be empty).]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.host.NvmeTopology.Interface</nested-type-id-ref>
   </data-object>
   <data-object name="VirtualVMIROMOption"
      type-id="vim.vm.device.VirtualVMIROMOption"
      vmodl-name="vim.vm.device.VirtualVMIROMOption"
      version-id-ref="vim.version.version2"
      base-type-id="vim.vm.device.VirtualDeviceOption"
      >
      <description-html>
         <![CDATA[This data object type contains the options for the
  <a href="vim.vm.device.VirtualVMIROM.html">VirtualVMIROM</a> data object type.]]>
      </description-html>
   </data-object>
   <data-object name="StorageIORMConfigSpec"
      type-id="vim.StorageResourceManager.IORMConfigSpec"
      vmodl-name="vim.StorageResourceManager.IORMConfigSpec"
      enclosing-type-id-ref="vim.StorageResourceManager"
      version-id-ref="vim.version.version6"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Configuration settings used for creating or reconfiguring
  storage I/O resource management.
  <p>
  All fields are defined as optional. If a field is unset,
  the property is not changed.]]>
      </description-html>
            <property name="enabled" type-id-ref="BOOLEAN"
      vmodl-name="enabled"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Flag indicating whether or not the service is enabled.]]>
      </description-html>
      </property>

            <property name="congestionThresholdMode" type-id-ref="java.lang.String"
      vmodl-name="congestionThresholdMode"
      version-id-ref="vim.version.version8"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Mode of congestion threshold specification
 For more information, see
 <a href="vim.StorageResourceManager.CongestionThresholdMode.html">StorageIORMThresholdMode</a>]]>
      </description-html>
      </property>

            <property name="congestionThreshold" type-id-ref="INT"
      vmodl-name="congestionThreshold"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The latency beyond which the storage array is considered congested.
  <p>
  For more information, see
  <a href="vim.StorageResourceManager.IORMConfigInfo.html#congestionThreshold">congestionThreshold</a>]]>
      </description-html>
      </property>

            <property name="percentOfPeakThroughput" type-id-ref="INT"
      vmodl-name="percentOfPeakThroughput"
      version-id-ref="vim.version.version8"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The percentage of peak throughput to be used for setting threshold latency
 of a datastore. Valid values are between 50 to 100.
 <p>
 For more information, see
  <a href="vim.StorageResourceManager.IORMConfigInfo.html#congestionThreshold">congestionThreshold</a>]]>
      </description-html>
      </property>

            <property name="statsCollectionEnabled" type-id-ref="BOOLEAN"
      vmodl-name="statsCollectionEnabled"
      version-id-ref="vim.version.version7"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Flag indicating whether the service is enabled in stats collection mode.]]>
      </description-html>
      </property>

            <property name="reservationEnabled" type-id-ref="BOOLEAN"
      vmodl-name="reservationEnabled"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Flag indicating whether IO reservations support is enabled.]]>
      </description-html>
      </property>

            <property name="statsAggregationDisabled" type-id-ref="BOOLEAN"
      vmodl-name="statsAggregationDisabled"
      version-id-ref="vim.version.version7"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Flag indicating whether stats aggregation is disabled.]]>
      </description-html>
      </property>

            <property name="reservableIopsThreshold" type-id-ref="INT"
      vmodl-name="reservableIopsThreshold"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Storage DRS makes storage migration recommendations
 if total IOPs reservation for all VMs running on the
 datastore is higher than specified threshold value.
 This value (if present) overrides]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="MigrationHostErrorEvent"
      type-id="vim.event.MigrationHostErrorEvent"
      vmodl-name="vim.event.MigrationHostErrorEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.MigrationEvent"
      >
      <description-html>
         <![CDATA[A migration error that includes the destination host.]]>
      </description-html>
            <property name="dstHost" type-id-ref="vim.event.HostEventArgument"
      vmodl-name="dstHost"
      >
      <description-html>
         <![CDATA[The name of the destination host.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostLowLevelProvisioningManagerDiskLayoutSpec"
      type-id="vim.host.LowLevelProvisioningManager.DiskLayoutSpec"
      vmodl-name="vim.host.LowLevelProvisioningManager.DiskLayoutSpec"
      enclosing-type-id-ref="vim.host.LowLevelProvisioningManager"
      version-id-ref="vim.version.version7"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[File layout spec of a virtual disk. The disk could be either a base-disk
 or a delta disk.]]>
      </description-html>
            <property name="controllerType" type-id-ref="vmodl.TypeName"
      vmodl-name="controllerType"
      >
      <description-html>
         <![CDATA[Disk controller type, e.g. vim.vm.device.VirtualSCSIController or
 vim.vm.device.VirtualIDEController.]]>
      </description-html>
      </property>

            <property name="busNumber" type-id-ref="INT"
      vmodl-name="busNumber"
      >
      <description-html>
         <![CDATA[Bus number associated with the controller for this disk.]]>
      </description-html>
      </property>

            <property name="unitNumber" type-id-ref="INT"
      vmodl-name="unitNumber"
      >
      <description-html>
         <![CDATA[Unit number of this disk on its controller.]]>
      </description-html>
      </property>

            <property name="srcFilename" type-id-ref="java.lang.String"
      vmodl-name="srcFilename"
      >
      <description-html>
         <![CDATA[Source disk filename in datastore path.]]>
      </description-html>
      </property>

            <property name="dstFilename" type-id-ref="java.lang.String"
      vmodl-name="dstFilename"
      >
      <description-html>
         <![CDATA[Destination filename in datastore path.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ExtensionEventTypeInfo"
      type-id="vim.Extension.EventTypeInfo"
      vmodl-name="vim.Extension.EventTypeInfo"
      enclosing-type-id-ref="vim.Extension"
      version-id-ref="vim.version.version2"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object type describes event types defined by the extension.]]>
      </description-html>
            <property name="eventID" type-id-ref="java.lang.String"
      vmodl-name="eventID"
      >
      <description-html>
         <![CDATA[The ID of the event type. Should follow java package
  naming conventions for uniqueness.]]>
      </description-html>
      </property>

            <property name="eventTypeSchema" type-id-ref="java.lang.String"
      vmodl-name="eventTypeSchema"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Optional XML descriptor for the EventType.

 The structure of this descriptor is:
 <code><pre>
 &lt;EventType&gt;
   &lt;eventTypeID&gt;<i>eventID</i>&lt;/eventTypeID&gt;
   &lt;description&gt;Optional description for event eventID&lt;/description&gt;
   <i>&lt!-- Optional arguments: --&gt;</i>
   &lt;arguments&gt;
      <i>&lt!-- Zero or more of: --&gt;</i>
      &lt;argument&gt;
        &lt;name&gt;<i>argName</i>&lt;/name&gt;
        &lt;type&gt;<i>argtype</i>&lt;/name&gt;
      &lt;/argument&gt;
   &lt;/arguments&gt;
 &lt;/EventType&gt;
 </pre></code>

 where <i>argtype</i> can be one of the following:
 <ul>
 <li>This is an example list and should be considered as incomplete.</li>
 </ul>
 <ul>
 <li>Primitive types:</li>
 <ul>
 <li><i>string</i>
 <li><i>bool</i>
 <li><i>int</i>
 <li><i>long</i>
 <li><i>float</i>
 <li><i>moid</i>
 </ul>
 </ul>
 <li>Entity reference types:</li>
 <ul>
 <li><i>vm</i>
 <li><i>host</i>
 <li><i>resourcepool</i>
 <li><i>computeresource</i>
 <li><i>datacenter</i>
 <li><i>datastore</i>
 <li><i>network</i>
 <li><i>dvs</i>
 </ul>]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DrsSoftRuleViolationEvent"
      type-id="vim.event.DrsSoftRuleViolationEvent"
      vmodl-name="vim.event.DrsSoftRuleViolationEvent"
      version-id-ref="vim.version.version10"
      base-type-id="vim.event.VmEvent"
      >
      <description-html>
         <![CDATA[This event records when a virtual machine violates a soft VM-Host rule.]]>
      </description-html>
   </data-object>
   <data-object name="HostVirtualSwitchBondBridge"
      type-id="vim.host.VirtualSwitch.BondBridge"
      vmodl-name="vim.host.VirtualSwitch.BondBridge"
      enclosing-type-id-ref="vim.host.VirtualSwitch"
      version-id-ref="vim.version.version1"
      base-type-id="vim.host.VirtualSwitch.Bridge"
      >
      <description-html>
         <![CDATA[This data object type describes a bridge that provides
  network adapter teaming capabilities.]]>
      </description-html>
            <property name="nicDevice" type-id-ref="java.lang.String"
      vmodl-name="nicDevice"
      is-array="true"
      >
      <description-html>
         <![CDATA[The list of keys of the physical network adapters to be bridged.]]>
      </description-html>
      </property>

            <property name="beacon" type-id-ref="vim.host.VirtualSwitch.BeaconConfig"
      vmodl-name="beacon"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The beacon configuration to probe for the validity of a link.
  If this is set, beacon probing is configured and will be used.
  If this is not set, beacon probing is disabled.]]>
      </description-html>
      </property>

            <property name="linkDiscoveryProtocolConfig" type-id-ref="vim.host.LinkDiscoveryProtocolConfig"
      vmodl-name="linkDiscoveryProtocolConfig"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The link discovery protocol configuration for the virtual switch.<br>See <a href="vim.host.LinkDiscoveryProtocolConfig.html">LinkDiscoveryProtocolConfig</a><br>]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="TeamingMisMatchEvent"
      type-id="vim.event.TeamingMisMatchEvent"
      vmodl-name="vim.event.TeamingMisMatchEvent"
      version-id-ref="vim.version.version8"
      base-type-id="vim.event.DvsHealthStatusChangeEvent"
      >
      <description-html>
         <![CDATA[The teaming configuration of the uplink ports in the DVS
  does not match physical switch configuration.]]>
      </description-html>
   </data-object>
   <data-object name="VirtualEthernetCardOpaqueNetworkBackingInfo"
      type-id="vim.vm.device.VirtualEthernetCard.OpaqueNetworkBackingInfo"
      vmodl-name="vim.vm.device.VirtualEthernetCard.OpaqueNetworkBackingInfo"
      enclosing-type-id-ref="vim.vm.device.VirtualEthernetCard"
      version-id-ref="vim.version.version9"
      base-type-id="vim.vm.device.VirtualDevice.BackingInfo"
      >
      <description-html>
         <![CDATA[This class defines backing for a virtual Ethernet card that connects
 to an opaque network.]]>
      </description-html>
            <property name="opaqueNetworkId" type-id-ref="java.lang.String"
      vmodl-name="opaqueNetworkId"
      >
      <description-html>
         <![CDATA[The opaque network ID]]>
      </description-html>
      </property>

            <property name="opaqueNetworkType" type-id-ref="java.lang.String"
      vmodl-name="opaqueNetworkType"
      >
      <description-html>
         <![CDATA[The opaque network type]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VslmTagEntry"
      type-id="vim.vslm.TagEntry"
      vmodl-name="vim.vslm.TagEntry"
      version-id-ref="vim.version.version11"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Specification of the Tag-Association tuple of Dataservice Tagging package.
 This class is a subset of the class dataservice.taggging.TaggingEntry.]]>
      </description-html>
            <property name="tagName" type-id-ref="java.lang.String"
      vmodl-name="tagName"
      >
      <description-html>
         <![CDATA[Associated tag name of the Tag-Association tuple]]>
      </description-html>
      </property>

            <property name="parentCategoryName" type-id-ref="java.lang.String"
      vmodl-name="parentCategoryName"
      >
      <description-html>
         <![CDATA[Associated parent category name of the Tag-Association tuple]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualSoundBlaster16"
      type-id="vim.vm.device.VirtualSoundBlaster16"
      vmodl-name="vim.vm.device.VirtualSoundBlaster16"
      version-id-ref="vim.version.version1"
      base-type-id="vim.vm.device.VirtualSoundCard"
      >
      <description-html>
         <![CDATA[The VirtualSoundBlaster16 data object type represents a Sound
  Blaster 16 sound card in a virtual machine.]]>
      </description-html>
   </data-object>
   <data-object name="HostPlugStoreTopologyDevice"
      type-id="vim.host.PlugStoreTopology.Device"
      vmodl-name="vim.host.PlugStoreTopology.Device"
      enclosing-type-id-ref="vim.host.PlugStoreTopology"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object type is an association class that describes a ScsiLun
  and its associated Path objects.  The ScsiLun is a Device that is formed
  from a set of Paths.]]>
      </description-html>
            <property name="key" type-id-ref="java.lang.String"
      vmodl-name="key"
      >
      <description-html>
         <![CDATA[Linkable identifier.]]>
      </description-html>
      </property>

            <property name="lun" type-id-ref="vim.host.ScsiLun"
      vmodl-name="lun"
      is-link="true"
      >
      <description-html>
         <![CDATA[The SCSI device corresponding to logical unit.]]>
      </description-html>
      </property>

            <property name="path" type-id-ref="vim.host.PlugStoreTopology.Path"
      vmodl-name="path"
      is-array="true"
      is-optional="true"
      is-link="true"
      >
      <description-html>
         <![CDATA[The array of paths available to access this LogicalUnit.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="FileQuery"
      type-id="vim.host.DatastoreBrowser.Query"
      vmodl-name="vim.host.DatastoreBrowser.Query"
      enclosing-type-id-ref="vim.host.DatastoreBrowser"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The data object type that describes the base query specification. Contains query
  filters and details that apply to every file. Querying only file details generally
  does not require opening files and so is an efficient query. Derived types add
  query parameters specific to the type of file.]]>
      </description-html>
   </data-object>
   <data-object name="PerfQuerySpec"
      type-id="vim.PerformanceManager.QuerySpec"
      vmodl-name="vim.PerformanceManager.QuerySpec"
      enclosing-type-id-ref="vim.PerformanceManager"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object specifies the query parameters, including the managed
  object reference to the target entity for statistics retrieval. <ul>

  <li> If the optional <a href="vim.PerformanceManager.QuerySpec.html#intervalId">intervalId</a> is omitted, the metrics are
       returned in their originally sampled interval. <ul>

     <li> When an <a href="vim.PerformanceManager.QuerySpec.html#intervalId">intervalId</a> is specified, the server tries to
          summarize the information for the specified <a href="vim.PerformanceManager.QuerySpec.html#intervalId">intervalId</a>.
          However, if that interval does not exist or has no data, the
          server summarizes the information using the best interval
          available. </li>

     </ul> </li>

  <li> If the range between <a href="vim.PerformanceManager.QuerySpec.html#startTime">startTime</a> and <a href="vim.PerformanceManager.QuerySpec.html#endTime">endTime</a> crosses
       multiple sample interval periods, the result contains data from the
       longest interval in the period. </li>

  </ul>]]>
      </description-html>
            <property name="entity" type-id-ref="vmodl.ManagedObject"
      vmodl-name="entity"
      >
      <description-html>
         <![CDATA[The managed object whose performance statistics are being queried.]]>
      </description-html>
      </property>

            <property name="startTime" type-id-ref="vmodl.DateTime"
      vmodl-name="startTime"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The server time from which to obtain counters. If not specified,
  defaults to the first available counter. When a startTime is
  specified, the returned samples do not include the sample at
  startTime.]]>
      </description-html>
      </property>

            <property name="endTime" type-id-ref="vmodl.DateTime"
      vmodl-name="endTime"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The time up to which statistics are retrieved. Corresponds to server
  time. When endTime is omitted, the returned result includes up to the
  most recent metric value. When an endTime is specified, the returned
  samples include the sample at endTime.]]>
      </description-html>
      </property>

            <property name="maxSample" type-id-ref="INT"
      vmodl-name="maxSample"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Limits the number of samples returned. Defaults to the most recent
  sample (or samples), unless a time range is specified. Use this
  property only in conjunction with the <a href="vim.PerformanceManager.QuerySpec.html#intervalId">intervalId</a> to obtain
  real-time statistics (set the <a href="vim.PerformanceManager.QuerySpec.html#intervalId">intervalId</a> to the <a href="vim.PerformanceManager.ProviderSummary.html#refreshRate">refreshRate</a>. This property is
  ignored for historical statistics, and is not valid for the <a href="vim.PerformanceManager.html#queryCompositeStats">QueryPerfComposite</a> operation.]]>
      </description-html>
      </property>

            <property name="metricId" type-id-ref="vim.PerformanceManager.MetricId"
      vmodl-name="metricId"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The performance metrics to be retrieved. This property is required for
  the <a href="vim.PerformanceManager.html#queryCompositeStats">QueryPerfComposite</a> operation.]]>
      </description-html>
      </property>

            <property name="intervalId" type-id-ref="INT"
      vmodl-name="intervalId"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The interval (<a href="vim.HistoricalInterval.html#samplingPeriod">samplingPeriod</a>), in seconds,
  for the performance statistics&#46; For aggregated information, use
  one of the historical intervals for this property. See <a href="vim.HistoricalInterval.html">PerfInterval</a> for more information. <ul>

  <li> To obtain the greatest detail, use the provider&#146;s <a href="vim.PerformanceManager.ProviderSummary.html#refreshRate">refreshRate</a> for this
       property.

  </ul>]]>
      </description-html>
      </property>

            <property name="format" type-id-ref="java.lang.String"
      vmodl-name="format"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The format to be used while returning the statistics&#46;<br>See <a href="vim.PerformanceManager.Format.html">PerfFormat</a><br>]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="KernelModuleSectionInfo"
      type-id="vim.host.KernelModuleSystem.ModuleInfo.SectionInfo"
      vmodl-name="vim.host.KernelModuleSystem.ModuleInfo.SectionInfo"
      enclosing-type-id-ref="vim.host.KernelModuleSystem.ModuleInfo"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Information about a module section.]]>
      </description-html>
            <property name="address" type-id-ref="LONG"
      vmodl-name="address"
      >
      <description-html>
         <![CDATA[Base address of section.]]>
      </description-html>
      </property>

            <property name="length" type-id-ref="INT"
      vmodl-name="length"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Section length.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostStorageDeviceInfo"
      type-id="vim.host.StorageDeviceInfo"
      vmodl-name="vim.host.StorageDeviceInfo"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object type describes the storage subsystem configuration.]]>
      </description-html>
            <property name="hostBusAdapter" type-id-ref="vim.host.HostBusAdapter"
      vmodl-name="hostBusAdapter"
      is-array="true"
      is-optional="true"
      is-linkable="true"
      >
      <description-html>
         <![CDATA[The list of host bus adapters available on the host.]]>
      </description-html>
      </property>

            <property name="scsiLun" type-id-ref="vim.host.ScsiLun"
      vmodl-name="scsiLun"
      is-array="true"
      is-optional="true"
      is-linkable="true"
      >
      <description-html>
         <![CDATA[The list of SCSI logical units available on the host.]]>
      </description-html>
      </property>

            <property name="scsiTopology" type-id-ref="vim.host.ScsiTopology"
      vmodl-name="scsiTopology"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Storage topology view of SCSI storage devices.  This data object
  exists only if storage topology information is available.  See the
  <a href="vim.host.ScsiTopology.html">ScsiTopology</a> data object type for
  more information.]]>
      </description-html>
      </property>

            <property name="nvmeTopology" type-id-ref="vim.host.NvmeTopology"
      vmodl-name="nvmeTopology"
      version-id-ref="vim.version.v7_0"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Topology view of NVME storage devices. This data object exists
  only if storage topology information is available. See the
  <a href="vim.host.NvmeTopology.html">HostNvmeTopology</a> data object type for more information.]]>
      </description-html>
      </property>

            <property name="multipathInfo" type-id-ref="vim.host.MultipathInfo"
      vmodl-name="multipathInfo"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The multipath configuration that controls multipath policy for ScsiLuns.
  This data object exists only if path information is available and is
  configurable.]]>
      </description-html>
      </property>

            <property name="plugStoreTopology" type-id-ref="vim.host.PlugStoreTopology"
      vmodl-name="plugStoreTopology"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The plug-store topology on the host system.  This data object exists only if
  the plug-store system is available and configurable.]]>
      </description-html>
      </property>

            <property name="softwareInternetScsiEnabled" type-id-ref="BOOLEAN"
      vmodl-name="softwareInternetScsiEnabled"
      >
      <description-html>
         <![CDATA[Indicates if the software iSCSI initiator is enabled on this system]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DrsExitedStandbyModeEvent"
      type-id="vim.event.DrsExitedStandbyModeEvent"
      vmodl-name="vim.event.DrsExitedStandbyModeEvent"
      version-id-ref="vim.version.version2"
      base-type-id="vim.event.ExitedStandbyModeEvent"
      >
      <description-html>
         <![CDATA[This event records that Distributed Power Management brings this host
  out from standby mode.]]>
      </description-html>
   </data-object>
   <data-object name="VsanUpgradeSystemUpgradeHistoryPreflightFail"
      type-id="vim.VsanUpgradeSystem.UpgradeHistoryPreflightFail"
      vmodl-name="vim.VsanUpgradeSystem.UpgradeHistoryPreflightFail"
      enclosing-type-id-ref="vim.VsanUpgradeSystem"
      version-id-ref="vim.version.version10"
      base-type-id="vim.VsanUpgradeSystem.UpgradeHistoryItem"
      >
      <description-html>
         <![CDATA[Upgrade process encountered a pre-flight check failure. This leads to
 the upgrade process aborting the upgrade.]]>
      </description-html>
            <property name="preflightResult" type-id-ref="vim.VsanUpgradeSystem.PreflightCheckResult"
      vmodl-name="preflightResult"
      >
      <description-html>
         <![CDATA[Details about the failed preflight check.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DiagnosticManagerLogHeader"
      type-id="vim.DiagnosticManager.LogHeader"
      vmodl-name="vim.DiagnosticManager.LogHeader"
      enclosing-type-id-ref="vim.DiagnosticManager"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[A header that is returned with a set of log entries. This header
  describes where entries are located in the log file. Log files typically
  grow dynamically, so indexes based on line numbers may become inaccurate.]]>
      </description-html>
            <property name="lineStart" type-id-ref="INT"
      vmodl-name="lineStart"
      >
      <description-html>
         <![CDATA[The first line of this log segment.]]>
      </description-html>
      </property>

            <property name="lineEnd" type-id-ref="INT"
      vmodl-name="lineEnd"
      >
      <description-html>
         <![CDATA[The last line of this log segment.]]>
      </description-html>
      </property>

            <property name="lineText" type-id-ref="java.lang.String"
      vmodl-name="lineText"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Log entries, listed by line, for this log segment.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DVPortgroupSelection"
      type-id="vim.dvs.DistributedVirtualPortgroupSelection"
      vmodl-name="vim.dvs.DistributedVirtualPortgroupSelection"
      version-id-ref="vim.version.version7"
      internal-before-version-id-ref="vim.version.version8"
      base-type-id="vim.SelectionSet"
      >
      <description-html>
         <![CDATA[Class to specify selection criteria of list of vNetwork Distributed Portgroups.]]>
      </description-html>
            <property name="dvsUuid" type-id-ref="java.lang.String"
      vmodl-name="dvsUuid"
      >
      <description-html>
         <![CDATA[vSphere Distributed Switch uuid]]>
      </description-html>
      </property>

            <property name="portgroupKey" type-id-ref="java.lang.String"
      vmodl-name="portgroupKey"
      is-array="true"
      >
      <description-html>
         <![CDATA[List of vNetwork Distributed Portgroup keys]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostTpmAttestationReport"
      type-id="vim.host.TpmAttestationReport"
      vmodl-name="vim.host.TpmAttestationReport"
      version-id-ref="vim.version.version8"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This class is used to report Trusted Platform Module (TPM) attestation
  information - values of the Platform Configuration Registers (PCRs) and
  the TPM event log to the external clients.
  <p />
  This information can be used to determine the integrity of the software
  stack running as reported by the platform.
  <p />
  The TPM stores digests (hashes) of the software stack components running on
  the host. Both binary modules and configuration information can be hashed.
  The calculated hash values are stored in special-purpose hardware registers
  called PCRs. Each PCR is defined to hold cumulative digest(s) of specific
  part(s) of the software stack.
  <p />
  Due to the limited amount of PCRs available a hash-chaining scheme is implemented.
  When adding new information to a PCR the new value of hash is computed according
  to the following formula:
    NewHash = hash_function(OldHash + hash_function(NewData))
  This scheme allows storing measurements of an unlimited amount of components.
  <p />
  The TPM event log provides an exact sequence of the events that contributed
  to the value of a PCR. It contains information about the type of the event
  and event-specific information. The presence of the log allows verification of
  both the final PCR state and the entire attestation path that formed it.
  <p />
  It is possible for this report to be unreliable. This could be due to missing package
  information in the host database, errors in creation of the events. Only first 1000
  events are recorded by the kernel. Further events will not be recorded in the log and
  will cause the log to be marked as incomplete.]]>
      </description-html>
            <property name="tpmPcrValues" type-id-ref="vim.host.TpmDigestInfo"
      vmodl-name="tpmPcrValues"
      is-array="true"
      >
      <description-html>
         <![CDATA[The array of PCR digest values stored in the TPM device since the last
  host boot time.]]>
      </description-html>
      </property>

            <property name="tpmEvents" type-id-ref="vim.host.TpmEventLogEntry"
      vmodl-name="tpmEvents"
      is-array="true"
      >
      <description-html>
         <![CDATA[Log of TPM software stack attestation events.]]>
      </description-html>
      </property>

            <property name="tpmLogReliable" type-id-ref="BOOLEAN"
      vmodl-name="tpmLogReliable"
      >
      <description-html>
         <![CDATA[This flag indicates whether the provided TPM events are a complete and reliable
  information about host boot status.
  <p />
  TPM event log may be incomplete (and therfore unreliable) if certain modules have
  inappropriate origin or if the package information is incomplete. Only first 1000
  events are recorded by the kernel. Further events will not be recorded in the log
  and will cause the log to be marked as unreliable.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="SeSparseVirtualDiskSpec"
      type-id="vim.VirtualDiskManager.SeSparseVirtualDiskSpec"
      vmodl-name="vim.VirtualDiskManager.SeSparseVirtualDiskSpec"
      enclosing-type-id-ref="vim.VirtualDiskManager"
      version-id-ref="vim.version.version8"
      base-type-id="vim.VirtualDiskManager.FileBackedVirtualDiskSpec"
      >
      <description-html>
         <![CDATA[Specification used to create an Flex-SE based virtual disk]]>
      </description-html>
            <property name="grainSizeKb" type-id-ref="INT"
      vmodl-name="grainSizeKb"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The grain size in kB for Flex-SE disk types. Default value will
 be used if unset.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualNVDIMM"
      type-id="vim.vm.device.VirtualNVDIMM"
      vmodl-name="vim.vm.device.VirtualNVDIMM"
      version-id-ref="vim.version.version12"
      base-type-id="vim.vm.device.VirtualDevice"
      >
      <description-html>
         <![CDATA[The Virtual NVDIMM device.]]>
      </description-html>
            <property name="capacityInMB" type-id-ref="LONG"
      vmodl-name="capacityInMB"
      >
      <description-html>
         <![CDATA[NVDIMM device size in MB.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.vm.device.VirtualNVDIMM.BackingInfo</nested-type-id-ref>
   </data-object>
   <data-object name="GeneralVmWarningEvent"
      type-id="vim.event.GeneralVmWarningEvent"
      vmodl-name="vim.event.GeneralVmWarningEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.GeneralEvent"
      >
      <description-html>
         <![CDATA[This event is the general warning event for a virtual machine.]]>
      </description-html>
   </data-object>
   <data-object name="HostPciPassthruInfo"
      type-id="vim.host.PciPassthruInfo"
      vmodl-name="vim.host.PciPassthruInfo"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object provides information about the state of PciPassthru
  for all pci devices.]]>
      </description-html>
            <property name="id" type-id-ref="java.lang.String"
      vmodl-name="id"
      >
      <description-html>
         <![CDATA[The name ID of this PCI, composed of "bus:slot.function".]]>
      </description-html>
      </property>

            <property name="dependentDevice" type-id-ref="java.lang.String"
      vmodl-name="dependentDevice"
      >
      <description-html>
         <![CDATA[Device which needs to be unclaimed by vmkernel (may be bridge)]]>
      </description-html>
      </property>

            <property name="passthruEnabled" type-id-ref="BOOLEAN"
      vmodl-name="passthruEnabled"
      >
      <description-html>
         <![CDATA[Whether passThru has been configured by the user]]>
      </description-html>
      </property>

            <property name="passthruCapable" type-id-ref="BOOLEAN"
      vmodl-name="passthruCapable"
      >
      <description-html>
         <![CDATA[Whether passThru is even possible for this device (decided by vmkctl)]]>
      </description-html>
      </property>

            <property name="passthruActive" type-id-ref="BOOLEAN"
      vmodl-name="passthruActive"
      >
      <description-html>
         <![CDATA[Whether passThru is active for this device (meaning enabled + rebooted)]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostAddedEvent"
      type-id="vim.event.HostAddedEvent"
      vmodl-name="vim.event.HostAddedEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.HostEvent"
      >
      <description-html>
         <![CDATA[This event records the addition of a host to VirtualCenter.]]>
      </description-html>
   </data-object>
   <data-object name="MissingProperty"
      type-id="vmodl.query.PropertyCollector.MissingProperty"
      vmodl-name="vmodl.query.PropertyCollector.MissingProperty"
      enclosing-type-id-ref="vmodl.query.PropertyCollector"
      version-id-ref="vmodl.query.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Used for reporting properties for which values could not be retrieved.]]>
      </description-html>
            <property name="path" type-id-ref="vmodl.PropertyPath"
      vmodl-name="path"
      >
      <description-html>
         <![CDATA[Property for which a value could not be retrieved]]>
      </description-html>
      </property>

            <property name="fault" type-id-ref="vmodl.LocalizedMethodFault"
      vmodl-name="fault"
      >
      <description-html>
         <![CDATA[Fault describing the failure to retrieve the property value.

  <p> The possible faults for missing properties are: <ul>

  <li> <a href="vmodl.fault.SystemError.html">SystemError</a> if there was some unknown problem
       reading the value

  <li> <a href="vmodl.fault.SecurityError.html">SecurityError</a> if the logged in session did
       not have permission to read the value

  </ul>]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostFibreChannelHba"
      type-id="vim.host.FibreChannelHba"
      vmodl-name="vim.host.FibreChannelHba"
      version-id-ref="vim.version.version1"
      base-type-id="vim.host.HostBusAdapter"
      >
      <description-html>
         <![CDATA[This data object type describes the Fibre Channel host bus adapter.]]>
      </description-html>
            <property name="portWorldWideName" type-id-ref="LONG"
      vmodl-name="portWorldWideName"
      >
      <description-html>
         <![CDATA[The world wide port name for the adapter.]]>
      </description-html>
      </property>

            <property name="nodeWorldWideName" type-id-ref="LONG"
      vmodl-name="nodeWorldWideName"
      >
      <description-html>
         <![CDATA[The world wide node name for the adapter.]]>
      </description-html>
      </property>

            <property name="portType" type-id-ref="vim.host.FibreChannelHba.PortType"
      vmodl-name="portType"
      >
      <description-html>
         <![CDATA[The type of the fiber channel port.]]>
      </description-html>
      </property>

            <property name="speed" type-id-ref="LONG"
      vmodl-name="speed"
      >
      <description-html>
         <![CDATA[The current operating speed of the adapter in
  bits per second.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.host.FibreChannelHba.PortType</nested-type-id-ref>
   </data-object>
   <data-object name="HostAccountSpec"
      type-id="vim.host.LocalAccountManager.AccountSpecification"
      vmodl-name="vim.host.LocalAccountManager.AccountSpecification"
      enclosing-type-id-ref="vim.host.LocalAccountManager"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object type contains common parameters
  for local account creation. The password and description properties
  are not supported for group accounts on POSIX hosts.]]>
      </description-html>
            <property name="id" type-id-ref="java.lang.String"
      vmodl-name="id"
      >
      <description-html>
         <![CDATA[The ID of the specified account.]]>
      </description-html>
      </property>

            <property name="password" type-id-ref="java.lang.String"
      vmodl-name="password"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The password for a user or group.]]>
      </description-html>
      </property>

            <property name="description" type-id-ref="java.lang.String"
      vmodl-name="description"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The description of the specified account.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DVSCapability"
      type-id="vim.DistributedVirtualSwitch.Capability"
      vmodl-name="vim.DistributedVirtualSwitch.Capability"
      enclosing-type-id-ref="vim.DistributedVirtualSwitch"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The <a href="vim.DistributedVirtualSwitch.Capability.html">DVSCapability</a> data object
 describes the distributed virtual switch features and indicates
 the level of configuration that is allowed.]]>
      </description-html>
            <property name="dvsOperationSupported" type-id-ref="BOOLEAN"
      vmodl-name="dvsOperationSupported"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates whether this switch allows vCenter users to modify
  the switch configuration at the switch level,
  except for host member, policy, and scope operations.]]>
      </description-html>
      </property>

            <property name="dvPortGroupOperationSupported" type-id-ref="BOOLEAN"
      vmodl-name="dvPortGroupOperationSupported"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates whether this switch allows vCenter users to modify
  the switch configuration at the portgroup level,
  except for host member, policy, and scope operations.]]>
      </description-html>
      </property>

            <property name="dvPortOperationSupported" type-id-ref="BOOLEAN"
      vmodl-name="dvPortOperationSupported"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates whether this switch allows vCenter users to modify
  the switch configuration at the port level,
  except for host member, policy, and scope operations.]]>
      </description-html>
      </property>

            <property name="compatibleHostComponentProductInfo" type-id-ref="vim.dvs.HostProductSpec"
      vmodl-name="compatibleHostComponentProductInfo"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of host component product information that is compatible
  with the current switch implementation.]]>
      </description-html>
      </property>

            <property name="featuresSupported" type-id-ref="vim.DistributedVirtualSwitch.FeatureCapability"
      vmodl-name="featuresSupported"
      version-id-ref="vim.version.version6"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicators for which version-specific distributed virtual switch
 features are available on this switch.
 <p>
 This information is read-only, with the following exception.
 For a third-party distributed switch implementation, you can
 set the property
 <a href="vim.DistributedVirtualSwitch.FeatureCapability.html">DVSFeatureCapability</a>.<a href="vim.DistributedVirtualSwitch.FeatureCapability.html#vmDirectPathGen2Supported">vmDirectPathGen2Supported</a>
 during switch creation or when you call the
 <a href="vim.DistributedVirtualSwitch.html#updateCapability">UpdateDvsCapability</a> method.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DatacenterConfigInfo"
      type-id="vim.Datacenter.ConfigInfo"
      vmodl-name="vim.Datacenter.ConfigInfo"
      enclosing-type-id-ref="vim.Datacenter"
      version-id-ref="vim.version.version8"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Configuration of the datacenter.]]>
      </description-html>
            <property name="defaultHardwareVersionKey" type-id-ref="java.lang.String"
      vmodl-name="defaultHardwareVersionKey"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Key for Default Hardware Version used on this datacenter
  in the format of <a href="vim.vm.ConfigOptionDescriptor.html#key">key</a>.

  This field affects
  <a href="vim.vm.ConfigOptionDescriptor.html#defaultConfigOption">defaultConfigOption</a> returned
  by <a href="vim.ComputeResource.html#environmentBrowser">EnvironmentBrowser</a> of all its children
  with this field unset.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="FaultsByHost"
      type-id="vim.FaultsByHost"
      vmodl-name="vim.FaultsByHost"
      version-id-ref="vim.version.version12"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Group of faults associated with Host. This Class is used in e.g.
  vim.host#HostEnterMaintenanceResult.]]>
      </description-html>
            <property name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      >
      <description-html>
         <![CDATA[The Host in the cluster for which faults were generated.]]>
      </description-html>
      </property>

            <property name="faults" type-id-ref="vmodl.LocalizedMethodFault"
      vmodl-name="faults"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The array of faults related to the given Host.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="GuestWindowsFileAttributes"
      type-id="vim.vm.guest.FileManager.WindowsFileAttributes"
      vmodl-name="vim.vm.guest.FileManager.WindowsFileAttributes"
      enclosing-type-id-ref="vim.vm.guest.FileManager"
      version-id-ref="vim.version.version7"
      base-type-id="vim.vm.guest.FileManager.FileAttributes"
      >
      <description-html>
         <![CDATA[Different attributes for a Windows guest file.]]>
      </description-html>
            <property name="hidden" type-id-ref="BOOLEAN"
      vmodl-name="hidden"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The file is hidden.
 If this property is not specified when passing a
 <a href="vim.vm.guest.FileManager.WindowsFileAttributes.html">GuestWindowsFileAttributes</a> object to
 <a href="vim.vm.guest.FileManager.html#initiateFileTransferToGuest">InitiateFileTransferToGuest</a>,
 the file will not be set as a hidden file.]]>
      </description-html>
      </property>

            <property name="readOnly" type-id-ref="BOOLEAN"
      vmodl-name="readOnly"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The file is read-only.
 If this property is not specified when passing a
 <a href="vim.vm.guest.FileManager.WindowsFileAttributes.html">GuestWindowsFileAttributes</a> object to
 <a href="vim.vm.guest.FileManager.html#initiateFileTransferToGuest">InitiateFileTransferToGuest</a>,
 the file will not be set as a read-only file.]]>
      </description-html>
      </property>

            <property name="createTime" type-id-ref="vmodl.DateTime"
      vmodl-name="createTime"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The date and time the file was created.
 This property gives information about files when returned from
 <a href="vim.vm.guest.FileManager.html#listFiles">ListFilesInGuest</a> or
 <a href="vim.vm.guest.FileManager.html#initiateFileTransferFromGuest">InitiateFileTransferFromGuest</a>
 as part of a <a href="vim.vm.guest.FileManager.WindowsFileAttributes.html">GuestWindowsFileAttributes</a>
 object.  This property will be ignored when passing a
 <a href="vim.vm.guest.FileManager.WindowsFileAttributes.html">GuestWindowsFileAttributes</a> object to
 <a href="vim.vm.guest.FileManager.html#initiateFileTransferToGuest">InitiateFileTransferToGuest</a> or
 <a href="vim.vm.guest.FileManager.html#changeFileAttributes">ChangeFileAttributesInGuest</a>.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostConfigInfo"
      type-id="vim.host.ConfigInfo"
      vmodl-name="vim.host.ConfigInfo"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object type encapsulates a typical set of host configuration
   information that is useful for displaying and configuring a host.
   <p>
   VirtualCenter can retrieve this set of information
   very efficiently even for a large set of hosts.]]>
      </description-html>
            <property name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      >
      <description-html>
         <![CDATA[A reference to a managed object on a host.]]>
      </description-html>
      </property>

            <property name="product" type-id-ref="vim.AboutInfo"
      vmodl-name="product"
      >
      <description-html>
         <![CDATA[Information about a product.]]>
      </description-html>
      </property>

            <property name="deploymentInfo" type-id-ref="vim.host.DeploymentInfo"
      vmodl-name="deploymentInfo"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Deployment information about the host.]]>
      </description-html>
      </property>

            <property name="hyperThread" type-id-ref="vim.host.CpuSchedulerSystem.HyperThreadScheduleInfo"
      vmodl-name="hyperThread"
      is-optional="true"
      >
      <description-html>
         <![CDATA[If hyperthreading is supported, this is the CPU configuration for
  optimizing hyperthreading.]]>
      </description-html>
      </property>

            <property name="consoleReservation" type-id-ref="vim.host.MemoryManagerSystem.ServiceConsoleReservationInfo"
      vmodl-name="consoleReservation"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Memory configuration.]]>
      </description-html>
      </property>

            <property name="virtualMachineReservation" type-id-ref="vim.host.MemoryManagerSystem.VirtualMachineReservationInfo"
      vmodl-name="virtualMachineReservation"
      version-id-ref="vim.version.version2"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Virtual machine memory configuration.]]>
      </description-html>
      </property>

            <property name="storageDevice" type-id-ref="vim.host.StorageDeviceInfo"
      vmodl-name="storageDevice"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Storage system information.]]>
      </description-html>
      </property>

            <property name="multipathState" type-id-ref="vim.host.MultipathStateInfo"
      vmodl-name="multipathState"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Storage multipath state information.]]>
      </description-html>
      </property>

            <property name="fileSystemVolume" type-id-ref="vim.host.FileSystemVolumeInfo"
      vmodl-name="fileSystemVolume"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Storage system file system volume information.]]>
      </description-html>
      </property>

            <property name="systemFile" type-id-ref="java.lang.String"
      vmodl-name="systemFile"
      version-id-ref="vim.version.version6"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Datastore paths of files used by the host system on
  mounted volumes, for instance, the COS vmdk file of the
  host. For information on datastore paths, see <a href="vim.Datastore.html">Datastore</a>.]]>
      </description-html>
      </property>

            <property name="network" type-id-ref="vim.host.NetworkInfo"
      vmodl-name="network"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Network system information.]]>
      </description-html>
      </property>

            <property name="vmotion" type-id-ref="vim.host.VMotionInfo"
      vmodl-name="vmotion"
      is-deprecated="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[VMotion system information.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of VI API 4.0, use <a href="vim.host.ConfigInfo.html#virtualNicManagerInfo">virtualNicManagerInfo</a>]]>
      </deprecated-html>
      </property>

            <property name="virtualNicManagerInfo" type-id-ref="vim.host.VirtualNicManagerInfo"
      vmodl-name="virtualNicManagerInfo"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[VirtualNic manager information.]]>
      </description-html>
      </property>

            <property name="capabilities" type-id-ref="vim.host.NetCapabilities"
      vmodl-name="capabilities"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Capability vector indicating the available network features.]]>
      </description-html>
      </property>

            <property name="datastoreCapabilities" type-id-ref="vim.host.DatastoreSystem.Capabilities"
      vmodl-name="datastoreCapabilities"
      version-id-ref="vim.version.version2"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Capability vector indicating available datastore features.]]>
      </description-html>
      </property>

            <property name="offloadCapabilities" type-id-ref="vim.host.NetOffloadCapabilities"
      vmodl-name="offloadCapabilities"
      is-deprecated="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[capabilities to offload operations either to the host or to physical
  hardware when a virtual machine is transmitting on a network]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of VI API 4.0, the system defaults will be used.]]>
      </deprecated-html>
      </property>

            <property name="service" type-id-ref="vim.host.ServiceInfo"
      vmodl-name="service"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Host service configuration.]]>
      </description-html>
      </property>

            <property name="firewall" type-id-ref="vim.host.FirewallInfo"
      vmodl-name="firewall"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Firewall configuration.]]>
      </description-html>
      </property>

            <property name="autoStart" type-id-ref="vim.host.AutoStartManager.Config"
      vmodl-name="autoStart"
      is-optional="true"
      >
      <description-html>
         <![CDATA[AutoStart configuration.]]>
      </description-html>
      </property>

            <property name="activeDiagnosticPartition" type-id-ref="vim.host.DiagnosticPartition"
      vmodl-name="activeDiagnosticPartition"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The diagnostic partition that will be set as the current
  diagnostic partition on the host.]]>
      </description-html>
      </property>

            <property name="option" type-id-ref="vim.option.OptionValue"
      vmodl-name="option"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Host configuration options as defined by the
  <a href="vim.option.OptionValue.html">OptionValue</a> data object type.]]>
      </description-html>
      </property>

            <property name="optionDef" type-id-ref="vim.option.OptionDef"
      vmodl-name="optionDef"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[A list of supported options.]]>
      </description-html>
      </property>

            <property name="datastorePrincipal" type-id-ref="java.lang.String"
      vmodl-name="datastorePrincipal"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Datastore principal user]]>
      </description-html>
      </property>

            <property name="localSwapDatastore" type-id-ref="vim.Datastore"
      vmodl-name="localSwapDatastore"
      version-id-ref="vim.version.version2"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Datastore visible to this host that may be used to store virtual
  machine swapfiles, for virtual machines executing on this host. The
  value of this property is set or unset by invoking
  <a href="vim.host.DatastoreSystem.html#updateLocalSwapDatastore">UpdateLocalSwapDatastore</a>.
  The policy for using this datastore is determined by the compute
  resource configuration's
  <a href="vim.ComputeResource.ConfigInfo.html#vmSwapPlacement">vmSwapPlacement</a>
  property in concert with each individual virtual machine configuration's
  <a href="vim.vm.ConfigInfo.html#swapPlacement">swapPlacement</a> property.
  <p>
  Note: Using a host-specific swap location may degrade VMotion performance.]]>
      </description-html>
      </property>

            <property name="systemSwapConfiguration" type-id-ref="vim.host.SystemSwapConfiguration"
      vmodl-name="systemSwapConfiguration"
      version-id-ref="vim.version.version8"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The system swap configuration specifies which options are currently
 enabled.<br/><br>See <a href="vim.host.SystemSwapConfiguration.html">HostSystemSwapConfiguration</a><br>]]>
      </description-html>
      </property>

            <property name="systemResources" type-id-ref="vim.host.SystemResourceInfo"
      vmodl-name="systemResources"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Reference for the system resource hierarchy, used for configuring
  the set of resources reserved to the system and unavailable to
  virtual machines.]]>
      </description-html>
      </property>

            <property name="dateTimeInfo" type-id-ref="vim.host.DateTimeInfo"
      vmodl-name="dateTimeInfo"
      version-id-ref="vim.version.version2"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Date/Time related configuration]]>
      </description-html>
      </property>

            <property name="flags" type-id-ref="vim.host.FlagInfo"
      vmodl-name="flags"
      version-id-ref="vim.version.version2"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Additional flags for a host.]]>
      </description-html>
      </property>

            <property name="adminDisabled" type-id-ref="BOOLEAN"
      vmodl-name="adminDisabled"
      version-id-ref="vim.version.version2"
      is-deprecated="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[If the flag is true, the permissions on the host have been modified such
  that it is only accessible through local console or an authorized
  centralized management application. This flag is affected by the
  <a href="vim.HostSystem.html#enterLockdownMode">EnterLockdownMode</a> and
  <a href="vim.HostSystem.html#exitLockdownMode">ExitLockdownMode</a> operations.
  <p>
  This flag is supported in VirtualCenter only. The value returned from host
  should be ignored.<br>See <a href="vim.HostSystem.html#enterLockdownMode">EnterLockdownMode</a><br>See <a href="vim.HostSystem.html#exitLockdownMode">ExitLockdownMode</a><br>]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 6.0, use <a href="vim.host.ConfigInfo.html#lockdownMode">lockdownMode</a>.]]>
      </deprecated-html>
      </property>

            <property name="lockdownMode" type-id-ref="vim.host.HostAccessManager.LockdownMode"
      vmodl-name="lockdownMode"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates the current lockdown mode of the host as reported by
  <a href="vim.host.HostAccessManager.html#lockdownMode">LockdownMode</a>.<br>See <a href="vim.host.HostAccessManager.html#changeLockdownMode">ChangeLockdownMode</a><br>]]>
      </description-html>
      </property>

            <property name="ipmi" type-id-ref="vim.host.IpmiInfo"
      vmodl-name="ipmi"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[IPMI (Intelligent Platform Management Interface) info for the host.]]>
      </description-html>
      </property>

            <property name="sslThumbprintInfo" type-id-ref="vim.host.SslThumbprintInfo"
      vmodl-name="sslThumbprintInfo"
      version-id-ref="vim.version.version5"
      is-deprecated="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[SSL Thumbprint info for hosts registered on this host.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 5.0, use <a href="vim.host.ConfigInfo.html#sslThumbprintData">sslThumbprintData</a> instead.]]>
      </deprecated-html>
      </property>

            <property name="sslThumbprintData" type-id-ref="vim.host.SslThumbprintInfo"
      vmodl-name="sslThumbprintData"
      version-id-ref="vim.version.version7"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[SSL Thumbprints registered on this host.]]>
      </description-html>
      </property>

            <property name="certificate" type-id-ref="BYTE"
      vmodl-name="certificate"
      version-id-ref="vim.version.version7"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Full Host Certificate in PEM format, if known]]>
      </description-html>
      </property>

            <property name="pciPassthruInfo" type-id-ref="vim.host.PciPassthruInfo"
      vmodl-name="pciPassthruInfo"
      version-id-ref="vim.version.version5"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[PCI passthrough information.]]>
      </description-html>
      </property>

            <property name="authenticationManagerInfo" type-id-ref="vim.host.AuthenticationManagerInfo"
      vmodl-name="authenticationManagerInfo"
      version-id-ref="vim.version.version6"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Current authentication configuration.]]>
      </description-html>
      </property>

            <property name="featureVersion" type-id-ref="vim.host.FeatureVersionInfo"
      vmodl-name="featureVersion"
      version-id-ref="vim.version.version6"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of feature-specific version information. Each element refers
 to the version information for a specific feature.]]>
      </description-html>
      </property>

            <property name="powerSystemCapability" type-id-ref="vim.host.PowerSystem.Capability"
      vmodl-name="powerSystemCapability"
      version-id-ref="vim.version.version6"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Host power management capability.]]>
      </description-html>
      </property>

            <property name="powerSystemInfo" type-id-ref="vim.host.PowerSystem.Info"
      vmodl-name="powerSystemInfo"
      version-id-ref="vim.version.version6"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Host power management information.]]>
      </description-html>
      </property>

            <property name="cacheConfigurationInfo" type-id-ref="vim.host.CacheConfigurationManager.CacheConfigurationInfo"
      vmodl-name="cacheConfigurationInfo"
      version-id-ref="vim.version.version7"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Host solid stats drive cache configuration information.]]>
      </description-html>
      </property>

            <property name="wakeOnLanCapable" type-id-ref="BOOLEAN"
      vmodl-name="wakeOnLanCapable"
      version-id-ref="vim.version.version7"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Indicates if a host is wake on lan capable.
  A host is deemed wake on lan capable if there exists at least one
  physical network card that is both backing the vmotion interface and
  is itself wake on lan capable.]]>
      </description-html>
      </property>

            <property name="featureCapability" type-id-ref="vim.host.FeatureCapability"
      vmodl-name="featureCapability"
      version-id-ref="vim.version.version8"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Array of host feature capabilities. This is expected to change
  infrequently. It may change while host is in maintenance mode
  and between reboots if hardware, firmware, or a device driver
  is changed or upgraded.]]>
      </description-html>
      </property>

            <property name="maskedFeatureCapability" type-id-ref="vim.host.FeatureCapability"
      vmodl-name="maskedFeatureCapability"
      version-id-ref="vim.version.version8"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Array of the feature capabilities that the host has after the
  mask has been applied.]]>
      </description-html>
      </property>

            <property name="vFlashConfigInfo" type-id-ref="vim.host.VFlashManager.VFlashConfigInfo"
      vmodl-name="vFlashConfigInfo"
      version-id-ref="vim.version.version9"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Host vFlash configuration information]]>
      </description-html>
      </property>

            <property name="vsanHostConfig" type-id-ref="vim.vsan.host.ConfigInfo"
      vmodl-name="vsanHostConfig"
      version-id-ref="vim.version.version9"
      is-optional="true"
      >
      <description-html>
         <![CDATA[VSAN configuration for a host.]]>
      </description-html>
      </property>

            <property name="domainList" type-id-ref="java.lang.String"
      vmodl-name="domainList"
      version-id-ref="vim.version.version10"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of Windows domains available for user searches, if the underlying
  system supports windows domain membership.
  <p>
  See <a href="vim.UserDirectory.html#domainList">DomainList</a>.]]>
      </description-html>
      </property>

            <property name="scriptCheckSum" type-id-ref="vmodl.Binary"
      vmodl-name="scriptCheckSum"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[A checksum of overhead computation script.
 (For VMware internal usage only)]]>
      </description-html>
      </property>

            <property name="hostConfigCheckSum" type-id-ref="vmodl.Binary"
      vmodl-name="hostConfigCheckSum"
      version-id-ref="vim.version.version10"
      is-optional="true"
      >
      <description-html>
         <![CDATA[A checksum of host configuration option set.
 (For VMware internal usage only)]]>
      </description-html>
      </property>

            <property name="descriptionTreeCheckSum" type-id-ref="vmodl.Binary"
      vmodl-name="descriptionTreeCheckSum"
      version-id-ref="vim.version.v7_0"
      is-optional="true"
      >
      <description-html>
         <![CDATA[A checksum of the Assignable Hardware Description Tree.
 (For VMware internal usage only)]]>
      </description-html>
      </property>

            <property name="graphicsInfo" type-id-ref="vim.host.GraphicsInfo"
      vmodl-name="graphicsInfo"
      version-id-ref="vim.version.version9"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The list of graphics devices available on this host.]]>
      </description-html>
      </property>

            <property name="sharedPassthruGpuTypes" type-id-ref="java.lang.String"
      vmodl-name="sharedPassthruGpuTypes"
      version-id-ref="vim.version.version10"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Array of shared passthru GPU types. These GPU types may be enabled
  when specific host hardware is present.]]>
      </description-html>
      </property>

            <property name="graphicsConfig" type-id-ref="vim.host.GraphicsConfig"
      vmodl-name="graphicsConfig"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Graphics configuration for a host.]]>
      </description-html>
      </property>

            <property name="sharedGpuCapabilities" type-id-ref="vim.host.SharedGpuCapabilities"
      vmodl-name="sharedGpuCapabilities"
      version-id-ref="vim.version.version12"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Array of shared passthru GPU capablities.<br>See <a href="vim.host.SharedGpuCapabilities.html">HostSharedGpuCapabilities</a><br>]]>
      </description-html>
      </property>

            <property name="ioFilterInfo" type-id-ref="vim.IoFilterManager.HostIoFilterInfo"
      vmodl-name="ioFilterInfo"
      version-id-ref="vim.version.version10"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Information of the IO Filters installed on the host.
 See <a href="vim.IoFilterManager.HostIoFilterInfo.html">HostIoFilterInfo</a>.]]>
      </description-html>
      </property>

            <property name="sriovDevicePool" type-id-ref="vim.host.SriovDevicePoolInfo"
      vmodl-name="sriovDevicePool"
      version-id-ref="vim.version.version11"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Information on SRIOV device pools present on host.]]>
      </description-html>
      </property>

            <property name="assignableHardwareBinding" type-id-ref="vim.host.AssignableHardwareBinding"
      vmodl-name="assignableHardwareBinding"
      version-id-ref="vim.version.v7_0"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Information describing Assignable Hardware device bindings on host.
 See <a href="vim.host.AssignableHardwareBinding.html">HostAssignableHardwareBinding</a>.]]>
      </description-html>
      </property>

            <property name="assignableHardwareConfig" type-id-ref="vim.host.AssignableHardwareConfig"
      vmodl-name="assignableHardwareConfig"
      version-id-ref="vim.version.v7_0"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Configured assignable hardware device attributes.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostDateTimeInfo"
      type-id="vim.host.DateTimeInfo"
      vmodl-name="vim.host.DateTimeInfo"
      version-id-ref="vim.version.version2"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object represents the dateTime configuration of the host.]]>
      </description-html>
            <property name="timeZone" type-id-ref="vim.host.DateTimeSystem.TimeZone"
      vmodl-name="timeZone"
      >
      <description-html>
         <![CDATA[The time zone of the host.]]>
      </description-html>
      </property>

            <property name="systemClockProtocol" type-id-ref="java.lang.String"
      vmodl-name="systemClockProtocol"
      version-id-ref="vim.version.v7_0"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The system clock synchronization protocol.
  See Protocol for possible values.]]>
      </description-html>
      </property>

            <property name="ntpConfig" type-id-ref="vim.host.NtpConfig"
      vmodl-name="ntpConfig"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The NTP configuration on the host.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.host.DateTimeInfo.Protocol</nested-type-id-ref>
   </data-object>
   <data-object name="ClusterEnterMaintenanceResult"
      type-id="vim.cluster.EnterMaintenanceResult"
      vmodl-name="vim.cluster.EnterMaintenanceResult"
      version-id-ref="vim.version.version7"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[EnterMaintenanceResult is the base class of the result returned to the
   <a href="vim.ClusterComputeResource.html#enterMaintenanceMode">ClusterEnterMaintenanceMode</a> method.]]>
      </description-html>
            <property name="recommendations" type-id-ref="vim.cluster.Recommendation"
      vmodl-name="recommendations"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The list of recommendations for hosts that Virtual Center will
 be able to evacuate. Each recommendation consists of a host
 maintenance action <a href="vim.cluster.Action.html">ClusterAction</a> for a host, along
 with zero or more vmotions for evacuation. Application of the
 recommendations is not supported currently. The client will have
 to put the hosts into maintenance mode by calling the separate
 method <a href="vim.HostSystem.html#enterMaintenanceMode">EnterMaintenanceMode_Task</a>.]]>
      </description-html>
      </property>

            <property name="fault" type-id-ref="vim.cluster.DrsFaults"
      vmodl-name="fault"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The faults that explain why the Virtual Center cannot evacuate
 some hosts.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="CustomizationIdentitySettings"
      type-id="vim.vm.customization.IdentitySettings"
      vmodl-name="vim.vm.customization.IdentitySettings"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Base type for sysprep, sysprepText, or linuxPrep object type.]]>
      </description-html>
   </data-object>
   <data-object name="EventDescription"
      type-id="vim.event.EventDescription"
      vmodl-name="vim.event.EventDescription"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object provides static, locale-specific strings for event objects.]]>
      </description-html>
            <property name="category" type-id-ref="vim.ElementDescription"
      vmodl-name="category"
      is-array="true"
      >
      <description-html>
         <![CDATA[<a href="vim.event.EventDescription.EventCategory.html">Event Category enum</a>]]>
      </description-html>
      </property>

            <property name="eventInfo" type-id-ref="vim.event.EventDescription.EventDetail"
      vmodl-name="eventInfo"
      is-array="true"
      >
      <description-html>
         <![CDATA[The event class description details.]]>
      </description-html>
      </property>

            <property name="enumeratedTypes" type-id-ref="vim.EnumDescription"
      vmodl-name="enumeratedTypes"
      version-id-ref="vim.version.version5"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Localized descriptions of all enumerated types that are used for
 member declarations in event classes.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.event.EventDescription.EventCategory</nested-type-id-ref>
      <nested-type-id-ref>vim.event.EventDescription.EventArgDesc</nested-type-id-ref>
      <nested-type-id-ref>vim.event.EventDescription.EventDetail</nested-type-id-ref>
   </data-object>
   <data-object name="ImportSpec"
      type-id="vim.ImportSpec"
      vmodl-name="vim.ImportSpec"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[An ImportSpec is used when importing VMs or vApps.
 <p>
 It can be built from scratch, or it can be generated from an OVF descriptor using the
 service interface <a href="vim.OvfManager.html">OvfManager</a>.
 <p>
 This class is the abstract base for <a href="vim.vm.VmImportSpec.html">VirtualMachineImportSpec</a> and
 <a href="vim.vApp.VAppImportSpec.html">VirtualAppImportSpec</a>.  These three classes form a composite structure
 that allows us to contain arbitrarily complex entitites in a single ImportSpec.]]>
      </description-html>
            <property name="entityConfig" type-id-ref="vim.vApp.EntityConfigInfo"
      vmodl-name="entityConfig"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Configuration of sub-entities (virtual machine or vApp). This is used for
 sub-entities of a vApp that could be a virtual machine or a vApp.]]>
      </description-html>
      </property>

            <property name="instantiationOst" type-id-ref="vim.OvfConsumer.OstNode"
      vmodl-name="instantiationOst"
      version-id-ref="vim.version.version7"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The instantiation OST (see <a href="vim.OvfConsumer.html">OvfConsumer</a> ) to be consumed by OVF
 consumers.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VsanUpgradeSystemAutoClaimEnabledOnHostsIssue"
      type-id="vim.VsanUpgradeSystem.AutoClaimEnabledOnHostsIssue"
      vmodl-name="vim.VsanUpgradeSystem.AutoClaimEnabledOnHostsIssue"
      enclosing-type-id-ref="vim.VsanUpgradeSystem"
      version-id-ref="vim.version.version10"
      base-type-id="vim.VsanUpgradeSystem.PreflightCheckIssue"
      >
      <description-html>
         <![CDATA[Pre-flight check encountered at least one host with auto-claim enabled.]]>
      </description-html>
            <property name="hosts" type-id-ref="vim.HostSystem"
      vmodl-name="hosts"
      is-array="true"
      >
      <description-html>
         <![CDATA[Hosts this issue applies to.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VsanHostClusterStatusState"
      type-id="vim.vsan.host.ClusterStatus.State"
      vmodl-name="vim.vsan.host.ClusterStatus.State"
      enclosing-type-id-ref="vim.vsan.host.ClusterStatus"
      version-id-ref="vim.version.version9"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Data object representing the VSAN node state for a host.]]>
      </description-html>
            <property name="state" type-id-ref="java.lang.String"
      vmodl-name="state"
      >
      <description-html>
         <![CDATA[VSAN node state for this host.<br>See <a href="vim.vsan.host.NodeState.html">VsanHostNodeState</a><br>]]>
      </description-html>
      </property>

            <property name="completion" type-id-ref="vim.vsan.host.ClusterStatus.State.CompletionEstimate"
      vmodl-name="completion"
      is-optional="true"
      >
      <description-html>
         <![CDATA[An estimation of the completion of a node state transition; this
 value may be populated for transitory node states.<br>See <a href="vim.vsan.host.NodeState.html">VsanHostNodeState</a><br>]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.vsan.host.ClusterStatus.State.CompletionEstimate</nested-type-id-ref>
   </data-object>
   <data-object name="VirtualWDT"
      type-id="vim.vm.device.VirtualWDT"
      vmodl-name="vim.vm.device.VirtualWDT"
      version-id-ref="vim.version.v7_0"
      base-type-id="vim.vm.device.VirtualDevice"
      >
      <description-html>
         <![CDATA[This data object type represents a watchdog timer in a virtual machine.]]>
      </description-html>
            <property name="runOnBoot" type-id-ref="BOOLEAN"
      vmodl-name="runOnBoot"
      >
      <description-html>
         <![CDATA[Flag to indicate if the virtual watchdog timer device should be
  initialized as the Enabled/Stopped or Enabled/Running sub-state.
  If not set, the device will default to being initialized as the
  Enabled/Stopped sub-state.]]>
      </description-html>
      </property>

            <property name="running" type-id-ref="BOOLEAN"
      vmodl-name="running"
      >
      <description-html>
         <![CDATA[Flag to indicate if the virtual watchdog timer device is currently
  in the Enabled/Running state. The guest can cause state changes,
  which will result in this flag being either set or cleared.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ErrorUpgradeEvent"
      type-id="vim.event.ErrorUpgradeEvent"
      vmodl-name="vim.event.ErrorUpgradeEvent"
      version-id-ref="vim.version.version1"
      base-type-id="vim.event.UpgradeEvent"
      >
      <description-html>
         <![CDATA[This event is a general error event from upgrade.]]>
      </description-html>
   </data-object>
   <data-object name="DvsAcceptNetworkRuleAction"
      type-id="vim.dvs.TrafficRule.AcceptAction"
      vmodl-name="vim.dvs.TrafficRule.AcceptAction"
      enclosing-type-id-ref="vim.dvs.TrafficRule"
      version-id-ref="vim.version.version9"
      base-type-id="vim.dvs.TrafficRule.Action"
      >
      <description-html>
         <![CDATA[This class defines network rule action to accept packets.]]>
      </description-html>
   </data-object>
   <data-object name="VirtualPCIPassthroughVmiopBackingInfo"
      type-id="vim.vm.device.VirtualPCIPassthrough.VmiopBackingInfo"
      vmodl-name="vim.vm.device.VirtualPCIPassthrough.VmiopBackingInfo"
      enclosing-type-id-ref="vim.vm.device.VirtualPCIPassthrough"
      version-id-ref="vim.version.version10"
      base-type-id="vim.vm.device.VirtualPCIPassthrough.PluginBackingInfo"
      >
      <description-html>
         <![CDATA[The VirtualPCIPassthrough.VmiopBackingInfo data object type
  contains information about the plugin that emulates the
  virtual device via the VMIOP plugin interface.

  At present, this interface is only used to implement vGPU.]]>
      </description-html>
            <property name="vgpu" type-id-ref="java.lang.String"
      vmodl-name="vgpu"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The vGPU configuration type exposed by a VMIOP plugin.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="VirtualMachineSoundInfo"
      type-id="vim.vm.SoundInfo"
      vmodl-name="vim.vm.SoundInfo"
      version-id-ref="vim.version.version2"
      base-type-id="vim.vm.TargetInfo"
      >
      <description-html>
         <![CDATA[SoundInfo class contains information about a physical sound
 card on the host.]]>
      </description-html>
   </data-object>
   <data-object name="ExtensionManagerIpAllocationUsage"
      type-id="vim.ExtensionManager.IpAllocationUsage"
      vmodl-name="vim.ExtensionManager.IpAllocationUsage"
      enclosing-type-id-ref="vim.ExtensionManager"
      version-id-ref="vim.version.version8"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object type contains usage information about an
 extension's IP allocation usage.]]>
      </description-html>
            <property name="extensionKey" type-id-ref="java.lang.String"
      vmodl-name="extensionKey"
      >
      <description-html>
         <![CDATA[Key of the extension whose usage is being
 reported.]]>
      </description-html>
      </property>

            <property name="numAddresses" type-id-ref="INT"
      vmodl-name="numAddresses"
      >
      <description-html>
         <![CDATA[Number of IP addresses allocated from IP pools.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ObjectUpdate"
      type-id="vmodl.query.PropertyCollector.ObjectUpdate"
      vmodl-name="vmodl.query.PropertyCollector.ObjectUpdate"
      enclosing-type-id-ref="vmodl.query.PropertyCollector"
      version-id-ref="vmodl.query.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The <a href="vmodl.query.PropertyCollector.ObjectUpdate.html">ObjectUpdate</a> data object type contains
  information about changes to a particular managed object. We distinguish
  updates when an object is created, destroyed, or modified, as well as
  when the object enters or leaves the set of objects dynamically
  associated with a filter.]]>
      </description-html>
            <property name="kind" type-id-ref="vmodl.query.PropertyCollector.ObjectUpdate.Kind"
      vmodl-name="kind"
      >
      <description-html>
         <![CDATA[Kind of update that caused the filter to report a change.]]>
      </description-html>
      </property>

            <property name="obj" type-id-ref="vmodl.ManagedObject"
      vmodl-name="obj"
      >
      <description-html>
         <![CDATA[Reference to the managed object to which this update applies.]]>
      </description-html>
      </property>

            <property name="changeSet" type-id-ref="vmodl.query.PropertyCollector.Change"
      vmodl-name="changeSet"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Optional set of changes to the object.  Present only if the "kind" is
  either "modify" or "enter".]]>
      </description-html>
      </property>

            <property name="missingSet" type-id-ref="vmodl.query.PropertyCollector.MissingProperty"
      vmodl-name="missingSet"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Properties whose value could not be retrieved and their associated
  faults.  Present only if the "kind" is either "modify" or "enter".]]>
      </description-html>
      </property>

      <nested-type-id-ref>vmodl.query.PropertyCollector.ObjectUpdate.Kind</nested-type-id-ref>
   </data-object>
   <data-object name="HostDiskPartitionBlockRange"
      type-id="vim.host.DiskPartitionInfo.BlockRange"
      vmodl-name="vim.host.DiskPartitionInfo.BlockRange"
      enclosing-type-id-ref="vim.host.DiskPartitionInfo"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[A BlockRange data object type describes a contiguous set of blocks
  on a disk.  A BlockRange may describe either a partition or
  unpartitioned (primordial) blocks on the disk.]]>
      </description-html>
            <property name="partition" type-id-ref="INT"
      vmodl-name="partition"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Partition number.  This number is a hint from the server indicating
  what the partition number for this block range is if the range
  corresponds to a partition.  The partition number should correlate to
  the one in the partition specification.  If sent back to the server,
  this property is ignored.]]>
      </description-html>
      </property>

            <property name="type" type-id-ref="java.lang.String"
      vmodl-name="type"
      >
      <description-html>
         <![CDATA[The type of data in the partition.<br>See <a href="vim.host.DiskPartitionInfo.Partition.html#type">type</a><br>]]>
      </description-html>
      </property>

            <property name="start" type-id-ref="vim.host.DiskDimensions.Lba"
      vmodl-name="start"
      >
      <description-html>
         <![CDATA[The starting block address of the disk range.  The block numbers start
  from zero.  The range is inclusive of the end address.]]>
      </description-html>
      </property>

            <property name="end" type-id-ref="vim.host.DiskDimensions.Lba"
      vmodl-name="end"
      >
      <description-html>
         <![CDATA[The end block address of the disk range.  The block numbers start
  from zero.  The range is inclusive of the end address.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DvsCreatedEvent"
      type-id="vim.event.DvsCreatedEvent"
      vmodl-name="vim.event.DvsCreatedEvent"
      version-id-ref="vim.version.version5"
      base-type-id="vim.event.DvsEvent"
      >
      <description-html>
         <![CDATA[A distributed virtual switch was created.]]>
      </description-html>
            <property name="parent" type-id-ref="vim.event.FolderEventArgument"
      vmodl-name="parent"
      >
      <description-html>
         <![CDATA[The folder where the DistributedVirtualSwitch is created.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostVirtualSwitchSimpleBridge"
      type-id="vim.host.VirtualSwitch.SimpleBridge"
      vmodl-name="vim.host.VirtualSwitch.SimpleBridge"
      enclosing-type-id-ref="vim.host.VirtualSwitch"
      version-id-ref="vim.version.version1"
      base-type-id="vim.host.VirtualSwitch.Bridge"
      >
      <description-html>
         <![CDATA[A bridge that is statically bound to a single physical network adapter.]]>
      </description-html>
            <property name="nicDevice" type-id-ref="java.lang.String"
      vmodl-name="nicDevice"
      >
      <description-html>
         <![CDATA[The key of the physical network adapter to be bridged.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="DvsMacNetworkRuleQualifier"
      type-id="vim.dvs.TrafficRule.MacQualifier"
      vmodl-name="vim.dvs.TrafficRule.MacQualifier"
      enclosing-type-id-ref="vim.dvs.TrafficRule"
      version-id-ref="vim.version.version9"
      base-type-id="vim.dvs.TrafficRule.Qualifier"
      >
      <description-html>
         <![CDATA[This class defines the MAC Rule Qualifier. Here MAC addresses of source
  and destination will be used for classifying packets.]]>
      </description-html>
            <property name="sourceAddress" type-id-ref="vim.MacAddress"
      vmodl-name="sourceAddress"
      is-optional="true"
      >
      <description-html>
         <![CDATA[MAC address for source.
  If this property is NULL, it will match "any MAC address".]]>
      </description-html>
      </property>

            <property name="destinationAddress" type-id-ref="vim.MacAddress"
      vmodl-name="destinationAddress"
      is-optional="true"
      >
      <description-html>
         <![CDATA[MAC address for destination.
  If this property is NULL, it will match "any MAC address".]]>
      </description-html>
      </property>

            <property name="protocol" type-id-ref="vim.IntExpression"
      vmodl-name="protocol"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Protocol used. This corresponds to the EtherType field in Ethernet
  frame. The valid values can be found from IEEE list at:
  http://standards.ieee.org/regauth/ as mentioned in RFC 5342.]]>
      </description-html>
      </property>

            <property name="vlanId" type-id-ref="vim.IntExpression"
      vmodl-name="vlanId"
      is-optional="true"
      >
      <description-html>
         <![CDATA[vlan id.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostDasEvent"
      type-id="vim.event.HostDasEvent"
      vmodl-name="vim.event.HostDasEvent"
      version-id-ref="vim.version.version2"
      base-type-id="vim.event.HostEvent"
      >
      <description-html>
         <![CDATA[Top-level event for host DAS events to extend.]]>
      </description-html>
   </data-object>
   <data-object name="VirtualMachineSriovInfo"
      type-id="vim.vm.SriovInfo"
      vmodl-name="vim.vm.SriovInfo"
      version-id-ref="vim.version.version9"
      base-type-id="vim.vm.PciPassthroughInfo"
      >
      <description-html>
         <![CDATA[Description of a SRIOV device that can be attached to a virtual machine.]]>
      </description-html>
            <property name="virtualFunction" type-id-ref="BOOLEAN"
      vmodl-name="virtualFunction"
      >
      <description-html>
         <![CDATA[Indicates whether corresponding PCI device is a virtual function
  instantiated by a SR-IOV capable device.]]>
      </description-html>
      </property>

            <property name="pnic" type-id-ref="java.lang.String"
      vmodl-name="pnic"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The name of the physical nic that is represented by a SR-IOV
  capable physical function.]]>
      </description-html>
      </property>

            <property name="devicePool" type-id-ref="vim.vm.SriovDevicePoolInfo"
      vmodl-name="devicePool"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[SRIOV DevicePool information]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="HostVFlashManagerVFlashResourceConfigSpec"
      type-id="vim.host.VFlashManager.VFlashResourceConfigSpec"
      vmodl-name="vim.host.VFlashManager.VFlashResourceConfigSpec"
      enclosing-type-id-ref="vim.host.VFlashManager"
      version-id-ref="vim.version.version9"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[vFlash resource configuration specification.]]>
      </description-html>
            <property name="vffsUuid" type-id-ref="java.lang.String"
      vmodl-name="vffsUuid"
      >
      <description-html>
         <![CDATA[The contained VFFS volume uuid.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="ProfileExecuteError"
      type-id="vim.profile.host.ExecuteResult.ExecuteError"
      vmodl-name="vim.profile.host.ExecuteResult.ExecuteError"
      enclosing-type-id-ref="vim.profile.host.ExecuteResult"
      version-id-ref="vim.version.version5"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[The <a href="vim.profile.host.ExecuteResult.ExecuteError.html">ProfileExecuteError</a> data object
 describes an error encountered during host profile execution.]]>
      </description-html>
            <property name="path" type-id-ref="vim.profile.ProfilePropertyPath"
      vmodl-name="path"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Path to the profile or policy with which the error is associated.]]>
      </description-html>
      </property>

            <property name="message" type-id-ref="vmodl.LocalizableMessage"
      vmodl-name="message"
      >
      <description-html>
         <![CDATA[Message describing the error.]]>
      </description-html>
      </property>

   </data-object>
   <data-object name="Action"
      type-id="vim.action.Action"
      vmodl-name="vim.action.Action"
      version-id-ref="vim.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[This data object type defines the action initiated by a scheduled task or alarm.
  <p>
  This is an abstract type.
  A client creates a scheduled task or an alarm each of which triggers
  an action, defined by a subclass of this type.]]>
      </description-html>
      <nested-type-id-ref>vim.action.Action.ActionParameter</nested-type-id-ref>
   </data-object>
   <data-object name="VmAcquiredMksTicketEvent"
      type-id="vim.event.VmAcquiredMksTicketEvent"
      vmodl-name="vim.event.VmAcquiredMksTicketEvent"
      version-id-ref="vim.version.version2"
      base-type-id="vim.event.VmEvent"
      >
      <description-html>
         <![CDATA[This event records a user successfully acquiring an MKS ticket]]>
      </description-html>
   </data-object>
   <data-object name="PropertyFilterSpec"
      type-id="vmodl.query.PropertyCollector.FilterSpec"
      vmodl-name="vmodl.query.PropertyCollector.FilterSpec"
      enclosing-type-id-ref="vmodl.query.PropertyCollector"
      version-id-ref="vmodl.query.version.version1"
      base-type-id="vmodl.DynamicData"
      >
      <description-html>
         <![CDATA[Specify the property data that is included in a filter. A filter can
  specify part of a single managed object, or parts of multiple related
  managed objects in an inventory hierarchy - for example, to collect
  updates from all virtual machines in a given folder.]]>
      </description-html>
            <property name="propSet" type-id-ref="vmodl.query.PropertyCollector.PropertySpec"
      vmodl-name="propSet"
      is-array="true"
      >
      <description-html>
         <![CDATA[Set of properties to include in the filter, specified for each object
  type.]]>
      </description-html>
      </property>

            <property name="objectSet" type-id-ref="vmodl.query.PropertyCollector.ObjectSpec"
      vmodl-name="objectSet"
      is-array="true"
      >
      <description-html>
         <![CDATA[Set of specifications that determine the objects to filter.]]>
      </description-html>
      </property>

            <property name="reportMissingObjectsInResults" type-id-ref="BOOLEAN"
      vmodl-name="reportMissingObjectsInResults"
      version-id-ref="vmodl.query.version.version3"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Control how to report missing objects during filter creation.

  <p> If false or unset and <a href="vmodl.query.PropertyCollector.FilterSpec.html#objectSet">objectSet</a> refers to missing objects,
  filter creation will fail with a <a href="vmodl.fault.ManagedObjectNotFound.html">ManagedObjectNotFound</a> fault.

  <p> If true and <a href="vmodl.query.PropertyCollector.FilterSpec.html#objectSet">objectSet</a> refers
  to missing objects, filter creation will not fail and missing objects
  will be reported via filter results. This is the recommended setting
  when <a href="vmodl.query.PropertyCollector.FilterSpec.html#objectSet">objectSet</a> refers to
  transient objects.

  <p> In an <a href="vmodl.query.PropertyCollector.UpdateSet.html">UpdateSet</a> missing objects will
  appear in the <a href="vmodl.query.PropertyCollector.FilterUpdate.html#missingSet">missingSet</a> field.

  <p> In a <a href="vmodl.query.PropertyCollector.RetrieveResult.html">RetrieveResult</a> missing objects will
  simply be omitted from the objects field.

  <p> For a call to <a href="vmodl.query.PropertyCollector.html#retrieveContents">RetrieveProperties</a> missing objects will simply
  be omitted from the results.]]>
      </description-html>
      </property>

   </data-object>
   </data-objects>
   <managed-objects>
   <managed-object name="TaskManager"
      type-id="vim.TaskManager"
      vmodl-name="vim.TaskManager"
      version-id-ref="vim.version.version1"
      >
      <description-html>
         <![CDATA[The TaskManager managed object provides an interface for creating and managing
  <a href="vim.Task.html">Task</a> managed objects. Many operations are non-blocking,
  returning a <a href="vim.Task.html">Task</a> managed object that can be monitored by a
  client application. <a href="vim.Task.html">Task</a> managed objects may also be
  accessed through the TaskManager.]]>
      </description-html>
            <property name="recentTask" type-id-ref="vim.Task"
      vmodl-name="recentTask"
      is-array="true"
      is-optional="true"
      privilege="System.View"
      >
      <description-html>
         <![CDATA[A list of <a href="vim.Task.html">Task</a> managed objects that completed recently,
  that are currently running, or that are queued to run.
  </ul>
  <p>
  The list contains only <a href="vim.Task.html">Task</a> objects that the client
  has permission to access, which is determined by having permission to
  access the <a href="vim.Task.html">Task</a> object's managed <a href="vim.TaskInfo.html#entity">entity</a>.
  <p>
  The completed <a href="vim.Task.html">Task</a> objects by default include only
  <a href="vim.Task.html">Task</a> objects that completed within the past 10 minutes.
  When connected to vCenter Server, there is an additional default limitation
  that each of the completed <a href="vim.Task.html">Task</a> objects in this list is one
  of the last 200 completed <a href="vim.Task.html">Task</a> objects.
  <p>
  This property should not be used for tracking <a href="vim.Task.html">Task</a>
  completion. Generally, a <a href="vim.view.ListView.html">ListView</a> is a better way to
  monitor a specific set of <a href="vim.Task.html">Task</a> objects.

  In releases after vSphere API 5.0, vSphere Servers might not
  generate property collector update notifications for this property.
  To obtain the latest value of the property, you can use
  PropertyCollector methods RetrievePropertiesEx or WaitForUpdatesEx.
  If you use the PropertyCollector.WaitForUpdatesEx method, specify
  an empty string for the version parameter. Any other version value will not
  produce any property values as no updates are generated.]]>
      </description-html>
      </property>

            <property name="description" type-id-ref="vim.TaskDescription"
      vmodl-name="description"
      privilege="System.View"
      >
      <description-html>
         <![CDATA[Locale-specific, static strings that describe <a href="vim.Task.html">Task</a>
  information to users.]]>
      </description-html>
      </property>

            <property name="maxCollector" type-id-ref="INT"
      vmodl-name="maxCollector"
      privilege="System.View"
      >
      <description-html>
         <![CDATA[Maximum number of <a href="vim.TaskHistoryCollector.html">TaskHistoryCollector</a>
  data objects that can exist concurrently, per client.]]>
      </description-html>
      </property>

   <method name="CreateCollectorForTasks"
      vmodl-name="createCollector"
      privilege="System.View"
      type-id-ref="vim.TaskHistoryCollector"
      >
      <description-html>
         <![CDATA[Creates a <a href="vim.TaskHistoryCollector.html">TaskHistoryCollector</a>, a
  specialized <a href="vim.HistoryCollector.html">HistoryCollector</a> that gathers
  <a href="vim.TaskInfo.html">TaskInfo</a> data objects.
  <p>
  A <a href="vim.TaskHistoryCollector.html">TaskHistoryCollector</a> does not persist
  beyond the current client session.]]>
      </description-html>
      <parameter name="filter" type-id-ref="vim.TaskFilterSpec"
      vmodl-name="filter"
      version-id-ref="vim.version.version1"
      privilege="filter"
      >
      <description-html>
         <![CDATA[The specification for the task query filter.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if there are more than the maximum number of
                       task collectors.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[The task collector based on the filter.]]>
      </return-value-description-html>
   </method>
   <method name="CreateTask"
      vmodl-name="createTask"
      version-id-ref="vim.version.version2"
      privilege="Task.Create"
      type-id-ref="vim.TaskInfo"
      >
      <description-html>
         <![CDATA[Creates a new <a href="vim.Task.html">Task</a>, specifying the object with which
  the <a href="vim.Task.html">Task</a> is associated, the type of task,
  and whether the task is cancelable. Use this operation in conjunction
  with the <a href="vim.ExtensionManager.html">ExtensionManager</a>.
  <p>]]>
      </description-html>
      <parameter name="obj" type-id-ref="vmodl.ManagedObject"
      vmodl-name="obj"
      version-id-ref="vim.version.version2"
      privilege="obj"
      >
      <description-html>
         <![CDATA[ManagedObject with which Task will be associated]]>
      </description-html>
      </parameter>
      <parameter name="taskTypeId" type-id-ref="java.lang.String"
      vmodl-name="taskTypeId"
      version-id-ref="vim.version.version2"
      privilege="taskTypeId"
      >
      <description-html>
         <![CDATA[Extension registered task type identifier
    for type of task being created]]>
      </description-html>
      </parameter>
      <parameter name="initiatedBy" type-id-ref="java.lang.String"
      vmodl-name="initiatedBy"
      version-id-ref="vim.version.version2"
      is-optional="true"
      privilege="initiatedBy"
      >
      <description-html>
         <![CDATA[The name of the user on whose behalf the
    Extension is creating the task]]>
      </description-html>
      </parameter>
      <parameter name="cancelable" type-id-ref="BOOLEAN"
      vmodl-name="cancelable"
      version-id-ref="vim.version.version2"
      privilege="cancelable"
      >
      <description-html>
         <![CDATA[True if the task should be cancelable,
    false otherwise]]>
      </description-html>
      </parameter>
      <parameter name="parentTaskKey" type-id-ref="java.lang.String"
      vmodl-name="parentTaskKey"
      version-id-ref="vim.version.version2"
      is-optional="true"
      privilege="parentTaskKey"
      >
      <description-html>
         <![CDATA[Key of the task that is the parent of this task]]>
      </description-html>
      </parameter>
      <parameter name="activationId" type-id-ref="java.lang.String"
      vmodl-name="activationId"
      version-id-ref="vim.version.version2"
      is-optional="true"
      privilege="activationId"
      >
      <description-html>
         <![CDATA[Activation Id is a client-provided token to link an
    API call with a task. When provided, the activationId is added to the
    <a href="vim.TaskInfo.html">TaskInfo</a>]]>
      </description-html>
      </parameter>
      <return-value-description-html>
         <![CDATA[<a href="vim.TaskInfo.html">TaskInfo</a> data object describing the new task]]>
      </return-value-description-html>
   </method>
   </managed-object>
   <managed-object name="GuestFileManager"
      type-id="vim.vm.guest.FileManager"
      vmodl-name="vim.vm.guest.FileManager"
      version-id-ref="vim.version.version7"
      >
      <description-html>
         <![CDATA[FileManager is the managed object that provides APIs
 to manipulate the guest operating system files.]]>
      </description-html>
      <nested-type-id-ref>vim.vm.guest.FileManager.FileAttributes</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.guest.FileManager.PosixFileAttributes</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.guest.FileManager.WindowsFileAttributes</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.guest.FileManager.FileInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.guest.FileManager.ListFileInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.guest.FileManager.FileTransferInformation</nested-type-id-ref>
   <method name="MakeDirectoryInGuest"
      vmodl-name="makeDirectory"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Creates a directory in the guest OS
 <p>]]>
      </description-html>
      <parameter name="vm" type-id-ref="vim.VirtualMachine"
      vmodl-name="vm"
      version-id-ref="vim.version.version7"
      privilege="vm"
      >
      <description-html>
         <![CDATA[Virtual Machine to perform the operation on.]]>
      </description-html>
      </parameter>
      <parameter name="auth" type-id-ref="vim.vm.guest.GuestAuthentication"
      vmodl-name="auth"
      version-id-ref="vim.version.version7"
      privilege="auth"
      >
      <description-html>
         <![CDATA[The guest authentication data.  See
    <a href="vim.vm.guest.GuestAuthentication.html">GuestAuthentication</a>.]]>
      </description-html>
      </parameter>
      <parameter name="directoryPath" type-id-ref="java.lang.String"
      vmodl-name="directoryPath"
      version-id-ref="vim.version.version7"
      privilege="directoryPath"
      >
      <description-html>
         <![CDATA[The complete path to the directory to be created.]]>
      </description-html>
      </parameter>
      <parameter name="createParentDirectories" type-id-ref="BOOLEAN"
      vmodl-name="createParentDirectories"
      version-id-ref="vim.version.version7"
      privilege="createParentDirectories"
      >
      <description-html>
         <![CDATA[Whether any parent directories
    are to be created.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.GuestOperationsFault">
      <fault-description-html>
         <![CDATA[if there is an error processing a guest
    operation.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the operation cannot be performed because of the
     virtual machine's current state.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.TaskInProgress">
      <fault-description-html>
         <![CDATA[if the virtual machine is busy.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.FileFault">
      <fault-description-html>
         <![CDATA[if there is a file error in the guest operating system.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.GuestOperationsUnavailable">
      <fault-description-html>
         <![CDATA[if the VM agent for guest operations
    is not running.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidPowerState">
      <fault-description-html>
         <![CDATA[if the VM is not powered on.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.GuestPermissionDenied">
      <fault-description-html>
         <![CDATA[if the directory cannot be created because
    the guest authentication will not allow the operation.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidGuestLogin">
      <fault-description-html>
         <![CDATA[if the the guest authentication information
    was not accepted.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.FileAlreadyExists">
      <fault-description-html>
         <![CDATA[if the specified object already exists.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.GuestComponentsOutOfDate">
      <fault-description-html>
         <![CDATA[if the guest agent is too old to support
    the operation.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.OperationNotSupportedByGuest">
      <fault-description-html>
         <![CDATA[if the operation is not supported
    by the guest OS.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.OperationDisabledByGuest">
      <fault-description-html>
         <![CDATA[if the operation is not enabled due to
    guest agent configuration.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="DeleteFileInGuest"
      vmodl-name="deleteFile"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Deletes a file in the guest OS
 <p>]]>
      </description-html>
      <parameter name="vm" type-id-ref="vim.VirtualMachine"
      vmodl-name="vm"
      version-id-ref="vim.version.version7"
      privilege="vm"
      >
      <description-html>
         <![CDATA[Virtual Machine to perform the operation on.]]>
      </description-html>
      </parameter>
      <parameter name="auth" type-id-ref="vim.vm.guest.GuestAuthentication"
      vmodl-name="auth"
      version-id-ref="vim.version.version7"
      privilege="auth"
      >
      <description-html>
         <![CDATA[The guest authentication data.  See
    <a href="vim.vm.guest.GuestAuthentication.html">GuestAuthentication</a>.]]>
      </description-html>
      </parameter>
      <parameter name="filePath" type-id-ref="java.lang.String"
      vmodl-name="filePath"
      version-id-ref="vim.version.version7"
      privilege="filePath"
      >
      <description-html>
         <![CDATA[The complete path to the file or symbolic link to be deleted.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.GuestOperationsFault">
      <fault-description-html>
         <![CDATA[if there is an error processing a guest
    operation.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the operation cannot be performed because of the
     virtual machine's current state.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.TaskInProgress">
      <fault-description-html>
         <![CDATA[if the virtual machine is busy.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.FileFault">
      <fault-description-html>
         <![CDATA[if there is a file error in the guest operating system.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.GuestOperationsUnavailable">
      <fault-description-html>
         <![CDATA[if the VM agent for guest operations
    is not running.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidPowerState">
      <fault-description-html>
         <![CDATA[if the VM is not powered on.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.GuestPermissionDenied">
      <fault-description-html>
         <![CDATA[if the operation fails because
    the guest authentication will not allow the operation.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidGuestLogin">
      <fault-description-html>
         <![CDATA[if the the guest authentication information
    was not accepted.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.NotAFile">
      <fault-description-html>
         <![CDATA[if the specified object is not a file.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.GuestComponentsOutOfDate">
      <fault-description-html>
         <![CDATA[if the guest agent is too old to support
    the operation.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.OperationNotSupportedByGuest">
      <fault-description-html>
         <![CDATA[if the operation is not supported
    by the guest OS.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.OperationDisabledByGuest">
      <fault-description-html>
         <![CDATA[if the operation is not enabled due to
    guest agent configuration.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="DeleteDirectoryInGuest"
      vmodl-name="deleteDirectory"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Deletes a directory in the guest OS.
 <p>]]>
      </description-html>
      <parameter name="vm" type-id-ref="vim.VirtualMachine"
      vmodl-name="vm"
      version-id-ref="vim.version.version7"
      privilege="vm"
      >
      <description-html>
         <![CDATA[Virtual Machine to perform the operation on.]]>
      </description-html>
      </parameter>
      <parameter name="auth" type-id-ref="vim.vm.guest.GuestAuthentication"
      vmodl-name="auth"
      version-id-ref="vim.version.version7"
      privilege="auth"
      >
      <description-html>
         <![CDATA[The guest authentication data.  See
    <a href="vim.vm.guest.GuestAuthentication.html">GuestAuthentication</a>.]]>
      </description-html>
      </parameter>
      <parameter name="directoryPath" type-id-ref="java.lang.String"
      vmodl-name="directoryPath"
      version-id-ref="vim.version.version7"
      privilege="directoryPath"
      >
      <description-html>
         <![CDATA[The complete path to the directory to be deleted.]]>
      </description-html>
      </parameter>
      <parameter name="recursive" type-id-ref="BOOLEAN"
      vmodl-name="recursive"
      version-id-ref="vim.version.version7"
      privilege="recursive"
      >
      <description-html>
         <![CDATA[If true, all subdirectories are also deleted.
    If false, the directory must be empty for the operation to succeed.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.GuestOperationsFault">
      <fault-description-html>
         <![CDATA[if there is an error processing a guest
    operation.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the operation cannot be performed because of the
     virtual machine's current state.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.TaskInProgress">
      <fault-description-html>
         <![CDATA[if the virtual machine is busy.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.FileFault">
      <fault-description-html>
         <![CDATA[if there is a file error in the guest operating system.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.GuestOperationsUnavailable">
      <fault-description-html>
         <![CDATA[if the VM agent for guest operations
    is not running.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidPowerState">
      <fault-description-html>
         <![CDATA[if the VM is not powered on.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.GuestPermissionDenied">
      <fault-description-html>
         <![CDATA[if the operation fails because
    the guest authentication will not allow the operation.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidGuestLogin">
      <fault-description-html>
         <![CDATA[if the the guest authentication information
    was not accepted.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.NotADirectory">
      <fault-description-html>
         <![CDATA[if the specified object is not a directory.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.GuestComponentsOutOfDate">
      <fault-description-html>
         <![CDATA[if the guest agent is too old to support
    the operation.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.OperationNotSupportedByGuest">
      <fault-description-html>
         <![CDATA[if the operation is not supported
    by the guest OS.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.OperationDisabledByGuest">
      <fault-description-html>
         <![CDATA[if the operation is not enabled due to
    guest agent configuration.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="MoveDirectoryInGuest"
      vmodl-name="moveDirectory"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Moves or renames a directory in the guest.
 <p>]]>
      </description-html>
      <parameter name="vm" type-id-ref="vim.VirtualMachine"
      vmodl-name="vm"
      version-id-ref="vim.version.version7"
      privilege="vm"
      >
      <description-html>
         <![CDATA[Virtual Machine to perform the operation on.]]>
      </description-html>
      </parameter>
      <parameter name="auth" type-id-ref="vim.vm.guest.GuestAuthentication"
      vmodl-name="auth"
      version-id-ref="vim.version.version7"
      privilege="auth"
      >
      <description-html>
         <![CDATA[The guest authentication data.  See
    <a href="vim.vm.guest.GuestAuthentication.html">GuestAuthentication</a>.]]>
      </description-html>
      </parameter>
      <parameter name="srcDirectoryPath" type-id-ref="java.lang.String"
      vmodl-name="srcDirectoryPath"
      version-id-ref="vim.version.version7"
      privilege="srcDirectoryPath"
      >
      <description-html>
         <![CDATA[The complete path to the directory to be moved.]]>
      </description-html>
      </parameter>
      <parameter name="dstDirectoryPath" type-id-ref="java.lang.String"
      vmodl-name="dstDirectoryPath"
      version-id-ref="vim.version.version7"
      privilege="dstDirectoryPath"
      >
      <description-html>
         <![CDATA[The complete path to the where the directory is
    moved or its new name. It cannot be a path to an existing directory
    or an existing file.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.GuestOperationsFault">
      <fault-description-html>
         <![CDATA[if there is an error processing a guest
    operation.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the operation cannot be performed because of the
     virtual machine's current state.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.TaskInProgress">
      <fault-description-html>
         <![CDATA[if the virtual machine is busy.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.FileFault">
      <fault-description-html>
         <![CDATA[if there is a file error in the guest operating system.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.GuestOperationsUnavailable">
      <fault-description-html>
         <![CDATA[if the VM agent for guest operations
    is not running.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidPowerState">
      <fault-description-html>
         <![CDATA[if the VM is not powered on.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.GuestPermissionDenied">
      <fault-description-html>
         <![CDATA[if the operation fails because
    the guest authentication will not allow the operation.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidGuestLogin">
      <fault-description-html>
         <![CDATA[if the the guest authentication information
    was not accepted.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.GuestComponentsOutOfDate">
      <fault-description-html>
         <![CDATA[if the guest agent is too old to support
    the operation.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.OperationNotSupportedByGuest">
      <fault-description-html>
         <![CDATA[if the operation is not supported
    by the guest OS.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.OperationDisabledByGuest">
      <fault-description-html>
         <![CDATA[if the operation is not enabled due to
    guest agent configuration.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="MoveFileInGuest"
      vmodl-name="moveFile"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Renames a file in the guest.
 <p>]]>
      </description-html>
      <parameter name="vm" type-id-ref="vim.VirtualMachine"
      vmodl-name="vm"
      version-id-ref="vim.version.version7"
      privilege="vm"
      >
      <description-html>
         <![CDATA[Virtual Machine to perform the operation on.]]>
      </description-html>
      </parameter>
      <parameter name="auth" type-id-ref="vim.vm.guest.GuestAuthentication"
      vmodl-name="auth"
      version-id-ref="vim.version.version7"
      privilege="auth"
      >
      <description-html>
         <![CDATA[The guest authentication data.  See
    <a href="vim.vm.guest.GuestAuthentication.html">GuestAuthentication</a>.]]>
      </description-html>
      </parameter>
      <parameter name="srcFilePath" type-id-ref="java.lang.String"
      vmodl-name="srcFilePath"
      version-id-ref="vim.version.version7"
      privilege="srcFilePath"
      >
      <description-html>
         <![CDATA[The complete path to the original file or
    symbolic link to be moved.]]>
      </description-html>
      </parameter>
      <parameter name="dstFilePath" type-id-ref="java.lang.String"
      vmodl-name="dstFilePath"
      version-id-ref="vim.version.version7"
      privilege="dstFilePath"
      >
      <description-html>
         <![CDATA[The complete path to the where the file is renamed.
    It cannot be a path to an existing directory.]]>
      </description-html>
      </parameter>
      <parameter name="overwrite" type-id-ref="BOOLEAN"
      vmodl-name="overwrite"
      version-id-ref="vim.version.version7"
      privilege="overwrite"
      >
      <description-html>
         <![CDATA[If set, the destination file is clobbered.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.GuestOperationsFault">
      <fault-description-html>
         <![CDATA[if there is an error processing a guest
    operation.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the operation cannot be performed because of the
     virtual machine's current state.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.TaskInProgress">
      <fault-description-html>
         <![CDATA[if the virtual machine is busy.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.FileFault">
      <fault-description-html>
         <![CDATA[if there is a file error in the guest operating system.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.GuestOperationsUnavailable">
      <fault-description-html>
         <![CDATA[if the VM agent for guest operations
    is not running.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidPowerState">
      <fault-description-html>
         <![CDATA[if the VM is not powered on.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.GuestPermissionDenied">
      <fault-description-html>
         <![CDATA[if the operation fails because
    the guest authentication will not allow the operation.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidGuestLogin">
      <fault-description-html>
         <![CDATA[if the the guest authentication information
    was not accepted.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.GuestComponentsOutOfDate">
      <fault-description-html>
         <![CDATA[if the guest agent is too old to support
    the operation.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.OperationNotSupportedByGuest">
      <fault-description-html>
         <![CDATA[if the operation is not supported
    by the guest OS.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.OperationDisabledByGuest">
      <fault-description-html>
         <![CDATA[if the operation is not enabled due to
    guest agent configuration.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="CreateTemporaryFileInGuest"
      vmodl-name="createTemporaryFile"
      type-id-ref="java.lang.String"
      >
      <description-html>
         <![CDATA[Creates a temporary file.
 <p>
 Creates a new unique temporary file for the user to use as needed.
 The user is responsible for removing it when it is no longer needed.
 <p>]]>
      </description-html>
      <parameter name="vm" type-id-ref="vim.VirtualMachine"
      vmodl-name="vm"
      version-id-ref="vim.version.version7"
      privilege="vm"
      >
      <description-html>
         <![CDATA[Virtual Machine to perform the operation on.]]>
      </description-html>
      </parameter>
      <parameter name="auth" type-id-ref="vim.vm.guest.GuestAuthentication"
      vmodl-name="auth"
      version-id-ref="vim.version.version7"
      privilege="auth"
      >
      <description-html>
         <![CDATA[The guest authentication data.  See
    <a href="vim.vm.guest.GuestAuthentication.html">GuestAuthentication</a>.]]>
      </description-html>
      </parameter>
      <parameter name="prefix" type-id-ref="java.lang.String"
      vmodl-name="prefix"
      version-id-ref="vim.version.version7"
      privilege="prefix"
      >
      <description-html>
         <![CDATA[The prefix to be given to the new temporary file.]]>
      </description-html>
      </parameter>
      <parameter name="suffix" type-id-ref="java.lang.String"
      vmodl-name="suffix"
      version-id-ref="vim.version.version7"
      privilege="suffix"
      >
      <description-html>
         <![CDATA[The suffix to be given to the new temporary file.]]>
      </description-html>
      </parameter>
      <parameter name="directoryPath" type-id-ref="java.lang.String"
      vmodl-name="directoryPath"
      version-id-ref="vim.version.version7"
      is-optional="true"
      privilege="directoryPath"
      >
      <description-html>
         <![CDATA[The complete path to the directory in which to
    create the file.
    If unset, or an empty string, a guest-specific location will be used.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.GuestOperationsFault">
      <fault-description-html>
         <![CDATA[if there is an error processing a guest
    operation.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the operation cannot be performed because of the
     virtual machine's current state.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.TaskInProgress">
      <fault-description-html>
         <![CDATA[if the virtual machine is busy.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.FileFault">
      <fault-description-html>
         <![CDATA[if there is a file error in the guest operating system.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.GuestOperationsUnavailable">
      <fault-description-html>
         <![CDATA[if the VM agent for guest operations
    is not running.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidPowerState">
      <fault-description-html>
         <![CDATA[if the VM is not powered on.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.GuestPermissionDenied">
      <fault-description-html>
         <![CDATA[if the operation fails because
    the guest authentication will not allow the operation.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidGuestLogin">
      <fault-description-html>
         <![CDATA[if the the guest authentication information
    was not accepted.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.GuestComponentsOutOfDate">
      <fault-description-html>
         <![CDATA[if the guest agent is too old to support
    the operation.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.OperationNotSupportedByGuest">
      <fault-description-html>
         <![CDATA[if the operation is not supported
    by the guest OS.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.OperationDisabledByGuest">
      <fault-description-html>
         <![CDATA[if the operation is not enabled due to
    guest agent configuration.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[The absolute path of the temporary file that is created.]]>
      </return-value-description-html>
   </method>
   <method name="CreateTemporaryDirectoryInGuest"
      vmodl-name="createTemporaryDirectory"
      type-id-ref="java.lang.String"
      >
      <description-html>
         <![CDATA[Creates a temporary directory.
 <p>
 Creates a new unique temporary directory for the user to use as needed.
 The user is responsible for removing it when it is no longer needed.
 <p>]]>
      </description-html>
      <parameter name="vm" type-id-ref="vim.VirtualMachine"
      vmodl-name="vm"
      version-id-ref="vim.version.version7"
      privilege="vm"
      >
      <description-html>
         <![CDATA[Virtual Machine to perform the operation on.]]>
      </description-html>
      </parameter>
      <parameter name="auth" type-id-ref="vim.vm.guest.GuestAuthentication"
      vmodl-name="auth"
      version-id-ref="vim.version.version7"
      privilege="auth"
      >
      <description-html>
         <![CDATA[The guest authentication data.  See
    <a href="vim.vm.guest.GuestAuthentication.html">GuestAuthentication</a>.]]>
      </description-html>
      </parameter>
      <parameter name="prefix" type-id-ref="java.lang.String"
      vmodl-name="prefix"
      version-id-ref="vim.version.version7"
      privilege="prefix"
      >
      <description-html>
         <![CDATA[The prefix to be given to the new temporary directory.]]>
      </description-html>
      </parameter>
      <parameter name="suffix" type-id-ref="java.lang.String"
      vmodl-name="suffix"
      version-id-ref="vim.version.version7"
      privilege="suffix"
      >
      <description-html>
         <![CDATA[The suffix to be given to the new temporary directory.]]>
      </description-html>
      </parameter>
      <parameter name="directoryPath" type-id-ref="java.lang.String"
      vmodl-name="directoryPath"
      version-id-ref="vim.version.version7"
      is-optional="true"
      privilege="directoryPath"
      >
      <description-html>
         <![CDATA[The complete path to the directory in which to create the
    new directory. If unset or an empty string, a guest-specific location
    will be used.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.GuestOperationsFault">
      <fault-description-html>
         <![CDATA[if there is an error processing a guest
    operation.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the operation cannot be performed because of the
     virtual machine's current state.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.TaskInProgress">
      <fault-description-html>
         <![CDATA[if the virtual machine is busy.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.FileFault">
      <fault-description-html>
         <![CDATA[if there is a file error in the guest operating system.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.GuestOperationsUnavailable">
      <fault-description-html>
         <![CDATA[if the VM agent for guest operations
    is not running.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidPowerState">
      <fault-description-html>
         <![CDATA[if the VM is not powered on.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.GuestPermissionDenied">
      <fault-description-html>
         <![CDATA[if the operation fails because
    the guest authentication will not allow the operation.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidGuestLogin">
      <fault-description-html>
         <![CDATA[if the the guest authentication information
    was not accepted.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.GuestComponentsOutOfDate">
      <fault-description-html>
         <![CDATA[if the guest agent is too old to support
    the operation.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.OperationNotSupportedByGuest">
      <fault-description-html>
         <![CDATA[if the operation is not supported
    by the guest OS.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.OperationDisabledByGuest">
      <fault-description-html>
         <![CDATA[if the operation is not enabled due to
    guest agent configuration.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[The absolute path of the temporary directory that is created.]]>
      </return-value-description-html>
   </method>
   <method name="ListFilesInGuest"
      vmodl-name="listFiles"
      type-id-ref="vim.vm.guest.FileManager.ListFileInfo"
      >
      <description-html>
         <![CDATA[Returns information about files or directories in the guest.
 <p>
 The results could be extremely large, so to minimize the size
 of the return value for cases where a UI only needs to show
 the first N results, the answer is batched.  Files are returned in
 OS-specific (inode) order.  If the directory is modified between
 queries, missing or duplicate results can occur.
 <p>]]>
      </description-html>
      <parameter name="vm" type-id-ref="vim.VirtualMachine"
      vmodl-name="vm"
      version-id-ref="vim.version.version7"
      privilege="vm"
      >
      <description-html>
         <![CDATA[Virtual Machine to perform the operation on.]]>
      </description-html>
      </parameter>
      <parameter name="auth" type-id-ref="vim.vm.guest.GuestAuthentication"
      vmodl-name="auth"
      version-id-ref="vim.version.version7"
      privilege="auth"
      >
      <description-html>
         <![CDATA[The guest authentication data.  See
    <a href="vim.vm.guest.GuestAuthentication.html">GuestAuthentication</a>.]]>
      </description-html>
      </parameter>
      <parameter name="filePath" type-id-ref="java.lang.String"
      vmodl-name="filePath"
      version-id-ref="vim.version.version7"
      privilege="filePath"
      >
      <description-html>
         <![CDATA[The complete path to the directory or file to query.]]>
      </description-html>
      </parameter>
      <parameter name="index" type-id-ref="INT"
      vmodl-name="index"
      version-id-ref="vim.version.version7"
      is-optional="true"
      privilege="index"
      >
      <description-html>
         <![CDATA[Which result to start the list with.  The default is 0.]]>
      </description-html>
      </parameter>
      <parameter name="maxResults" type-id-ref="INT"
      vmodl-name="maxResults"
      version-id-ref="vim.version.version7"
      is-optional="true"
      privilege="maxResults"
      >
      <description-html>
         <![CDATA[The maximum number of results to return.  The default
    is 50.]]>
      </description-html>
      </parameter>
      <parameter name="matchPattern" type-id-ref="java.lang.String"
      vmodl-name="matchPattern"
      version-id-ref="vim.version.version7"
      is-optional="true"
      privilege="matchPattern"
      >
      <description-html>
         <![CDATA[A filter for the return values.
    Match patterns are specified using perl-compatible regular
    expressions.
    If matchPattern is unset, then the pattern '.*' is used.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.GuestOperationsFault">
      <fault-description-html>
         <![CDATA[if there is an error processing a guest
    operation.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the operation cannot be performed because of the
     virtual machine's current state.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.TaskInProgress">
      <fault-description-html>
         <![CDATA[if the virtual machine is busy.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.FileFault">
      </fault>
      <fault type-id-ref="vim.fault.GuestOperationsUnavailable">
      <fault-description-html>
         <![CDATA[if the VM agent for guest operations
    is not running.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidPowerState">
      <fault-description-html>
         <![CDATA[if the VM is not powered on.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.GuestPermissionDenied">
      <fault-description-html>
         <![CDATA[if the operation fails because
    the guest authentication will not allow the operation.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidGuestLogin">
      <fault-description-html>
         <![CDATA[if the the guest authentication information
    was not accepted.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.GuestComponentsOutOfDate">
      <fault-description-html>
         <![CDATA[if the guest agent is too old to support
    the operation.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.OperationNotSupportedByGuest">
      <fault-description-html>
         <![CDATA[if the operation is not supported
    by the guest OS.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.OperationDisabledByGuest">
      <fault-description-html>
         <![CDATA[if the operation is not enabled due to
    guest agent configuration.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[A <a href="vim.vm.guest.FileManager.ListFileInfo.html">GuestListFileInfo</a>
    object containing information for all the matching files
    in the filePath and the number of files left to be returned.]]>
      </return-value-description-html>
   </method>
   <method name="ChangeFileAttributesInGuest"
      vmodl-name="changeFileAttributes"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Changes the file attributes of a specified file inside the guest.
 <p>]]>
      </description-html>
      <parameter name="vm" type-id-ref="vim.VirtualMachine"
      vmodl-name="vm"
      version-id-ref="vim.version.version7"
      privilege="vm"
      >
      <description-html>
         <![CDATA[Virtual Machine to perform the operation on.]]>
      </description-html>
      </parameter>
      <parameter name="auth" type-id-ref="vim.vm.guest.GuestAuthentication"
      vmodl-name="auth"
      version-id-ref="vim.version.version7"
      privilege="auth"
      >
      <description-html>
         <![CDATA[The guest authentication data.  See
    <a href="vim.vm.guest.GuestAuthentication.html">GuestAuthentication</a>.]]>
      </description-html>
      </parameter>
      <parameter name="guestFilePath" type-id-ref="java.lang.String"
      vmodl-name="guestFilePath"
      version-id-ref="vim.version.version7"
      privilege="guestFilePath"
      >
      <description-html>
         <![CDATA[The complete path to the file to be copied in
     the guest.  If the file points to an symbolic link, then the
     attributes of the target file are changed.]]>
      </description-html>
      </parameter>
      <parameter name="fileAttributes" type-id-ref="vim.vm.guest.FileManager.FileAttributes"
      vmodl-name="fileAttributes"
      version-id-ref="vim.version.version7"
      privilege="fileAttributes"
      >
      <description-html>
         <![CDATA[Specifies the different file attributes of the
    guest file to be changed.
    See <a href="vim.vm.guest.FileManager.FileAttributes.html">GuestFileAttributes</a>.
    If any property is not specified, then the specific attribute of
    the file will be unchanged.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.GuestOperationsFault">
      <fault-description-html>
         <![CDATA[if there is an error processing a guest
    operation.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the operation cannot be performed because of the
     virtual machine's current state.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.TaskInProgress">
      <fault-description-html>
         <![CDATA[if the virtual machine is busy.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.FileFault">
      <fault-description-html>
         <![CDATA[if there is a file error in the guest operating system.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.GuestOperationsUnavailable">
      <fault-description-html>
         <![CDATA[if the VM agent for guest operations
    is not running.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidPowerState">
      <fault-description-html>
         <![CDATA[if the VM is not powered on.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.GuestPermissionDenied">
      <fault-description-html>
         <![CDATA[if the operation fails because
    the guest authentication will not allow the operation.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidGuestLogin">
      <fault-description-html>
         <![CDATA[if the the guest authentication information
    was not accepted.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.GuestComponentsOutOfDate">
      <fault-description-html>
         <![CDATA[if the guest agent is too old to support
    the operation.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.OperationNotSupportedByGuest">
      <fault-description-html>
         <![CDATA[if the operation is not supported
    by the guest OS.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.OperationDisabledByGuest">
      <fault-description-html>
         <![CDATA[if the operation is not enabled due
    to guest agent configuration.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="InitiateFileTransferFromGuest"
      vmodl-name="initiateFileTransferFromGuest"
      type-id-ref="vim.vm.guest.FileManager.FileTransferInformation"
      >
      <description-html>
         <![CDATA[Initiates an operation to transfer a file from the guest.
 <p>
 Obtains a reference to
 <a href="vim.vm.guest.FileManager.FileTransferInformation.html">FileTransferInformation</a> object
 for the file transfer operation. The information object contains a URL
 to the file inside the guest to be transferred to the client.
 <br>
 See <a href="vim.vm.guest.FileManager.FileTransferInformation.html">FileTransferInformation</a> for
 information on how to use the information object. If the power state
 of the Virtual Machine is changed when the file transfer is in progress,
 or the Virtual Machine is migrated,
 then the transfer operation is aborted.
 <p>
 In order to ensure a secure connection to the host when transferring
 a file using HTTPS, the X.509 certificate for the host must be used
 to authenticate the remote end of the connection. The certificate of
 the host that the virtual machine is running on can be retrieved using
 the following fields:
 vm (<a href="vim.VirtualMachine.html">VirtualMachine</a>) -&gt; runtime (<a href="vim.vm.RuntimeInfo.html">VirtualMachineRuntimeInfo</a>)
 -&gt; host (<a href="vim.HostSystem.html">HostSystem</a>) -&gt; config (<a href="vim.host.ConfigInfo.html">HostConfigInfo</a>)
 -&gt; certificate.

 <p>]]>
      </description-html>
      <parameter name="vm" type-id-ref="vim.VirtualMachine"
      vmodl-name="vm"
      version-id-ref="vim.version.version7"
      privilege="vm"
      >
      <description-html>
         <![CDATA[Virtual Machine to perform the operation on.]]>
      </description-html>
      </parameter>
      <parameter name="auth" type-id-ref="vim.vm.guest.GuestAuthentication"
      vmodl-name="auth"
      version-id-ref="vim.version.version7"
      privilege="auth"
      >
      <description-html>
         <![CDATA[The guest authentication data.]]>
      </description-html>
      </parameter>
      <parameter name="guestFilePath" type-id-ref="java.lang.String"
      vmodl-name="guestFilePath"
      version-id-ref="vim.version.version7"
      privilege="guestFilePath"
      >
      <description-html>
         <![CDATA[The complete path to the file inside the guest
    that has to be transferred to the client.  It cannot be a path to
    a directory or a symbolic link.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.GuestOperationsFault">
      <fault-description-html>
         <![CDATA[if there is an error processing a guest
    operation.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the operation cannot be performed because of the
     virtual machine's current state.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.TaskInProgress">
      <fault-description-html>
         <![CDATA[if the virtual machine is busy.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.FileFault">
      <fault-description-html>
         <![CDATA[if there is a file error in the guest operating system.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.GuestOperationsUnavailable">
      <fault-description-html>
         <![CDATA[if the VM agent for guest operations
    is not running.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidPowerState">
      <fault-description-html>
         <![CDATA[if the VM is not powered on.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.GuestPermissionDenied">
      <fault-description-html>
         <![CDATA[if the operation fails because
    the guest authentication will not allow the operation.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidGuestLogin">
      <fault-description-html>
         <![CDATA[if the the guest authentication information
    was not accepted.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.GuestComponentsOutOfDate">
      <fault-description-html>
         <![CDATA[If the guest agent is too old to
    support the operation.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.OperationNotSupportedByGuest">
      <fault-description-html>
         <![CDATA[If the operation is not supported
    by the guest OS.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.OperationDisabledByGuest">
      <fault-description-html>
         <![CDATA[If the operation is not enabled due
    to guest agent configuration.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[A reference to
    <a href="vim.vm.guest.FileManager.FileTransferInformation.html">FileTransferInformation</a>.]]>
      </return-value-description-html>
   </method>
   <method name="InitiateFileTransferToGuest"
      vmodl-name="initiateFileTransferToGuest"
      type-id-ref="java.lang.String"
      >
      <description-html>
         <![CDATA[Initiates an operation to transfer a file to the guest.
 <p>
 Obtains a URL to the file inside the guest to be transferred from the
 client. The user should send a HTTP PUT request specifying the file
 content in the body of the request. Multiple PUT request cannot be
 sent to the URL simultaneously. URL will be invalidated after a
 successful PUT request is sent. If the power state of the Virtual
 Machine is changed when the file transfer is in progress, or
 the Virtual Machine is migrated, then the
 transfer operation is aborted.
 <p>
 In order to ensure a secure connection to the host when transferring
 a file using HTTPS, the X.509 certificate for the host must be used
 to authenticate the remote end of the connection. The certificate of
 the host that the virtual machine is running on can be retrieved using
 the following fields:
 vm (<a href="vim.VirtualMachine.html">VirtualMachine</a>) -&gt; runtime (<a href="vim.vm.RuntimeInfo.html">VirtualMachineRuntimeInfo</a>)
 -&gt; host (<a href="vim.HostSystem.html">HostSystem</a>) -&gt; config (<a href="vim.host.ConfigInfo.html">HostConfigInfo</a>)
 -&gt; certificate.

 <p>]]>
      </description-html>
      <parameter name="vm" type-id-ref="vim.VirtualMachine"
      vmodl-name="vm"
      version-id-ref="vim.version.version7"
      privilege="vm"
      >
      <description-html>
         <![CDATA[Virtual Machine to perform the operation on.]]>
      </description-html>
      </parameter>
      <parameter name="auth" type-id-ref="vim.vm.guest.GuestAuthentication"
      vmodl-name="auth"
      version-id-ref="vim.version.version7"
      privilege="auth"
      >
      <description-html>
         <![CDATA[The guest authentication data.  See
    <a href="vim.vm.guest.GuestAuthentication.html">GuestAuthentication</a>.]]>
      </description-html>
      </parameter>
      <parameter name="guestFilePath" type-id-ref="java.lang.String"
      vmodl-name="guestFilePath"
      version-id-ref="vim.version.version7"
      privilege="guestFilePath"
      >
      <description-html>
         <![CDATA[The complete destination path in the guest to
    transfer the file from the client.  It cannot be a path to
    a directory or a symbolic link.]]>
      </description-html>
      </parameter>
      <parameter name="fileAttributes" type-id-ref="vim.vm.guest.FileManager.FileAttributes"
      vmodl-name="fileAttributes"
      version-id-ref="vim.version.version7"
      privilege="fileAttributes"
      >
      <description-html>
         <![CDATA[File attributes of the file that has to be
    created in the guest. See <a href="vim.vm.guest.FileManager.FileAttributes.html">GuestFileAttributes</a>.
    If any file attribute is not specified, then the default value
    of that property will be set for the file.]]>
      </description-html>
      </parameter>
      <parameter name="fileSize" type-id-ref="LONG"
      vmodl-name="fileSize"
      version-id-ref="vim.version.version7"
      privilege="fileSize"
      >
      <description-html>
         <![CDATA[Size of the file to transfer to the guest in bytes.]]>
      </description-html>
      </parameter>
      <parameter name="overwrite" type-id-ref="BOOLEAN"
      vmodl-name="overwrite"
      version-id-ref="vim.version.version7"
      privilege="overwrite"
      >
      <description-html>
         <![CDATA[If set, the destination file is clobbered.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.GuestOperationsFault">
      <fault-description-html>
         <![CDATA[if there is an error processing a guest
    operation.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the operation cannot be performed because of the
     virtual machine's current state.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.TaskInProgress">
      <fault-description-html>
         <![CDATA[if the virtual machine is busy.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.FileFault">
      <fault-description-html>
         <![CDATA[if there is a file error in the guest operating system.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.GuestOperationsUnavailable">
      <fault-description-html>
         <![CDATA[if the VM agent for guest operations
    is not running.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidPowerState">
      <fault-description-html>
         <![CDATA[if the VM is not powered on.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.GuestPermissionDenied">
      <fault-description-html>
         <![CDATA[if the operation fails because
    the guest authentication will not allow the operation.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidGuestLogin">
      <fault-description-html>
         <![CDATA[if the the guest authentication information
    was not accepted.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.GuestComponentsOutOfDate">
      <fault-description-html>
         <![CDATA[If the guest agent is too old to
    support the operation.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.OperationNotSupportedByGuest">
      <fault-description-html>
         <![CDATA[If the operation is not supported
    by the guest OS.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.OperationDisabledByGuest">
      <fault-description-html>
         <![CDATA[If the operation is not enabled due to
    guest agent configuration.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[A URL to which the user has to send a PUT request.
    The host part of the URL is returned as '*' if the hostname to be
    used is the name of the server to which the call was made. For
    example, if the call is made to esx-svr-1.domain1.com, and the file
    can be uploaded to
    https://esx-svr-1.domain1.com/guestFile?id=1&token=1234,
    the URL returned may be
    https://&#42;/guestFile?id=1&token=1234.
    The client replaces the asterisk with the server name on which it
    invoked the call.

    <br>
    <br>
    The URL is valid only for 10 minutes from the time it is generated.
    Also, the URL becomes invalid whenever the virtual machine is powered
    off, suspended or unregistered.]]>
      </return-value-description-html>
   </method>
   </managed-object>
   <managed-object name="HostProfileManager"
      type-id="vim.profile.host.ProfileManager"
      vmodl-name="vim.profile.host.ProfileManager"
      version-id-ref="vim.version.version5"
      base-type-id="vim.profile.ProfileManager"
      >
      <description-html>
         <![CDATA[The <a href="vim.profile.host.ProfileManager.html">HostProfileManager</a> provides access to a list of
 <a href="vim.profile.host.HostProfile.html">HostProfile</a>s and it defines methods to manipulate
 profiles and <a href="vim.profile.host.AnswerFile.html">AnswerFile</a>s.]]>
      </description-html>
      <nested-type-id-ref>vim.profile.host.ProfileManager.TaskListRequirement</nested-type-id-ref>
      <nested-type-id-ref>vim.profile.host.ProfileManager.ConfigTaskList</nested-type-id-ref>
      <nested-type-id-ref>vim.profile.host.ProfileManager.AnswerFileCreateSpec</nested-type-id-ref>
      <nested-type-id-ref>vim.profile.host.ProfileManager.AnswerFileOptionsCreateSpec</nested-type-id-ref>
      <nested-type-id-ref>vim.profile.host.ProfileManager.AnswerFileSerializedCreateSpec</nested-type-id-ref>
      <nested-type-id-ref>vim.profile.host.ProfileManager.AnswerFileStatus</nested-type-id-ref>
      <nested-type-id-ref>vim.profile.host.ProfileManager.EntityCustomizations</nested-type-id-ref>
      <nested-type-id-ref>vim.profile.host.ProfileManager.StructuredCustomizations</nested-type-id-ref>
      <nested-type-id-ref>vim.profile.host.ProfileManager.HostToConfigSpecMap</nested-type-id-ref>
      <nested-type-id-ref>vim.profile.host.ProfileManager.ApplyHostConfigSpec</nested-type-id-ref>
      <nested-type-id-ref>vim.profile.host.ProfileManager.ApplyHostConfigResult</nested-type-id-ref>
      <nested-type-id-ref>vim.profile.host.ProfileManager.CompositionValidationResult</nested-type-id-ref>
      <nested-type-id-ref>vim.profile.host.ProfileManager.CompositionResult</nested-type-id-ref>
   <method name="ApplyHostConfig"
      vmodl-name="applyHostConfiguration"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Apply the configuration to the host. If you specify any user input,
 the configuration will be saved in the <a href="vim.profile.host.AnswerFile.html">AnswerFile</a>
 associated with the host. If there is no answer file, the Profile Engine
 will create one.]]>
      </description-html>
      <parameter name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      version-id-ref="vim.version.version5"
      privilege="host"
      >
      <description-html>
         <![CDATA[Host to be updated. User must have sufficient credentials and privileges
        to satisfy the contents of the <code>configSpec</code>.]]>
      </description-html>
      </parameter>
      <parameter name="configSpec" type-id-ref="vim.host.ConfigSpec"
      vmodl-name="configSpec"
      version-id-ref="vim.version.version5"
      privilege="configSpec"
      >
      <description-html>
         <![CDATA[Set of configuration changes to be applied to the host.
        The changes are returned by the
        <a href="vim.profile.host.HostProfile.html">HostProfile</a>.<a href="vim.profile.host.HostProfile.html#execute">ExecuteHostProfile</a>
        method in the
        <a href="vim.profile.host.ExecuteResult.html">ProfileExecuteResult</a>.<a href="vim.profile.host.ExecuteResult.html#configSpec">configSpec</a>
        property.]]>
      </description-html>
      </parameter>
      <parameter name="userInput" type-id-ref="vim.profile.DeferredPolicyOptionParameter"
      vmodl-name="userInput"
      version-id-ref="vim.version.version5"
      is-array="true"
      is-optional="true"
      privilege="userInput"
      >
      <description-html>
         <![CDATA[Additional host-specific data to be applied to the host.
        This data is the complete list of deferred parameters verified by the
        <a href="vim.profile.host.HostProfile.html">HostProfile</a>.<a href="vim.profile.host.HostProfile.html#execute">ExecuteHostProfile</a>
        method, contained in the <a href="vim.profile.host.ExecuteResult.html">ProfileExecuteResult</a> object
        returned by the method.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the host is not in maintenance mode and the
         configuration specification requires it.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.HostConfigFailed">
      <fault-description-html>
         <![CDATA[if the ESX Server cannot apply the configuration changes.]]>
      </fault-description-html>
      </fault>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to monitor
       the operation.]]>
      </task-description-html>
   </method>
   <method name="GenerateConfigTaskList"
      vmodl-name="generateConfigTaskList"
      is-deprecated="true"
      privilege="System.View"
      type-id-ref="vim.profile.host.ProfileManager.ConfigTaskList"
      >
      <description-html>
         <![CDATA[Generate a list of configuration tasks that will be performed on the
 host during HostProfile application.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 6.0 use
    <a href="vim.profile.host.ProfileManager.html#generateTaskList">GenerateHostProfileTaskList_Task</a>]]>
      </deprecated-html>
      <parameter name="configSpec" type-id-ref="vim.host.ConfigSpec"
      vmodl-name="configSpec"
      version-id-ref="vim.version.version5"
      privilege="configSpec"
      >
      <description-html>
         <![CDATA[ConfigSpec which was proposed by
    <a href="vim.profile.host.HostProfile.html#execute">ExecuteHostProfile</a> method.]]>
      </description-html>
      </parameter>
      <parameter name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      version-id-ref="vim.version.version5"
      privilege="host"
      >
      <description-html>
         <![CDATA[Host on which the HostProfile application needs to be
    carried out.]]>
      </description-html>
      </parameter>
      <return-value-description-html>
         <![CDATA[List of Configuration tasks.]]>
      </return-value-description-html>
   </method>
   <method name="GenerateHostProfileTaskList"
      vmodl-name="generateTaskList"
      version-id-ref="vim.version.version9"
      is-optional="true"
      privilege="System.View"
      type-id-ref="vim.profile.host.ProfileManager.ConfigTaskList"
      is-task="true"
      >
      <description-html>
         <![CDATA[Generate a list of configuration tasks that will be performed on the
 host during HostProfile application. This differs from the
 <a href="vim.profile.host.ProfileManager.html#generateConfigTaskList">GenerateConfigTaskList</a> method in
 that it returns a task to monitor the progress of the operation.]]>
      </description-html>
      <parameter name="configSpec" type-id-ref="vim.host.ConfigSpec"
      vmodl-name="configSpec"
      version-id-ref="vim.version.version9"
      privilege="configSpec"
      >
      <description-html>
         <![CDATA[ConfigSpec which was proposed by
    <a href="vim.profile.host.HostProfile.html#execute">ExecuteHostProfile</a> method.]]>
      </description-html>
      </parameter>
      <parameter name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      version-id-ref="vim.version.version9"
      privilege="host"
      >
      <description-html>
         <![CDATA[Host on which the HostProfile application needs to be
    carried out.]]>
      </description-html>
      </parameter>
      <return-value-description-html>
         <![CDATA[List of Configuration tasks.]]>
      </return-value-description-html>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to monitor
       the operation. If the task is successful, the
       <a href="vim.Task.html">Task</a>.<a href="vim.Task.html#info">Info</a>.<a href="vim.TaskInfo.html#result">result</a>
       property is a <a href="vim.profile.host.ProfileManager.ConfigTaskList.html">HostProfileManagerConfigTaskList</a>
       object.]]>
      </task-description-html>
   </method>
   <method name="QueryHostProfileMetadata"
      vmodl-name="queryProfileMetadata"
      is-array="true"
      is-optional="true"
      privilege="System.View"
      type-id-ref="vim.profile.ProfileMetadata"
      >
      <description-html>
         <![CDATA[Retrieve the metadata for a set of profiles.]]>
      </description-html>
      <parameter name="profileName" type-id-ref="vmodl.TypeName"
      vmodl-name="profileName"
      version-id-ref="vim.version.version5"
      is-array="true"
      is-optional="true"
      privilege="profileName"
      >
      <description-html>
         <![CDATA[Names of the profiles for which metadata is requested.
    If not set, the method returns metadata for all the profiles.]]>
      </description-html>
      </parameter>
      <parameter name="profile" type-id-ref="vim.profile.Profile"
      vmodl-name="profile"
      version-id-ref="vim.version.version5"
      is-optional="true"
      privilege="profile"
      >
      <description-html>
         <![CDATA[Base profile whose context needs to be used during the operation]]>
      </description-html>
      </parameter>
      <return-value-description-html>
         <![CDATA[List of profile metadata objects.]]>
      </return-value-description-html>
   </method>
   <method name="QueryProfileStructure"
      vmodl-name="queryProfileStructure"
      version-id-ref="vim.version.version7"
      privilege="System.View"
      type-id-ref="vim.profile.ProfileStructure"
      >
      <description-html>
         <![CDATA[Get information about the structure of the profile.]]>
      </description-html>
      <parameter name="profile" type-id-ref="vim.profile.Profile"
      vmodl-name="profile"
      version-id-ref="vim.version.version7"
      is-optional="true"
      privilege="profile"
      >
      <description-html>
         <![CDATA[Base profile whose context needs to be used during the operation]]>
      </description-html>
      </parameter>
      <return-value-description-html>
         <![CDATA[The profile structure.]]>
      </return-value-description-html>
   </method>
   <method name="CreateDefaultProfile"
      vmodl-name="createDefaultProfile"
      privilege="System.View"
      type-id-ref="vim.profile.ApplyProfile"
      >
      <description-html>
         <![CDATA[Create a default subprofile of a given type (for example, a
 <a href="vim.profile.host.VirtualSwitchProfile.html">VirtualSwitchProfile</a>). After you create
 the subprofile, you can add it to a configuration specification
 and update the host profile: <br/>
 <ul>
 <li>Call the <code>CreateDefaultProfile</code> method.</li></br>
 <li>Create a <a href="vim.profile.host.HostProfile.CompleteConfigSpec.html">HostProfileCompleteConfigSpec</a> object.</li></br>
 <li>Copy the existing profile from the host configuration information
     (<a href="vim.profile.host.HostProfile.html">HostProfile</a>.<a href="vim.profile.Profile.html#config">Config</a>.<a href="vim.profile.host.HostProfile.ConfigInfo.html#applyProfile">applyProfile</a>) to the configuration specification.</li></br>
 <li>Add the new subprofile to the configuration specification. For example,
     if you create a <code>VirtualSwitchProfile</code>, you would add it to the list
     of virtual switches in the network profile for the configuration specification
     (<a href="vim.profile.host.NetworkProfile.html">NetworkProfile</a>.<a href="vim.profile.host.NetworkProfile.html#vswitch">vswitch</a>[]).
 </li><br/>
 <li>Call <a href="vim.profile.host.HostProfile.html">HostProfile</a>.<a href="vim.profile.host.HostProfile.html#update">UpdateHostProfile</a>
          to save the new subprofile.</li><br/>
 </ul>]]>
      </description-html>
      <parameter name="profileType" type-id-ref="vmodl.TypeName"
      vmodl-name="profileType"
      version-id-ref="vim.version.version5"
      privilege="profileType"
      >
      <description-html>
         <![CDATA[Type of profile to create. The profile types
 are system-defined
 (<a href="vim.profile.ApplyProfile.html">ApplyProfile</a>.<a href="vim.profile.ApplyProfile.html#profileTypeName">profileTypeName</a>).]]>
      </description-html>
      </parameter>
      <parameter name="profileTypeName" type-id-ref="java.lang.String"
      vmodl-name="profileTypeName"
      version-id-ref="vim.version.version5"
      is-optional="true"
      privilege="profileTypeName"
      >
      <description-html>
         <![CDATA[If specified, the method returns a profile object
    containing data for the named profile. The type name does not have
    to be system-defined. A user-defined profile can include various
    dynamically-defined profiles.]]>
      </description-html>
      </parameter>
      <parameter name="profile" type-id-ref="vim.profile.Profile"
      vmodl-name="profile"
      version-id-ref="vim.version.version5"
      is-optional="true"
      privilege="profile"
      >
      <description-html>
         <![CDATA[Base profile used during the operation.]]>
      </description-html>
      </parameter>
      <return-value-description-html>
         <![CDATA[Derived subprofile of type <code>profileType</code>.]]>
      </return-value-description-html>
   </method>
   <method name="UpdateAnswerFile"
      vmodl-name="updateAnswerFile"
      version-id-ref="vim.version.version7"
      privilege="Profile.Edit"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Update the <a href="vim.profile.host.AnswerFile.html">AnswerFile</a> for the specified host.
 If there is no answer file associated with the host, the Profile Engine
 uses the answer file configuration specification to create a new one.]]>
      </description-html>
      <parameter name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      version-id-ref="vim.version.version7"
      privilege="host"
      >
      <description-html>
         <![CDATA[Host with which the answer file is associated.]]>
      </description-html>
      </parameter>
      <parameter name="configSpec" type-id-ref="vim.profile.host.ProfileManager.AnswerFileCreateSpec"
      vmodl-name="configSpec"
      version-id-ref="vim.version.version7"
      privilege="configSpec"
      >
      <description-html>
         <![CDATA[Host-specific configuration data. If the configuration
       specification does not contain any host-specific user input
       (<code>configSpec</code>.<a href="vim.profile.host.ProfileManager.AnswerFileOptionsCreateSpec.html#userInput">userInput</a>),
       the method does not perform any operation on the answer file.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.AnswerFileUpdateFailed">
      <fault-description-html>
         <![CDATA[If the answer file could not be updated.]]>
      </fault-description-html>
      </fault>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to monitor
       the operation.]]>
      </task-description-html>
   </method>
   <method name="RetrieveAnswerFile"
      vmodl-name="retrieveAnswerFile"
      version-id-ref="vim.version.version7"
      is-optional="true"
      type-id-ref="vim.profile.host.AnswerFile"
      >
      <description-html>
         <![CDATA[Returns the answer file associated with a particular host.]]>
      </description-html>
      <parameter name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      version-id-ref="vim.version.version7"
      privilege="host"
      >
      <description-html>
         <![CDATA[Host with which the answer file is associated.]]>
      </description-html>
      </parameter>
      <return-value-description-html>
         <![CDATA[Answer file object will be returned if it exists.]]>
      </return-value-description-html>
   </method>
   <method name="RetrieveAnswerFileForProfile"
      vmodl-name="retrieveAnswerFileForProfile"
      version-id-ref="vim.version.version8"
      is-optional="true"
      type-id-ref="vim.profile.host.AnswerFile"
      >
      <description-html>
         <![CDATA[Returns the answer file associated with a particular host, augmented
 with whatever answer file values are required for the supplied host
 profile.]]>
      </description-html>
      <parameter name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      version-id-ref="vim.version.version8"
      privilege="host"
      >
      <description-html>
         <![CDATA[Host with which the answer file is associated.]]>
      </description-html>
      </parameter>
      <parameter name="applyProfile" type-id-ref="vim.profile.host.HostApplyProfile"
      vmodl-name="applyProfile"
      version-id-ref="vim.version.version8"
      privilege="applyProfile"
      >
      <description-html>
         <![CDATA[Profile configuration used to generate answer file]]>
      </description-html>
      </parameter>
      <return-value-description-html>
         <![CDATA[Answer file object will be returned.]]>
      </return-value-description-html>
   </method>
   <method name="ExportAnswerFile"
      vmodl-name="exportAnswerFile"
      version-id-ref="vim.version.version7"
      privilege="Profile.Export"
      type-id-ref="java.lang.String"
      is-task="true"
      >
      <description-html>
         <![CDATA[Export a host's answer file into a serialized form. The method returns a string
 that contains only the list of user input options.
 See <a href="vim.profile.host.AnswerFile.html">AnswerFile</a>.<a href="vim.profile.host.AnswerFile.html#userInput">userInput</a>.]]>
      </description-html>
      <parameter name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      version-id-ref="vim.version.version7"
      privilege="host"
      >
      <description-html>
         <![CDATA[Host with which the answer file is associated.]]>
      </description-html>
      </parameter>
      <return-value-description-html>
         <![CDATA[Serialized form of the answer file.]]>
      </return-value-description-html>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to monitor
       the operation. If the task is successful, the
       <a href="vim.Task.html">Task</a>.<a href="vim.Task.html#info">Info</a>.<a href="vim.TaskInfo.html#result">result</a>
       property is a string that contains a serialized form of the answer file.]]>
      </task-description-html>
   </method>
   <method name="CheckAnswerFileStatus"
      vmodl-name="checkAnswerFileStatus"
      version-id-ref="vim.version.version7"
      is-array="true"
      is-optional="true"
      privilege="System.View"
      type-id-ref="vim.profile.host.AnswerFileStatusResult"
      is-task="true"
      >
      <description-html>
         <![CDATA[Check the validity of the answer files for the specified hosts.
 The Profile Engine uses the profile associated with a host to check
 the answer file.]]>
      </description-html>
      <parameter name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      version-id-ref="vim.version.version7"
      is-array="true"
      privilege="host"
      >
      <description-html>
         <![CDATA[Set of hosts for which the answer file status will be checked.]]>
      </description-html>
      </parameter>
      <return-value-description-html>
         <![CDATA[Returns the resulting answer file status.]]>
      </return-value-description-html>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to monitor
       the operation. If the task is successful, the
       <a href="vim.Task.html">Task</a>.<a href="vim.Task.html#info">Info</a>.<a href="vim.TaskInfo.html#result">result</a>
       property contains a list of <a href="vim.profile.host.AnswerFileStatusResult.html">AnswerFileStatusResult</a> objects.]]>
      </task-description-html>
   </method>
   <method name="QueryAnswerFileStatus"
      vmodl-name="queryAnswerFileStatus"
      version-id-ref="vim.version.version7"
      is-array="true"
      is-optional="true"
      privilege="System.View"
      type-id-ref="vim.profile.host.AnswerFileStatusResult"
      >
      <description-html>
         <![CDATA[Returns the status of the answer files associated with specified hosts.
 This method returns the most recent status determined by
 <a href="vim.profile.host.ProfileManager.html#checkAnswerFileStatus">CheckAnswerFileStatus_Task</a>.
 See <a href="vim.profile.host.ProfileManager.AnswerFileStatus.html">HostProfileManagerAnswerFileStatus</a> for valid values.]]>
      </description-html>
      <parameter name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      version-id-ref="vim.version.version7"
      is-array="true"
      privilege="host"
      >
      <description-html>
         <![CDATA[The hosts the answer file is associated with.]]>
      </description-html>
      </parameter>
      <return-value-description-html>
         <![CDATA[List of answer file status objects.]]>
      </return-value-description-html>
   </method>
   <method name="UpdateHostCustomizations"
      vmodl-name="updateHostCustomizations"
      version-id-ref="vim.version.version11"
      is-array="true"
      is-optional="true"
      privilege="Profile.Edit"
      type-id-ref="vim.profile.host.ProfileManager.AnswerFileValidationResultMap"
      is-task="true"
      >
      <description-html>
         <![CDATA[This is the batch version of
 vim.profile.host.ProfileManager@updateAnswerFile.]]>
      </description-html>
      <parameter name="hostToConfigSpecMap" type-id-ref="vim.profile.host.ProfileManager.HostToConfigSpecMap"
      vmodl-name="hostToConfigSpecMap"
      version-id-ref="vim.version.version11"
      is-array="true"
      is-optional="true"
      privilege="hostToConfigSpecMap"
      >
      <description-html>
         <![CDATA[A map that contains the hosts with which
       the answer files are associated and the corresponding
       host-specific configuration data. If the configuration
       specification does not contain any host-specific user input
       (<code>configSpec</code>.<a href="vim.profile.host.ProfileManager.AnswerFileOptionsCreateSpec.html#userInput">userInput</a>),
       the method does not perform any operation on the answer file.]]>
      </description-html>
      </parameter>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to monitor
       the operation with a result of <a href="vim.profile.host.ProfileManager.AnswerFileValidationResultMap.html">AnswerFileValidationResultMap</a> array.]]>
      </task-description-html>
   </method>
   <method name="RetrieveHostCustomizations"
      vmodl-name="retrieveHostCustomizations"
      version-id-ref="vim.version.version11"
      is-array="true"
      is-optional="true"
      type-id-ref="vim.profile.host.ProfileManager.StructuredCustomizations"
      >
      <description-html>
         <![CDATA[This is the batch version of
 vim.profile.host.ProfileManager@retrieveAnswerFile.

 Returns a map that contains the hosts and their answer file data
 objects.]]>
      </description-html>
      <parameter name="hosts" type-id-ref="vim.HostSystem"
      vmodl-name="hosts"
      version-id-ref="vim.version.version11"
      is-array="true"
      is-optional="true"
      privilege="hosts"
      >
      <description-html>
         <![CDATA[Hosts with which the answer files are associated.]]>
      </description-html>
      </parameter>
      <return-value-description-html>
         <![CDATA[A map that contains the hosts and their answer files.]]>
      </return-value-description-html>
   </method>
   <method name="RetrieveHostCustomizationsForProfile"
      vmodl-name="retrieveHostCustomizationsForProfile"
      version-id-ref="vim.version.version11"
      is-array="true"
      is-optional="true"
      type-id-ref="vim.profile.host.ProfileManager.StructuredCustomizations"
      >
      <description-html>
         <![CDATA[This is the batch version of
 vim.profile.host.ProfileManager@retrieveAnswerFileForProfile.

 Returns a map that contains the hosts and their answer files associated
 with these hosts, augmented with whatever answer file values are
 required for the supplied host profile.]]>
      </description-html>
      <parameter name="hosts" type-id-ref="vim.HostSystem"
      vmodl-name="hosts"
      version-id-ref="vim.version.version11"
      is-array="true"
      is-optional="true"
      privilege="hosts"
      >
      <description-html>
         <![CDATA[Hosts with which the answer files are associated.]]>
      </description-html>
      </parameter>
      <parameter name="applyProfile" type-id-ref="vim.profile.host.HostApplyProfile"
      vmodl-name="applyProfile"
      version-id-ref="vim.version.version11"
      privilege="applyProfile"
      >
      <description-html>
         <![CDATA[Profile configuration used to generate answer file]]>
      </description-html>
      </parameter>
      <return-value-description-html>
         <![CDATA[A map contains the hosts and their answer files.]]>
      </return-value-description-html>
   </method>
   <method name="GenerateHostConfigTaskSpec"
      vmodl-name="generateHostConfigTaskSpec"
      version-id-ref="vim.version.version11"
      is-array="true"
      is-optional="true"
      privilege="System.View"
      type-id-ref="vim.profile.host.ProfileManager.ApplyHostConfigSpec"
      is-task="true"
      >
      <description-html>
         <![CDATA[This method generates ApplyHostConfigSpec data object
 for each host which can be passed as input to
 <a href="vim.profile.host.ProfileManager.html#applyEntitiesConfiguration">ApplyEntitiesConfig_Task</a>
 to configure that host.

 For each host, this method goes through two stages,
 <a href="vim.profile.host.HostProfile.html#execute">ExecuteHostProfile</a> stage
 <a href="vim.profile.host.ProfileManager.html#generateTaskList">GenerateHostProfileTaskList_Task</a> stage. If the
 <a href="vim.profile.host.HostProfile.html#execute">ExecuteHostProfile</a> stage completes
 successfully then the method invokes the
 <a href="vim.profile.host.ProfileManager.html#generateTaskList">GenerateHostProfileTaskList_Task</a>
 stage to generate the list of configuration tasks that are needed
 to configure the host.

 This method will return a task to monitor the progress of the operation.]]>
      </description-html>
      <parameter name="hostsInfo" type-id-ref="vim.profile.host.ProfileManager.StructuredCustomizations"
      vmodl-name="hostsInfo"
      version-id-ref="vim.version.version11"
      is-array="true"
      is-optional="true"
      privilege="hostsInfo"
      >
      <description-html>
         <![CDATA[List of host data for which configuration task list
        needs to be generated. The
        StructuredCustomizations#customizations value should be
        provided only if the host customization data for that host is
        invalid. If this property is not provided, the API will use the
        host customization data stored in VC and generate task list.]]>
      </description-html>
      </parameter>
      <return-value-description-html>
         <![CDATA[A list of ApplyHostConfigSpec objects. Each
       ApplyHostConfigSpec is for each host in the provided
       hostsInfo list.
       This method is successful if the
       ApplyHostConfigSpec#faultData is not set and the
       ApplyHostConfigSpec#status<code>=success</code>).]]>
      </return-value-description-html>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to monitor
       the operation. If the task is successful, the
       <a href="vim.Task.html">Task</a>.<a href="vim.Task.html#info">Info</a>.<a href="vim.TaskInfo.html#result">result</a>
       property is a
       <a href="vim.profile.host.ProfileManager.ApplyHostConfigSpec.html">ApplyHostProfileConfigurationSpec</a> object.]]>
      </task-description-html>
   </method>
   <method name="ApplyEntitiesConfig"
      vmodl-name="applyEntitiesConfiguration"
      version-id-ref="vim.version.version11"
      is-array="true"
      is-optional="true"
      type-id-ref="vim.profile.host.ProfileManager.ApplyHostConfigResult"
      is-task="true"
      >
      <description-html>
         <![CDATA[The task for applying host configuration on a list of hosts. This is the
 batch version of <code>applyHostConfiguration</code>. The implementation
 of this method will:

 When a host is in a DRS cluster but doesn't satisfy the state requirement
 such as that the host is not in the required maintenance mode, this
 method uses DRS feature to put the host into maintenance mode.

 This method will apply a host profile to a stateful host or stateless
 host; or apply a host profile to a stateless host by reboot.

 After a host is reboot, a check compliance is done to update the latest
 compliance status.]]>
      </description-html>
      <parameter name="applyConfigSpecs" type-id-ref="vim.profile.host.ProfileManager.ApplyHostConfigSpec"
      vmodl-name="applyConfigSpecs"
      version-id-ref="vim.version.version11"
      is-array="true"
      is-optional="true"
      privilege="applyConfigSpecs"
      >
      <description-html>
         <![CDATA[An array of
       <a href="vim.profile.host.ProfileManager.ApplyHostConfigSpec.html">ApplyHostProfileConfigurationSpec</a>
       objects. Each applyConfigSpecs object contains the data objects
       required to remediate a host.  The API caller should expand
       a cluster to all its hosts for the purpose of providing the
       required data object for configuration apply of each host.]]>
      </description-html>
      </parameter>
      <return-value-description-html>
         <![CDATA[An array of
       <a href="vim.profile.host.ProfileManager.ApplyHostConfigResult.html">ApplyHostProfileConfigurationResult</a>
       objects.  Each
       <a href="vim.profile.host.ProfileManager.ApplyHostConfigResult.html">ApplyHostProfileConfigurationResult</a>
       is for each host in the provided host list.]]>
      </return-value-description-html>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to monitor
       the operation. If the task is successful, the
       <a href="vim.Task.html">Task</a>.<a href="vim.Task.html#info">Info</a>.<a href="vim.TaskInfo.html#result">result</a>
       property is an array of
       <a href="vim.profile.host.ProfileManager.ApplyHostConfigResult.html">ApplyHostProfileConfigurationResult</a>
       objects.  Each
       <a href="vim.profile.host.ProfileManager.ApplyHostConfigResult.html">ApplyHostProfileConfigurationResult</a>
       is for each host in the provided host list.]]>
      </task-description-html>
   </method>
   <method name="ValidateHostProfileComposition"
      vmodl-name="validateComposition"
      version-id-ref="vim.version.version11"
      internal-before-version-id-ref="vim.version.version12"
      is-optional="true"
      privilege="Profile.Edit"
      type-id-ref="vim.profile.host.ProfileManager.CompositionValidationResult"
      is-task="true"
      >
      <description-html>
         <![CDATA[Validates the proposed host profile composition.]]>
      </description-html>
      <parameter name="source" type-id-ref="vim.profile.Profile"
      vmodl-name="source"
      version-id-ref="vim.version.version11"
      privilege="source"
      >
      <description-html>
         <![CDATA[The source host profile of the configurations for
        composition.]]>
      </description-html>
      </parameter>
      <parameter name="targets" type-id-ref="vim.profile.Profile"
      vmodl-name="targets"
      version-id-ref="vim.version.version11"
      is-array="true"
      is-optional="true"
      privilege="targets"
      >
      <description-html>
         <![CDATA[The array of target host profiles that the configurations
        composite into.]]>
      </description-html>
      </parameter>
      <parameter name="toBeMerged" type-id-ref="vim.profile.host.HostApplyProfile"
      vmodl-name="toBeMerged"
      version-id-ref="vim.version.version11"
      is-optional="true"
      privilege="toBeMerged"
      >
      <description-html>
         <![CDATA[A <a href="vim.profile.host.HostApplyProfile.html">HostApplyProfile</a> object
        contains the sub profiles that will be merged from the source to
        the target host profiles, and all the ancestors of these sub
        profiles. For singleton sub profile, it will be added into a
        target host profile if it doesn't exist in the target; otherwise,
        it replaces the one in the target.

        The member variable
        <a href="vim.profile.ApplyProfile.html#toBeMerged">toBeMerged</a> of these sub profiles
        should have a value of <code>true</code>.  The member variables
        <a href="vim.profile.ApplyProfile.html#toBeMerged">toBeMerged</a>
        <a href="vim.profile.ApplyProfile.html#toReplaceWith">toReplaceWith</a>,
        <a href="vim.profile.ApplyProfile.html#toBeDeleted">toBeDeleted</a>
        of the ancestors should have a value of <code>false</code>.]]>
      </description-html>
      </parameter>
      <parameter name="toReplaceWith" type-id-ref="vim.profile.host.HostApplyProfile"
      vmodl-name="toReplaceWith"
      version-id-ref="vim.version.version11"
      is-optional="true"
      privilege="toReplaceWith"
      >
      <description-html>
         <![CDATA[A <a href="vim.profile.host.HostApplyProfile.html">HostApplyProfile</a> object
        contains the sub profiles that will be used to replace the array
        in the target host profiles, and all the ancestors of these sub
        profiles.

        Similar to above except that the member variable
        <a href="vim.profile.ApplyProfile.html#toReplaceWith">toReplaceWith</a>
        is turned on.]]>
      </description-html>
      </parameter>
      <parameter name="toBeDeleted" type-id-ref="vim.profile.host.HostApplyProfile"
      vmodl-name="toBeDeleted"
      version-id-ref="vim.version.version11"
      is-optional="true"
      privilege="toBeDeleted"
      >
      <description-html>
         <![CDATA[A <a href="vim.profile.host.HostApplyProfile.html">HostApplyProfile</a> object
        contains the sub profiles that will be deleted from the source
        <b>and</b> the target host profiles, and all the ancestors of
        these sub profiles.

        Similar to above except that the member variable
        <a href="vim.profile.ApplyProfile.html#toBeDeleted">toBeDeleted</a>
        is turned on.]]>
      </description-html>
      </parameter>
      <parameter name="enableStatusToBeCopied" type-id-ref="vim.profile.host.HostApplyProfile"
      vmodl-name="enableStatusToBeCopied"
      version-id-ref="vim.version.version11"
      is-optional="true"
      privilege="enableStatusToBeCopied"
      >
      <description-html>
         <![CDATA[A <a href="vim.profile.host.HostApplyProfile.html">HostApplyProfile</a>
        object contains the sub profiles that the member variable
        <a href="vim.profile.ApplyProfile.html#enabled">enabled</a> will be copied from the
        source host profile to all the target host profiles, and all the
        ancestors of these sub profiles.

        The member variable
        <a href="vim.profile.ApplyProfile.html#copyEnableStatus">copyEnableStatus</a>
        of these sub profiles is turned on. The member variable
        <a href="vim.profile.ApplyProfile.html#copyEnableStatus">copyEnableStatus</a> of the
        <a href="vim.profile.ApplyProfile.html#copyEnableStatus">copyEnableStatus</a> of the
        ancestors should have a value of <code>false</code>.]]>
      </description-html>
      </parameter>
      <parameter name="errorOnly" type-id-ref="BOOLEAN"
      vmodl-name="errorOnly"
      version-id-ref="vim.version.version11"
      is-optional="true"
      privilege="errorOnly"
      >
      <description-html>
         <![CDATA[Indicates that the validation result for each target
        don't contain the source-target difference.]]>
      </description-html>
      </parameter>
      <task-description-html>
         <![CDATA[This method will returns a <a href="vim.Task.html">Task</a> object with which to
       monitor the operation. The
       <a href="vim.Task.html">Task</a>.<a href="vim.Task.html#info">Info</a>.<a href="vim.TaskInfo.html#result">result</a>
       will contain a
       <a href="vim.profile.host.ProfileManager.CompositionValidationResult.html">HostProfileManagerCompositionValidationResult</a>
       object containing the status of the operation, any validation errors
       and the validation results.]]>
      </task-description-html>
   </method>
   <method name="CompositeHostProfile"
      vmodl-name="compositeProfile"
      version-id-ref="vim.version.version11"
      internal-before-version-id-ref="vim.version.version12"
      is-optional="true"
      privilege="Profile.Edit"
      type-id-ref="vim.profile.host.ProfileManager.CompositionResult"
      is-task="true"
      >
      <description-html>
         <![CDATA[Composes (merge, replace, delete, disable)
 the selected configurations into the target host profiles.]]>
      </description-html>
      <parameter name="source" type-id-ref="vim.profile.Profile"
      vmodl-name="source"
      version-id-ref="vim.version.version11"
      privilege="source"
      >
      </parameter>
      <parameter name="targets" type-id-ref="vim.profile.Profile"
      vmodl-name="targets"
      version-id-ref="vim.version.version11"
      is-array="true"
      is-optional="true"
      privilege="targets"
      >
      </parameter>
      <parameter name="toBeMerged" type-id-ref="vim.profile.host.HostApplyProfile"
      vmodl-name="toBeMerged"
      version-id-ref="vim.version.version11"
      is-optional="true"
      privilege="toBeMerged"
      >
      </parameter>
      <parameter name="toBeReplacedWith" type-id-ref="vim.profile.host.HostApplyProfile"
      vmodl-name="toBeReplacedWith"
      version-id-ref="vim.version.version11"
      is-optional="true"
      privilege="toBeReplacedWith"
      >
      </parameter>
      <parameter name="toBeDeleted" type-id-ref="vim.profile.host.HostApplyProfile"
      vmodl-name="toBeDeleted"
      version-id-ref="vim.version.version11"
      is-optional="true"
      privilege="toBeDeleted"
      >
      </parameter>
      <parameter name="enableStatusToBeCopied" type-id-ref="vim.profile.host.HostApplyProfile"
      vmodl-name="enableStatusToBeCopied"
      version-id-ref="vim.version.version11"
      is-optional="true"
      privilege="enableStatusToBeCopied"
      >
      </parameter>
      <task-description-html>
         <![CDATA[This method will returns a <a href="vim.Task.html">Task</a> object with which to
       monitor the operation. The
       <a href="vim.Task.html">Task</a>.<a href="vim.Task.html#info">Info</a>.<a href="vim.TaskInfo.html#result">result</a>
       will contain a
       <a href="vim.profile.host.ProfileManager.CompositionResult.html">HostProfileManagerCompositionResult</a>
       object containing the status of the operation, and details about
       any composition errors.

 The definitions of all the parameters are same as those in
 <a href="vim.profile.host.ProfileManager.html#validateComposition">ValidateHostProfileComposition_Task</a>.]]>
      </task-description-html>
   </method>
   </managed-object>
   <managed-object name="CertificateManager"
      type-id="vim.CertificateManager"
      vmodl-name="vim.CertificateManager"
      version-id-ref="vim.version.version10"
      >
      <description-html>
         <![CDATA[CertificateManager provides an interface for managing the SSL
  certificates used by the ESX server.]]>
      </description-html>
   <method name="CertMgrRefreshCACertificatesAndCRLs"
      vmodl-name="refreshCACertificatesAndCRLs"
      privilege="Certificate.Manage"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Re-fetches certificates of trusted CAs and the Certificate Revocation
  Lists (CRL) from the appropriate authoritative source and pushes them to
  the hosts.]]>
      </description-html>
      <parameter name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      version-id-ref="vim.version.version10"
      is-array="true"
      privilege="host"
      >
      <description-html>
         <![CDATA[the hosts on which the certificates need to be refreshed]]>
      </description-html>
      </parameter>
   </method>
   <method name="CertMgrRefreshCertificates"
      vmodl-name="refreshCertificates"
      privilege="Certificate.Manage"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Gets CSRs from the hosts and then gets these certificates signed by the
  VMware Certificate Service and pushes them down to the hosts.]]>
      </description-html>
      <parameter name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      version-id-ref="vim.version.version10"
      is-array="true"
      privilege="host"
      >
      <description-html>
         <![CDATA[the hosts on which the certificates need to be refreshed]]>
      </description-html>
      </parameter>
   </method>
   <method name="CertMgrRevokeCertificates"
      vmodl-name="revokeCertificates"
      privilege="Certificate.Manage"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Revokes the certificates of some hosts.]]>
      </description-html>
      <parameter name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      version-id-ref="vim.version.version10"
      is-array="true"
      privilege="host"
      >
      <description-html>
         <![CDATA[the hosts on which the certificates need to be revoked]]>
      </description-html>
      </parameter>
   </method>
   </managed-object>
   <managed-object name="HostVirtualNicManager"
      type-id="vim.host.VirtualNicManager"
      vmodl-name="vim.host.VirtualNicManager"
      version-id-ref="vim.version.version5"
      base-type-id="vim.ExtensibleManagedObject"
      >
      <description-html>
         <![CDATA[The VirtualNicManager managed object describes the special Virtual NIC
  configuration of the host.]]>
      </description-html>
            <property name="info" type-id-ref="vim.host.VirtualNicManagerInfo"
      vmodl-name="info"
      >
      <description-html>
         <![CDATA[Network configuration.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.host.VirtualNicManager.NicType</nested-type-id-ref>
      <nested-type-id-ref>vim.host.VirtualNicManager.NicTypeSelection</nested-type-id-ref>
      <nested-type-id-ref>vim.host.VirtualNicManager.NetConfig</nested-type-id-ref>
   <method name="QueryNetConfig"
      vmodl-name="queryNetConfig"
      is-optional="true"
      privilege="System.Read"
      type-id-ref="vim.host.VirtualNicManager.NetConfig"
      >
      <description-html>
         <![CDATA[Get the NetConfig for the specified nicType]]>
      </description-html>
      <parameter name="nicType" type-id-ref="java.lang.String"
      vmodl-name="nicType"
      version-id-ref="vim.version.version5"
      privilege="nicType"
      >
      <description-html>
         <![CDATA[The NicType]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[for any other failure.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vmodl.fault.InvalidArgument">
      <fault-description-html>
         <![CDATA[if nicType is invalid]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="SelectVnicForNicType"
      vmodl-name="selectVnic"
      privilege="Host.Config.Network"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Select the NicType of the VirtualNic. Selecting a device automatically
  deselects the previous selection if NetConfig#multiSelectAllowed
  is false for the specified nicType.
  Else, the device is added to the list of selected nics.]]>
      </description-html>
      <parameter name="nicType" type-id-ref="java.lang.String"
      vmodl-name="nicType"
      version-id-ref="vim.version.version5"
      privilege="nicType"
      >
      <description-html>
         <![CDATA[The type of VirtualNic that would be selected]]>
      </description-html>
      </parameter>
      <parameter name="device" type-id-ref="java.lang.String"
      vmodl-name="device"
      version-id-ref="vim.version.version5"
      privilege="device"
      >
      <description-html>
         <![CDATA[The device that uniquely identifies the VirtualNic.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[for any other failure.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vmodl.fault.InvalidArgument">
      <fault-description-html>
         <![CDATA[if nicType is invalid, or device represents a
          nonexistent or invalid VirtualNic]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="DeselectVnicForNicType"
      vmodl-name="deselectVnic"
      privilege="Host.Config.Network"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Deselect the VirtualNic to be a special type.]]>
      </description-html>
      <parameter name="nicType" type-id-ref="java.lang.String"
      vmodl-name="nicType"
      version-id-ref="vim.version.version5"
      privilege="nicType"
      >
      <description-html>
         <![CDATA[The type of VirtualNic that would be deselected]]>
      </description-html>
      </parameter>
      <parameter name="device" type-id-ref="java.lang.String"
      vmodl-name="device"
      version-id-ref="vim.version.version5"
      privilege="device"
      >
      <description-html>
         <![CDATA[The device that uniquely identifies the VirtualNic.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[for any other failure.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vmodl.fault.InvalidArgument">
      <fault-description-html>
         <![CDATA[if nicType is invalid, device represents
          a nonexistent or invalid VirtualNic, or the VirtualNic is
          not selected]]>
      </fault-description-html>
      </fault>
   </method>
   </managed-object>
   <managed-object name="HostVFlashManager"
      type-id="vim.host.VFlashManager"
      vmodl-name="vim.host.VFlashManager"
      version-id-ref="vim.version.version9"
      >
      <description-html>
         <![CDATA[The VFlash Manager object is used to configure vFlash resource
  and vFlash cache on the ESX host.]]>
      </description-html>
            <property name="vFlashConfigInfo" type-id-ref="vim.host.VFlashManager.VFlashConfigInfo"
      vmodl-name="vFlashConfigInfo"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Host vFlash configuration information.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.host.VFlashManager.VFlashResourceConfigSpec</nested-type-id-ref>
      <nested-type-id-ref>vim.host.VFlashManager.VFlashResourceConfigInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.host.VFlashManager.VFlashResourceRunTimeInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.host.VFlashManager.VFlashCacheConfigSpec</nested-type-id-ref>
      <nested-type-id-ref>vim.host.VFlashManager.VFlashCacheConfigInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.host.VFlashManager.VFlashConfigInfo</nested-type-id-ref>
   <method name="ConfigureVFlashResourceEx"
      vmodl-name="configureVFlashResourceEx"
      is-optional="true"
      privilege="Host.Config.Storage"
      type-id-ref="vim.host.VFlashResourceConfigurationResult"
      is-task="true"
      >
      <description-html>
         <![CDATA[Configure vFlash resource on a list of SSD disks. If the host does not have
  a VFFS volume, host will format the volume first and then extend the volume
  on the rest of the SSDs; otherwise host will extend the existing VFFS volume
  on the passed SSDs. Finally host will configure the vFlash resource on the
  VFFS volume.
  <p>
  It will return <a href="vim.host.VFlashResourceConfigurationResult.html">HostVFlashResourceConfigurationResult</a>
  describing success or failure associated with each device.]]>
      </description-html>
      <parameter name="devicePath" type-id-ref="java.lang.String"
      vmodl-name="devicePath"
      version-id-ref="vim.version.version9"
      is-array="true"
      is-optional="true"
      privilege="devicePath"
      >
      <description-html>
         <![CDATA[An array of device path names that identify disks.
                    See <a href="vim.host.ScsiDisk.html">ScsiDisk</a>.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[if batch operation fails on the host.
  Because the returned VFlashResourceConfigurationResult contains the configuration
  success or fault for each device, as of vSphere API 5.x, we won't throw fault when
  batch operation fails.]]>
      </fault-description-html>
      </fault>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to monitor the
  operation. The <a href="vim.TaskInfo.html#result">result</a> property in the
  <a href="vim.Task.html">Task</a> contains <a href="vim.host.VFlashResourceConfigurationResult.html">HostVFlashResourceConfigurationResult</a>
  describing success or failure associated with each device.]]>
      </task-description-html>
   </method>
   <method name="HostConfigureVFlashResource"
      vmodl-name="configureVFlashResource"
      privilege="Host.Config.Storage"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Configure vFlash resource on the host by attaching to a backend VFFS volume.]]>
      </description-html>
      <parameter name="spec" type-id-ref="vim.host.VFlashManager.VFlashResourceConfigSpec"
      vmodl-name="spec"
      version-id-ref="vim.version.version9"
      privilege="spec"
      >
      <description-html>
         <![CDATA[the vFlash resource specification.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[If vFlash resource cannot be configured on the host]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.ResourceInUse">
      <fault-description-html>
         <![CDATA[The contained VFFS volume is being used.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="HostRemoveVFlashResource"
      vmodl-name="removeVFlashResource"
      privilege="Host.Config.Storage"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Remove vFlash resource on the host by destroying the contained VFFS volume.]]>
      </description-html>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[If vFlash resource is not configured or the contained VFFS volume
                   cannot be found on the host.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[If vFlash resource or the contained VFFS volume cannot
                          be removed from the host.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.ResourceInUse">
      <fault-description-html>
         <![CDATA[The contained VFFS volume is being used.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="HostConfigVFlashCache"
      vmodl-name="configureHostVFlashCache"
      privilege="Host.Config.AdvancedConfig"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Configure vFlash cache on the host.]]>
      </description-html>
      <parameter name="spec" type-id-ref="vim.host.VFlashManager.VFlashCacheConfigSpec"
      vmodl-name="spec"
      version-id-ref="vim.version.version9"
      privilege="spec"
      >
      <description-html>
         <![CDATA[Specification for host cache configuration.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[If the swap cache cannot be configured on the host.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InaccessibleVFlashSource">
      <fault-description-html>
         <![CDATA[vFlash resource is not accessible.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.ResourceInUse">
      <fault-description-html>
         <![CDATA[The contained VFFS volume is being used.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="HostGetVFlashModuleDefaultConfig"
      vmodl-name="getVFlashModuleDefaultConfig"
      privilege="Host.Config.AdvancedConfig"
      type-id-ref="vim.vm.device.VirtualDisk.VFlashCacheConfigInfo"
      >
      <description-html>
         <![CDATA[Retrieve the default supported configuration for a given vFlash module]]>
      </description-html>
      <parameter name="vFlashModule" type-id-ref="java.lang.String"
      vmodl-name="vFlashModule"
      version-id-ref="vim.version.version9"
      privilege="vFlashModule"
      >
      <description-html>
         <![CDATA[Name of the vFlash module]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[If vFlash resource is not configured or the contained VFFS volume
                   cannot be found on the host.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[If the default vFlash module configuration option cannot be
                          retrieved.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[The supported default vFlash cache configuration]]>
      </return-value-description-html>
   </method>
   </managed-object>
   <managed-object name="ContainerView"
      type-id="vim.view.ContainerView"
      vmodl-name="vim.view.ContainerView"
      version-id-ref="vim.version.version2"
      base-type-id="vim.view.ManagedObjectView"
      >
      <description-html>
         <![CDATA[The <a href="vim.view.ContainerView.html">ContainerView</a> managed object provides a means of monitoring the contents of
  a single container and, optionally, other containers.
  You can use a <a href="vim.view.ContainerView.html">ContainerView</a> with a <a href="vmodl.query.PropertyCollector.html">PropertyCollector</a> method
  to retrieve data or receive notification of changes. For information about using views
  with the <a href="vmodl.query.PropertyCollector.html">PropertyCollector</a>, see the description of <a href="vim.view.ViewManager.html">ViewManager</a>.
  <p>
  When you invoke the <a href="vim.view.ViewManager.html#createContainerView">CreateContainerView</a> method, you specify
  a managed object instance that provides the starting point for object selection.
  You can use the following managed objects as the basis of a container view:
  <ul>
     <li> <a href="vim.Folder.html">Folder</a>
     <li> <a href="vim.Datacenter.html">Datacenter</a>
     <li> <a href="vim.ComputeResource.html">ComputeResource</a>
     <li> <a href="vim.ResourcePool.html">ResourcePool</a>
     <li> <a href="vim.HostSystem.html">HostSystem</a>
  </ul>
  <p>
  Once you have created the view, the <a href="vim.view.ManagedObjectView.html#view">View</a> list
  always represents the current configuration of the virtual environment and reflects
  any subsequent changes that occur.]]>
      </description-html>
            <property name="container" type-id-ref="vim.ManagedEntity"
      vmodl-name="container"
      >
      <description-html>
         <![CDATA[The Folder, Datacenter, ComputeResource, ResourcePool, or HostSystem instance
  that provides the objects that the view presents.]]>
      </description-html>
      </property>

            <property name="type" type-id-ref="vmodl.TypeName"
      vmodl-name="type"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[An optional list of types to be applied to the set of objects in the view.
  The list of types indicates objects that are included in the view.
  If empty, all types are included.]]>
      </description-html>
      </property>

            <property name="recursive" type-id-ref="BOOLEAN"
      vmodl-name="recursive"
      >
      <description-html>
         <![CDATA[Whether to include only the immediate children of the container instance,
   or to include additional objects by following the paths beyond the
   immediate children.
   <p>
   For information about recursive behavior, see the description of
   <a href="vim.view.ViewManager.html#createContainerView">CreateContainerView</a>.]]>
      </description-html>
      </property>

   </managed-object>
   <managed-object name="VirtualMachine"
      type-id="vim.VirtualMachine"
      vmodl-name="vim.VirtualMachine"
      version-id-ref="vim.version.version1"
      base-type-id="vim.ManagedEntity"
      >
      <description-html>
         <![CDATA[VirtualMachine is the managed object type for manipulating virtual machines,
  including templates that can be deployed (repeatedly) as new virtual machines.
  This type provides methods for configuring and controlling a virtual machine.
  <p>
  VirtualMachine extends the ManagedEntity type because virtual machines are
  part of a virtual infrastructure inventory. The parent of a virtual machine
  must be a folder, and a virtual machine has no children.
  <p>
  Destroying a virtual machine disposes of all associated storage, including
  the virtual disks. To remove a virtual machine while retaining its
  virtual disk storage, a client must remove the virtual disks
  from the virtual machine before destroying it.]]>
      </description-html>
            <property name="capability" type-id-ref="vim.vm.Capability"
      vmodl-name="capability"
      >
      <description-html>
         <![CDATA[Information about the runtime capabilities of this virtual machine.]]>
      </description-html>
      </property>

            <property name="config" type-id-ref="vim.vm.ConfigInfo"
      vmodl-name="config"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Configuration of this virtual machine, including the name and UUID.
  <p>
  This property is set when a virtual machine is created or when
  the <a href="vim.VirtualMachine.html#reconfigure">ReconfigVM_Task</a> method is called.
  <p>
  The virtual machine configuration is not guaranteed to be available.
  For example, the configuration information would be unavailable
  if the server is unable to access the virtual machine files on disk,
  and is often also unavailable during the initial phases of
  virtual machine creation.]]>
      </description-html>
      </property>

            <property name="layout" type-id-ref="vim.vm.FileLayout"
      vmodl-name="layout"
      is-deprecated="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Detailed information about the files that comprise this virtual machine.
  <p>]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 4.0, use <a href="vim.VirtualMachine.html#layoutEx">LayoutEx</a> instead.

  In releases after vSphere API 5.0, vSphere Servers might not
  generate property collector update notifications for this property.
  To obtain the latest value of the property, you can use
  PropertyCollector methods RetrievePropertiesEx or WaitForUpdatesEx.
  If you use the PropertyCollector.WaitForUpdatesEx method, specify
  an empty string for the version parameter. Any other version value will not
  produce any property values as no updates are generated.]]>
      </deprecated-html>
      </property>

            <property name="layoutEx" type-id-ref="vim.vm.FileLayoutEx"
      vmodl-name="layoutEx"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Detailed information about the files that comprise this virtual machine.
  <p>
  Can be explicitly refreshed by the <a href="vim.VirtualMachine.html#refreshStorageInfo">RefreshStorageInfo</a> operation.

  In releases after vSphere API 5.0, vSphere Servers might not
  generate property collector update notifications for this property.
  To obtain the latest value of the property, you can use
  PropertyCollector methods RetrievePropertiesEx or WaitForUpdatesEx.
  If you use the PropertyCollector.WaitForUpdatesEx method, specify
  an empty string for the version parameter. Any other version value will not
  produce any property values as no updates are generated.]]>
      </description-html>
      </property>

            <property name="storage" type-id-ref="vim.vm.StorageInfo"
      vmodl-name="storage"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Storage space used by the virtual machine, split by datastore.
  Can be explicitly refreshed by the <a href="vim.VirtualMachine.html#refreshStorageInfo">RefreshStorageInfo</a> operation.

  In releases after vSphere API 5.0, vSphere Servers might not
  generate property collector update notifications for this property.
  To obtain the latest value of the property, you can use
  PropertyCollector methods RetrievePropertiesEx or WaitForUpdatesEx.
  If you use the PropertyCollector.WaitForUpdatesEx method, specify
  an empty string for the version parameter. Any other version value will not
  produce any property values as no updates are generated.]]>
      </description-html>
      </property>

            <property name="environmentBrowser" type-id-ref="vim.EnvironmentBrowser"
      vmodl-name="environmentBrowser"
      >
      <description-html>
         <![CDATA[The current virtual machine's environment browser object. This contains
 information on all the configurations that can be used on the
 virtual machine. This is identical to the environment browser on
 the <a href="vim.ComputeResource.html">ComputeResource</a> to which this virtual machine belongs.]]>
      </description-html>
      </property>

            <property name="resourcePool" type-id-ref="vim.ResourcePool"
      vmodl-name="resourcePool"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The current resource pool that specifies resource allocation
 for this virtual machine.
 <p>
 This property is set when a virtual machine is created or associated with
 a different resource pool.
 <p>
 Returns null if the virtual machine is a template or the session has no access
 to the resource pool.]]>
      </description-html>
      </property>

            <property name="parentVApp" type-id-ref="vim.ManagedEntity"
      vmodl-name="parentVApp"
      version-id-ref="vim.version.version6"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Reference to the parent vApp.]]>
      </description-html>
      </property>

            <property name="resourceConfig" type-id-ref="vim.ResourceConfigSpec"
      vmodl-name="resourceConfig"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The resource configuration for a virtual machine. The shares
 in this specification are evaluated relative to the resource pool
 to which it is assigned. This will return null if the product
 the virtual machine is registered on does not support resource
 configuration.
 <p>
 To retrieve the configuration, you typically use
 <a href="vim.ResourcePool.html#childConfiguration">ChildConfiguration</a>.
 <p>
 To change the configuration, use
 <a href="vim.ResourcePool.html#updateChildResourceConfiguration">UpdateChildResourceConfiguration</a>.]]>
      </description-html>
      </property>

            <property name="runtime" type-id-ref="vim.vm.RuntimeInfo"
      vmodl-name="runtime"
      >
      <description-html>
         <![CDATA[Execution state and history for this virtual machine.
 <p>
 The contents of this property change when:
 <ul>
 <li>the virtual machine's power state changes.</li>
 <li>an execution message is pending.</li>
 <li>an event occurs.</li>
 </ul>]]>
      </description-html>
      </property>

            <property name="guest" type-id-ref="vim.vm.GuestInfo"
      vmodl-name="guest"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Information about VMware Tools and about the virtual machine
 from the perspective of VMware Tools.
 Information about the guest operating system is available in VirtualCenter. Guest
 operating system information reflects the last known state of the virtual machine.
 For powered on machines, this is current information. For powered off machines,
 this is the last recorded state before the virtual machine was powered off.]]>
      </description-html>
      </property>

            <property name="summary" type-id-ref="vim.vm.Summary"
      vmodl-name="summary"
      >
      <description-html>
         <![CDATA[Basic information about this virtual machine. This includes:
 <ul>
 <li>runtimeInfo</li>
 <li>guest</li>
 <li>basic configuration</li>
 <li>alarms</li>
 <li>performance information</li>
 </ul>]]>
      </description-html>
      </property>

            <property name="datastore" type-id-ref="vim.Datastore"
      vmodl-name="datastore"
      is-array="true"
      is-optional="true"
      privilege="System.View"
      >
      <description-html>
         <![CDATA[A collection of references to the subset of datastore objects in the datacenter
  that is used by this virtual machine.]]>
      </description-html>
      </property>

            <property name="network" type-id-ref="vim.Network"
      vmodl-name="network"
      is-array="true"
      is-optional="true"
      privilege="System.View"
      >
      <description-html>
         <![CDATA[A collection of references to the subset of network objects in the datacenter that
  is used by this virtual machine.]]>
      </description-html>
      </property>

            <property name="snapshot" type-id-ref="vim.vm.SnapshotInfo"
      vmodl-name="snapshot"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Current snapshot and tree.
 The property is valid if snapshots have been created
 for this virtual machine.
 <p>
 The contents of this property change in response to the methods:
 <ul>
 <li><a href="vim.VirtualMachine.html#createSnapshot">CreateSnapshot_Task</a></li>
 <li><a href="vim.VirtualMachine.html#revertToCurrentSnapshot">RevertToCurrentSnapshot_Task</a></li>
 <li><a href="vim.vm.Snapshot.html#remove">RemoveSnapshot_Task</a></li>
 <li><a href="vim.vm.Snapshot.html#revert">RevertToSnapshot_Task</a></li>
 <li><a href="vim.VirtualMachine.html#removeAllSnapshots">RemoveAllSnapshots_Task</a></li>
 </ul>]]>
      </description-html>
      </property>

            <property name="rootSnapshot" type-id-ref="vim.vm.Snapshot"
      vmodl-name="rootSnapshot"
      version-id-ref="vim.version.version6"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The roots of all snapshot trees for the virtual machine.]]>
      </description-html>
      </property>

            <property name="guestHeartbeatStatus" type-id-ref="vim.ManagedEntity.Status"
      vmodl-name="guestHeartbeatStatus"
      >
      <description-html>
         <![CDATA[The guest heartbeat.
 The heartbeat status is classified as:
  <ul>
  <li> gray - VMware Tools are not installed or not running.</li>
  <li> red - No heartbeat. Guest operating system may have stopped responding.</li>
  <li> yellow - Intermittent heartbeat. May be due to guest load.</li>
  <li> green - Guest operating system is responding normally.</li>
  </ul>
  The guest heartbeat is a statistics metric. Alarms can be configured on
  this metric to trigger emails or other actions.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.VirtualMachine.StorageRequirement</nested-type-id-ref>
      <nested-type-id-ref>vim.VirtualMachine.PowerState</nested-type-id-ref>
      <nested-type-id-ref>vim.VirtualMachine.AppHeartbeatStatusType</nested-type-id-ref>
      <nested-type-id-ref>vim.VirtualMachine.ConnectionState</nested-type-id-ref>
      <nested-type-id-ref>vim.VirtualMachine.CryptoState</nested-type-id-ref>
      <nested-type-id-ref>vim.VirtualMachine.MovePriority</nested-type-id-ref>
      <nested-type-id-ref>vim.VirtualMachine.Ticket</nested-type-id-ref>
      <nested-type-id-ref>vim.VirtualMachine.MksTicket</nested-type-id-ref>
      <nested-type-id-ref>vim.VirtualMachine.FaultToleranceState</nested-type-id-ref>
      <nested-type-id-ref>vim.VirtualMachine.RecordReplayState</nested-type-id-ref>
      <nested-type-id-ref>vim.VirtualMachine.NeedSecondaryReason</nested-type-id-ref>
      <nested-type-id-ref>vim.VirtualMachine.FaultToleranceType</nested-type-id-ref>
      <nested-type-id-ref>vim.VirtualMachine.TicketType</nested-type-id-ref>
      <nested-type-id-ref>vim.VirtualMachine.DisplayTopology</nested-type-id-ref>
      <nested-type-id-ref>vim.VirtualMachine.DiskChangeInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.VirtualMachine.WipeResult</nested-type-id-ref>
   <method name="RefreshStorageInfo"
      vmodl-name="refreshStorageInfo"
      version-id-ref="vim.version.version5"
      privilege="System.Read"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Explicitly refreshes the storage information of this virtual machine,
 updating properties <a href="vim.VirtualMachine.html#storage">Storage</a>, <a href="vim.VirtualMachine.html#layoutEx">LayoutEx</a>
 and <a href="vim.vm.Summary.html#storage">storage</a>.
 This is an asynchronous operation which will return immediately; changes
 may not be reflected in vCenter for some time.]]>
      </description-html>
   </method>
   <method name="CreateSnapshot"
      vmodl-name="createSnapshot"
      privilege="VirtualMachine.State.CreateSnapshot"
      type-id-ref="vim.vm.Snapshot"
      is-task="true"
      >
      <description-html>
         <![CDATA[Creates a new snapshot of this virtual machine. As a side effect,
 this updates the current snapshot.
 <p>
 Snapshots are not supported for Fault Tolerance primary and secondary
 virtual machines.
 <p>
 Any % (percent) character used in this name parameter must be escaped, unless it
 is used to start an escape sequence. Clients may also escape any other characters
 in this name parameter.
 <p>]]>
      </description-html>
      <parameter name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      version-id-ref="vim.version.version1"
      privilege="name"
      >
      <description-html>
         <![CDATA[The name for this snapshot. The name need not be unique for
 this virtual machine.]]>
      </description-html>
      </parameter>
      <parameter name="description" type-id-ref="java.lang.String"
      vmodl-name="description"
      version-id-ref="vim.version.version1"
      is-optional="true"
      privilege="description"
      >
      <description-html>
         <![CDATA[A description for this snapshot. If omitted, a default
 description may be provided.]]>
      </description-html>
      </parameter>
      <parameter name="memory" type-id-ref="BOOLEAN"
      vmodl-name="memory"
      version-id-ref="vim.version.version1"
      privilege="memory"
      >
      <description-html>
         <![CDATA[If TRUE, a dump of the internal state of the virtual machine
 (basically a memory dump) is included in the snapshot. Memory snapshots
 consume time and resources, and thus take longer to create. When set to FALSE,
 the power state of the snapshot is set to powered off.
 <p>
 <a href="vim.vm.ConfigOption.html#capabilities">capabilities</a>
 indicates whether or not this virtual machine supports this operation.

 For a virtual machine in suspended state we always include memory
 unless <a href="vim.vm.Capability.html#diskOnlySnapshotOnSuspendedVMSupported">diskOnlySnapshotOnSuspendedVMSupported</a> is
 true.]]>
      </description-html>
      </parameter>
      <parameter name="quiesce" type-id-ref="BOOLEAN"
      vmodl-name="quiesce"
      version-id-ref="vim.version.version1"
      privilege="quiesce"
      >
      <description-html>
         <![CDATA[If TRUE and the virtual machine is powered on when the
 snapshot is taken, VMware Tools is used to quiesce the file
 system in the virtual machine. This assures that a disk snapshot
 represents a consistent state of the guest file systems. If the virtual machine
 is powered off or VMware Tools are not available, the quiesce flag is ignored.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.TaskInProgress">
      <fault-description-html>
         <![CDATA[if the virtual machine is busy.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.SnapshotFault">
      <fault-description-html>
         <![CDATA[if an error occurs during the snapshot operation.
         Typically a more specific fault like MultipleSnapshotsNotSupported
         is thrown.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.VmConfigFault">
      <fault-description-html>
         <![CDATA[if the virtual machine's configuration is invalid.
         Typically, a more specific fault like InvalidSnapshotState is thrown.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.FileFault">
      <fault-description-html>
         <![CDATA[if there is a problem with creating or accessing one
         or more files needed for this operation.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidName">
      <fault-description-html>
         <![CDATA[if the specified snapshot name is invalid.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the operation cannot be performed because of the
         virtual machine's current state. For example, the virtual machine
         configuration information is not available.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidPowerState">
      <fault-description-html>
         <![CDATA[if the operation cannot be performed in the current
         power state of the virtual machine.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[the newly created Snapshot.]]>
      </return-value-description-html>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to monitor the
       operation. The <a href="vim.TaskInfo.html#result">result</a> property in the
       <a href="vim.Task.html">Task</a> contains the newly created <a href="vim.vm.Snapshot.html">VirtualMachineSnapshot</a> upon
       success.]]>
      </task-description-html>
   </method>
   <method name="CreateSnapshotEx"
      vmodl-name="createSnapshotEx"
      version-id-ref="vim.version.version11"
      privilege="VirtualMachine.State.CreateSnapshot"
      type-id-ref="vim.vm.Snapshot"
      is-task="true"
      >
      <description-html>
         <![CDATA[Creates a new snapshot of this virtual machine. As a side effect,
 this updates the current snapshot.
 <p>
 Snapshots are not supported for Fault Tolerance primary and secondary
 virtual machines.
 <p>
 Any % (percent) character used in this name parameter must be escaped,
 unless it is used to start an escape sequence. Clients may also escape
 any other characters in this name parameter.
 <p>]]>
      </description-html>
      <parameter name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      version-id-ref="vim.version.version11"
      privilege="name"
      >
      <description-html>
         <![CDATA[The name for this snapshot. The name need not be unique for
 this virtual machine.]]>
      </description-html>
      </parameter>
      <parameter name="description" type-id-ref="java.lang.String"
      vmodl-name="description"
      version-id-ref="vim.version.version11"
      is-optional="true"
      privilege="description"
      >
      <description-html>
         <![CDATA[A description for this snapshot. If omitted, a default
 description may be provided.]]>
      </description-html>
      </parameter>
      <parameter name="memory" type-id-ref="BOOLEAN"
      vmodl-name="memory"
      version-id-ref="vim.version.version11"
      privilege="memory"
      >
      <description-html>
         <![CDATA[If TRUE, a dump of the internal state of the virtual machine
 (basically a memory dump) is included in the snapshot. Memory snapshots
 consume time and resources, and thus take longer to create.
 When set to FALSE, the power state of the snapshot is set to powered off.
 <p>
 <a href="vim.vm.ConfigOption.html#capabilities">capabilities</a>
 indicates whether or not this virtual machine supports this operation.

 For a virtual machine in suspended state we always include memory
 unless <a href="vim.vm.Capability.html#diskOnlySnapshotOnSuspendedVMSupported">diskOnlySnapshotOnSuspendedVMSupported</a> is
 true.]]>
      </description-html>
      </parameter>
      <parameter name="quiesceSpec" type-id-ref="vim.vm.GuestQuiesceSpec"
      vmodl-name="quiesceSpec"
      version-id-ref="vim.version.version11"
      is-optional="true"
      privilege="quiesceSpec"
      >
      <description-html>
         <![CDATA[Spec for granular control over quiesce details.
 If quiesceSpec is set and the virtual machine is powered on when the
 snapshot is taken, VMware Tools is used to quiesce the file
 system in the virtual machine. This assures that a disk snapshot
 represents a consistent state of the guest file systems. If the virtual
 machine is powered off or VMware Tools are not available, the quiesce
 spec is ignored. If the spec type is <a href="vim.vm.GuestQuiesceSpec.html">VirtualMachineGuestQuiesceSpec</a>, the
 default quiescing process will be applied. If the spec type is
 <a href="vim.vm.WindowsQuiesceSpec.html">VirtualMachineWindowsQuiesceSpec</a> and Guest OS is Windows, the parameters
 will control the VSS process.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.TaskInProgress">
      <fault-description-html>
         <![CDATA[if the virtual machine is busy.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.SnapshotFault">
      <fault-description-html>
         <![CDATA[if an error occurs during the snapshot operation.
         Typically a more specific fault like MultipleSnapshotsNotSupported
         is thrown.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.VmConfigFault">
      <fault-description-html>
         <![CDATA[if the virtual machine's configuration is invalid.
         Typically, a more specific fault like InvalidSnapshotState is
         thrown.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.FileFault">
      <fault-description-html>
         <![CDATA[if there is a problem with creating or accessing one
         or more files needed for this operation.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidName">
      <fault-description-html>
         <![CDATA[if the specified snapshot name is invalid.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the operation cannot be performed because of the
         virtual machine's current state. For example, the virtual machine
         configuration information is not available.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidPowerState">
      <fault-description-html>
         <![CDATA[if the operation cannot be performed in the
         current power state of the virtual machine.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[the newly created Snapshot.]]>
      </return-value-description-html>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to monitor
       the operation. The <a href="vim.TaskInfo.html#result">result</a> property
       in the <a href="vim.Task.html">Task</a> contains the newly created
       <a href="vim.vm.Snapshot.html">VirtualMachineSnapshot</a> upon success.]]>
      </task-description-html>
   </method>
   <method name="RevertToCurrentSnapshot"
      vmodl-name="revertToCurrentSnapshot"
      privilege="VirtualMachine.State.RevertToSnapshot"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Reverts the virtual machine to the current snapshot. This is equivalent to
  doing snapshot.currentSnapshot.revert.
  <p>
  If no snapshot exists, then the operation does nothing,
  and the virtual machine state remains unchanged.]]>
      </description-html>
      <parameter name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      version-id-ref="vim.version.version1"
      is-optional="true"
      privilege="host"
      >
      <description-html>
         <![CDATA[(optional) Choice of host for the virtual machine,
  in case this operation causes the virtual machine to power on.
  <p>
  If a snapshot was taken while a virtual machine was powered on,
  and this operation is invoked after the virtual machine was
  powered off, the operation causes the virtual machine to power
  on to reach the snapshot state. This parameter can be used to
  specify a choice of host where the virtual machine should power
  on.
  <p>
  If this parameter is not set, and the vBalance feature is
  configured for automatic load balancing, a host is
  automatically selected. Otherwise, the virtual machine keeps
  its existing host affiliation.
  <p>
  This is not supported for virtual machines associated with hosts on ESX 2.x
  servers.]]>
      </description-html>
      </parameter>
      <parameter name="suppressPowerOn" type-id-ref="BOOLEAN"
      vmodl-name="suppressPowerOn"
      version-id-ref="vim.version.version1"
      is-optional="true"
      privilege="suppressPowerOn"
      >
      <description-html>
         <![CDATA[(optional) If set to true, the virtual
  machine will not be powered on regardless of the power state when
  the current snapshot was created. Default to false.
  <p>]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.TaskInProgress">
      <fault-description-html>
         <![CDATA[if the virtual machine is busy.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.SnapshotFault">
      <fault-description-html>
         <![CDATA[if an error occurs during the snapshot operation.
          Typically, a more specific fault like InvalidSnapshotFormat
          is thrown.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InsufficientResourcesFault">
      <fault-description-html>
         <![CDATA[if this operation would violate a resource
          usage policy.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the operation cannot be performed because of the
          virtual machine's current state. For example, if the virtual machine
          configuration information is not available or if an OVF consumer is
          blocking the operation.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.VmConfigFault">
      <fault-description-html>
         <![CDATA[if a configuration issue prevents the power-on. Typically, a
          more specific fault, such as UnsupportedVmxLocation, is thrown.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[if the virtual machine does not have a current snapshot.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidPowerState">
      <fault-description-html>
         <![CDATA[if the operation cannot be performed in the current
          power state of the virtual machine.]]>
      </fault-description-html>
      </fault>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to monitor the
        operation.]]>
      </task-description-html>
   </method>
   <method name="RemoveAllSnapshots"
      vmodl-name="removeAllSnapshots"
      privilege="VirtualMachine.State.RemoveSnapshot"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Remove all the snapshots associated with this virtual machine. If the virtual
 machine
 does not have any snapshots, then this operation simply returns successfully.]]>
      </description-html>
      <parameter name="consolidate" type-id-ref="BOOLEAN"
      vmodl-name="consolidate"
      version-id-ref="vim.version.version1"
      is-optional="true"
      privilege="consolidate"
      >
      <description-html>
         <![CDATA[(optional) If set to true, the virtual disks of the deleted
 snapshot will be merged with other disk if possible. Default to true.
 <p>]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.TaskInProgress">
      <fault-description-html>
         <![CDATA[if the virtual machine is busy.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the operation cannot be performed because of the
         virtual machine's current state. For example, if the virtual machine
         configuration information is not available.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.SnapshotFault">
      <fault-description-html>
         <![CDATA[if an error occurs during the snapshot operation.
         Typically, a more specific fault like InvalidSnapshotFormat
         is thrown.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidPowerState">
      <fault-description-html>
         <![CDATA[if the operation cannot be performed in the current
         power state of the virtual machine.]]>
      </fault-description-html>
      </fault>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to monitor the
        operation.]]>
      </task-description-html>
   </method>
   <method name="ConsolidateVMDisks"
      vmodl-name="consolidateDisks"
      version-id-ref="vim.version.version7"
      privilege="VirtualMachine.State.RemoveSnapshot"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Consolidate the virtual disk files of the virtual machine by finding hierarchies
 of redo logs that can be combined without violating data dependency. The
 redundant redo logs after merging are then deleted.

 Consolidation improves I/O performance since less number of virtual disk
 files need to be traversed; it also reduces the storage usage. However
 additional space is temporarily required to perform the operation. Use <a href="vim.VirtualMachine.html#estimateStorageRequirementForConsolidate">EstimateStorageForConsolidateSnapshots_Task</a> to estimate the
 temporary space required.

 Consolidation can be I/O intensive, it is advisable to invoke this operation
 when guest is not under heavy I/O usage.]]>
      </description-html>
      <fault type-id-ref="vim.fault.TaskInProgress">
      <fault-description-html>
         <![CDATA[if the virtual machine is busy.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the operation cannot be performed because of the
         virtual machine's current state. For example, if the virtual
         machine configuration information is not available.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.FileFault">
      <fault-description-html>
         <![CDATA[if if there is a problem creating or accessing the
         virtual machine's files for this operation. Typically a more
         specific fault for example <a href="vim.fault.NoDiskSpace.html">NoDiskSpace</a> is
         thrown.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.VmConfigFault">
      <fault-description-html>
         <![CDATA[if a virtual machine configuration issue prevents
         consolidation.  Typically, a more specific fault is thrown
         such as <a href="vim.fault.InvalidDiskFormat.html">InvalidDiskFormat</a> if a disk cannot
         be read, or <a href="vim.fault.InvalidSnapshotFormat.html">InvalidSnapshotFormat</a> if the
         snapshot configuration is invalid.]]>
      </fault-description-html>
      </fault>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to monitor the
        operation.]]>
      </task-description-html>
   </method>
   <method name="EstimateStorageForConsolidateSnapshots"
      vmodl-name="estimateStorageRequirementForConsolidate"
      version-id-ref="vim.version.version7"
      is-array="true"
      is-optional="true"
      privilege="VirtualMachine.State.RemoveSnapshot"
      type-id-ref="vim.VirtualMachine.StorageRequirement"
      is-task="true"
      >
      <description-html>
         <![CDATA[Estimate the temporary space required to consolidation disk
 files. The estimation is a lower bound if the childmost writable disk
 file will be consolidated for an online virtual machine, it is
 accurate for all other situations. This is because the space
 requirement depending on the size of the childmost disk file and how
 write intensive the guest is.
 <p>
 This method can be used prior to invoke consolidation via
 <a href="vim.VirtualMachine.html#consolidateDisks">ConsolidateVMDisks_Task</a>.]]>
      </description-html>
      <fault type-id-ref="vim.fault.TaskInProgress">
      <fault-description-html>
         <![CDATA[if the virtual machine is busy.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the operation cannot be performed because of the
         virtual machine's current state. For example, if the virtual machine
         configuration information is not available.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.FileFault">
      <fault-description-html>
         <![CDATA[if if there is a problem accessing the
         virtual machine's files for this operation. Typically a more
         specific fault <a href="vim.fault.FileLocked.html">FileLocked</a> is thrown.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.VmConfigFault">
      <fault-description-html>
         <![CDATA[if a virtual machine configuration issue prevents
         the estimation.  Typically, a more specific fault is thrown.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[Space requirement for each datastore involved.]]>
      </return-value-description-html>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to monitor the
        operation.]]>
      </task-description-html>
   </method>
   <method name="ReconfigVM"
      vmodl-name="reconfigure"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Reconfigures this virtual machine. All the changes in the given configuration
 are applied to the virtual machine as an atomic operation.
 <p>
 Reconfiguring the virtual machine may require any of the following privileges
 depending on what is being changed:
 <ul>
    <li>VirtualMachine.Interact.DeviceConnection if changing the runtime connection
        state of a device as embodied by the Connectable property.</li>
    <li>VirtualMachine.Interact.SetCDMedia if changing the backing of a CD-ROM
        device</li>
    <li>VirtualMachine.Interact.SetFloppyMedia if changing the backing of a
        floppy device</li>
    <li>VirtualMachine.Config.Rename if renaming the virtual machine</li>
    <li>VirtualMachine.Config.Annotation if setting annotation a value</li>
    <li>VirtualMachine.Config.AddExistingDisk if adding a virtual disk device
        that is backed by an existing virtual disk file</li>
    <li>VirtualMachine.Config.AddNewDisk if adding a virtual disk device for which
        the backing virtual disk file is to be created</li>
    <li>VirtualMachine.Config.RemoveDisk if removing a virtual disk device that
        refers to a virtual disk file</li>
    <li>VirtualMachine.Config.CPUCount if changing the number of CPUs</li>
    <li>VirtualMachine.Config.Memory if changing the amount of memory</li>
    <li>VirtualMachine.Config.RawDevice if adding, removing or editing a raw
        device mapping (RDM) or SCSI passthrough device</li>
    <li>VirtualMachine.Config.AddRemoveDevice if adding or removing any
        device other than disk, raw, or USB device</li>
    <li>VirtualMachine.Config.EditDevice if changing the settings of any
        device</li>
    <li>VirtualMachine.Config.Settings if changing any basic settings such as
        those in ToolsConfigInfo, FlagInfo, or DefaultPowerOpInfo</li>
    <li>VirtualMachine.Config.Resource if changing resource allocations,
        affinities, or setting network traffic shaping or virtual disk shares</li>
    <li>VirtualMachine.Config.AdvancedConfig if changing values in
        extraConfig</li>
    <li>VirtualMachine.Config.SwapPlacement if changing swapPlacement</li>
    <li>VirtualMachine.Config.HostUSBDevice if adding, removing or editing a
        VirtualUSB device backed by the host USB device. </li>
    <li>VirtualMachine.Config.DiskExtend if extending an existing VirtualDisk
        device. </li>
    <li>VirtualMachine.Config.ChangeTracking if enabling/disabling changed
        block tracking for the virtual machine's disks.</li>
    <li>VirtualMachine.Config.MksControl if toggling display connection
        limits or the guest auto-lock feature. </li>
    <li>DVSwitch.CanUse if connecting a VirtualEthernetAdapter to a port
        in a DistributedVirtualSwitch.</li>
    <li>DVPortgroup.CanUse if connecting a VirtualEthernetAdapter to a
        DistributedVirtualPortgroup.</li>
    <li>Cryptographer.Encrypt if vm home folder is encrypted or existing
        disk is encryted.</li>
    <li>Cryptographer.Decrypt if vm home folder is decrypted or existing
        disk is decryted.</li>
    <li>Cryptographer.Recrypt if vm home folder is recrypted or existing
        disk is recryted.</li>
    <li>Cryptographer.AddDisk if encrypted disk is attached to the vm.</li>
    <li>Cryptographer.RegisterHost on the host if the virtual machine is
        encrypted, but encryption is not enabled on the host.</li>
 </ul>
 Creating a virtual machine may require the following privileges:
 <ul>
     <li>VirtualMachine.Config.RawDevice if adding a raw device</li>
     <li>VirtualMachine.Config.AddExistingDisk if adding a VirtualDisk and
         the fileOperation is unset</li>
     <li>VirtualMachine.Config.AddNewDisk if adding a VirtualDisk and
         the fileOperation is set</li>
    <li>VirtualMachine.Config.HostUSBDevice if adding a VirtualUSB device
        backed by the host USB device.</li>
 </ul>
 In addition, this operation may require the following privileges:
 <ul>
     <li>Datastore.AllocateSpace on any datastore where virtual disks will
         be created or extended.</li>
     <li>Network.Assign on any network the virtual machine will be
         connected to.</li>
</ul>

 To create a VirtualDisk on a persistent memory storage, the storage
 must be specified via
 <a href="vim.vm.device.VirtualDeviceSpec.html#profile">profile</a> while the datastore
 property of corresponding VirtualDisk backing must be unset.
 <p>
 To create a VirtualNVDIMM device, the storage
 <a href="vim.vm.device.VirtualDeviceSpec.html#profile">profile</a> must be set to the
 default persistent memory storage profile while the datastore property of
 the device backing must be
 unset.
 <p>]]>
      </description-html>
      <parameter name="spec" type-id-ref="vim.vm.ConfigSpec"
      vmodl-name="spec"
      version-id-ref="vim.version.version1"
      privilege="spec"
      >
      <description-html>
         <![CDATA[The new configuration values.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.TaskInProgress">
      <fault-description-html>
         <![CDATA[if the virtual machine is busy.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.VmConfigFault">
      <fault-description-html>
         <![CDATA[if the spec is invalid. Typically, a more specific subclass
         is thrown.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.ConcurrentAccess">
      <fault-description-html>
         <![CDATA[if the changeVersion does not match the server's
         changeVersion for the configuration.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.FileFault">
      <fault-description-html>
         <![CDATA[if there is a problem creating or accessing the virtual machine's
         files for this operation. Typically a more specific fault like NoDiskSpace
         or FileAlreadyExists is thrown.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidName">
      <fault-description-html>
         <![CDATA[if the specified name is invalid.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.DuplicateName">
      <fault-description-html>
         <![CDATA[if the specified name already exists in the parent folder.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the operation cannot be performed in the current state
          of the virtual machine. For example, because the virtual machine's
          configuration is not available.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InsufficientResourcesFault">
      <fault-description-html>
         <![CDATA[if this operation would violate a resource
         usage policy.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidDatastore">
      </fault>
      <fault type-id-ref="vim.fault.InvalidPowerState">
      <fault-description-html>
         <![CDATA[if the power state is poweredOn and the virtual hardware
         cannot support the configuration changes.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.TooManyDevices">
      <fault-description-html>
         <![CDATA[if the device specifications exceed the allowed limits.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.CpuHotPlugNotSupported">
      <fault-description-html>
         <![CDATA[if the current configuration of the VM does not
                                support hot-plugging of CPUs.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.MemoryHotPlugNotSupported">
      <fault-description-html>
         <![CDATA[if the current configuration of the VM does not
                                   support hot-plugging of memory.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.VmWwnConflict">
      <fault-description-html>
         <![CDATA[if the WWN of the virtual machine has been used by
          other virtual machines.]]>
      </fault-description-html>
      </fault>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to monitor the
       operation.]]>
      </task-description-html>
   </method>
   <method name="UpgradeVM"
      vmodl-name="upgradeVirtualHardware"
      privilege="VirtualMachine.Config.UpgradeVirtualHardware"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Upgrades this virtual machine's virtual hardware to the latest revision
 that is supported by the virtual machine's current host.]]>
      </description-html>
      <parameter name="version" type-id-ref="java.lang.String"
      vmodl-name="version"
      version-id-ref="vim.version.version1"
      is-optional="true"
      privilege="version"
      >
      <description-html>
         <![CDATA[If specified, upgrade to that specified version. If not specified,
                upgrade to the most current virtual hardware supported on the host.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the host is in maintenance mode,
                      if an invalid version string is specified, or
                      if the virtual machine is in a state in which the operation
                      cannot be performed. For example, if the configuration
                      information is not available.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.TaskInProgress">
      <fault-description-html>
         <![CDATA[if the virtual machine is busy.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.AlreadyUpgraded">
      <fault-description-html>
         <![CDATA[if the virtual machine's hardware is already up-to-date.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.NoDiskFound">
      <fault-description-html>
         <![CDATA[if no virtual disks are attached to this virtual machine.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidPowerState">
      <fault-description-html>
         <![CDATA[if the power state is not poweredOff.]]>
      </fault-description-html>
      </fault>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to monitor the
       operation.]]>
      </task-description-html>
   </method>
   <method name="ExtractOvfEnvironment"
      vmodl-name="extractOvfEnvironment"
      version-id-ref="vim.version.version5"
      privilege="VApp.ExtractOvfEnvironment"
      type-id-ref="java.lang.String"
      >
      <description-html>
         <![CDATA[Returns the OVF environment for a virtual machine. If the virtual machine has no
 vApp configuration, an empty string is returned. Also, sensitive information
 is omitted, so this method is not guaranteed to return the complete OVF
 environment.]]>
      </description-html>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the virtual machine is not running]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="PowerOnVM"
      vmodl-name="powerOn"
      privilege="VirtualMachine.Interact.PowerOn"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Powers on this virtual machine. If the virtual machine is suspended,
 this method resumes execution from the suspend point.
 <p>
 When powering on a virtual machine in a cluster, the system might implicitly
 or due to the host argument, do an implicit relocation of the virtual machine
 to another host. Hence, errors related to this relocation can be thrown. If the
 cluster is a DRS cluster, DRS will be invoked if the virtual machine can be
 automatically placed by DRS (see <a href="vim.cluster.DrsConfigInfo.DrsBehavior.html">DrsBehavior</a>).
 Because this method does not return a DRS <a href="vim.cluster.Recommendation.html">ClusterRecommendation</a>, no
 vmotion nor host power operations will be done as part of a DRS-facilitated power
 on. To have DRS consider such operations use <a href="vim.Datacenter.html#powerOnVm">PowerOnMultiVM_Task</a>.
 As of vSphere API 5.1, use of this method with vCenter Server is deprecated;
 use <a href="vim.Datacenter.html#powerOnVm">PowerOnMultiVM_Task</a> instead.
 <p>
 If this virtual machine is a fault tolerant primary virtual machine, its
 secondary virtual machines will be started on system-selected
 hosts. If the virtual machines are in a VMware DRS enabled cluster,
 then DRS will be invoked to obtain placements for the secondaries but
 no vmotion nor host power operations will be considered for these power ons.]]>
      </description-html>
      <parameter name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      version-id-ref="vim.version.version1"
      is-optional="true"
      privilege="host"
      >
      <description-html>
         <![CDATA[(optional) The host where the virtual machine is to be powered on.
 If no host is specified, the current associated host is used. This field must
 specify a host that is part of the same compute resource that the virtual machine
 is currently associated with. If this host is not compatible, the current host
 association is used.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.TaskInProgress">
      <fault-description-html>
         <![CDATA[if the virtual machine is busy.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the host is in maintenance mode or if
         the virtual machine's configuration information is not available
         or if the virtual machine is already powering on]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InsufficientResourcesFault">
      <fault-description-html>
         <![CDATA[if this operation would violate a resource
         usage policy.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.VmConfigFault">
      <fault-description-html>
         <![CDATA[if a configuration issue prevents the power-on.
         Typically, a more specific fault, such as UnsupportedVmxLocation, is
         thrown.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.FileFault">
      <fault-description-html>
         <![CDATA[if there is a problem accessing the virtual machine on the
         filesystem.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidPowerState">
      <fault-description-html>
         <![CDATA[if the power state is poweredOn.]]>
      </fault-description-html>
      </fault>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to monitor the
       operation.]]>
      </task-description-html>
   </method>
   <method name="PowerOffVM"
      vmodl-name="powerOff"
      privilege="VirtualMachine.Interact.PowerOff"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Powers off this virtual machine.


 If this virtual machine is a fault tolerant primary virtual machine, this
 will result in the secondary virtual machine(s) getting powered off as well.]]>
      </description-html>
      <fault type-id-ref="vim.fault.TaskInProgress">
      <fault-description-html>
         <![CDATA[if the virtual machine is busy.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the operation cannot be performed because of the
         virtual machine's current state. For example, if the virtual machine
         configuration information is not available.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidPowerState">
      <fault-description-html>
         <![CDATA[if the power state is not poweredOn.]]>
      </fault-description-html>
      </fault>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to monitor the
       operation.]]>
      </task-description-html>
   </method>
   <method name="SuspendVM"
      vmodl-name="suspend"
      privilege="VirtualMachine.Interact.Suspend"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Suspends execution in this virtual machine.]]>
      </description-html>
      <fault type-id-ref="vim.fault.TaskInProgress">
      <fault-description-html>
         <![CDATA[if the virtual machine is busy.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the operation cannot be performed because of the
         virtual machine's current state. For example, if the virtual machine
         configuration information is not available.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidPowerState">
      <fault-description-html>
         <![CDATA[if the power state is not poweredOn.]]>
      </fault-description-html>
      </fault>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to monitor the
       operation.]]>
      </task-description-html>
   </method>
   <method name="ResetVM"
      vmodl-name="reset"
      privilege="VirtualMachine.Interact.Reset"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Resets power on this virtual machine. If the current state is poweredOn,
 then this method first performs powerOff(hard). Once the power state
 is poweredOff, then this method performs powerOn(option).
 <p>
 Although this method functions as a powerOff followed by a powerOn, the
 two operations are atomic with respect to other clients, meaning that
 other power operations cannot be performed until the reset method completes.]]>
      </description-html>
      <fault type-id-ref="vim.fault.TaskInProgress">
      <fault-description-html>
         <![CDATA[if the virtual machine is busy.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the host is in maintenance mode.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidPowerState">
      <fault-description-html>
         <![CDATA[if the power state is suspended or poweredOff.]]>
      </fault-description-html>
      </fault>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to monitor the
       operation.]]>
      </task-description-html>
   </method>
   <method name="ShutdownGuest"
      vmodl-name="shutdownGuest"
      privilege="VirtualMachine.Interact.PowerOff"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Issues a command to the guest operating system asking it to perform
 a clean shutdown of all services.
 Returns immediately and does not wait for the guest operating system
 to complete the operation.]]>
      </description-html>
      <fault type-id-ref="vim.fault.ToolsUnavailable">
      <fault-description-html>
         <![CDATA[if VMware Tools is not running.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.TaskInProgress">
      <fault-description-html>
         <![CDATA[if the virtual machine is busy.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the operation cannot be performed because of the
         virtual machine's current state. For example, if the virtual machine
         configuration information is not available.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidPowerState">
      <fault-description-html>
         <![CDATA[if the power state is not powered on.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="RebootGuest"
      vmodl-name="rebootGuest"
      privilege="VirtualMachine.Interact.Reset"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Issues a command to the guest operating system asking it to perform
 a reboot.
 Returns immediately and does not wait for the guest operating system
 to complete the operation.]]>
      </description-html>
      <fault type-id-ref="vim.fault.ToolsUnavailable">
      <fault-description-html>
         <![CDATA[if VMware Tools is not running.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.TaskInProgress">
      <fault-description-html>
         <![CDATA[if the virtual machine is busy.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the operation cannot be performed because of the
         virtual machine's current state. For example, if the virtual machine
         configuration information is not available.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidPowerState">
      <fault-description-html>
         <![CDATA[if the power state is not powered on.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="StandbyGuest"
      vmodl-name="standbyGuest"
      privilege="VirtualMachine.Interact.Suspend"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Issues a command to the guest operating system asking it to prepare for
 a suspend operation.
 Returns immediately and does not wait for the guest operating system
 to complete the operation.]]>
      </description-html>
      <fault type-id-ref="vim.fault.ToolsUnavailable">
      <fault-description-html>
         <![CDATA[if VMware Tools is not running.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.TaskInProgress">
      <fault-description-html>
         <![CDATA[if the virtual machine is busy.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the operation cannot be performed because of the
         virtual machine's current state. For example, if the virtual machine
         configuration information is not available.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidPowerState">
      <fault-description-html>
         <![CDATA[if the power state is not powered on.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="AnswerVM"
      vmodl-name="answer"
      privilege="VirtualMachine.Interact.AnswerQuestion"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Responds to a question that is blocking this virtual machine.]]>
      </description-html>
      <parameter name="questionId" type-id-ref="java.lang.String"
      vmodl-name="questionId"
      version-id-ref="vim.version.version1"
      privilege="questionId"
      >
      <description-html>
         <![CDATA[The value from QuestionInfo.id that identifies the question
 to answer.]]>
      </description-html>
      </parameter>
      <parameter name="answerChoice" type-id-ref="java.lang.String"
      vmodl-name="answerChoice"
      version-id-ref="vim.version.version1"
      privilege="answerChoice"
      >
      <description-html>
         <![CDATA[The contents of the QuestionInfo.choice.value array element
 that identifies the desired answer.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.ConcurrentAccess">
      <fault-description-html>
         <![CDATA[if the question has been or is being answered by
         another thread or user.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="CustomizeVM"
      vmodl-name="customize"
      privilege="VirtualMachine.Provisioning.Customize"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Customizes a virtual machine's guest operating system.]]>
      </description-html>
      <parameter name="spec" type-id-ref="vim.vm.customization.Specification"
      vmodl-name="spec"
      version-id-ref="vim.version.version1"
      privilege="spec"
      >
      <description-html>
         <![CDATA[The customization specification object.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.CustomizationFault">
      <fault-description-html>
         <![CDATA[A subclass of CustomizationFault is thrown.]]>
      </fault-description-html>
      </fault>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to monitor the
       operation.]]>
      </task-description-html>
   </method>
   <method name="CheckCustomizationSpec"
      vmodl-name="checkCustomizationSpec"
      privilege="VirtualMachine.Provisioning.Customize"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Checks the customization specification against the virtual machine configuration.
 For example, this is used on a source virtual machine before a clone operation to
 catch customization failure before the disk copy. This checks the specification's
 internal consistency as well as for compatibility with this virtual machine's
 configuration.]]>
      </description-html>
      <parameter name="spec" type-id-ref="vim.vm.customization.Specification"
      vmodl-name="spec"
      version-id-ref="vim.version.version1"
      privilege="spec"
      >
      <description-html>
         <![CDATA[The customization specification to check.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.CustomizationFault">
      <fault-description-html>
         <![CDATA[A subclass of CustomizationFault is thrown.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="MigrateVM"
      vmodl-name="migrate"
      is-deprecated="true"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Migrates a virtual machine's execution to a specific resource pool or host.
 <p>
 Requires Resource.HotMigrate privilege if the virtual machine is powered on or
 Resource.ColdMigrate privilege if the virtual machine is powered off or
 suspended.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere 6.5, use <a href="vim.VirtualMachine.html#relocate">RelocateVM_Task</a>
                  instead.]]>
      </deprecated-html>
      <parameter name="pool" type-id-ref="vim.ResourcePool"
      vmodl-name="pool"
      version-id-ref="vim.version.version1"
      is-optional="true"
      privilege="pool"
      >
      <description-html>
         <![CDATA[The target resource pool for the virtual machine. If the pool
        parameter is left unset, the virtual machine's current pool is used
        as the target pool.]]>
      </description-html>
      </parameter>
      <parameter name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      version-id-ref="vim.version.version1"
      is-optional="true"
      privilege="host"
      >
      <description-html>
         <![CDATA[The target host to which the virtual machine is intended to migrate.
        The host parameter
        may be left unset if the compute resource associated with the
        target pool represents a stand-alone host or a DRS-enabled cluster.
        In the former case the stand-alone host is used as the target host.
        In the latter case, the DRS system selects an appropriate
        target host from the cluster.]]>
      </description-html>
      </parameter>
      <parameter name="priority" type-id-ref="vim.VirtualMachine.MovePriority"
      vmodl-name="priority"
      version-id-ref="vim.version.version1"
      privilege="priority"
      >
      <description-html>
         <![CDATA[The task priority (@see vim.VirtualMachine.MovePriority).]]>
      </description-html>
      </parameter>
      <parameter name="state" type-id-ref="vim.VirtualMachine.PowerState"
      vmodl-name="state"
      version-id-ref="vim.version.version1"
      is-optional="true"
      privilege="state"
      >
      <description-html>
         <![CDATA[If specified, the virtual machine migrates only if
        its state matches the specified state.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.MigrationFault">
      <fault-description-html>
         <![CDATA[if it is not possible to migrate the virtual machine to
         the destination host. This is typically due to hosts being incompatible,
         such as mismatch in network polices or access to networks and datastores.
         Typically, a more specific subclass is thrown.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.FileFault">
      <fault-description-html>
         <![CDATA[if, in a case where the virtual machine
         configuration file must be copied, the destination location for
         that file does not have the necessary file access permissions.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.Timedout">
      <fault-description-html>
         <![CDATA[if one of the phases of the migration process times out.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InsufficientResourcesFault">
      <fault-description-html>
         <![CDATA[if this operation would violate a resource
         usage policy.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the operation cannot be performed because of the
         virtual machine's current state or the target host's current state.
         For example, if the virtual machine configuration information is not
         available or if the target host is disconnected or in maintenance mode.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.VmConfigFault">
      <fault-description-html>
         <![CDATA[if the virtual machine is not compatible with the
         destination host. Typically, a specific subclass of this exception is
         thrown, such as IDEDiskNotSupported.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidPowerState">
      <fault-description-html>
         <![CDATA[if the state argument is set and the virtual
         machine does not have that power state.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.NoActiveHostInCluster">
      <fault-description-html>
         <![CDATA[if a target host is not specified and the
         cluster associated with the target pool does not contain at least one
         potential target host. A host must be connected and not in maintenance
         mode in order to be considered as a potential target host.]]>
      </fault-description-html>
      </fault>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to monitor the
       operation.]]>
      </task-description-html>
   </method>
   <method name="RelocateVM"
      vmodl-name="relocate"
      privilege="Resource.ColdMigrate"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Relocates a virtual machine to the location specified by
 <a href="vim.vm.RelocateSpec.html">VirtualMachineRelocateSpec</a>.

 Starting from VCenter 5.1, this API also supports relocating a template
 to a new host should the current host become inactive.
 Starting from vCenter 6.0 this API also supports relocating a VM to a new
 vCenter service.
 <p>
 Requires the following additional permissions:
 <ul>
   <li>Resource.HotMigrate if the virtual machine is powered on.
   <li>Datastore.AllocateSpec if the virtual machine or its disks are
       being relocated to a new datastore.
   <li>Resource.AssignVMToPool if the resource pool is changing.
   <li>VirtualMachine.Inventory.Register against the destination folder if
       the virtual machine is moving to a new vCenter service.
   <li>VirtualMachine.Inventory.Move against the virtual machine, source
       folder, and destination folder if the virtual machine is changing
       folders within the same vCenter service.
   <li>Network.Assign against the new network if the virtual machine is
       changing networks.
 </ul>
 <p>
 If this virtual machine is configured with a VirtualNVDIMM device, and if
 the virtual machine will be moved to a different host, the VirtualNVDIMM
 will be automatically relocated to the destination host's Non-Volatile
 Memory storage.

 If this Virtual machine is configured with virtual disks via
 persistent memory storage profile:
 <ul>
   <li>If spec specifies only compute location change, these virtual disks
       will be automatically moved to a persistent memory storage in
       destination host that supports the profile.
   <li>If spec specifies primary datastore change via
       <a href="vim.vm.RelocateSpec.html#datastore">datastore</a>, unlike regular
       virtual disks, these disks will not be automatically moved to the
       specified datastore, instead they will stay on a persistent
       memory storage in destination host that supports the profile.
   <li>To explicityly move these disks to a location other than
       persistent memory storage, use disk locator to specify the
       new destination datastore along with a storage profile that removes
       the persistent memory storage requirement. Note that this
       downgrades the disk I/O performance.
   <li>On the other hand, to move a virtual disk from a regular storage to
       persistent memory, use
       <a href="vim.vm.RelocateSpec.html#deviceChange">deviceChange</a>
       to specify a storage profile of persistent memory storage. Note
       that this upgrades the disk I/O performance.
 </ul>]]>
      </description-html>
      <parameter name="spec" type-id-ref="vim.vm.RelocateSpec"
      vmodl-name="spec"
      version-id-ref="vim.version.version1"
      privilege="spec"
      >
      <description-html>
         <![CDATA[The specification of where to relocate the virtual machine
              (see <a href="vim.vm.RelocateSpec.html">VirtualMachineRelocateSpec</a>).]]>
      </description-html>
      </parameter>
      <parameter name="priority" type-id-ref="vim.VirtualMachine.MovePriority"
      vmodl-name="priority"
      version-id-ref="vim.version.version1"
      is-optional="true"
      privilege="priority"
      >
      <description-html>
         <![CDATA[The task priority
                 (see <a href="vim.VirtualMachine.MovePriority.html">VirtualMachineMovePriority</a>).]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the operation cannot be performed because of the
         host or virtual machine's current state. For example, if the host is in
         maintenance mode, or if the virtual machine's configuration information
         is not available.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidDatastore">
      <fault-description-html>
         <![CDATA[if the operation cannot be performed on the
         target datastores.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.MigrationFault">
      <fault-description-html>
         <![CDATA[if it is not possible to migrate the virtual machine to
         the destination host. This is typically due to hosts being incompatible,
         such as mismatch in network polices or access to networks and datastores.
         Typically, a more specific subclass is thrown.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.VmConfigFault">
      <fault-description-html>
         <![CDATA[if the virtual machine is not compatible with the
         destination host. Typically, a specific subclass of this exception is
         thrown, such as IDEDiskNotSupported.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.FileFault">
      <fault-description-html>
         <![CDATA[if there is an error accessing the virtual machine files.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.Timedout">
      <fault-description-html>
         <![CDATA[if one of the phases of the relocate process times out.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InsufficientResourcesFault">
      <fault-description-html>
         <![CDATA[if this operation would violate a resource
         usage policy.]]>
      </fault-description-html>
      </fault>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to monitor the
       operation.]]>
      </task-description-html>
   </method>
   <method name="CloneVM"
      vmodl-name="clone"
      type-id-ref="vim.VirtualMachine"
      is-task="true"
      >
      <description-html>
         <![CDATA[Creates a clone of this virtual machine. If the virtual machine
  is used as a template, this method corresponds to the deploy command.
  <p>
  Any % (percent) character used in this name parameter must be escaped, unless it
  is used to start an escape sequence. Clients may also escape any other characters
  in this name parameter.
  <p>
  The privilege required on the source virtual machine depends on the source
  and destination types:
  <ul>
     <li> source is virtual machine, destination is virtual machine -
          VirtualMachine.Provisioning.Clone</li>
     <li> source is virtual machine, destination is template -
          VirtualMachine.Provisioning.CreateTemplateFromVM</li>
     <li> source is template, destination is virtual machine -
          VirtualMachine.Provisioning.DeployTemplate</li>
     <li> source is template, destination is template -
          VirtualMachine.Provisioning.CloneTemplate</li>
     <li> source is encrypted virtual machine - Cryptographer.Clone</li>
  </ul>
  If customization is requested in the CloneSpec, then the
  VirtualMachine.Provisioning.Customize privilege must also be
  held on the source virtual machine.
  <p>
  The Resource.AssignVMToPool privilege is also required for the
  resource pool specified in the CloneSpec, if the destination is not a
  template.
  The Datastore.AllocateSpace privilege is required on all datastores
  where the clone is created.]]>
      </description-html>
      <parameter name="folder" type-id-ref="vim.Folder"
      vmodl-name="folder"
      version-id-ref="vim.version.version1"
      privilege="folder"
      >
      <description-html>
         <![CDATA[The location of the new virtual machine.]]>
      </description-html>
      </parameter>
      <parameter name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      version-id-ref="vim.version.version1"
      privilege="name"
      >
      <description-html>
         <![CDATA[The name of the new virtual machine.]]>
      </description-html>
      </parameter>
      <parameter name="spec" type-id-ref="vim.vm.CloneSpec"
      vmodl-name="spec"
      version-id-ref="vim.version.version1"
      privilege="spec"
      >
      <description-html>
         <![CDATA[Specifies how to clone the virtual machine. The folder
        specified in the spec takes precedence over the folder parameter.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.CustomizationFault">
      <fault-description-html>
         <![CDATA[if a customization error happens.
         Typically, a specific subclass of this exception is thrown.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the operation cannot be performed because of the
         virtual machine's current state. For example, if the virtual machine
         configuration information is not available.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidDatastore">
      <fault-description-html>
         <![CDATA[if the operation cannot be performed on the
         target datastores.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.TaskInProgress">
      <fault-description-html>
         <![CDATA[if the virtual machine is busy.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.VmConfigFault">
      <fault-description-html>
         <![CDATA[if the virtual machine is not compatible with the
         destination host. Typically, a specific subclass of this exception is
         thrown, such as IDEDiskNotSupported.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.FileFault">
      <fault-description-html>
         <![CDATA[if there is an error accessing the virtual machine files.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.MigrationFault">
      <fault-description-html>
         <![CDATA[if it is not possible to migrate the virtual machine to
         the destination host. This is typically due to hosts being incompatible,
         such as mismatch in network polices or access to networks and datastores.
         Typically, a more specific subclass is thrown.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InsufficientResourcesFault">
      <fault-description-html>
         <![CDATA[if this operation would violate a resource
         usage policy.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[the newly created VirtualMachine.]]>
      </return-value-description-html>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to monitor the
       operation. The <a href="vim.TaskInfo.html#result">result</a> property in the
       <a href="vim.Task.html">Task</a> contains the newly added <a href="vim.VirtualMachine.html">VirtualMachine</a> upon
       success.]]>
      </task-description-html>
   </method>
   <method name="InstantClone"
      vmodl-name="instantClone"
      version-id-ref="vim.version.version12"
      privilege="VirtualMachine.Provisioning.Clone"
      type-id-ref="vim.VirtualMachine"
      is-task="true"
      >
      <description-html>
         <![CDATA[Creates a powered-on Instant Clone of a virtual machine.  The new
  virtual machine will be created on the same host and start with the
  identical running point as the original virtual machine, sharing memory
  state when possible and sharing disk state.
  The original virtual machine must be in a powered-on state.

  The privilege required for Instant Clone operation are:
  <ul>
     <li>VirtualMachine.Provisioning.Clone</li>
     <li>VirtualMachine.Interact.PowerOn</li>
     <li>VirtualMachine.Inventory.CreateFromExisting</li>
     <li>Datastore.AllocateSpace</li>
     <li>Resource.AssignVMToPool</li>
  </ul>]]>
      </description-html>
      <parameter name="spec" type-id-ref="vim.vm.InstantCloneSpec"
      vmodl-name="spec"
      version-id-ref="vim.version.version12"
      privilege="spec"
      >
      <description-html>
         <![CDATA[Is a <a href="vim.vm.InstantCloneSpec.html">VirtualMachineInstantCloneSpec</a>. It specifies the
         cloned virtual machine's configuration.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.TaskInProgress">
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the operation cannot be performed because of the
          host or virtual machine's current state. For example, if the host
          is in maintenance mode or if the source virtual machine is not
          powered on.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidDatastore">
      <fault-description-html>
         <![CDATA[if the operation cannot be performed on the
          target datastores.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InsufficientResourcesFault">
      <fault-description-html>
         <![CDATA[if this operation would violate a
          resource usage policy.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.DisallowedMigrationDeviceAttached">
      <fault-description-html>
         <![CDATA[if any of the devices attached
          to the source virtual machine are not supported for the Instant
          Clone operation or if device change specification contains
          changes that are not supported.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.FileFault">
      <fault-description-html>
         <![CDATA[if there is an error accessing the virtual machine
          files.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[the newly created virtual machine.]]>
      </return-value-description-html>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to monitor
        the operation.]]>
      </task-description-html>
   </method>
   <method name="ExportVm"
      vmodl-name="exportVm"
      version-id-ref="vim.version.version5"
      privilege="VApp.Export"
      type-id-ref="vim.HttpNfcLease"
      >
      <description-html>
         <![CDATA[Obtains an export lease on this virtual machine. The export lease contains
  a list of URLs for the virtual disks for this virtual machine, as well as
  a ticket giving access to the URLs.
  <p>
  See <a href="vim.HttpNfcLease.html">HttpNfcLease</a> for information on how to use the lease.]]>
      </description-html>
      <fault type-id-ref="vim.fault.InvalidPowerState">
      <fault-description-html>
         <![CDATA[if the virtual machine is powered on.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.TaskInProgress">
      <fault-description-html>
         <![CDATA[if the virtual machine is busy.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the operation cannot be performed because of the
         virtual machine's current state. For example, if the virtual machine
         configuration information is not available.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.FileFault">
      <fault-description-html>
         <![CDATA[if there is an error accessing the virtual machine files.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[The export lease on this <a href="vim.VirtualMachine.html">VirtualMachine</a>. The
         export task continues running until the lease is completed by the
         caller.]]>
      </return-value-description-html>
   </method>
   <method name="MarkAsTemplate"
      vmodl-name="markAsTemplate"
      privilege="VirtualMachine.Provisioning.MarkAsTemplate"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Marks a VirtualMachine object as being used as a template.
  Note: A VirtualMachine marked as a template cannot be powered on.]]>
      </description-html>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the operation cannot be performed because of the
         virtual machine's current state. For example, if the virtual machine
         configuration information is not available.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.VmConfigFault">
      <fault-description-html>
         <![CDATA[if the template is incompatible with the host, such
                        as the files are not accessible.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.FileFault">
      <fault-description-html>
         <![CDATA[if there is an error accessing the virtual machine files.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidPowerState">
      <fault-description-html>
         <![CDATA[if the virtual machine is not powered off.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="MarkAsVirtualMachine"
      vmodl-name="markAsVirtualMachine"
      privilege="VirtualMachine.Provisioning.MarkAsVM"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Clears the 'isTemplate' flag and reassociates the virtual machine with
  a resource pool and host.]]>
      </description-html>
      <parameter name="pool" type-id-ref="vim.ResourcePool"
      vmodl-name="pool"
      version-id-ref="vim.version.version1"
      privilege="pool"
      >
      <description-html>
         <![CDATA[Resource pool to associate with the virtual machine.]]>
      </description-html>
      </parameter>
      <parameter name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      version-id-ref="vim.version.version1"
      is-optional="true"
      privilege="host"
      >
      <description-html>
         <![CDATA[The target host on which the virtual machine is intended to run. The
         host
         parameter must specify a host that is a member of the ComputeResource
         indirectly specified by the pool. For a stand-alone host or a cluster with
         DRS, it can be omitted and the system selects a default.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the virtual machine is not marked as a template.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidDatastore">
      <fault-description-html>
         <![CDATA[if the operation cannot be performed on the
          target datastores.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.VmConfigFault">
      <fault-description-html>
         <![CDATA[if the virtual machine is not compatible with the
          host. For example, a DisksNotSupported fault if the destination host
          does not support the disk backings of the template.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.FileFault">
      <fault-description-html>
         <![CDATA[if there is an error accessing the virtual machine files.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="UnregisterVM"
      vmodl-name="unregister"
      privilege="VirtualMachine.Inventory.Unregister"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Removes this virtual machine from the inventory without removing
  any of the virtual machine's files on disk. All high-level information
  stored with the management server (ESX Server or VirtualCenter) is
  removed, including information such as statistics, resource pool association,
  permissions, and alarms.
  <p>
  Use the Folder.RegisterVM method to recreate a
  VirtualMachine object from the set of virtual machine files by passing in
  the path to the configuration file. However, the VirtualMachine managed object
  that results typically has different objects ID and may inherit a different
  set of permissions.]]>
      </description-html>
      <fault type-id-ref="vim.fault.TaskInProgress">
      <fault-description-html>
         <![CDATA[if the virtual machine is busy.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidPowerState">
      <fault-description-html>
         <![CDATA[if the virtual machine is powered on.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="ResetGuestInformation"
      vmodl-name="resetGuestInformation"
      privilege="VirtualMachine.Config.ResetGuestInfo"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Clears cached guest information. Guest information can be cleared
  only if the virtual machine is powered off.
  <p>
  This method can be useful if stale information is cached,
  preventing an IP address or MAC address from being reused.]]>
      </description-html>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the virtual machine is not powered off.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="MountToolsInstaller"
      vmodl-name="mountToolsInstaller"
      privilege="VirtualMachine.Interact.ToolsInstall"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Mounts the VMware Tools CD installer as a CD-ROM for the guest operating system.
  To monitor the status of the tools install, clients should check the tools status,
  <a href="vim.vm.GuestInfo.html#toolsVersionStatus">toolsVersionStatus</a> and
  <a href="vim.vm.GuestInfo.html#toolsRunningStatus">toolsRunningStatus</a>]]>
      </description-html>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the virtual machine is not running,
  or the VMware Tools CD is already mounted.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.VmConfigFault">
      </fault>
      <fault type-id-ref="vim.fault.VmToolsUpgradeFault">
      <fault-description-html>
         <![CDATA[if the VMware Tools CD failed to mount.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="UnmountToolsInstaller"
      vmodl-name="unmountToolsInstaller"
      privilege="VirtualMachine.Interact.ToolsInstall"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Unmounts VMware Tools installer CD.]]>
      </description-html>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the virtual machine is not running,
  VMware Tools is not running or the VMware Tools CD is already mounted.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.VmConfigFault">
      </fault>
   </method>
   <method name="UpgradeTools"
      vmodl-name="upgradeTools"
      privilege="VirtualMachine.Interact.ToolsInstall"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Begins the tools upgrade process.
  To monitor the status of the tools install, clients should check the tools status,
  <a href="vim.vm.GuestInfo.html#toolsVersionStatus">toolsVersionStatus</a> and
  <a href="vim.vm.GuestInfo.html#toolsRunningStatus">toolsRunningStatus</a>.]]>
      </description-html>
      <parameter name="installerOptions" type-id-ref="java.lang.String"
      vmodl-name="installerOptions"
      version-id-ref="vim.version.version1"
      is-optional="true"
      privilege="installerOptions"
      >
      <description-html>
         <![CDATA[Command line options passed to the installer to modify
  the installation procedure for tools.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the virtual machine is not running
  or is suspended.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.TaskInProgress">
      <fault-description-html>
         <![CDATA[if an upgrade is already taking place.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.VmToolsUpgradeFault">
      <fault-description-html>
         <![CDATA[if the upgrade failed.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.ToolsUnavailable">
      <fault-description-html>
         <![CDATA[if VMware Tools is not running.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.VmConfigFault">
      </fault>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to monitor the
        operation.]]>
      </task-description-html>
   </method>
   <method name="AcquireMksTicket"
      vmodl-name="acquireMksTicket"
      is-deprecated="true"
      privilege="VirtualMachine.Interact.ConsoleInteract"
      type-id-ref="vim.VirtualMachine.MksTicket"
      >
      <description-html>
         <![CDATA[Creates and returns a one-time credential used in establishing a
  remote mouse-keyboard-screen connection to this virtual
  machine.

  The correct function of this method depends on being able to
  retrieve TCP binding information about the server end of the
  client connection that is requesting the ticket. If such
  information is not available, the NotSupported fault is thrown.
  This method is appropriate for SOAP and authenticated connections,
  which are both TCP-based connections.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 4.1, use <a href="vim.VirtualMachine.html#acquireTicket">AcquireTicket</a> instead.]]>
      </deprecated-html>
      <return-value-description-html>
         <![CDATA[A one-time credential used in establishing a remote
          mouse-keyboard-screen connection.]]>
      </return-value-description-html>
   </method>
   <method name="AcquireTicket"
      vmodl-name="acquireTicket"
      version-id-ref="vim.version.version6"
      type-id-ref="vim.VirtualMachine.Ticket"
      >
      <description-html>
         <![CDATA[Creates and returns a one-time credential used in establishing a
  specific connection to this virtual machine, for example, a ticket
  type of mks can be used to establish a remote mouse-keyboard-screen
  connection.
  <p>
  A client using this ticketing mechanism must have network
  connectivity to the ESX server where the virtual machine is running,
  and the ESX server must be reachable to the management client from
  the address made available to the client via the ticket.
  <p>
  Acquiring a virtual machine ticket requires different privileges
  depending on the types of ticket:
  <ul>
    <li>VirtualMachine.Interact.DeviceConnection if requesting a device
        ticket.</li>
    <li>VirtualMachine.Interact.GuestControl if requesting a guestControl
        or guestIntegrity ticket.</li>
    <li>VirtualMachine.Interact.ConsoleInteract if requesting an mks
        or webmks ticket.</li>
    <li>VirtualMachine.Interact.DnD if requesting a drag and drop
        ticket.</li>
 </ul>]]>
      </description-html>
      <parameter name="ticketType" type-id-ref="java.lang.String"
      vmodl-name="ticketType"
      version-id-ref="vim.version.version6"
      privilege="ticketType"
      >
      <description-html>
         <![CDATA[The type of service to acquire, the set of possible
         values is described in <a href="vim.VirtualMachine.TicketType.html">VirtualMachineTicketType</a>.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the virtual machine is not connected.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[A one-time credential used in establishing a remote
          connection to this virtual machine.]]>
      </return-value-description-html>
   </method>
   <method name="SetScreenResolution"
      vmodl-name="setScreenResolution"
      privilege="VirtualMachine.Interact.ConsoleInteract"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Sets the console window's resolution as specified.]]>
      </description-html>
      <parameter name="width" type-id-ref="INT"
      vmodl-name="width"
      version-id-ref="vim.version.version1"
      privilege="width"
      >
      <description-html>
         <![CDATA[The screen width that should be set.]]>
      </description-html>
      </parameter>
      <parameter name="height" type-id-ref="INT"
      vmodl-name="height"
      version-id-ref="vim.version.version1"
      privilege="height"
      >
      <description-html>
         <![CDATA[The screen height that should be set.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the virtual machine is not connected.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.ToolsUnavailable">
      <fault-description-html>
         <![CDATA[if VMware Tools is not running.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidPowerState">
      <fault-description-html>
         <![CDATA[if the power state is not poweredOn.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="DefragmentAllDisks"
      vmodl-name="defragmentAllDisks"
      version-id-ref="vim.version.version2"
      privilege="VirtualMachine.Interact.DefragmentAllDisks"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Defragment all virtual disks attached to this virtual machine.]]>
      </description-html>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the virtual machine is not connected.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidPowerState">
      <fault-description-html>
         <![CDATA[if the virtual machine is poweredOn.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.TaskInProgress">
      <fault-description-html>
         <![CDATA[if the virtual machine is busy.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.FileFault">
      <fault-description-html>
         <![CDATA[if there is an error accessing the disk files.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="CreateSecondaryVM"
      vmodl-name="createSecondary"
      version-id-ref="vim.version.version5"
      is-deprecated="true"
      privilege="VirtualMachine.Interact.CreateSecondary"
      type-id-ref="vim.vm.FaultToleranceSecondaryOpResult"
      is-task="true"
      >
      <description-html>
         <![CDATA[Creates a secondary virtual machine to be part of this fault tolerant group.
 <p>
 If a host is specified, the secondary virtual machine will be created on it.
 Otherwise, a host will be selected by the system.
 <p>
 If the primary virtual machine (i.e., this virtual machine) is powered on when
 the secondary is created, an attempt will be made to power on the secondary on
 a system selected host. If the cluster is a DRS cluster, DRS will be
 invoked to obtain a placement for the new secondary virtual machine. If the DRS
 recommendation (see <a href="vim.cluster.Recommendation.html">ClusterRecommendation</a>)
 is automatic, it will be automatically executed. Otherwise, the recommendation will
 be returned to the caller of this method and the secondary will remain powered off
 until the recommendation is approved using <a href="vim.ClusterComputeResource.html#applyRecommendation">ApplyRecommendation</a>.
 Failure to power on the secondary virtual machine will not fail the creation of the secondary.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 6.0, use <a href="vim.VirtualMachine.html#createSecondaryEx">CreateSecondaryVMEx_Task</a> instead.]]>
      </deprecated-html>
      <parameter name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      version-id-ref="vim.version.version5"
      is-optional="true"
      privilege="host"
      >
      <description-html>
         <![CDATA[The host where the secondary virtual machine is to be
 created and powered on. If no host is specified, a compatible host will be
 selected by the system. If a host cannot be found for the secondary or the specified
 host is not suitable, the secondary will not be created and a fault will be returned.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.TaskInProgress">
      <fault-description-html>
         <![CDATA[if the virtual machine is busy.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the virtual machine's configuration information
         is not available.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InsufficientResourcesFault">
      <fault-description-html>
         <![CDATA[if this operation would violate a resource
         usage policy.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.VmFaultToleranceIssue">
      <fault-description-html>
         <![CDATA[if any error is encountered with the
         fault tolerance configuration of the virtual machine. Typically,
         a more specific fault like FaultToleranceNotLicensed is thrown.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.FileFault">
      <fault-description-html>
         <![CDATA[if there is a problem accessing the virtual machine on the
         filesystem.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.VmConfigFault">
      <fault-description-html>
         <![CDATA[if a configuration issue prevents creating the secondary.
         Typically, a more specific fault such as
         VmConfigIncompatibleForFaultTolerance is thrown.]]>
      </fault-description-html>
      </fault>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to monitor the
       operation. The <a href="vim.TaskInfo.html#result">result</a> property in the
       <a href="vim.Task.html">Task</a> returns an instance of the
       <a href="vim.vm.FaultToleranceSecondaryOpResult.html">FaultToleranceSecondaryOpResult</a> data object, which
       contains a reference to the created <a href="vim.VirtualMachine.html">VirtualMachine</a>
       and the status of powering it on, if attempted.]]>
      </task-description-html>
   </method>
   <method name="CreateSecondaryVMEx"
      vmodl-name="createSecondaryEx"
      version-id-ref="vim.version.version10"
      privilege="VirtualMachine.Interact.CreateSecondary"
      type-id-ref="vim.vm.FaultToleranceSecondaryOpResult"
      is-task="true"
      >
      <description-html>
         <![CDATA[Creates a secondary virtual machine to be part of this fault tolerant group.
 <p>
 If a host is specified, the secondary virtual machine will be created on it.
 Otherwise, a host will be selected by the system.
 <p>
 If a FaultToleranceConfigSpec is specified, the virtual machine's
 configuration files and disks will be created in the specified datastores.
 <p>
 If the primary virtual machine (i.e., this virtual machine) is powered on when
 the secondary is created, an attempt will be made to power on the secondary on
 a system selected host. If the cluster is a DRS cluster, DRS will be
 invoked to obtain a placement for the new secondary virtual machine. If the DRS
 recommendation (see <a href="vim.cluster.Recommendation.html">ClusterRecommendation</a>)
 is automatic, it will be automatically executed. Otherwise, the recommendation will
 be returned to the caller of this method and the secondary will remain powered off
 until the recommendation is approved using <a href="vim.ClusterComputeResource.html#applyRecommendation">ApplyRecommendation</a>.
 Failure to power on the secondary virtual machine will not fail the creation of the secondary.]]>
      </description-html>
      <parameter name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      version-id-ref="vim.version.version10"
      is-optional="true"
      privilege="host"
      >
      <description-html>
         <![CDATA[The host where the secondary virtual machine is to be
 created and powered on. If no host is specified, a compatible host will be
 selected by the system. If a host cannot be found for the secondary or the specified
 host is not suitable, the secondary will not be created and a fault will be returned.]]>
      </description-html>
      </parameter>
      <parameter name="spec" type-id-ref="vim.vm.FaultToleranceConfigSpec"
      vmodl-name="spec"
      version-id-ref="vim.version.version10"
      is-optional="true"
      privilege="spec"
      >
      <description-html>
         <![CDATA[This parameter <a href="vim.vm.FaultToleranceVMConfigSpec.html">FaultToleranceVMConfigSpec</a> can
             be used to specify the storage location of the fault tolerance
             tie-breaker file, secondary configuration file and secondary
             disks.
             <p>
             If the virtual machine is on a vSAN datastore, then the
             Fault Tolerance secondary virtual machine and the tie-breaker
             file also have to be placed on that same vSAN datastore.
             Conversely, if a primary VM is not using vSAN datastore,
             then its Fault Tolerance secondary virtual machine can
             not be placed on a vSAN datastore. Fault Tolerance is not
             supported for VMs that are using both vSAN and non-vSAN
             datastores for its configuration and disks.
             <p>
             If the virtual machine is using persistent memory for any of
             its disks, then its corresponding secondary disk placement
             entry should not be specified in the
             <a href="vim.vm.FaultToleranceVMConfigSpec.html">FaultToleranceVMConfigSpec</a>. The system will
             automatically place the corresponding secondary disk on
             persistent memory.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.TaskInProgress">
      <fault-description-html>
         <![CDATA[if the virtual machine is busy.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the virtual machine's configuration information
         is not available.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InsufficientResourcesFault">
      <fault-description-html>
         <![CDATA[if this operation would violate a resource
         usage policy.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.VmFaultToleranceIssue">
      <fault-description-html>
         <![CDATA[if any error is encountered with the
         fault tolerance configuration of the virtual machine. Typically,
         a more specific fault like FaultToleranceNotLicensed is thrown.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.FileFault">
      <fault-description-html>
         <![CDATA[if there is a problem accessing the virtual machine on the
         filesystem.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.VmConfigFault">
      <fault-description-html>
         <![CDATA[if a configuration issue prevents creating the secondary.
         Typically, a more specific fault such as
         VmConfigIncompatibleForFaultTolerance is thrown.]]>
      </fault-description-html>
      </fault>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to monitor the
       operation. The <a href="vim.TaskInfo.html#result">result</a> property in the
       <a href="vim.Task.html">Task</a> returns an instance of the
       <a href="vim.vm.FaultToleranceSecondaryOpResult.html">FaultToleranceSecondaryOpResult</a> data object, which
       contains a reference to the created <a href="vim.VirtualMachine.html">VirtualMachine</a>
       and the status of powering it on, if attempted.]]>
      </task-description-html>
   </method>
   <method name="TurnOffFaultToleranceForVM"
      vmodl-name="turnOffFaultTolerance"
      version-id-ref="vim.version.version5"
      privilege="VirtualMachine.Interact.TurnOffFaultTolerance"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Removes all secondary virtual machines associated with the fault tolerant
 group and turns off protection for this virtual machine.

 This operation can only be invoked from the primary virtual machine in
 the group.]]>
      </description-html>
      <fault type-id-ref="vim.fault.TaskInProgress">
      <fault-description-html>
         <![CDATA[if the virtual machine is busy.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.VmFaultToleranceIssue">
      <fault-description-html>
         <![CDATA[if any error is encountered with the
         fault tolerance configuration of the virtual machine. Typically,
         a more specific fault like InvalidOperationOnSecondaryVm is thrown.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the host is in maintenance mode or if
         the virtual machine's configuration information is not available.]]>
      </fault-description-html>
      </fault>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to monitor the
       operation.]]>
      </task-description-html>
   </method>
   <method name="MakePrimaryVM"
      vmodl-name="makePrimary"
      version-id-ref="vim.version.version5"
      privilege="VirtualMachine.Interact.MakePrimary"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Makes the specified secondary virtual machine from this fault tolerant group as
 the primary virtual machine.]]>
      </description-html>
      <parameter name="vm" type-id-ref="vim.VirtualMachine"
      vmodl-name="vm"
      version-id-ref="vim.version.version5"
      privilege="vm"
      >
      <description-html>
         <![CDATA[The secondary virtual machine specified will be made the primary
 virtual machine.

 This field must specify a secondary virtual machine that is part of the fault
 tolerant group that this virtual machine is currently associated with. It can
 only be invoked from the primary virtual machine in the group.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.TaskInProgress">
      <fault-description-html>
         <![CDATA[if the virtual machine is busy.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.VmFaultToleranceIssue">
      <fault-description-html>
         <![CDATA[if any error is encountered with the
         fault tolerance configuration of the virtual machine. Typically,
         a more specific fault like InvalidOperationOnSecondaryVm is thrown.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the host is in maintenance mode or if
         the virtual machine's configuration information is not available.]]>
      </fault-description-html>
      </fault>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to monitor the
       operation.]]>
      </task-description-html>
   </method>
   <method name="TerminateFaultTolerantVM"
      vmodl-name="terminateFaultTolerantVM"
      version-id-ref="vim.version.version5"
      privilege="VirtualMachine.Interact.TerminateFaultTolerantVM"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Terminates the specified secondary virtual machine in a fault tolerant group. This
 can be used to test fault tolerance on a given virtual machine, and should
 be used with care.]]>
      </description-html>
      <parameter name="vm" type-id-ref="vim.VirtualMachine"
      vmodl-name="vm"
      version-id-ref="vim.version.version5"
      is-optional="true"
      privilege="vm"
      >
      <description-html>
         <![CDATA[The secondary virtual machine specified will be terminated, allowing
            fault tolerance to activate. If no virtual machine is specified,
            all secondary virtual machines will be terminated. If vm is a
            primary, InvalidArgument exception is thrown.

 This field must specify a virtual machine that is part of the fault
 tolerant group that this virtual machine is currently associated with. It can
 only be invoked from the primary virtual machine in the group. If the primary
 virtual machine is terminated, an available secondary virtual machine will be
 promoted to primary. If no secondary exists, an exception will be thrown and
 the primary virtual machine will not be terminated. If a secondary virtual
 machine is terminated, it may be respawned on a potentially different host.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.TaskInProgress">
      <fault-description-html>
         <![CDATA[if the virtual machine is busy.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.VmFaultToleranceIssue">
      <fault-description-html>
         <![CDATA[if any error is encountered with the
         fault tolerance configuration of the virtual machine. Typically,
         a more specific fault like InvalidOperationOnSecondaryVm is thrown.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the host is in maintenance mode or if
         the virtual machine's configuration information is not available.]]>
      </fault-description-html>
      </fault>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to monitor the
       operation.]]>
      </task-description-html>
   </method>
   <method name="DisableSecondaryVM"
      vmodl-name="disableSecondary"
      version-id-ref="vim.version.version5"
      privilege="VirtualMachine.Interact.DisableSecondary"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Disables the specified secondary virtual machine in this fault tolerant group.
 The specified secondary will not be automatically started on a subsequent
 power-on of the primary virtual machine.

 This operation could leave the primary virtual machine in a non-fault
 tolerant state.]]>
      </description-html>
      <parameter name="vm" type-id-ref="vim.VirtualMachine"
      vmodl-name="vm"
      version-id-ref="vim.version.version5"
      privilege="vm"
      >
      <description-html>
         <![CDATA[The secondary virtual machine specified will be disabed.

 This field must specify a secondary virtual machine that is part of the fault
 tolerant group that this virtual machine is currently associated with. It can
 only be invoked from the primary virtual machine in the group.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.TaskInProgress">
      <fault-description-html>
         <![CDATA[if the virtual machine is busy.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.VmFaultToleranceIssue">
      <fault-description-html>
         <![CDATA[if any error is encountered with the
         fault tolerance configuration of the virtual machine. Typically,
         a more specific fault like InvalidOperationOnSecondaryVm is thrown.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the host is in maintenance mode or if
         the virtual machine's configuration information is not available.]]>
      </fault-description-html>
      </fault>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to monitor the
       operation.]]>
      </task-description-html>
   </method>
   <method name="EnableSecondaryVM"
      vmodl-name="enableSecondary"
      version-id-ref="vim.version.version5"
      privilege="VirtualMachine.Interact.EnableSecondary"
      type-id-ref="vim.vm.FaultToleranceSecondaryOpResult"
      is-task="true"
      >
      <description-html>
         <![CDATA[Enables the specified secondary virtual machine in this fault tolerant group.
 <p>
 This operation is used to enable a secondary virtual machine that was
 previously disabled by the <a href="vim.VirtualMachine.html#disableSecondary">DisableSecondaryVM_Task</a>
 call. The specified secondary will be automatically started whenever the
 primary is powered on.
 <p>
 If the primary virtual machine (i.e., this virtual machine) is powered on when
 the secondary is enabled, an attempt will be made to power on the secondary. If
 a host was specified in the method call, this host will be used. If a host is
 not specified, one will be selected by the system. In the latter case, if the cluster
 is a DRS cluster, DRS will be invoked to obtain a placement for the new secondary
 virtual machine. If the DRS recommendation (see <a href="vim.cluster.Recommendation.html">ClusterRecommendation</a>)
 is automatic, it will be executed. Otherwise, the recommendation will be
 returned to the caller of this method and the secondary will remain powered off
 until the recommendation is approved using <a href="vim.ClusterComputeResource.html#applyRecommendation">ApplyRecommendation</a>.]]>
      </description-html>
      <parameter name="vm" type-id-ref="vim.VirtualMachine"
      vmodl-name="vm"
      version-id-ref="vim.version.version5"
      privilege="vm"
      >
      <description-html>
         <![CDATA[The secondary virtual machine specified will be enabled.

 This field must specify a secondary virtual machine that is part of the fault
 tolerant group that this virtual machine is currently associated with. It can
 only be invoked from the primary virtual machine in the group.]]>
      </description-html>
      </parameter>
      <parameter name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      version-id-ref="vim.version.version5"
      is-optional="true"
      privilege="host"
      >
      <description-html>
         <![CDATA[The host on which the secondary virtual machine is to be
 enabled and possibly powered on. If no host is specified, a compatible host
 will be selected by the system. If the secondary virtual machine is not
 compatible with the specified host, the secondary will not be re-enabled
 and a fault will be returned.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.TaskInProgress">
      <fault-description-html>
         <![CDATA[if the virtual machine is busy.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.VmFaultToleranceIssue">
      <fault-description-html>
         <![CDATA[if any error is encountered with the
         fault tolerance configuration of the virtual machine. Typically,
         a more specific fault like InvalidOperationOnSecondaryVm is thrown.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the virtual machine's configuration information is not
         available, if the secondary virtual machine is not disabled, or if a
         power-on is attempted and one is already in progress.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.VmConfigFault">
      <fault-description-html>
         <![CDATA[if a configuration issue prevents enabling the secondary.
         Typically, a more specific fault such as
         VmConfigIncompatibleForFaultTolerance is thrown.]]>
      </fault-description-html>
      </fault>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to monitor the
       operation. The <a href="vim.TaskInfo.html#result">result</a> property in the
       <a href="vim.Task.html">Task</a> returns an instance of the
       <a href="vim.vm.FaultToleranceSecondaryOpResult.html">FaultToleranceSecondaryOpResult</a> data object, which
       contains a reference to the <a href="vim.VirtualMachine.html">VirtualMachine</a>
       and the status of powering it on, if attempted.]]>
      </task-description-html>
   </method>
   <method name="SetDisplayTopology"
      vmodl-name="setDisplayTopology"
      version-id-ref="vim.version.version4"
      privilege="VirtualMachine.Interact.ConsoleInteract"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Sets the console window's display topology as specified.]]>
      </description-html>
      <parameter name="displays" type-id-ref="vim.VirtualMachine.DisplayTopology"
      vmodl-name="displays"
      version-id-ref="vim.version.version4"
      is-array="true"
      privilege="displays"
      >
      <description-html>
         <![CDATA[The topology for each monitor that the
        virtual machine's display must span.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the virtual machine is not connected.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.ToolsUnavailable">
      <fault-description-html>
         <![CDATA[if VMware Tools is not running.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidPowerState">
      <fault-description-html>
         <![CDATA[if the power state is not poweredOn.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="StartRecording"
      vmodl-name="startRecording"
      version-id-ref="vim.version.version5"
      is-deprecated="true"
      privilege="VirtualMachine.Interact.Record"
      type-id-ref="vim.vm.Snapshot"
      is-task="true"
      >
      <description-html>
         <![CDATA[Initiates a recording session on this virtual machine. As a side effect,
 this operation creates a snapshot on the virtual machine, which in turn
 becomes the current snapshot.
 <p>
 This is an experimental interface that is not intended for use in production code.
 <p>]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vsphere API 5.1]]>
      </deprecated-html>
      <parameter name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      version-id-ref="vim.version.version5"
      privilege="name"
      >
      <description-html>
         <![CDATA[The name for the snapshot associated with this recording.
        The name need not be unique for this virtual machine.]]>
      </description-html>
      </parameter>
      <parameter name="description" type-id-ref="java.lang.String"
      vmodl-name="description"
      version-id-ref="vim.version.version5"
      is-optional="true"
      privilege="description"
      >
      <description-html>
         <![CDATA[A description for the snapshot associated with this
        recording. If omitted, a default description may be provided.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the operation cannot be performed because of the
         virtual machine's current state. For example, the virtual machine
         configuration information is not available.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidPowerState">
      <fault-description-html>
         <![CDATA[if the operation cannot be performed in the
         current power state of the virtual machine.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.TaskInProgress">
      <fault-description-html>
         <![CDATA[if the virtual machine is busy.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.FileFault">
      <fault-description-html>
         <![CDATA[if there is a problem with creating or accessing one
         or more files needed for this operation.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.SnapshotFault">
      <fault-description-html>
         <![CDATA[if an error occurs during the snapshot operation.
         Typically, a more specific fault like MultipleSnapshotsNotSupported
         is thrown.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.VmConfigFault">
      </fault>
      <fault type-id-ref="vim.fault.RecordReplayDisabled">
      <fault-description-html>
         <![CDATA[if the record/replay config flag has not been
         enabled for this virtual machine.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.HostIncompatibleForRecordReplay">
      <fault-description-html>
         <![CDATA[if the virtual machine is located
         on a host that does not support record/replay.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidName">
      <fault-description-html>
         <![CDATA[if the specified snapshot name is invalid.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.VmConfigIncompatibleForRecordReplay">
      <fault-description-html>
         <![CDATA[if the virtual machine
         configuration is incompatible for recording.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[the newly created Snapshot associated with this recording.]]>
      </return-value-description-html>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to monitor
       the operation. The <a href="vim.TaskInfo.html#result">result</a> property
       in the <a href="vim.Task.html">Task</a> contains the newly created <a href="vim.vm.Snapshot.html">VirtualMachineSnapshot</a>
       associated with the recording on success.]]>
      </task-description-html>
   </method>
   <method name="StopRecording"
      vmodl-name="stopRecording"
      version-id-ref="vim.version.version5"
      is-deprecated="true"
      privilege="VirtualMachine.Interact.Record"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Stops a currently active recording session on this virtual machine.
 <p>
 This is an experimental interface that is not intended for use in production code.
 <p>]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vsphere API 5.1]]>
      </deprecated-html>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the operation cannot be performed because of the
         virtual machine's current state. For example, the virtual machine
         does not have an active recording session.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidPowerState">
      <fault-description-html>
         <![CDATA[if the operation cannot be performed in the current
         power state of the virtual machine.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.TaskInProgress">
      <fault-description-html>
         <![CDATA[if the virtual machine is busy.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.FileFault">
      <fault-description-html>
         <![CDATA[if there is a problem with creating or accessing one
         or more files needed for this operation.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.SnapshotFault">
      <fault-description-html>
         <![CDATA[if an error occurs during the snapshot operation.
         Typically, a more specific fault like InvalidSnapshotFormat
         is thrown.]]>
      </fault-description-html>
      </fault>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to monitor
       the operation.]]>
      </task-description-html>
   </method>
   <method name="StartReplaying"
      vmodl-name="startReplaying"
      version-id-ref="vim.version.version5"
      is-deprecated="true"
      privilege="VirtualMachine.Interact.Replay"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Starts a replay session on this virtual machine. As a side effect,
 this operation updates the current snapshot of the virtual machine.
 <p>
 This is an experimental interface that is not intended for use in production code.
 <p>]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vsphere API 5.1]]>
      </deprecated-html>
      <parameter name="replaySnapshot" type-id-ref="vim.vm.Snapshot"
      vmodl-name="replaySnapshot"
      version-id-ref="vim.version.version5"
      privilege="replaySnapshot"
      >
      <description-html>
         <![CDATA[The snapshot from which to start the replay. This
        snapshot must have been created by a record operation on the
        virtual machine.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the operation cannot be performed because of the
         virtual machine's current state. For example, the virtual machine
         configuration information is not available.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidPowerState">
      <fault-description-html>
         <![CDATA[if the operation cannot be performed in the
         current power state of the virtual machine.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.TaskInProgress">
      <fault-description-html>
         <![CDATA[if the virtual machine is busy.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.FileFault">
      <fault-description-html>
         <![CDATA[if there is a problem with creating or accessing one
         or more files needed for this operation.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.SnapshotFault">
      <fault-description-html>
         <![CDATA[if an error occurs during the snapshot operation.
         Typically, a more specific fault like InvalidSnapshotFormat
         is thrown.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[if replaySnapshot is no longer present.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.VmConfigFault">
      </fault>
      <fault type-id-ref="vim.fault.RecordReplayDisabled">
      <fault-description-html>
         <![CDATA[if the record/replay config flag has not been
         enabled for this virtual machine.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.HostIncompatibleForRecordReplay">
      <fault-description-html>
         <![CDATA[if the virtual machine is located
         on a host that does not support record/replay.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.VmConfigIncompatibleForRecordReplay">
      <fault-description-html>
         <![CDATA[if the virtual machine
         configuration is incompatible for replaying.]]>
      </fault-description-html>
      </fault>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to monitor
       the operation.]]>
      </task-description-html>
   </method>
   <method name="StopReplaying"
      vmodl-name="stopReplaying"
      version-id-ref="vim.version.version5"
      is-deprecated="true"
      privilege="VirtualMachine.Interact.Replay"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Stops a replay session on this virtual machine.
 <p>
 This is an experimental interface that is not intended for use in production code.
 <p>]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vsphere API 5.1]]>
      </deprecated-html>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the operation cannot be performed because of the
         virtual machine's current state. For example, the virtual machine
         does not have an active recording session.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidPowerState">
      <fault-description-html>
         <![CDATA[if the operation cannot be performed in the
         current power state of the virtual machine.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.TaskInProgress">
      <fault-description-html>
         <![CDATA[if the virtual machine is busy.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.FileFault">
      <fault-description-html>
         <![CDATA[if there is a problem with creating or accessing one
         or more files needed for this operation.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.SnapshotFault">
      <fault-description-html>
         <![CDATA[if an error occurs during the snapshot operation.
         Typically, a more specific fault like InvalidSnapshotFormat
         is thrown.]]>
      </fault-description-html>
      </fault>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to monitor
       the operation.]]>
      </task-description-html>
   </method>
   <method name="PromoteDisks"
      vmodl-name="promoteDisks"
      version-id-ref="vim.version.version5"
      privilege="VirtualMachine.Provisioning.PromoteDisks"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Promotes disks on this virtual machine that have delta disk backings.
 <p>
 A delta disk backing is a way to preserve a virtual disk backing
 at some point in time.  A delta disk backing is a file backing which in
 turn points to the original virtual disk backing (the parent).  After a delta
 disk backing is added, all writes go to the delta disk backing.  All reads
 first try the delta disk backing and then try the parent backing if needed.
 <p>
 Promoting does two things
 <ol>
 <li>
    If the unlink parameter is true, any disk backing which is shared
    shared by multiple virtual machines is copied so that this virtual machine
    has its own unshared version.  Copied files always end up in the virtual
    machine's home directory. To promote the disks of a powered on VM,
    the VM cannot have snapshots.
 </li>
 <li>
    Any disk backing which is not shared between multiple virtual
    machines and is not associated with a snapshot is consolidated
    with its child backing.
 </li>
 </ol>
 <p>
 If the unlink parameter is true, the net effect of this operation is improved
 read performance, at the cost of disk space.  If the unlink parameter is
 false the net effect is improved read performance at the cost of inhibiting
 future sharing.
 <p>
 This operation is only supported if
 <a href="vim.host.Capability.html#deltaDiskBackingsSupported">deltaDiskBackingsSupported</a> is true.
 <p>
 This operation is only supported on VirtualCenter. If no work is required,
 an invocation completes successfully.]]>
      </description-html>
      <parameter name="unlink" type-id-ref="BOOLEAN"
      vmodl-name="unlink"
      version-id-ref="vim.version.version5"
      privilege="unlink"
      >
      <description-html>
         <![CDATA[If true, then these disks will be unlinked before consolidation.]]>
      </description-html>
      </parameter>
      <parameter name="disks" type-id-ref="vim.vm.device.VirtualDisk"
      vmodl-name="disks"
      version-id-ref="vim.version.version5"
      is-array="true"
      is-optional="true"
      privilege="disks"
      >
      <description-html>
         <![CDATA[The set of disks that are to be promoted.
               If this value is unset or the array is empty,
               all disks which have delta disk backings are promoted.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the virtual machine's power state changes
                      during the execution of this method.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidPowerState">
      </fault>
      <fault type-id-ref="vim.fault.TaskInProgress">
      <fault-description-html>
         <![CDATA[if the virtual machine is busy.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="CreateScreenshot"
      vmodl-name="createScreenshot"
      version-id-ref="vim.version.version5"
      privilege="VirtualMachine.Interact.CreateScreenshot"
      type-id-ref="java.lang.String"
      is-task="true"
      >
      <description-html>
         <![CDATA[Create a screen shot of a virtual machine.]]>
      </description-html>
      <fault type-id-ref="vim.fault.TaskInProgress">
      <fault-description-html>
         <![CDATA[if the virtual machine is busy.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.FileFault">
      <fault-description-html>
         <![CDATA[if there is a problem with creating or accessing one
         or more files needed for this operation.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the virtual machine is not ready to respond to
                      such requests.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidPowerState">
      <fault-description-html>
         <![CDATA[if the virtual machine is not powered on.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[Returns the datastore path of the created screen shot.]]>
      </return-value-description-html>
   </method>
   <method name="PutUsbScanCodes"
      vmodl-name="putUsbScanCodes"
      version-id-ref="vim.version.version11"
      privilege="VirtualMachine.Interact.PutUsbScanCodes"
      type-id-ref="INT"
      >
      <description-html>
         <![CDATA[Inject a sequence of USB HID scan codes into the keyboard.]]>
      </description-html>
      <parameter name="spec" type-id-ref="vim.vm.UsbScanCodeSpec"
      vmodl-name="spec"
      version-id-ref="vim.version.version11"
      privilege="spec"
      >
      </parameter>
      <return-value-description-html>
         <![CDATA[Number of keys injected.]]>
      </return-value-description-html>
   </method>
   <method name="QueryChangedDiskAreas"
      vmodl-name="queryChangedDiskAreas"
      version-id-ref="vim.version.version5"
      privilege="VirtualMachine.Provisioning.DiskRandomRead"
      type-id-ref="vim.VirtualMachine.DiskChangeInfo"
      >
      <description-html>
         <![CDATA[Get a list of areas of a virtual disk belonging to this VM that have
 been modified since a well-defined point in the past. The beginning of
 the change interval is identified by "changeId", while the end of the
 change interval is implied by the snapshot ID passed in.
 <p>
 Note that the result of this function may contain "false positives"
 (i.e: flag areas of the disk as modified that are not). However, it is
 guaranteed that no changes will be missed.]]>
      </description-html>
      <parameter name="snapshot" type-id-ref="vim.vm.Snapshot"
      vmodl-name="snapshot"
      version-id-ref="vim.version.version5"
      is-optional="true"
      privilege="snapshot"
      >
      <description-html>
         <![CDATA[Snapshot for which changes that have been made sine
        "changeId" should be computed. If not set, changes are computed
        against the "current" snapshot of the virtual machine. However,
        using the "current" snapshot will only work for virtual machines
        that are powered off.]]>
      </description-html>
      </parameter>
      <parameter name="deviceKey" type-id-ref="INT"
      vmodl-name="deviceKey"
      version-id-ref="vim.version.version5"
      privilege="deviceKey"
      >
      <description-html>
         <![CDATA[Identifies the virtual disk for which to compute changes.]]>
      </description-html>
      </parameter>
      <parameter name="startOffset" type-id-ref="LONG"
      vmodl-name="startOffset"
      version-id-ref="vim.version.version5"
      privilege="startOffset"
      >
      <description-html>
         <![CDATA[Start Offset in bytes at which to start computing changes.
        Typically, callers will make multiple calls to this function, starting
        with startOffset 0 and then examine the "length" property in the
        returned DiskChangeInfo structure, repeatedly calling queryChangedDiskAreas
        until a map forthe entire virtual disk has been obtained.]]>
      </description-html>
      </parameter>
      <parameter name="changeId" type-id-ref="java.lang.String"
      vmodl-name="changeId"
      version-id-ref="vim.version.version5"
      privilege="changeId"
      >
      <description-html>
         <![CDATA[Identifyer referring to a point in the past that should be used
        as the point in time at which to begin including changes to the disk in
        the result. A typical use case would be a backup application obtaining a
        changeId from a virtual disk's backing info when performing a
        backup. When a subsequent incremental backup is to be performed, this
        change Id can be used to obtain a list of changed areas on disk.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.FileFault">
      <fault-description-html>
         <![CDATA[if the virtual disk files cannot be accessed/queried.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[if the snapshot specified does not exist.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[Returns a data structure specifying extents of the virtual disk that
        have changed since the thime the changeId string was obtained.]]>
      </return-value-description-html>
   </method>
   <method name="QueryUnownedFiles"
      vmodl-name="queryUnownedFiles"
      version-id-ref="vim.version.version5"
      is-array="true"
      is-optional="true"
      privilege="VirtualMachine.Config.QueryUnownedFiles"
      type-id-ref="java.lang.String"
      >
      <description-html>
         <![CDATA[For all files that belong to the vm, check that the file owner
  is set to the current datastore principal user, as set by
  <a href="vim.host.DatastoreSystem.html#configureDatastorePrincipal">ConfigureDatastorePrincipal</a>]]>
      </description-html>
      <return-value-description-html>
         <![CDATA[The list of file paths for vm files whose ownership is
          not correct.

  Use <a href="vim.FileManager.html#changeOwner">ChangeOwner</a> to set the file ownership.]]>
      </return-value-description-html>
   </method>
   <method name="reloadVirtualMachineFromPath"
      vmodl-name="reloadFromPath"
      version-id-ref="vim.version.version6"
      privilege="VirtualMachine.Config.ReloadFromPath"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Reloads the configuration for this virtual machine from a given
  datastore path. This is equivalent to unregistering and registering the
  virtual machine from a different path. The virtual machine's hardware
  configuration, snapshots, guestinfo variables etc. will be
  replaced based on the new configuration file. Other information
  associated with the virtual machine object, such as events and
  permissions, will be preserved.
  <p>
  This method is only supported on vCenter Server. It can be invoked on
  inaccessible or orphaned virtual machines, but it cannot be invoked on
  powered on, connected virtual machines. Both the source virtual machine
  object and the destination path should be of the same type i.e. virtual
  machine or template. Reloading a virtual machine with a template or
  vice-versa is not supported.
  <p>
  <i>Note:</i> Since the API replaces the source configuration with that
  of the destination, if the destination configuration does not refer to a
  valid virtual machine, it will create an invalid virtual machine object.
  This API should not be invoked on fault tolerant virtual machines since
  doing so will leave the original virtual machine's configuration in an
  invalid state. It is recommended that you turn off fault tolerance before
  invoking this API.
  <p>]]>
      </description-html>
      <parameter name="configurationPath" type-id-ref="java.lang.String"
      vmodl-name="configurationPath"
      version-id-ref="vim.version.version6"
      privilege="configurationPath"
      >
      </parameter>
      <fault type-id-ref="vim.fault.InvalidPowerState">
      <fault-description-html>
         <![CDATA[if the virtual machine is powered on.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.TaskInProgress">
      <fault-description-html>
         <![CDATA[if the virtual machine is busy.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.FileFault">
      <fault-description-html>
         <![CDATA[if there is a problem creating or accessing the files
          needed for this operation.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the virtual machine is busy or not ready to
         respond to such requests.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.VmConfigFault">
      <fault-description-html>
         <![CDATA[if the format / configuration of the virtual machine
          is invalid. Typically, a more specific fault is thrown such as
          InvalidFormat if the configuration file cannot be read, or
          InvalidDiskFormat if the disks cannot be read.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.AlreadyExists">
      <fault-description-html>
         <![CDATA[if the virtual machine is already registered.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="QueryFaultToleranceCompatibility"
      vmodl-name="queryFaultToleranceCompatibility"
      version-id-ref="vim.version.version6"
      is-deprecated="true"
      is-array="true"
      is-optional="true"
      privilege="VirtualMachine.Config.QueryFTCompatibility"
      type-id-ref="vmodl.MethodFault"
      >
      <description-html>
         <![CDATA[This API can be invoked to determine whether a virtual machine is
  compatible for legacy Fault Tolerance. The API only checks for
  VM-specific factors that impact compatibility for RecordReplay based
  Fault Tolerance. Other requirements for Fault Tolerance such as host
  processor compatibility, logging nic configuration and licensing are
  not covered by this API.

  The query returns a list of faults, each fault corresponding to a
  specific incompatibility. If a given virtual machine is
  compatible for Fault Tolerance, then the fault list returned will be
  empty.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[as of vSphere API 6.0]]>
      </deprecated-html>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the operation cannot be performed because of
         the virtual machine's current state.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.VmConfigFault">
      <fault-description-html>
         <![CDATA[if the virtual machine's configuration is invalid.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="QueryFaultToleranceCompatibilityEx"
      vmodl-name="queryFaultToleranceCompatibilityEx"
      version-id-ref="vim.version.version10"
      is-array="true"
      is-optional="true"
      privilege="VirtualMachine.Config.QueryFTCompatibility"
      type-id-ref="vmodl.MethodFault"
      >
      <description-html>
         <![CDATA[This API can be invoked to determine whether a virtual machine is
  compatible for Fault Tolerance. The API only checks for VM-specific
  factors that impact compatibility for Fault Tolerance. Other
  requirements for Fault Tolerance such as host processor compatibility,
  logging nic configuration and licensing are not covered by this API.

  The query returns a list of faults, each fault corresponding to a
  specific incompatibility. If a given virtual machine is
  compatible for Fault Tolerance, then the fault list returned will be
  empty.]]>
      </description-html>
      <parameter name="forLegacyFt" type-id-ref="BOOLEAN"
      vmodl-name="forLegacyFt"
      version-id-ref="vim.version.version10"
      is-optional="true"
      privilege="forLegacyFt"
      >
      <description-html>
         <![CDATA[checks for legacy record-replay FT compatibility only
                     if this is set to true.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the operation cannot be performed because of
         the virtual machine's current state.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.VmConfigFault">
      <fault-description-html>
         <![CDATA[if the virtual machine's configuration is invalid.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="TerminateVM"
      vmodl-name="terminate"
      version-id-ref="vim.version.version7"
      internal-before-version-id-ref="vim.version.version8"
      privilege="VirtualMachine.Interact.PowerOff"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Do an immediate power off of a VM.
  <p>
  This API issues a SIGKILL to the vmx process of the VM.
  Pending synchronous I/Os may not be written out before the vmx
  process dies depending on accessibility of the datastore.
  <p>]]>
      </description-html>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the VM is not powered on or another issue prevents the
         operation from being performed.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.TaskInProgress">
      <fault-description-html>
         <![CDATA[if the virtual machine is busy.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="SendNMI"
      vmodl-name="sendNMI"
      version-id-ref="vim.version.version10"
      privilege="VirtualMachine.Interact.GuestControl"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Send a non-maskable interrupt (NMI).

 Currently, there is no way to verify if the NMI was actually
 received by the guest OS.]]>
      </description-html>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the virtual machine is not powered on.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="AttachDisk"
      vmodl-name="attachDisk"
      version-id-ref="vim.version.version11"
      privilege="VirtualMachine.Config.AddExistingDisk"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Attach an existing disk to this virtual machine.
 A minimum virtual machine version of 'vmx-13' is required for this
 operation to succeed. If a compatible VM version is not satisfied,
 a <a href="vim.fault.DeviceUnsupportedForVmVersion.html">DeviceUnsupportedForVmVersion</a> fault will be thrown.]]>
      </description-html>
      <parameter name="diskId" type-id-ref="vim.vslm.ID"
      vmodl-name="diskId"
      version-id-ref="vim.version.version11"
      privilege="diskId"
      >
      <description-html>
         <![CDATA[The ID of the virtual disk to be operated. See
               <a href="vim.vslm.ID.html">ID</a>]]>
      </description-html>
      </parameter>
      <parameter name="datastore" type-id-ref="vim.Datastore"
      vmodl-name="datastore"
      version-id-ref="vim.version.version11"
      privilege="datastore"
      >
      <description-html>
         <![CDATA[The datastore where the virtual disk is located.]]>
      </description-html>
      </parameter>
      <parameter name="controllerKey" type-id-ref="INT"
      vmodl-name="controllerKey"
      version-id-ref="vim.version.version11"
      is-optional="true"
      privilege="controllerKey"
      >
      <description-html>
         <![CDATA[Key of the controller the disk will connect to.
                      It can be unset if there is only one controller
                      (SCSI or SATA) with the available slot in the
                      virtual machine. If there are multiple SCSI or
                      SATA controllers available, user must specify
                      the controller; if there is no available
                      controllers, a <a href="vim.fault.MissingController.html">MissingController</a>
                      fault will be thrown.]]>
      </description-html>
      </parameter>
      <parameter name="unitNumber" type-id-ref="INT"
      vmodl-name="unitNumber"
      version-id-ref="vim.version.version11"
      is-optional="true"
      privilege="unitNumber"
      >
      <description-html>
         <![CDATA[The unit number of the attached disk on its controller.
                   If unset, the next available slot on the specified
                   controller or the only available controller will be
                   assigned to the attached disk.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[if the disk object cannot be found.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.VmConfigFault">
      <fault-description-html>
         <![CDATA[if the virtual machine's configuration is invalid.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.FileFault">
      <fault-description-html>
         <![CDATA[if there is a problem creating or accessing the virtual
         machine's files for this operation.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the operation cannot be performed in the current
         state of the virtual machine. For example, because the virtual
         machine's configuration is not available.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidDatastore">
      <fault-description-html>
         <![CDATA[If the datastore cannot be found or inaccessible.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidController">
      <fault-description-html>
         <![CDATA[If the specified controller cannot be found or
                           the specified unitNumber is already taken, or
                           the controller has no free slots.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.MissingController">
      <fault-description-html>
         <![CDATA[If the virtual machine has no or more than one
                           available controllers when controllerKey is
                           unset.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.DeviceUnsupportedForVmVersion">
      <fault-description-html>
         <![CDATA[If the virtual machine's version is
                                       incompatible for the given device.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="DetachDisk"
      vmodl-name="detachDisk"
      version-id-ref="vim.version.version11"
      privilege="VirtualMachine.Config.RemoveDisk"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Detach a disk from this virtual machine.]]>
      </description-html>
      <parameter name="diskId" type-id-ref="vim.vslm.ID"
      vmodl-name="diskId"
      version-id-ref="vim.version.version11"
      privilege="diskId"
      >
      <description-html>
         <![CDATA[The ID of the virtual disk to be operated. See
               <a href="vim.vslm.ID.html">ID</a>]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[if the disk object cannot be found.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.VmConfigFault">
      <fault-description-html>
         <![CDATA[if the virtual machine's configuration is invalid.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.FileFault">
      <fault-description-html>
         <![CDATA[if there is a problem creating or accessing the virtual
         machine's files for this operation.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the operation cannot be performed in the current
         state of the virtual machine. For example, because the virtual
         machine's configuration is not available.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="ApplyEvcModeVM"
      vmodl-name="applyEvcMode"
      version-id-ref="vim.version.version12"
      privilege="VirtualMachine.Config.Settings"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Applies the EVC mode masks to the virtual machine.
 Existing masks will be replaced by the input masks.
 If the mask parameter is not set, then the masks on the virtual machine
 are removed.
 See <a href="vim.EVCMode.html#featureMask">featureMask</a> for the list of masks to provide.
 These can be retrieved from <a href="vim.Capability.html#supportedEVCMode">supportedEVCMode</a>,
 which is accessible in <a href="vim.ServiceInstance.html#capability">Capability</a>.

 <p>
 This operation is only supported if
 <a href="vim.vm.Capability.html#perVmEvcSupported">perVmEvcSupported</a> is true.]]>
      </description-html>
      <parameter name="mask" type-id-ref="vim.host.FeatureMask"
      vmodl-name="mask"
      version-id-ref="vim.version.version12"
      is-array="true"
      is-optional="true"
      privilege="mask"
      >
      <description-html>
         <![CDATA[The feature masks to apply to the virtual machine.
        An empty set of masks will clear EVC settings.]]>
      </description-html>
      </parameter>
      <parameter name="completeMasks" type-id-ref="BOOLEAN"
      vmodl-name="completeMasks"
      version-id-ref="vim.version.version12"
      is-optional="true"
      privilege="completeMasks"
      >
      <description-html>
         <![CDATA[Defaults to true if not set. A true value implies
        that any unspecified feature will not be exposed to the guest.
        A false value will expose any unspecified feature to the guest
        with the value of the host.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.InvalidState">
      </fault>
      <fault type-id-ref="vim.fault.InvalidPowerState">
      <fault-description-html>
         <![CDATA[if the power state is not poweredOff.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="CryptoUnlock"
      vmodl-name="cryptoUnlock"
      version-id-ref="vim.version.version12"
      privilege="Cryptographer.RegisterVM"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Unlocks an encrypted virtual machine by sending the encryption keys for
 the Virtual Machine Home and all the Virtual Disks to the ESX Server.]]>
      </description-html>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[when the required Key Management Server is not
         configured.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vmodl.fault.NotSupported">
      <fault-description-html>
         <![CDATA[if the ESX server doesn't support encryption.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidVmState">
      <fault-description-html>
         <![CDATA[when the virtual machine failed to unlock.]]>
      </fault-description-html>
      </fault>
   </method>
   </managed-object>
   <managed-object name="VStorageObjectManagerBase"
      type-id="vim.vslm.VStorageObjectManagerBase"
      vmodl-name="vim.vslm.VStorageObjectManagerBase"
      version-id-ref="vim.version.version11"
      >
      <description-html>
         <![CDATA[Base interface to manage virtual storage object.]]>
      </description-html>
   </managed-object>
   <managed-object name="HostVMotionSystem"
      type-id="vim.host.VMotionSystem"
      vmodl-name="vim.host.VMotionSystem"
      version-id-ref="vim.version.version1"
      is-deprecated="true"
      base-type-id="vim.ExtensibleManagedObject"
      >
      <description-html>
         <![CDATA[The VMotionSystem managed object describes the VMotion configuration
  of the host.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of VI API 4.0, use <a href="vim.host.ConfigManager.html#virtualNicManager">virtualNicManager</a>]]>
      </deprecated-html>
            <property name="netConfig" type-id-ref="vim.host.VMotionSystem.NetConfig"
      vmodl-name="netConfig"
      is-optional="true"
      >
      <description-html>
         <![CDATA[VMotion network configuration.]]>
      </description-html>
      </property>

            <property name="ipConfig" type-id-ref="vim.host.IpConfig"
      vmodl-name="ipConfig"
      is-optional="true"
      >
      <description-html>
         <![CDATA[IP configuration of the VMotion VirtualNic.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.host.VMotionSystem.NetConfig</nested-type-id-ref>
   <method name="UpdateIpConfig"
      vmodl-name="updateIpConfig"
      privilege="Host.Config.Network"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Update the IP configuration of VMotion VirtualNic.]]>
      </description-html>
      <parameter name="ipConfig" type-id-ref="vim.host.IpConfig"
      vmodl-name="ipConfig"
      version-id-ref="vim.version.version1"
      privilege="ipConfig"
      >
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[if no VirtualNic is selected for VMotion.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[for any other failure]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="SelectVnic"
      vmodl-name="selectVnic"
      privilege="Host.Config.Network"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Select the VirtualNic to be used for VMotion.]]>
      </description-html>
      <parameter name="device" type-id-ref="java.lang.String"
      vmodl-name="device"
      version-id-ref="vim.version.version1"
      privilege="device"
      >
      <description-html>
         <![CDATA[The device that uniquely identifies the VirtualNic.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[for any other failure]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="DeselectVnic"
      vmodl-name="deselectVnic"
      privilege="Host.Config.Network"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Indicate that no VirtualNic should be used for VMotion.]]>
      </description-html>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[is a failure occurred]]>
      </fault-description-html>
      </fault>
   </method>
   </managed-object>
   <managed-object name="FailoverClusterConfigurator"
      type-id="vim.vcha.FailoverClusterConfigurator"
      vmodl-name="vim.vcha.FailoverClusterConfigurator"
      version-id-ref="vim.version.version11"
      >
      <description-html>
         <![CDATA[FailoverClusterConfigurator provides operations to create and configure
 a vCenter High Availability Cluster (VCHA Cluster).

 A VCHA Cluster consists of three VMs. One is the Active vCenter VM that
 serves client requests. Second is the Passive VM that is identical to the
 Active vCenter VM in terms of resources and capabilities. Passive VM
 constantly receives updates from Active VM and takes over the role of
 Active vCenter VM in the event of failover. Third is the Witness VM that
 acts as a quorum VM in a VCHA Cluster. Sole purpose of Witness VM is to
 avoid classic split-brain problem in a VCHA Cluster.

 A VCHA Cluster can be deployed in two possible ways -
 1. Automatic deployment - Configuration (described below) inputs for each
 node in a VCHA Cluster is provided by the user. A Deployment workflow
 is used that automatically deploys Passive and Witness VM and configures
 each node to form a VCHA Cluster.
 2. Manual deployment - User provisions and creates Passive and Witness
 VMs and uses Configuration workflow to configure  Active, Passive and
 Witness VM to form a VCHA Cluster. Passive and Witness VMs must be
 created using the VM-Clone operation with Active VM as the source.]]>
      </description-html>
            <property name="disabledConfigureMethod" type-id-ref="vmodl.MethodName"
      vmodl-name="disabledConfigureMethod"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[A list of method names that must not be called and will throw
 a fault due to some other method running that the disabled method
 can cause side-effects for.

 <p>
 This list may include the following methods:
 <ul>
 <li><a href="vim.vcha.FailoverClusterConfigurator.html#deploy">deployVcha_Task</a></li>
 <li><a href="vim.vcha.FailoverClusterConfigurator.html#configure">configureVcha_Task</a></li>
 <li><a href="vim.vcha.FailoverClusterConfigurator.html#createPassiveNode">createPassiveNode_Task</a></li>
 <li><a href="vim.vcha.FailoverClusterConfigurator.html#createWitnessNode">createWitnessNode_Task</a></li>
 <li><a href="vim.vcha.FailoverClusterConfigurator.html#destroy">destroyVcha_Task</a></li>
 </ul>
 </p>

 As with other disabled methods there will be no property updates
 on this property when called with non-zero property collector versions.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.vcha.FailoverClusterConfigurator.ClusterNetworkConfigSpec</nested-type-id-ref>
      <nested-type-id-ref>vim.vcha.FailoverClusterConfigurator.SourceNodeSpec</nested-type-id-ref>
      <nested-type-id-ref>vim.vcha.FailoverClusterConfigurator.NodeNetworkSpec</nested-type-id-ref>
      <nested-type-id-ref>vim.vcha.FailoverClusterConfigurator.PassiveNodeNetworkSpec</nested-type-id-ref>
      <nested-type-id-ref>vim.vcha.FailoverClusterConfigurator.VchaClusterNetworkSpec</nested-type-id-ref>
      <nested-type-id-ref>vim.vcha.FailoverClusterConfigurator.NodeDeploymentSpec</nested-type-id-ref>
      <nested-type-id-ref>vim.vcha.FailoverClusterConfigurator.PassiveNodeDeploymentSpec</nested-type-id-ref>
      <nested-type-id-ref>vim.vcha.FailoverClusterConfigurator.VchaClusterConfigSpec</nested-type-id-ref>
      <nested-type-id-ref>vim.vcha.FailoverClusterConfigurator.VchaClusterDeploymentSpec</nested-type-id-ref>
      <nested-type-id-ref>vim.vcha.FailoverClusterConfigurator.FailoverNodeInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.vcha.FailoverClusterConfigurator.WitnessNodeInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.vcha.FailoverClusterConfigurator.VchaState</nested-type-id-ref>
      <nested-type-id-ref>vim.vcha.FailoverClusterConfigurator.VchaClusterConfigInfo</nested-type-id-ref>
   <method name="prepareVcha"
      vmodl-name="prepare"
      privilege="Global.VCServer"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Prepares the vCenter appliance for a VCHA cluster deployment.
 This preparation operation saves the network configuration of the cluster
 and configures the Active node to be cloned for a VCHA configuration.
 Prepares the VCHA Active node for ssh keys, vpostgres replication
 and related configuration file setup needed for a VCHA cluster.
 If the Active node Cluster network adapter does not exist
 the prepare operation will fail.
 No changes will be made if the cluster is already configured.]]>
      </description-html>
      <parameter name="networkSpec" type-id-ref="vim.vcha.FailoverClusterConfigurator.VchaClusterNetworkSpec"
      vmodl-name="networkSpec"
      version-id-ref="vim.version.version11"
      privilege="networkSpec"
      >
      <description-html>
         <![CDATA[contains the information needed to prepare
         a VCHA Cluster and configure networking.]]>
      </description-html>
      </parameter>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to
       monitor the progress of the operation.]]>
      </task-description-html>
   </method>
   <method name="deployVcha"
      vmodl-name="deploy"
      privilege="Global.VCServer"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Deploys and Configures VCHA on the local vCenter as a single API.
 This deployment operation automatically provisions and creates a
 Passive and a Witness node followed by configuring each node such that
 a 3 node VCHA Cluster is formed. After configuration, the VCHA Cluster
 is enabled on a best effort basis, but if this operation does not
 succeed, <a href="vim.vcha.FailoverClusterManager.html#setClusterMode">setClusterMode_Task</a> must be
 called to enable it. State replication or failover is not allowed
 until the VCHA Cluster is enabled. The current vCenter Server continues
 to serve client requests during and after the deployment.
 If the activeVcNetworkConfig spec if filled in, the cluster network
 will be created and configured.
 No changes will be made if the cluster network is already configured.]]>
      </description-html>
      <parameter name="deploymentSpec" type-id-ref="vim.vcha.FailoverClusterConfigurator.VchaClusterDeploymentSpec"
      vmodl-name="deploymentSpec"
      version-id-ref="vim.version.version11"
      privilege="deploymentSpec"
      >
      <description-html>
         <![CDATA[contains the information needed to deploy and
         configure a VCHA Cluster]]>
      </description-html>
      </parameter>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to
       monitor the progress of the operation.]]>
      </task-description-html>
   </method>
   <method name="configureVcha"
      vmodl-name="configure"
      privilege="Global.VCServer"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Configure VCHA on the local vCenter Server.
  This operation configures the VC appliance with VCHA specific inputs
  and uses already deployed Passive and Witness nodes to set up the
  VCHA cluster. After configuration, the VCHA Cluster is enabled
  on a best effort basis, but if this operation does not succeed,
  <a href="vim.vcha.FailoverClusterManager.html#setClusterMode">setClusterMode_Task</a> must be called
  to enable it. State replication or failover is not allowed
  until the VCHA Cluster is enabled. The current vCenter Server
  continues to serve client requests during and after the configuration.]]>
      </description-html>
      <parameter name="configSpec" type-id-ref="vim.vcha.FailoverClusterConfigurator.VchaClusterConfigSpec"
      vmodl-name="configSpec"
      version-id-ref="vim.version.version11"
      privilege="configSpec"
      >
      <description-html>
         <![CDATA[contains the configuration for the cluster]]>
      </description-html>
      </parameter>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to
        monitor the progress of the operation.]]>
      </task-description-html>
   </method>
   <method name="createPassiveNode"
      vmodl-name="createPassiveNode"
      privilege="Global.VCServer"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Creates a Passive node in a degraded VCHA Cluster with node location
  information and pre-existing VCHA Cluster configuration from the
  Active node.]]>
      </description-html>
      <parameter name="passiveDeploymentSpec" type-id-ref="vim.vcha.FailoverClusterConfigurator.PassiveNodeDeploymentSpec"
      vmodl-name="passiveDeploymentSpec"
      version-id-ref="vim.version.version11"
      privilege="passiveDeploymentSpec"
      >
      <description-html>
         <![CDATA[contains deployment specification for the
          passive node]]>
      </description-html>
      </parameter>
      <parameter name="sourceVcSpec" type-id-ref="vim.vcha.FailoverClusterConfigurator.SourceNodeSpec"
      vmodl-name="sourceVcSpec"
      version-id-ref="vim.version.version11"
      privilege="sourceVcSpec"
      >
      <description-html>
         <![CDATA[contains specification for the source vCenter
          server that is used to create Passive node]]>
      </description-html>
      </parameter>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to
        monitor the progress of the operation.]]>
      </task-description-html>
   </method>
   <method name="createWitnessNode"
      vmodl-name="createWitnessNode"
      privilege="Global.VCServer"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Creates a Witness node in a degraded VCHA Cluster with node location
  information and pre-existing VCHA Cluster configuration from the
  Active node.]]>
      </description-html>
      <parameter name="witnessDeploymentSpec" type-id-ref="vim.vcha.FailoverClusterConfigurator.NodeDeploymentSpec"
      vmodl-name="witnessDeploymentSpec"
      version-id-ref="vim.version.version11"
      privilege="witnessDeploymentSpec"
      >
      <description-html>
         <![CDATA[contains deployment specification for the
          witness node]]>
      </description-html>
      </parameter>
      <parameter name="sourceVcSpec" type-id-ref="vim.vcha.FailoverClusterConfigurator.SourceNodeSpec"
      vmodl-name="sourceVcSpec"
      version-id-ref="vim.version.version11"
      privilege="sourceVcSpec"
      >
      <description-html>
         <![CDATA[contains specification for the source vCenter
          server that is used to create Witness node]]>
      </description-html>
      </parameter>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to
        monitor the progress of the operation.]]>
      </task-description-html>
   </method>
   <method name="getVchaConfig"
      vmodl-name="getConfig"
      privilege="System.Read"
      type-id-ref="vim.vcha.FailoverClusterConfigurator.VchaClusterConfigInfo"
      >
      <description-html>
         <![CDATA[Returns the configuration information for each node that is part of
  the VCHA Cluster.]]>
      </description-html>
      <return-value-description-html>
         <![CDATA[Returns a data structure specifying configuration for Active,
         Passive and Witness node in the Cluster.]]>
      </return-value-description-html>
   </method>
   <method name="destroyVcha"
      vmodl-name="destroy"
      privilege="Global.VCServer"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Destroys the VCHA cluster setup and removes all VCHA specific
  configuration from the VCVA appliance. The active node in the cluster
  continues to run as a standalone VCVA appliance after the destroy
  operation has been performed.

  This operation is allowed under the following circumstances:
  - VCHA cluster is disabled
  - The node is in an isolated state
  - VCHA Deploy/Configure has failed]]>
      </description-html>
   </method>
   </managed-object>
   <managed-object name="HostDatastoreBrowser"
      type-id="vim.host.DatastoreBrowser"
      vmodl-name="vim.host.DatastoreBrowser"
      version-id-ref="vim.version.version1"
      >
      <description-html>
         <![CDATA[The DatastoreBrowser managed object type provides access to the contents of one or
  more datastores. The items in a datastore are files that contain configuration,
  virtual disk, and the other data associated with a virtual machine.
  <p>
  Although datastores may often be implemented using a traditional file system, a full
  interface to a file system is not provided here. Instead, specialized access for
  virtual machine files is provided. A datastore implementation may completely hide the
  file directory structure.
  <p>
  The intent is to provide functionality analogous to a file chooser in a user
  interface.
  <p>
  Files on datastores do not have independent permissions through this API. Instead,
  the permissions for all the files on a datastore derive from the datastore object
  itself. It is not possible to change individual file permissions as the user browsing
  the datastore may not necessarily be a recognized user from the point of view of the
  host changing the permission. This occurs if the user browsing the datastore is doing
  so through the VirtualCenter management server.
  <p>
  The DatastoreBrowser provides many ways to customize a search for files. A search can
  be customized by specifying the types of files to be searched, search criteria
  specific to a file type, and the amount of detail about each file. The most basic
  queries only use file details and are efficient with limited side effects. For these
  queries, file metadata details can be optionally retrieved, but the files themselves
  are opened and their contents examined. As a result, these files are not necessarily
  validated.
  <p>
  More complicated queries can be formed by specifying the specific types of files to
  be searched, the parameters to filter for each type, and the desired level of detail
  about each file. This method of searching for files is convenient because it allows
  additional data about the virtual machine component to be retrieved. In addition,
  certain validation checks can be performed on matched files as an inherent part of
  the details collection process. However, gathering extra details or the use of type
  specific filters can sometimes only be implemented by examining the contents of a
  file. As a result, the use of these conveniences comes with the cost of additional
  latency in the request and possible side effects on the system as a whole.
  <p>
  The DatastoreBrowser is referenced from various objects, including from
  <a href="vim.Datastore.html">Datastore</a>, <a href="vim.ComputeResource.html">ComputeResource</a>, <a href="vim.HostSystem.html">HostSystem</a> and
  <a href="vim.VirtualMachine.html">VirtualMachine</a>.  Depending on which object is used, there are different
  requirements for the accessibility of the browsed datastore from the host (or hosts)
  associated with the object:
  <ul>
     <li> When referenced from the target <a href="vim.Datastore.html">Datastore</a>, it needs to be
          accessible from at least one host on which the datastore is mounted.
          See <a href="vim.Datastore.Summary.html#accessible">accessible</a>.
     <li> When referenced from a <a href="vim.ComputeResource.html">ComputeResource</a>, the target datastore
          needs to be accessible from at least one host in the ComputeResource.
          See <a href="vim.host.MountInfo.html#accessible">accessible</a>.
     <li> When referenced from a <a href="vim.HostSystem.html">HostSystem</a>, the target datastore needs
          to be accessible from that host. See <a href="vim.host.MountInfo.html#accessible">accessible</a>.
     <li> When referenced from a <a href="vim.VirtualMachine.html">VirtualMachine</a>, the target datastore
          needs to be accessible from the host on which the virtual machine is
          registered.  See <a href="vim.host.MountInfo.html#accessible">accessible</a>.
  </ul><br>See FileInfo]]>
      </description-html>
            <property name="datastore" type-id-ref="vim.Datastore"
      vmodl-name="datastore"
      is-array="true"
      is-optional="true"
      privilege="System.View"
      >
      <description-html>
         <![CDATA[Set of datastores that can be searched on this DatastoreBrowser.
  <p>
  The list of datastores available to browse on this DatastoreBrowser is contextual
  information that depends on the object being browsed. If the host is being
  browsed, the host's datastores are used. If the Datacenter is being browsed, the
  Datacenter's list of datastores is used.]]>
      </description-html>
      </property>

            <property name="supportedType" type-id-ref="vim.host.DatastoreBrowser.Query"
      vmodl-name="supportedType"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The list of supported file types. The supported file types are represented as
  items in this list. For each supported file type, there is an object in the list
  whose dynamic type is one of the types derived from the
  <a href="vim.host.DatastoreBrowser.Query.html">FileQuery</a> data object
  type. In general, the properties in this query type are not set.
  <p>
  Use the Query of the desired file type in the SearchSpec.query to indicate the
  desired file types.
  <p>
  This property is used by clients to determine what kinds of file types are
  supported. Clients should consult this list to avoid querying for types of virtual
  machine components that are not supported.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.host.DatastoreBrowser.FileInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.host.DatastoreBrowser.Query</nested-type-id-ref>
      <nested-type-id-ref>vim.host.DatastoreBrowser.VmConfigQuery</nested-type-id-ref>
      <nested-type-id-ref>vim.host.DatastoreBrowser.TemplateVmConfigQuery</nested-type-id-ref>
      <nested-type-id-ref>vim.host.DatastoreBrowser.VmDiskQuery</nested-type-id-ref>
      <nested-type-id-ref>vim.host.DatastoreBrowser.FolderQuery</nested-type-id-ref>
      <nested-type-id-ref>vim.host.DatastoreBrowser.VmSnapshotQuery</nested-type-id-ref>
      <nested-type-id-ref>vim.host.DatastoreBrowser.IsoImageQuery</nested-type-id-ref>
      <nested-type-id-ref>vim.host.DatastoreBrowser.FloppyImageQuery</nested-type-id-ref>
      <nested-type-id-ref>vim.host.DatastoreBrowser.VmNvramQuery</nested-type-id-ref>
      <nested-type-id-ref>vim.host.DatastoreBrowser.VmLogQuery</nested-type-id-ref>
      <nested-type-id-ref>vim.host.DatastoreBrowser.VmConfigInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.host.DatastoreBrowser.TemplateVmConfigInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.host.DatastoreBrowser.VmDiskInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.host.DatastoreBrowser.FolderInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.host.DatastoreBrowser.VmSnapshotInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.host.DatastoreBrowser.IsoImageInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.host.DatastoreBrowser.FloppyImageInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.host.DatastoreBrowser.VmNvramInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.host.DatastoreBrowser.VmLogInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.host.DatastoreBrowser.SearchSpec</nested-type-id-ref>
      <nested-type-id-ref>vim.host.DatastoreBrowser.SearchResults</nested-type-id-ref>
   <method name="SearchDatastore"
      vmodl-name="search"
      type-id-ref="vim.host.DatastoreBrowser.SearchResults"
      is-task="true"
      >
      <description-html>
         <![CDATA[Returns the information for the files that match the given search criteria as a
  SearchResults object. Searches only the folder specified by the datastore path.
  The Datastore.Browse privilege must be held on the datastore identified
  by the datastore path.]]>
      </description-html>
      <parameter name="datastorePath" type-id-ref="java.lang.String"
      vmodl-name="datastorePath"
      version-id-ref="vim.version.version1"
      privilege="datastorePath"
      >
      </parameter>
      <parameter name="searchSpec" type-id-ref="vim.host.DatastoreBrowser.SearchSpec"
      vmodl-name="searchSpec"
      version-id-ref="vim.version.version1"
      is-optional="true"
      privilege="searchSpec"
      >
      </parameter>
      <fault type-id-ref="vim.fault.InvalidDatastore">
      <fault-description-html>
         <![CDATA[if the operation cannot be performed on the target
  datastores. The server can throw InvalidDatastorePath to indicate a malformed
  datastorePath, or InaccessibleDatastore to indicate inaccessibility of the
  datastore.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.FileFault">
      </fault>
      <fault type-id-ref="vim.fault.FileNotFound">
      <fault-description-html>
         <![CDATA[if the file or folder specified by datastorePath is not
  found.]]>
      </fault-description-html>
      </fault>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to monitor the
        operation. The <a href="vim.TaskInfo.html#result">result</a> property in the
        <a href="vim.Task.html">Task</a> contains the
        <a href="vim.host.DatastoreBrowser.SearchResults.html">HostDatastoreBrowserSearchResults</a> upon success.]]>
      </task-description-html>
   </method>
   <method name="SearchDatastoreSubFolders"
      vmodl-name="searchSubFolders"
      is-array="true"
      is-optional="true"
      type-id-ref="vim.host.DatastoreBrowser.SearchResults"
      is-task="true"
      >
      <description-html>
         <![CDATA[Returns the information for the files that match the given search criteria as a
  SearchResults[] object. Searches the folder specified by the datastore path and
  all subfolders. The Datastore.Browse privilege must be held on the
  datastore identified by the datastore path.]]>
      </description-html>
      <parameter name="datastorePath" type-id-ref="java.lang.String"
      vmodl-name="datastorePath"
      version-id-ref="vim.version.version1"
      privilege="datastorePath"
      >
      </parameter>
      <parameter name="searchSpec" type-id-ref="vim.host.DatastoreBrowser.SearchSpec"
      vmodl-name="searchSpec"
      version-id-ref="vim.version.version1"
      is-optional="true"
      privilege="searchSpec"
      >
      </parameter>
      <fault type-id-ref="vim.fault.InvalidDatastore">
      <fault-description-html>
         <![CDATA[if the operation cannot be performed on the target
  datastores. Typically, a specific subclass of this exception is thrown.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.FileFault">
      </fault>
      <fault type-id-ref="vim.fault.FileNotFound">
      <fault-description-html>
         <![CDATA[if the file or folder specified by datastorePath is not
  found.]]>
      </fault-description-html>
      </fault>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to monitor the
        operation. The <a href="vim.TaskInfo.html#result">result</a> property in the
        <a href="vim.Task.html">Task</a> contains the
        <a href="vim.host.DatastoreBrowser.SearchResults.html">HostDatastoreBrowserSearchResults</a> upon success.]]>
      </task-description-html>
   </method>
   <method name="DeleteFile"
      vmodl-name="deleteFile"
      is-deprecated="true"
      privilege="Datastore.DeleteFile"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Deletes the specified files from the datastore. If a valid virtual disk file is
  specified, then all the components of the virtual disk are deleted.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of VI API 2.5, use <a href="vim.FileManager.html#deleteFile">DeleteDatastoreFile_Task</a>.]]>
      </deprecated-html>
      <parameter name="datastorePath" type-id-ref="java.lang.String"
      vmodl-name="datastorePath"
      version-id-ref="vim.version.version1"
      privilege="datastorePath"
      >
      </parameter>
      <fault type-id-ref="vim.fault.InvalidDatastore">
      <fault-description-html>
         <![CDATA[if the operation cannot be performed on the target
  datastores. Typically, a specific subclass of this exception is thrown.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.FileFault">
      </fault>
      <fault type-id-ref="vim.fault.FileNotFound">
      <fault-description-html>
         <![CDATA[if the file or folder specified by datastorePath is not
  found.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.CannotDeleteFile">
      <fault-description-html>
         <![CDATA[if the delete operation on the file fails.]]>
      </fault-description-html>
      </fault>
   </method>
   </managed-object>
   <managed-object name="ResourcePool"
      type-id="vim.ResourcePool"
      vmodl-name="vim.ResourcePool"
      version-id-ref="vim.version.version1"
      base-type-id="vim.ManagedEntity"
      >
      <description-html>
         <![CDATA[Represents a set of physical resources: a single host,
  a subset of a host's resources, or resources spanning multiple hosts.
  Resource pools can be subdivided by creating child resource pools. In
  order to run, a virtual machine must be associated as a child of a resource
  pool.
  <p>
  In a parent/child hierarchy of resource pools and virtual machines, the
  single resource pool that has no parent pool is known as the <em>root resource
  pool</em>.
  <p>
  <b>Configuration</b>
  <p>
  A resource pool is configured with a set of CPU (in MHz) and memory (in MB)
  resources. These resources are specified in absolute terms with a resource
  reservation and a resource limit, along with a shares setting. The shares
  are used during resource contention, to ensure graceful degradation.
  <p>
  For the root resource pool, the values of the reservation and
  the limit are set by the system and are not configurable. The
  reservation and limit are set to the same value, indicating the total amount
  of resources the system has available to run virtual machines. This is
  computed as the aggregated CPU and memory resources provided by the set
  of current available hosts in the parent compute resource minus the
  overhead of the virtualization layer.
  <p>
  Since the resource pool configuration is absolute (in MHz or MB), the
  configuration can become invalid when resources are removed.  This can
  happen if a host is removed from the cluster, if a host becomes
  unavailable, or if a host is placed in maintenance mode. When this
  happens, the system flags misconfigured resource pools and displays the
  reservations and limits that are in effect. Further, in a DRS enabled cluster,
  the tree can be misconfigured if the user bypasses VirtualCenter and powers on
  VMs directly on the host.
  <p>
  <b>A General Discussion of Resource pool states and admission control</b>

  There are three states that the resource pool tree can be in: undercommited
  (green), overcommited (yellow), and inconsistent (red). Depending on the
  state, different resource pool configuration policies are enforced. The
  states are described in more detail below:
  <ul>
  <li> <strong>GREEN (aka undercommitted)</strong>: We have a tree that is
  in a <em>good</em> state. Every node has a reservation greater than the sum of
  the reservations for its children. We have enough capacity at the root to
  satisfy all the resources reserved by the children. All operations
  performed on the tree, such as powering on virtual machines, creating
  new resource pools, or reconfiguring resource settings, will ensure
  that the above constraints are maintained. </li>

  <li> <strong>RED (aka. inconsistent)</strong>: One or more nodes in the
  tree has children whose reservations are greater than the node is configured to
  support. For example, i) a resource pool with a fixed reservation has a running
  virtual machine with a reservation that is higher than the reservation on
  resource pool itself., or ii) the child reservations are greater than the limit.
  <p>
  In this state, the DRS algorithm is disabled until the resource pool tree's
  configuration has  been brought back into a consistent state. We also restrict
  the resources that such invalid nodes request from their parents to the
  configured reservation/limit, in an attempt to isolate the problem to a small
  subtree. For the rest of the tree, we determine whether the cluster is
  undercommitted or overcommitted according to the existing rules and perform
  admission control accordingly.
  <p>
  Note that since all changes to the resource settings are validated on the
  VirtualCenter server, the system cannot be brought into this state by simply
  manipulating a cluster resource pool tree through  VirtualCenter. It can only
  happen if a virtual machine gets powered on directly on a host that is part of
  a DRS cluster.
  </li>

  <li> <strong>YELLOW (aka overcommitted)</strong>: In this state, the tree is
  consistent internally, but the root resource pool does not have the capacity at
  to meet the reservation of its children. We can only go from GREEN -&gt; YELLOW if
  we lose resources at the root. For example, hosts becomes unavailable or is
  put into maintenance mode. Note that we will always have enough capacity at the root
  to run all currently powered on VMs. However, we may not be able to satisfy all
  resource pool reservations in the tree. In this state, the reservation configured for
  a resource pool is no longer guaranteed, but the limits are still enforced.
  This provides additional flexibility for bringing the tree back into a
  consistent state, without risking bringing the tree into a RED state. In
  more detail:
  <ul>
  <li> <strong>Resource Pool</strong> The root is considered to have unlimited
  capacity. You can reserve resources without any check except the
  requirement that the tree remains consistent. This means that
  nodes whose parents are all configured with expandable reservations and no limit
  will have unlimited available resources. However, if there is an ancestor with
  a fixed reservation or an expandable reservation with a limit somewhere, then the
  node will be limited by the reservation/limit of the ancestor.
  </li>
  <li> <strong>Virtual Machine</strong> Virtual machines are limited by ancestors
  with a fixed reservation and the capacity at the root.
  </li>
  </ul>
  </li>
  </ul>

  <p>
  <b>Destroying a ResourcePool</b>
  <p>
  When a ResourcePool is destroyed, all the virtual machines are reassigned to its
  parent pool. The root resource pool cannot be destroyed, and invoking destroy
  on it will throw an InvalidType fault.
  <p>
  Any vApps in the ResourcePool will be moved to the ResourcePool's parent
  before the pool is destroyed.
  <p>
  The Resource.DeletePool privilege must be held on the pool as well as the parent
  of the resource pool.  Also, the Resource.AssignVMToPool privilege must be held
  on the resource pool's parent pool and any virtual machines that are reassigned.]]>
      </description-html>
            <property name="summary" type-id-ref="vim.ResourcePool.Summary"
      vmodl-name="summary"
      >
      <description-html>
         <![CDATA[Basic information about a resource pool.

  In releases after vSphere API 5.0, vSphere Servers might not
  generate property collector update notifications for this property.
  To obtain the latest value of the property, you can use
  PropertyCollector methods RetrievePropertiesEx or WaitForUpdatesEx.
  If you use the PropertyCollector.WaitForUpdatesEx method, specify
  an empty string for the version parameter. Any other version value will not
  produce any property values as no updates are generated.]]>
      </description-html>
      </property>

            <property name="runtime" type-id-ref="vim.ResourcePool.RuntimeInfo"
      vmodl-name="runtime"
      >
      <description-html>
         <![CDATA[Runtime information about a resource pool.
  The <a href="vim.ResourcePool.ResourceUsage.html">ResourcePoolResourceUsage</a> information within
  <a href="vim.ResourcePool.RuntimeInfo.html">ResourcePoolRuntimeInfo</a> can be transiently stale.
  Use <a href="vim.ResourcePool.html#refreshRuntime">RefreshRuntime</a> method to
  update the information.

  In releases after vSphere API 5.0, vSphere Servers might not
  generate property collector update notifications for this property.
  To obtain the latest value of the property, you can use
  PropertyCollector methods RetrievePropertiesEx or WaitForUpdatesEx.
  If you use the PropertyCollector.WaitForUpdatesEx method, specify
  an empty string for the version parameter. Any other version value will not
  produce any property values as no updates are generated.]]>
      </description-html>
      </property>

            <property name="owner" type-id-ref="vim.ComputeResource"
      vmodl-name="owner"
      privilege="System.View"
      >
      <description-html>
         <![CDATA[The ComputeResource to which this set of one or more nested resource pools
  belong.]]>
      </description-html>
      </property>

            <property name="resourcePool" type-id-ref="vim.ResourcePool"
      vmodl-name="resourcePool"
      is-array="true"
      is-optional="true"
      privilege="System.View"
      >
      <description-html>
         <![CDATA[The set of child resource pools.]]>
      </description-html>
      </property>

            <property name="vm" type-id-ref="vim.VirtualMachine"
      vmodl-name="vm"
      is-array="true"
      is-optional="true"
      privilege="System.View"
      >
      <description-html>
         <![CDATA[The set of virtual machines associated with this resource pool.]]>
      </description-html>
      </property>

            <property name="config" type-id-ref="vim.ResourceConfigSpec"
      vmodl-name="config"
      >
      <description-html>
         <![CDATA[Configuration of this resource pool.]]>
      </description-html>
      </property>

            <property name="namespace" type-id-ref="java.lang.String"
      vmodl-name="namespace"
      version-id-ref="vim.version.v7_0"
      is-optional="true"
      privilege="System.View"
      >
      <description-html>
         <![CDATA[The namespace with which the ResourcePool is associated. Namespace is a
  vAPI resource which divides cluster resources and allows administrators
  to give Kubernetes environments to their development teams.

  This property  is set only at the time of creation and cannot change.]]>
      </description-html>
      </property>

            <property name="childConfiguration" type-id-ref="vim.ResourceConfigSpec"
      vmodl-name="childConfiguration"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The resource configuration of all direct children (VirtualMachine and
  ResourcePool) of this resource group.

  Property collector update notifications might not be generated for this
  property. To listen for the child configuration change, please create
  PropertyCollector filter on the child entities directly.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.ResourcePool.ResourceUsage</nested-type-id-ref>
      <nested-type-id-ref>vim.ResourcePool.RuntimeInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.ResourcePool.Summary</nested-type-id-ref>
   <method name="UpdateConfig"
      vmodl-name="updateConfig"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Updates the configuration of the resource pool.
   <p>
   Any % (percent) character used in this name parameter must be escaped, unless it
   is used to start an escape sequence. Clients may also escape any other characters
   in this name parameter.
   <p>
   The privilege checks for this operation are as follows:
   <ul>
     <li>If this is a resource pool, the privilege Resource.EditPool is required on
     this and on the parent pool or vApp.</li>
     <li>If this is a vApp, the privilege VApp.ResourceConfig is required on
     this and on the parent pool or vApp.</li>
   </ul>]]>
      </description-html>
      <parameter name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      version-id-ref="vim.version.version1"
      is-optional="true"
      privilege="name"
      >
      <description-html>
         <![CDATA[If set, then the new name of the resource pool.]]>
      </description-html>
      </parameter>
      <parameter name="config" type-id-ref="vim.ResourceConfigSpec"
      vmodl-name="config"
      version-id-ref="vim.version.version1"
      is-optional="true"
      privilege="config"
      >
      <description-html>
         <![CDATA[If set, then the new resource allocation for this
                  resource pool.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.InvalidName">
      <fault-description-html>
         <![CDATA[if the name is not a valid entity name.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.DuplicateName">
      <fault-description-html>
         <![CDATA[if the name is changed to an already existing name.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InsufficientResourcesFault">
      <fault-description-html>
         <![CDATA[if the pool specification cannot be
   supported by the parent resource pool or vApp.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.ConcurrentAccess">
      <fault-description-html>
         <![CDATA[if the changeVersion does not match the server's
   changeVersion for the configuration.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="MoveIntoResourcePool"
      vmodl-name="moveInto"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Moves a set of resource pools, vApps or virtual machines into this pool.  The
  pools, vApps and virtual machines must be part of the cluster or standalone
  host that contains this pool.
  <p>
  For each entity being moved, the move is subject to the following privilege
  checks:
  <ul>
    <li>If the object being moved is a ResourcePool, then Resource.MovePool must be
    held on the pool being moved and it's former parent pool or vApp. If the
    target is a vApp, the privilege VApp.AssignResourcePool must be held on
    it. If the target is a ResourcePool, Resource.MovePool must be held on it.</li>

    <li>If the object being moved is a VirtualApp, VApp.Move must be held on
    the vApp being moved and it's former parent pool or vApp. If the target
    entity is a resource pool, Resource.AssignVAppToPool must be held on the
    target. If the target is a vApp, the privilege VApp.AssignVApp must
    be held on the target vApp.</li>

    <li>If the object being moved is a VirtualMachine, then if the target is a
    ResourcePool, Resource.AssignVMToPool is required on the VirtualMachine and the
    target pool.  If the target is a vApp, VApp.AssignVM is required on both
    the VirtualMachine and the target pool.</li>
  </ul>

  <p>
  This operation is typically used by clients when they implement a drag-and-drop
  interface to move a set of objects into a folder.
  <p>
  This operation is only transactional with respect to each individual entity.
  The set of entities is moved sequentially, as specified in the list,
  and committed one at a time. If a failure is detected, then the method
  terminates with an exception.
  <p>
  The root resource pool cannot be moved.]]>
      </description-html>
      <parameter name="list" type-id-ref="vim.ManagedEntity"
      vmodl-name="list"
      version-id-ref="vim.version.version1"
      is-array="true"
      privilege="list"
      >
      <description-html>
         <![CDATA[A list of ResourcePool and VirtualMachine objects.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.DuplicateName">
      <fault-description-html>
         <![CDATA[if this pool already contains an object with
             the given name.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InsufficientResourcesFault">
      <fault-description-html>
         <![CDATA[if the move would violate the resource usage
  policy. Typically, a more specific subclass, such as
  InsufficientMemoryResourcesFault.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="UpdateChildResourceConfiguration"
      vmodl-name="updateChildResourceConfiguration"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Changes resource configuration of a set of children of this resource pool. The
  method allows bulk modifications of the set of the direct children
  (virtual machines and resource pools).
  <p>
  Bulk modifications are not transactional. Each modification is made individually.
  If a failure is encountered while applying the changes, then the processing stops,
  meaning at least one and as many as all of the changes are not applied.
  <p>
  A set can include a subset of the resources. Children that are not
  mentioned in the list are not changed.
  <p>
  For each ResourceConfigSpec, the following privilege checks apply:
  <ul>
     <li>If the ResourceConfigSpec refers to a child resource pool or a child
         vApp, the privileges required are the same as would be required for
         calling <a href="vim.ResourcePool.html#updateConfig">UpdateConfig</a> on that entity.</li>
     <li>If the ResourceConfigSpec refers to a virtual machine,
         VirtualMachine.Config.Resource must be held on the virtual machine.</li>
  </ul>]]>
      </description-html>
      <parameter name="spec" type-id-ref="vim.ResourceConfigSpec"
      vmodl-name="spec"
      version-id-ref="vim.version.version1"
      is-array="true"
      privilege="spec"
      >
      </parameter>
      <fault type-id-ref="vim.fault.InvalidState">
      </fault>
      <fault type-id-ref="vim.fault.InsufficientResourcesFault">
      <fault-description-html>
         <![CDATA[if the operation would violate a resource
  usage policy. Typically, a more specific subclass, such as
  InsufficientMemoryResourcesFault will be thrown.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="CreateResourcePool"
      vmodl-name="createResourcePool"
      privilege="Resource.CreatePool"
      type-id-ref="vim.ResourcePool"
      >
      <description-html>
         <![CDATA[Creates a new resource pool.]]>
      </description-html>
      <parameter name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      version-id-ref="vim.version.version1"
      privilege="name"
      >
      <description-html>
         <![CDATA[The name of the ResourcePool. Any % (percent) character
               used in this parameter must be escaped, unless it is used
               to start an escape sequence. Clients may also escape any
               other characters in this parameter.]]>
      </description-html>
      </parameter>
      <parameter name="spec" type-id-ref="vim.ResourceConfigSpec"
      vmodl-name="spec"
      version-id-ref="vim.version.version1"
      privilege="spec"
      >
      <description-html>
         <![CDATA[The spec for the ResourcePool.
               All values in ResourceAllocationInfo must be specified and
               are not optional.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.InvalidName">
      <fault-description-html>
         <![CDATA[if the name is not a valid entity name.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.DuplicateName">
      <fault-description-html>
         <![CDATA[if this pool already contains an object
  with the given name.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InsufficientResourcesFault">
      <fault-description-html>
         <![CDATA[if the operation would violate a resource
  usage policy. Typically, a more specific subclass, such as
  InsufficientCpuResourcesFault will be thrown.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[A reference to the new resource pool.]]>
      </return-value-description-html>
   </method>
   <method name="DestroyChildren"
      vmodl-name="destroyChildren"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Removes all child resource pools recursively. All virtual machines and vApps
  associated with the child resource pools get associated with this resource pool.

  <p>
  Note that resource pools contained in child vApps are not affected.

  <p>
  The privilege checks performed are the following.

  <ul>
    <li>Resource.DeletePool privilege must be held on this object and each of it's
    immediate children to be destroyed.</li>
    <li>If VMs are being moved, the privilege Resource.AssignVMToPool must be held
    on this resource pool as well as on any virtual machines being moved.</li>
    <li>If vApps are being moved, the privilege Resource.AssignVAppToPool
    must be held on this resource pool as well as on any vApps being
    moved.</li>
  </ul>]]>
      </description-html>
   </method>
   <method name="CreateVApp"
      vmodl-name="createVApp"
      version-id-ref="vim.version.version5"
      privilege="VApp.Create"
      type-id-ref="vim.VirtualApp"
      >
      <description-html>
         <![CDATA[Creates a new vApp container.
  <p>
  Any % (percent) character used in this name parameter must be escaped, unless it
  is used to start an escape sequence. Clients may also escape any other characters
  in this name parameter.]]>
      </description-html>
      <parameter name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      version-id-ref="vim.version.version5"
      privilege="name"
      >
      <description-html>
         <![CDATA[The name of the vApp container in the inventory]]>
      </description-html>
      </parameter>
      <parameter name="resSpec" type-id-ref="vim.ResourceConfigSpec"
      vmodl-name="resSpec"
      version-id-ref="vim.version.version5"
      privilege="resSpec"
      >
      <description-html>
         <![CDATA[The resource configuration for the vApp container (same as for a
                 regular resource pool).]]>
      </description-html>
      </parameter>
      <parameter name="configSpec" type-id-ref="vim.vApp.VAppConfigSpec"
      vmodl-name="configSpec"
      version-id-ref="vim.version.version5"
      privilege="configSpec"
      >
      <description-html>
         <![CDATA[The specification of the vApp specific meta-data.]]>
      </description-html>
      </parameter>
      <parameter name="vmFolder" type-id-ref="vim.Folder"
      vmodl-name="vmFolder"
      version-id-ref="vim.version.version5"
      is-optional="true"
      privilege="vmFolder"
      >
      <description-html>
         <![CDATA[The parent folder for the vApp. This must be null if this is
  a child vApp.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.InvalidName">
      <fault-description-html>
         <![CDATA[if the name is not a valid entity name.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.DuplicateName">
      <fault-description-html>
         <![CDATA[if this pool already contains an object
  with the given name.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InsufficientResourcesFault">
      <fault-description-html>
         <![CDATA[if the operation would violate a resource
  usage policy. Typically, a more specific subclass, such as
  InsufficientCpuResourcesFault will be thrown.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the resource pool does not support the operation in
  its current state. This will typically be a subclass such
  as <a href="vim.fault.NoActiveHostInCluster.html">NoActiveHostInCluster</a>.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.VmConfigFault">
      <fault-description-html>
         <![CDATA[or a more specific subclass, if errors are found in
                      the supplied in VApp configuration.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[The created vApp object.]]>
      </return-value-description-html>
   </method>
   <method name="CreateChildVM"
      vmodl-name="createVm"
      version-id-ref="vim.version.version5"
      privilege="VirtualMachine.Inventory.Create"
      type-id-ref="vim.VirtualMachine"
      is-task="true"
      >
      <description-html>
         <![CDATA[Creates a new virtual machine in a vApp container.
  <p>
  This method supports creating a virtual machine directly in a vApp. A
  virtual  machine in a vApp is not associated with a VM folder and therefore
  cannot be created using the method on a <a href="vim.Folder.html#createVm">CreateVM_Task</a>.
  <p>
  This method can only be called directly on a <a href="vim.VirtualApp.html">vApp</a>
  or on a resource pool that is a child of a vApp.
  <p>
  The privilege VirtualMachine.Inventory.Create is required on this entity. Further,
  if this is a resource pool, the privilege Resource.AssignVMToPool is required. If
  this is a vApp, the privilege VApp.AssignVM is required.
  <p>
  Depending on the properties of the virtual machine bring created, additional
  privileges may be required. See <a href="vim.Folder.html#createVm">CreateVM_Task</a> for a description of
  these privileges.]]>
      </description-html>
      <parameter name="config" type-id-ref="vim.vm.ConfigSpec"
      vmodl-name="config"
      version-id-ref="vim.version.version5"
      privilege="config"
      >
      <description-html>
         <![CDATA[The configuration of the virtual machine hardware.]]>
      </description-html>
      </parameter>
      <parameter name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      version-id-ref="vim.version.version5"
      is-optional="true"
      privilege="host"
      >
      <description-html>
         <![CDATA[The target host on which the virtual machine will run. This must
         specify a host that is a member of the ComputeResource indirectly
         specified by the pool. For a stand-alone host or a cluster with DRS,
         host can be omitted, and the system selects a default.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.VmConfigFault">
      <fault-description-html>
         <![CDATA[if the configSpec has incorrect values. Typically, a more
          specific subclass is thrown.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.FileFault">
      <fault-description-html>
         <![CDATA[if there is a problem creating the virtual machine on disk.
          Typically, a more specific subclass, such as NoDiskSpace, will be thrown.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.OutOfBounds">
      <fault-description-html>
         <![CDATA[if Host.capability.maxSupportedVMs is exceeded.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidName">
      <fault-description-html>
         <![CDATA[if the name is not a valid entity name.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidDatastore">
      <fault-description-html>
         <![CDATA[if the operation cannot be performed on the
          target datastores.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InsufficientResourcesFault">
      <fault-description-html>
         <![CDATA[if this operation would violate a resource
          usage policy.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.FileAlreadyExists">
      <fault-description-html>
         <![CDATA[if the requested cfgPath for the virtual machine's
          configuration file already exists.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.VmWwnConflict">
      <fault-description-html>
         <![CDATA[if the WWN of the virtual machine has been used by
          other virtual machines.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[the newly created VirtualMachine.]]>
      </return-value-description-html>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to monitor the
        operation. The <a href="vim.TaskInfo.html#result">result</a> property in the
        <a href="vim.Task.html">Task</a> contains the newly created <a href="vim.VirtualMachine.html">VirtualMachine</a>
        upon success.]]>
      </task-description-html>
   </method>
   <method name="RegisterChildVM"
      vmodl-name="registerVm"
      version-id-ref="vim.version.version5"
      privilege="VirtualMachine.Inventory.Register"
      type-id-ref="vim.VirtualMachine"
      is-task="true"
      >
      <description-html>
         <![CDATA[Adds an existing virtual machine to this resource pool or vApp.
  <p>
  This operation only works for vApps or resource pools that are children of
  vApps. To register a VM in a folder, see <a href="vim.Folder.html#registerVm">RegisterVM_Task</a>.
  <p>
  Any % (percent) character used in this name parameter must be escaped, unless it
  is used to start an escape sequence. Clients may also escape any other characters
  in this name parameter.

  In addition to the VirtualMachine.Inventory.Register privilege, it
  requires System.Read privilege on the datastore that the existing virtual
  machine resides on.]]>
      </description-html>
      <parameter name="path" type-id-ref="java.lang.String"
      vmodl-name="path"
      version-id-ref="vim.version.version5"
      privilege="path"
      >
      <description-html>
         <![CDATA[A datastore path to the virtual machine. If the path ends with
         ".vmtx", indicating that it refers to a VM template, an InvalidArgument
         fault is thrown.]]>
      </description-html>
      </parameter>
      <parameter name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      version-id-ref="vim.version.version5"
      is-optional="true"
      privilege="name"
      >
      <description-html>
         <![CDATA[The name to be assigned to the virtual machine. If this parameter is
         not set, the displayName configuration parameter of the virtual machine is
         used. An entity name must be a non-empty string of less than 80
         characters. The slash (/), backslash (\) and percent (%) will be
         escaped using the URL syntax. For example, %2F.]]>
      </description-html>
      </parameter>
      <parameter name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      version-id-ref="vim.version.version5"
      is-optional="true"
      privilege="host"
      >
      <description-html>
         <![CDATA[The target host on which the virtual machine will run. This parameter
         must specify a host that is a member of the ComputeResource to which this
         resource pool belongs. For a stand-alone host or a cluster with DRS,
         the parameter can be omitted, and the system selects a default.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.OutOfBounds">
      <fault-description-html>
         <![CDATA[if the maximum number of VMs has been exceeded.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.AlreadyExists">
      <fault-description-html>
         <![CDATA[if the virtual machine is already registered.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidDatastore">
      <fault-description-html>
         <![CDATA[if the operation cannot be performed on the
          target datastores.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[if the configuration file is not found on the system.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidName">
      <fault-description-html>
         <![CDATA[if the entity name is invalid.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.VmConfigFault">
      <fault-description-html>
         <![CDATA[if the format / configuration of the virtual machine
          is invalid. Typically, a more specific fault is thrown such as
          InvalidFormat if the configuration file cannot be read, or
          InvalidDiskFormat if the disks cannot be read.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InsufficientResourcesFault">
      <fault-description-html>
         <![CDATA[if this operation would violate a resource
          usage policy.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.FileFault">
      <fault-description-html>
         <![CDATA[if there is an error accessing the files on disk.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[the newly registered VirtualMachine.]]>
      </return-value-description-html>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to monitor the
        operation. The <a href="vim.TaskInfo.html#result">result</a> property in the
        <a href="vim.Task.html">Task</a> contains the newly registered <a href="vim.VirtualMachine.html">VirtualMachine</a>
        upon success.]]>
      </task-description-html>
   </method>
   <method name="ImportVApp"
      vmodl-name="importVApp"
      version-id-ref="vim.version.version5"
      privilege="VApp.Import"
      type-id-ref="vim.HttpNfcLease"
      >
      <description-html>
         <![CDATA[Creates a new entity in this resource pool. The import process consists of two
  steps:

  <ol>
    <li>Create the VMs and/or vApps that make up the entity.</li>
    <li>Upload virtual disk contents.</li>
  </ol>
  In step 1, the client must wait for the server to create all inventory
  objects. It does that by monitoring the <a href="vim.HttpNfcLease.html#state">State</a>
  property on the <a href="vim.HttpNfcLease.html">HttpNfcLease</a> object returned from this call.
  When the server is done creating objects, the lease will change to the
  ready state, and step 2 begins. If an error occurs while the server is
  creating inventory objects, the lease will change to the error state, and
  the import process is aborted.

  <p>
  In step 2, the client uploads disk contents using the URLs provided in the
  <a href="vim.HttpNfcLease.html#info">Info</a> property of the lease. The client must call
  <a href="vim.HttpNfcLease.html#progress">HttpNfcLeaseProgress</a> on the lease periodically to keep the
  lease alive and report progress to the server. Failure to do so will cause
  the lease to time out, and the import process will be aborted.

  <p>
  When the client is done uploading disks, it completes the lease by calling
  <a href="vim.HttpNfcLease.html#complete">HttpNfcLeaseComplete</a>. The client can also abort the import
  process by calling <a href="vim.HttpNfcLease.html#abort">HttpNfcLeaseAbort</a>.

  <p>
  If the import process fails, is aborted, or times out, all created inventory
  objects are removed, including all virtual disks.

  <p>
  This operation only works if the folder's childType includes VirtualMachine.
  <p>
  Depending on the properties of the virtual machine bring imported, additional
  privileges may be required. See <a href="vim.Folder.html#createVm">CreateVM_Task</a> for a description of
  these privileges.]]>
      </description-html>
      <parameter name="spec" type-id-ref="vim.ImportSpec"
      vmodl-name="spec"
      version-id-ref="vim.version.version5"
      privilege="spec"
      >
      <description-html>
         <![CDATA[An <a href="vim.ImportSpec.html">ImportSpec</a> describing what to import.]]>
      </description-html>
      </parameter>
      <parameter name="folder" type-id-ref="vim.Folder"
      vmodl-name="folder"
      version-id-ref="vim.version.version5"
      is-optional="true"
      privilege="folder"
      >
      <description-html>
         <![CDATA[The folder to which the entity will be attached.]]>
      </description-html>
      </parameter>
      <parameter name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      version-id-ref="vim.version.version5"
      is-optional="true"
      privilege="host"
      >
      <description-html>
         <![CDATA[The target host on which the entity will run. This must
         specify a host that is a member of the ComputeResource indirectly
         specified by the pool. For a stand-alone host or a cluster with DRS,
         host can be omitted, and the system selects a default.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.VmConfigFault">
      <fault-description-html>
         <![CDATA[if a VM configSpec has incorrect values. Typically, a more
          specific subclass is thrown.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.FileFault">
      <fault-description-html>
         <![CDATA[if there is a problem creating the virtual machine on disk.
          Typically, a more specific subclass, such as NoDiskSpace, will be thrown.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.OutOfBounds">
      <fault-description-html>
         <![CDATA[if Host.capability.maxSupportedVMs is exceeded.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.DuplicateName">
      <fault-description-html>
         <![CDATA[if another virtual machine in the same folder already has
          the specified target name.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidName">
      <fault-description-html>
         <![CDATA[if the name is not a valid entity name.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidDatastore">
      <fault-description-html>
         <![CDATA[if the operation cannot be performed on the
          target datastores.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InsufficientResourcesFault">
      <fault-description-html>
         <![CDATA[if this operation would violate a resource
          usage policy.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.FileAlreadyExists">
      <fault-description-html>
         <![CDATA[if the requested cfgPath for the virtual machine's
          configuration file already exists.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.VmWwnConflict">
      <fault-description-html>
         <![CDATA[if the WWN of the virtual machine has been used by
          other virtual machines.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[a <a href="vim.HttpNfcLease.html">HttpNfcLease</a> object which is used to drive the import
          session.]]>
      </return-value-description-html>
   </method>
   <method name="QueryResourceConfigOption"
      vmodl-name="queryResourceConfigOption"
      version-id-ref="vim.version.version6"
      is-deprecated="true"
      privilege="Resource.EditPool"
      type-id-ref="vim.ResourceConfigOption"
      >
      <description-html>
         <![CDATA[Get a value range and default values for <a href="vim.ResourceConfigSpec.html">ResourceConfigSpec</a>.
 This API was never implemented, and there is no replacement for it.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[as of vSphere API 6.5.]]>
      </deprecated-html>
      <return-value-description-html>
         <![CDATA[<a href="vim.ResourceConfigOption.html">ResourceConfigOption</a> object.]]>
      </return-value-description-html>
   </method>
   <method name="RefreshRuntime"
      vmodl-name="refreshRuntime"
      version-id-ref="vim.version.version6"
      privilege="System.View"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Refreshes the resource usage data that is available in
 <a href="vim.ResourcePool.RuntimeInfo.html">ResourcePoolRuntimeInfo</a>.
 The latest runtime resource usage of this resource pool may not be
 available immediately after operations that alter resource usage,
 such as powering on a virtual machine. Invoke this method when resource
 usage may have recently changed, and the most up-to-date value in the
 <a href="vim.ResourcePool.RuntimeInfo.html">ResourcePoolRuntimeInfo</a> is needed.]]>
      </description-html>
   </method>
   </managed-object>
   <managed-object name="HostAssignableHardwareManager"
      type-id="vim.host.AssignableHardwareManager"
      vmodl-name="vim.host.AssignableHardwareManager"
      version-id-ref="vim.version.v7_0"
      >
      <description-html>
         <![CDATA[This managed object manages the assignable hardware state of the host.]]>
      </description-html>
            <property name="binding" type-id-ref="vim.host.AssignableHardwareBinding"
      vmodl-name="binding"
      is-array="true"
      is-optional="true"
      privilege="System.Read"
      >
      <description-html>
         <![CDATA[Assignable Hardware bindings]]>
      </description-html>
      </property>

            <property name="config" type-id-ref="vim.host.AssignableHardwareConfig"
      vmodl-name="config"
      privilege="System.Read"
      >
      <description-html>
         <![CDATA[Assignable Hardware configuration]]>
      </description-html>
      </property>

   <method name="DownloadDescriptionTree"
      vmodl-name="downloadDescriptionTree"
      privilege="System.Read"
      type-id-ref="vmodl.Binary"
      >
      <description-html>
         <![CDATA[Download Assignable Hardware description tree.

 The size of the downloaded description tree is dependent on the
 type and number of assignable devices found on the host.  As a
 rough estimate, each device might require approximate 256 bytes
 to represent.
 The number of assignable devices on a host may vary from none to
 60 or more.  A host with 3 SRIOV type devices consisting
 of a PF and 16 VFs would have a total of 51 devices and the
 description tree would be approximately 51 * 256 bytes = 13,056 bytes.]]>
      </description-html>
   </method>
   <method name="RetrieveDynamicPassthroughInfo"
      vmodl-name="retrieveDynamicPassthroughInfo"
      is-array="true"
      is-optional="true"
      privilege="System.Read"
      type-id-ref="vim.vm.DynamicPassthroughInfo"
      >
      <description-html>
         <![CDATA[Retrieve PCI Dynamic Passthrough info.

 Returns the list of PCI devices that may be used as a Dynamic
 DirectPath IO device.]]>
      </description-html>
   </method>
   <method name="UpdateAssignableHardwareConfig"
      vmodl-name="updateConfig"
      privilege="Host.Config.Settings"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Update Assignable Hardware configuration.
 Entries are updated as described in <a href="vim.host.AssignableHardwareConfig.html">HostAssignableHardwareConfig</a>.]]>
      </description-html>
      <parameter name="config" type-id-ref="vim.host.AssignableHardwareConfig"
      vmodl-name="config"
      version-id-ref="vim.version.v7_0"
      privilege="config"
      >
      </parameter>
      <fault type-id-ref="vim.fault.HostConfigFault">
      </fault>
   </method>
   </managed-object>
   <managed-object name="HostCpuSchedulerSystem"
      type-id="vim.host.CpuSchedulerSystem"
      vmodl-name="vim.host.CpuSchedulerSystem"
      version-id-ref="vim.version.version1"
      base-type-id="vim.ExtensibleManagedObject"
      >
      <description-html>
         <![CDATA[This managed object provides an interface
  through which you can gather and configure the host CPU scheduler
  policies that affect the performance of running virtual machines.
  <p>
  <b>Note</b>: This managed object is useful only on platforms where
  resource management controls are available to optimize the running
  of virtual machines.]]>
      </description-html>
            <property name="hyperthreadInfo" type-id-ref="vim.host.CpuSchedulerSystem.HyperThreadScheduleInfo"
      vmodl-name="hyperthreadInfo"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The hyperthread configuration for the CpuSchedulerSystem.  The
  existence of this data object type indicates if the CPU scheduler
  is capable of scheduling hyperthreads as resources.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.host.CpuSchedulerSystem.HyperThreadScheduleInfo</nested-type-id-ref>
   <method name="EnableHyperThreading"
      vmodl-name="enableHyperThreading"
      privilege="Host.Config.HyperThreading"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Treat hyperthreads as schedulable resources the next time the CPU
  scheduler starts.  If successful, this operation will set the
  <a href="vim.host.CpuSchedulerSystem.HyperThreadScheduleInfo.html#config">config</a>
  property to "true".]]>
      </description-html>
   </method>
   <method name="DisableHyperThreading"
      vmodl-name="disableHyperThreading"
      privilege="Host.Config.HyperThreading"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Don't treat hyperthreads as schedulable resources the next time the CPU
  scheduler starts.  If successful, this operation will change the
  configured setting.]]>
      </description-html>
   </method>
   </managed-object>
   <managed-object name="ServiceInstance"
      type-id="vim.ServiceInstance"
      vmodl-name="vim.ServiceInstance"
      version-id-ref="vim.version.version1"
      >
      <description-html>
         <![CDATA[The <a href="vim.ServiceInstance.html">ServiceInstance</a> managed object is the singleton root object of the inventory
  on both vCenter servers and servers running on standalone host agents.
  The server creates the <a href="vim.ServiceInstance.html">ServiceInstance</a> automatically, and also automatically
  creates the various manager entities that provide services in the virtual
  environment. Some examples of manager entities are <a href="vim.LicenseManager.html">LicenseManager</a>,
  <a href="vim.PerformanceManager.html">PerformanceManager</a>, and <a href="vim.view.ViewManager.html">ViewManager</a>. You can
  access the manager entities through the <a href="vim.ServiceInstance.html#content">Content</a> property.
  <p>
  A vSphere API client application begins by connecting to a server
  and obtaining a reference to the <a href="vim.ServiceInstance.html">ServiceInstance</a>. The client can then use
  the <a href="vim.ServiceInstance.html#retrieveContent">RetrieveServiceContent</a> method to gain
  access to the various vSphere manager entities and to the root folder
  of the inventory.

  <p>
  When you create managed objects, the server adds them to the inventory.
  The inventory of managed objects includes instances the following object types:

  <ul>
    <li><a href="vim.ServiceInstance.html">ServiceInstance</a>  -- Root of the inventory; created by vSphere.
    <li><a href="vim.Datacenter.html">Datacenter</a>       -- A container that represents a virtual
                                        data center. It contains hosts, network entities,
                                        virtual machines and virtual applications,
                                        and datastores.
    <li><a href="vim.Folder.html">Folder</a>           -- A container used for hierarchical
                                        organization of the inventory.
    <li><a href="vim.VirtualMachine.html">VirtualMachine</a>   -- A virtual machine.
    <li><a href="vim.VirtualApp.html">VirtualApp</a>       -- A virtual application.
    <li><a href="vim.ComputeResource.html">ComputeResource</a>  -- A compute resource
                          (either a cluster or a stand-alone host).
    <li><a href="vim.ResourcePool.html">ResourcePool</a>     -- A subset of resources provided by a ComputeResource.
    <li><a href="vim.HostSystem.html">HostSystem</a>       -- A single host (ESX Server or VMware Server).
    <li><a href="vim.Network.html">Network</a>          -- A network available to either hosts or virtual
                                        machines.
    <li><a href="vim.DistributedVirtualSwitch.html">DistributedVirtualSwitch</a> -- A distributed virtual switch.
    <li><a href="vim.dvs.DistributedVirtualPortgroup.html">DistributedVirtualPortgroup</a> -- A distributed virtual port group.
    <li><a href="vim.Datastore.html">Datastore</a>        -- Platform-independent, host-independent storage
                                        for virtual machine files.
  </ul>
  <p>
  The following figure shows the organization of managed objects in the
  vCenter hierarchy:
  <p><img src="vc_si_hierarchy.gif" alt="vCenter ServiceInstance Hierarchy"/>
  <p>
  Every Datacenter has the following set of dedicated folders.
  These folders are empty until you create entities for the Datacenter.
  <ul>
      <li> A folder for any combination of <a href="vim.VirtualMachine.html">VirtualMachine</a>
           and/or <a href="vim.VirtualApp.html">VirtualApp</a> objects. <a href="vim.VirtualApp.html">VirtualApp</a> objects can be nested,
           but only the parent <a href="vim.VirtualApp.html">VirtualApp</a> can be visible in the folder.
           Virtual machines that are children of virtual applications are not
           associated with a VirtualMachine/VirtualApp folder.
      <li> A folder for a <a href="vim.ComputeResource.html">ComputeResource</a> hierarchy.
      <li> A folder for network entities - any combination
           of <a href="vim.Network.html">Network</a>, <a href="vim.DistributedVirtualSwitch.html">DistributedVirtualSwitch</a>, and/or
           <a href="vim.dvs.DistributedVirtualPortgroup.html">DistributedVirtualPortgroup</a> objects.
      <li> A folder for <a href="vim.Datastore.html">Datastore</a> objects.
  </ul>
  <p>
  The host agent hierarchy has the same general form as the vCenter hierarchy,
  but most of the objects are limited to one instance:

 <p><img src="ha_si_hierarchy.gif" alt="Host Agent Service Instance Hierarchy"/>]]>
      </description-html>
            <property name="serverClock" type-id-ref="vmodl.DateTime"
      vmodl-name="serverClock"
      privilege="System.View"
      >
      <description-html>
         <![CDATA[Contains the time most recently obtained from the server.
  The time is not necessarily current. This property is intended for use
  with the PropertyCollector <a href="vmodl.query.PropertyCollector.html#waitForUpdates">WaitForUpdates</a>
  method. The PropertyCollector will provide notification if some event occurs
  that changes the server clock time in a non-linear fashion.
  <p>
  You should not rely on the serverClock property to get the current time
  on the server; instead, use the <a href="vim.ServiceInstance.html#currentTime">CurrentTime</a> method.]]>
      </description-html>
      </property>

            <property name="capability" type-id-ref="vim.Capability"
      vmodl-name="capability"
      privilege="System.View"
      >
      <description-html>
         <![CDATA[API-wide capabilities.]]>
      </description-html>
      </property>

            <property name="content" type-id-ref="vim.ServiceInstanceContent"
      vmodl-name="content"
      privilege="System.Anonymous"
      >
      <description-html>
         <![CDATA[The properties of the ServiceInstance managed object. The content property
  is identical to the return value from the
  <a href="vim.ServiceInstance.html#retrieveContent">RetrieveServiceContent</a> method.
  <p>
  Use the content property with the <a href="vmodl.query.PropertyCollector.html">PropertyCollector</a>
  to perform inventory traversal that includes the ServiceInstance.
  (In the absence of a content property, a traversal that encounters
  the <a href="vim.ServiceInstance.html">ServiceInstance</a> would require calling
  the <a href="vim.ServiceInstance.html#retrieveContent">RetrieveServiceContent</a> method,
  and then invoking a second traversal to continue.)]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.ServiceInstance.ValidateMigrationTestType</nested-type-id-ref>
      <nested-type-id-ref>vim.ServiceInstance.VMotionCompatibilityType</nested-type-id-ref>
      <nested-type-id-ref>vim.ServiceInstance.HostVMotionCompatibility</nested-type-id-ref>
      <nested-type-id-ref>vim.ServiceInstance.ProductComponentInfo</nested-type-id-ref>
   <method name="CurrentTime"
      vmodl-name="currentTime"
      privilege="System.View"
      type-id-ref="vmodl.DateTime"
      >
      <description-html>
         <![CDATA[Returns the current time on the server. To monitor non-linear time changes,
  use the <a href="vim.ServiceInstance.html#serverClock">ServerClock</a> property.]]>
      </description-html>
      <return-value-description-html>
         <![CDATA[The date and time on the server.]]>
      </return-value-description-html>
   </method>
   <method name="RetrieveServiceContent"
      vmodl-name="retrieveContent"
      privilege="System.Anonymous"
      type-id-ref="vim.ServiceInstanceContent"
      >
      <description-html>
         <![CDATA[Retrieves the properties of the service instance.]]>
      </description-html>
      <return-value-description-html>
         <![CDATA[The properties belonging to the service instance,
          including various object managers.]]>
      </return-value-description-html>
   </method>
   <method name="ValidateMigration"
      vmodl-name="validateMigration"
      is-deprecated="true"
      is-array="true"
      is-optional="true"
      privilege="System.View"
      type-id-ref="vim.event.Event"
      >
      <description-html>
         <![CDATA[Checks the validity of a set of proposed migrations. A migration
  is the act of changing the assigned execution host of a virtual
  machine, which can result from invoking
  <a href="vim.VirtualMachine.html#migrate">MigrateVM_Task</a> or
  <a href="vim.VirtualMachine.html#relocate">RelocateVM_Task</a>.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 4.0, use <a href="vim.vm.check.ProvisioningChecker.html">VirtualMachineProvisioningChecker</a>
 instead.]]>
      </deprecated-html>
      <parameter name="vm" type-id-ref="vim.VirtualMachine"
      vmodl-name="vm"
      version-id-ref="vim.version.version1"
      is-array="true"
      privilege="vm"
      >
      <description-html>
         <![CDATA[The set of virtual machines intended for migration.]]>
      </description-html>
      </parameter>
      <parameter name="state" type-id-ref="vim.VirtualMachine.PowerState"
      vmodl-name="state"
      version-id-ref="vim.version.version1"
      is-optional="true"
      privilege="state"
      >
      <description-html>
         <![CDATA[The power state that the virtual machines must have. If
        this argument is not set, each virtual machine is evaluated
        according to its current power state.]]>
      </description-html>
      </parameter>
      <parameter name="testType" type-id-ref="java.lang.String"
      vmodl-name="testType"
      version-id-ref="vim.version.version1"
      is-array="true"
      is-optional="true"
      privilege="testType"
      >
      <description-html>
         <![CDATA[The set of tests to run. If this argument is not set, all
        tests will be run.]]>
      </description-html>
      </parameter>
      <parameter name="pool" type-id-ref="vim.ResourcePool"
      vmodl-name="pool"
      version-id-ref="vim.version.version1"
      is-optional="true"
      privilege="pool"
      >
      <description-html>
         <![CDATA[The target resource pool for the virtual machines. If the
        pool parameter is left unset, the target pool for each particular
        virtual machine's migration will be that virtual machine's current
        pool.  If the virtual machine is a template then either this
        parameter or the host parameter must be set; additionally if
        resource tests are requested then this parameter is required.]]>
      </description-html>
      </parameter>
      <parameter name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      version-id-ref="vim.version.version1"
      is-optional="true"
      privilege="host"
      >
      <description-html>
         <![CDATA[The target host on which the virtual machines will run. The host
        parameter may be left unset if the compute resource associated with
        the target pool represents a stand-alone host or a DRS-enabled
        cluster. In the former case the stand-alone host is used as the
        target host. In the latter case, each connected host in the cluster
        that is not in maintenance mode is tested as a target host.
        If the virtual machine is a template then either this
        parameter or the pool parameter must be set.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.InvalidState">
      </fault>
      <fault type-id-ref="vim.fault.InvalidPowerState">
      <fault-description-html>
         <![CDATA[if the state argument is set and at least one
         of the specified virtual machines is not in that power state.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.NoActiveHostInCluster">
      <fault-description-html>
         <![CDATA[if a target host is not specified and a
         cluster associated with a target pool does not contain at least one
         potential target host. A host must be connected and not in maintenance
         mode in order to be considered as a potential target host.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[A set of events that describe the warnings or errors that would
         apply if the proposed set of migrations were executed.]]>
      </return-value-description-html>
   </method>
   <method name="QueryVMotionCompatibility"
      vmodl-name="queryVMotionCompatibility"
      is-deprecated="true"
      is-array="true"
      is-optional="true"
      privilege="Resource.QueryVMotion"
      type-id-ref="vim.ServiceInstance.HostVMotionCompatibility"
      >
      <description-html>
         <![CDATA[Investigates the general VMotion compatibility of a virtual machine with
  a set of hosts. The virtual machine may be in any power state. Hosts
  may be in any connection state and also may be in maintenance mode.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 4.0, use
  <a href="vim.vm.check.ProvisioningChecker.html#queryVMotionCompatibilityEx">QueryVMotionCompatibilityEx_Task</a> instead.]]>
      </deprecated-html>
      <parameter name="vm" type-id-ref="vim.VirtualMachine"
      vmodl-name="vm"
      version-id-ref="vim.version.version1"
      privilege="vm"
      >
      <description-html>
         <![CDATA[The virtual machine that is the designated VMotion candidate.]]>
      </description-html>
      </parameter>
      <parameter name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      version-id-ref="vim.version.version1"
      is-array="true"
      privilege="host"
      >
      <description-html>
         <![CDATA[The group of hosts to analyze for compatibility.]]>
      </description-html>
      </parameter>
      <parameter name="compatibility" type-id-ref="java.lang.String"
      vmodl-name="compatibility"
      version-id-ref="vim.version.version1"
      is-array="true"
      is-optional="true"
      privilege="compatibility"
      >
      <description-html>
         <![CDATA[The set of compatibility types to investigate.
         Each is a string chosen from VMotionCompatibilityType. If this
         argument is not set, then all compatibility types are
         investigated.]]>
      </description-html>
      </parameter>
      <return-value-description-html>
         <![CDATA[An array where each element, associated with one of the input
          hosts, specifies which of the requested compatibility types
          applies to that host. If an input host has never been connected
          and therefore has no information available for determining its
          compatibility, it is omitted from the return list.]]>
      </return-value-description-html>
   </method>
   <method name="RetrieveProductComponents"
      vmodl-name="retrieveProductComponents"
      version-id-ref="vim.version.version2"
      is-array="true"
      is-optional="true"
      privilege="System.Anonymous"
      type-id-ref="vim.ServiceInstance.ProductComponentInfo"
      >
      <description-html>
         <![CDATA[Component information for bundled products]]>
      </description-html>
   </method>
   </managed-object>
   <managed-object name="LocalizationManager"
      type-id="vim.LocalizationManager"
      vmodl-name="vim.LocalizationManager"
      version-id-ref="vim.version.version5"
      >
      <description-html>
         <![CDATA[<a href="vim.LocalizationManager.html">LocalizationManager</a> provides access to descriptions of
 the message catalogs that are available for client-side message
 localization.

 <p>Clients of the VIM API may use
 <a href="vim.SessionManager.html">SessionManager</a>.<a href="vim.SessionManager.html#setLocale">SetLocale</a>
 to cause the server to emit localized messages, or may perform
 client-side localization based on message catalogs provided by the
 <a href="vim.LocalizationManager.html">LocalizationManager</a>.</p>

 <p>A message catalog is a file that contains a set of key-value pairs.</p>
 <ul>
  <li>The key is an ASCII string that identifies the message.</li>
  <li>The value is a UTF-8 string that contains the text of the message, sometimes
      containing substitution variables.</li>
 </ul>
 <p>The server will localize fields tagged with 'localizable' based on the
 value of the <a href="vim.UserSession.html">UserSession</a>.<a href="vim.UserSession.html#locale">locale</a>
 and <a href="vim.UserSession.html#messageLocale">messageLocale</a> properties which are set via
 <a href="vim.SessionManager.html">SessionManager</a>.<a href="vim.SessionManager.html#setLocale">SetLocale</a>.</p>

 <p>The following list shows some of the ways that vSphere uses localized
 messages.</p>
 <ul>
  <li>Current task status (<a href="vim.TaskInfo.html">TaskInfo</a>.<a href="vim.TaskInfo.html#description">description</a>)</li>
  <li>Events (<a href="vim.vm.Message.html">VirtualMachineMessage</a>.<a href="vim.vm.Message.html#text">text</a> and
      Questions (<a href="vim.vm.QuestionInfo.html">VirtualMachineQuestionInfo</a>.<a href="vim.vm.QuestionInfo.html#text">text</a>)</li>
  <li>Faults (<a href="vmodl.MethodFault.html">MethodFault</a>.<a href="vmodl.MethodFault.html#faultMessage">faultMessage</a>)</li>
  <li><a href="vim.profile.host.HostProfile.html">HostProfile</a> and
      <a href="vim.profile.cluster.ClusterProfile.html">ClusterProfile</a> descriptions
      (<a href="vim.profile.Profile.html">Profile</a>.<a href="vim.profile.Profile.Description.html">ProfileDescription</a>.
       <a href="vim.profile.Profile.html#description">Description</a> returned by the
       <a href="vim.profile.Profile.html">Profile</a>.<a href="vim.profile.Profile.html#retrieveDescription">RetrieveDescription</a> method)</li>
 </ul>]]>
      </description-html>
            <property name="catalog" type-id-ref="vim.LocalizationManager.MessageCatalog"
      vmodl-name="catalog"
      is-array="true"
      is-optional="true"
      privilege="System.View"
      >
      <description-html>
         <![CDATA[Fetches the descriptions of all the client-side localization message
 catalogs available for the current session locale.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.LocalizationManager.MessageCatalog</nested-type-id-ref>
   </managed-object>
   <managed-object name="VsanUpgradeSystem"
      type-id="vim.VsanUpgradeSystem"
      vmodl-name="vim.VsanUpgradeSystem"
      version-id-ref="vim.version.version10"
      >
      <description-html>
         <![CDATA[VSAN Upgrade System. Used to perform and monitor VSAN on-disk format
 upgrades.]]>
      </description-html>
      <nested-type-id-ref>vim.VsanUpgradeSystem.PreflightCheckIssue</nested-type-id-ref>
      <nested-type-id-ref>vim.VsanUpgradeSystem.HostsDisconnectedIssue</nested-type-id-ref>
      <nested-type-id-ref>vim.VsanUpgradeSystem.MissingHostsInClusterIssue</nested-type-id-ref>
      <nested-type-id-ref>vim.VsanUpgradeSystem.RogueHostsInClusterIssue</nested-type-id-ref>
      <nested-type-id-ref>vim.VsanUpgradeSystem.WrongEsxVersionIssue</nested-type-id-ref>
      <nested-type-id-ref>vim.VsanUpgradeSystem.AutoClaimEnabledOnHostsIssue</nested-type-id-ref>
      <nested-type-id-ref>vim.VsanUpgradeSystem.APIBrokenIssue</nested-type-id-ref>
      <nested-type-id-ref>vim.VsanUpgradeSystem.V2ObjectsPresentDuringDowngradeIssue</nested-type-id-ref>
      <nested-type-id-ref>vim.VsanUpgradeSystem.NotEnoughFreeCapacityIssue</nested-type-id-ref>
      <nested-type-id-ref>vim.VsanUpgradeSystem.NetworkPartitionInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.VsanUpgradeSystem.NetworkPartitionIssue</nested-type-id-ref>
      <nested-type-id-ref>vim.VsanUpgradeSystem.PreflightCheckResult</nested-type-id-ref>
      <nested-type-id-ref>vim.VsanUpgradeSystem.UpgradeHistoryItem</nested-type-id-ref>
      <nested-type-id-ref>vim.VsanUpgradeSystem.UpgradeHistoryDiskGroupOpType</nested-type-id-ref>
      <nested-type-id-ref>vim.VsanUpgradeSystem.UpgradeHistoryDiskGroupOp</nested-type-id-ref>
      <nested-type-id-ref>vim.VsanUpgradeSystem.UpgradeHistoryPreflightFail</nested-type-id-ref>
      <nested-type-id-ref>vim.VsanUpgradeSystem.UpgradeStatus</nested-type-id-ref>
   <method name="PerformVsanUpgradePreflightCheck"
      vmodl-name="performUpgradePreflightCheck"
      privilege="System.Read"
      type-id-ref="vim.VsanUpgradeSystem.PreflightCheckResult"
      >
      <description-html>
         <![CDATA[Perform an upgrade pre-flight check on a cluster.]]>
      </description-html>
      <parameter name="cluster" type-id-ref="vim.ClusterComputeResource"
      vmodl-name="cluster"
      version-id-ref="vim.version.version10"
      privilege="cluster"
      >
      <description-html>
         <![CDATA[The cluster for which to perform the check.]]>
      </description-html>
      </parameter>
      <parameter name="downgradeFormat" type-id-ref="BOOLEAN"
      vmodl-name="downgradeFormat"
      version-id-ref="vim.version.version10"
      is-optional="true"
      privilege="downgradeFormat"
      >
      <description-html>
         <![CDATA[Intend to perform a on-disk format downgrade instead
                        of upgrade. Adds additional checks.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.VsanFault">
      </fault>
      <return-value-description-html>
         <![CDATA[Pre-flight check result.]]>
      </return-value-description-html>
   </method>
   <method name="QueryVsanUpgradeStatus"
      vmodl-name="queryUpgradeStatus"
      privilege="System.Read"
      type-id-ref="vim.VsanUpgradeSystem.UpgradeStatus"
      >
      <description-html>
         <![CDATA[Retrieve the latest status of a running, or the previously completed,
 upgrade process. Information about previous upgrade runs are not
 always, e.g. when VC gets restarted.]]>
      </description-html>
      <parameter name="cluster" type-id-ref="vim.ClusterComputeResource"
      vmodl-name="cluster"
      version-id-ref="vim.version.version10"
      privilege="cluster"
      >
      <description-html>
         <![CDATA[The cluster for which to retrieve the upgrade status.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.VsanFault">
      </fault>
      <return-value-description-html>
         <![CDATA[Status]]>
      </return-value-description-html>
   </method>
   <method name="PerformVsanUpgrade"
      vmodl-name="performUpgrade"
      privilege="System.Read"
      type-id-ref="vim.VsanUpgradeSystem.UpgradeStatus"
      is-task="true"
      >
      <description-html>
         <![CDATA[Start VSAN on-disk format upgrade process on a particular cluster.

 In order to perform this on-disk format upgrade, the upgrade process
 will perform a rolling evacuation/remove/re-add operation to accomplish
 the upgrade. In other words, one disk group at a time, it will evacuate
 the data from the disk group, then remove the old format from the now
 empty disk group, then reformat the disk group with the new format.
 Once all disk groups have been upgraded, and if the performObjectUpgrade
 parameter is set, the VSAN object version is also upgraded. Before
 the object version is upgraded, it is possible to downgrade the cluster
 by passing the downgradeFormat parameter. Once objects are of the new
 object version however, downgrade (and thus rollback) are no longer
 possible. The new object version is required to allow objects to benefit
 from new VSAN features.

 This is a long running (hours to days) task. In addition to normal
 task progress reporting, use the queryUpgradeStatus() API which allows
 to retrieve in-depth status updates from the upgrade process. In there
 will be a detailed log of every operation the upgrade process has taken
 or issues it encountered. Some are simple log messages, others refer
 to operations like evacuating a disk group. For such log entries, the
 task object of the evacuation task is provided to allow "sub-task"
 tracking.

 Before starting, the upgrade process will perform a pre-flight check,
 and abort if any of the pre-conditions are not met. See<br>See <a href="vim.VsanUpgradeSystem.html#performUpgradePreflightCheck">PerformVsanUpgradePreflightCheck</a><br>]]>
      </description-html>
      <parameter name="cluster" type-id-ref="vim.ClusterComputeResource"
      vmodl-name="cluster"
      version-id-ref="vim.version.version10"
      privilege="cluster"
      >
      <description-html>
         <![CDATA[The cluster to be upgraded<br>See <a href="vim.VsanUpgradeSystem.html#performUpgradePreflightCheck">PerformVsanUpgradePreflightCheck</a><br>]]>
      </description-html>
      </parameter>
      <parameter name="performObjectUpgrade" type-id-ref="BOOLEAN"
      vmodl-name="performObjectUpgrade"
      version-id-ref="vim.version.version10"
      is-optional="true"
      privilege="performObjectUpgrade"
      >
      <description-html>
         <![CDATA[After all disk groups have been updated, also
                             upgrade all objects. Once started, rollback
                             of the on disk format is no longer possible.
                             Object upgrade unlocks new VSAN features.<br>See <a href="vim.VsanUpgradeSystem.html#performUpgradePreflightCheck">PerformVsanUpgradePreflightCheck</a><br>]]>
      </description-html>
      </parameter>
      <parameter name="downgradeFormat" type-id-ref="BOOLEAN"
      vmodl-name="downgradeFormat"
      version-id-ref="vim.version.version10"
      is-optional="true"
      privilege="downgradeFormat"
      >
      <description-html>
         <![CDATA[Perform a on-disk format downgrade instead of
                        upgrade. Only possible if no upgraded objects exist.<br>See <a href="vim.VsanUpgradeSystem.html#performUpgradePreflightCheck">PerformVsanUpgradePreflightCheck</a><br>]]>
      </description-html>
      </parameter>
      <parameter name="allowReducedRedundancy" type-id-ref="BOOLEAN"
      vmodl-name="allowReducedRedundancy"
      version-id-ref="vim.version.version10"
      is-optional="true"
      privilege="allowReducedRedundancy"
      >
      <description-html>
         <![CDATA[Removes the need for one disk group worth of
                               free space, by allowing reduced redundancy
                               during disk upgrade.<br>See <a href="vim.VsanUpgradeSystem.html#performUpgradePreflightCheck">PerformVsanUpgradePreflightCheck</a><br>]]>
      </description-html>
      </parameter>
      <parameter name="excludeHosts" type-id-ref="vim.HostSystem"
      vmodl-name="excludeHosts"
      version-id-ref="vim.version.version10"
      is-array="true"
      is-optional="true"
      privilege="excludeHosts"
      >
      <description-html>
         <![CDATA[Internal debug option meant for functional testing
                     of VSAN upgrades. Skips upgrade on certain hosts and
                     implies performObjectUpgrade being false. Should not
                     be used by customers.<br>See <a href="vim.VsanUpgradeSystem.html#performUpgradePreflightCheck">PerformVsanUpgradePreflightCheck</a><br>]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.VsanFault">
      <fault-description-html>
         <![CDATA[<br>See <a href="vim.VsanUpgradeSystem.html#performUpgradePreflightCheck">PerformVsanUpgradePreflightCheck</a><br>]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[Status]]>
      </return-value-description-html>
   </method>
   </managed-object>
   <managed-object name="OptionManager"
      type-id="vim.option.OptionManager"
      vmodl-name="vim.option.OptionManager"
      version-id-ref="vim.version.version1"
      >
      <description-html>
         <![CDATA[This managed object type is used for managing key/value pair
  options.
  <p>
  <ul>
  <li>You can define options on the fly, in a logical tree using a dot notation
  for keys.  For example, "Ethernet.Connection" describes the Connection
  option as child of the Ethernet option.
  <li>You can use the queryMethod to retrieve a single property or
  a subset of properties based on the dot notation path.
  </ul>]]>
      </description-html>
            <property name="supportedOption" type-id-ref="vim.option.OptionDef"
      vmodl-name="supportedOption"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[A list of supported key/value pair options including their
  type information.]]>
      </description-html>
      </property>

            <property name="setting" type-id-ref="vim.option.OptionValue"
      vmodl-name="setting"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[A list of the current settings for the key/value pair options.]]>
      </description-html>
      </property>

   <method name="QueryOptions"
      vmodl-name="queryView"
      is-array="true"
      is-optional="true"
      privilege="System.View"
      type-id-ref="vim.option.OptionValue"
      >
      <description-html>
         <![CDATA[Returns a specific node or nodes in the option hierarchy.

  <p>
  This method might require any of the following privileges depending
  on where the property fits in the inventory tree.
 <ul>
 <li>System.View on the root folder, if this is used to read settings
     in the &quot;client&quot; subtree.
 <li>System.Read on the root folder, if this is used to read all settings
     or any settings beside those in the &quot;client&quot; subtree.
 <li>System.Read on the host, if this is used to read the advanced
     options for a host configuration.
 </ul>]]>
      </description-html>
      <parameter name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      version-id-ref="vim.version.version1"
      is-optional="true"
      privilege="name"
      >
      </parameter>
      <fault type-id-ref="vim.fault.InvalidName">
      <fault-description-html>
         <![CDATA[if no option or subtree exists with the
          given name.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[The option with the given name. If the name ends with a
          dot, all options for that subtree are returned.]]>
      </return-value-description-html>
   </method>
   <method name="UpdateOptions"
      vmodl-name="updateValues"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Updates one or more options.
  The options are changed one by one, and the operation is not atomic.
  This means that on failure some of the options may not be changed.
  <p>
  A nested option setting can be named using a dot notation; for example,
  system.cacheSize.

  <p>
  This method might require any of the following privileges depending
  on where the property fits in the inventory tree.
 <ul>
 <li>Global.Settings on the root folder, if this is used to modify the
     settings in the service node.
 <li>Host.Config.AdvancedConfig on the host, if this is used to set the
     advanced options in the host configuration.
 </ul>]]>
      </description-html>
      <parameter name="changedValue" type-id-ref="vim.option.OptionValue"
      vmodl-name="changedValue"
      version-id-ref="vim.version.version1"
      is-array="true"
      privilege="changedValue"
      >
      </parameter>
      <fault type-id-ref="vim.fault.InvalidName">
      <fault-description-html>
         <![CDATA[if one or more OptionValue objects refers to a
          non-existent option.]]>
      </fault-description-html>
      </fault>
   </method>
   </managed-object>
   <managed-object name="GuestAuthManager"
      type-id="vim.vm.guest.AuthManager"
      vmodl-name="vim.vm.guest.AuthManager"
      version-id-ref="vim.version.version7"
      >
      <description-html>
         <![CDATA[AuthManager is the managed object that provides APIs
 to manipulate the guest operating authentication.]]>
      </description-html>
   <method name="ValidateCredentialsInGuest"
      vmodl-name="validateCredentials"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Validates the <a href="vim.vm.guest.GuestAuthentication.html">GuestAuthentication</a> credentials.
 <p>
 This can be used to check the authentication data, or
 validate any authentication that has a timeout is still valid.
 If the authentication is not valid, <a href="vim.fault.GuestPermissionDenied.html">GuestPermissionDenied</a>
 will be thrown.
 <p>]]>
      </description-html>
      <parameter name="vm" type-id-ref="vim.VirtualMachine"
      vmodl-name="vm"
      version-id-ref="vim.version.version7"
      privilege="vm"
      >
      <description-html>
         <![CDATA[MoRef of the VM to perform the operation on.]]>
      </description-html>
      </parameter>
      <parameter name="auth" type-id-ref="vim.vm.guest.GuestAuthentication"
      vmodl-name="auth"
      version-id-ref="vim.version.version7"
      privilege="auth"
      >
      <description-html>
         <![CDATA[The guest authentication data.  See
    <a href="vim.vm.guest.GuestAuthentication.html">GuestAuthentication</a>.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.GuestOperationsFault">
      <fault-description-html>
         <![CDATA[if there is an error processing a guest
    operation.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the operation cannot be performed because of the
     virtual machine's current state.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.TaskInProgress">
      <fault-description-html>
         <![CDATA[if the virtual machine is busy.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.GuestOperationsUnavailable">
      <fault-description-html>
         <![CDATA[if the VM agent for guest operations
    is not running.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidPowerState">
      <fault-description-html>
         <![CDATA[if the VM is not powered on.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.GuestComponentsOutOfDate">
      <fault-description-html>
         <![CDATA[if the guest agent is too old to support
    the operation.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.OperationNotSupportedByGuest">
      <fault-description-html>
         <![CDATA[if the operation is not supported by
    the guest OS.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.OperationDisabledByGuest">
      <fault-description-html>
         <![CDATA[if the operation is not enabled due to
    guest agent configuration.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidGuestLogin">
      <fault-description-html>
         <![CDATA[if the the guest authentication information
    was not accepted.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="AcquireCredentialsInGuest"
      vmodl-name="acquireCredentials"
      type-id-ref="vim.vm.guest.GuestAuthentication"
      >
      <description-html>
         <![CDATA[Authenticates in the guest and returns a <a href="vim.vm.guest.GuestAuthentication.html">GuestAuthentication</a> object
 with the acquired credentials for use in subsequent guest operation calls.
 <p>
 This can be used to authenticate inside the guest and obtain a
 <a href="vim.vm.guest.GuestAuthentication.html">GuestAuthentication</a> object for supported authentication types.

 This operation is not needed for Name and Password Authentication. To use
 Name and Password Authentication, see <a href="vim.vm.guest.NamePasswordAuthentication.html">NamePasswordAuthentication</a>.

 For SSPI authentication, requestAuth should be of the type <a href="vim.vm.guest.SSPIAuthentication.html">SSPIAuthentication</a>.
 <p>]]>
      </description-html>
      <parameter name="vm" type-id-ref="vim.VirtualMachine"
      vmodl-name="vm"
      version-id-ref="vim.version.version7"
      privilege="vm"
      >
      <description-html>
         <![CDATA[MoRef of the VM to perform the operation on.]]>
      </description-html>
      </parameter>
      <parameter name="requestedAuth" type-id-ref="vim.vm.guest.GuestAuthentication"
      vmodl-name="requestedAuth"
      version-id-ref="vim.version.version7"
      privilege="requestedAuth"
      >
      <description-html>
         <![CDATA[The guest authentication data used to acquire credentials.
    See <a href="vim.vm.guest.GuestAuthentication.html">GuestAuthentication</a>.]]>
      </description-html>
      </parameter>
      <parameter name="sessionID" type-id-ref="LONG"
      vmodl-name="sessionID"
      version-id-ref="vim.version.version7"
      is-optional="true"
      privilege="sessionID"
      >
      <description-html>
         <![CDATA[The sessionID number should be provided only when
    responding to a server challenge. The sessionID number to be used with
    the challenge is found in the
    <a href="vim.fault.GuestAuthenticationChallenge.html">GuestAuthenticationChallenge</a> object.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.GuestOperationsFault">
      <fault-description-html>
         <![CDATA[if there is an error processing a guest
    operation.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.TaskInProgress">
      <fault-description-html>
         <![CDATA[if the virtual machine is busy.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the operation cannot be performed because of the
     virtual machine's current state.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.GuestOperationsUnavailable">
      <fault-description-html>
         <![CDATA[if the VM agent for guest operations
    is not running.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidPowerState">
      <fault-description-html>
         <![CDATA[if the VM is not powered on.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.GuestAuthenticationChallenge">
      <fault-description-html>
         <![CDATA[if the credential information
    provided requires a challenge to authenticate.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.GuestComponentsOutOfDate">
      <fault-description-html>
         <![CDATA[if the guest agent is too old to
    support the operation.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.OperationNotSupportedByGuest">
      <fault-description-html>
         <![CDATA[if the operation is not supported
    by the guest OS.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.OperationDisabledByGuest">
      <fault-description-html>
         <![CDATA[if the operation is not enabled due
    to guest agent configuration.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.TooManyGuestLogons">
      <fault-description-html>
         <![CDATA[if there are too many concurrent login
    sessions active in the guest.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidGuestLogin">
      <fault-description-html>
         <![CDATA[if the the guest authentication information
    was not accepted.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[Returns a <a href="vim.vm.guest.GuestAuthentication.html">GuestAuthentication</a> object that can be used in
    guest operation calls.]]>
      </return-value-description-html>
   </method>
   <method name="ReleaseCredentialsInGuest"
      vmodl-name="releaseCredentials"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Releases session data and resources associated with
 a <a href="vim.vm.guest.GuestAuthentication.html">GuestAuthentication</a> object returned by <a href="vim.vm.guest.AuthManager.html#acquireCredentials">AcquireCredentialsInGuest</a>.
 <p>
 This frees any resources and session data associated with a
 <a href="vim.vm.guest.GuestAuthentication.html">GuestAuthentication</a> object returned by <a href="vim.vm.guest.AuthManager.html#acquireCredentials">AcquireCredentialsInGuest</a>.
 The <a href="vim.vm.guest.GuestAuthentication.html">GuestAuthentication</a> object can no longer be used to
 authenticate in the guest once released. Currently this operation is only
 valid for <a href="vim.vm.guest.TicketedSessionAuthentication.html">TicketedSessionAuthentication</a> objects.
 <p>]]>
      </description-html>
      <parameter name="vm" type-id-ref="vim.VirtualMachine"
      vmodl-name="vm"
      version-id-ref="vim.version.version7"
      privilege="vm"
      >
      <description-html>
         <![CDATA[MoRef of the VM to perform the operation on.]]>
      </description-html>
      </parameter>
      <parameter name="auth" type-id-ref="vim.vm.guest.GuestAuthentication"
      vmodl-name="auth"
      version-id-ref="vim.version.version7"
      privilege="auth"
      >
      <description-html>
         <![CDATA[The guest authentication data.  See
    <a href="vim.vm.guest.GuestAuthentication.html">GuestAuthentication</a>.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.GuestOperationsFault">
      <fault-description-html>
         <![CDATA[if there is an error processing a guest
    operation.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.TaskInProgress">
      <fault-description-html>
         <![CDATA[if the virtual machine is busy.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the operation cannot be performed because of the
     virtual machine's current state.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.GuestOperationsUnavailable">
      <fault-description-html>
         <![CDATA[if the VM agent for guest operations
    is not running.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidPowerState">
      <fault-description-html>
         <![CDATA[if the VM is not powered on.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.GuestComponentsOutOfDate">
      <fault-description-html>
         <![CDATA[if the guest agent is too old to
    support the operation.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.OperationNotSupportedByGuest">
      <fault-description-html>
         <![CDATA[if the operation is not supported
    by the guest OS.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.OperationDisabledByGuest">
      <fault-description-html>
         <![CDATA[if the operation is not enabled due
    to guest agent configuration.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidGuestLogin">
      <fault-description-html>
         <![CDATA[if the the guest authentication information
    was not accepted.]]>
      </fault-description-html>
      </fault>
   </method>
   </managed-object>
   <managed-object name="ClusterProfile"
      type-id="vim.profile.cluster.ClusterProfile"
      vmodl-name="vim.profile.cluster.ClusterProfile"
      version-id-ref="vim.version.version5"
      base-type-id="vim.profile.Profile"
      >
      <nested-type-id-ref>vim.profile.cluster.ClusterProfile.ConfigInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.profile.cluster.ClusterProfile.CreateSpec</nested-type-id-ref>
      <nested-type-id-ref>vim.profile.cluster.ClusterProfile.ConfigSpec</nested-type-id-ref>
      <nested-type-id-ref>vim.profile.cluster.ClusterProfile.CompleteConfigSpec</nested-type-id-ref>
      <nested-type-id-ref>vim.profile.cluster.ClusterProfile.ServiceType</nested-type-id-ref>
      <nested-type-id-ref>vim.profile.cluster.ClusterProfile.ConfigServiceCreateSpec</nested-type-id-ref>
   <method name="UpdateClusterProfile"
      vmodl-name="update"
      privilege="Profile.Edit"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Update the ClusterProfile with the specified config.]]>
      </description-html>
      <parameter name="config" type-id-ref="vim.profile.cluster.ClusterProfile.ConfigSpec"
      vmodl-name="config"
      version-id-ref="vim.version.version5"
      privilege="config"
      >
      <description-html>
         <![CDATA[Specification which describes the changes.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.DuplicateName">
      <fault-description-html>
         <![CDATA[If the profile with the new name already exists.]]>
      </fault-description-html>
      </fault>
   </method>
   </managed-object>
   <managed-object name="AuthorizationManager"
      type-id="vim.AuthorizationManager"
      vmodl-name="vim.AuthorizationManager"
      version-id-ref="vim.version.version1"
      >
      <description-html>
         <![CDATA[This managed object provides operations to query and update
  roles and permissions.
  <p>
  <b>Privileges</b> are the basic individual rights required to
  perform operations.  They are statically defined and
  never change for a single version of a product.  Examples
  of privileges are &quot;Power on a virtual machine&quot;
  or &quot;Configure a host.&quot;
  <p>
  <b>Roles</b> are aggregations of privileges, used for convenience.
  For user-defined roles, the system-defined privileges, "System.Anonymous",
  "System.View", and "System.Read" are always present.
  <p>
  <b>Permissions</b> are the actual access-control rules.  A
  permission is defined on a ManagedEntity and
  specifies the user or group (&quot;principal&quot;) to which
  the rule applies. The role specifies the
  privileges to apply, and the propagate flag
  specifies whether or not the rule applies to sub-objects
  of the managed entity.
  <p>
  A ManagedEntity may have multiple permissions,
  but may have only one permission per user or group. If, when logging
  in, a user has both a user permission and a group permission
  (as a group member) for the same entity, then the
  user-specific permission takes precedent.  If there is no
  user-specific permission, but two or more group permissions
  are present, and the user is a member of the groups, then the
  privileges are the union of the specified roles.
  <p>
  Managed entities may be collected together into a &quot;complex entity&quot; for
  the purpose of applying permissions consistently. Complex entities may have a
  Datacenter, ComputeResource, or ClusterComputeResource as a parent, with other
  child managed objects as additional parts of the complex entity:
  <ul>
    <li>A Datacenter's child objects are the root virtual machine and host Folders.
    <li>A ComputeResource's child objects are the root ResourcePool and HostSystem.
    <li>A ClusterComputeResource has only the root ResourcePool as a child object.
  </ul>
  Child objects in a complex entity are forced to inherit permissions from the
  parent object. When query operations are used to discover permissions on child
  objects of complex entities, different results may be returned for the owner of the
  permission. In some cases, the child object of the complex entity is returned as
  the object that defines the permission, and in other cases, the parent from which
  the permission is propagated is returned as the object that defines the permission.
  In both cases, the information about the owner of the permission is correct, since
  the entities within a complex entity are considered equivalent.  Permissions
  defined on complex entities are always applicable on the child entities,
  regardless of the propagation flag, but may only be defined or modified on the
  parent object.
  <p>
  In a group of fault-tolerance (FT) protected VirtualMachines, the secondary
  VirtualMachines are forced to inherit permissions from the primary VirtualMachine.
  Queries to discover permissions on FT secondary VMs always return the primary VM
  as the object that defines the permissions. Permissions defined on an FT primary
  VM are always applicable on its secondary VMs, but can only be defined or modified
  on the primary VM.]]>
      </description-html>
            <property name="privilegeList" type-id-ref="vim.AuthorizationManager.Privilege"
      vmodl-name="privilegeList"
      is-array="true"
      is-optional="true"
      privilege="System.View"
      >
      <description-html>
         <![CDATA[The list of system-defined privileges.]]>
      </description-html>
      </property>

            <property name="roleList" type-id-ref="vim.AuthorizationManager.Role"
      vmodl-name="roleList"
      is-array="true"
      is-optional="true"
      privilege="System.View"
      >
      <description-html>
         <![CDATA[The currently defined roles in the system, including
  static system-defined roles.]]>
      </description-html>
      </property>

            <property name="description" type-id-ref="vim.AuthorizationDescription"
      vmodl-name="description"
      privilege="System.View"
      >
      <description-html>
         <![CDATA[Static, descriptive strings for system roles and privileges.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.AuthorizationManager.Permission</nested-type-id-ref>
      <nested-type-id-ref>vim.AuthorizationManager.Role</nested-type-id-ref>
      <nested-type-id-ref>vim.AuthorizationManager.Privilege</nested-type-id-ref>
      <nested-type-id-ref>vim.AuthorizationManager.PrivilegeAvailability</nested-type-id-ref>
      <nested-type-id-ref>vim.AuthorizationManager.EntityPrivilege</nested-type-id-ref>
      <nested-type-id-ref>vim.AuthorizationManager.UserPrivilegeResult</nested-type-id-ref>
   <method name="AddAuthorizationRole"
      vmodl-name="addRole"
      privilege="Authorization.ModifyRoles"
      type-id-ref="INT"
      >
      <description-html>
         <![CDATA[Adds a new role.
  This method will add a user-defined role with given list of privileges
  and three system-defined privileges, "System.Anonymous", "System.View",
  and "System.Read".]]>
      </description-html>
      <parameter name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      version-id-ref="vim.version.version1"
      privilege="name"
      >
      <description-html>
         <![CDATA[Name of the new role.]]>
      </description-html>
      </parameter>
      <parameter name="privIds" type-id-ref="java.lang.String"
      vmodl-name="privIds"
      version-id-ref="vim.version.version1"
      is-array="true"
      is-optional="true"
      privilege="privIds"
      >
      <description-html>
         <![CDATA[List of privileges to assign to the role.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.AlreadyExists">
      <fault-description-html>
         <![CDATA[if a role with the given name already exists.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidName">
      <fault-description-html>
         <![CDATA[if the role name is empty.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[The roleId assigned to the new role.]]>
      </return-value-description-html>
   </method>
   <method name="RemoveAuthorizationRole"
      vmodl-name="removeRole"
      privilege="Authorization.ModifyRoles"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Removes a role.]]>
      </description-html>
      <parameter name="roleId" type-id-ref="INT"
      vmodl-name="roleId"
      version-id-ref="vim.version.version1"
      privilege="roleId"
      >
      </parameter>
      <parameter name="failIfUsed" type-id-ref="BOOLEAN"
      vmodl-name="failIfUsed"
      version-id-ref="vim.version.version1"
      privilege="failIfUsed"
      >
      <description-html>
         <![CDATA[If true, prevents the role from being
                    removed if any permissions are using it.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[if the role does not exist.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.RemoveFailed">
      <fault-description-html>
         <![CDATA[if failIfUsed is true and the role has permissions.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="UpdateAuthorizationRole"
      vmodl-name="updateRole"
      privilege="Authorization.ModifyRoles"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Updates a role's name or privileges.
  If the new set of privileges are assigned to the role, the
  system-defined privileges, "System.Anonymous", "System.View",
  and "System.Read" will be assigned to the role too.

  This operation might return before the new privileges are effective.
  A timeout of 100 ms is possible, but it might vary depending on
  the configuration and the load of the system.]]>
      </description-html>
      <parameter name="roleId" type-id-ref="INT"
      vmodl-name="roleId"
      version-id-ref="vim.version.version1"
      privilege="roleId"
      >
      <description-html>
         <![CDATA[The ID of the role that is updated.]]>
      </description-html>
      </parameter>
      <parameter name="newName" type-id-ref="java.lang.String"
      vmodl-name="newName"
      version-id-ref="vim.version.version1"
      privilege="newName"
      >
      <description-html>
         <![CDATA[The new name for the role.]]>
      </description-html>
      </parameter>
      <parameter name="privIds" type-id-ref="java.lang.String"
      vmodl-name="privIds"
      version-id-ref="vim.version.version1"
      is-array="true"
      is-optional="true"
      privilege="privIds"
      >
      <description-html>
         <![CDATA[The new set of privileges to assign to the role.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[if the role does not exist, or if a privilege
                            in the list cannot be found.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidName">
      <fault-description-html>
         <![CDATA[if the new role name is empty.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.AlreadyExists">
      <fault-description-html>
         <![CDATA[if another role with the given name already exists.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="MergePermissions"
      vmodl-name="mergePermissions"
      privilege="Authorization.ReassignRolePermissions"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Reassigns all permissions of a role to another role.]]>
      </description-html>
      <parameter name="srcRoleId" type-id-ref="INT"
      vmodl-name="srcRoleId"
      version-id-ref="vim.version.version1"
      privilege="srcRoleId"
      >
      <description-html>
         <![CDATA[The ID of the source role providing the permissions
                       which are changing.]]>
      </description-html>
      </parameter>
      <parameter name="dstRoleId" type-id-ref="INT"
      vmodl-name="dstRoleId"
      version-id-ref="vim.version.version1"
      privilege="dstRoleId"
      >
      <description-html>
         <![CDATA[The ID of the destination role to which the
                       permissions are reassigned.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[if either the source or destination role does not exist.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.AuthMinimumAdminPermission">
      <fault-description-html>
         <![CDATA[if srcRoleId is the Administrator role, meaning
                           that applying the change would leave the system with
                           no Administrator permission on the root node.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="RetrieveRolePermissions"
      vmodl-name="retrieveRolePermissions"
      is-array="true"
      is-optional="true"
      privilege="System.View"
      type-id-ref="vim.AuthorizationManager.Permission"
      >
      <description-html>
         <![CDATA[Finds all the permissions that use a particular role.
  The result is restricted to managed entities that are visible to the
  user making the call.]]>
      </description-html>
      <parameter name="roleId" type-id-ref="INT"
      vmodl-name="roleId"
      version-id-ref="vim.version.version1"
      privilege="roleId"
      >
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[if the role does not exist.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="RetrieveEntityPermissions"
      vmodl-name="retrieveEntityPermissions"
      is-array="true"
      is-optional="true"
      type-id-ref="vim.AuthorizationManager.Permission"
      >
      <description-html>
         <![CDATA[Gets permissions defined on or effective on a managed entity.
  This returns the actual permission objects defined in the system for all
  users and groups relative to the managed entity. The inherited
  flag specifies whether or not to include permissions defined by the
  parents of this entity that propagate to this entity.
  <p>
  For complex entities, the entity reported as defining the permission may
  be either the parent or a child entity belonging to the complex entity.
  <p>
  The purpose of this method is to discover permissions
  for administration purposes, not to determine the current
  permissions. The current user's permissions are found on the <a href="vim.ManagedEntity.html#effectiveRole">EffectiveRole</a> property of the user's ManagedEntity.]]>
      </description-html>
      <parameter name="entity" type-id-ref="vim.ManagedEntity"
      vmodl-name="entity"
      version-id-ref="vim.version.version1"
      privilege="entity"
      >
      </parameter>
      <parameter name="inherited" type-id-ref="BOOLEAN"
      vmodl-name="inherited"
      version-id-ref="vim.version.version1"
      privilege="inherited"
      >
      <description-html>
         <![CDATA[Whether or not to include propagating permissions
                   defined by parent entities.]]>
      </description-html>
      </parameter>
   </method>
   <method name="RetrieveAllPermissions"
      vmodl-name="retrieveAllPermissions"
      is-array="true"
      is-optional="true"
      privilege="System.View"
      type-id-ref="vim.AuthorizationManager.Permission"
      >
      <description-html>
         <![CDATA[Finds all permissions defined in the system.
  The result is restricted to the managed entities visible to the
  user making the call.]]>
      </description-html>
   </method>
   <method name="SetEntityPermissions"
      vmodl-name="setEntityPermissions"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Defines one or more permission rules on an entity or updates rules if already
  present for the given user or group on the entity.
  <p>
  If a permission is specified multiple times for the same user or group, then the
  last permission specified takes effect.
  <p>
  The operation is applied transactionally per permission and is applied to the
  entity following the order of the elements in the permission array argument. This
  means that if a failure occurs, the method terminates at that point in the
  permission array with an exception, leaving at least one and as many as all
  permissions unapplied.
  <p>
  This will fail with an InvalidArgument fault if called on: the direct child
  folders of a datacenter managed object, the root resource pool of a
  ComputeResource or ClusterComputeResource, or a HostSystem that is part of
  a ComputeResource (Stand-alone Host). These objects always have the same
  permissions as their parent.
  <p>
  This will fail with an InvalidArgument fault if called on a fault-tolerance (FT)
  secondary VirtualMachine. Such a VirtualMachine always has the same permissions
  as its FT primary VirtualMachine.]]>
      </description-html>
      <parameter name="entity" type-id-ref="vim.ManagedEntity"
      vmodl-name="entity"
      version-id-ref="vim.version.version1"
      privilege="entity"
      >
      <description-html>
         <![CDATA[The entity on which to set permissions.]]>
      </description-html>
      </parameter>
      <parameter name="permission" type-id-ref="vim.AuthorizationManager.Permission"
      vmodl-name="permission"
      version-id-ref="vim.version.version1"
      is-array="true"
      is-optional="true"
      privilege="permission"
      >
      <description-html>
         <![CDATA[An array of specifications for permissions on the entity.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.UserNotFound">
      <fault-description-html>
         <![CDATA[if a given user or group does not exist.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[if a permission's roleId is not valid.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.AuthMinimumAdminPermission">
      <fault-description-html>
         <![CDATA[if this change would leave the system with
                           no Administrator permission on the root node, or it
                           would grant further permission to a user or group who
                           already has Administrator permission on the root node.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="ResetEntityPermissions"
      vmodl-name="resetEntityPermissions"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Update the entire set of permissions defined on an entity.  Any
  existing permissions on the entity are removed and replaced with the
  provided set.
  <p>
  If a permission is specified multiple times for the same user or group, the
  last permission specified takes effect.
  <p>
  The operation is transactional per permission and could partially fail.  The
  updates are performed in the order of the permission array argument.  The first
  failed update will abort the operation and throw the appropriate exception. When
  the operation aborts, any permissions that have not yet been removed are left in
  their original state.
  <p>
  After updates are applied, original permissions that are not in the new set
  are removed.  A failure to remove a permission, such as a violation of
  the minimum administrator permission rule, will abort the operation and could
  leave remaining original permissions still effective on the entity.
  <p>
  This will fail with an InvalidArgument fault if called on: the direct child
  folders of a datacenter managed object, the root resource pool of a
  ComputeResource or ClusterComputeResource, or a HostSystem that is part of
  a ComputeResource (Stand-alone Host). These objects always have the same
  permissions as their parent.
  <p>
  This will fail with an InvalidArgument fault if called on a fault-tolerance (FT)
  secondary VirtualMachine. Such a VirtualMachine always has the same permissions
  as its FT primary VirtualMachine.]]>
      </description-html>
      <parameter name="entity" type-id-ref="vim.ManagedEntity"
      vmodl-name="entity"
      version-id-ref="vim.version.version1"
      privilege="entity"
      >
      <description-html>
         <![CDATA[The entity on which permissions are updated.]]>
      </description-html>
      </parameter>
      <parameter name="permission" type-id-ref="vim.AuthorizationManager.Permission"
      vmodl-name="permission"
      version-id-ref="vim.version.version1"
      is-array="true"
      is-optional="true"
      privilege="permission"
      >
      <description-html>
         <![CDATA[The list of Permission objects that define
                           the new rules for access to the entity and
                           potentially entities below it.  If the list
                           is empty, all permissions on the entity are removed.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.UserNotFound">
      <fault-description-html>
         <![CDATA[if one of the given users or groups does not exist.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[if a permission for this entity and user or group
                      does not exist.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.AuthMinimumAdminPermission">
      <fault-description-html>
         <![CDATA[if this change would leave the system with
                           no Administrator permission on the root node, or it
                           would grant further permission to a user or group who
                           already has Administrator permission on the root node.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="RemoveEntityPermission"
      vmodl-name="removeEntityPermission"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Removes a permission rule from an entity.
  <p>
  This will fail with an InvalidArgument fault if called on:  the direct child
  folders of a datacenter managed object, the root resource pool of a
  ComputeResource or ClusterComputeResource, or a HostSystem that is part of
  a ComputeResource (Stand-alone Host). These objects always have the same
  permissions as their parent.
  <p>
  This will fail with an InvalidArgument fault if called on a fault-tolerance (FT)
  secondary VirtualMachine. Such a VirtualMachine always has the same permissions
  as its FT primary VirtualMachine.]]>
      </description-html>
      <parameter name="entity" type-id-ref="vim.ManagedEntity"
      vmodl-name="entity"
      version-id-ref="vim.version.version1"
      privilege="entity"
      >
      <description-html>
         <![CDATA[Entity on which a permission is removed.]]>
      </description-html>
      </parameter>
      <parameter name="user" type-id-ref="java.lang.String"
      vmodl-name="user"
      version-id-ref="vim.version.version1"
      privilege="user"
      >
      <description-html>
         <![CDATA[User or group for which the permission is defined.]]>
      </description-html>
      </parameter>
      <parameter name="isGroup" type-id-ref="BOOLEAN"
      vmodl-name="isGroup"
      version-id-ref="vim.version.version1"
      privilege="isGroup"
      >
      <description-html>
         <![CDATA[True, if user refers to a group name; false, for a user name.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[if a permission for this entity and user or group
                      does not exist.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.AuthMinimumAdminPermission">
      <fault-description-html>
         <![CDATA[if this change would leave the system with
                           no Administrator permission on the root node.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="HasPrivilegeOnEntity"
      vmodl-name="hasPrivilegeOnEntity"
      version-id-ref="vim.version.version7"
      is-array="true"
      is-optional="true"
      privilege="System.View"
      type-id-ref="BOOLEAN"
      >
      <description-html>
         <![CDATA[Check whether a session holds a set of privileges on a managed entity.
  <p>
  If the session does not exist, false is returned for all privileges.
  <p>
  This API is implemented only by vCenter Server.
  <p>]]>
      </description-html>
      <parameter name="entity" type-id-ref="vim.ManagedEntity"
      vmodl-name="entity"
      version-id-ref="vim.version.version7"
      privilege="entity"
      >
      <description-html>
         <![CDATA[The entity on which the privileges are checked.]]>
      </description-html>
      </parameter>
      <parameter name="sessionId" type-id-ref="java.lang.String"
      vmodl-name="sessionId"
      version-id-ref="vim.version.version7"
      privilege="sessionId"
      >
      <description-html>
         <![CDATA[The session ID to check privileges for. A sesssion ID can be
                   obtained from <a href="vim.UserSession.html#key">key</a>.]]>
      </description-html>
      </parameter>
      <parameter name="privId" type-id-ref="java.lang.String"
      vmodl-name="privId"
      version-id-ref="vim.version.version7"
      is-array="true"
      is-optional="true"
      privilege="privId"
      >
      <description-html>
         <![CDATA[The array of privilege IDs to check.]]>
      </description-html>
      </parameter>
      <return-value-description-html>
         <![CDATA[a boolean value for each privilege indicating whether the session holds the
          privilege.]]>
      </return-value-description-html>
   </method>
   <method name="HasPrivilegeOnEntities"
      vmodl-name="hasPrivilegeOnEntities"
      version-id-ref="vim.version.version9"
      is-array="true"
      is-optional="true"
      privilege="System.View"
      type-id-ref="vim.AuthorizationManager.EntityPrivilege"
      >
      <description-html>
         <![CDATA[Check whether a session holds a set of privileges on a set of managed entities.
  <p>
  If the session does not exist, false is returned for all privileges of
  all the entities.
  <p>
  This API is implemented only by vCenter Server.
  <p>]]>
      </description-html>
      <parameter name="entity" type-id-ref="vim.ManagedEntity"
      vmodl-name="entity"
      version-id-ref="vim.version.version9"
      is-array="true"
      privilege="entity"
      >
      <description-html>
         <![CDATA[The set of entities on which the privileges are checked.]]>
      </description-html>
      </parameter>
      <parameter name="sessionId" type-id-ref="java.lang.String"
      vmodl-name="sessionId"
      version-id-ref="vim.version.version9"
      privilege="sessionId"
      >
      <description-html>
         <![CDATA[The session ID to check privileges for. A sesssion ID can be
                   obtained from <a href="vim.UserSession.html#key">key</a>.]]>
      </description-html>
      </parameter>
      <parameter name="privId" type-id-ref="java.lang.String"
      vmodl-name="privId"
      version-id-ref="vim.version.version9"
      is-array="true"
      is-optional="true"
      privilege="privId"
      >
      <description-html>
         <![CDATA[The array of privilege IDs to check.]]>
      </description-html>
      </parameter>
      <return-value-description-html>
         <![CDATA[The privilege check result.]]>
      </return-value-description-html>
   </method>
   <method name="HasUserPrivilegeOnEntities"
      vmodl-name="hasUserPrivilegeOnEntities"
      version-id-ref="vim.version.version11"
      is-array="true"
      is-optional="true"
      type-id-ref="vim.AuthorizationManager.EntityPrivilege"
      >
      <description-html>
         <![CDATA[Checks if a user holds a certain set of privileges on a number of
 managed entities. Privileges may be granted to users through their
 respective group membership. If a privilege is granted to a group it is
 implicitly granted to its members.
 <p>
 This API is implemented only by vCenter Server.
 <p>]]>
      </description-html>
      <parameter name="entities" type-id-ref="vmodl.ManagedObject"
      vmodl-name="entities"
      version-id-ref="vim.version.version11"
      is-array="true"
      privilege="entities"
      >
      <description-html>
         <![CDATA[are the managed objects to check privileges on. If they
                 refer to managed objects that are not managed entities
                 the privilege check will be done on the root folder.]]>
      </description-html>
      </parameter>
      <parameter name="userName" type-id-ref="java.lang.String"
      vmodl-name="userName"
      version-id-ref="vim.version.version11"
      privilege="userName"
      >
      <description-html>
         <![CDATA[is the name of the user to check privileges for. Both
                 UPN and PreWindows2000LogonName user name formats
                 are supported.]]>
      </description-html>
      </parameter>
      <parameter name="privId" type-id-ref="java.lang.String"
      vmodl-name="privId"
      version-id-ref="vim.version.version11"
      is-array="true"
      is-optional="true"
      privilege="privId"
      >
      <description-html>
         <![CDATA[is the set of privileges to check for]]>
      </description-html>
      </parameter>
      <return-value-description-html>
         <![CDATA[the privilege check result]]>
      </return-value-description-html>
   </method>
   <method name="FetchUserPrivilegeOnEntities"
      vmodl-name="fetchUserPrivilegeOnEntities"
      version-id-ref="vim.version.version11"
      is-array="true"
      is-optional="true"
      type-id-ref="vim.AuthorizationManager.UserPrivilegeResult"
      >
      <description-html>
         <![CDATA[Get the list of effective privileges for a user,
 either granted explicitly, or through group membership.
 <p>
 This API is implemented only by vCenter Server.
 <p>]]>
      </description-html>
      <parameter name="entities" type-id-ref="vim.ManagedEntity"
      vmodl-name="entities"
      version-id-ref="vim.version.version11"
      is-array="true"
      privilege="entities"
      >
      <description-html>
         <![CDATA[are the entities to retrieve privileges on]]>
      </description-html>
      </parameter>
      <parameter name="userName" type-id-ref="java.lang.String"
      vmodl-name="userName"
      version-id-ref="vim.version.version11"
      privilege="userName"
      >
      <description-html>
         <![CDATA[is the user to retrieve privileges for]]>
      </description-html>
      </parameter>
      <return-value-description-html>
         <![CDATA[the privilege check result for each entity]]>
      </return-value-description-html>
   </method>
   </managed-object>
   <managed-object name="HostPowerSystem"
      type-id="vim.host.PowerSystem"
      vmodl-name="vim.host.PowerSystem"
      version-id-ref="vim.version.version6"
      >
      <description-html>
         <![CDATA[Managed object responsible for getting and setting host
  power management policies.]]>
      </description-html>
            <property name="capability" type-id-ref="vim.host.PowerSystem.Capability"
      vmodl-name="capability"
      privilege="Host.Config.Power"
      >
      <description-html>
         <![CDATA[Power system capabilities object.]]>
      </description-html>
      </property>

            <property name="info" type-id-ref="vim.host.PowerSystem.Info"
      vmodl-name="info"
      privilege="Host.Config.Power"
      >
      <description-html>
         <![CDATA[Power system state info object.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.host.PowerSystem.PowerPolicy</nested-type-id-ref>
      <nested-type-id-ref>vim.host.PowerSystem.Capability</nested-type-id-ref>
      <nested-type-id-ref>vim.host.PowerSystem.Info</nested-type-id-ref>
   <method name="ConfigurePowerPolicy"
      vmodl-name="configurePolicy"
      privilege="Host.Config.Power"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Configure host power policy.]]>
      </description-html>
      <parameter name="key" type-id-ref="INT"
      vmodl-name="key"
      version-id-ref="vim.version.version6"
      privilege="key"
      >
      <description-html>
         <![CDATA[A key from one of the policies in
  <a href="vim.host.PowerSystem.Capability.html#availablePolicy">availablePolicy</a>.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[for any other failure.]]>
      </fault-description-html>
      </fault>
   </method>
   </managed-object>
   <managed-object name="HostCertificateManager"
      type-id="vim.host.CertificateManager"
      vmodl-name="vim.host.CertificateManager"
      version-id-ref="vim.version.version10"
      >
      <description-html>
         <![CDATA[CertificateManager provides an interface for managing the SSL
  certificates used by the server.]]>
      </description-html>
            <property name="certificateInfo" type-id-ref="vim.host.CertificateManager.CertificateInfo"
      vmodl-name="certificateInfo"
      privilege="Certificate.Manage"
      >
      <description-html>
         <![CDATA[the CertificateInfo of the Host Certificate.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.host.CertificateManager.CertificateInfo</nested-type-id-ref>
   <method name="GenerateCertificateSigningRequest"
      vmodl-name="generateCertificateSigningRequest"
      privilege="Certificate.Manage"
      type-id-ref="java.lang.String"
      >
      <description-html>
         <![CDATA[Requests the server to generate a certificate-signing
  request (CSR) for itself. The CSR is then typically
  provided to a Certificate Authority to sign and issue
  the SSL certificate for the server. Use <a href="vim.host.CertificateManager.html#installServerCertificate">InstallServerCertificate</a>
  to install this certificate.]]>
      </description-html>
      <parameter name="useIpAddressAsCommonName" type-id-ref="BOOLEAN"
      vmodl-name="useIpAddressAsCommonName"
      version-id-ref="vim.version.version10"
      privilege="useIpAddressAsCommonName"
      >
      <description-html>
         <![CDATA[if true, use host's
           management IP address as CN in the CSR;
           otherwise use host's FQDN.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[if there's a problem generating the CSR.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[CSR in PEM format]]>
      </return-value-description-html>
   </method>
   <method name="GenerateCertificateSigningRequestByDn"
      vmodl-name="generateCertificateSigningRequestByDn"
      privilege="Certificate.Manage"
      type-id-ref="java.lang.String"
      >
      <description-html>
         <![CDATA[Requests the server to generate a certificate-signing
  request (CSR) for itself. Alternative version similar to <a href="vim.host.CertificateManager.html#generateCertificateSigningRequest">GenerateCertificateSigningRequest</a>
  but takes a Distinguished Name (DN) as a parameter.]]>
      </description-html>
      <parameter name="distinguishedName" type-id-ref="java.lang.String"
      vmodl-name="distinguishedName"
      version-id-ref="vim.version.version10"
      privilege="distinguishedName"
      >
      <description-html>
         <![CDATA[DN to be used as subject in CSR.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[if there's a problem generating the CSR.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[CSR in PEM format]]>
      </return-value-description-html>
   </method>
   <method name="InstallServerCertificate"
      vmodl-name="installServerCertificate"
      privilege="Certificate.Manage"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Installs a given SSL certificate on the server.]]>
      </description-html>
      <parameter name="cert" type-id-ref="java.lang.String"
      vmodl-name="cert"
      version-id-ref="vim.version.version10"
      privilege="cert"
      >
      <description-html>
         <![CDATA[SSL certificate in PEM format]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[if there's a problem generating the CSR.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="ReplaceCACertificatesAndCRLs"
      vmodl-name="replaceCACertificatesAndCRLs"
      privilege="Certificate.Manage"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Replaces the trusted Certificate Authority (CA)
  certificates and Certification Revocation List (CRL)
  used by the server with the provided values.
  These determine whether the server can verify
  the identity of an external entity.]]>
      </description-html>
      <parameter name="caCert" type-id-ref="java.lang.String"
      vmodl-name="caCert"
      version-id-ref="vim.version.version10"
      is-array="true"
      privilege="caCert"
      >
      <description-html>
         <![CDATA[List of SSL certificates, in PEM format,
          of all CAs that should be trusted]]>
      </description-html>
      </parameter>
      <parameter name="caCrl" type-id-ref="java.lang.String"
      vmodl-name="caCrl"
      version-id-ref="vim.version.version10"
      is-array="true"
      is-optional="true"
      privilege="caCrl"
      >
      <description-html>
         <![CDATA[List of SSL CRLs, in PEM format,
          issued by trusted CAs from the above list]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[if there's a problem if there's a problem
          with the input certificates or CRLs.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="ListCACertificates"
      vmodl-name="listCACertificates"
      is-array="true"
      is-optional="true"
      privilege="Certificate.Manage"
      type-id-ref="java.lang.String"
      >
      <description-html>
         <![CDATA[Fetches the SSL certificates of Certificate Authorities
  that are trusted.]]>
      </description-html>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[if there's a problem with the certificate store.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[SSL certificates of trusted CAs in PEM format]]>
      </return-value-description-html>
   </method>
   <method name="ListCACertificateRevocationLists"
      vmodl-name="listCACertificateRevocationLists"
      is-array="true"
      is-optional="true"
      privilege="Certificate.Manage"
      type-id-ref="java.lang.String"
      >
      <description-html>
         <![CDATA[Fetches the SSL CRLs of Certificate Authorities that are trusted.]]>
      </description-html>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[if there's a problem with the certificate store.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[SSL CRLs of trusted CAs in PEM format]]>
      </return-value-description-html>
   </method>
   </managed-object>
   <managed-object name="CryptoManagerHostKMS"
      type-id="vim.encryption.CryptoManagerHostKMS"
      vmodl-name="vim.encryption.CryptoManagerHostKMS"
      version-id-ref="vim.version.version12"
      base-type-id="vim.encryption.CryptoManagerHost"
      >
   </managed-object>
   <managed-object name="VmwareDistributedVirtualSwitch"
      type-id="vim.dvs.VmwareDistributedVirtualSwitch"
      vmodl-name="vim.dvs.VmwareDistributedVirtualSwitch"
      version-id-ref="vim.version.version5"
      base-type-id="vim.DistributedVirtualSwitch"
      >
      <description-html>
         <![CDATA[The <a href="vim.dvs.VmwareDistributedVirtualSwitch.html">VmwareDistributedVirtualSwitch</a> managed object
 is the VMware implementation of a distributed virtual switch.
 The functionality listed here is for a VMware distributed virtual switch only.
 <p>
 When you use a VMware distributed virtual switch, you can perform
 backup and restore operations on the VMware switch. You can also
 perform rollback operations on the switch and on portgroups
 associated with the VMware switch. See the description for the
 following methods:
 <ul>
 <li><a href="vim.dvs.DistributedVirtualSwitchManager.html#exportEntity">DVSManagerExportEntity_Task</a></li>
 <li><a href="vim.dvs.DistributedVirtualSwitchManager.html#importEntity">DVSManagerImportEntity_Task</a></li>
 <li><a href="vim.DistributedVirtualSwitch.html#rollback">DVSRollback_Task</a></li>
 <li><a href="vim.dvs.DistributedVirtualPortgroup.html#rollback">DVPortgroupRollback_Task</a></li>
 </ul>]]>
      </description-html>
      <nested-type-id-ref>vim.dvs.VmwareDistributedVirtualSwitch.FeatureCapability</nested-type-id-ref>
      <nested-type-id-ref>vim.dvs.VmwareDistributedVirtualSwitch.IpfixFeatureCapability</nested-type-id-ref>
      <nested-type-id-ref>vim.dvs.VmwareDistributedVirtualSwitch.LacpFeatureCapability</nested-type-id-ref>
      <nested-type-id-ref>vim.dvs.VmwareDistributedVirtualSwitch.VmwareHealthCheckFeatureCapability</nested-type-id-ref>
      <nested-type-id-ref>vim.dvs.VmwareDistributedVirtualSwitch.VspanFeatureCapability</nested-type-id-ref>
      <nested-type-id-ref>vim.dvs.VmwareDistributedVirtualSwitch.VspanPorts</nested-type-id-ref>
      <nested-type-id-ref>vim.dvs.VmwareDistributedVirtualSwitch.VspanSession</nested-type-id-ref>
      <nested-type-id-ref>vim.dvs.VmwareDistributedVirtualSwitch.IpfixConfig</nested-type-id-ref>
      <nested-type-id-ref>vim.dvs.VmwareDistributedVirtualSwitch.ConfigInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.dvs.VmwareDistributedVirtualSwitch.ConfigSpec</nested-type-id-ref>
      <nested-type-id-ref>vim.dvs.VmwareDistributedVirtualSwitch.UplinkPortOrderPolicy</nested-type-id-ref>
      <nested-type-id-ref>vim.dvs.VmwareDistributedVirtualSwitch.FailureCriteria</nested-type-id-ref>
      <nested-type-id-ref>vim.dvs.VmwareDistributedVirtualSwitch.UplinkPortTeamingPolicy</nested-type-id-ref>
      <nested-type-id-ref>vim.dvs.VmwareDistributedVirtualSwitch.VlanSpec</nested-type-id-ref>
      <nested-type-id-ref>vim.dvs.VmwareDistributedVirtualSwitch.PvlanSpec</nested-type-id-ref>
      <nested-type-id-ref>vim.dvs.VmwareDistributedVirtualSwitch.VlanIdSpec</nested-type-id-ref>
      <nested-type-id-ref>vim.dvs.VmwareDistributedVirtualSwitch.TrunkVlanSpec</nested-type-id-ref>
      <nested-type-id-ref>vim.dvs.VmwareDistributedVirtualSwitch.SecurityPolicy</nested-type-id-ref>
      <nested-type-id-ref>vim.dvs.VmwareDistributedVirtualSwitch.MacLimitPolicyType</nested-type-id-ref>
      <nested-type-id-ref>vim.dvs.VmwareDistributedVirtualSwitch.MacLearningPolicy</nested-type-id-ref>
      <nested-type-id-ref>vim.dvs.VmwareDistributedVirtualSwitch.MacManagementPolicy</nested-type-id-ref>
      <nested-type-id-ref>vim.dvs.VmwareDistributedVirtualSwitch.VmwarePortConfigPolicy</nested-type-id-ref>
      <nested-type-id-ref>vim.dvs.VmwareDistributedVirtualSwitch.VMwarePortgroupPolicy</nested-type-id-ref>
      <nested-type-id-ref>vim.dvs.VmwareDistributedVirtualSwitch.PvlanPortType</nested-type-id-ref>
      <nested-type-id-ref>vim.dvs.VmwareDistributedVirtualSwitch.PvlanConfigSpec</nested-type-id-ref>
      <nested-type-id-ref>vim.dvs.VmwareDistributedVirtualSwitch.PvlanMapEntry</nested-type-id-ref>
      <nested-type-id-ref>vim.dvs.VmwareDistributedVirtualSwitch.VspanConfigSpec</nested-type-id-ref>
      <nested-type-id-ref>vim.dvs.VmwareDistributedVirtualSwitch.VspanSessionEncapType</nested-type-id-ref>
      <nested-type-id-ref>vim.dvs.VmwareDistributedVirtualSwitch.VspanSessionType</nested-type-id-ref>
      <nested-type-id-ref>vim.dvs.VmwareDistributedVirtualSwitch.VmwareHealthCheckConfig</nested-type-id-ref>
      <nested-type-id-ref>vim.dvs.VmwareDistributedVirtualSwitch.VlanMtuHealthCheckConfig</nested-type-id-ref>
      <nested-type-id-ref>vim.dvs.VmwareDistributedVirtualSwitch.TeamingHealthCheckConfig</nested-type-id-ref>
      <nested-type-id-ref>vim.dvs.VmwareDistributedVirtualSwitch.VlanHealthCheckResult</nested-type-id-ref>
      <nested-type-id-ref>vim.dvs.VmwareDistributedVirtualSwitch.MtuHealthCheckResult</nested-type-id-ref>
      <nested-type-id-ref>vim.dvs.VmwareDistributedVirtualSwitch.TeamingMatchStatus</nested-type-id-ref>
      <nested-type-id-ref>vim.dvs.VmwareDistributedVirtualSwitch.TeamingHealthCheckResult</nested-type-id-ref>
      <nested-type-id-ref>vim.dvs.VmwareDistributedVirtualSwitch.UplinkLacpPolicy</nested-type-id-ref>
      <nested-type-id-ref>vim.dvs.VmwareDistributedVirtualSwitch.LacpGroupConfig</nested-type-id-ref>
      <nested-type-id-ref>vim.dvs.VmwareDistributedVirtualSwitch.LagVlanConfig</nested-type-id-ref>
      <nested-type-id-ref>vim.dvs.VmwareDistributedVirtualSwitch.LagIpfixConfig</nested-type-id-ref>
      <nested-type-id-ref>vim.dvs.VmwareDistributedVirtualSwitch.UplinkLacpMode</nested-type-id-ref>
      <nested-type-id-ref>vim.dvs.VmwareDistributedVirtualSwitch.LacpGroupSpec</nested-type-id-ref>
      <nested-type-id-ref>vim.dvs.VmwareDistributedVirtualSwitch.LacpLoadBalanceAlgorithm</nested-type-id-ref>
      <nested-type-id-ref>vim.dvs.VmwareDistributedVirtualSwitch.LacpApiVersion</nested-type-id-ref>
      <nested-type-id-ref>vim.dvs.VmwareDistributedVirtualSwitch.MulticastFilteringMode</nested-type-id-ref>
   <method name="UpdateDVSLacpGroupConfig"
      vmodl-name="updateLacpGroupConfig"
      version-id-ref="vim.version.version9"
      privilege="DVSwitch.Modify"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Update Link Aggregation Control Protocol groups.
  It can be called if the value of
  <a href="vim.dvs.VmwareDistributedVirtualSwitch.ConfigInfo.html#lacpApiVersion">lacpApiVersion</a> is
  LacpApiVersion#multipleLag
  else an exception ConflictingConfiguration will be thrown.]]>
      </description-html>
      <parameter name="lacpGroupSpec" type-id-ref="vim.dvs.VmwareDistributedVirtualSwitch.LacpGroupSpec"
      vmodl-name="lacpGroupSpec"
      version-id-ref="vim.version.version9"
      is-array="true"
      privilege="lacpGroupSpec"
      >
      <description-html>
         <![CDATA[The Link Aggregation Control Protocol groups to be configured.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.DvsFault">
      <fault-description-html>
         <![CDATA[if operation fails on any host or if there are other update failures.]]>
      </fault-description-html>
      </fault>
   </method>
   </managed-object>
   <managed-object name="HistoryCollector"
      type-id="vim.HistoryCollector"
      vmodl-name="vim.HistoryCollector"
      version-id-ref="vim.version.version1"
      >
      <description-html>
         <![CDATA[This managed object type enables clients to retrieve historical data and
 receive updates when the server appends new data to a collection.
 This is a base type for item-specific types related to event or task history.
 Historical data is inherently append-only,
 although a server administrator may periodically purge old data.
 <p>
 Typically, a client creates a history collector by using a filter on a
 potentially large set, such as all the events in a datacenter.
 The collector provides access to the items that match the filter,
 which could also be a relatively large set.
 <p>
 The items in a collector are always ordered by date and time of creation.
 Item properties normally include this time stamp.
 <p>
 The client may set the "viewable latest page" for the collector,
 which is the contiguous subset of the items that are of
 immediate interest. These items are available as the "latestPage"
 property, which the client may retrieve and monitor by using the
 <a href="vmodl.query.PropertyCollector.html">PropertyCollector</a> managed object.
 <p>
 Clients can change the page size of the "latestPage" by using
 <a href="vim.HistoryCollector.html#setLatestPageSize">SetCollectorPageSize</a>.
 <p>
 The client may use the following features of the history collector.
 <ul>
 <li><a href="vim.HistoryCollector.html#rewind">RewindCollector</a> - Moves the "scrollable view" to
 the oldest item (the default setting).
 <li>readNext - Retrieves all the items in the collector, from the oldest
 item to the newest item. Retrieves either
 <a href="vim.TaskHistoryCollector.html#readNext">ReadNextTasks</a> or
 <a href="vim.event.EventHistoryCollector.html#readNext">ReadNextEvents</a> depending on the operation.
 <li>readPrev - Retrieves all items (excluding the "viewable latest page") in
 the collector, from the newest item to the oldest item. Retrieves either
 <a href="vim.TaskHistoryCollector.html#readPrev">ReadPreviousTasks</a> or
 <a href="vim.event.EventHistoryCollector.html#readPrev">ReadPreviousEvents</a> depending on the operation.
 <li><a href="vim.HistoryCollector.html#reset">ResetCollector</a> - Moves the "scrollable view" to
 the item immediately preceding the "viewable latest page".
 </ul>]]>
      </description-html>
            <property name="filter" type-id-ref="vmodl.Any"
      vmodl-name="filter"
      >
      <description-html>
         <![CDATA[The filter used to create this collector.
 <p>
 The type of the returned filter is determined by the managed object
 for which the collector is created.]]>
      </description-html>
      </property>

   <method name="SetCollectorPageSize"
      vmodl-name="setLatestPageSize"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Sets the "viewable latest page" size to contain at most the
 number of items specified by the maxCount parameter).
 <p>]]>
      </description-html>
      <parameter name="maxCount" type-id-ref="INT"
      vmodl-name="maxCount"
      version-id-ref="vim.version.version1"
      privilege="maxCount"
      >
      <description-html>
         <![CDATA[The maximum number of items in the page.]]>
      </description-html>
      </parameter>
   </method>
   <method name="RewindCollector"
      vmodl-name="rewind"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Moves the "scrollable view" to the oldest item. If you use
 <a href="vim.TaskHistoryCollector.html#readNext">ReadNextTasks</a> or
 <a href="vim.event.EventHistoryCollector.html#readNext">ReadNextEvents</a>,
 all items are retrieved from the oldest item to the newest item. This
 is the default setting when the collector is created.]]>
      </description-html>
   </method>
   <method name="ResetCollector"
      vmodl-name="reset"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Moves the "scrollable view" to the item immediately preceding the
 "viewable latest page". If you use "readPrev",
 <a href="vim.TaskHistoryCollector.html#readPrev">ReadPreviousTasks</a> or
 <a href="vim.event.EventHistoryCollector.html#readPrev">ReadPreviousEvents</a>,
 all items
 are retrieved from the newest item to the oldest item.]]>
      </description-html>
   </method>
   <method name="DestroyCollector"
      vmodl-name="remove"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Destroys this collector.]]>
      </description-html>
   </method>
   </managed-object>
   <managed-object name="AlarmManager"
      type-id="vim.alarm.AlarmManager"
      vmodl-name="vim.alarm.AlarmManager"
      version-id-ref="vim.version.version1"
      >
      <description-html>
         <![CDATA[The alarm manager is a singleton object for managing alarms
  within a service instance.]]>
      </description-html>
            <property name="defaultExpression" type-id-ref="vim.alarm.AlarmExpression"
      vmodl-name="defaultExpression"
      is-array="true"
      is-optional="true"
      privilege="System.View"
      >
      <description-html>
         <![CDATA[The default setting for each alarm expression, used to populate the
  initial client wizard screen.]]>
      </description-html>
      </property>

            <property name="description" type-id-ref="vim.alarm.AlarmDescription"
      vmodl-name="description"
      privilege="System.View"
      >
      <description-html>
         <![CDATA[The static descriptive strings used in alarms.]]>
      </description-html>
      </property>

   <method name="CreateAlarm"
      vmodl-name="create"
      type-id-ref="vim.alarm.Alarm"
      >
      <description-html>
         <![CDATA[Creates an alarm.
  <p>
  In addition to the Alarm.Create privilege, may also require the
  Global.ScriptAction if a RunScriptAction action is specified in
  the AlarmSpec.]]>
      </description-html>
      <parameter name="entity" type-id-ref="vim.ManagedEntity"
      vmodl-name="entity"
      version-id-ref="vim.version.version1"
      privilege="entity"
      >
      <description-html>
         <![CDATA[The entity with which the alarm is associated.]]>
      </description-html>
      </parameter>
      <parameter name="spec" type-id-ref="vim.alarm.AlarmSpec"
      vmodl-name="spec"
      version-id-ref="vim.version.version1"
      privilege="spec"
      >
      <description-html>
         <![CDATA[The specification for the new alarm.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.InvalidName">
      <fault-description-html>
         <![CDATA[if the alarm name is empty or too long.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.DuplicateName">
      <fault-description-html>
         <![CDATA[if an alarm with the name already exists.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[A reference to the Alarm object created by the
                  operation.]]>
      </return-value-description-html>
   </method>
   <method name="GetAlarm"
      vmodl-name="getAlarm"
      is-array="true"
      is-optional="true"
      privilege="System.View"
      type-id-ref="vim.alarm.Alarm"
      >
      <description-html>
         <![CDATA[Available alarms defined on the entity.
  These alarms do not include any inherited alarms; that is,
  alarms associated with parent entities.
  <p>]]>
      </description-html>
      <parameter name="entity" type-id-ref="vim.ManagedEntity"
      vmodl-name="entity"
      version-id-ref="vim.version.version1"
      is-optional="true"
      privilege="entity"
      >
      <description-html>
         <![CDATA[The entity. If not set, alarms are returned for
                    all visible entities.]]>
      </description-html>
      </parameter>
      <return-value-description-html>
         <![CDATA[A reference to the Alarm objects returned by the
                    operation.]]>
      </return-value-description-html>
   </method>
   <method name="AreAlarmActionsEnabled"
      vmodl-name="getAlarmActionsEnabled"
      version-id-ref="vim.version.version5"
      type-id-ref="BOOLEAN"
      >
      <description-html>
         <![CDATA[Returns true if alarm actions are enabled on the specified managed entity.]]>
      </description-html>
      <parameter name="entity" type-id-ref="vim.ManagedEntity"
      vmodl-name="entity"
      version-id-ref="vim.version.version5"
      privilege="entity"
      >
      <description-html>
         <![CDATA[The managed entity to look up.]]>
      </description-html>
      </parameter>
   </method>
   <method name="EnableAlarmActions"
      vmodl-name="setAlarmActionsEnabled"
      version-id-ref="vim.version.version5"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Enables or disables alarms on the specified managed entity.]]>
      </description-html>
      <parameter name="entity" type-id-ref="vim.ManagedEntity"
      vmodl-name="entity"
      version-id-ref="vim.version.version5"
      privilege="entity"
      >
      <description-html>
         <![CDATA[The managed entity on which to set a schedule.]]>
      </description-html>
      </parameter>
      <parameter name="enabled" type-id-ref="BOOLEAN"
      vmodl-name="enabled"
      version-id-ref="vim.version.version5"
      privilege="enabled"
      >
      <description-html>
         <![CDATA[true, if alarms are enabled during the schedule.]]>
      </description-html>
      </parameter>
   </method>
   <method name="GetAlarmState"
      vmodl-name="getAlarmState"
      is-array="true"
      is-optional="true"
      type-id-ref="vim.alarm.AlarmState"
      >
      <description-html>
         <![CDATA[The state of instantiated alarms on the entity.
  <p>]]>
      </description-html>
      <parameter name="entity" type-id-ref="vim.ManagedEntity"
      vmodl-name="entity"
      version-id-ref="vim.version.version1"
      privilege="entity"
      >
      <description-html>
         <![CDATA[The entity.]]>
      </description-html>
      </parameter>
      <return-value-description-html>
         <![CDATA[The state of instantiated alarms.]]>
      </return-value-description-html>
   </method>
   <method name="AcknowledgeAlarm"
      vmodl-name="acknowledgeAlarm"
      version-id-ref="vim.version.version5"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Acknowledge the alarm on a managed entity.  The actions associated
  with the alarm will not fire until the alarm's next distinct
  occurrence; that is, until after the alarm has entered the green
  or gray states at least once.  Calling this method on an acknowledged
  or non-triggered alarm.]]>
      </description-html>
      <parameter name="alarm" type-id-ref="vim.alarm.Alarm"
      vmodl-name="alarm"
      version-id-ref="vim.version.version5"
      privilege="alarm"
      >
      <description-html>
         <![CDATA[The Alarm to acknowledge.]]>
      </description-html>
      </parameter>
      <parameter name="entity" type-id-ref="vim.ManagedEntity"
      vmodl-name="entity"
      version-id-ref="vim.version.version5"
      privilege="entity"
      >
      <description-html>
         <![CDATA[The ManagedEntity for which to acknowledge the Alarm.]]>
      </description-html>
      </parameter>
   </method>
   <method name="ClearTriggeredAlarms"
      vmodl-name="clearTriggeredAlarms"
      version-id-ref="vim.version.version12"
      privilege="Alarm.SetStatus"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Resets all triggered alarms to green.
 Should be used when mass alarm reset is needed.]]>
      </description-html>
      <parameter name="filter" type-id-ref="vim.alarm.AlarmFilterSpec"
      vmodl-name="filter"
      version-id-ref="vim.version.version12"
      privilege="filter"
      >
      </parameter>
   </method>
   <method name="DisableAlarm"
      vmodl-name="disableAlarm"
      version-id-ref="vim.version.v6_9_1"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Disables alarm for a specific entity.]]>
      </description-html>
      <parameter name="alarm" type-id-ref="vim.alarm.Alarm"
      vmodl-name="alarm"
      version-id-ref="vim.version.v6_9_1"
      privilege="alarm"
      >
      <description-html>
         <![CDATA[The Alarm being disabled.]]>
      </description-html>
      </parameter>
      <parameter name="entity" type-id-ref="vim.ManagedEntity"
      vmodl-name="entity"
      version-id-ref="vim.version.v6_9_1"
      privilege="entity"
      >
      <description-html>
         <![CDATA[The ManagedEntity on which to disable the alarm.]]>
      </description-html>
      </parameter>
   </method>
   <method name="EnableAlarm"
      vmodl-name="enableAlarm"
      version-id-ref="vim.version.v6_9_1"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Enables alarm for a specific entity.]]>
      </description-html>
      <parameter name="alarm" type-id-ref="vim.alarm.Alarm"
      vmodl-name="alarm"
      version-id-ref="vim.version.v6_9_1"
      privilege="alarm"
      >
      <description-html>
         <![CDATA[The Alarm being enabled.]]>
      </description-html>
      </parameter>
      <parameter name="entity" type-id-ref="vim.ManagedEntity"
      vmodl-name="entity"
      version-id-ref="vim.version.v6_9_1"
      privilege="entity"
      >
      <description-html>
         <![CDATA[The ManagedEntity on which to enable the alarm.]]>
      </description-html>
      </parameter>
   </method>
   </managed-object>
   <managed-object name="SiteInfoManager"
      type-id="vim.SiteInfoManager"
      vmodl-name="vim.SiteInfoManager"
      version-id-ref="vim.version.v7_0"
      >
      <description-html>
         <![CDATA[This managed object type is used for managing external site-related
  capabilities which are advertised by vCenter.]]>
      </description-html>
   <method name="GetSiteInfo"
      vmodl-name="GetSiteInfo"
      privilege="System.View"
      type-id-ref="vim.SiteInfo"
      >
      <description-html>
         <![CDATA[Returns the <a href="vim.SiteInfo.html">SiteInfo</a> object associated with this vCenter.]]>
      </description-html>
   </method>
   </managed-object>
   <managed-object name="HostHealthStatusSystem"
      type-id="vim.host.HealthStatusSystem"
      vmodl-name="vim.host.HealthStatusSystem"
      version-id-ref="vim.version.version2"
      >
      <description-html>
         <![CDATA[This managed object manages the health state of the host.<br>See <a href="vim.host.Capability.html#ipmiSupported">ipmiSupported</a><br>]]>
      </description-html>
            <property name="runtime" type-id-ref="vim.host.HealthStatusSystem.Runtime"
      vmodl-name="runtime"
      >
      </property>

      <nested-type-id-ref>vim.host.HealthStatusSystem.Runtime</nested-type-id-ref>
   <method name="RefreshHealthStatusSystem"
      vmodl-name="refresh"
      privilege="System.Read"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Refresh the available runtime hardware health information.]]>
      </description-html>
   </method>
   <method name="ResetSystemHealthInfo"
      vmodl-name="resetSystemHealthInfo"
      privilege="Host.Config.Settings"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Resets the state of the sensors of the IPMI subsystem. On certain types
  of hardware IPMI sensor states latch onto unhealthy states and will stay
  in an unhealth state until the sensor state is reset. This method will
  explicitly reset the sensors state.]]>
      </description-html>
   </method>
   <method name="ClearSystemEventLog"
      vmodl-name="clearSystemEventLog"
      version-id-ref="vim.version.version11"
      privilege="Host.Config.Settings"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Clear the the IPMI System Event Log.]]>
      </description-html>
   </method>
   <method name="FetchSystemEventLog"
      vmodl-name="FetchSystemEventLog"
      version-id-ref="vim.version.version11"
      is-array="true"
      is-optional="true"
      privilege="Host.Config.Settings"
      type-id-ref="vim.host.SystemEventInfo"
      >
      <description-html>
         <![CDATA[Hardware System Event Log (SEL) information]]>
      </description-html>
   </method>
   </managed-object>
   <managed-object name="TaskHistoryCollector"
      type-id="vim.TaskHistoryCollector"
      vmodl-name="vim.TaskHistoryCollector"
      version-id-ref="vim.version.version1"
      base-type-id="vim.HistoryCollector"
      >
      <description-html>
         <![CDATA[TaskHistoryCollector provides a mechanism for
 retrieving historical data and updates when the server appends new
 tasks.]]>
      </description-html>
            <property name="latestPage" type-id-ref="vim.TaskInfo"
      vmodl-name="latestPage"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The items in the 'viewable latest page'. As new tasks that match the
 collector's <a href="vim.TaskFilterSpec.html">TaskFilterSpec</a> are created, they are added to this
 page, and the oldest tasks are removed from the collector to keep the
 size of the page to that allowed by
 <a href="vim.HistoryCollector.html#setLatestPageSize">SetCollectorPageSize</a>.
 <p>
 The "oldest task" is the one with the oldest creation time. The
 tasks in the returned page are unordered.]]>
      </description-html>
      </property>

   <method name="ReadNextTasks"
      vmodl-name="readNext"
      is-array="true"
      is-optional="true"
      type-id-ref="vim.TaskInfo"
      >
      <description-html>
         <![CDATA[Reads the 'scrollable view' from the current position. The scrollable
 position is moved to the next newer page after the read. No item is
 returned when the end of the collector is reached.
 <p>]]>
      </description-html>
      <parameter name="maxCount" type-id-ref="INT"
      vmodl-name="maxCount"
      version-id-ref="vim.version.version1"
      privilege="maxCount"
      >
      <description-html>
         <![CDATA[The maximum number of items in the page.]]>
      </description-html>
      </parameter>
   </method>
   <method name="ReadPreviousTasks"
      vmodl-name="readPrev"
      is-array="true"
      is-optional="true"
      type-id-ref="vim.TaskInfo"
      >
      <description-html>
         <![CDATA[Reads the 'scrollable view' from the current position. The scrollable
 position is then moved to the next older page after the read. No item is
 returned when the head of the collector is reached.
 <p>]]>
      </description-html>
      <parameter name="maxCount" type-id-ref="INT"
      vmodl-name="maxCount"
      version-id-ref="vim.version.version1"
      privilege="maxCount"
      >
      <description-html>
         <![CDATA[The maximum number of items in the page.]]>
      </description-html>
      </parameter>
   </method>
   </managed-object>
   <managed-object name="VirtualMachineSnapshot"
      type-id="vim.vm.Snapshot"
      vmodl-name="vim.vm.Snapshot"
      version-id-ref="vim.version.version1"
      base-type-id="vim.ExtensibleManagedObject"
      >
      <description-html>
         <![CDATA[The Snapshot managed object type specifies the interface to individual snapshots
  of a virtual machine. Although these are managed objects, they are subordinate to
  their virtual machine.]]>
      </description-html>
            <property name="config" type-id-ref="vim.vm.ConfigInfo"
      vmodl-name="config"
      >
      <description-html>
         <![CDATA[Information about the configuration of this virtual machine when this snapshot was
  taken.
  <p>
  The datastore paths for the virtual machine disks point to the head of the disk
  chain that represents the disk at this given snapshot. The fileInfo.fileLayout
  field is not set.
  <p>]]>
      </description-html>
      </property>

            <property name="childSnapshot" type-id-ref="vim.vm.Snapshot"
      vmodl-name="childSnapshot"
      version-id-ref="vim.version.version6"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[All snapshots for which this snapshot is the parent.]]>
      </description-html>
      </property>

            <property name="vm" type-id-ref="vim.VirtualMachine"
      vmodl-name="vm"
      version-id-ref="vim.version.version10"
      >
      <description-html>
         <![CDATA[The virtual machine for which the snapshot was taken.]]>
      </description-html>
      </property>

   <method name="RevertToSnapshot"
      vmodl-name="revert"
      privilege="VirtualMachine.State.RevertToSnapshot"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Change the execution state of the virtual machine to the state of this snapshot.]]>
      </description-html>
      <parameter name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      version-id-ref="vim.version.version1"
      is-optional="true"
      privilege="host"
      >
      <description-html>
         <![CDATA[(optional) Choice of host for the virtual machine, in case this
  operation causes the virtual machine to power on.
  <p>
  If a snapshot was taken while a virtual machine was powered on, and this operation
  is invoked after the virtual machine was powered off, the operation causes the
  virtual machine to power on to reach the snapshot state. This parameter can be
  used to specify a choice of host where the virtual machine should power on.
  <p>
  If this parameter is not set and the vBalance feature is configured for automatic
  load balancing, a host is automatically selected. Otherwise, the virtual machine
  keeps its existing host affiliation.
  <p>]]>
      </description-html>
      </parameter>
      <parameter name="suppressPowerOn" type-id-ref="BOOLEAN"
      vmodl-name="suppressPowerOn"
      version-id-ref="vim.version.version1"
      is-optional="true"
      privilege="suppressPowerOn"
      >
      <description-html>
         <![CDATA[(optional) If set to true, the virtual
  machine will not be powered on regardless of the power state when
  the snapshot was created. Default to false.
  <p>]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.TaskInProgress">
      <fault-description-html>
         <![CDATA[if the virtual machine is busy.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InsufficientResourcesFault">
      <fault-description-html>
         <![CDATA[if this operation would violate a resource
          usage policy.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the operation cannot be performed in the current state
          of the virtual machine. For example, the virtual machine's configuration
          is not available.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.FileFault">
      <fault-description-html>
         <![CDATA[if there is a problem accessing the virtual machine on the
          filesystem.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.VmConfigFault">
      <fault-description-html>
         <![CDATA[if a configuration issue prevents the power-on. Typically, a
          more specific fault, such as UnsupportedVmxLocation, is thrown.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidPowerState">
      <fault-description-html>
         <![CDATA[if the operation cannot be performed in the current
          power state of the virtual machine.]]>
      </fault-description-html>
      </fault>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to monitor the
        operation.]]>
      </task-description-html>
   </method>
   <method name="RemoveSnapshot"
      vmodl-name="remove"
      privilege="VirtualMachine.State.RemoveSnapshot"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Removes this snapshot and deletes any associated storage.]]>
      </description-html>
      <parameter name="removeChildren" type-id-ref="BOOLEAN"
      vmodl-name="removeChildren"
      version-id-ref="vim.version.version1"
      privilege="removeChildren"
      >
      <description-html>
         <![CDATA[Flag to specify removal of the entire snapshot subtree.]]>
      </description-html>
      </parameter>
      <parameter name="consolidate" type-id-ref="BOOLEAN"
      vmodl-name="consolidate"
      version-id-ref="vim.version.version1"
      is-optional="true"
      privilege="consolidate"
      >
      <description-html>
         <![CDATA[(optional) If set to true, the virtual disk associated
 with this snapshot will be merged with other disk if possible. Defaults to true.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.TaskInProgress">
      <fault-description-html>
         <![CDATA[if the virtual machine is busy.]]>
      </fault-description-html>
      </fault>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to monitor the
       operation.]]>
      </task-description-html>
   </method>
   <method name="RenameSnapshot"
      vmodl-name="rename"
      privilege="VirtualMachine.State.RenameSnapshot"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Rename this snapshot with either a new name or a new description or both.
  At least one of these must be specified when calling the rename method.
  <p>]]>
      </description-html>
      <parameter name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      version-id-ref="vim.version.version1"
      is-optional="true"
      privilege="name"
      >
      <description-html>
         <![CDATA[New name for the snapshot.]]>
      </description-html>
      </parameter>
      <parameter name="description" type-id-ref="java.lang.String"
      vmodl-name="description"
      version-id-ref="vim.version.version1"
      is-optional="true"
      privilege="description"
      >
      <description-html>
         <![CDATA[New description for the snapshot.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.InvalidName">
      <fault-description-html>
         <![CDATA[if the specified snapshot name is not valid.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.TaskInProgress">
      <fault-description-html>
         <![CDATA[if the virtual machine is busy.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the operation cannot be performed in the current state
          of the virtual machine. For example, the virtual machine's configuration
          is not available.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidPowerState">
      <fault-description-html>
         <![CDATA[if the operation cannot be performed in the current
          power state of the virtual machine.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="ExportSnapshot"
      vmodl-name="exportSnapshot"
      version-id-ref="vim.version.version9"
      privilege="VApp.Export"
      type-id-ref="vim.HttpNfcLease"
      >
      <description-html>
         <![CDATA[Obtains an export lease on this snapshot. The export lease contains
  a list of URLs for the virtual disks for this snapshot, as well as
  a ticket giving access to the URLs.
  <p>
  See <a href="vim.HttpNfcLease.html">HttpNfcLease</a> for information on how to use the lease.]]>
      </description-html>
      <fault type-id-ref="vim.fault.TaskInProgress">
      <fault-description-html>
         <![CDATA[if the virtual machine is busy.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the operation cannot be performed because of the
         virtual machine's current state. For example, if the virtual machine
         configuration information is not available.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.FileFault">
      <fault-description-html>
         <![CDATA[if there is an error accessing the virtual machine files.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[The export lease on this <a href="vim.vm.Snapshot.html">VirtualMachineSnapshot</a>. The
         export task continues running until the lease is completed by the
         caller.]]>
      </return-value-description-html>
   </method>
   </managed-object>
   <managed-object name="HostMemorySystem"
      type-id="vim.host.MemoryManagerSystem"
      vmodl-name="vim.host.MemoryManagerSystem"
      version-id-ref="vim.version.version1"
      base-type-id="vim.ExtensibleManagedObject"
      >
      <description-html>
         <![CDATA[The MemoryManagerSystem managed object provides an interface through which
  the host memory management policies that affect the performance of running
  virtual machines can be gathered and configured.]]>
      </description-html>
            <property name="consoleReservationInfo" type-id-ref="vim.host.MemoryManagerSystem.ServiceConsoleReservationInfo"
      vmodl-name="consoleReservationInfo"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Service console reservation information for the memory manager.  The
  existence of this data object indicates if the service console memory
  reservation must be configured for this host.]]>
      </description-html>
      </property>

            <property name="virtualMachineReservationInfo" type-id-ref="vim.host.MemoryManagerSystem.VirtualMachineReservationInfo"
      vmodl-name="virtualMachineReservationInfo"
      version-id-ref="vim.version.version2"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Virtual machine reservation information for the memory manager.  The
  existence of this data object indicates if the virtual machine memory
  reservation must be configured for this host.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.host.MemoryManagerSystem.ServiceConsoleReservationInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.host.MemoryManagerSystem.VirtualMachineReservationInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.host.MemoryManagerSystem.VirtualMachineReservationSpec</nested-type-id-ref>
   <method name="ReconfigureServiceConsoleReservation"
      vmodl-name="reconfigureServiceConsoleReservation"
      privilege="Host.Config.Memory"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Sets the configured service console memory reservation.  This change
  affects only the serviceConsoleReservedCfg property.  The
  configuration change
  propagates to the other properties after the next boot.]]>
      </description-html>
      <parameter name="cfgBytes" type-id-ref="LONG"
      vmodl-name="cfgBytes"
      version-id-ref="vim.version.version1"
      privilege="cfgBytes"
      >
      </parameter>
   </method>
   <method name="ReconfigureVirtualMachineReservation"
      vmodl-name="reconfigureVirtualMachineReservation"
      version-id-ref="vim.version.version2"
      privilege="Host.Config.Memory"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Updates the virtual machine reservation information.]]>
      </description-html>
      <parameter name="spec" type-id-ref="vim.host.MemoryManagerSystem.VirtualMachineReservationSpec"
      vmodl-name="spec"
      version-id-ref="vim.version.version2"
      privilege="spec"
      >
      </parameter>
   </method>
   </managed-object>
   <managed-object name="ProfileComplianceManager"
      type-id="vim.profile.ComplianceManager"
      vmodl-name="vim.profile.ComplianceManager"
      version-id-ref="vim.version.version5"
      >
      <description-html>
         <![CDATA[Interface handling the Compliance aspects of entities.]]>
      </description-html>
   <method name="CheckCompliance"
      vmodl-name="checkCompliance"
      is-array="true"
      privilege="System.View"
      type-id-ref="vim.profile.ComplianceResult"
      is-task="true"
      >
      <description-html>
         <![CDATA[Check compliance of an entity against a Profile.]]>
      </description-html>
      <parameter name="profile" type-id-ref="vim.profile.Profile"
      vmodl-name="profile"
      version-id-ref="vim.version.version5"
      is-array="true"
      is-optional="true"
      privilege="profile"
      >
      <description-html>
         <![CDATA[If specified, check compliance against the specified profiles.
  If not specified, use the profiles associated with the entities.

  If both Profiles and Entities are specified, Check the compliance of each
  Entity against each of the profile specified.
  <br>
  For more information, look at the KMap below.
  <br>
  P represents if Profile is specified.
  <br>
  E represents if Entity is specified.
  <pre>
            P                        ^P
  ---------------------------------------------------
  | Check compliance      |  Profiles associated    |
 E|  of each entity       |   with the specified    |
  |  against each of the  |   entity will be used   |
  |  profiles specified.  |   for checking          |
  |                       |   compliance.           |
  |                       |                         |
  |                       |                         |
  ---------------------------------------------------
  | All entities          |   InvalidArgument       |
  |  associated with the  |   Exception is thrown.  |
  |  profile are checked. |                         |
^E|                       |                         |
  |                       |                         |
  |                       |                         |
  |                       |                         |
  ---------------------------------------------------
  </pre>]]>
      </description-html>
      </parameter>
      <parameter name="entity" type-id-ref="vim.ManagedEntity"
      vmodl-name="entity"
      version-id-ref="vim.version.version5"
      is-array="true"
      is-optional="true"
      privilege="entity"
      >
      <description-html>
         <![CDATA[If specified, the compliance check is done against this entity.]]>
      </description-html>
      </parameter>
   </method>
   <method name="QueryComplianceStatus"
      vmodl-name="queryComplianceStatus"
      is-array="true"
      is-optional="true"
      privilege="System.View"
      type-id-ref="vim.profile.ComplianceResult"
      >
      <description-html>
         <![CDATA[Query the compliance status based on Profile and Entity filter.]]>
      </description-html>
      <parameter name="profile" type-id-ref="vim.profile.Profile"
      vmodl-name="profile"
      version-id-ref="vim.version.version5"
      is-array="true"
      is-optional="true"
      privilege="profile"
      >
      <description-html>
         <![CDATA[If specified, compliance result for the specified profiles will be
  returned. This acts like a filtering criteria for the ComplianceResults based on
  specified profiles.]]>
      </description-html>
      </parameter>
      <parameter name="entity" type-id-ref="vim.ManagedEntity"
      vmodl-name="entity"
      version-id-ref="vim.version.version5"
      is-array="true"
      is-optional="true"
      privilege="entity"
      >
      <description-html>
         <![CDATA[If specified, compliance results for these entities will be returned.
  This acts like a filtering criteria for the ComplianceResults based on entities.]]>
      </description-html>
      </parameter>
      <return-value-description-html>
         <![CDATA[ComplianceResult. ComplianceResult information may not be
  available for all the entities. If the ComplianceResult is not available already,
  a new ComplianceCheck will not be triggered.]]>
      </return-value-description-html>
   </method>
   <method name="ClearComplianceStatus"
      vmodl-name="clearComplianceStatus"
      privilege="Profile.Clear"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Clear the saved ComplianceResult based on profile and entity filtering criteria.]]>
      </description-html>
      <parameter name="profile" type-id-ref="vim.profile.Profile"
      vmodl-name="profile"
      version-id-ref="vim.version.version5"
      is-array="true"
      is-optional="true"
      privilege="profile"
      >
      <description-html>
         <![CDATA[If specified, clear the ComplianceResult related to the Profile.]]>
      </description-html>
      </parameter>
      <parameter name="entity" type-id-ref="vim.ManagedEntity"
      vmodl-name="entity"
      version-id-ref="vim.version.version5"
      is-array="true"
      is-optional="true"
      privilege="entity"
      >
      <description-html>
         <![CDATA[If specified, clear the ComplianceResult related to the entity.

 If profile and entity are not specified, all the ComplianceResults will be cleared.]]>
      </description-html>
      </parameter>
   </method>
   <method name="QueryExpressionMetadata"
      vmodl-name="queryExpressionMetadata"
      is-array="true"
      is-optional="true"
      privilege="System.View"
      type-id-ref="vim.profile.ExpressionMetadata"
      >
      <description-html>
         <![CDATA[Query the metadata for the expressions.]]>
      </description-html>
      <parameter name="expressionName" type-id-ref="java.lang.String"
      vmodl-name="expressionName"
      version-id-ref="vim.version.version5"
      is-array="true"
      is-optional="true"
      privilege="expressionName"
      >
      <description-html>
         <![CDATA[Names of the Expressions for which metadata is requested.
 If expressionNames are not specified, metadata for all known expressions is returned]]>
      </description-html>
      </parameter>
      <parameter name="profile" type-id-ref="vim.profile.Profile"
      vmodl-name="profile"
      version-id-ref="vim.version.version5"
      is-optional="true"
      privilege="profile"
      >
      <description-html>
         <![CDATA[Base profile whose context needs to be used during the operation]]>
      </description-html>
      </parameter>
   </method>
   </managed-object>
   <managed-object name="HostVStorageObjectManager"
      type-id="vim.vslm.host.VStorageObjectManager"
      vmodl-name="vim.vslm.host.VStorageObjectManager"
      version-id-ref="vim.version.version11"
      base-type-id="vim.vslm.VStorageObjectManagerBase"
      >
      <description-html>
         <![CDATA[Interface to manage virtual storage object on an ESXi host.]]>
      </description-html>
   <method name="HostCreateDisk"
      vmodl-name="createDisk"
      privilege="System.View"
      type-id-ref="vim.vslm.VStorageObject"
      is-task="true"
      >
      <description-html>
         <![CDATA[Create a virtual disk, which is a storage object with
  vim.vslm.VStorageObject.ConsumptionType#disk
  as consumption type.
  <p>
  Requires Datastore.FileManagement privilege on the datastore where the
  virtual disk object is created.
  <p>]]>
      </description-html>
      <parameter name="spec" type-id-ref="vim.vslm.CreateSpec"
      vmodl-name="spec"
      version-id-ref="vim.version.version11"
      privilege="spec"
      >
      <description-html>
         <![CDATA[The specification of the virtual storage object
              to be created.
2]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.FileFault">
      <fault-description-html>
         <![CDATA[If an error occurs when creating the virtual disk.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidDatastore">
      <fault-description-html>
         <![CDATA[If the operation cannot be performed on the
                           datastore.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[The new virtual storage object.]]>
      </return-value-description-html>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to
        monitor the operation. The <a href="vim.TaskInfo.html#result">result</a>
        property in the <a href="vim.Task.html">Task</a> contains the newly created
        <a href="vim.vslm.VStorageObject.html">VStorageObject</a> upon success.]]>
      </task-description-html>
   </method>
   <method name="HostRegisterDisk"
      vmodl-name="registerDisk"
      privilege="System.View"
      type-id-ref="vim.vslm.VStorageObject"
      >
      <description-html>
         <![CDATA[Promote a virtual disk to a First Class Disk.
  <p>
  Requires Datastore.FileManagement privilege on the datastore where the
  virtual disk resides.
  <p><br>See vim.vslm.BaseConfigInfo.name]]>
      </description-html>
      <parameter name="path" type-id-ref="java.lang.String"
      vmodl-name="path"
      version-id-ref="vim.version.version11"
      privilege="path"
      >
      <description-html>
         <![CDATA[URL or datastore path to the virtual disk.<br>See vim.vslm.BaseConfigInfo.name]]>
      </description-html>
      </parameter>
      <parameter name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      version-id-ref="vim.version.version11"
      is-optional="true"
      privilege="name"
      >
      <description-html>
         <![CDATA[The descriptive name of the disk object. If
              unset the name will be automatically determined
              from the path.<br>See vim.vslm.BaseConfigInfo.name]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.FileFault">
      <fault-description-html>
         <![CDATA[If an error occurs while registering the virtual disk.<br>See vim.vslm.BaseConfigInfo.name]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidDatastore">
      <fault-description-html>
         <![CDATA[If datastore cannot be found or the operation
                           cannot be performed on the datastore.<br>See vim.vslm.BaseConfigInfo.name]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.AlreadyExists">
      <fault-description-html>
         <![CDATA[If disk is already registered as a
                        virtual storage object.<br>See vim.vslm.BaseConfigInfo.name]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[The registered virtual storage object for the disk.]]>
      </return-value-description-html>
   </method>
   <method name="HostExtendDisk"
      vmodl-name="extendDisk"
      privilege="System.View"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Expand the capacity of a virtual disk, which is a storage object with
  vim.vslm.VStorageObject.ConsumptionType#disk, to the new
  capacity.

  The extended disk region will be the same as the original disk:
  - For a zerothick disk, the extended disk region will be zeroedthick.
  - For an eagerzerothick disk, the extended disk region will be
    eagerzeroedthick
  - A thin-provisioned disk will always be extended as a thin-provisioned
    disk.
  <p>
  Requires Datastore.FileManagement privilege on the datastore where the
  virtual storage object is located.
  <p>]]>
      </description-html>
      <parameter name="id" type-id-ref="vim.vslm.ID"
      vmodl-name="id"
      version-id-ref="vim.version.version11"
      privilege="id"
      >
      <description-html>
         <![CDATA[The ID of the virtual disk to be extended.]]>
      </description-html>
      </parameter>
      <parameter name="datastore" type-id-ref="vim.Datastore"
      vmodl-name="datastore"
      version-id-ref="vim.version.version11"
      privilege="datastore"
      >
      <description-html>
         <![CDATA[The datastore where the virtual disk is located.]]>
      </description-html>
      </parameter>
      <parameter name="newCapacityInMB" type-id-ref="LONG"
      vmodl-name="newCapacityInMB"
      version-id-ref="vim.version.version11"
      privilege="newCapacityInMB"
      >
      <description-html>
         <![CDATA[The new capacity of the virtual disk in MB.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.FileFault">
      <fault-description-html>
         <![CDATA[If an error occurs while extending the virtual disk.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[If the specified virtual storage object cannot be
                   found.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidDatastore">
      <fault-description-html>
         <![CDATA[If the operation cannot be performed on the
                           datastore.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[If the operation cannot be performed on the disk.
                       The disk may be consumed and cannot be extended.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.TaskInProgress">
      <fault-description-html>
         <![CDATA[If the virtual storage object is busy.]]>
      </fault-description-html>
      </fault>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to
        monitor the operation.]]>
      </task-description-html>
   </method>
   <method name="HostInflateDisk"
      vmodl-name="inflateDisk"
      privilege="System.View"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Inflate a sparse or thin-provisioned virtual disk up to the full size.
  Additional space allocated to the disk as a result of this operation
  will be filled with zeroes.
  <p>
  Currently inflateDisk API only supports the following combinations:
  Valid provisioning type: THIN;
  Valid Datastore: VMFS, NFS.
  Inflating a disk is not applicable for VVol/VSAN datastore.
  <p>

  <p>
  Requires Datastore.FileManagement privilege on the datastore where the
  virtual storage object is located.
  <p>]]>
      </description-html>
      <parameter name="id" type-id-ref="vim.vslm.ID"
      vmodl-name="id"
      version-id-ref="vim.version.version11"
      privilege="id"
      >
      <description-html>
         <![CDATA[The ID of the virtual disk to be inflated.]]>
      </description-html>
      </parameter>
      <parameter name="datastore" type-id-ref="vim.Datastore"
      vmodl-name="datastore"
      version-id-ref="vim.version.version11"
      privilege="datastore"
      >
      <description-html>
         <![CDATA[The datastore where the virtual disk is located.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.FileFault">
      <fault-description-html>
         <![CDATA[If an error occurs while inflating the virtual disk.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[If the specified virtual storage object cannot be
                   found.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidDatastore">
      <fault-description-html>
         <![CDATA[If the operation cannot be performed on the
                           datastore.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[If the operation cannot be performed on the disk.
                       The disk may be consumed and cannot be extended.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.TaskInProgress">
      <fault-description-html>
         <![CDATA[If the virtual storage object is busy.]]>
      </fault-description-html>
      </fault>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to
        monitor the operation.]]>
      </task-description-html>
   </method>
   <method name="HostRenameVStorageObject"
      vmodl-name="renameVStorageObject"
      privilege="System.View"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Rename a virtual storage object.
  <p>
  Requires Datastore.FileManagement privilege on the datastore where the
  virtual storage object is located.
  <p>]]>
      </description-html>
      <parameter name="id" type-id-ref="vim.vslm.ID"
      vmodl-name="id"
      version-id-ref="vim.version.version11"
      privilege="id"
      >
      <description-html>
         <![CDATA[The ID of the virtual storage object to be renamed.]]>
      </description-html>
      </parameter>
      <parameter name="datastore" type-id-ref="vim.Datastore"
      vmodl-name="datastore"
      version-id-ref="vim.version.version11"
      privilege="datastore"
      >
      <description-html>
         <![CDATA[The datastore where the virtual storage object is
                   located.]]>
      </description-html>
      </parameter>
      <parameter name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      version-id-ref="vim.version.version11"
      privilege="name"
      >
      <description-html>
         <![CDATA[The new name for the virtual storage object.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.FileFault">
      <fault-description-html>
         <![CDATA[If an error occurs while renaming the virtual storage
                    object.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidDatastore">
      <fault-description-html>
         <![CDATA[If the operation cannot be performed on the
                           datastore.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[If the specified virtual storage object cannot be
                   found.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="HostRetrieveVStorageInfrastructureObjectPolicy"
      vmodl-name="retrieveVStorageInfrastructureObjectPolicy"
      version-id-ref="vim.version.version12"
      is-array="true"
      is-optional="true"
      privilege="System.View"
      type-id-ref="vim.vslm.InfrastructureObjectPolicy"
      >
      <description-html>
         <![CDATA[Retrieve virtual storage infrastructure object SBPM policy on given
 datastore.
 Only support VSAN datastore.
 <p>
 Requires Datastore.FileManagement privilege on the datastore specified.
 <p>]]>
      </description-html>
      <parameter name="datastore" type-id-ref="vim.Datastore"
      vmodl-name="datastore"
      version-id-ref="vim.version.version12"
      privilege="datastore"
      >
      <description-html>
         <![CDATA[Datastore on which policy needs to be retrieved.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.InvalidDatastore">
      <fault-description-html>
         <![CDATA[If the operation cannot be performed on the
                          datastore.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[If specified virtual storage object cannot be found.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[If the operation cannot be performed on the disk.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[The policy object of virtual storage object.]]>
      </return-value-description-html>
   </method>
   <method name="HostDeleteVStorageObject"
      vmodl-name="deleteVStorageObject"
      privilege="System.View"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Delete a virtual storage object and its assoicated backings.
  <p>
  Requires Datastore.FileManagement privilege on the datastore where the
  virtual storage object is located.
  <p>]]>
      </description-html>
      <parameter name="id" type-id-ref="vim.vslm.ID"
      vmodl-name="id"
      version-id-ref="vim.version.version11"
      privilege="id"
      >
      <description-html>
         <![CDATA[The ID of the virtual storage object to be deleted.]]>
      </description-html>
      </parameter>
      <parameter name="datastore" type-id-ref="vim.Datastore"
      vmodl-name="datastore"
      version-id-ref="vim.version.version11"
      privilege="datastore"
      >
      <description-html>
         <![CDATA[The datastore where the virtual storage object is
                   located.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.FileFault">
      <fault-description-html>
         <![CDATA[If an error occurs when deleting the virtual storage
                    object.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidDatastore">
      <fault-description-html>
         <![CDATA[If the operation cannot be performed on the
                           datastore.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[If the operation cannot be performed on the disk.
                       The disk may be consumed and cannot be deleted.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[If the specified virtual storage object cannot be
                   found.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.TaskInProgress">
      <fault-description-html>
         <![CDATA[If the virtual storage object is busy.]]>
      </fault-description-html>
      </fault>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to
        monitor the operation.]]>
      </task-description-html>
   </method>
   <method name="HostRetrieveVStorageObject"
      vmodl-name="retrieveVStorageObject"
      privilege="System.View"
      type-id-ref="vim.vslm.VStorageObject"
      >
      <description-html>
         <![CDATA[Retrieve a virtual storage object.
  <p>
  Requires Datastore.FileManagement privilege on the datastore where the
  virtual storage object is located.
  <p>]]>
      </description-html>
      <parameter name="id" type-id-ref="vim.vslm.ID"
      vmodl-name="id"
      version-id-ref="vim.version.version11"
      privilege="id"
      >
      <description-html>
         <![CDATA[The ID of the virtual storage object to be retrieved.]]>
      </description-html>
      </parameter>
      <parameter name="datastore" type-id-ref="vim.Datastore"
      vmodl-name="datastore"
      version-id-ref="vim.version.version11"
      privilege="datastore"
      >
      <description-html>
         <![CDATA[The datastore where the virtual storage object is
                   located.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.FileFault">
      <fault-description-html>
         <![CDATA[If an error occurs when retrieving the virtual object.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidDatastore">
      <fault-description-html>
         <![CDATA[If the operation cannot be performed on the
          datastore.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[If specified virtual storage object cannot be found.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[The required virtual storage object.]]>
      </return-value-description-html>
   </method>
   <method name="HostRetrieveVStorageObjectState"
      vmodl-name="retrieveVStorageObjectState"
      privilege="System.View"
      type-id-ref="vim.vslm.StateInfo"
      >
      <description-html>
         <![CDATA[Retrieve a virtual storage object state.
  <p>
  Requires Datastore.FileManagement privilege on the datastore where the
  virtual storage object is located.
  <p>]]>
      </description-html>
      <parameter name="id" type-id-ref="vim.vslm.ID"
      vmodl-name="id"
      version-id-ref="vim.version.version11"
      privilege="id"
      >
      <description-html>
         <![CDATA[The ID of the virtual storage object the state to be retrieved.]]>
      </description-html>
      </parameter>
      <parameter name="datastore" type-id-ref="vim.Datastore"
      vmodl-name="datastore"
      version-id-ref="vim.version.version11"
      privilege="datastore"
      >
      <description-html>
         <![CDATA[The datastore where the virtual storage object is
                   located.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.FileFault">
      <fault-description-html>
         <![CDATA[If an error occurs when retrieving the virtual object
          state.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidDatastore">
      <fault-description-html>
         <![CDATA[If the operation cannot be performed on the
          datastore.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[If specified virtual storage object cannot be found.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[The required virtual storage object state.]]>
      </return-value-description-html>
   </method>
   <method name="HostListVStorageObject"
      vmodl-name="listVStorageObject"
      is-array="true"
      is-optional="true"
      privilege="System.View"
      type-id-ref="vim.vslm.ID"
      >
      <description-html>
         <![CDATA[List all virtual storage objects located on a datastore.
  <p>
  Requires Datastore.FileManagement privilege on the datastore where the
  virtual storage object is located.
  <p>]]>
      </description-html>
      <parameter name="datastore" type-id-ref="vim.Datastore"
      vmodl-name="datastore"
      version-id-ref="vim.version.version11"
      privilege="datastore"
      >
      <description-html>
         <![CDATA[The datastore to query for the virtual storage objects.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.InvalidDatastore">
      <fault-description-html>
         <![CDATA[If the operation cannot be performed on the
                           datastore, such as datastore cannot be found
                           or inaccessible.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[The list of IDs of the virtual storage objects located on the
          datastore.]]>
      </return-value-description-html>
   </method>
   <method name="HostCloneVStorageObject"
      vmodl-name="cloneVStorageObject"
      privilege="System.View"
      type-id-ref="vim.vslm.VStorageObject"
      is-task="true"
      >
      <description-html>
         <![CDATA[Clone a virtual storage object.
  <p>
  Requires Datastore.FileManagement privilege on both source and
  destination datastore.
  <p>]]>
      </description-html>
      <parameter name="id" type-id-ref="vim.vslm.ID"
      vmodl-name="id"
      version-id-ref="vim.version.version11"
      privilege="id"
      >
      <description-html>
         <![CDATA[The ID of the virtual storage object.]]>
      </description-html>
      </parameter>
      <parameter name="datastore" type-id-ref="vim.Datastore"
      vmodl-name="datastore"
      version-id-ref="vim.version.version11"
      privilege="datastore"
      >
      <description-html>
         <![CDATA[The datastore where the source virtual storage
                   object is located.]]>
      </description-html>
      </parameter>
      <parameter name="spec" type-id-ref="vim.vslm.CloneSpec"
      vmodl-name="spec"
      version-id-ref="vim.version.version11"
      privilege="spec"
      >
      <description-html>
         <![CDATA[The specification for cloning the virtual storage
              object.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.FileFault">
      <fault-description-html>
         <![CDATA[If an error occurs while cloning the virtual
                    storage object.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidDatastore">
      <fault-description-html>
         <![CDATA[If the operation cannot be performed on
                           the datastore.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[If specified virtual storage object cannot be
                   found.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[The cloned virtual storage object.]]>
      </return-value-description-html>
   </method>
   <method name="HostRelocateVStorageObject"
      vmodl-name="relocateVStorageObject"
      privilege="System.View"
      type-id-ref="vim.vslm.VStorageObject"
      is-task="true"
      >
      <description-html>
         <![CDATA[Relocate a virtual storage object.
  <p>
  Requires Datastore.FileManagement privilege on both source and
  destination datastore.
  <p>]]>
      </description-html>
      <parameter name="id" type-id-ref="vim.vslm.ID"
      vmodl-name="id"
      version-id-ref="vim.version.version11"
      privilege="id"
      >
      <description-html>
         <![CDATA[The ID of the virtual storage object.]]>
      </description-html>
      </parameter>
      <parameter name="datastore" type-id-ref="vim.Datastore"
      vmodl-name="datastore"
      version-id-ref="vim.version.version11"
      privilege="datastore"
      >
      <description-html>
         <![CDATA[The datastore where the source virtual storage
                   object is located.]]>
      </description-html>
      </parameter>
      <parameter name="spec" type-id-ref="vim.vslm.RelocateSpec"
      vmodl-name="spec"
      version-id-ref="vim.version.version11"
      privilege="spec"
      >
      <description-html>
         <![CDATA[The specification for relocation of the virtual
              storage object.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.FileFault">
      <fault-description-html>
         <![CDATA[If an error occurs while relocating the virtual
                    storage object.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidDatastore">
      <fault-description-html>
         <![CDATA[If the operation cannot be performed on
                           the datastore.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[If the operation cannot be performed on the disk.
                       The disk may be consumed and cannot be relocated.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[If specified virtual storage object cannot
                   be found.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[The relocated virtual storage object.]]>
      </return-value-description-html>
   </method>
   <method name="HostSetVStorageObjectControlFlags"
      vmodl-name="setVStorageObjectControlFlags"
      version-id-ref="vim.version.version12"
      privilege="System.View"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Set control flags on VStorageObject.
  <p>
  Requires Datastore.FileManagement privilege on both source and
  destination datastore.
  <p>]]>
      </description-html>
      <parameter name="id" type-id-ref="vim.vslm.ID"
      vmodl-name="id"
      version-id-ref="vim.version.version12"
      privilege="id"
      >
      <description-html>
         <![CDATA[The ID of the virtual storage object.]]>
      </description-html>
      </parameter>
      <parameter name="datastore" type-id-ref="vim.Datastore"
      vmodl-name="datastore"
      version-id-ref="vim.version.version12"
      privilege="datastore"
      >
      <description-html>
         <![CDATA[The datastore where the source virtual storage
                   object is located.]]>
      </description-html>
      </parameter>
      <parameter name="controlFlags" type-id-ref="java.lang.String"
      vmodl-name="controlFlags"
      version-id-ref="vim.version.version12"
      is-array="true"
      is-optional="true"
      privilege="controlFlags"
      >
      <description-html>
         <![CDATA[control flags enum array to be set on the
                      VStorageObject. All control flags not included
                      in the array remain intact.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.InvalidDatastore">
      <fault-description-html>
         <![CDATA[If the operation cannot be performed on
                           the datastore.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[If the operation cannot be performed on the disk.
                       The disk may be consumed.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[If specified virtual storage object cannot
                   be found.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="HostClearVStorageObjectControlFlags"
      vmodl-name="clearVStorageObjectControlFlags"
      version-id-ref="vim.version.version12"
      privilege="System.View"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Clear control flags on VStorageObject.
  <p>
  Requires Datastore.FileManagement privilege on both source and
  destination datastore.
  <p>]]>
      </description-html>
      <parameter name="id" type-id-ref="vim.vslm.ID"
      vmodl-name="id"
      version-id-ref="vim.version.version12"
      privilege="id"
      >
      <description-html>
         <![CDATA[The ID of the virtual storage object.]]>
      </description-html>
      </parameter>
      <parameter name="datastore" type-id-ref="vim.Datastore"
      vmodl-name="datastore"
      version-id-ref="vim.version.version12"
      privilege="datastore"
      >
      <description-html>
         <![CDATA[The datastore where the source virtual storage
                   object is located.]]>
      </description-html>
      </parameter>
      <parameter name="controlFlags" type-id-ref="java.lang.String"
      vmodl-name="controlFlags"
      version-id-ref="vim.version.version12"
      is-array="true"
      is-optional="true"
      privilege="controlFlags"
      >
      <description-html>
         <![CDATA[control flags enum array to be cleared on the
                      VStorageObject. All control flags not included
                      in the array remain intact.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.InvalidDatastore">
      <fault-description-html>
         <![CDATA[If the operation cannot be performed on
                           the datastore.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[If the operation cannot be performed on the disk.
                       The disk may be consumed.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[If specified virtual storage object cannot
                   be found.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="HostReconcileDatastoreInventory"
      vmodl-name="reconcileDatastoreInventory"
      privilege="System.View"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Reconcile the datastore inventory info of virtual storage objects.
  <p>
  Requires Datastore.FileManagement privilege.
  <p>]]>
      </description-html>
      <parameter name="datastore" type-id-ref="vim.Datastore"
      vmodl-name="datastore"
      version-id-ref="vim.version.version11"
      privilege="datastore"
      >
      <description-html>
         <![CDATA[The datastore that needs to be reconciled.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.InvalidDatastore">
      <fault-description-html>
         <![CDATA[If the operation cannot be performed on
                           the datastore.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.NotFound">
      </fault>
   </method>
   <method name="HostScheduleReconcileDatastoreInventory"
      vmodl-name="scheduleReconcileDatastoreInventory"
      privilege="System.View"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Schedules reconcile of the datastore inventory info of virtual storage
  objects. This method just schedules the reconcile operation for the
  nearby future and returns. Note that since the reconcile operation will
  be executed after this method already returns the success of this method
  should not be considered as success of the actual reconcile operation.
  <p>
  Requires Datastore.FileManagement privilege.
  <p>]]>
      </description-html>
      <parameter name="datastore" type-id-ref="vim.Datastore"
      vmodl-name="datastore"
      version-id-ref="vim.version.version11"
      privilege="datastore"
      >
      <description-html>
         <![CDATA[The datastore that needs to be reconciled.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.InvalidDatastore">
      <fault-description-html>
         <![CDATA[If the operation cannot be performed on
                           the datastore.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.NotFound">
      </fault>
   </method>
   <method name="HostVStorageObjectCreateSnapshot"
      vmodl-name="createSnapshot"
      version-id-ref="vim.version.version12"
      privilege="System.View"
      type-id-ref="vim.vslm.ID"
      is-task="true"
      >
      <description-html>
         <![CDATA[Creates a snapshot of a given VStorageObject.]]>
      </description-html>
      <parameter name="id" type-id-ref="vim.vslm.ID"
      vmodl-name="id"
      version-id-ref="vim.version.version12"
      privilege="id"
      >
      <description-html>
         <![CDATA[The ID of the virtual storage object.]]>
      </description-html>
      </parameter>
      <parameter name="datastore" type-id-ref="vim.Datastore"
      vmodl-name="datastore"
      version-id-ref="vim.version.version12"
      privilege="datastore"
      >
      <description-html>
         <![CDATA[The datastore where the source virtual storage object
                  is located.]]>
      </description-html>
      </parameter>
      <parameter name="description" type-id-ref="java.lang.String"
      vmodl-name="description"
      version-id-ref="vim.version.version12"
      privilege="description"
      >
      <description-html>
         <![CDATA[A short description to be associated with the snapshot.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.InvalidDatastore">
      <fault-description-html>
         <![CDATA[If the operation cannot be performed on the
                          datastore.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[If specified virtual storage object cannot be found.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.FileFault">
      <fault-description-html>
         <![CDATA[If an error occurs while snapshotting the virtual
                   storage object.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[If the operation cannot be performed on the disk.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="HostVStorageObjectDeleteSnapshot"
      vmodl-name="deleteSnapshot"
      version-id-ref="vim.version.version12"
      privilege="System.View"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Deletes a given snapshot of a VStorageObject.]]>
      </description-html>
      <parameter name="id" type-id-ref="vim.vslm.ID"
      vmodl-name="id"
      version-id-ref="vim.version.version12"
      privilege="id"
      >
      <description-html>
         <![CDATA[The ID of the virtual storage object.]]>
      </description-html>
      </parameter>
      <parameter name="datastore" type-id-ref="vim.Datastore"
      vmodl-name="datastore"
      version-id-ref="vim.version.version12"
      privilege="datastore"
      >
      <description-html>
         <![CDATA[The datastore where the source virtual storage object
                  is located.]]>
      </description-html>
      </parameter>
      <parameter name="snapshotId" type-id-ref="vim.vslm.ID"
      vmodl-name="snapshotId"
      version-id-ref="vim.version.version12"
      privilege="snapshotId"
      >
      <description-html>
         <![CDATA[The ID of the snapshot of a virtual storage object.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.InvalidDatastore">
      <fault-description-html>
         <![CDATA[If the operation cannot be performed on the
                          datastore.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[If specified virtual storage object cannot be found.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.FileFault">
      <fault-description-html>
         <![CDATA[If an error occurs while snapshotting the virtual
                   storage object.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[If the operation cannot be performed on the disk.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="HostVStorageObjectRetrieveSnapshotInfo"
      vmodl-name="retrieveSnapshotInfo"
      version-id-ref="vim.version.version12"
      privilege="System.View"
      type-id-ref="vim.vslm.VStorageObjectSnapshotInfo"
      >
      <description-html>
         <![CDATA[Retrieves snapshot information of a given VStorageObject.]]>
      </description-html>
      <parameter name="id" type-id-ref="vim.vslm.ID"
      vmodl-name="id"
      version-id-ref="vim.version.version12"
      privilege="id"
      >
      <description-html>
         <![CDATA[The ID of the virtual storage object.]]>
      </description-html>
      </parameter>
      <parameter name="datastore" type-id-ref="vim.Datastore"
      vmodl-name="datastore"
      version-id-ref="vim.version.version12"
      privilege="datastore"
      >
      <description-html>
         <![CDATA[The datastore where the source virtual storage object
                  is located.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.InvalidDatastore">
      <fault-description-html>
         <![CDATA[If the operation cannot be performed on the
                          datastore.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[If specified virtual storage object cannot be found.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.FileFault">
      <fault-description-html>
         <![CDATA[If an error occurs while snapshotting the virtual
                   storage object.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[If the operation cannot be performed on the disk.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="HostVStorageObjectCreateDiskFromSnapshot"
      vmodl-name="createDiskFromSnapshot"
      version-id-ref="vim.version.version12"
      privilege="System.View"
      type-id-ref="vim.vslm.VStorageObject"
      is-task="true"
      >
      <description-html>
         <![CDATA[Creates a new Disk from given snapshot of a VStorageObject.]]>
      </description-html>
      <parameter name="id" type-id-ref="vim.vslm.ID"
      vmodl-name="id"
      version-id-ref="vim.version.version12"
      privilege="id"
      >
      <description-html>
         <![CDATA[The ID of the virtual storage object.]]>
      </description-html>
      </parameter>
      <parameter name="datastore" type-id-ref="vim.Datastore"
      vmodl-name="datastore"
      version-id-ref="vim.version.version12"
      privilege="datastore"
      >
      <description-html>
         <![CDATA[The datastore where the source virtual storage object
                  is located.]]>
      </description-html>
      </parameter>
      <parameter name="snapshotId" type-id-ref="vim.vslm.ID"
      vmodl-name="snapshotId"
      version-id-ref="vim.version.version12"
      privilege="snapshotId"
      >
      <description-html>
         <![CDATA[The ID of the snapshot of the virtual storage object.]]>
      </description-html>
      </parameter>
      <parameter name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      version-id-ref="vim.version.version12"
      privilege="name"
      >
      <description-html>
         <![CDATA[A user friendly name to be associated with the new disk.]]>
      </description-html>
      </parameter>
      <parameter name="profile" type-id-ref="vim.vm.ProfileSpec"
      vmodl-name="profile"
      version-id-ref="vim.version.version12"
      is-array="true"
      is-optional="true"
      privilege="profile"
      >
      <description-html>
         <![CDATA[SPBM Profile requirement on the new virtual storage object.
                If not specified datastore default policy would be
                assigned.]]>
      </description-html>
      </parameter>
      <parameter name="crypto" type-id-ref="vim.encryption.CryptoSpec"
      vmodl-name="crypto"
      version-id-ref="vim.version.version12"
      is-optional="true"
      privilege="crypto"
      >
      <description-html>
         <![CDATA[Crypto information of the new disk.]]>
      </description-html>
      </parameter>
      <parameter name="path" type-id-ref="java.lang.String"
      vmodl-name="path"
      version-id-ref="vim.version.version12"
      is-optional="true"
      privilege="path"
      >
      <description-html>
         <![CDATA[Relative location in the specified datastore where disk needs
             to be created. If not specified disk gets created at defualt
             VStorageObject location on the specified datastore]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.InvalidDatastore">
      <fault-description-html>
         <![CDATA[If the operation cannot be performed on the
                          datastore.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[If specified virtual storage object cannot be found.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.FileFault">
      <fault-description-html>
         <![CDATA[If an error occurs while snapshotting the virtual
                   storage object.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[If the operation cannot be performed on the disk.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="HostVStorageObjectRevert"
      vmodl-name="RevertVStorageObject"
      version-id-ref="vim.version.version12"
      privilege="System.View"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Reverts to a given snapshot of a VStorageObject.
 This operation is supported on detached VirtualDisks
 During revert all the snapshots which were taken after the specified
 snapshot would get deleted.

 <p>
 E.g. Consider Disk with 4 snapshots
 <p>
      BaseDisk -> Snap-2 -> Snap-3 -> Snap-4 -> Running-Point
 <p>
  If user chooses to revert to snap-2 then snap-4 and snap-3 would also
  be deleted. After revert operation disk would have below configuration:
 <p>
      BaseDisk -> Snap-2 -> Running-Point]]>
      </description-html>
      <parameter name="id" type-id-ref="vim.vslm.ID"
      vmodl-name="id"
      version-id-ref="vim.version.version12"
      privilege="id"
      >
      <description-html>
         <![CDATA[The ID of the virtual storage object.]]>
      </description-html>
      </parameter>
      <parameter name="datastore" type-id-ref="vim.Datastore"
      vmodl-name="datastore"
      version-id-ref="vim.version.version12"
      privilege="datastore"
      >
      <description-html>
         <![CDATA[The datastore where the source virtual storage object
                  is located.]]>
      </description-html>
      </parameter>
      <parameter name="snapshotId" type-id-ref="vim.vslm.ID"
      vmodl-name="snapshotId"
      version-id-ref="vim.version.version12"
      privilege="snapshotId"
      >
      <description-html>
         <![CDATA[The ID of the snapshot of a virtual storage object.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.InvalidDatastore">
      <fault-description-html>
         <![CDATA[If the operation cannot be performed on the
                          datastore.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[If specified virtual storage object cannot be found.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.FileFault">
      <fault-description-html>
         <![CDATA[If an error occurs while snapshotting the virtual
                   storage object.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[If the operation cannot be performed on the disk.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="HostUpdateVStorageObjectMetadata"
      vmodl-name="updateVStorageObjectMetadata"
      version-id-ref="vim.version.version14"
      privilege="System.View"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Update metadata KV pairs to a virtual storage object. And this API is by
  design supposed to be used for all of the addition, modification and
  deletion operations of metadata KV pairs.
  <p>
  Requires Datastore.FileManagement privilege on the datastore where the
  virtual storage object is located.
  <p>]]>
      </description-html>
      <parameter name="id" type-id-ref="vim.vslm.ID"
      vmodl-name="id"
      version-id-ref="vim.version.version14"
      privilege="id"
      >
      <description-html>
         <![CDATA[The ID of the virtual storage object.]]>
      </description-html>
      </parameter>
      <parameter name="datastore" type-id-ref="vim.Datastore"
      vmodl-name="datastore"
      version-id-ref="vim.version.version14"
      privilege="datastore"
      >
      <description-html>
         <![CDATA[The datastore to query for the virtual storage objects.]]>
      </description-html>
      </parameter>
      <parameter name="metadata" type-id-ref="vim.KeyValue"
      vmodl-name="metadata"
      version-id-ref="vim.version.version14"
      is-array="true"
      is-optional="true"
      privilege="metadata"
      >
      <description-html>
         <![CDATA[array of key/value strings. (keys must be unique
                       within the list)]]>
      </description-html>
      </parameter>
      <parameter name="deleteKeys" type-id-ref="java.lang.String"
      vmodl-name="deleteKeys"
      version-id-ref="vim.version.version14"
      is-array="true"
      is-optional="true"
      privilege="deleteKeys"
      >
      <description-html>
         <![CDATA[array of keys need to be deleted]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.InvalidDatastore">
      <fault-description-html>
         <![CDATA[If the operation cannot be performed on the
                           datastore, such as datastore cannot be found
                           or inaccessible.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[If the operation cannot be performed on the disk.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[If specified virtual storage object cannot be found.]]>
      </fault-description-html>
      </fault>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to
        monitor the operation.]]>
      </task-description-html>
   </method>
   <method name="HostRetrieveVStorageObjectMetadata"
      vmodl-name="retrieveVStorageObjectMetadata"
      version-id-ref="vim.version.version14"
      is-array="true"
      is-optional="true"
      privilege="System.View"
      type-id-ref="vim.KeyValue"
      >
      <description-html>
         <![CDATA[Retrieve metadata KV pairs from a virtual storage object.
  <p>
  Requires Datastore.FileManagement privilege on the datastore where the
  virtual storage object is located.
  <p>]]>
      </description-html>
      <parameter name="id" type-id-ref="vim.vslm.ID"
      vmodl-name="id"
      version-id-ref="vim.version.version14"
      privilege="id"
      >
      <description-html>
         <![CDATA[The ID of the virtual storage object.]]>
      </description-html>
      </parameter>
      <parameter name="datastore" type-id-ref="vim.Datastore"
      vmodl-name="datastore"
      version-id-ref="vim.version.version14"
      privilege="datastore"
      >
      <description-html>
         <![CDATA[The datastore to query for the virtual storage objects.]]>
      </description-html>
      </parameter>
      <parameter name="snapshotId" type-id-ref="vim.vslm.ID"
      vmodl-name="snapshotId"
      version-id-ref="vim.version.version14"
      is-optional="true"
      privilege="snapshotId"
      >
      <description-html>
         <![CDATA[The ID of the snapshot of virtual storage object.]]>
      </description-html>
      </parameter>
      <parameter name="prefix" type-id-ref="java.lang.String"
      vmodl-name="prefix"
      version-id-ref="vim.version.version14"
      is-optional="true"
      privilege="prefix"
      >
      <description-html>
         <![CDATA[The prefix of the metadata key that needs to be retrieved]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.InvalidDatastore">
      <fault-description-html>
         <![CDATA[If the operation cannot be performed on the
                           datastore, such as datastore cannot be found
                           or inaccessible.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[If the operation cannot be performed on the disk.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[If specified virtual storage object cannot be found.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[returns the array of key value pair]]>
      </return-value-description-html>
   </method>
   <method name="HostRetrieveVStorageObjectMetadataValue"
      vmodl-name="retrieveVStorageObjectMetadataValue"
      version-id-ref="vim.version.version14"
      privilege="System.View"
      type-id-ref="java.lang.String"
      >
      <description-html>
         <![CDATA[Retrieve the metadata value by key from a virtual storage object.
  <p>
  Requires Datastore.FileManagement privilege on the datastore where the
  virtual storage object is located.
  <p>]]>
      </description-html>
      <parameter name="id" type-id-ref="vim.vslm.ID"
      vmodl-name="id"
      version-id-ref="vim.version.version14"
      privilege="id"
      >
      <description-html>
         <![CDATA[The ID of the virtual storage object.]]>
      </description-html>
      </parameter>
      <parameter name="datastore" type-id-ref="vim.Datastore"
      vmodl-name="datastore"
      version-id-ref="vim.version.version14"
      privilege="datastore"
      >
      <description-html>
         <![CDATA[The datastore to query for the virtual storage objects.]]>
      </description-html>
      </parameter>
      <parameter name="snapshotId" type-id-ref="vim.vslm.ID"
      vmodl-name="snapshotId"
      version-id-ref="vim.version.version14"
      is-optional="true"
      privilege="snapshotId"
      >
      <description-html>
         <![CDATA[The ID of the snapshot of virtual storage object.]]>
      </description-html>
      </parameter>
      <parameter name="key" type-id-ref="java.lang.String"
      vmodl-name="key"
      version-id-ref="vim.version.version14"
      privilege="key"
      >
      <description-html>
         <![CDATA[The key for the the virtual storage object]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.InvalidDatastore">
      <fault-description-html>
         <![CDATA[If the operation cannot be performed on the
                           datastore, such as datastore cannot be found
                           or inaccessible.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[If the operation cannot be performed on the disk.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[If specified virtual storage object cannot be found.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.KeyNotFound">
      <fault-description-html>
         <![CDATA[If specified key cannot be found.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[returns the value for the key]]>
      </return-value-description-html>
   </method>
   </managed-object>
   <managed-object name="Folder"
      type-id="vim.Folder"
      vmodl-name="vim.Folder"
      version-id-ref="vim.version.version1"
      base-type-id="vim.ManagedEntity"
      >
      <description-html>
         <![CDATA[The <a href="vim.Folder.html">Folder</a> managed object is a container for storing and organizing
  inventory objects. Folders can contain folders and other objects.
  The <a href="vim.Folder.html#childType">ChildType</a> property identifies a folder's type
  and determines the types of folders and objects the folder can contain.
  <ul>
      <li> A folder can contain a child folder of the same type as the parent folder.
      <li> All <a href="vim.Datacenter.html">Datacenter</a> objects contain dedicated folders for:
      <ul type="SQUARE">
          <li> <a href="vim.VirtualMachine.html">VirtualMachine</a>, templates, and <a href="vim.VirtualApp.html">VirtualApp</a> objects.
          <li> <a href="vim.ComputeResource.html">ComputeResource</a> hierarchies.
          <li> <a href="vim.Network.html">Network</a>, <a href="vim.DistributedVirtualSwitch.html">DistributedVirtualSwitch</a>, and
               <a href="vim.dvs.DistributedVirtualPortgroup.html">DistributedVirtualPortgroup</a> objects.
          <li> <a href="vim.Datastore.html">Datastore</a> objects.
      </ul>
      <li> A folder can contain child objects of type <a href="vim.Folder.html#childType">ChildType</a>.
           Virtual machine and network entity folders can also contain additional object types.
      <li> The root folder is a data center folder.
  </ul>
  See <a href="vim.ServiceInstance.html">ServiceInstance</a> for a representation of the organization of the inventory.
  <p>
  The <a href="vim.Folder.html">Folder</a> managed object also acts as a factory object, meaning it
  creates new entities in a folder. The object provides methods to create
  child folders and objects, methods to add existing objects to folders, and
  methods to remove objects from folders and to delete folders.
  <p>
  <a href="vim.Folder.html">Folder</a> inherits the <a href="vim.ManagedEntity.html#destroy">Destroy_Task</a> method.
  <a href="vim.ManagedEntity.html#destroy">Destroy_Task</a> is a recursive operation that removes all child objects and
  folders. When you call <a href="vim.ManagedEntity.html#destroy">Destroy_Task</a> to destroy a folder, the system uses
  the specified folder as a root and traverses its descendant hierarchy, calling
  <a href="vim.ManagedEntity.html#destroy">Destroy_Task</a> on each object.
  <a href="vim.ManagedEntity.html#destroy">Destroy_Task</a> is a single operation that treats each recursive call as a
  single transaction, committing each call to remove an object individually.
  If <a href="vim.ManagedEntity.html#destroy">Destroy_Task</a> fails on an object, the method terminates at that point
  with an exception, leaving some or all of the objects still in the inventory.
  <p>
  Notes on the folder destroy method:
  <ul>
      <li>Calling <a href="vim.ManagedEntity.html#destroy">Destroy_Task</a> on a virtual machine folder recursively calls
      <a href="vim.ManagedEntity.html#destroy">Destroy_Task</a> on all the child virtual machines and vApps, which are then
      removed from disk.
      Use <a href="vim.Folder.html#unregisterAndDestroy">UnregisterAndDestroy_Task</a>
      to unregister virtual machines or vApps recursively without
      removing them from the disk.
      <li>For virtual machine folders, the <a href="vim.ManagedEntity.html#destroy">Destroy_Task</a> method requires the
      VirtualMachine.Delete privilege on the folder as well as
      all virtual machines to be destroyed. It also requires the VirtualApp.Delete
      privilege on all VirtualApp objects to be destroyed.
      <li>Destroying a host folder or datacenter folder unregisters all child hosts
      and virtual machines from vCenter. The hosts are simply removed
      from the inventory, along with their virtual machines. The virtual machines
      are not removed from disk nor are their runtime states changed.
      <li> You can remove network and datastore folders only if they are empty.
      <li> You cannot destroy, rename, or move the virtual machine, compute resource,
           network entity, and datastore child folders of a Datacenter.
  </ul>]]>
      </description-html>
            <property name="childType" type-id-ref="vmodl.TypeName"
      vmodl-name="childType"
      is-array="true"
      is-optional="true"
      privilege="System.View"
      >
      <description-html>
         <![CDATA[Specifies the object types a folder may contain.
  When you create a folder, it inherits its childType from the parent folder
  in which it is created. childType is an array of strings. Each array entry
  identifies a set of object types - Folder and one or more managed object
  types. The following list shows childType values for the different folders:
  <ul>
      <li> { "vim.Folder", "vim.Datacenter" } - Identifies the root folder
           and its descendant folders. Data center folders can contain
           child data center folders and Datacenter managed objects.
           Datacenter objects contain virtual machine, compute resource,
           network entity, and datastore folders.</li>
      <li> { "vim.Folder", "vim.Virtualmachine", "vim.VirtualApp" } - Identifies
           a virtual machine folder. A virtual machine folder may contain child
           virtual machine folders. It also can contain VirtualMachine managed objects,
           templates, and VirtualApp managed objects.</li>
      <li> { "vim.Folder", "vim.ComputeResource" } - Identifies a
           compute resource folder, which contains child compute resource folders
           and ComputeResource hierarchies.</li>
      <li> { "vim.Folder", "vim.Network" } - Identifies a network entity folder.
           Network entity folders on a vCenter Server can contain Network,
           DistributedVirtualSwitch, and DistributedVirtualPortgroup managed
           objects. Network entity folders on an ESXi host can contain only
           Network objects.</li>
      <li> { "vim.Folder", "vim.Datastore" } - Identifies a datastore folder.
           Datastore folders can contain child datastore folders and Datastore
           managed objects.</li>
  </ul>]]>
      </description-html>
      </property>

            <property name="childEntity" type-id-ref="vim.ManagedEntity"
      vmodl-name="childEntity"
      is-array="true"
      is-optional="true"
      privilege="System.View"
      >
      <description-html>
         <![CDATA[An array of managed object references. Each entry is a reference to a child entity.]]>
      </description-html>
      </property>

            <property name="namespace" type-id-ref="java.lang.String"
      vmodl-name="namespace"
      version-id-ref="vim.version.v7_0"
      is-optional="true"
      privilege="System.View"
      >
      <description-html>
         <![CDATA[The namespace with which the Folder is associated. Namespace is a vAPI
  resource which divides cluster resources and allows administrators to
  give Kubernetes environments to their development teams.

  This property is set only at the time of creation and cannot change.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.Folder.DesiredHostState</nested-type-id-ref>
      <nested-type-id-ref>vim.Folder.NewHostSpec</nested-type-id-ref>
      <nested-type-id-ref>vim.Folder.FailedHostResult</nested-type-id-ref>
      <nested-type-id-ref>vim.Folder.BatchAddStandaloneHostsResult</nested-type-id-ref>
      <nested-type-id-ref>vim.Folder.BatchAddHostsToClusterResult</nested-type-id-ref>
   <method name="CreateFolder"
      vmodl-name="createFolder"
      privilege="Folder.Create"
      type-id-ref="vim.Folder"
      >
      <description-html>
         <![CDATA[Creates a new sub-folder with the specified name.

  The <a href="vim.Folder.html#childType">ChildType</a> property of the new folder is the same as
  the <a href="vim.Folder.html#childType">ChildType</a> property of the current folder.]]>
      </description-html>
      <parameter name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      version-id-ref="vim.version.version1"
      privilege="name"
      >
      <description-html>
         <![CDATA[The name to be given the new folder. An entity name
               must be a non-empty string of less than 80 characters.
               The slash (/), backslash (\) and percent (%) will be escaped
               using the URL syntax. For example, %2F. Any percent (%)
               character used in this parameter must be escaped, unless
               it is used to start an escape sequence. Clients may also
               escape any other characters in this parameter.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.DuplicateName">
      <fault-description-html>
         <![CDATA[if another object in the same folder has the
                        target name.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidName">
      <fault-description-html>
         <![CDATA[if the name is not a valid entity name.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[A reference to the new folder.]]>
      </return-value-description-html>
   </method>
   <method name="MoveIntoFolder"
      vmodl-name="moveInto"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Moves a set of managed entities into this folder.
  <p>
  This operation is typically used by clients when they implement a drag-and-drop
  interface to move a set of objects into a folder.
  <p>
  This operation is transactional only with respect to each individual entity.
  The set of entities is moved sequentially as specified in the list, and
  committed one at a time. If the <a href="vim.Folder.html#moveInto">MoveIntoFolder_Task</a> method fails on an object, the
  method terminates at that point with an exception, leaving the rest of the
  managed entities in their original location.
  <p>
  The objects that can be moved into a folder depends on the folder's
  type (as defined by the folder's <a href="vim.Folder.html#childType">ChildType</a> property).
  For a datacenter folder, only datacenters and datacenter folders can be
  moved into the folder. For a virtual machine folder, only virtual machines
  and virtual machine folders can be moved into the folder.
  For a host folder, ComputeResource objects, host folder objects, and
  HostSystem objects can be moved into the folder.
  <p>
  Moving a HostSystem into a host folder creates a stand-alone host from a
  host that is currently part of a ClusterComputeResource. The host must be part
  of a ClusterComputeResource in the same datacenter and the host must be in
  maintenance mode. Otherwise, the operation fails.
  <p>
  A ComputeResource with a single root resource pool is created for each
  HostSystem. The name of the ComputeResource is the DNS or IP address of the
  host. This operation moves the (physical) host resources out of a cluster.
  It does not move or change the ResourcePool configuration that is part of the
  ClusterComputeResource with which the host was associated.
  <p>
  Note that all virtual machines associated with a host are moved with the host
  into the folder. If there are virtual machines that should not be moved
  with the host, then migrate them from the host before initiating this operation.
  <p>
  For a HostSystem move, the privileges required are Host.Inventory.EditCluster
  on the source ClusterComputeResource, Host.Inventory.MoveHost on the HostSystem,
  and Host.Inventory.AddStandaloneHost on the target Folder.
  <p>
  Otherwise, the privilege required for this operation varies depending on this
  folder's type and is checked against the source container, destination container,
  and the object:
  <ul>
     <li>Folder.Move if the object is a Folder
     <li>Datacenter.Move if the object is a Datacenter
     <li>Host.Inventory.MoveCluster if the object is a ComputeResource
     <li>VirtualMachine.Inventory.Move if the object is a virtual machine
         or virtual machine template
     <li>DVSwitch.Move if the object is a DistributedVirtualSwitch
     <li>Datastore.Move if the object is a datastore
     <li>Network.Move if the object is a network
  </ul>
  If the object is a HostSystem, the privileges required are
  Host.Inventory.AddStandaloneHost on the folder, Host.Inventory.MoveHost on
  the HostSystem, and Host.Inventory.EditCluster on the host's original
  ComputeResource.]]>
      </description-html>
      <parameter name="list" type-id-ref="vim.ManagedEntity"
      vmodl-name="list"
      version-id-ref="vim.version.version1"
      is-array="true"
      privilege="list"
      >
      <description-html>
         <![CDATA[The list of objects to be moved into the folder.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.DuplicateName">
      <fault-description-html>
         <![CDATA[if this folder already contains an object with
             the specified name.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidFolder">
      <fault-description-html>
         <![CDATA[if a Folder that is a parent of this Folder is part
             of the list of objects.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if a HostSystem is not part of the same
             datacenter, not part of a ClusterComputeResource, or not in
             maintenance mode.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.VmAlreadyExistsInDatacenter">
      <fault-description-html>
         <![CDATA[if moving a standalone host between
          datacenters, and one or more of the host's virtual machines is
          already registered to a host in the destination datacenter.]]>
      </fault-description-html>
      </fault>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to monitor the
        operation.]]>
      </task-description-html>
   </method>
   <method name="CreateVM"
      vmodl-name="createVm"
      privilege="VirtualMachine.Inventory.Create"
      type-id-ref="vim.VirtualMachine"
      is-task="true"
      >
      <description-html>
         <![CDATA[Creates a new virtual machine in the current folder and attaches it to the
  specified resource pool. This operation creates a virtual machine,
  instead of cloning a virtual machine from an existing one.

  <p>
  The server does not support creating templates using this method.
  Instead, you should create templates by marking existing virtual
  machines as templates, or by cloning an existing virtual machine or
  template.

  <p>
  This operation only works if the folder's childType includes VirtualMachine.

  In addition to the VirtualMachine.Inventory.Create privilege, may also require
  any of the following privileges depending on the properties of the virtual
  machine bring created:
  <ul>
    <li>VirtualMachine.Config.AddExistingDisk if including a virtual disk device
        that refers to an existing virtual disk file (not RDM)</li>
    <li>VirtualMachine.Config.AddNewDisk if including a virtual disk device that
        creates a new virtual disk file (not RDM)</li>
    <li>VirtualMachine.Config.RawDevice if including a raw device mapping
        (RDM) or SCSI passthrough device</li>
    <li>VirtualMachine.Config.HostUSBDevice if including a VirtualUSB device
        backed by a host USB device</li>
    <li>VirtualMachine.Config.AdvancedConfig if setting values in
        ConfigSpec.extraConfig</li>
    <li>VirtualMachine.Config.SwapPlacement if setting swapPlacement</li>
    <li>VirtualMachine.Config.ChangeTracking if setting changed
        block tracking for the virtual machine's disks.</li>
    <li>Datastore.AllocateSpace required on all datastores where the
        virtual machine and its virtual disks will be created</li>
    <li>Network.Assign required on the network which is assigned to the
        new virtual machine that is being created</li>
    <li>Cryptographer.EncryptNew on the folder if the created virtual
        machine is encrypted</li>
    <li>Cryptographer.RegisterHost on the host if the created virtual
         machine is encrypted, but encryption is not enabled on the host
    </li>
  </ul>
 To create a VirtualDisk on a persistent memory storage, the storage
 must be specified via
 <a href="vim.vm.device.VirtualDeviceSpec.html#profile">profile</a> while the datastore
 property of corresponding VirtualDisk backing must be unset.
 <p>
 To create a VirtualNVDIMM device, the storage
 <a href="vim.vm.device.VirtualDeviceSpec.html#profile">profile</a> must be set to the
 default persistent memory storage profile while the datastore property of
 the device backing must be
 unset.
 <p>]]>
      </description-html>
      <parameter name="config" type-id-ref="vim.vm.ConfigSpec"
      vmodl-name="config"
      version-id-ref="vim.version.version1"
      privilege="config"
      >
      <description-html>
         <![CDATA[The configuration of the virtual machine hardware.]]>
      </description-html>
      </parameter>
      <parameter name="pool" type-id-ref="vim.ResourcePool"
      vmodl-name="pool"
      version-id-ref="vim.version.version1"
      privilege="pool"
      >
      <description-html>
         <![CDATA[The resource pool to which the virtual machine will be attached.]]>
      </description-html>
      </parameter>
      <parameter name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      version-id-ref="vim.version.version1"
      is-optional="true"
      privilege="host"
      >
      <description-html>
         <![CDATA[The target host on which the virtual machine will run. This must
         specify a host that is a member of the ComputeResource indirectly
         specified by the pool. For a stand-alone host or a cluster with DRS,
         host can be omitted, and the system selects a default.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.VmConfigFault">
      <fault-description-html>
         <![CDATA[if the configSpec has incorrect values. Typically, a more
          specific subclass is thrown.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.FileFault">
      <fault-description-html>
         <![CDATA[if there is a problem creating the virtual machine on disk.
          Typically, a more specific subclass, such as NoDiskSpace, will be thrown.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.OutOfBounds">
      <fault-description-html>
         <![CDATA[if Host.capability.maxSupportedVMs is exceeded.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.DuplicateName">
      <fault-description-html>
         <![CDATA[if another virtual machine in the same folder already has
          the specified target name.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidName">
      <fault-description-html>
         <![CDATA[if the name is not a valid entity name.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidDatastore">
      <fault-description-html>
         <![CDATA[if the operation cannot be performed on the
          target datastores.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InsufficientResourcesFault">
      <fault-description-html>
         <![CDATA[if this operation would violate a resource
          usage policy.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.AlreadyExists">
      <fault-description-html>
         <![CDATA[if the requested cfgPath (or the default cfgPath)
          for the virtual machine's configuration file is already loaded
          in the inventory.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the operation is not allowed in current state of
          the entities involved.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.FileAlreadyExists">
      <fault-description-html>
         <![CDATA[if the requested cfgPath for the virtual machine's
          configuration file already exists.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.VmWwnConflict">
      <fault-description-html>
         <![CDATA[if the WWN of the virtual machine has been used by
          other virtual machines.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[the newly created VirtualMachine.]]>
      </return-value-description-html>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to monitor the
        operation. The <a href="vim.TaskInfo.html#result">result</a> property in the
        <a href="vim.Task.html">Task</a> contains the newly created <a href="vim.VirtualMachine.html">VirtualMachine</a>
        upon success.]]>
      </task-description-html>
   </method>
   <method name="RegisterVM"
      vmodl-name="registerVm"
      privilege="VirtualMachine.Inventory.Register"
      type-id-ref="vim.VirtualMachine"
      is-task="true"
      >
      <description-html>
         <![CDATA[Adds an existing virtual machine to the folder.
  <p>
  Any % (percent) character used in this name parameter must be escaped, unless it
  is used to start an escape sequence. Clients may also escape any other characters
  in this name parameter.
  <p>
  This operation only works if the folder's type is VirtualMachine.

  In addition to the VirtualMachine.Inventory.Register and
  Resource.AssignVMToPool privileges, it requires System.Read privilege
  on the datastore that the existing virtual machine resides on. If the
  virtual machine is encrypted Cryptographer.RegisterVM is required on the
  folder, in which the virtual machine is registered. Otherwise, the VM is
  registered successfully, but is left in the locked state.]]>
      </description-html>
      <parameter name="path" type-id-ref="java.lang.String"
      vmodl-name="path"
      version-id-ref="vim.version.version1"
      privilege="path"
      >
      <description-html>
         <![CDATA[A datastore path to the virtual machine.]]>
      </description-html>
      </parameter>
      <parameter name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      version-id-ref="vim.version.version1"
      is-optional="true"
      privilege="name"
      >
      <description-html>
         <![CDATA[The name to be assigned to the virtual machine. If this parameter is
         not set, the displayName configuration parameter of the virtual machine is
         used. An entity name must be a non-empty string of less than 80
         characters. The slash (/), backslash (\) and percent (%) will be
         escaped using the URL syntax. For example, %2F.]]>
      </description-html>
      </parameter>
      <parameter name="asTemplate" type-id-ref="BOOLEAN"
      vmodl-name="asTemplate"
      version-id-ref="vim.version.version1"
      privilege="asTemplate"
      >
      <description-html>
         <![CDATA[Flag to specify whether or not the virtual machine
         should be marked as a template.]]>
      </description-html>
      </parameter>
      <parameter name="pool" type-id-ref="vim.ResourcePool"
      vmodl-name="pool"
      version-id-ref="vim.version.version1"
      is-optional="true"
      privilege="pool"
      >
      <description-html>
         <![CDATA[The resource pool to which the virtual machine should be attached.
         If imported as a template, this parameter is not set.]]>
      </description-html>
      </parameter>
      <parameter name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      version-id-ref="vim.version.version1"
      is-optional="true"
      privilege="host"
      >
      <description-html>
         <![CDATA[The target host on which the virtual machine will run. This parameter
         must specify a host that is a member of the ComputeResource indirectly
         specified by the pool. For a stand-alone host or a cluster,
         the parameter can be omitted, and the system selects a default.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.OutOfBounds">
      <fault-description-html>
         <![CDATA[if the maximum number of VMs for this folder has been
          exceeded. The maximum number is determined by
          Host.capability.maxSupportedVMs.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.DuplicateName">
      <fault-description-html>
         <![CDATA[if another virtual machine in the same folder has
          the target name.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.AlreadyExists">
      <fault-description-html>
         <![CDATA[if the virtual machine is already registered.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidDatastore">
      <fault-description-html>
         <![CDATA[if the operation cannot be performed on the
          target datastores.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[if the configuration file is not found on the system.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidName">
      <fault-description-html>
         <![CDATA[if the entity name is invalid.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.VmConfigFault">
      <fault-description-html>
         <![CDATA[if the format / configuration of the virtual machine
          is invalid. Typically, a more specific fault is thrown such as
          InvalidFormat if the configuration file cannot be read, or
          InvalidDiskFormat if the disks cannot be read.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InsufficientResourcesFault">
      <fault-description-html>
         <![CDATA[if this operation would violate a resource
          usage policy.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.FileFault">
      <fault-description-html>
         <![CDATA[if there is an error accessing the files on disk.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the operation is not allowed in current state of
          the entities involved.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[the newly registered VirtualMachine.]]>
      </return-value-description-html>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to monitor the
        operation. The <a href="vim.TaskInfo.html#result">result</a> property in the
        <a href="vim.Task.html">Task</a> contains the newly registered <a href="vim.VirtualMachine.html">VirtualMachine</a>
        upon success.]]>
      </task-description-html>
   </method>
   <method name="CreateCluster"
      vmodl-name="createCluster"
      is-deprecated="true"
      privilege="Host.Inventory.CreateCluster"
      type-id-ref="vim.ClusterComputeResource"
      >
      <description-html>
         <![CDATA[Creates a new cluster compute resource in this folder.
  <p>
  Any % (percent) character used in this name parameter must be escaped, unless it
  is used to start an escape sequence. Clients may also escape any other characters
  in this name parameter.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of VI API 2.5, use <a href="vim.Folder.html#createClusterEx">CreateClusterEx</a>.]]>
      </deprecated-html>
      <parameter name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      version-id-ref="vim.version.version1"
      privilege="name"
      >
      <description-html>
         <![CDATA[Name for the new cluster.]]>
      </description-html>
      </parameter>
      <parameter name="spec" type-id-ref="vim.cluster.ConfigSpec"
      vmodl-name="spec"
      version-id-ref="vim.version.version1"
      privilege="spec"
      >
      <description-html>
         <![CDATA[Specification for the cluster.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.DuplicateName">
      <fault-description-html>
         <![CDATA[if an entity with that name already exists.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidName">
      <fault-description-html>
         <![CDATA[if the name is not a valid entity name.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[A new ClusterComputeResource instance.]]>
      </return-value-description-html>
   </method>
   <method name="CreateClusterEx"
      vmodl-name="createClusterEx"
      version-id-ref="vim.version.version2"
      privilege="Host.Inventory.CreateCluster"
      type-id-ref="vim.ClusterComputeResource"
      >
      <description-html>
         <![CDATA[Creates a new cluster compute resource in this folder.
  <p>
  Any % (percent) character used in this name parameter must be escaped, unless it
  is used to start an escape sequence. Clients may also escape any other characters
  in this name parameter.]]>
      </description-html>
      <parameter name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      version-id-ref="vim.version.version2"
      privilege="name"
      >
      <description-html>
         <![CDATA[Name for the new cluster.]]>
      </description-html>
      </parameter>
      <parameter name="spec" type-id-ref="vim.cluster.ConfigSpecEx"
      vmodl-name="spec"
      version-id-ref="vim.version.version2"
      privilege="spec"
      >
      <description-html>
         <![CDATA[Specification for the cluster.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.DuplicateName">
      <fault-description-html>
         <![CDATA[if an entity with that name already exists.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidName">
      <fault-description-html>
         <![CDATA[if the name is not a valid entity name.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[A new ClusterComputeResource instance.]]>
      </return-value-description-html>
   </method>
   <method name="AddStandaloneHost"
      vmodl-name="addStandaloneHost"
      privilege="Host.Inventory.AddStandaloneHost"
      type-id-ref="vim.ComputeResource"
      is-task="true"
      >
      <description-html>
         <![CDATA[Creates a new single-host compute resource. The name provided can be an
  IP address, such as 192.168.0.120, or a string, such as esx120.
  If a name is specified, a DNS lookup is used to resolve it to a fully-qualified
  name, such as esx120.vmware.com. If the DNS lookup fails, the string is
  stored as specified.
  <p>
  Licenses for the host are allocated when making the first connection to
  the host. This is because the license needed typically depends on the type
  of host and the number of CPUs.

  <p>
  In addition to the Host.Inventory.AddStandaloneHost privilege, it
  requires System.View privilege on the VM folder that the VMs of the
  host will be placed on.]]>
      </description-html>
      <parameter name="spec" type-id-ref="vim.host.ConnectSpec"
      vmodl-name="spec"
      version-id-ref="vim.version.version1"
      privilege="spec"
      >
      <description-html>
         <![CDATA[Specifies the parameters needed to add a single host.]]>
      </description-html>
      </parameter>
      <parameter name="compResSpec" type-id-ref="vim.ComputeResource.ConfigSpec"
      vmodl-name="compResSpec"
      version-id-ref="vim.version.version1"
      is-optional="true"
      privilege="compResSpec"
      >
      <description-html>
         <![CDATA[Optionally specify the configuration for the compute
                     resource that will be created to contain the host.]]>
      </description-html>
      </parameter>
      <parameter name="addConnected" type-id-ref="BOOLEAN"
      vmodl-name="addConnected"
      version-id-ref="vim.version.version1"
      privilege="addConnected"
      >
      <description-html>
         <![CDATA[Flag to specify whether or not the host should be
                      connected as soon as it is added. The host will not
                      be added if a connection attempt is made and fails.]]>
      </description-html>
      </parameter>
      <parameter name="license" type-id-ref="java.lang.String"
      vmodl-name="license"
      version-id-ref="vim.version.version1"
      is-optional="true"
      privilege="license"
      >
      <description-html>
         <![CDATA[Provide a licenseKey or licenseKeyType. See <a href="vim.LicenseManager.html">LicenseManager</a>]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.InvalidLogin">
      <fault-description-html>
         <![CDATA[if authentication with the host fails.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.HostConnectFault">
      <fault-description-html>
         <![CDATA[if an error occurred when attempting to connect
          to a host. Typically, a more specific subclass, such as
          AlreadyBeingManaged, is thrown.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.DuplicateName">
      <fault-description-html>
         <![CDATA[if another host in the same folder has the name.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.AlreadyBeingManaged">
      <fault-description-html>
         <![CDATA[if the host is already being managed by a
          vCenter server. If the host is being managed by a different
          vCenter server, this can be overridden by the "force" flag in the
          connection specification.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.NoHost">
      <fault-description-html>
         <![CDATA[if the host cannot be contacted.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.NotSupportedHost">
      <fault-description-html>
         <![CDATA[if the host is running a software version that is not
                           supported.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.AgentInstallFailed">
      <fault-description-html>
         <![CDATA[if there is an error installing the vCenter
          agent on the new host.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.AlreadyConnected">
      <fault-description-html>
         <![CDATA[if addConnected is true and the host is already
          connected to vCenter.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.SSLVerifyFault">
      <fault-description-html>
         <![CDATA[if the host certificate could not be authenticated]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.GatewayNotFound">
      <fault-description-html>
         <![CDATA[if the host is managed via host gateway and
          no available gateway server is found for the given parameters]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.GatewayNotReachable">
      <fault-description-html>
         <![CDATA[if the host is managed via host gateway
          and vCenter Server cannot establish a network connection to the
          gateway server, or verify the gateway server's identity]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.GatewayOperationRefused">
      <fault-description-html>
         <![CDATA[if the gateway server cannot accept
          more host connections]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.GatewayHostNotReachable">
      <fault-description-html>
         <![CDATA[if the host is managed via host
          gateway and the gateway server cannot connect to the host]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.GatewayToHostTrustVerifyFault">
      <fault-description-html>
         <![CDATA[if the host is managed via host gateway
          and the gateway server cannot verify that the host is trusted]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.GatewayToHostAuthFault">
      <fault-description-html>
         <![CDATA[if the host is managed via host gateway
          and the gateway server needs additional information to
          authenticate before the host]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.GatewayConnectFault">
      <fault-description-html>
         <![CDATA[if the host is managed via host gateway
          and any error occurred during the communication with the gateway]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[the newly added ComputeResource.]]>
      </return-value-description-html>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to monitor the
        operation. The <a href="vim.TaskInfo.html#result">result</a> property in the
        <a href="vim.Task.html">Task</a> contains the newly added <a href="vim.ComputeResource.html">ComputeResource</a> upon
        success.]]>
      </task-description-html>
   </method>
   <method name="CreateDatacenter"
      vmodl-name="createDatacenter"
      privilege="Datacenter.Create"
      type-id-ref="vim.Datacenter"
      >
      <description-html>
         <![CDATA[Creates a new datacenter with the given name.
  <p>
  Any % (percent) character used in this name parameter must be escaped, unless it
  is used to start an escape sequence. Clients may also escape any other characters
  in this name parameter.]]>
      </description-html>
      <parameter name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      version-id-ref="vim.version.version1"
      privilege="name"
      >
      <description-html>
         <![CDATA[Name for the new datacenter. An entity name
               must be a non-empty string of less than 80 characters.
               The slash (/), backslash (\) and percent (%) will be escaped
               using the URL syntax. For example, %2F.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.DuplicateName">
      <fault-description-html>
         <![CDATA[if an entity with that name already exists.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidName">
      <fault-description-html>
         <![CDATA[if the new name is not a valid entity name.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[A new Datacenter instance.]]>
      </return-value-description-html>
   </method>
   <method name="UnregisterAndDestroy"
      vmodl-name="unregisterAndDestroy"
      privilege="Folder.Delete"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Recursively unregisters all virtual machines and vApps, and destroys
  all child virtual machine folders. This is similar to the Destroy_Task method,
  but this method calls UnregisterAndDestroy_Task on each virtual machine
  object instead of calling Destroy_Task.
  This operation applies only to VirtualMachine folders.
  <p>
  UnregisterAndDestroy_Task is a recursive operation that destroys the specified
  virtual machine folder, unregisters all child virtual machine objects, and destroys
  all child virtual machine folders. When you call UnregisterAndDestroy_Task
  to destroy a virtual machine folder, the system uses the specified folder
  as a root and traverses its descendant hierarchy, calling UnregisterAndDestroy_Task
  on each virtual machine object and Destroy_Task on each virtual machine folder.
  UnregisterAndDestroy_Task is a single operation that treats each recursive call
  as a single transaction, committing each call to remove an object individually.
  If a failure occurs, the method terminates at that point with an exception, leaving
  some or all objects unaffected.
  <p>
  If you are removing virtual machines, you must hold the VirtualMachine.Delete
  privilege on all of the virtual machines to be unregistered, and on their parent folders.
  If you are removing virtual applications, you must hold the VApp.Delete
  privilege on all of the virtual applications to be unregistered, and on their
  parent folders.]]>
      </description-html>
      <fault type-id-ref="vim.fault.ConcurrentAccess">
      <fault-description-html>
         <![CDATA[if another client modifies the folder contents
          before this operation completes.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if a virtual machine is not powered off or suspended.]]>
      </fault-description-html>
      </fault>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to monitor the
        operation.]]>
      </task-description-html>
   </method>
   <method name="CreateDVS"
      vmodl-name="createDistributedVirtualSwitch"
      version-id-ref="vim.version.version5"
      privilege="DVSwitch.Create"
      type-id-ref="vim.DistributedVirtualSwitch"
      is-task="true"
      >
      <description-html>
         <![CDATA[Create a <a href="vim.DistributedVirtualSwitch.html">DistributedVirtualSwitch</a> in the folder according to the
  specified <a href="vim.DistributedVirtualSwitch.CreateSpec.html">DVSCreateSpec</a>. The specified Folder
  must be a Network entity folder.]]>
      </description-html>
      <parameter name="spec" type-id-ref="vim.DistributedVirtualSwitch.CreateSpec"
      vmodl-name="spec"
      version-id-ref="vim.version.version5"
      privilege="spec"
      >
      <description-html>
         <![CDATA[The <a href="vim.DistributedVirtualSwitch.CreateSpec.html">DVSCreateSpec</a>
               to create the distributed virtual switch.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.DvsFault">
      </fault>
      <fault type-id-ref="vim.fault.DuplicateName">
      </fault>
      <fault type-id-ref="vim.fault.InvalidName">
      </fault>
      <fault type-id-ref="vim.fault.NotFound">
      </fault>
      <fault type-id-ref="vim.fault.DvsNotAuthorized">
      <fault-description-html>
         <![CDATA[if login-session's extension key does not match
          (<a href="vim.DistributedVirtualSwitch.ConfigInfo.html#extensionKey">extensionKey</a>).]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[A new DistributedVirtualSwitch instance.]]>
      </return-value-description-html>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to monitor
        the operation. After successful completion, the
        <a href="vim.Task.html">Task</a>.<a href="vim.Task.html#info">Info</a>.<a href="vim.TaskInfo.html#result">result</a> property
        contains the newly registered <a href="vim.DistributedVirtualSwitch.html">DistributedVirtualSwitch</a>.]]>
      </task-description-html>
   </method>
   <method name="CreateStoragePod"
      vmodl-name="createStoragePod"
      version-id-ref="vim.version.version7"
      privilege="Folder.Create"
      type-id-ref="vim.StoragePod"
      >
      <description-html>
         <![CDATA[Creates a new storage pod in this folder.
  <p>
  Any % (percent) character used in this name parameter must be escaped, unless it
  is used to start an escape sequence. Clients may also escape any other characters
  in this name parameter.]]>
      </description-html>
      <parameter name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      version-id-ref="vim.version.version7"
      privilege="name"
      >
      <description-html>
         <![CDATA[Name for the new storage pod.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.DuplicateName">
      <fault-description-html>
         <![CDATA[if an entity with that name already exists.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidName">
      <fault-description-html>
         <![CDATA[if the name is not a valid entity name.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[A new StoragePod instance.]]>
      </return-value-description-html>
   </method>
   <method name="BatchAddStandaloneHosts"
      vmodl-name="batchAddStandaloneHosts"
      version-id-ref="vim.version.version13"
      privilege="Host.Inventory.AddStandaloneHost"
      type-id-ref="vim.Folder.BatchAddStandaloneHostsResult"
      is-task="true"
      >
      <description-html>
         <![CDATA[Adds a list of hosts to inventory, as standalone hosts,
  in a single invocation. The operation returns a result containing
  a list of hosts that are successfully added.

  <p>
  In addition to the Host.Inventory.AddStandaloneHost privilege, the operation
  requires System.View privilege on the VM folder that the VMs of the
  host will be placed on.]]>
      </description-html>
      <parameter name="newHosts" type-id-ref="vim.Folder.NewHostSpec"
      vmodl-name="newHosts"
      version-id-ref="vim.version.version13"
      is-array="true"
      is-optional="true"
      privilege="newHosts"
      >
      <description-html>
         <![CDATA[Specifies a list of host specifications for new hosts.]]>
      </description-html>
      </parameter>
      <parameter name="compResSpec" type-id-ref="vim.ComputeResource.ConfigSpec"
      vmodl-name="compResSpec"
      version-id-ref="vim.version.version13"
      is-optional="true"
      privilege="compResSpec"
      >
      <description-html>
         <![CDATA[Specifies the configuration for the compute
                     resource that will be created to contain all the
                     hosts.]]>
      </description-html>
      </parameter>
      <parameter name="addConnected" type-id-ref="BOOLEAN"
      vmodl-name="addConnected"
      version-id-ref="vim.version.version13"
      privilege="addConnected"
      >
      <description-html>
         <![CDATA[Flag to specify whether or not hosts should be
                      connected at the time they are added. A host will not
                      be added if a connection attempt is made and fails.]]>
      </description-html>
      </parameter>
      <return-value-description-html>
         <![CDATA[A batch result containing references to added hosts and a fault for
  each failed host.]]>
      </return-value-description-html>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to monitor
        the operation.]]>
      </task-description-html>
   </method>
   <method name="BatchAddHostsToCluster"
      vmodl-name="batchAddHostsToCluster"
      version-id-ref="vim.version.version13"
      type-id-ref="vim.Folder.BatchAddHostsToClusterResult"
      is-task="true"
      >
      <description-html>
         <![CDATA[Adds a set of new and existing hosts to the cluster.

  This API is a composite API and performs the following tasks before hosts
  become part of the specified cluter -
  <ul>
     <li> Adds all new hosts as standalone hosts.
     <li> Move each host to the desired state.
     <li> Move each host to the cluster.
  </ul>

  The dynamic privilege check will ensure that appropriate privileges
  are acquired to allow this API to perform multiple actions on hosts
  and cluster. Required privileges -
  <ul>
     <li> Host.Inventory.EditCluster on cluster
     <li> Host.Config.Maintenance on the hosts if desiredState is set
     <li> Privileges for <a href="vim.Folder.html#batchAddStandaloneHosts">BatchAddStandaloneHosts_Task</a> if newHosts is
     set
     <li> Host.Inventory.EditCluster on the hosts' source ComputeResource
     <li> Host.Inventory.MoveHost on the hosts
  <ul>]]>
      </description-html>
      <parameter name="cluster" type-id-ref="vim.ClusterComputeResource"
      vmodl-name="cluster"
      version-id-ref="vim.version.version13"
      privilege="cluster"
      >
      <description-html>
         <![CDATA[Specifies the cluster to which hosts need to be
  added.]]>
      </description-html>
      </parameter>
      <parameter name="newHosts" type-id-ref="vim.Folder.NewHostSpec"
      vmodl-name="newHosts"
      version-id-ref="vim.version.version13"
      is-array="true"
      is-optional="true"
      privilege="newHosts"
      >
      <description-html>
         <![CDATA[Specifies a list of new hosts to be added to
  the cluster. Hosts are first added as standalone hosts.]]>
      </description-html>
      </parameter>
      <parameter name="existingHosts" type-id-ref="vim.HostSystem"
      vmodl-name="existingHosts"
      version-id-ref="vim.version.version13"
      is-array="true"
      is-optional="true"
      privilege="existingHosts"
      >
      <description-html>
         <![CDATA[Specifies a list of existing hosts to be
  added to the cluster. Hosts are first moved to the desired state
  before moving them to cluster.]]>
      </description-html>
      </parameter>
      <parameter name="compResSpec" type-id-ref="vim.ComputeResource.ConfigSpec"
      vmodl-name="compResSpec"
      version-id-ref="vim.version.version13"
      is-optional="true"
      privilege="compResSpec"
      >
      <description-html>
         <![CDATA[Specifies the configuration for the compute
  resource that will be created to contain all the hosts.]]>
      </description-html>
      </parameter>
      <parameter name="desiredState" type-id-ref="java.lang.String"
      vmodl-name="desiredState"
      version-id-ref="vim.version.version13"
      is-optional="true"
      privilege="desiredState"
      >
      <description-html>
         <![CDATA[Specifies desired state for hosts once added to
  the cluster. If not specified, hosts are added to the cluster in their
  current state. See <a href="vim.Folder.DesiredHostState.html">FolderDesiredHostState</a> for valid values.]]>
      </description-html>
      </parameter>
      <return-value-description-html>
         <![CDATA[A batch result containing references to added hosts and a fault for
  each failed host.]]>
      </return-value-description-html>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to monitor
        the operation.]]>
      </task-description-html>
   </method>
   </managed-object>
   <managed-object name="HostImageConfigManager"
      type-id="vim.host.ImageConfigManager"
      vmodl-name="vim.host.ImageConfigManager"
      version-id-ref="vim.version.version7"
      >
      <description-html>
         <![CDATA[This managed object is the interface for
  configuration of the ESX software image, including
  properties such as acceptance level.
  It is currently designed to be host agent specific.]]>
      </description-html>
      <nested-type-id-ref>vim.host.ImageConfigManager.AcceptanceLevel</nested-type-id-ref>
      <nested-type-id-ref>vim.host.ImageConfigManager.ImageProfileSummary</nested-type-id-ref>
   <method name="HostImageConfigGetAcceptance"
      vmodl-name="queryHostAcceptanceLevel"
      privilege="System.Read"
      type-id-ref="java.lang.String"
      >
      <description-html>
         <![CDATA[Queries the current host acceptance level setting.<br>See <a href="vim.host.ImageConfigManager.AcceptanceLevel.html">HostImageAcceptanceLevel</a><br>]]>
      </description-html>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[if the host acceptance setting is invalid.<br>See <a href="vim.host.ImageConfigManager.AcceptanceLevel.html">HostImageAcceptanceLevel</a><br>]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="HostImageConfigGetProfile"
      vmodl-name="queryHostImageProfile"
      privilege="System.Read"
      type-id-ref="vim.host.ImageConfigManager.ImageProfileSummary"
      >
      <description-html>
         <![CDATA[Queries the current host image profile information.<br>See <a href="vim.host.ImageConfigManager.ImageProfileSummary.html">HostImageProfileSummary</a><br>]]>
      </description-html>
   </method>
   <method name="UpdateHostImageAcceptanceLevel"
      vmodl-name="updateAcceptanceLevel"
      privilege="Host.Config.Image"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Sets the acceptance level of the host image profile.<br>See <a href="vim.host.ImageConfigManager.AcceptanceLevel.html">HostImageAcceptanceLevel</a><br>]]>
      </description-html>
      <parameter name="newAcceptanceLevel" type-id-ref="java.lang.String"
      vmodl-name="newAcceptanceLevel"
      version-id-ref="vim.version.version7"
      privilege="newAcceptanceLevel"
      >
      <description-html>
         <![CDATA[the new AcceptanceLevel to set.<br>See <a href="vim.host.ImageConfigManager.AcceptanceLevel.html">HostImageAcceptanceLevel</a><br>]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[if the acceptance level is raised and there are
                          VIB packages that are not permitted by the
                          higher acceptance level.<br>See <a href="vim.host.ImageConfigManager.AcceptanceLevel.html">HostImageAcceptanceLevel</a><br>]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="fetchSoftwarePackages"
      vmodl-name="fetchSoftwarePackages"
      version-id-ref="vim.version.version11"
      is-array="true"
      is-optional="true"
      privilege="Host.Config.Image"
      type-id-ref="vim.host.SoftwarePackage"
      >
      <description-html>
         <![CDATA[Reports the set of software packages installed. The
  CLI command is: esxcli software vib get]]>
      </description-html>
   </method>
   <method name="installDate"
      vmodl-name="installDate"
      version-id-ref="vim.version.version11"
      privilege="Host.Config.Image"
      type-id-ref="vmodl.DateTime"
      >
      <description-html>
         <![CDATA[Reports the UTC time stamp when this system was first installed. The
 CLI command is: esxcli system stats installtime get]]>
      </description-html>
   </method>
   </managed-object>
   <managed-object name="InventoryView"
      type-id="vim.view.InventoryView"
      vmodl-name="vim.view.InventoryView"
      version-id-ref="vim.version.version2"
      base-type-id="vim.view.ManagedObjectView"
      >
      <description-html>
         <![CDATA[The <a href="vim.view.InventoryView.html">InventoryView</a> managed object provides a means of browsing the inventory and tracking
  changes to open folders. This managed object is particularly useful for UI clients that
  display a tree-based navigation panel of the inventory.
  <p>
  <a href="vim.view.InventoryView.html">InventoryView</a> maintains the <a href="vim.view.ManagedObjectView.html#view">View</a> list
  of managed object references to inventory objects. When you create an inventory view
  (<a href="vim.view.ViewManager.html#createInventoryView">CreateInventoryView</a>), the server initializes the view's object
  list with a single folder - the root folder.
  <p>
  <a href="vim.view.InventoryView.html">InventoryView</a> provides methods to open and close folders in the inventory. Use these
  methods to add and subtract objects from the <a href="vim.view.ManagedObjectView.html#view">View</a> list.
  Use the <a href="vim.view.InventoryView.html">InventoryView</a> together with the <a href="vmodl.query.PropertyCollector.html">PropertyCollector</a>
  to manage the data resulting from <a href="vim.view.InventoryView.html#openFolder">OpenInventoryViewFolder</a>
  and <a href="vim.view.InventoryView.html#closeFolder">CloseInventoryViewFolder</a> methods. By using the <a href="vmodl.query.PropertyCollector.html">PropertyCollector</a>,
  you have access to the modifications to the view, rather than processing the entire view list.
  <p>
  For example, you might use the following sequence of operations with
  an <a href="vim.view.InventoryView.html">InventoryView</a> and the <a href="vmodl.query.PropertyCollector.html">PropertyCollector</a>:
  <ol>
     <li>Create an <a href="vim.view.InventoryView.html">InventoryView</a>.
     <li>Create a filter specification for the <a href="vmodl.query.PropertyCollector.html">PropertyCollector</a>.
     <ul>
         <li>Use the <a href="vim.view.InventoryView.html">InventoryView</a> as the starting object in the
             <a href="vmodl.query.PropertyCollector.ObjectSpec.html">ObjectSpec</a> for the filter.
         <li>Use a set of <a href="vmodl.query.PropertyCollector.TraversalSpec.html">TraversalSpec</a>
             data objects to identify paths in possible inventory configurations.
         <li>Use the <a href="vmodl.query.PropertyCollector.PropertySpec.html">PropertySpec</a>
             to identify object properties for retrieval.
     </ul>
     <li>Use either the <a href="vmodl.query.PropertyCollector.html#checkForUpdates">CheckForUpdates</a> or
         <a href="vmodl.query.PropertyCollector.html#waitForUpdates">WaitForUpdates</a> method to obtain
         <a href="vim.view.InventoryView.html">InventoryView</a> modifications. Both methods return
         an <a href="vmodl.query.PropertyCollector.UpdateSet.html">UpdateSet</a> object that describes
         the changes returned by the <a href="vmodl.query.PropertyCollector.html">PropertyCollector</a>.
     <li>Call the <a href="vim.view.InventoryView.html#openFolder">OpenInventoryViewFolder</a> or <a href="vim.view.InventoryView.html#closeFolder">CloseInventoryViewFolder</a>.
  </ol>]]>
      </description-html>
   <method name="OpenInventoryViewFolder"
      vmodl-name="openFolder"
      is-array="true"
      is-optional="true"
      type-id-ref="vim.ManagedEntity"
      >
      <description-html>
         <![CDATA[Adds the child objects of a given managed entity to the view.
  <p>
  If a <a href="vim.Datacenter.html">Datacenter</a> is returned as a child, the implicit virtual machine folder and
  host folder objects are also returned. If a <a href="vim.ComputeResource.html">ComputeResource</a> is returned,
  the implicit root <a href="vim.ResourcePool.html">ResourcePool</a> and <a href="vim.HostSystem.html">HostSystem</a> objects are also returned.
  <p>
  May partially succeed if some entities could not be resolved.  The operation
  will still succeed for all entities which could be resolved, and the
  list of those which failed is returned as the result.]]>
      </description-html>
      <parameter name="entity" type-id-ref="vim.ManagedEntity"
      vmodl-name="entity"
      version-id-ref="vim.version.version2"
      is-array="true"
      privilege="entity"
      >
      <description-html>
         <![CDATA[An array of managed object references. Each array entry is a reference
                to an entity to expand.  Expands each entity in the
                order given.  If an entity is not in the current view,
                expands the view as needed.]]>
      </description-html>
      </parameter>
      <return-value-description-html>
         <![CDATA[A list containing any entities in the argument could not be resolved.]]>
      </return-value-description-html>
   </method>
   <method name="CloseInventoryViewFolder"
      vmodl-name="closeFolder"
      is-array="true"
      is-optional="true"
      type-id-ref="vim.ManagedEntity"
      >
      <description-html>
         <![CDATA[Notify the server that folder(s) have been closed, and changes for all
  its contained objects should no longer be sent.  The associated child
  objects are removed from the view. The containers themselves
  will still be retained as open objects until their parent is closed.
  <p>
  May partially succeed if some entities could not be resolved.  The operation
  will still succeed for all entities that could be resolved, and the
  list of those that failed is returned as the result.]]>
      </description-html>
      <parameter name="entity" type-id-ref="vim.ManagedEntity"
      vmodl-name="entity"
      version-id-ref="vim.version.version2"
      is-array="true"
      privilege="entity"
      >
      <description-html>
         <![CDATA[An array of managed object references. Each array entry is a
                reference to an entity to collapse.]]>
      </description-html>
      </parameter>
      <return-value-description-html>
         <![CDATA[A list containing any entities in the argument could not be resolved.]]>
      </return-value-description-html>
   </method>
   </managed-object>
   <managed-object name="VirtualMachineProvisioningChecker"
      type-id="vim.vm.check.ProvisioningChecker"
      vmodl-name="vim.vm.check.ProvisioningChecker"
      version-id-ref="vim.version.version5"
      >
      <description-html>
         <![CDATA[A singleton managed object that can answer questions about
  the feasibility of certain provisioning operations.]]>
      </description-html>
   <method name="QueryVMotionCompatibilityEx"
      vmodl-name="queryVMotionCompatibilityEx"
      is-array="true"
      privilege="System.View"
      type-id-ref="vim.vm.check.Result"
      is-task="true"
      >
      <description-html>
         <![CDATA[Investigates the general VMotion compatibility of a set of virtual machines
  with a set of hosts. The virtual machine may be in any power state. Hosts
  may be in any connection state and also may be in maintenance mode.]]>
      </description-html>
      <parameter name="vm" type-id-ref="vim.VirtualMachine"
      vmodl-name="vm"
      version-id-ref="vim.version.version5"
      is-array="true"
      privilege="vm"
      >
      <description-html>
         <![CDATA[The set of virtual machines to analyze for compatibility.  All
        virtual machines are assumed to be powered-on for the purposes of
        this operation.]]>
      </description-html>
      </parameter>
      <parameter name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      version-id-ref="vim.version.version5"
      is-array="true"
      privilege="host"
      >
      <description-html>
         <![CDATA[The set of hosts to analyze for compatibility.  All hosts
        are assumed to be connected and not in maintenance mode for the
        purposes of this operation.]]>
      </description-html>
      </parameter>
      <return-value-description-html>
         <![CDATA[The problems associated with these potential VMotions.
         A <a href="vim.vm.check.Result.html">CheckResult</a> is returned for each vm/host
         combination.]]>
      </return-value-description-html>
   </method>
   <method name="CheckMigrate"
      vmodl-name="checkMigrate"
      is-array="true"
      privilege="System.View"
      type-id-ref="vim.vm.check.Result"
      is-task="true"
      >
      <description-html>
         <![CDATA[Tests the feasibility of a proposed
  <a href="vim.VirtualMachine.html#migrate">MigrateVM_Task</a> operation.]]>
      </description-html>
      <parameter name="vm" type-id-ref="vim.VirtualMachine"
      vmodl-name="vm"
      version-id-ref="vim.version.version5"
      privilege="vm"
      >
      <description-html>
         <![CDATA[The virtual machine we propose to migrate.]]>
      </description-html>
      </parameter>
      <parameter name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      version-id-ref="vim.version.version5"
      is-optional="true"
      privilege="host"
      >
      <description-html>
         <![CDATA[The target host on which the virtual machines will run. The host
        parameter may be left unset if the compute resource associated with
        the target pool represents a stand-alone host or a DRS-enabled
        cluster. In the former case the stand-alone host is used as the
        target host. In the latter case, each connected host in the cluster
        that is not in maintenance mode is tested as a target host.
        If the virtual machine is a template then either this
        parameter or the pool parameter must be set.]]>
      </description-html>
      </parameter>
      <parameter name="pool" type-id-ref="vim.ResourcePool"
      vmodl-name="pool"
      version-id-ref="vim.version.version5"
      is-optional="true"
      privilege="pool"
      >
      <description-html>
         <![CDATA[The target resource pool for the virtual machines. If the
        pool parameter is left unset, the target pool for each particular
        virtual machine's migration will be that virtual machine's current
        pool.  If the virtual machine is a template then either this
        parameter or the host parameter must be set.
        The pool parameter must be set for testing the feasibility of
        migration to a different datacenter or different vCenter service.]]>
      </description-html>
      </parameter>
      <parameter name="state" type-id-ref="vim.VirtualMachine.PowerState"
      vmodl-name="state"
      version-id-ref="vim.version.version5"
      is-optional="true"
      privilege="state"
      >
      <description-html>
         <![CDATA[The power state that the virtual machines must have. If
        this argument is not set, each virtual machine is evaluated
        according to its current power state.]]>
      </description-html>
      </parameter>
      <parameter name="testType" type-id-ref="java.lang.String"
      vmodl-name="testType"
      version-id-ref="vim.version.version5"
      is-array="true"
      is-optional="true"
      privilege="testType"
      >
      <description-html>
         <![CDATA[The set of tests to run. If this argument is not set, all
        tests will be run.  See <a href="vim.vm.check.TestType.html">CheckTestType</a> for possible values.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.InvalidState">
      </fault>
      <fault type-id-ref="vim.fault.InvalidPowerState">
      <fault-description-html>
         <![CDATA[if the state argument is set and at least one
         of the specified virtual machines is not in that power state.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[The problems associated with this potential migrate.
         If multiple hosts are tested against a <a href="vim.vm.check.Result.html">CheckResult</a>
         is returned for each host.]]>
      </return-value-description-html>
   </method>
   <method name="CheckRelocate"
      vmodl-name="checkRelocate"
      is-array="true"
      privilege="System.View"
      type-id-ref="vim.vm.check.Result"
      is-task="true"
      >
      <description-html>
         <![CDATA[Tests the feasibility of a proposed
  <a href="vim.VirtualMachine.html#relocate">RelocateVM_Task</a> operation.]]>
      </description-html>
      <parameter name="vm" type-id-ref="vim.VirtualMachine"
      vmodl-name="vm"
      version-id-ref="vim.version.version5"
      privilege="vm"
      >
      <description-html>
         <![CDATA[The virtual machine we propose to relocate.]]>
      </description-html>
      </parameter>
      <parameter name="spec" type-id-ref="vim.vm.RelocateSpec"
      vmodl-name="spec"
      version-id-ref="vim.version.version5"
      privilege="spec"
      >
      <description-html>
         <![CDATA[The specification of where to relocate the virtual machine.
        In cases where DRS would automatically select a host, all potential
        hosts are tested against.
        The host parameter in the spec may be left unset for checking
        feasibility of relocation to a different datacenter or different
        vCenter service, if the compute resource associated with the
        target pool represents a stand-alone host, the host is tested
        against, otherwise each connected host in the cluster that is
        not in maintenance mode represented by the target pool is tested
        as a target host.]]>
      </description-html>
      </parameter>
      <parameter name="testType" type-id-ref="java.lang.String"
      vmodl-name="testType"
      version-id-ref="vim.version.version5"
      is-array="true"
      is-optional="true"
      privilege="testType"
      >
      <description-html>
         <![CDATA[The set of tests to run. If this argument is not set, all
        tests will be run.  See <a href="vim.vm.check.TestType.html">CheckTestType</a> for possible values.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the operation cannot be performed because of the
         host or virtual machine's current state. For example, if the host is in
         maintenance mode, or if the virtual machine's configuration information
         is not available.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[The problems associated with this potential relocate.
         If multiple hosts are tested against a <a href="vim.vm.check.Result.html">CheckResult</a>
         is returned for each host.]]>
      </return-value-description-html>
   </method>
   <method name="CheckClone"
      vmodl-name="checkClone"
      internal-before-version-id-ref="vim.version.version12"
      is-array="true"
      privilege="System.View"
      type-id-ref="vim.vm.check.Result"
      is-task="true"
      >
      <description-html>
         <![CDATA[Tests the feasibility of a proposed
  <a href="vim.VirtualMachine.html#clone">CloneVM_Task</a> operation.]]>
      </description-html>
      <parameter name="vm" type-id-ref="vim.VirtualMachine"
      vmodl-name="vm"
      version-id-ref="vim.version.version5"
      privilege="vm"
      >
      <description-html>
         <![CDATA[The virtual machine we propose to clone.]]>
      </description-html>
      </parameter>
      <parameter name="folder" type-id-ref="vim.Folder"
      vmodl-name="folder"
      version-id-ref="vim.version.version5"
      privilege="folder"
      >
      <description-html>
         <![CDATA[The location of the new virtual machine.]]>
      </description-html>
      </parameter>
      <parameter name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      version-id-ref="vim.version.version5"
      privilege="name"
      >
      <description-html>
         <![CDATA[The name of the new virtual machine.]]>
      </description-html>
      </parameter>
      <parameter name="spec" type-id-ref="vim.vm.CloneSpec"
      vmodl-name="spec"
      version-id-ref="vim.version.version5"
      privilege="spec"
      >
      <description-html>
         <![CDATA[Specifies how to clone the virtual machine.  In cases
        where DRS would automatically select a host, all potential
        hosts are tested against.]]>
      </description-html>
      </parameter>
      <parameter name="testType" type-id-ref="java.lang.String"
      vmodl-name="testType"
      version-id-ref="vim.version.version5"
      is-array="true"
      is-optional="true"
      privilege="testType"
      >
      <description-html>
         <![CDATA[The set of tests to run. If this argument is not set, all
        tests will be run.  See <a href="vim.vm.check.TestType.html">CheckTestType</a> for possible values.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the operation cannot be performed because of the
         virtual machine's current state. For example, if the virtual machine
         configuration information is not available.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[The problems associated with this potential clone.
         If multiple hosts are tested against a <a href="vim.vm.check.Result.html">CheckResult</a>
         is returned for each host.]]>
      </return-value-description-html>
   </method>
   <method name="CheckInstantClone"
      vmodl-name="checkInstantClone"
      version-id-ref="vim.version.version12"
      is-array="true"
      is-optional="true"
      privilege="System.View"
      type-id-ref="vim.vm.check.Result"
      is-task="true"
      >
      <description-html>
         <![CDATA[Tests the feasibility of a proposed
  <a href="vim.VirtualMachine.html#instantClone">InstantClone_Task</a> operation.]]>
      </description-html>
      <parameter name="vm" type-id-ref="vim.VirtualMachine"
      vmodl-name="vm"
      version-id-ref="vim.version.version12"
      privilege="vm"
      >
      <description-html>
         <![CDATA[The virtual machine we propose to instant clone.]]>
      </description-html>
      </parameter>
      <parameter name="spec" type-id-ref="vim.vm.InstantCloneSpec"
      vmodl-name="spec"
      version-id-ref="vim.version.version12"
      privilege="spec"
      >
      <description-html>
         <![CDATA[Specifies how to instant clone the virtual machine.]]>
      </description-html>
      </parameter>
      <parameter name="testType" type-id-ref="java.lang.String"
      vmodl-name="testType"
      version-id-ref="vim.version.version12"
      is-array="true"
      is-optional="true"
      privilege="testType"
      >
      <description-html>
         <![CDATA[The set of tests to run. If this argument is not set, all
        tests will be run.  See <a href="vim.vm.check.TestType.html">CheckTestType</a> for possible values.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the operation cannot be performed because of the
         virtual machine's current state. For example, if the virtual
         machine configuration information is not available.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[The problems associated with this potential instant clone.
         If multiple hosts are tested against a <a href="vim.vm.check.Result.html">CheckResult</a>
         is returned for each host.]]>
      </return-value-description-html>
   </method>
   </managed-object>
   <managed-object name="HostVsanSystem"
      type-id="vim.host.VsanSystem"
      vmodl-name="vim.host.VsanSystem"
      version-id-ref="vim.version.version9"
      >
      <description-html>
         <![CDATA[The VsanSystem managed object type exposes VSAN configuration
 primitives and serves as a host-level access point for relevant
 VSAN data objects.]]>
      </description-html>
            <property name="config" type-id-ref="vim.vsan.host.ConfigInfo"
      vmodl-name="config"
      privilege="System.Read"
      >
      <description-html>
         <![CDATA[The current VSAN service configuration information for this host.]]>
      </description-html>
      </property>

   <method name="QueryDisksForVsan"
      vmodl-name="queryDisksForVsan"
      is-array="true"
      is-optional="true"
      privilege="System.Read"
      type-id-ref="vim.vsan.host.DiskResult"
      >
      <description-html>
         <![CDATA[Queries disks on this host for suitability to use with the VSAN service,
 and returns the result.<br>See vim.host.ScsiDisk#canonicalName]]>
      </description-html>
      <parameter name="canonicalName" type-id-ref="java.lang.String"
      vmodl-name="canonicalName"
      version-id-ref="vim.version.version9"
      is-array="true"
      is-optional="true"
      privilege="canonicalName"
      >
      <description-html>
         <![CDATA[may be set to restrict the query to the list of
        <a href="vim.host.ScsiDisk.html">HostScsiDisk</a> objects named by the
        given paths<br>See vim.host.ScsiDisk#canonicalName]]>
      </description-html>
      </parameter>
      <return-value-description-html>
         <![CDATA[a list of populated <a href="vim.vsan.host.DiskResult.html">VsanHostDiskResult</a> entries]]>
      </return-value-description-html>
   </method>
   <method name="AddDisks"
      vmodl-name="addDisks"
      is-array="true"
      is-optional="true"
      privilege="Host.Config.Storage"
      type-id-ref="vim.vsan.host.DiskMapResult"
      is-task="true"
      >
      <description-html>
         <![CDATA[Add the set of given disks for use by the VSAN service on this host.
 Users may use this API to manually add disks for use by VSAN, without
 specifying an explicit DiskMapping, when the VSAN service not
 configured to automatically claim storage. Any ineligible disk in
 the set of given disks and disks which would have exceeded
 the capacity will be ignored and will not be published in
 returned <a href="vim.TaskInfo.html#result">result</a>.
 <P>
 Mount a DiskMapping if the specified disk belongs to the
 unmounted mapping and is of type DiskMapping#ssd.
 <p>
 Upon successful completion of the returned <a href="vim.Task.html">Task</a>, its
 <a href="vim.TaskInfo.html#result">result</a> field will be populated with a
 <a href="vim.vsan.host.DiskMapResult.html">VsanHostDiskMapResult</a>[] and caller must inspect
 <a href="vim.vsan.host.DiskMapResult.html">VsanHostDiskMapResult</a>[] to check result for individual
 DiskMapping.<br>See <a href="vim.host.VsanSystem.html#queryDisksForVsan">QueryDisksForVsan</a><br>See <a href="vim.vsan.host.ConfigInfo.StorageInfo.html#autoClaimStorage">autoClaimStorage</a><br>See <a href="vim.vsan.host.DiskMapInfo.html#mounted">mounted</a><br>]]>
      </description-html>
      <parameter name="disk" type-id-ref="vim.host.ScsiDisk"
      vmodl-name="disk"
      version-id-ref="vim.version.version9"
      is-array="true"
      privilege="disk"
      >
      <description-html>
         <![CDATA[list of disks to add for use by the VSAN service<br>See <a href="vim.host.VsanSystem.html#queryDisksForVsan">QueryDisksForVsan</a><br>See <a href="vim.vsan.host.ConfigInfo.StorageInfo.html#autoClaimStorage">autoClaimStorage</a><br>See <a href="vim.vsan.host.DiskMapInfo.html#mounted">mounted</a><br>]]>
      </description-html>
      </parameter>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to
       monitor the operation.]]>
      </task-description-html>
   </method>
   <method name="InitializeDisks"
      vmodl-name="initializeDisks"
      is-array="true"
      is-optional="true"
      privilege="Host.Config.Storage"
      type-id-ref="vim.vsan.host.DiskMapResult"
      is-task="true"
      >
      <description-html>
         <![CDATA[Initialize and use the sets of disks in the given DiskMapping list
 for the VSAN service on this host. Users may use this API to specify or
 change disk mappings when the VSAN service is not configured to
 automatically claim storage. For appending new non-SSDs to an existing
 DiskMapping, users need to specify only the new non-SSDs with its
 DiskMapping#ssd.
 <p>
 Mount a DiskMapping if the specified DiskMapping is not
 mounted in this host.
 <p>
 Upon successful completion of the returned <a href="vim.Task.html">Task</a>, its
 <a href="vim.TaskInfo.html#result">result</a> field will be populated with a
 <a href="vim.vsan.host.DiskMapResult.html">VsanHostDiskMapResult</a>[] and caller must inspect
 <a href="vim.vsan.host.DiskMapResult.html">VsanHostDiskMapResult</a>[] to check result for individual
 DiskMapping.<br>See <a href="vim.host.VsanSystem.html#queryDisksForVsan">QueryDisksForVsan</a><br>See <a href="vim.vsan.host.ConfigInfo.StorageInfo.html#autoClaimStorage">autoClaimStorage</a><br>]]>
      </description-html>
      <parameter name="mapping" type-id-ref="vim.vsan.host.DiskMapping"
      vmodl-name="mapping"
      version-id-ref="vim.version.version9"
      is-array="true"
      privilege="mapping"
      >
      <description-html>
         <![CDATA[list of disk mappings to initialize<br>See <a href="vim.host.VsanSystem.html#queryDisksForVsan">QueryDisksForVsan</a><br>See <a href="vim.vsan.host.ConfigInfo.StorageInfo.html#autoClaimStorage">autoClaimStorage</a><br>]]>
      </description-html>
      </parameter>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to
       monitor the operation.]]>
      </task-description-html>
   </method>
   <method name="RemoveDisk"
      vmodl-name="removeDisk"
      is-array="true"
      is-optional="true"
      privilege="Host.Config.Storage"
      type-id-ref="vim.vsan.host.DiskResult"
      is-task="true"
      >
      <description-html>
         <![CDATA[Remove the set of given disks from use by the VSAN service on this host.
 Users may use this API to manually remove a DiskMapping#nonSsd
 from a DiskMapping. This operation is only permitted if the VSAN
 service on this host is not configured to automatically claim storage.
 <p>
 The task is cancellable.
 <p>
 This method may not be used to remove the last DiskMapping#nonSsd
 from any given DiskMapping. Removal of the last
 DiskMapping#nonSsd can be accomplished by using
 <a href="vim.host.VsanSystem.html#removeDiskMapping">RemoveDiskMapping_Task</a>.
 <p>
 Upon successful completion of the returned <a href="vim.Task.html">Task</a>, its
 <a href="vim.TaskInfo.html#result">result</a> field will be populated with a
 <a href="vim.vsan.host.DiskResult.html">VsanHostDiskResult</a>[]. Sets DiskIsLastRemainingNonSSD fault
 in returned task if specified disk is the last DiskMapping#nonSsd
 member of DiskMapping.<br>See <a href="vim.host.VsanSystem.html#removeDiskMapping">RemoveDiskMapping_Task</a><br>See <a href="vim.host.VsanSystem.html#update">UpdateVsan_Task</a><br>See <a href="vim.vsan.host.ConfigInfo.StorageInfo.html#autoClaimStorage">autoClaimStorage</a><br>]]>
      </description-html>
      <parameter name="disk" type-id-ref="vim.host.ScsiDisk"
      vmodl-name="disk"
      version-id-ref="vim.version.version9"
      is-array="true"
      privilege="disk"
      >
      <description-html>
         <![CDATA[list of disks to be removed from use by the VSAN service.<br>See <a href="vim.host.VsanSystem.html#removeDiskMapping">RemoveDiskMapping_Task</a><br>See <a href="vim.host.VsanSystem.html#update">UpdateVsan_Task</a><br>See <a href="vim.vsan.host.ConfigInfo.StorageInfo.html#autoClaimStorage">autoClaimStorage</a><br>]]>
      </description-html>
      </parameter>
      <parameter name="maintenanceSpec" type-id-ref="vim.host.MaintenanceSpec"
      vmodl-name="maintenanceSpec"
      version-id-ref="vim.version.version9"
      is-optional="true"
      privilege="maintenanceSpec"
      >
      <description-html>
         <![CDATA[Any additional actions to move data out of the disk
                        before removing it. See <a href="vim.host.MaintenanceSpec.html">HostMaintenanceSpec</a>.
                        If unspecified, there is no action taken to move
                        data from the disk.<br>See <a href="vim.host.VsanSystem.html#removeDiskMapping">RemoveDiskMapping_Task</a><br>See <a href="vim.host.VsanSystem.html#update">UpdateVsan_Task</a><br>See <a href="vim.vsan.host.ConfigInfo.StorageInfo.html#autoClaimStorage">autoClaimStorage</a><br>]]>
      </description-html>
      </parameter>
      <parameter name="timeout" type-id-ref="INT"
      vmodl-name="timeout"
      version-id-ref="vim.version.version9"
      is-optional="true"
      privilege="timeout"
      >
      <description-html>
         <![CDATA[Time to wait for the task to complete in seconds.
                  If the value is less than or equal to zero, there
                  is no timeout. The operation fails with a Timedout
                  exception if it timed out.<br>See <a href="vim.host.VsanSystem.html#removeDiskMapping">RemoveDiskMapping_Task</a><br>See <a href="vim.host.VsanSystem.html#update">UpdateVsan_Task</a><br>See <a href="vim.vsan.host.ConfigInfo.StorageInfo.html#autoClaimStorage">autoClaimStorage</a><br>]]>
      </description-html>
      </parameter>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to
       monitor the operation.]]>
      </task-description-html>
   </method>
   <method name="RemoveDiskMapping"
      vmodl-name="removeDiskMapping"
      is-array="true"
      is-optional="true"
      privilege="Host.Config.Storage"
      type-id-ref="vim.vsan.host.DiskMapResult"
      is-task="true"
      >
      <description-html>
         <![CDATA[Delete given set of disk mappings from use by the VSAN service on this host.
 This API may be used to remove all disks in a given mapping,
 including its DiskMapping#ssd. This operation is only permitted
 if the VSAN service on this host is not configured to automatically
 claim storage.
 <p>
 The task is cancellable.
 <p>
 Upon successful completion of the returned <a href="vim.Task.html">Task</a>, its
 <a href="vim.TaskInfo.html#result">result</a> field will be populated with an empty
 <a href="vim.vsan.host.DiskMapResult.html">VsanHostDiskMapResult</a>[]. If any errors are encountered,
 the returned field will instead contain populated error information.<br>See <a href="vim.host.VsanSystem.html#removeDisk">RemoveDisk_Task</a><br>See <a href="vim.host.VsanSystem.html#update">UpdateVsan_Task</a><br>See <a href="vim.vsan.host.ConfigInfo.StorageInfo.html#autoClaimStorage">autoClaimStorage</a><br>]]>
      </description-html>
      <parameter name="mapping" type-id-ref="vim.vsan.host.DiskMapping"
      vmodl-name="mapping"
      version-id-ref="vim.version.version9"
      is-array="true"
      privilege="mapping"
      >
      <description-html>
         <![CDATA[list of disk mappings to be removed from VSAN usage.<br>See <a href="vim.host.VsanSystem.html#removeDisk">RemoveDisk_Task</a><br>See <a href="vim.host.VsanSystem.html#update">UpdateVsan_Task</a><br>See <a href="vim.vsan.host.ConfigInfo.StorageInfo.html#autoClaimStorage">autoClaimStorage</a><br>]]>
      </description-html>
      </parameter>
      <parameter name="maintenanceSpec" type-id-ref="vim.host.MaintenanceSpec"
      vmodl-name="maintenanceSpec"
      version-id-ref="vim.version.version9"
      is-optional="true"
      privilege="maintenanceSpec"
      >
      <description-html>
         <![CDATA[Any additional actions to move data out of the disk
                        before removing it. See <a href="vim.host.MaintenanceSpec.html">HostMaintenanceSpec</a>.
                        If unspecified, there is no action taken to move
                        data from the disk.<br>See <a href="vim.host.VsanSystem.html#removeDisk">RemoveDisk_Task</a><br>See <a href="vim.host.VsanSystem.html#update">UpdateVsan_Task</a><br>See <a href="vim.vsan.host.ConfigInfo.StorageInfo.html#autoClaimStorage">autoClaimStorage</a><br>]]>
      </description-html>
      </parameter>
      <parameter name="timeout" type-id-ref="INT"
      vmodl-name="timeout"
      version-id-ref="vim.version.version9"
      is-optional="true"
      privilege="timeout"
      >
      <description-html>
         <![CDATA[Time to wait for the task to complete in seconds.
                  If the value is less than or equal to zero, there
                  is no timeout. The operation fails with a Timedout
                  exception if it timed out.<br>See <a href="vim.host.VsanSystem.html#removeDisk">RemoveDisk_Task</a><br>See <a href="vim.host.VsanSystem.html#update">UpdateVsan_Task</a><br>See <a href="vim.vsan.host.ConfigInfo.StorageInfo.html#autoClaimStorage">autoClaimStorage</a><br>]]>
      </description-html>
      </parameter>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to
       monitor the operation.]]>
      </task-description-html>
   </method>
   <method name="UnmountDiskMapping"
      vmodl-name="unmountDiskMapping"
      version-id-ref="vim.version.version10"
      is-array="true"
      privilege="Host.Config.Storage"
      type-id-ref="vim.vsan.host.DiskMapResult"
      is-task="true"
      >
      <description-html>
         <![CDATA[Unmount the mounted DiskMapping. An unmounted volume cannot be used for any
  VSAN operations. In contrast to <a href="vim.host.VsanSystem.html#removeDiskMapping">RemoveDiskMapping_Task</a>,
  this operation does not destroy or alter VSAN data on the disks.
  <a href="vim.host.VsanSystem.html#addDisks">AddDisks_Task</a> and <a href="vim.host.VsanSystem.html#initializeDisks">InitializeDisks_Task</a> can be used to
  re-mount the diskMapping.
  <p>
  In case of shared-SAS, where diskMappings are visible to more than one VSAN hosts,
  Users may use this API to manually unmount and re-mount diskMappings.
  <p>
  Upon successful completion of the returned <a href="vim.Task.html">Task</a>, its
  <a href="vim.TaskInfo.html#result">result</a> field will be populated with
  <a href="vim.vsan.host.DiskMapResult.html">VsanHostDiskMapResult</a>[]. If any errors are encountered,
  the returned field will instead contain populated error information.<br>See <a href="vim.host.VsanSystem.html#removeDiskMapping">RemoveDiskMapping_Task</a><br>See <a href="vim.host.VsanSystem.html#addDisks">AddDisks_Task</a><br>See <a href="vim.host.VsanSystem.html#initializeDisks">InitializeDisks_Task</a><br>]]>
      </description-html>
      <parameter name="mapping" type-id-ref="vim.vsan.host.DiskMapping"
      vmodl-name="mapping"
      version-id-ref="vim.version.version10"
      is-array="true"
      privilege="mapping"
      >
      <description-html>
         <![CDATA[<br>See <a href="vim.host.VsanSystem.html#removeDiskMapping">RemoveDiskMapping_Task</a><br>See <a href="vim.host.VsanSystem.html#addDisks">AddDisks_Task</a><br>See <a href="vim.host.VsanSystem.html#initializeDisks">InitializeDisks_Task</a><br>]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[If the DiskMapping is already unmounted.<br>See <a href="vim.host.VsanSystem.html#removeDiskMapping">RemoveDiskMapping_Task</a><br>See <a href="vim.host.VsanSystem.html#addDisks">AddDisks_Task</a><br>See <a href="vim.host.VsanSystem.html#initializeDisks">InitializeDisks_Task</a><br>]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.VsanFault">
      <fault-description-html>
         <![CDATA[if operation fails with VSAN-specific error.<br>See <a href="vim.host.VsanSystem.html#removeDiskMapping">RemoveDiskMapping_Task</a><br>See <a href="vim.host.VsanSystem.html#addDisks">AddDisks_Task</a><br>See <a href="vim.host.VsanSystem.html#initializeDisks">InitializeDisks_Task</a><br>]]>
      </fault-description-html>
      </fault>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to monitor the
        operation.]]>
      </task-description-html>
   </method>
   <method name="UpdateVsan"
      vmodl-name="update"
      privilege="Host.Config.Storage"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Update the VSAN service on this host according to the given host
 configuration specification.
 <p>
 Enabling and disabling the VSAN service can be achieved by using
 the <a href="vim.vsan.host.ConfigInfo.html#enabled">enabled</a> flag.

 Host storage settings can be specified through use of
 <a href="vim.vsan.host.ConfigInfo.html#storageInfo">storageInfo</a>.  If this value is omitted,
 changes will not be made to the existing storage configuration.

 Host cluster settings can be specified through use of
 <a href="vim.vsan.host.ConfigInfo.html#clusterInfo">clusterInfo</a>.  If this value is omitted,
 changes will not be made to the existing cluster configuration.

 Host network settings can be specified through use of
 <a href="vim.vsan.host.ConfigInfo.html#networkInfo">networkInfo</a>.  If this value is omitted,
 changes will not be made to the existing network configuration.<br>See <a href="vim.vsan.host.ConfigInfo.html">VsanHostConfigInfo</a><br>See <a href="vim.vsan.host.ConfigInfo.html#storageInfo">storageInfo</a><br>See <a href="vim.vsan.host.ConfigInfo.html#clusterInfo">clusterInfo</a><br>See <a href="vim.vsan.host.ConfigInfo.html#networkInfo">networkInfo</a><br>See <a href="vim.host.VsanSystem.html#queryDisksForVsan">QueryDisksForVsan</a><br>]]>
      </description-html>
      <parameter name="config" type-id-ref="vim.vsan.host.ConfigInfo"
      vmodl-name="config"
      version-id-ref="vim.version.version9"
      privilege="config"
      >
      <description-html>
         <![CDATA[host configuration settings to use for the VSAN service.<br>See <a href="vim.vsan.host.ConfigInfo.html">VsanHostConfigInfo</a><br>See <a href="vim.vsan.host.ConfigInfo.html#storageInfo">storageInfo</a><br>See <a href="vim.vsan.host.ConfigInfo.html#clusterInfo">clusterInfo</a><br>See <a href="vim.vsan.host.ConfigInfo.html#networkInfo">networkInfo</a><br>See <a href="vim.host.VsanSystem.html#queryDisksForVsan">QueryDisksForVsan</a><br>]]>
      </description-html>
      </parameter>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to
       monitor the operation.]]>
      </task-description-html>
   </method>
   <method name="QueryHostStatus"
      vmodl-name="queryHostStatus"
      privilege="System.Read"
      type-id-ref="vim.vsan.host.ClusterStatus"
      >
      <description-html>
         <![CDATA[Queries this host's current runtime status for the VSAN service.]]>
      </description-html>
      <return-value-description-html>
         <![CDATA[a populated <a href="vim.vsan.host.ClusterStatus.html">VsanHostClusterStatus</a> entry]]>
      </return-value-description-html>
   </method>
   <method name="EvacuateVsanNode"
      vmodl-name="evacuateNode"
      version-id-ref="vim.version.version10"
      privilege="Host.Config.Storage"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Evacuate this host from VSAN cluster.
  <p>
  The task is cancellable.]]>
      </description-html>
      <parameter name="maintenanceSpec" type-id-ref="vim.host.MaintenanceSpec"
      vmodl-name="maintenanceSpec"
      version-id-ref="vim.version.version10"
      privilege="maintenanceSpec"
      >
      <description-html>
         <![CDATA[Specifies the data evacuation mode. See <a href="vim.host.MaintenanceSpec.html">HostMaintenanceSpec</a>.
                         If unspecified, the default mode chosen will be
                         vim.vsan.host.DecommissionMode.ObjectAction#ensureObjectAccessibility.]]>
      </description-html>
      </parameter>
      <parameter name="timeout" type-id-ref="INT"
      vmodl-name="timeout"
      version-id-ref="vim.version.version10"
      privilege="timeout"
      >
      <description-html>
         <![CDATA[Time to wait for the task to complete in seconds.
                  If the value is less than or equal to zero, there
                  is no timeout. The operation fails with a Timedout
                  exception if it timed out.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[If the host is entering maintenance mode or evacuating data.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vmodl.fault.RequestCanceled">
      <fault-description-html>
         <![CDATA[if the operation is canceled.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.Timedout">
      <fault-description-html>
         <![CDATA[if the operation timed out.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.VsanFault">
      <fault-description-html>
         <![CDATA[if operation fails with VSAN-specific error.]]>
      </fault-description-html>
      </fault>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to monitor the
        operation.]]>
      </task-description-html>
   </method>
   <method name="RecommissionVsanNode"
      vmodl-name="recommissionNode"
      version-id-ref="vim.version.version10"
      privilege="Host.Config.Storage"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Recommission this host to VSAN cluster.
  <p>
  Users may use this API to recommission a node that has been
  evacuated in <a href="vim.vsan.host.DecommissionMode.html">VsanHostDecommissionMode</a>.<br>See <a href="vim.host.VsanSystem.html#evacuateNode">EvacuateVsanNode_Task</a><br>See <a href="vim.vsan.host.DecommissionMode.html">VsanHostDecommissionMode</a><br>]]>
      </description-html>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the host is not evacuated.<br>See <a href="vim.host.VsanSystem.html#evacuateNode">EvacuateVsanNode_Task</a><br>See <a href="vim.vsan.host.DecommissionMode.html">VsanHostDecommissionMode</a><br>]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.VsanFault">
      <fault-description-html>
         <![CDATA[if operation fails with VSAN-specific error.<br>See <a href="vim.host.VsanSystem.html#evacuateNode">EvacuateVsanNode_Task</a><br>See <a href="vim.vsan.host.DecommissionMode.html">VsanHostDecommissionMode</a><br>]]>
      </fault-description-html>
      </fault>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to monitor the
        operation.]]>
      </task-description-html>
   </method>
   </managed-object>
   <managed-object name="TenantTenantManager"
      type-id="vim.tenant.TenantManager"
      vmodl-name="vim.tenant.TenantManager"
      version-id-ref="vim.version.v6_9_1"
      >
      <description-html>
         <![CDATA[A singleton managed object for managing vCenter tenants.]]>
      </description-html>
   <method name="MarkServiceProviderEntities"
      vmodl-name="markServiceProviderEntities"
      privilege="TenantManager.Update"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Define a set of ManagedEntity objects as used for tenant management.
 Those entities are a starting point of an inventory hierarchy
 (sub-tree) that functionally exists in the tenant's inventory but are
 owned by the system user of the vCenter Server.

 The operations which the tenant may perform on these objects depend
 on the permissions granted to the tenant by the SaaS provisioning
 layer.

 Permissions that the tenant may create on the parent objects of the
 management entities do not propagate to the hierarchies of
 management entities and thus have no effect on them.
 This operation will fail for all the entities if any of them does
 not exist.

 The method behaviour is transactional - either all entities are
 marked or none if an error occurs while processing them.

 The user calling this method should hold TenantManager.Update on the
 root folder and TenantManager.Update on each entity currently
 being marked as a service provider one. These are strict privilege
 requirements allowing only administrators to call the method.]]>
      </description-html>
      <parameter name="entity" type-id-ref="vim.ManagedEntity"
      vmodl-name="entity"
      version-id-ref="vim.version.v6_9_1"
      is-array="true"
      is-optional="true"
      privilege="entity"
      >
      <description-html>
         <![CDATA[an array of management entities.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vmodl.fault.ManagedObjectNotFound">
      <fault-description-html>
         <![CDATA[if any of the entities doesn't exist.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.AuthMinimumAdminPermission">
      <fault-description-html>
         <![CDATA[if this change will leave the
         system with no Administrator permission on the root folder
         of the service provider inventory.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="UnmarkServiceProviderEntities"
      vmodl-name="unmarkServiceProviderEntities"
      privilege="TenantManager.Update"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Resets the management type of an array of ManagedEntity objects.
 This operation will fail if any of the entities does not exist.

 The method behaviour is transactional - either all entities are
 unmarked or none if an error occurs while processing them.

 The user calling this method should hold TenantManager.Update on the
 root folder and TenantManager.Update on each entity currently
 being unmarked as a service provider one. These are strict privilege
 requirements allowing only administrators to call the method.]]>
      </description-html>
      <parameter name="entity" type-id-ref="vim.ManagedEntity"
      vmodl-name="entity"
      version-id-ref="vim.version.v6_9_1"
      is-array="true"
      is-optional="true"
      privilege="entity"
      >
      <description-html>
         <![CDATA[an array of management entities.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vmodl.fault.ManagedObjectNotFound">
      <fault-description-html>
         <![CDATA[if any of the entities doesn't exist.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="RetrieveServiceProviderEntities"
      vmodl-name="retrieveServiceProviderEntities"
      is-array="true"
      is-optional="true"
      privilege="TenantManager.Query"
      type-id-ref="vim.ManagedEntity"
      >
      <description-html>
         <![CDATA[Retrieves the list of tenant management entities.]]>
      </description-html>
      <return-value-description-html>
         <![CDATA[the array of tenant management resources.]]>
      </return-value-description-html>
   </method>
   </managed-object>
   <managed-object name="HostCacheConfigurationManager"
      type-id="vim.host.CacheConfigurationManager"
      vmodl-name="vim.host.CacheConfigurationManager"
      version-id-ref="vim.version.version7"
      >
      <description-html>
         <![CDATA[Solid state drive Cache Configuration Manager.

  This is a managed object which provides access to ESX performance tuning
  features using solid state drive based cache.]]>
      </description-html>
            <property name="cacheConfigurationInfo" type-id-ref="vim.host.CacheConfigurationManager.CacheConfigurationInfo"
      vmodl-name="cacheConfigurationInfo"
      is-array="true"
      is-optional="true"
      privilege="Host.Config.AdvancedConfig"
      >
      <description-html>
         <![CDATA[The swap performance configuration for the ESX host.  This includes
 configuration information for each datastore enabled for this purpose.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.host.CacheConfigurationManager.CacheConfigurationSpec</nested-type-id-ref>
      <nested-type-id-ref>vim.host.CacheConfigurationManager.CacheConfigurationInfo</nested-type-id-ref>
   <method name="ConfigureHostCache"
      vmodl-name="configureCache"
      privilege="Host.Config.AdvancedConfig"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Configure host cache/swap performance enhancement.]]>
      </description-html>
      <parameter name="spec" type-id-ref="vim.host.CacheConfigurationManager.CacheConfigurationSpec"
      vmodl-name="spec"
      version-id-ref="vim.version.version7"
      privilege="spec"
      >
      <description-html>
         <![CDATA[Specification for solid state drive cache configuration.]]>
      </description-html>
      </parameter>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to
 monitor the operation.]]>
      </task-description-html>
   </method>
   </managed-object>
   <managed-object name="CustomFieldsManager"
      type-id="vim.CustomFieldsManager"
      vmodl-name="vim.CustomFieldsManager"
      version-id-ref="vim.version.version1"
      >
      <description-html>
         <![CDATA[The CustomFieldsManager object is used to add and remove custom fields
  to managed entities.
  <p>
  The custom fields values set on managed entities are available through the
  <a href="vim.ManagedEntity.html#customValue">CustomValue</a> property and through the summary objects
  for <a href="vim.VirtualMachine.html">VirtualMachine</a> and <a href="vim.HostSystem.html">HostSystem</a>. They are not available
  directly through this managed object.
  <p>
  This functionality is only available through VirtualCenter.]]>
      </description-html>
            <property name="field" type-id-ref="vim.CustomFieldsManager.FieldDef"
      vmodl-name="field"
      is-array="true"
      is-optional="true"
      privilege="System.View"
      >
      <description-html>
         <![CDATA[List of custom fields defined on this server. The fields are
  sorted by name.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.CustomFieldsManager.FieldDef</nested-type-id-ref>
      <nested-type-id-ref>vim.CustomFieldsManager.Value</nested-type-id-ref>
      <nested-type-id-ref>vim.CustomFieldsManager.StringValue</nested-type-id-ref>
   <method name="AddCustomFieldDef"
      vmodl-name="addFieldDefinition"
      privilege="Global.ManageCustomFields"
      type-id-ref="vim.CustomFieldsManager.FieldDef"
      >
      <description-html>
         <![CDATA[Creates a new custom field. If the moType is specified, the
  field will only be available for that type of managed object.]]>
      </description-html>
      <parameter name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      version-id-ref="vim.version.version1"
      privilege="name"
      >
      <description-html>
         <![CDATA[The name of the field.]]>
      </description-html>
      </parameter>
      <parameter name="moType" type-id-ref="vmodl.TypeName"
      vmodl-name="moType"
      version-id-ref="vim.version.version1"
      is-optional="true"
      privilege="moType"
      >
      <description-html>
         <![CDATA[The managed object type to which this field
                will apply]]>
      </description-html>
      </parameter>
      <parameter name="fieldDefPolicy" type-id-ref="vim.PrivilegePolicyDef"
      vmodl-name="fieldDefPolicy"
      version-id-ref="vim.version.version1"
      is-optional="true"
      privilege="fieldDefPolicy"
      >
      <description-html>
         <![CDATA[Privilege policy to apply to FieldDef being
    created]]>
      </description-html>
      </parameter>
      <parameter name="fieldPolicy" type-id-ref="vim.PrivilegePolicyDef"
      vmodl-name="fieldPolicy"
      version-id-ref="vim.version.version1"
      is-optional="true"
      privilege="fieldPolicy"
      >
      <description-html>
         <![CDATA[Privilege policy to apply to instances of field]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.DuplicateName">
      <fault-description-html>
         <![CDATA[if a custom field with the name already exists.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidPrivilege">
      <fault-description-html>
         <![CDATA[if a specified privilege is not defined.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="RemoveCustomFieldDef"
      vmodl-name="removeFieldDefinition"
      privilege="Global.ManageCustomFields"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Removes a custom field. This also removes all values assigned
 to this custom field.]]>
      </description-html>
      <parameter name="key" type-id-ref="INT"
      vmodl-name="key"
      version-id-ref="vim.version.version1"
      privilege="key"
      >
      <description-html>
         <![CDATA[The unique key for the field definition.]]>
      </description-html>
      </parameter>
   </method>
   <method name="RenameCustomFieldDef"
      vmodl-name="renameFieldDefinition"
      privilege="Global.ManageCustomFields"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Renames a custom field.]]>
      </description-html>
      <parameter name="key" type-id-ref="INT"
      vmodl-name="key"
      version-id-ref="vim.version.version1"
      privilege="key"
      >
      <description-html>
         <![CDATA[The unique key for the field definition.]]>
      </description-html>
      </parameter>
      <parameter name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      version-id-ref="vim.version.version1"
      privilege="name"
      >
      <description-html>
         <![CDATA[The new name for the field.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.DuplicateName">
      <fault-description-html>
         <![CDATA[if a custom field with the name already exists.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="SetField"
      vmodl-name="setField"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Assigns a value to a custom field on an entity.]]>
      </description-html>
      <parameter name="entity" type-id-ref="vim.ManagedEntity"
      vmodl-name="entity"
      version-id-ref="vim.version.version1"
      privilege="entity"
      >
      </parameter>
      <parameter name="key" type-id-ref="INT"
      vmodl-name="key"
      version-id-ref="vim.version.version1"
      privilege="key"
      >
      </parameter>
      <parameter name="value" type-id-ref="java.lang.String"
      vmodl-name="value"
      version-id-ref="vim.version.version1"
      privilege="value"
      >
      </parameter>
   </method>
   </managed-object>
   <managed-object name="PerformanceManager"
      type-id="vim.PerformanceManager"
      vmodl-name="vim.PerformanceManager"
      version-id-ref="vim.version.version1"
      >
      <description-html>
         <![CDATA[This managed object type provides the service interface for obtaining
  statistical data about various aspects of system performance, as generated
  and maintained by the system's performance providers. A "performance
  provider" (<a href="vim.PerformanceManager.ProviderSummary.html">PerfProviderSummary</a>) is any managed object
  that generates utilization or other performance metrics. Performance
  providers include <a href="vim.ManagedEntity.html">managed entities</a>, such as <a href="vim.HostSystem.html">hosts</a>, <a href="vim.VirtualMachine.html">virtual machines</a>, <a href="vim.ComputeResource.html">compute resources</a>, <a href="vim.ResourcePool.html">resource
  pools</a>, <a href="vim.Datastore.html">datastores</a>, and <a href="vim.Network.html">networks</a>.
  Performance providers also include physical or virtual devices associated
  with these objects, such as virtual host-bus adapters and network-interface
  controllers (NICs)

  <p> <a name="counterTables"></a><b>Performance Counters</b> <br/> Each
  performance provider&#151;the instrumented device or entity&#151;has its own
  set of <a href="vim.PerformanceManager.CounterInfo.html">counters</a> that provides
  metadata about its available <a href="vim.PerformanceManager.EntityMetric.html">metrics</a>. Each counter has a unique <a href="vim.PerformanceManager.CounterInfo.html#key">key</a>, referred to as the counterId. The
  actual performance metrics generated at runtime are identified by this
  <a href="vim.PerformanceManager.MetricId.html#counterId">counterId</a>. Counters are organized by
  <a href="vim.PerformanceManager.CounterInfo.html#groupInfo">groupInfo</a> of finite system
  resources, such as <a href="memory_counters.html">memory</a>, <a
  href="cpu_counters.html">CPU</a>, <a href="disk_counters.html">disk</a>, and
  so on. The links in this list contain documentation for performance
  counters, by <a href="vim.PerformanceManager.CounterInfo.html#groupInfo">groupInfo</a>. Each
  page contains a table that includes data extracted from instances of the
  <a href="vim.PerformanceManager.CounterInfo.html">PerfCounterInfo</a> data object, including the counter
  name, its Label, Unit, StatsType, RollupType, and Level: <ul>

  <li> <a href="cluster_services_counters.html">Cluster Services</li>
  <li> <a href="cpu_counters.html">CPU</a></li>
  <li> <a href="hbr_counters.html">Host-Based Replication</a></li>
  <li> <a href="mgmt_agent_counters.html">Management Agent</a></li>
  <li> <a href="memory_counters.html">Memory</a></li>
  <li> <a href="network_counters.html">Network</a></li>
  <li> <a href="power_counters.html">Power</a></li>
  <li> <a href="resource_scheduler_counters.html">Resource Scheduler</a></li>
  <li> Storage Capacity:<ul>
     <li> <a href="disk_storutil_counters.html">Datastore / Virtual
          Machine</a></li>
     </ul></li>
  <li> Storage I/O:<ul>
     <li> <a href="datastore_counters.html">Datastore</a></li>
     <li> <a href="disk_counters.html">Disk</a></li>
     <li> <a href="virtual_disk_counters.html">Virtual Disk</a></li>
     <li> <a href="storage_adapter_counters.html">Storage Adapter</a></li>
     <li> <a href="storage_path_counters.html">Storage Path</a></li>
     </ul></li>
  <li><a href="system_counters.html">System</a></li>
  <li><a href="vcres_counters.html">vCenter Resource</a></li>
  <li><a href="vmop_counters.html">Virtual Machine Operations</a></li>
  </ul>

  <p> Other performance-counter groups, in addition to those listed here,
  exist on the system. However, only the counter groups listed are considered
  of possible interest to third-party developers.

  <p> <b>Obtaining Metadata and Metrics</b><br/> This interface provides these
  query operations: <ul>

  <li> <a href="vim.PerformanceManager.html#queryProviderSummary">QueryPerfProviderSummary</a>, for obtaining metatdata about <a href="vim.PerformanceManager.ProviderSummary.html">performance providers</a></li>

  <li> <a href="vim.PerformanceManager.html#queryCounter">QueryPerfCounter</a> and <a href="vim.PerformanceManager.html#queryCounterByLevel">QueryPerfCounterByLevel</a> for obtaining
       metadata about supported counters. </li>

  <li> <a href="vim.PerformanceManager.html#queryStats">QueryPerf</a>, <a href="vim.PerformanceManager.html#queryAvailableMetric">QueryAvailablePerfMetric</a>, and <a href="vim.PerformanceManager.html#queryCompositeStats">QueryPerfComposite</a> for obtaining statistics for one or more
       entities: <ul>

     <li> Use <a href="vim.PerformanceManager.html#queryStats">QueryPerf</a> to obtain metrics for multiple entities in a
          single call&#46;</li>

     <li> Use <a href="vim.PerformanceManager.html#queryCompositeStats">QueryPerfComposite</a> to obtain statistics for a single
          entity with its descendent objects&#151;statistics for a <a href="vim.HostSystem.html">host</a> and all its <a href="vim.VirtualMachine.html">virtual
          machines</a>, for example. </li>

     </ul> </li>

  </ul>

  <p> <b>Product and Version Specifics</b><br/> Some differences between ESX
  and vCenter Server implementations of this interface include: <ul>

  <li> For ESX systems, this interface provides access to real-time data, and
       to real-time data that has been rolled up into "PastDay" statistics (if
       applicable for the specific counter). </li>

  <li> For vCenter Server systems, this interface provides access to real-time
       and historical data. vCenter Server collects statistics on a regular
       basis from all ESX systems that it manages, and aggregates the results
       based on the level settings for the server. </li>

  <li> Default sampling interval is product- and version-specific: <ul>

     <li> ESX 3&#46;x (and subsequent) systems: 20 second interval</li>

     <li> ESX 2&#46;x systems: 60 second interval</li>

     </ul> </li>

  <li> VirtualCenter Server 2&#46;5 (and subsequent vCenter Server) systems
       initially collect statistics data 10 minutes after system startup, and
       then hourly thereafter&#46;</li>

  </ul>

  <p> See the Programming Guide for more information about using <a href="vim.PerformanceManager.html">PerformanceManager</a>&#46;]]>
      </description-html>
            <property name="description" type-id-ref="vim.PerformanceDescription"
      vmodl-name="description"
      privilege="System.View"
      >
      <description-html>
         <![CDATA[The static description strings.]]>
      </description-html>
      </property>

            <property name="historicalInterval" type-id-ref="vim.HistoricalInterval"
      vmodl-name="historicalInterval"
      is-array="true"
      is-optional="true"
      privilege="System.View"
      >
      <description-html>
         <![CDATA[A list of <a href="vim.HistoricalInterval.html">intervals</a> configured on the
  system.]]>
      </description-html>
      </property>

            <property name="perfCounter" type-id-ref="vim.PerformanceManager.CounterInfo"
      vmodl-name="perfCounter"
      is-array="true"
      is-optional="true"
      privilege="System.View"
      >
      <description-html>
         <![CDATA[A list of all supported performance counters in the system.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.PerformanceManager.Format</nested-type-id-ref>
      <nested-type-id-ref>vim.PerformanceManager.ProviderSummary</nested-type-id-ref>
      <nested-type-id-ref>vim.PerformanceManager.CounterInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.PerformanceManager.MetricId</nested-type-id-ref>
      <nested-type-id-ref>vim.PerformanceManager.QuerySpec</nested-type-id-ref>
      <nested-type-id-ref>vim.PerformanceManager.SampleInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.PerformanceManager.MetricSeries</nested-type-id-ref>
      <nested-type-id-ref>vim.PerformanceManager.IntSeries</nested-type-id-ref>
      <nested-type-id-ref>vim.PerformanceManager.MetricSeriesCSV</nested-type-id-ref>
      <nested-type-id-ref>vim.PerformanceManager.EntityMetricBase</nested-type-id-ref>
      <nested-type-id-ref>vim.PerformanceManager.EntityMetric</nested-type-id-ref>
      <nested-type-id-ref>vim.PerformanceManager.EntityMetricCSV</nested-type-id-ref>
      <nested-type-id-ref>vim.PerformanceManager.CompositeEntityMetric</nested-type-id-ref>
      <nested-type-id-ref>vim.PerformanceManager.CounterLevelMapping</nested-type-id-ref>
   <method name="QueryPerfProviderSummary"
      vmodl-name="queryProviderSummary"
      privilege="System.View"
      type-id-ref="vim.PerformanceManager.ProviderSummary"
      >
      <description-html>
         <![CDATA[Retrieves the <a href="vim.PerformanceManager.ProviderSummary.html">PerfProviderSummary</a> data object that
  defines the capabilities of the specified managed object with respect to
  statistics, such as whether it supports current or summary
  statistics&#46;]]>
      </description-html>
      <parameter name="entity" type-id-ref="vmodl.ManagedObject"
      vmodl-name="entity"
      version-id-ref="vim.version.version1"
      privilege="entity"
      >
      <description-html>
         <![CDATA[Reference to a managed object that provides performance data. If the
  entity specified by managed object reference is not a performance
  provider, an "InvalidArgument" exception is thrown.]]>
      </description-html>
      </parameter>
      <return-value-description-html>
         <![CDATA[A data object containing metadata about the entity as a
  performance provider, such as the type of metrics (real-time, summary, or
  both) it generates and the <a href="vim.PerformanceManager.ProviderSummary.html#refreshRate">refreshRate</a>.]]>
      </return-value-description-html>
   </method>
   <method name="QueryAvailablePerfMetric"
      vmodl-name="queryAvailableMetric"
      is-array="true"
      is-optional="true"
      privilege="System.View"
      type-id-ref="vim.PerformanceManager.MetricId"
      >
      <description-html>
         <![CDATA[Retrieves all performance counters for the specified <a href="vim.ExtensibleManagedObject.html">managed object</a> generated during a specified
  period of time. The time period can be specified using beginTime,
  endTime, or by interval ID.]]>
      </description-html>
      <parameter name="entity" type-id-ref="vmodl.ManagedObject"
      vmodl-name="entity"
      version-id-ref="vim.version.version1"
      privilege="entity"
      >
      <description-html>
         <![CDATA[The <a href="vim.PerformanceManager.ProviderSummary.html#entity">entity</a> that
  provides performance metrics.]]>
      </description-html>
      </parameter>
      <parameter name="beginTime" type-id-ref="vmodl.DateTime"
      vmodl-name="beginTime"
      version-id-ref="vim.version.version1"
      is-optional="true"
      privilege="beginTime"
      >
      <description-html>
         <![CDATA[Starting time (server time) for a period of time from which to return
  available metrics. If not specified, defaults to oldest available metric
  for the specified entity.]]>
      </description-html>
      </parameter>
      <parameter name="endTime" type-id-ref="vmodl.DateTime"
      vmodl-name="endTime"
      version-id-ref="vim.version.version1"
      is-optional="true"
      privilege="endTime"
      >
      <description-html>
         <![CDATA[Ending time (server time) for a period of time from which to return
  available performance metrics. If not specified, defaults to the most
  recently generated metric for the specified entity.]]>
      </description-html>
      </parameter>
      <parameter name="intervalId" type-id-ref="INT"
      vmodl-name="intervalId"
      version-id-ref="vim.version.version1"
      is-optional="true"
      privilege="intervalId"
      >
      <description-html>
         <![CDATA[Period of time from which to retrieve metrics, defined by intervalId
  (rather than beginTime or endTime). Valid intervalIds include: <ul>

  <li> For real-time counters, the <a href="vim.PerformanceManager.ProviderSummary.html#refreshRate">refreshRate</a> of
       the <a href="vim.PerformanceManager.ProviderSummary.html">performance
       provider</a>. </li>

  <li> For historical counters, the <a href="vim.HistoricalInterval.html#samplingPeriod">samplingPeriod</a> of the <a href="vim.HistoricalInterval.html">historical interval</a>. </li>

  </ul>

  If this parameter is not specified, the system returns available metrics
  for historical statistics&#46;]]>
      </description-html>
      </parameter>
      <return-value-description-html>
         <![CDATA[An array of metrics, each of which comprises a
  <a href="vim.PerformanceManager.MetricId.html#counterId">counterId</a> and an
  <a href="vim.PerformanceManager.MetricId.html#instance">instance</a>.]]>
      </return-value-description-html>
   </method>
   <method name="QueryPerfCounter"
      vmodl-name="queryCounter"
      is-array="true"
      is-optional="true"
      privilege="System.View"
      type-id-ref="vim.PerformanceManager.CounterInfo"
      >
      <description-html>
         <![CDATA[Retrieves counter information for the specified list of counter IDs.]]>
      </description-html>
      <parameter name="counterId" type-id-ref="INT"
      vmodl-name="counterId"
      version-id-ref="vim.version.version1"
      is-array="true"
      privilege="counterId"
      >
      <description-html>
         <![CDATA[An array of one or more <a href="vim.PerformanceManager.MetricId.html#counterId">counterId</a> representing performance counters for which information is
  being retrieved.]]>
      </description-html>
      </parameter>
      <return-value-description-html>
         <![CDATA[An array consisting of performance counter information for the
  specified counterIds.]]>
      </return-value-description-html>
   </method>
   <method name="QueryPerfCounterByLevel"
      vmodl-name="queryCounterByLevel"
      version-id-ref="vim.version.version2"
      is-array="true"
      privilege="System.View"
      type-id-ref="vim.PerformanceManager.CounterInfo"
      >
      <description-html>
         <![CDATA[Retrieves the set of counters that are available at a specified
  collection <a href="vim.HistoricalInterval.html#level">level</a>. The collection level
  determines the statistics that get stored in VirtualCenter. See <a href="vim.HistoricalInterval.html">PerfInterval</a> for more information about VirtualCenter Server
  historical statistics collection.]]>
      </description-html>
      <parameter name="level" type-id-ref="INT"
      vmodl-name="level"
      version-id-ref="vim.version.version2"
      privilege="level"
      >
      <description-html>
         <![CDATA[A number between 1 and 4 that specifies the collection level.]]>
      </description-html>
      </parameter>
      <return-value-description-html>
         <![CDATA[An array of <a href="vim.PerformanceManager.CounterInfo.html">PerfCounterInfo</a> objects that
  define the set of counters having the specified level number available
  for the entity.]]>
      </return-value-description-html>
   </method>
   <method name="QueryPerf"
      vmodl-name="queryStats"
      is-array="true"
      is-optional="true"
      privilege="System.View"
      type-id-ref="vim.PerformanceManager.EntityMetricBase"
      >
      <description-html>
         <![CDATA[Retrieves the performance metrics for the specified entity (or entities)
  based on the properties specified in the <a href="vim.PerformanceManager.QuerySpec.html">PerfQuerySpec</a> data object.

  <p> <b>Query Performance for VirtualCenter Server</b><br/>]]>
      </description-html>
      <parameter name="querySpec" type-id-ref="vim.PerformanceManager.QuerySpec"
      vmodl-name="querySpec"
      version-id-ref="vim.version.version1"
      is-array="true"
      privilege="querySpec"
      >
      <description-html>
         <![CDATA[An array of <a href="vim.PerformanceManager.QuerySpec.html">PerfQuerySpec</a> objects. Each <a href="vim.PerformanceManager.QuerySpec.html">PerfQuerySpec</a> object specifies a managed object reference
  for an entity, plus optional criteria for filtering results. Only metrics
  for entities that can be resolved and that are valid <a href="vim.PerformanceManager.ProviderSummary.html">performance providers</a> are returned in
  any result.

  <p> Each <a href="vim.PerformanceManager.QuerySpec.html">PerfQuerySpec</a> object in the array
  submitted in this operation can query for different metrics. Or, select
  all types of statistics for a single managed entity.

  <p> Raw data feed workaround: Normally, QueryPerf will return performance
  statistics stored in the VirtualCenter database. However this may not be
  suitable for certain applications. For example, applications that treat
  VirtualCenter as a raw data source, query for performance statistics
  regularly (say every 5 minutes) and extract the data for external
  archival and reporting. Such applications need better query performance.
  These applications should query statistics using QueryPerf for the base
  historical interval (5 minutes by default) having a start and end time
  range within 30 minutes from the current VirtualCenter server system
  time. These QueryPerf calls will have better performance than other
  QueryPerf calls.]]>
      </description-html>
      </parameter>
      <return-value-description-html>
         <![CDATA[The metric values for the specified entity or entities.]]>
      </return-value-description-html>
   </method>
   <method name="QueryPerfComposite"
      vmodl-name="queryCompositeStats"
      privilege="System.View"
      type-id-ref="vim.PerformanceManager.CompositeEntityMetric"
      >
      <description-html>
         <![CDATA[Retrieves a <a href="vim.PerformanceManager.CompositeEntityMetric.html">PerfCompositeMetric</a> data object
  that comprises statistics for the specified entity and its children
  entities. Only metrics for the first level of descendents are included in
  the <a href="vim.PerformanceManager.CompositeEntityMetric.html">PerfCompositeMetric</a> object.

  <p> Use this operation to obtain statistics for a <a href="vim.HostSystem.html">host</a> and its associated <a href="vim.VirtualMachine.html">virtual machines</a>, for
  example.

  <p> Requires <b>system.read</b> privilege for every virtual machine on
  the target host, or the query fails with the &#147;NoPermission&#148;
  fault. Suported for <a href="vim.HostSystem.html">HostSystem</a> managed entities only.]]>
      </description-html>
      <parameter name="querySpec" type-id-ref="vim.PerformanceManager.QuerySpec"
      vmodl-name="querySpec"
      version-id-ref="vim.version.version1"
      privilege="querySpec"
      >
      <description-html>
         <![CDATA[A <a href="vim.PerformanceManager.QuerySpec.html">PerfQuerySpec</a> object specifying the query
  parameters. This <a href="vim.PerformanceManager.QuerySpec.html">PerfQuerySpec</a> object specifies a
  managed object for which composite statistics should be retrieved, with
  specific optional criteria for filtering the results.

  <p> This <a href="vim.PerformanceManager.QuerySpec.html">PerfQuerySpec</a> requires a valid <a href="vim.PerformanceManager.QuerySpec.html#metricId">metricId</a> property that specifies a metric
  that is available, in common, to the entity and its children. If the
  specified metricId is not available to the entity and its children, it is
  ignored.]]>
      </description-html>
      </parameter>
      <return-value-description-html>
         <![CDATA[The metric values for the specified entity and its associated
  entities for a single interval.]]>
      </return-value-description-html>
   </method>
   <method name="CreatePerfInterval"
      vmodl-name="createHistoricalInterval"
      is-deprecated="true"
      privilege="Performance.ModifyIntervals"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Adds a new historical interval. Sampling period for new interval must be
  a multiple of an existing interval; must comprise a longer period of
  time; and must be uniquely named.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of API 2.5, use <a href="vim.PerformanceManager.html#updateHistoricalInterval">UpdatePerfInterval</a>. The
  default historical intervals can be modified, but they cannot be created.]]>
      </deprecated-html>
      <parameter name="intervalId" type-id-ref="vim.HistoricalInterval"
      vmodl-name="intervalId"
      version-id-ref="vim.version.version1"
      privilege="intervalId"
      >
      <description-html>
         <![CDATA[A custom interval, specified as the number of seconds to hold data in the
  database, a user-specified unique name, and a sampling period (in
  seconds).]]>
      </description-html>
      </parameter>
   </method>
   <method name="RemovePerfInterval"
      vmodl-name="removeHistoricalInterval"
      is-deprecated="true"
      privilege="Performance.ModifyIntervals"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Removes an interval from the list.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of API 2.5, use <a href="vim.PerformanceManager.html#updateHistoricalInterval">UpdatePerfInterval</a>.
  Historical intervals cannot be removed.]]>
      </deprecated-html>
      <parameter name="samplePeriod" type-id-ref="INT"
      vmodl-name="samplePeriod"
      version-id-ref="vim.version.version1"
      privilege="samplePeriod"
      >
      <description-html>
         <![CDATA[The sampling period, in seconds, for the specified interval being
  removed.]]>
      </description-html>
      </parameter>
   </method>
   <method name="UpdatePerfInterval"
      vmodl-name="updateHistoricalInterval"
      privilege="Performance.ModifyIntervals"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Modifies VirtualCenter Server's built-in <a href="vim.HistoricalInterval.html">historical intervals</a>, within certain limits.

  <p> <b>Supported Modifications</b>

  <table border="1" width="100%">

  <tr>
     <th>key</th>
     <th>samplingPeriod</th>
     <th>length</th>
     <th>name</th>
     <th>level [1]</th>
     <th>enabled [2]</th>
  </tr>

  <tr>
     <td>1</td>
     <td>300 [3]</td>
     <td>86400 [4]</td>
     <td>Past&nbsp;day</td>
     <td>1</td>
     <td>true</td>
  </tr>

  <tr>
     <td>2</td>
     <td>1800</td>
     <td>604800</td>
     <td>Past&nbsp;week</td>
     <td>1</td>
     <td>true</td>
  </tr>

  <tr>
     <td>3</td>
     <td>7200</td>
     <td>2592000</td>
     <td>Past&nbsp;month</td>
     <td>1</td>
     <td>true</td>
  </tr>

  <tr>
     <td>4</td>
     <td>86400</td>
     <td>31536000 [5]</td>
     <td>Past&nbsp;year</td>
     <td>1</td>
     <td>true</td>
  </tr>

  </table>

  <p>

  <b>[1]</b>&nbsp; The collection level for the <a href="vim.HistoricalInterval.html">historical intervals</a> can be changed. However,
  the level specified for a lower-numbered interval cannot be smaller
  than that of a larger interval.<br/>

  <b>[2]</b>&nbsp; An interval can be disabled. By default, all four
  intervals are enabled. Disabling an interval disables all higher
  intervals. For example, disabling interval 3 (&#147;Past month&#148;)
  also disables interval 4 (&#147;Past year&#148;).<br/>

  <b>[3]</b>&nbsp; Can reduce this interval&#146;s <a href="vim.HistoricalInterval.html#samplingPeriod">samplingPeriod</a> from 5 minutes to 1, 2, or 3
  minutes.<br/>

  <b>[4]</b>&nbsp; Can increase this interval&#146;s <a href="vim.HistoricalInterval.html#length">length</a> from 1 day to 2 or 3 days. <br/>

  <b>[5]</b>&nbsp; Can increase interval&#146;s <a href="vim.HistoricalInterval.html#length">length</a> from 1 year to 2 or 3 years. <br/>

  <p> See <a href="vim.HistoricalInterval.html">PerfInterval</a> for information about the four default
  intervals for VirtualCenter Server.]]>
      </description-html>
      <parameter name="interval" type-id-ref="vim.HistoricalInterval"
      vmodl-name="interval"
      version-id-ref="vim.version.version1"
      privilege="interval"
      >
      <description-html>
         <![CDATA[The <a href="vim.HistoricalInterval.html">historical interval</a> being modified, a
  complete data object comprising values for <a href="vim.HistoricalInterval.html#enabled">enabled</a>, <a href="vim.HistoricalInterval.html#key">key</a>,
  <a href="vim.HistoricalInterval.html#length">length</a> of time to maintain statistics for this
  interval in the database, <a href="vim.HistoricalInterval.html#level">level</a>, <a href="vim.HistoricalInterval.html#name">name</a>, and <a href="vim.HistoricalInterval.html#samplingPeriod">samplingPeriod</a>
  properties.]]>
      </description-html>
      </parameter>
   </method>
   <method name="UpdateCounterLevelMapping"
      vmodl-name="updateCounterLevelMapping"
      version-id-ref="vim.version.version6"
      internal-before-version-id-ref="vim.version.version7"
      privilege="Performance.ModifyIntervals"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Changes the level of data collection for a set of performance counters.
  See the <a href="#counterTables">performance counter tables</a>
  for the default collection level for individual counters.

  <p> <b>Important:</b>

  <p> Consider the performance and storage consequences of using this
  method. You may cause a significant increase in data collection and
  storage, along with a corresponding decrease in performance. vCenter
  Server performance and database storage requirements depend on the
  collection levels defined for the performance intervals
  (PerformanceManager.<a href="vim.PerformanceManager.html#historicalInterval">HistoricalInterval</a>)
  and the collection levels specified for individual performance counters
  (<a href="vim.PerformanceManager.CounterInfo.html">PerfCounterInfo</a>.<a href="vim.PerformanceManager.CounterInfo.html#level">level</a>).

  <p> <u>Performance Counter Data Collection</u>

  <p> vSphere defines four levels of data collection for performance
  counters. Each performance counter specifies a level for collection. The
  historical performance intervals (PerformanceManager.<a href="vim.PerformanceManager.html#historicalInterval">HistoricalInterval</a>) define the sampling period
  and length for a particular collection level.

  <p> The amount of data collected for a performance counter depends
  on the performance interval and on the type of entity for which
  the counter is defined. For example, a datastore counter such as
  datastoreIops (the aggregate number of IO operations on the datastore)
  will generate a data set that corresponds to the number of datastores
  on a host. If a vCenter Server manages a large number of hosts
  with a large number of datastores, the Server will collect
  a large amount of data.

  <p> There are other counters for which the vCenter Server collects
  a relatively smaller amount of data. For example, memory counters
  are collected as a single counter per virtual machine and a single
  counter per host.

  <p> <u>Performance Counter Data Storage</u>

  <p> The performance interval collection <a href="vim.PerformanceManager.CounterInfo.html#level">level</a> defines the set of counters for
  which the vCenter Server stores performance data. The Server will store
  data for counters at the specified level and for counters at all lower
  levels.

  <p> By default, all the performance intervals specify collection level
  one. Using these defaults, the vCenter Server stores performance counter
  data in the vCenter database for all counters that specify collection
  level one. It does not store data for counters that specify collection
  levels two through four.

  <p> <u>Performance Manager Method Interaction</u>

  <p> You can use the UpdateCounterLevelMapping method to change the
  collection level for individual counters. You can also use the <a href="vim.PerformanceManager.html#updateHistoricalInterval">UpdatePerfInterval</a> method to change the
  collection level for the system-defined performance intervals. These
  methods can cause a significant increase in the amount of data collected
  and stored in the vCenter database.

  <p> You may cause a significant increase in data collection and storage
  along with a corresponding decrease in performance under the following
  conditions: <ul>

  <li> By default the system-defined performance intervals use collection
       level one, storing data for all counters that specify collection
       level one. If you use the UpdateCounterLevelMapping method to change
       the collection level of performance counters to level one, you will
       increase the amount of stored performance data. </li>

  <li> If you use the <a href="vim.PerformanceManager.html#updateHistoricalInterval">UpdatePerfInterval</a> method to increase
       the collection level for the system-defined performance intervals,
       you will increase the amount of stored performance data. </li>

  </ul>

  <p> To restore counter levels to default settings use the <a href="vim.PerformanceManager.html#resetCounterLevelMapping">ResetCounterLevelMapping</a> method.]]>
      </description-html>
      <parameter name="counterLevelMap" type-id-ref="vim.PerformanceManager.CounterLevelMapping"
      vmodl-name="counterLevelMap"
      version-id-ref="vim.version.version6"
      is-array="true"
      privilege="counterLevelMap"
      >
      <description-html>
         <![CDATA[An array of <a href="vim.PerformanceManager.CounterLevelMapping.html">PerformanceManagerCounterLevelMapping</a> objects. The
  levels for the counters passed in are changed to the passed in values. If
  the optional aggregateLevel field is left unset then only the
  perDeviceLevel is configured. If the optional perDeviceLevel is left
  unset then only the aggregateLevel is configured. If there are multiple
  entries in the passed in array for the same counterId being updated then
  the last entry containing the counterId takes effect.]]>
      </description-html>
      </parameter>
   </method>
   <method name="ResetCounterLevelMapping"
      vmodl-name="resetCounterLevelMapping"
      version-id-ref="vim.version.version6"
      internal-before-version-id-ref="vim.version.version7"
      privilege="Performance.ModifyIntervals"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Restores a set of performance counters to the default level of data
  collection. See the <a href="#counterTables">performance counter
  tables</a> for the default collection level for individual counters.]]>
      </description-html>
      <parameter name="counters" type-id-ref="INT"
      vmodl-name="counters"
      version-id-ref="vim.version.version6"
      is-array="true"
      privilege="counters"
      >
      <description-html>
         <![CDATA[An array of counter ids.]]>
      </description-html>
      </parameter>
   </method>
   </managed-object>
   <managed-object name="HostSystem"
      type-id="vim.HostSystem"
      vmodl-name="vim.HostSystem"
      version-id-ref="vim.version.version1"
      base-type-id="vim.ManagedEntity"
      >
      <description-html>
         <![CDATA[The HostSystem managed object type provides access to a virtualization
  host platform.
  <p>
  Invoking destroy on a HostSystem of standalone type throws a NotSupported fault.
  A standalone HostSystem can be destroyed only by invoking destroy on its parent
  ComputeResource.
  Invoking destroy on a failover host throws a
  <a href="vim.fault.DisallowedOperationOnFailoverHost.html">DisallowedOperationOnFailoverHost</a> fault. See
  <a href="vim.cluster.FailoverHostAdmissionControlPolicy.html">ClusterFailoverHostAdmissionControlPolicy</a>.]]>
      </description-html>
            <property name="runtime" type-id-ref="vim.host.RuntimeInfo"
      vmodl-name="runtime"
      >
      <description-html>
         <![CDATA[Runtime state information about the host such as connection state.]]>
      </description-html>
      </property>

            <property name="summary" type-id-ref="vim.host.Summary"
      vmodl-name="summary"
      >
      <description-html>
         <![CDATA[Basic information about the host, including connection state.]]>
      </description-html>
      </property>

            <property name="hardware" type-id-ref="vim.host.HardwareInfo"
      vmodl-name="hardware"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Hardware configuration of the host. This might not be available for a
  disconnected host.]]>
      </description-html>
      </property>

            <property name="capability" type-id-ref="vim.host.Capability"
      vmodl-name="capability"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Host capabilities. This might not be available for a
  disconnected host.]]>
      </description-html>
      </property>

            <property name="licensableResource" type-id-ref="vim.LicenseManager.LicensableResourceInfo"
      vmodl-name="licensableResource"
      version-id-ref="vim.version.version7"
      >
      <description-html>
         <![CDATA[Information about all licensable resources, currently present on this host.
 <p>This information is used mostly by the modules, manipulating information
 in the <a href="vim.LicenseManager.html">LicenseManager</a>. Developers of such modules
 should use this property instead of <a href="vim.HostSystem.html#hardware">Hardware</a>.
 <p>NOTE:
   The values in this property may not be accurate for pre-5.0 hosts when returned by vCenter 5.0]]>
      </description-html>
      </property>

            <property name="remediationState" type-id-ref="vim.HostSystem.RemediationState"
      vmodl-name="remediationState"
      version-id-ref="vim.version.version12"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The host profile remediation state.]]>
      </description-html>
      </property>

            <property name="precheckRemediationResult" type-id-ref="vim.profile.host.ProfileManager.ApplyHostConfigSpec"
      vmodl-name="precheckRemediationResult"
      version-id-ref="vim.version.version12"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The host profile precheck-remediation result.]]>
      </description-html>
      </property>

            <property name="remediationResult" type-id-ref="vim.profile.host.ProfileManager.ApplyHostConfigResult"
      vmodl-name="remediationResult"
      version-id-ref="vim.version.version12"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The host profile remediation result.]]>
      </description-html>
      </property>

            <property name="complianceCheckState" type-id-ref="vim.HostSystem.ComplianceCheckState"
      vmodl-name="complianceCheckState"
      version-id-ref="vim.version.version12"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The host profile compliance check state.]]>
      </description-html>
      </property>

            <property name="complianceCheckResult" type-id-ref="vim.profile.ComplianceResult"
      vmodl-name="complianceCheckResult"
      version-id-ref="vim.version.version12"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The host profile compliance check result.]]>
      </description-html>
      </property>

            <property name="configManager" type-id-ref="vim.host.ConfigManager"
      vmodl-name="configManager"
      >
      <description-html>
         <![CDATA[Host configuration systems.

  In releases after vSphere API 5.0, vSphere Servers might not
  generate property collector update notifications for this property.
  To obtain the latest value of the property, you can use
  PropertyCollector methods RetrievePropertiesEx or WaitForUpdatesEx.
  If you use the PropertyCollector.WaitForUpdatesEx method, specify
  an empty string for the version parameter. Any other version value will not
  produce any property values as no updates are generated.]]>
      </description-html>
      </property>

            <property name="config" type-id-ref="vim.host.ConfigInfo"
      vmodl-name="config"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Host configuration information.  This might not be available for a disconnected
  host.]]>
      </description-html>
      </property>

            <property name="vm" type-id-ref="vim.VirtualMachine"
      vmodl-name="vm"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of virtual machines associated with this host.]]>
      </description-html>
      </property>

            <property name="datastore" type-id-ref="vim.Datastore"
      vmodl-name="datastore"
      is-array="true"
      is-optional="true"
      privilege="System.View"
      >
      <description-html>
         <![CDATA[A collection of references to the subset of datastore objects in the datacenter
  that are available in this HostSystem.]]>
      </description-html>
      </property>

            <property name="network" type-id-ref="vim.Network"
      vmodl-name="network"
      is-array="true"
      is-optional="true"
      privilege="System.View"
      >
      <description-html>
         <![CDATA[A collection of references to the subset of network objects in the datacenter that
  are available in this HostSystem.]]>
      </description-html>
      </property>

            <property name="datastoreBrowser" type-id-ref="vim.host.DatastoreBrowser"
      vmodl-name="datastoreBrowser"
      privilege="System.View"
      >
      <description-html>
         <![CDATA[DatastoreBrowser to browse datastores for this host.]]>
      </description-html>
      </property>

            <property name="systemResources" type-id-ref="vim.host.SystemResourceInfo"
      vmodl-name="systemResources"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Reference for the system resource hierarchy, used for configuring the set of
  resources reserved to the system and unavailable to virtual machines.]]>
      </description-html>
      </property>

            <property name="answerFileValidationState" type-id-ref="vim.profile.host.AnswerFileStatusResult"
      vmodl-name="answerFileValidationState"
      version-id-ref="vim.version.version12"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Host answer file validation state.]]>
      </description-html>
      </property>

            <property name="answerFileValidationResult" type-id-ref="vim.profile.host.AnswerFileStatusResult"
      vmodl-name="answerFileValidationResult"
      version-id-ref="vim.version.version12"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Host answer file validation result.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.HostSystem.ConnectionState</nested-type-id-ref>
      <nested-type-id-ref>vim.HostSystem.PowerState</nested-type-id-ref>
      <nested-type-id-ref>vim.HostSystem.StandbyMode</nested-type-id-ref>
      <nested-type-id-ref>vim.HostSystem.CryptoState</nested-type-id-ref>
      <nested-type-id-ref>vim.HostSystem.RemediationState</nested-type-id-ref>
      <nested-type-id-ref>vim.HostSystem.ComplianceCheckState</nested-type-id-ref>
      <nested-type-id-ref>vim.HostSystem.ReconnectSpec</nested-type-id-ref>
   <method name="QueryTpmAttestationReport"
      vmodl-name="queryTpmAttestationReport"
      version-id-ref="vim.version.version8"
      is-optional="true"
      privilege="System.Read"
      type-id-ref="vim.host.TpmAttestationReport"
      >
      <description-html>
         <![CDATA[Basic information about TPM attestation state of the host.]]>
      </description-html>
   </method>
   <method name="QueryHostConnectionInfo"
      vmodl-name="queryConnectionInfo"
      privilege="System.Read"
      type-id-ref="vim.host.ConnectInfo"
      >
      <description-html>
         <![CDATA[Connection-oriented information about a host.]]>
      </description-html>
   </method>
   <method name="UpdateSystemResources"
      vmodl-name="updateSystemResources"
      is-deprecated="true"
      privilege="Host.Config.Resources"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Update the configuration of the system resource hierarchy.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[as of Vsphere API 6.0.   Please, contact VMware Support to get
  instructions on how to configure system ESX resource pools.]]>
      </deprecated-html>
      <parameter name="resourceInfo" type-id-ref="vim.host.SystemResourceInfo"
      vmodl-name="resourceInfo"
      version-id-ref="vim.version.version1"
      privilege="resourceInfo"
      >
      </parameter>
   </method>
   <method name="UpdateSystemSwapConfiguration"
      vmodl-name="updateSystemSwapConfiguration"
      version-id-ref="vim.version.version8"
      privilege="Host.Config.Settings"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Update the System Swap Configuration.<br>See <a href="vim.host.SystemSwapConfiguration.html">HostSystemSwapConfiguration</a><br>]]>
      </description-html>
      <parameter name="sysSwapConfig" type-id-ref="vim.host.SystemSwapConfiguration"
      vmodl-name="sysSwapConfig"
      version-id-ref="vim.version.version8"
      privilege="sysSwapConfig"
      >
      <description-html>
         <![CDATA[Contains a list of system swap options that
                      configure the system swap functionality.<br>See <a href="vim.host.SystemSwapConfiguration.html">HostSystemSwapConfiguration</a><br>]]>
      </description-html>
      </parameter>
   </method>
   <method name="ReconnectHost"
      vmodl-name="reconnect"
      privilege="Host.Config.Connection"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Reconnects to a host. This process reinstalls agents and reconfigures the host, if
  it has gotten out of date with VirtualCenter. The reconnection process goes
  through many of the same steps as addHost: ensuring the correct set of licenses
  for the number of CPUs on the host, ensuring the correct set of agents is
  installed, and ensuring that networks and datastores are discovered and registered
  with VirtualCenter.
  <p>
  The client can change the IP address and port of the host when doing a reconnect
  operation. This can be useful if the client wants to preserve existing metadata,
  even though the host is changing its IP address. For example, clients could
  preserve existing statistics, alarms, and privileges.
  <p>
  This method can also be used to change the SSL thumbprint of a connected host
  without disconnecting it.
  <p>
  Any changes made to the resource hierarchy on the host when the host
  was disconnected are overriden by VirtualCenter settings on
  reconnect.
  <p>
  This method is only supported through VirtualCenter.]]>
      </description-html>
      <parameter name="cnxSpec" type-id-ref="vim.host.ConnectSpec"
      vmodl-name="cnxSpec"
      version-id-ref="vim.version.version1"
      is-optional="true"
      privilege="cnxSpec"
      >
      <description-html>
         <![CDATA[Includes the parameters to use, including user name and password,
              when reconnecting to the host. If this parameter is not specified,
              the default connection parameters is used.]]>
      </description-html>
      </parameter>
      <parameter name="reconnectSpec" type-id-ref="vim.HostSystem.ReconnectSpec"
      vmodl-name="reconnectSpec"
      version-id-ref="vim.version.version1"
      is-optional="true"
      privilege="reconnectSpec"
      >
      <description-html>
         <![CDATA[Includes connection parameters specific to
              reconnect. This will mainly be used to indicate how to
              handle divergence between the host settings and vCenter Server
              settings when the host was disconnected.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.InvalidLogin">
      <fault-description-html>
         <![CDATA[if the method fails to authenticate with the host.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the host is not disconnected.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidName">
      <fault-description-html>
         <![CDATA[if the host name is invalid.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.HostConnectFault">
      <fault-description-html>
         <![CDATA[if an error occurred when attempting to reconnect
          to a host. Typically, a more specific subclass, such as
          AlreadyBeingManaged, is thrown.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.AlreadyBeingManaged">
      <fault-description-html>
         <![CDATA[if host is already being managed by another
          VirtualCenter server]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.NoHost">
      <fault-description-html>
         <![CDATA[if the method is unable to contact the server.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.NotSupportedHost">
      <fault-description-html>
         <![CDATA[if the host is running a software version that is not
                          supported.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.SSLVerifyFault">
      <fault-description-html>
         <![CDATA[if the host certificate could not be authenticated.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.GatewayNotFound">
      <fault-description-html>
         <![CDATA[if the host is managed via host gateway and
          no available gateway server is found for the given parameters]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.GatewayNotReachable">
      <fault-description-html>
         <![CDATA[if the host is managed via host gateway
          and vCenter Server cannot establish a network connection to the
          gateway server, or verify the gateway server's identity]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.GatewayOperationRefused">
      <fault-description-html>
         <![CDATA[if the gateway server cannot accept
          more host connections]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.GatewayHostNotReachable">
      <fault-description-html>
         <![CDATA[if the host is managed via host
          gateway and the gateway server cannot connect to the host]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.GatewayToHostTrustVerifyFault">
      <fault-description-html>
         <![CDATA[if the host is managed via host gateway
          and the gateway server cannot verify that the host is trusted]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.GatewayToHostAuthFault">
      <fault-description-html>
         <![CDATA[if the host is managed via host gateway
          and the gateway server needs additional information to
          authenticate before the host]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.GatewayConnectFault">
      <fault-description-html>
         <![CDATA[if the host is managed via host gateway
          and any error occurred during the communication with the gateway]]>
      </fault-description-html>
      </fault>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to monitor the
        operation.]]>
      </task-description-html>
   </method>
   <method name="DisconnectHost"
      vmodl-name="disconnect"
      privilege="Host.Config.Connection"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Disconnects from a host and instructs the server to stop sending heartbeats.]]>
      </description-html>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to monitor the
        operation.]]>
      </task-description-html>
   </method>
   <method name="EnterMaintenanceMode"
      vmodl-name="enterMaintenanceMode"
      privilege="Host.Config.Maintenance"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Puts the host in maintenance mode. While this task is running and when the host is
  in maintenance mode, no virtual machines can be powered on and no provisioning
  operations can be performed on the host. Once the call completes, it is safe to
  turn off a host without disrupting any virtual machines.
  <p>
  The task completes once there are no powered-on virtual machines on the host and
  no provisioning operations in progress on the host. The operation does not
  directly initiate any operations to evacuate or power-down powered-on virtual machines.
  However, if the host is part of a cluster with VMware DRS enabled, DRS provides
  migration recommendations to evacuate the powered-on virtual machines. If DRS is in
  fully-automatic mode, these are automatically scheduled.
  <p>
  If the host is part of a cluster and the task is issued through VirtualCenter with
  evacuatePoweredOffVms set to true, the task will not succeed unless all the
  powered-off virtual machines are reregistered to other hosts. If VMware DRS is
  enabled, vCenter Server will automatically evacuate powered-off virtual machines.
  <p>
  If this API is called directly on the ESXi host, then the user is responsible
  for powering off, suspending or evacuating all powered-on virtual machines.

  The task is cancellable.]]>
      </description-html>
      <parameter name="timeout" type-id-ref="INT"
      vmodl-name="timeout"
      version-id-ref="vim.version.version1"
      privilege="timeout"
      >
      <description-html>
         <![CDATA[The task completes when the host successfully enters maintenance
                  mode or the timeout expires, and in the latter case the task
                  contains a Timeout fault. If the timeout is less than or equal to
                  zero, there is no timeout. The timeout is specified in seconds.]]>
      </description-html>
      </parameter>
      <parameter name="evacuatePoweredOffVms" type-id-ref="BOOLEAN"
      vmodl-name="evacuatePoweredOffVms"
      version-id-ref="vim.version.version1"
      is-optional="true"
      privilege="evacuatePoweredOffVms"
      >
      <description-html>
         <![CDATA[This is a parameter only supported by VirtualCenter.
                  If set to true, for a DRS disabled cluster, the task will not
                  succeed unless all powered-off virtual machines have been manually
                  reregistered; for a DRS enabled cluster, VirtualCenter will
                  automatically reregister powered-off virtual machines and a
                  powered-off virtual machine may remain at the host only for two
                  reasons: (a) no compatible host found for reregistration, (b) DRS
                  is disabled for the virtual machine. If set to false, powered-off
                  virtual machines do not need to be moved.]]>
      </description-html>
      </parameter>
      <parameter name="maintenanceSpec" type-id-ref="vim.host.MaintenanceSpec"
      vmodl-name="maintenanceSpec"
      version-id-ref="vim.version.version1"
      is-optional="true"
      privilege="maintenanceSpec"
      >
      <description-html>
         <![CDATA[Any additional actions to be taken by the host upon
                         entering maintenance mode.  If omitted, default actions will
                         be taken as documented in the <a href="vim.host.MaintenanceSpec.html">HostMaintenanceSpec</a>.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the host is already in maintenance mode.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.Timedout">
      <fault-description-html>
         <![CDATA[if the operation timed out.]]>
      </fault-description-html>
      </fault>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to monitor the
        operation.]]>
      </task-description-html>
   </method>
   <method name="ExitMaintenanceMode"
      vmodl-name="exitMaintenanceMode"
      privilege="Host.Config.Maintenance"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Takes the host out of maintenance mode. This blocks if any concurrent
   running maintenance-only host configurations operations are being performed.
   For example, if VMFS volumes are being upgraded.
   <p>
   The task is cancellable.]]>
      </description-html>
      <parameter name="timeout" type-id-ref="INT"
      vmodl-name="timeout"
      version-id-ref="vim.version.version1"
      privilege="timeout"
      >
      <description-html>
         <![CDATA[Number of seconds to wait for the exit maintenance mode to
                  succeed. If the timeout is less than or equal to zero, there
                  is no timeout.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the host is not in maintenance mode.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.Timedout">
      </fault>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to monitor the
        operation.]]>
      </task-description-html>
   </method>
   <method name="RebootHost"
      vmodl-name="reboot"
      privilege="Host.Config.Maintenance"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Reboots a host. If the command is successful, then the host has been rebooted. If
  connected directly to the host, the client never receives an indicator of success
  in the returned task but simply loses connection to the host, upon success.
  <p>
  This command is not supported on all hosts. Check the host capability
  <a href="vim.host.Capability.html#rebootSupported">rebootSupported</a>.]]>
      </description-html>
      <parameter name="force" type-id-ref="BOOLEAN"
      vmodl-name="force"
      version-id-ref="vim.version.version1"
      privilege="force"
      >
      <description-html>
         <![CDATA[Flag to specify whether or not the host should be rebooted
                regardless of whether it is in maintenance mode. If true, the host
                is rebooted, even if there are virtual machines running or other
                operations in progress.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if "force" is false and the host is not in maintenance mode.]]>
      </fault-description-html>
      </fault>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to monitor the
        operation.]]>
      </task-description-html>
   </method>
   <method name="ShutdownHost"
      vmodl-name="shutdown"
      privilege="Host.Config.Maintenance"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Shuts down a host. If the command is successful, then the host has been shut down.
  Thus, the client never receives an indicator of success in the returned task if
  connected directly to the host.
  <p>
  This command is not supported on all hosts. Check the host capability
  <a href="vim.host.Capability.html#shutdownSupported">shutdownSupported</a>.]]>
      </description-html>
      <parameter name="force" type-id-ref="BOOLEAN"
      vmodl-name="force"
      version-id-ref="vim.version.version1"
      privilege="force"
      >
      <description-html>
         <![CDATA[Flag to specify whether or not the host should be shut down
                regardless of whether it is in maintenance mode.
                If true, the host is shut down, even if there are
                virtual machines running or other operations in progress.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if "force" is false and the host is not in
                        maintenance mode.]]>
      </fault-description-html>
      </fault>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to monitor the
        operation.]]>
      </task-description-html>
   </method>
   <method name="PowerDownHostToStandBy"
      vmodl-name="enterStandbyMode"
      version-id-ref="vim.version.version2"
      privilege="Host.Config.Maintenance"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Puts the host in standby mode, a mode in which the host is in a
  standby state from which it can be powered up remotely. While
  this task is running, no virtual machines can be powered on and
  no provisioning operations can be performed on the host.
  <p>
  The task completes only if there are no powered-on virtual
  machines on the host, no provisioning operations in progress on
  the host, and the host stopped responding. The operation does
  not directly initiate any operations to evacuate or power-down
  powered-on virtual machines. However, if a dynamic recommendation
  generation module is running, if possible, it will provide, and
  depending on the automation level, it will execute migrations
  of powered-on virtual machine. Furthermore, VMware power
  management module may evacute and put a host in standby mode to
  save power.

  If the host is part of a cluster and the task is issued through VirtualCenter with
  evacuatePoweredOffVms set to true, the task will not succeed unless all the
  powered-off virtual machines are reregistered to other hosts. If VMware DRS is
  enabled, vCenter Server will automatically evacuate powered-off virtual machines.
  <p>
  The task is cancellable.
  <p>
  This command is not supported on all hosts. Check the host capability
  <a href="vim.host.Capability.html#standbySupported">standbySupported</a>.]]>
      </description-html>
      <parameter name="timeoutSec" type-id-ref="INT"
      vmodl-name="timeoutSec"
      version-id-ref="vim.version.version2"
      privilege="timeoutSec"
      >
      <description-html>
         <![CDATA[The task completes when the host successfully
               enters standby mode and stops sending heartbeat signals.
               If heartbeats are still coming after timeoutSecs seconds,
               the host is declared timedout, and the task is assumed
               failed.]]>
      </description-html>
      </parameter>
      <parameter name="evacuatePoweredOffVms" type-id-ref="BOOLEAN"
      vmodl-name="evacuatePoweredOffVms"
      version-id-ref="vim.version.version2"
      is-optional="true"
      privilege="evacuatePoweredOffVms"
      >
      <description-html>
         <![CDATA[This is a parameter used only by VirtualCenter. If
                  set to true, for a DRS disabled cluster, the task will not
                  succeed unless all powered-off virtual machines have been manually
                  reregistered; for a DRS enabled cluster, VirtualCenter will
                  automatically reregister powered-off virtual machines and a
                  powered-off virtual machine may remain at the host only for two
                  reasons: (a) no compatible host found for reregistration, (b) DRS
                  is disabled for the virtual machine.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.HostPowerOpFailed">
      <fault-description-html>
         <![CDATA[if the standby operation fails.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the host is already in standby mode, or disconnected.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vmodl.fault.NotSupported">
      <fault-description-html>
         <![CDATA[if the host does not support standby mode.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.Timedout">
      </fault>
      <fault type-id-ref="vmodl.fault.RequestCanceled">
      <fault-description-html>
         <![CDATA[if the operation is canceled.]]>
      </fault-description-html>
      </fault>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to monitor the
        operation.]]>
      </task-description-html>
   </method>
   <method name="PowerUpHostFromStandBy"
      vmodl-name="exitStandbyMode"
      version-id-ref="vim.version.version2"
      privilege="Host.Config.Maintenance"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Takes the host out of standby mode. If the command is
  successful, the host wakes up and starts sending
  heartbeats. This method may be called automatically by a
  dynamic recommendation generation module to add capacity to a
  cluster, if the host is not in maintenance mode.
  <p>
  Note that, depending on the implementation of the wakeup
  method, the client may never receive an indicator of success in
  the returned task. In some cases, it is not even possible to
  ensure that the wakeup request has made it to the host.
  <p>
  The task is cancellable.
  <p>]]>
      </description-html>
      <parameter name="timeoutSec" type-id-ref="INT"
      vmodl-name="timeoutSec"
      version-id-ref="vim.version.version2"
      privilege="timeoutSec"
      >
      <description-html>
         <![CDATA[The task completes when the host successfully
             exits standby state and sends a heartbeat signal. If nothing is
             received from the host for timeoutSec seconds, the host is
             declared timedout, and the task is assumed failed.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.HostPowerOpFailed">
      <fault-description-html>
         <![CDATA[if the standby operation fails.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the host is in a state from which it
         cannot be woken up (e.g., disconnected, poweredOff)]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vmodl.fault.NotSupported">
      <fault-description-html>
         <![CDATA[if the host does not support standby mode.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.Timedout">
      </fault>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to monitor the
        operation.]]>
      </task-description-html>
   </method>
   <method name="QueryMemoryOverhead"
      vmodl-name="queryOverhead"
      is-deprecated="true"
      privilege="System.Read"
      type-id-ref="LONG"
      >
      <description-html>
         <![CDATA[Determines the amount of memory overhead necessary to power on a virtual
  machine with the specified characteristics.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of VI API 2.5, use <a href="vim.HostSystem.html#queryOverheadEx">QueryMemoryOverheadEx</a>.]]>
      </deprecated-html>
      <parameter name="memorySize" type-id-ref="LONG"
      vmodl-name="memorySize"
      version-id-ref="vim.version.version1"
      privilege="memorySize"
      >
      <description-html>
         <![CDATA[The amount of virtual system RAM, in bytes. For an existing
        virtual machine, this value can be found (in megabytes) as the memoryMB
        property of the <a href="vim.vm.VirtualHardware.html">VirtualHardware</a>.]]>
      </description-html>
      </parameter>
      <parameter name="videoRamSize" type-id-ref="INT"
      vmodl-name="videoRamSize"
      version-id-ref="vim.version.version1"
      is-optional="true"
      privilege="videoRamSize"
      >
      <description-html>
         <![CDATA[The amount of virtual video RAM, in bytes. For an existing
        virtual machine on a host that supports advertising this property, this
        value can be found (in kilobytes) as the videoRamSizeInKB property of the
        <a href="vim.vm.device.VirtualVideoCard.html">VirtualMachineVideoCard</a>. If this parameter is left unset, the
        default video RAM size for virtual machines on this host is assumed.]]>
      </description-html>
      </parameter>
      <parameter name="numVcpus" type-id-ref="INT"
      vmodl-name="numVcpus"
      version-id-ref="vim.version.version1"
      privilege="numVcpus"
      >
      <description-html>
         <![CDATA[The number of virtual CPUs. For an existing virtual machine, this
        value can be found as the numCPU property of the
        <a href="vim.vm.VirtualHardware.html">VirtualHardware</a>.]]>
      </description-html>
      </parameter>
      <return-value-description-html>
         <![CDATA[The amount of overhead memory required to power on such a virtual machine,
         in bytes.]]>
      </return-value-description-html>
   </method>
   <method name="QueryMemoryOverheadEx"
      vmodl-name="queryOverheadEx"
      version-id-ref="vim.version.version2"
      is-deprecated="true"
      privilege="System.Read"
      type-id-ref="LONG"
      >
      <description-html>
         <![CDATA[Determines the amount of memory overhead necessary to power on a virtual
  machine with the specified characteristics.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of VI API 6.0, use
  <a href="vim.vm.ConfigInfo.html#initialOverhead">initialOverhead</a>.]]>
      </deprecated-html>
      <parameter name="vmConfigInfo" type-id-ref="vim.vm.ConfigInfo"
      vmodl-name="vmConfigInfo"
      version-id-ref="vim.version.version2"
      privilege="vmConfigInfo"
      >
      <description-html>
         <![CDATA[The configuration of the virtual machine.]]>
      </description-html>
      </parameter>
      <return-value-description-html>
         <![CDATA[The amount of overhead memory required to power on such a virtual machine,
          in bytes.]]>
      </return-value-description-html>
   </method>
   <method name="ReconfigureHostForDAS"
      vmodl-name="reconfigureDAS"
      privilege="Host.Config.Connection"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Reconfigures the host for vSphere HA.
  <p>
  If the host is part of a HA cluster, this operation reconfigures the host for HA.
  For example, this operation may be used if a host is added to a HA enabled cluster
  and the automatic HA configuration system task fails. Automatic HA configuration
  may fail for a variety of reasons. For example, the host is configured
  incorrectly.]]>
      </description-html>
      <fault type-id-ref="vim.fault.DasConfigFault">
      <fault-description-html>
         <![CDATA[if there is a problem reconfiguring the host for HA.]]>
      </fault-description-html>
      </fault>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to monitor the
        operation.]]>
      </task-description-html>
   </method>
   <method name="UpdateFlags"
      vmodl-name="updateFlags"
      version-id-ref="vim.version.version2"
      privilege="Host.Config.Settings"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Update flags that are part of the <a href="vim.host.FlagInfo.html">HostFlagInfo</a> object.]]>
      </description-html>
      <parameter name="flagInfo" type-id-ref="vim.host.FlagInfo"
      vmodl-name="flagInfo"
      version-id-ref="vim.version.version2"
      privilege="flagInfo"
      >
      </parameter>
   </method>
   <method name="EnterLockdownMode"
      vmodl-name="enterLockdownMode"
      version-id-ref="vim.version.version6"
      is-deprecated="true"
      privilege="Host.Config.Settings"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Modifies the permissions on the host, so that it will only be accessible
  through local console or an authorized centralized management application.
  Any user defined permissions found on the host are lost.
  <p>
  Access via a VI client connected to the host is blocked.
  Access though other services running on the host is also blocked.
  <p>
  If the operation is successful, <a href="vim.host.ConfigInfo.html#adminDisabled">adminDisabled</a>
  will be set to true. This API is not supported on the host, If invoked
  directly on a host, a NotSupported fault will be thrown.<br>See <a href="vim.AuthorizationManager.html">AuthorizationManager</a><br>]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 6.0, use
              <a href="vim.host.HostAccessManager.html#changeLockdownMode">ChangeLockdownMode</a>.]]>
      </deprecated-html>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[<br>See <a href="vim.AuthorizationManager.html">AuthorizationManager</a><br>]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.AdminDisabled">
      <fault-description-html>
         <![CDATA[If the host's Administrator permission has been
                         disabled.<br>See <a href="vim.AuthorizationManager.html">AuthorizationManager</a><br>]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.DisableAdminNotSupported">
      <fault-description-html>
         <![CDATA[If invoked directly on the host or the
                         host doesn't support this operation.<br>See <a href="vim.AuthorizationManager.html">AuthorizationManager</a><br>]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="ExitLockdownMode"
      vmodl-name="exitLockdownMode"
      version-id-ref="vim.version.version6"
      is-deprecated="true"
      privilege="Host.Config.Settings"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Restores Administrator permission for the local administrative account
  for the host that was removed by prior call to <a href="vim.HostSystem.html#enterLockdownMode">EnterLockdownMode</a>.
  If the operation is successful,
  <a href="vim.host.ConfigInfo.html#adminDisabled">adminDisabled</a> will be set to false. This API
  is not supported on the host. If invoked directly on a host, a
  NotSupported fault will be thrown.<br>See <a href="vim.AuthorizationManager.html">AuthorizationManager</a><br>]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 6.0, use
              <a href="vim.host.HostAccessManager.html#changeLockdownMode">ChangeLockdownMode</a>.]]>
      </deprecated-html>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[<br>See <a href="vim.AuthorizationManager.html">AuthorizationManager</a><br>]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.DisableAdminNotSupported">
      <fault-description-html>
         <![CDATA[If invoked directly on the host or the
                                     host doesn't support this operation.<br>See <a href="vim.AuthorizationManager.html">AuthorizationManager</a><br>]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.AdminNotDisabled">
      <fault-description-html>
         <![CDATA[If the host's Administrator permission
                                     is not disabled.<br>See <a href="vim.AuthorizationManager.html">AuthorizationManager</a><br>]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="AcquireCimServicesTicket"
      vmodl-name="acquireCimServicesTicket"
      version-id-ref="vim.version.version2"
      privilege="Host.Cim.CimInteraction"
      type-id-ref="vim.HostServiceTicket"
      >
      <description-html>
         <![CDATA[Creates and returns a credential used to establish a remote
  connection to a Web Based Management (CIM) interface. Valid only
  when ESXi wbem authentication mode is set to password.
  The ticket provides the port for the service and sslThumbprint should
  be used by client to validate ssl connection. This ticket is valid for 2
  minutes then will expire and is non-renewable.]]>
      </description-html>
   </method>
   <method name="UpdateIpmi"
      vmodl-name="updateIpmi"
      version-id-ref="vim.version.version5"
      privilege="Host.Config.Settings"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Update fields that are part of the <a href="vim.host.IpmiInfo.html">HostIpmiInfo</a> object.]]>
      </description-html>
      <parameter name="ipmiInfo" type-id-ref="vim.host.IpmiInfo"
      vmodl-name="ipmiInfo"
      version-id-ref="vim.version.version5"
      privilege="ipmiInfo"
      >
      </parameter>
      <fault type-id-ref="vim.fault.InvalidIpmiLoginInfo">
      <fault-description-html>
         <![CDATA[if the supplied user ID and/or password is invalid.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidIpmiMacAddress">
      <fault-description-html>
         <![CDATA[if the supplied MAC address is invalid.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="RetrieveHardwareUptime"
      vmodl-name="retrieveHardwareUptime"
      version-id-ref="vim.version.version6"
      privilege="System.Read"
      type-id-ref="LONG"
      >
      <description-html>
         <![CDATA[Return the hardware uptime of the host in seconds.
  The harware uptime of a host is not affected by NTP and changes to its
  wall clock time and can be used by clients to provide a common time
  reference for all hosts.]]>
      </description-html>
   </method>
   <method name="PrepareCrypto"
      vmodl-name="prepareCrypto"
      version-id-ref="vim.version.version11"
      privilege="Cryptographer.RegisterHost"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Prepare the host for receiving sensitive information
 and puts the host in vim.HostSystem.CryptoState#prepared mode
 Note: Must be invoked before <a href="vim.HostSystem.html#enableCrypto">EnableCrypto</a>]]>
      </description-html>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the host is not in
   vim.HostSystem.CryptoState#incapable state]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="EnableCrypto"
      vmodl-name="enableCrypto"
      version-id-ref="vim.version.version11"
      privilege="Cryptographer.RegisterHost"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Sets/changes the key to be used for coredump encryption
 and puts the host in vim.HostSystem.CryptoState#safe state
 Note: <a href="vim.HostSystem.html#prepareCrypto">PrepareCrypto</a> must be called first]]>
      </description-html>
      <parameter name="keyPlain" type-id-ref="vim.encryption.CryptoKeyPlain"
      vmodl-name="keyPlain"
      version-id-ref="vim.version.version11"
      privilege="keyPlain"
      >
      <description-html>
         <![CDATA[The key to be used for coredump encryption]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the host is in
   vim.HostSystem.CryptoState#incapable state]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="ConfigureCryptoKey"
      vmodl-name="configureCryptoKey"
      version-id-ref="vim.version.version11"
      privilege="Cryptographer.RegisterHost"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Sets/changes the key to be used for coredump encryption
 and puts the host in vim.HostSystem.CryptoState#safe state.

 This function will make the host crypto safe and unlock all encrypted
 VMs on the host. When the encryption on the host is enabled for the
 first time after adding it to vCenter Server, this method will start
 sending asynchronously all the encryption keys for VMs on the host and
 cluster to unlock encrypted VMs.

 This API is not supported on the host. If invoked directly on a host, a
 NotSupported fault will be thrown.]]>
      </description-html>
      <parameter name="keyId" type-id-ref="vim.encryption.CryptoKeyId"
      vmodl-name="keyId"
      version-id-ref="vim.version.version11"
      is-optional="true"
      privilege="keyId"
      >
      <description-html>
         <![CDATA[The key to be used for coredump encryption. If unset, uses
              existing host or cluster key or new key is generated from
              the default KMIP server.]]>
      </description-html>
      </parameter>
   </method>
   <method name="QueryProductLockerLocation"
      vmodl-name="queryProductLockerLocation"
      version-id-ref="vim.version.version13"
      privilege="System.Read"
      type-id-ref="java.lang.String"
      >
      <description-html>
         <![CDATA[Query the path to VMware Tools repository configured on the host.

  The host should be powered on.]]>
      </description-html>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[if the configuration could not be read.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[The absolute path currently set for the VMware Tools
          repository on the host.]]>
      </return-value-description-html>
   </method>
   <method name="UpdateProductLockerLocation"
      vmodl-name="updateProductLockerLocation"
      version-id-ref="vim.version.version13"
      privilege="Host.Config.ProductLocker"
      type-id-ref="java.lang.String"
      is-task="true"
      >
      <description-html>
         <![CDATA[Change and reconfigure the VMware Tools repository on the host.
  If the new path is the same as the path already configured on
  the host, no changes will be made to the host.

  The host should be powered on.
  <p>
  This task is not cancellable and cannot be reverted once started.]]>
      </description-html>
      <parameter name="path" type-id-ref="java.lang.String"
      vmodl-name="path"
      version-id-ref="vim.version.version13"
      privilege="path"
      >
      <description-html>
         <![CDATA[The absolute path for the VMware Tools repository
          on the host. It should have "/vmfs/volumes/" prefix and
          it should be a valid existing path, or it could be
          empty to restore to default value.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vmodl.fault.InvalidArgument">
      <fault-description-html>
         <![CDATA[if the path does not have "/vmfs/volumes/"
          prefix and is not empty.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.FileNotFound">
      <fault-description-html>
         <![CDATA[if the path does not exist.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.TaskInProgress">
      <fault-description-html>
         <![CDATA[if there is another task configuring the
          VMware Tools repository on the host.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[if the configuration could not be written.]]>
      </fault-description-html>
      </fault>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to
        monitor the operation. The <a href="vim.TaskInfo.html#result">result</a>
        property in the <a href="vim.Task.html">Task</a> contains the stable vmfs path
        of the VMware Tools repository upon success. A stable vmfs
        path is of the form:
        /vmfs/volumes/[datastore-uuid]/[path/inside/datastore]
        or
        empty to indicate restoring to default value.]]>
      </task-description-html>
   </method>
   <method name="RetrieveFreeEpcMemory"
      vmodl-name="retrieveFreeEpcMemory"
      version-id-ref="vim.version.v7_0"
      privilege="System.Read"
      type-id-ref="LONG"
      >
      <description-html>
         <![CDATA[Return the amount of free EPC memory on the host in bytes.]]>
      </description-html>
   </method>
   </managed-object>
   <managed-object name="Datacenter"
      type-id="vim.Datacenter"
      vmodl-name="vim.Datacenter"
      version-id-ref="vim.version.version1"
      base-type-id="vim.ManagedEntity"
      >
      <description-html>
         <![CDATA[The <a href="vim.Datacenter.html">Datacenter</a> managed object provides the interface to the common container
  object for hosts, virtual machines, networks, and datastores. These entities
  must be under a distinct datacenter in the inventory, and datacenters may not
  be nested under other datacenters.
  <p>
  Every <a href="vim.Datacenter.html">Datacenter</a> has the following set of dedicated folders. These folders are empty
  until you create entities for the Datacenter.
  <ul>
      <li> A folder for <a href="vim.VirtualMachine.html">VirtualMachine</a>, template, and
           <a href="vim.VirtualApp.html">VirtualApp</a> objects.
      <li> A folder for a <a href="vim.ComputeResource.html">ComputeResource</a> hierarchy.
      <li> A folder for <a href="vim.Network.html">Network</a>, <a href="vim.DistributedVirtualSwitch.html">DistributedVirtualSwitch</a>,
           and <a href="vim.dvs.DistributedVirtualPortgroup.html">DistributedVirtualPortgroup</a> objects.
      <li> A folder for <a href="vim.Datastore.html">Datastore</a> objects.
  </ul>
  <p>
  For a visual representation of the organization of objects in a vCenter
  hierarchy, see the description of the <a href="vim.ServiceInstance.html">ServiceInstance</a> object.]]>
      </description-html>
            <property name="vmFolder" type-id-ref="vim.Folder"
      vmodl-name="vmFolder"
      privilege="System.View"
      >
      <description-html>
         <![CDATA[A reference to the folder hierarchy that contains <a href="vim.VirtualMachine.html">VirtualMachine</a>
  virtual machine templates (identified by the <a href="vim.vm.ConfigInfo.html#template">template</a>
  property, and <a href="vim.VirtualApp.html">VirtualApp</a> objects for this datacenter.
  <p>
  Note that a VirtualApp that is a child of a <a href="vim.ResourcePool.html">ResourcePool</a>
  may also be visible in this folder. VirtualApp objects can be nested,
  but only the parent VirtualApp can be visible in the folder.
  <p>
  This folder is guaranteed to exist.]]>
      </description-html>
      </property>

            <property name="hostFolder" type-id-ref="vim.Folder"
      vmodl-name="hostFolder"
      privilege="System.View"
      >
      <description-html>
         <![CDATA[A reference to the folder hierarchy that contains
  the compute resources, including hosts and clusters, for this datacenter.
  <p>
  This folder is guaranteed to exist.]]>
      </description-html>
      </property>

            <property name="datastoreFolder" type-id-ref="vim.Folder"
      vmodl-name="datastoreFolder"
      version-id-ref="vim.version.version5"
      privilege="System.View"
      >
      <description-html>
         <![CDATA[A reference to the folder hierarchy that contains
  the datastores for this datacenter.
  <p>
  This folder is guaranteed to exist.]]>
      </description-html>
      </property>

            <property name="networkFolder" type-id-ref="vim.Folder"
      vmodl-name="networkFolder"
      version-id-ref="vim.version.version5"
      privilege="System.View"
      >
      <description-html>
         <![CDATA[A reference to the folder hierarchy that contains the network entities
  for this datacenter. The folder can include <a href="vim.Network.html">Network</a>,
  <a href="vim.DistributedVirtualSwitch.html">DistributedVirtualSwitch</a>, and
  <a href="vim.dvs.DistributedVirtualPortgroup.html">DistributedVirtualPortgroup</a> objects.
  <p>
  This folder is guaranteed to exist.]]>
      </description-html>
      </property>

            <property name="datastore" type-id-ref="vim.Datastore"
      vmodl-name="datastore"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[A collection of references to the datastore objects
  available in this datacenter.]]>
      </description-html>
      </property>

            <property name="network" type-id-ref="vim.Network"
      vmodl-name="network"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[A collection of references to the network objects
  available in this datacenter.]]>
      </description-html>
      </property>

            <property name="configuration" type-id-ref="vim.Datacenter.ConfigInfo"
      vmodl-name="configuration"
      version-id-ref="vim.version.version8"
      privilege="System.View"
      >
      <description-html>
         <![CDATA[Configuration of the datacenter.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.Datacenter.BasicConnectInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.Datacenter.ConfigInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.Datacenter.ConfigSpec</nested-type-id-ref>
   <method name="BatchQueryConnectInfo"
      vmodl-name="batchQueryConnectInfo"
      version-id-ref="vim.version.version13"
      is-array="true"
      is-optional="true"
      privilege="System.View"
      type-id-ref="vim.Datacenter.BasicConnectInfo"
      >
      <description-html>
         <![CDATA[This interface returns a list of information about the specified hosts
  without adding them to the vCenter inventory. It does so by calling
  <a href="vim.Datacenter.html#queryConnectionInfoViaSpec">QueryConnectionInfoViaSpec</a>.]]>
      </description-html>
      <parameter name="hostSpecs" type-id-ref="vim.host.ConnectSpec"
      vmodl-name="hostSpecs"
      version-id-ref="vim.version.version13"
      is-array="true"
      is-optional="true"
      privilege="hostSpecs"
      >
      <description-html>
         <![CDATA[Information about the set of hosts to query.]]>
      </description-html>
      </parameter>
   </method>
   <method name="QueryConnectionInfo"
      vmodl-name="queryConnectionInfo"
      privilege="System.View"
      type-id-ref="vim.host.ConnectInfo"
      >
      <description-html>
         <![CDATA[This method provides a way of getting basic information about a host without
  adding it to a datacenter. Connection wizards typically use this method to show
  information about a host so a user can confirm a set of changes before applying
  them.]]>
      </description-html>
      <parameter name="hostname" type-id-ref="java.lang.String"
      vmodl-name="hostname"
      version-id-ref="vim.version.version1"
      privilege="hostname"
      >
      <description-html>
         <![CDATA[The target of the query.]]>
      </description-html>
      </parameter>
      <parameter name="port" type-id-ref="INT"
      vmodl-name="port"
      version-id-ref="vim.version.version1"
      privilege="port"
      >
      <description-html>
         <![CDATA[The port number of the target host. For ESX 2.x this is the authd port
    (902 by default). For ESX 3.x and above and for VMware Server hosts
    this is the https port (443 by default). You can specify -1 to have the
    vCenter Server try the default ports.]]>
      </description-html>
      </parameter>
      <parameter name="username" type-id-ref="java.lang.String"
      vmodl-name="username"
      version-id-ref="vim.version.version1"
      privilege="username"
      >
      <description-html>
         <![CDATA[The name of the user.]]>
      </description-html>
      </parameter>
      <parameter name="password" type-id-ref="java.lang.String"
      vmodl-name="password"
      version-id-ref="vim.version.version1"
      privilege="password"
      >
      <description-html>
         <![CDATA[The password of the user.]]>
      </description-html>
      </parameter>
      <parameter name="sslThumbprint" type-id-ref="java.lang.String"
      vmodl-name="sslThumbprint"
      version-id-ref="vim.version.version1"
      is-optional="true"
      privilege="sslThumbprint"
      >
      <description-html>
         <![CDATA[The expected SSL thumbprint of the host's certificate]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.InvalidLogin">
      <fault-description-html>
         <![CDATA[if unable to authenticate with the host.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.HostConnectFault">
      <fault-description-html>
         <![CDATA[if an error occurred when querying about a host.
          Typically, a more specific subclass, such as AlreadyBeingManaged,
          is thrown.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.NoHost">
      <fault-description-html>
         <![CDATA[if unable to contact the host.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.NotSupportedHost">
      <fault-description-html>
         <![CDATA[if the software version on the host is not supported.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.AlreadyConnected">
      <fault-description-html>
         <![CDATA[if the host is already being managed by this server.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.SSLDisabledFault">
      <fault-description-html>
         <![CDATA[if the host has ssl access disabled]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.SSLVerifyFault">
      <fault-description-html>
         <![CDATA[if the host certificate could not be authenticated]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="QueryConnectionInfoViaSpec"
      vmodl-name="queryConnectionInfoViaSpec"
      version-id-ref="vim.version.version10"
      privilege="System.View"
      type-id-ref="vim.host.ConnectInfo"
      >
      <description-html>
         <![CDATA[This method provides a way of getting basic information about a host
  without adding it to a datacenter. This method is similar to
  <a href="vim.Datacenter.html#queryConnectionInfo">QueryConnectionInfo</a>, but it takes a <a href="vim.host.ConnectSpec.html">HostConnectSpec</a>
  as argument, instead of list of parameters.]]>
      </description-html>
      <parameter name="spec" type-id-ref="vim.host.ConnectSpec"
      vmodl-name="spec"
      version-id-ref="vim.version.version10"
      privilege="spec"
      >
      <description-html>
         <![CDATA[The connection spec for the host to be queried. It must contain
    values for all parameters required by <a href="vim.Datacenter.html#queryConnectionInfo">QueryConnectionInfo</a>

  See <a href="vim.Datacenter.html#queryConnectionInfo">QueryConnectionInfo</a> or a list of thrown expections.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.InvalidLogin">
      </fault>
      <fault type-id-ref="vim.fault.HostConnectFault">
      </fault>
      <fault type-id-ref="vim.fault.GatewayNotFound">
      <fault-description-html>
         <![CDATA[if the host is managed via host gateway and
          no available gateway server is found for the given parameters]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.GatewayNotReachable">
      <fault-description-html>
         <![CDATA[if the host is managed via host gateway
          and vCenter Server cannot establish a network connection to the
          gateway server, or verify the gateway server's identity]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.GatewayOperationRefused">
      <fault-description-html>
         <![CDATA[if the gateway server cannot accept
          more host connections]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.GatewayHostNotReachable">
      <fault-description-html>
         <![CDATA[if the host is managed via host
          gateway and the gateway server cannot connect to the host]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.GatewayToHostTrustVerifyFault">
      <fault-description-html>
         <![CDATA[if the host is managed via host gateway
          and the gateway server cannot verify that the host is trusted]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.GatewayToHostAuthFault">
      <fault-description-html>
         <![CDATA[if the host is managed via host gateway
          and the gateway server needs additional information to
          authenticate before the host]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.GatewayConnectFault">
      <fault-description-html>
         <![CDATA[if the host is managed via host gateway
          and any error occurred during the communication with the gateway]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="PowerOnMultiVM"
      vmodl-name="powerOnVm"
      version-id-ref="vim.version.version2"
      privilege="System.View"
      type-id-ref="vim.cluster.PowerOnVmResult"
      is-task="true"
      >
      <description-html>
         <![CDATA[Powers on multiple virtual machines in a data center. If the virtual
  machines are suspended, this method resumes execution from the suspend
  point.

  The virtual machines can belong to different clusters in the data center.

  <p>
  If any virtual machine in the list is manually managed by DRS, or DRS
  has to migrate any manually managed virtual machine or power on any manually
  managed host in order to power on these virtual machines, a DRS recommendation
  will be generated, and the users need to manually apply the recommendation
  for actually powering on these virtual machines.

  Otherwise, all the virtual machine will be automatically powered on. The
  virtual machines on stand alone hosts or DRS disabled will be powered-on
  on the current host. The DRS automatically managed virtual machines will
  be powered-on on the recommended hosts.

  <p>
  When powering on a virtual machine in a cluster, the system
  might do an implicit relocation of the virtual machine to
  another host.

  <p>]]>
      </description-html>
      <parameter name="vm" type-id-ref="vim.VirtualMachine"
      vmodl-name="vm"
      version-id-ref="vim.version.version2"
      is-array="true"
      privilege="vm"
      >
      <description-html>
         <![CDATA[The virtual machines to power on.]]>
      </description-html>
      </parameter>
      <parameter name="option" type-id-ref="vim.option.OptionValue"
      vmodl-name="option"
      version-id-ref="vim.version.version2"
      is-array="true"
      is-optional="true"
      privilege="option"
      >
      <description-html>
         <![CDATA[An array of <a href="vim.option.OptionValue.html">OptionValue</a> options
                for this power-on session. The names and values of the
                options are defined in
                <a href="vim.cluster.PowerOnVmOption.html">ClusterPowerOnVmOption</a>.]]>
      </description-html>
      </parameter>
      <return-value-description-html>
         <![CDATA[An array of Recommendation.]]>
      </return-value-description-html>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to monitor
       the operation, and also a <a href="vim.cluster.PowerOnVmResult.html">ClusterPowerOnVmResult</a> object.]]>
      </task-description-html>
   </method>
   <method name="queryDatacenterConfigOptionDescriptor"
      vmodl-name="queryConfigOptionDescriptor"
      version-id-ref="vim.version.version8"
      is-array="true"
      is-optional="true"
      privilege="System.View"
      type-id-ref="vim.vm.ConfigOptionDescriptor"
      >
      <description-html>
         <![CDATA[The list of possible choices for
  <a href="vim.Datacenter.ConfigSpec.html#defaultHardwareVersionKey">defaultHardwareVersionKey</a>.
  Descriptors returned by the vCenter implementation do not have
  <a href="vim.vm.ConfigOptionDescriptor.html#host">host</a> field populated.]]>
      </description-html>
   </method>
   <method name="ReconfigureDatacenter"
      vmodl-name="reconfigure"
      version-id-ref="vim.version.version8"
      privilege="Datacenter.Reconfigure"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Change the datacenter configuration.]]>
      </description-html>
      <parameter name="spec" type-id-ref="vim.Datacenter.ConfigSpec"
      vmodl-name="spec"
      version-id-ref="vim.version.version8"
      privilege="spec"
      >
      <description-html>
         <![CDATA[A set of configuration changes to apply to the datacenter.
              The specification can be a complete set of changes or a partial
              set of changes, applied incrementally.]]>
      </description-html>
      </parameter>
      <parameter name="modify" type-id-ref="BOOLEAN"
      vmodl-name="modify"
      version-id-ref="vim.version.version8"
      privilege="modify"
      >
      <description-html>
         <![CDATA[Flag to specify whether the specification ("spec") should
                be applied incrementally. If "modify" is false and the
                operation succeeds, then the configuration of the datacenter
                matches the specification exactly; in this case any unset
                portions of the specification will result in unset or
                default portions of the configuration.]]>
      </description-html>
      </parameter>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to monitor
        the operation.]]>
      </task-description-html>
   </method>
   </managed-object>
   <managed-object name="DiagnosticManager"
      type-id="vim.DiagnosticManager"
      vmodl-name="vim.DiagnosticManager"
      version-id-ref="vim.version.version1"
      >
      <description-html>
         <![CDATA[Provides an interface to get low-level debugging logs or diagnostic bundles
  for a server. For VirtualCenter, this includes the log files
  for the server daemon. For an ESX Server host, this includes detailed
  log files for the VMkernel.]]>
      </description-html>
      <nested-type-id-ref>vim.DiagnosticManager.LogDescriptor</nested-type-id-ref>
      <nested-type-id-ref>vim.DiagnosticManager.LogHeader</nested-type-id-ref>
      <nested-type-id-ref>vim.DiagnosticManager.BundleInfo</nested-type-id-ref>
   <method name="QueryDescriptions"
      vmodl-name="queryDescriptions"
      is-array="true"
      is-optional="true"
      privilege="Global.Diagnostics"
      type-id-ref="vim.DiagnosticManager.LogDescriptor"
      >
      <description-html>
         <![CDATA[Returns a list of diagnostic files for a given system.]]>
      </description-html>
      <parameter name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      version-id-ref="vim.version.version1"
      is-optional="true"
      privilege="host"
      >
      <description-html>
         <![CDATA[Specifies the host. If not specified, then it defaults
               to the server itself. For example, if called on
               VirtualCenter, then the value defaults to VirtualCenter logs.
               When called on an ESX server host, the host should not be
               specified.]]>
      </description-html>
      </parameter>
   </method>
   <method name="BrowseDiagnosticLog"
      vmodl-name="browse"
      privilege="Global.Diagnostics"
      type-id-ref="vim.DiagnosticManager.LogHeader"
      >
      <description-html>
         <![CDATA[Returns part of a log file. Log entries are always returned
  chronologically, typically with the newest event last.]]>
      </description-html>
      <parameter name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      version-id-ref="vim.version.version1"
      is-optional="true"
      privilege="host"
      >
      <description-html>
         <![CDATA[Specifies the host. If not specified, then it defaults
               to the default server. For example, if called on
               VirtualCenter, then the value defaults to VirtualCenter logs.]]>
      </description-html>
      </parameter>
      <parameter name="key" type-id-ref="java.lang.String"
      vmodl-name="key"
      version-id-ref="vim.version.version1"
      privilege="key"
      >
      <description-html>
         <![CDATA[A string key specifying the key for the log file to
                browse. Keys can be obtained using the queryDescriptions
                method.]]>
      </description-html>
      </parameter>
      <parameter name="start" type-id-ref="INT"
      vmodl-name="start"
      version-id-ref="vim.version.version1"
      is-optional="true"
      privilege="start"
      >
      <description-html>
         <![CDATA[The line number for the first entry to be returned. If the
                parameter is not specified, then the operation returns
                with lines starting from the top of the log.]]>
      </description-html>
      </parameter>
      <parameter name="lines" type-id-ref="INT"
      vmodl-name="lines"
      version-id-ref="vim.version.version1"
      is-optional="true"
      privilege="lines"
      >
      <description-html>
         <![CDATA[The number of lines to return. If not specified, then
                all lines are returned from the start value to the end of
                the file.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.CannotAccessFile">
      <fault-description-html>
         <![CDATA[if the key refers to a file that cannot be accessed at
                          the present time.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[A LogHeader that includes the log lines. Sometimes fewer log lines are
  returned than were requested. For example, fewer lines are returned than expected
  if the client requests lines that do not exist or if the server limits the number
  of lines that it returns. If zero lines are returned, then the end of the log file
  may have been reached.]]>
      </return-value-description-html>
   </method>
   <method name="GenerateLogBundles"
      vmodl-name="generateLogBundles"
      is-deprecated="true"
      is-array="true"
      is-optional="true"
      privilege="Global.Diagnostics"
      type-id-ref="vim.DiagnosticManager.BundleInfo"
      is-task="true"
      >
      <description-html>
         <![CDATA[Instructs the server to generate diagnostic bundles. A diagnostic bundle
  includes log files and other configuration information that can be used
  to investigate potential server issues. Virtual machine and guest
  operation system state is excluded from diagnostic bundles.
  <p>]]>
      </description-html>
      <deprecated-html>
         <![CDATA[- since version 5.0 M/N it is recommended to use the CGI interface
          for the host bundles, use the address instead:
               https:<<ESX_name>>/cgi-bin/vm-support.cgi
          for the VC bundles, use
               https:<<VC_name>>/appliance/support-bundle

  <p>
  The caller can download the bundles using an HTTP GET operation
  for each returned URL. Bundles are usually available for at least 24
  hours, but the caller should not assume that the returned URLs are
  valid indefinitely. Servers often automatically delete generated
  diagnostic bundles after some given period of time.]]>
      </deprecated-html>
      <parameter name="includeDefault" type-id-ref="BOOLEAN"
      vmodl-name="includeDefault"
      version-id-ref="vim.version.version1"
      privilege="includeDefault"
      >
      <description-html>
         <![CDATA[Specifies if the bundle should include the
                         default server. If called on a VirtualCenter
                         server, then this means the VirtualCenter
                         diagnostic files. If called directly on a host,
                         then includeDefault must be set to true.]]>
      </description-html>
      </parameter>
      <parameter name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      version-id-ref="vim.version.version1"
      is-array="true"
      is-optional="true"
      privilege="host"
      >
      <description-html>
         <![CDATA[Lists hosts that are included. This is only used
                         when called on VirtualCenter. If called directly
                         on a host, then this parameter must be empty.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.LogBundlingFailed">
      <fault-description-html>
         <![CDATA[if generation of support bundle failed.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.TaskInProgress">
      <fault-description-html>
         <![CDATA[if there is a pending request to generate a support bundle.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[a list of BundleInfo objects for each diagnostic bundle that has been
          generated. The list may include no information from some requested hosts.
          For example, hosts that are disconnected or not responding are ignored.]]>
      </return-value-description-html>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to monitor the
        operation. Upon success, the <a href="vim.TaskInfo.html#result">result</a>
        property in the <a href="vim.Task.html">Task</a> contains a list of
        <a href="vim.DiagnosticManager.BundleInfo.html">DiagnosticManagerBundleInfo</a> objects for each diagnostic
        bundle that has been generated.]]>
      </task-description-html>
   </method>
   </managed-object>
   <managed-object name="VirtualDiskManager"
      type-id="vim.VirtualDiskManager"
      vmodl-name="vim.VirtualDiskManager"
      version-id-ref="vim.version.version2"
      >
      <description-html>
         <![CDATA[<p>
  Most VirtualDiskManager APIs will be DEPRECATED as of vSphere 6.5.
  Please use VStorageObjectManager APIs to manage Virtual disks.
  <p>

  This managed object type provides a way to manage and manipulate virtual disks
  on datastores. The source and the destination names are in the form of
  a URL or a datastore path.
  <p>
  A URL has the form
  <blockquote><i>scheme</i>://<i>authority</i>/folder/<i>path</i>?dcPath=<i>dcPath</i>&dsName=<i>dsName</i></blockquote>
  where
  <li><i>scheme</i> is <code>http</code> or <code>https</code>.</li>
  <li><i>authority</i> specifies the hostname or IP address of the VirtualCenter or
  ESX server and optionally the port.</li>
  <li><i>dcPath</i> is the inventory path to the Datacenter containing the
   Datastore.</li>
  <li><i>dsName</i> is the name of the Datastore.</li>
  <li><i>path</i> is a slash-delimited path from the root of the datastore.</li>
  <p>
  A datastore path has the form <blockquote>[<i>datastore</i>] <i>path</i></blockquote>
  where
  <li><i>datastore</i> is the datastore name.</li>
  <li><i>path</i> is a slash-delimited path from the root of the datastore.</li>
  An example datastore path is "[storage] path/to/file.extension".
  A listing of all the files, disks and folders on
  a datastore can be obtained from the datastore browser.<br>See <a href="vim.host.DatastoreBrowser.html">HostDatastoreBrowser</a><br>]]>
      </description-html>
      <nested-type-id-ref>vim.VirtualDiskManager.VirtualDiskType</nested-type-id-ref>
      <nested-type-id-ref>vim.VirtualDiskManager.VirtualDiskAdapterType</nested-type-id-ref>
      <nested-type-id-ref>vim.VirtualDiskManager.VirtualDiskSpec</nested-type-id-ref>
      <nested-type-id-ref>vim.VirtualDiskManager.FileBackedVirtualDiskSpec</nested-type-id-ref>
      <nested-type-id-ref>vim.VirtualDiskManager.SeSparseVirtualDiskSpec</nested-type-id-ref>
      <nested-type-id-ref>vim.VirtualDiskManager.DeviceBackedVirtualDiskSpec</nested-type-id-ref>
   <method name="CreateVirtualDisk"
      vmodl-name="createVirtualDisk"
      is-deprecated="true"
      privilege="System.View"
      type-id-ref="java.lang.String"
      is-task="true"
      >
      <description-html>
         <![CDATA[Create a virtual disk.
  <p>
  The datacenter parameter may be omitted if a URL is used to name the disk.
  <p>
  Requires Datastore.FileManagement privilege on the datastore where the
  virtual disk is created.
  <p>]]>
      </description-html>
      <deprecated-html>
         <![CDATA[as of vSphere 6.5, use
  <a href="vim.vslm.host.VStorageObjectManager.html#createDisk">HostCreateDisk_Task</a> instead.]]>
      </deprecated-html>
      <parameter name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      version-id-ref="vim.version.version2"
      privilege="name"
      >
      <description-html>
         <![CDATA[The name of the disk, either a datastore path or a
              URL referring to the virtual disk to be created.]]>
      </description-html>
      </parameter>
      <parameter name="datacenter" type-id-ref="vim.Datacenter"
      vmodl-name="datacenter"
      version-id-ref="vim.version.version2"
      is-optional="true"
      privilege="datacenter"
      >
      <description-html>
         <![CDATA[If <code>name</code> is a datastore path, the datacenter for
                    that datastore path. Not needed when invoked directly on ESX.
                    If not specified on a call to VirtualCenter,
                    <code>name</code> must be a URL.]]>
      </description-html>
      </parameter>
      <parameter name="spec" type-id-ref="vim.VirtualDiskManager.VirtualDiskSpec"
      vmodl-name="spec"
      version-id-ref="vim.version.version2"
      privilege="spec"
      >
      <description-html>
         <![CDATA[The specification of the virtual disk to be created.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.FileFault">
      <fault-description-html>
         <![CDATA[if an error occurs creating the virtual disk.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidDatastore">
      <fault-description-html>
         <![CDATA[if the operation cannot be performed on the datastore.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[a datastore path referring to the created virtual disk.]]>
      </return-value-description-html>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to monitor the
        operation.]]>
      </task-description-html>
   </method>
   <method name="DeleteVirtualDisk"
      vmodl-name="deleteVirtualDisk"
      is-deprecated="true"
      privilege="System.View"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Delete a virtual disk.  All files relating to the disk
  will be deleted.
  <p>
  The datacenter parameter may be omitted if a URL is used to name the disk.
  <p>
  Requires Datastore.FileManagement privilege on the datastore where the
  virtual disk is removed.
  <p>]]>
      </description-html>
      <deprecated-html>
         <![CDATA[as of vSphere 6.5, use
  <a href="vim.vslm.host.VStorageObjectManager.html#deleteVStorageObject">HostDeleteVStorageObject_Task</a> instead.]]>
      </deprecated-html>
      <parameter name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      version-id-ref="vim.version.version2"
      privilege="name"
      >
      <description-html>
         <![CDATA[The name of the disk, either a datastore path or a URL
              referring to the virtual disk to be deleted.]]>
      </description-html>
      </parameter>
      <parameter name="datacenter" type-id-ref="vim.Datacenter"
      vmodl-name="datacenter"
      version-id-ref="vim.version.version2"
      is-optional="true"
      privilege="datacenter"
      >
      <description-html>
         <![CDATA[If <code>name</code> is a datastore path, the datacenter for
                    that datastore path. Not needed when invoked directly on ESX.
                    If not specified on a call to VirtualCenter,
                    <code>name</code> must be a URL.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.FileFault">
      <fault-description-html>
         <![CDATA[if an error occurs deleting the virtual disk.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidDatastore">
      <fault-description-html>
         <![CDATA[if the operation cannot be performed on the datastore.]]>
      </fault-description-html>
      </fault>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to monitor the
        operation.]]>
      </task-description-html>
   </method>
   <method name="MoveVirtualDisk"
      vmodl-name="moveVirtualDisk"
      privilege="System.View"
      type-id-ref="java.lang.String"
      is-task="true"
      >
      <description-html>
         <![CDATA[Move a virtual disk and all related files from the source location specified
  by <code>sourceName</code> and <code>sourceDatacenter</code> to the destination
  location specified by <code>destName</code> and <code>destDatacenter</code>.
  <p>
  If source (or destination) name is specified as a URL, then the
  corresponding datacenter parameter may be omitted.
  <p>
  If source and destination resolve to the same file system location,
  the call has no effect.
  <p>
  Requires Datastore.FileManagement privilege on both source and destination
  datastores.
  <p>]]>
      </description-html>
      <parameter name="sourceName" type-id-ref="java.lang.String"
      vmodl-name="sourceName"
      version-id-ref="vim.version.version2"
      privilege="sourceName"
      >
      <description-html>
         <![CDATA[The name of the source, either a datastore path
                    or a URL referring to the virtual disk to be moved.]]>
      </description-html>
      </parameter>
      <parameter name="sourceDatacenter" type-id-ref="vim.Datacenter"
      vmodl-name="sourceDatacenter"
      version-id-ref="vim.version.version2"
      is-optional="true"
      privilege="sourceDatacenter"
      >
      <description-html>
         <![CDATA[If <code>sourceName</code> is a datastore path, the
                          datacenter for that datastore path.
                          Not needed when invoked directly on ESX.
                          If not specified on a call to VirtualCenter,
                          <code>sourceName</code> must be a URL.]]>
      </description-html>
      </parameter>
      <parameter name="destName" type-id-ref="java.lang.String"
      vmodl-name="destName"
      version-id-ref="vim.version.version2"
      privilege="destName"
      >
      <description-html>
         <![CDATA[The name of the destination, either a datastore path
                  or a URL referring to the destination virtual disk.]]>
      </description-html>
      </parameter>
      <parameter name="destDatacenter" type-id-ref="vim.Datacenter"
      vmodl-name="destDatacenter"
      version-id-ref="vim.version.version2"
      is-optional="true"
      privilege="destDatacenter"
      >
      <description-html>
         <![CDATA[If <code>destName</code> is a datastore
                        path, the datacenter for that datastore path.
                        Not needed when invoked directly on ESX.
                        If not specified on a call to VirtualCenter, it is assumed that
                        the destination path belongs to the source datacenter.]]>
      </description-html>
      </parameter>
      <parameter name="force" type-id-ref="BOOLEAN"
      vmodl-name="force"
      version-id-ref="vim.version.version2"
      is-optional="true"
      privilege="force"
      >
      <description-html>
         <![CDATA[If true, overwrite any indentically named disk at the destination.
               If not specified, it is assumed to be false]]>
      </description-html>
      </parameter>
      <parameter name="profile" type-id-ref="vim.vm.ProfileSpec"
      vmodl-name="profile"
      version-id-ref="vim.version.version2"
      is-array="true"
      is-optional="true"
      privilege="profile"
      >
      <description-html>
         <![CDATA[User can specify new set of profile when moving virtual disk.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.FileFault">
      <fault-description-html>
         <![CDATA[if an error occurs renaming the virtual disk.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidDatastore">
      <fault-description-html>
         <![CDATA[if the operation cannot be performed on the source
  or destination datastore.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[a datastore path referring to the destination virtual disk.]]>
      </return-value-description-html>
   </method>
   <method name="CopyVirtualDisk"
      vmodl-name="copyVirtualDisk"
      privilege="System.View"
      type-id-ref="java.lang.String"
      is-task="true"
      >
      <description-html>
         <![CDATA[Copy a virtual disk, performing conversions as specified in the spec.
  <p>
  If source (or destination) name is specified as a URL, then the
  corresponding datacenter parameter may be omitted.
  <p>
  If source and destination resolve to the same file system location,
  the call has no effect, regardless of destSpec content.
  <p>
  Requires Datastore.FileManagement privilege on both source and destination
  datastores.
  <p>]]>
      </description-html>
      <parameter name="sourceName" type-id-ref="java.lang.String"
      vmodl-name="sourceName"
      version-id-ref="vim.version.version2"
      privilege="sourceName"
      >
      <description-html>
         <![CDATA[The name of the source, either a datastore path
                    or a URL referring to the virtual disk to be copied.]]>
      </description-html>
      </parameter>
      <parameter name="sourceDatacenter" type-id-ref="vim.Datacenter"
      vmodl-name="sourceDatacenter"
      version-id-ref="vim.version.version2"
      is-optional="true"
      privilege="sourceDatacenter"
      >
      <description-html>
         <![CDATA[If <code>sourceName</code> is a datastore path, the
                          datacenter for that datastore path.
                          Not needed when invoked directly on ESX.
                          If not specified on a call to VirtualCenter,
                          <code>sourceName</code> must be a URL.]]>
      </description-html>
      </parameter>
      <parameter name="destName" type-id-ref="java.lang.String"
      vmodl-name="destName"
      version-id-ref="vim.version.version2"
      privilege="destName"
      >
      <description-html>
         <![CDATA[The name of the destination, either a datastore path
                    or a URL referring to the virtual disk to be created.]]>
      </description-html>
      </parameter>
      <parameter name="destDatacenter" type-id-ref="vim.Datacenter"
      vmodl-name="destDatacenter"
      version-id-ref="vim.version.version2"
      is-optional="true"
      privilege="destDatacenter"
      >
      <description-html>
         <![CDATA[If <code>destName</code> is a datastore
                        path, the datacenter for that datastore path.
                        Not needed when invoked directly on ESX.
                        If not specified on a call to VirtualCenter, it is assumed that
                        the destination path belongs to the source datacenter.]]>
      </description-html>
      </parameter>
      <parameter name="destSpec" type-id-ref="vim.VirtualDiskManager.VirtualDiskSpec"
      vmodl-name="destSpec"
      version-id-ref="vim.version.version2"
      is-optional="true"
      privilege="destSpec"
      >
      <description-html>
         <![CDATA[The specification of the virtual disk to be created.
                  If not specified, a preallocated format and  busLogic adapter type is assumed.]]>
      </description-html>
      </parameter>
      <parameter name="force" type-id-ref="BOOLEAN"
      vmodl-name="force"
      version-id-ref="vim.version.version2"
      is-optional="true"
      privilege="force"
      >
      <description-html>
         <![CDATA[The force flag is currently ignored. The FileAlreadyExists fault is thrown if
               the destination file already exists.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.FileFault">
      <fault-description-html>
         <![CDATA[if an error occurs cloning the virtual disk.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidDiskFormat">
      <fault-description-html>
         <![CDATA[if the destination's format is not supported.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidDatastore">
      <fault-description-html>
         <![CDATA[if the operation cannot be performed on the source
                           or destination datastore.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[a datastore path referring to the copied virtual disk.]]>
      </return-value-description-html>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to monitor the
        operation.]]>
      </task-description-html>
   </method>
   <method name="ExtendVirtualDisk"
      vmodl-name="extendVirtualDisk"
      is-deprecated="true"
      privilege="System.View"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Expand the capacity of a virtual disk to the new capacity.

  If the eagerZero flag is not specified,
  - the extended disk region of a zerothick disk will be zeroedthick
  - the extended disk region of a eagerzerothick disk will be eagerzeroedthick
  - a thin-provisioned disk will always be extended as a thin-provisioned disk.

  If the eagerZero flag TRUE, the extended region of the disk will
  always be eagerly zeroed.

  If the eagerZero flag FALSE, the extended region of a zeroedthick or
  eagerzeroedthick the disk will not be eagerly zeroed. This condition has
  no effect on a thin source disk.

  <p>
  The datacenter parameter may be omitted if a URL is used to name the disk.
  <p>
  Requires Datastore.FileManagement privilege on the datastore where the
  virtual disk resides.
  <p>]]>
      </description-html>
      <deprecated-html>
         <![CDATA[as of vSphere 6.5, use
  <a href="vim.vslm.host.VStorageObjectManager.html#extendDisk">HostExtendDisk_Task</a> instead.]]>
      </deprecated-html>
      <parameter name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      version-id-ref="vim.version.version2"
      privilege="name"
      >
      <description-html>
         <![CDATA[The name of the disk, either a datastore path or a URL
              referring to the virtual disk whose capacity should be expanded.]]>
      </description-html>
      </parameter>
      <parameter name="datacenter" type-id-ref="vim.Datacenter"
      vmodl-name="datacenter"
      version-id-ref="vim.version.version2"
      is-optional="true"
      privilege="datacenter"
      >
      <description-html>
         <![CDATA[If <code>name</code> is a datastore path, the datacenter for
                    that datastore path. Not needed when invoked directly on ESX.
                    If not specified on a call to VirtualCenter,
                    <code>name</code> must be a URL.]]>
      </description-html>
      </parameter>
      <parameter name="newCapacityKb" type-id-ref="LONG"
      vmodl-name="newCapacityKb"
      version-id-ref="vim.version.version2"
      privilege="newCapacityKb"
      >
      <description-html>
         <![CDATA[The new capacty of the virtual disk in Kb.]]>
      </description-html>
      </parameter>
      <parameter name="eagerZero" type-id-ref="BOOLEAN"
      vmodl-name="eagerZero"
      version-id-ref="vim.version.version2"
      is-optional="true"
      privilege="eagerZero"
      >
      <description-html>
         <![CDATA[If true, the extended part of the disk will be
                    explicitly filled with zeroes.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.FileFault">
      <fault-description-html>
         <![CDATA[if an error occurs extending the virtual disk.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidDatastore">
      <fault-description-html>
         <![CDATA[if the operation cannot be performed on the datastore.]]>
      </fault-description-html>
      </fault>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to monitor the
        operation.]]>
      </task-description-html>
   </method>
   <method name="QueryVirtualDiskFragmentation"
      vmodl-name="queryVirtualDiskFragmentation"
      privilege="System.View"
      type-id-ref="INT"
      >
      <description-html>
         <![CDATA[Return the percentage of fragmentation of the sparse virtual disk.
  This is the fragmentation of virtual disk file(s) in the host operating
  system, not the fragmentation of the guest operating systemS filesystem
  inside the virtual disk.
  <p>
  The datacenter parameter may be omitted if a URL is used to name the disk.
  <p>
  Requires Datastore.FileManagement privilege on the datastore where the
  virtual disk resides.
  <p>]]>
      </description-html>
      <parameter name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      version-id-ref="vim.version.version2"
      privilege="name"
      >
      <description-html>
         <![CDATA[The name of the disk, either a datastore path or a URL
              referring to the virtual disk for which to return the
              percentage of fragmentation.]]>
      </description-html>
      </parameter>
      <parameter name="datacenter" type-id-ref="vim.Datacenter"
      vmodl-name="datacenter"
      version-id-ref="vim.version.version2"
      is-optional="true"
      privilege="datacenter"
      >
      <description-html>
         <![CDATA[If <code>name</code> is a datastore path, the datacenter for
                    that datastore path. Not needed when invoked directly on ESX.
                    If not specified on a call to VirtualCenter,
                    <code>name</code> must be a URL.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.FileFault">
      <fault-description-html>
         <![CDATA[if an error occurs reading the virtual disk.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidDatastore">
      <fault-description-html>
         <![CDATA[if the operation cannot be performed on the datastore.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[the percentage of fragmentation (as an integer between 0 and 100)
          of the sparse virtual disk.]]>
      </return-value-description-html>
   </method>
   <method name="DefragmentVirtualDisk"
      vmodl-name="defragmentVirtualDisk"
      is-deprecated="true"
      privilege="System.View"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Defragment a sparse virtual disk.
  This is defragmentation of the virtual disk file(s) in the host operating
  system, not defragmentation of the guest operating system filesystem inside
  the virtual disk.
  <p>
  The datacenter parameter may be omitted if a URL is used to name the disk.
  <p>
  Requires Datastore.FileManagement privilege on the datastore where the
  virtual disk resides.
  <p>]]>
      </description-html>
      <deprecated-html>
         <![CDATA[as of vSphere 6.5, use
  <a href="vim.VirtualMachine.html#defragmentAllDisks">DefragmentAllDisks</a> instead.]]>
      </deprecated-html>
      <parameter name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      version-id-ref="vim.version.version2"
      privilege="name"
      >
      <description-html>
         <![CDATA[The name of the disk, either a datastore path or a URL
              referring to the virtual disk that should be defragmented.]]>
      </description-html>
      </parameter>
      <parameter name="datacenter" type-id-ref="vim.Datacenter"
      vmodl-name="datacenter"
      version-id-ref="vim.version.version2"
      is-optional="true"
      privilege="datacenter"
      >
      <description-html>
         <![CDATA[If <code>name</code> is a datastore path, the datacenter for
                    that datastore path. Not needed when invoked directly on ESX.
                    If not specified on a call to VirtualCenter,
                    <code>name</code> must be a URL.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.FileFault">
      <fault-description-html>
         <![CDATA[if an error occurs defragmenting the virtual disk.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidDatastore">
      <fault-description-html>
         <![CDATA[if the operation cannot be performed on the datastore.]]>
      </fault-description-html>
      </fault>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to monitor the
        operation.]]>
      </task-description-html>
   </method>
   <method name="ShrinkVirtualDisk"
      vmodl-name="shrinkVirtualDisk"
      is-deprecated="true"
      privilege="System.View"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Shrink a sparse virtual disk.
  <p>
  The datacenter parameter may be omitted if a URL is used to name the disk.
  <p>
  The optional parameter <code>copy</code> specifies whether to shrink the
  disk in copy-shrink mode or in-place mode. In copy-shrink mode,
  additional space is required, but will result in a shrunk disk that is
  also defragmented. In-place shrink does not require additional space,
  but will increase fragmentation. The default behavior is to perform
  copy-shrink if the parameter is not specified.
  <p>
  Requires Datastore.FileManagement privilege on the datastore where the
  virtual disk resides.
  <p>]]>
      </description-html>
      <deprecated-html>
         <![CDATA[as of vSphere 6.5, use
  <a href="vim.VirtualMachine.html#shrinkDisk">ShrinkDisk_Task</a> instead.]]>
      </deprecated-html>
      <parameter name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      version-id-ref="vim.version.version2"
      privilege="name"
      >
      <description-html>
         <![CDATA[The name of the disk, either a datastore path or a URL
              referring to the virtual disk that should be shrink.]]>
      </description-html>
      </parameter>
      <parameter name="datacenter" type-id-ref="vim.Datacenter"
      vmodl-name="datacenter"
      version-id-ref="vim.version.version2"
      is-optional="true"
      privilege="datacenter"
      >
      <description-html>
         <![CDATA[If <code>name</code> is a datastore path, the datacenter for
                    that datastore path. Not needed when invoked directly on ESX.
                    If not specified on a call to VirtualCenter,
                    <code>name</code> must be a URL.]]>
      </description-html>
      </parameter>
      <parameter name="copy" type-id-ref="BOOLEAN"
      vmodl-name="copy"
      version-id-ref="vim.version.version2"
      is-optional="true"
      privilege="copy"
      >
      <description-html>
         <![CDATA[If true or omitted, performs shrink in copy-shrink mode, otherwise
              shrink in in-place mode.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.FileFault">
      <fault-description-html>
         <![CDATA[if an error occurs shrinking the virtual disk.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidDatastore">
      <fault-description-html>
         <![CDATA[if the operation cannot be performed on the datastore.]]>
      </fault-description-html>
      </fault>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to monitor the
        operation.]]>
      </task-description-html>
   </method>
   <method name="InflateVirtualDisk"
      vmodl-name="inflateVirtualDisk"
      is-deprecated="true"
      privilege="System.View"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Inflate a sparse or thin-provisioned virtual disk up to the full size.
  Additional space allocated to the disk as a result of this operation
  will be filled with zeroes.
  <p>
  The datacenter parameter may be omitted if a URL is used to name the disk.
  <p>
  Requires Datastore.FileManagement privilege on the datastore where the
  virtual disk resides.
  <p>]]>
      </description-html>
      <deprecated-html>
         <![CDATA[as of vSphere 6.5, use
  <a href="vim.vslm.host.VStorageObjectManager.html#inflateDisk">HostInflateDisk_Task</a> instead.]]>
      </deprecated-html>
      <parameter name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      version-id-ref="vim.version.version2"
      privilege="name"
      >
      <description-html>
         <![CDATA[The name of the disk, either a datastore path or a URL
              referring to the virtual disk that should be inflated.]]>
      </description-html>
      </parameter>
      <parameter name="datacenter" type-id-ref="vim.Datacenter"
      vmodl-name="datacenter"
      version-id-ref="vim.version.version2"
      is-optional="true"
      privilege="datacenter"
      >
      <description-html>
         <![CDATA[If <code>name</code> is a datastore path, the datacenter for
                    that datastore path. Not needed when invoked directly on ESX.
                    If not specified on a call to VirtualCenter,
                    <code>name</code> must be a URL.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.FileFault">
      <fault-description-html>
         <![CDATA[if an error occurs inflating the virtual disk.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidDatastore">
      <fault-description-html>
         <![CDATA[if the operation cannot be performed on the datastore.]]>
      </fault-description-html>
      </fault>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to monitor the
        operation.]]>
      </task-description-html>
   </method>
   <method name="EagerZeroVirtualDisk"
      vmodl-name="eagerZeroVirtualDisk"
      version-id-ref="vim.version.version5"
      privilege="System.View"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Explicitly zero out unaccessed parts zeroedthick disk.
  Effectively a no-op if the disk is already eagerZeroedThick.
  Unlike zeroFillVirtualDisk, which wipes the entire disk, this
  operation only affects previously unaccessed parts of the disk.
  <p>
  The datacenter parameter may be omitted if a URL is used to name the disk.
  <p>
  Requires Datastore.FileManagement privilege on the datastore where the
  virtual disk resides.
  <p>]]>
      </description-html>
      <parameter name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      version-id-ref="vim.version.version5"
      privilege="name"
      >
      <description-html>
         <![CDATA[The name of the disk, either a datastore path or a URL
              referring to the virtual disk that should be inflated.]]>
      </description-html>
      </parameter>
      <parameter name="datacenter" type-id-ref="vim.Datacenter"
      vmodl-name="datacenter"
      version-id-ref="vim.version.version5"
      is-optional="true"
      privilege="datacenter"
      >
      <description-html>
         <![CDATA[If <code>name</code> is a datastore path, the datacenter for
                    that datastore path. Not needed when invoked directly on ESX.
                    If not specified on a call to VirtualCenter,
                    <code>name</code> must be a URL.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.FileFault">
      <fault-description-html>
         <![CDATA[if an error occurs while eager-zeroing the virtual disk.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidDatastore">
      <fault-description-html>
         <![CDATA[if the operation cannot be performed on the datastore.]]>
      </fault-description-html>
      </fault>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to monitor the
        operation.]]>
      </task-description-html>
   </method>
   <method name="ZeroFillVirtualDisk"
      vmodl-name="zeroFillVirtualDisk"
      privilege="System.View"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Overwrite all blocks of the virtual disk with zeros.
  All data will be lost.
  <p>
  The datacenter parameter may be omitted if a URL is used to name the disk.
  <p>
  Requires Datastore.FileManagement privilege on the datastore where the
  virtual disk resides.
  <p>]]>
      </description-html>
      <parameter name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      version-id-ref="vim.version.version2"
      privilege="name"
      >
      <description-html>
         <![CDATA[The name of the disk, either a datastore path or a URL
              referring to the virtual disk whose blocks should be overwritten
              with zeroes.]]>
      </description-html>
      </parameter>
      <parameter name="datacenter" type-id-ref="vim.Datacenter"
      vmodl-name="datacenter"
      version-id-ref="vim.version.version2"
      is-optional="true"
      privilege="datacenter"
      >
      <description-html>
         <![CDATA[If <code>name</code> is a datastore path, the datacenter for
                    that datastore path. Not needed when invoked directly on ESX.
                    If not specified on a call to VirtualCenter,
                    <code>name</code> must be a URL.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.FileFault">
      <fault-description-html>
         <![CDATA[if an error occurs zero filling the virtual disk.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidDatastore">
      <fault-description-html>
         <![CDATA[if the operation cannot be performed on the datastore.]]>
      </fault-description-html>
      </fault>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to monitor the
        operation.]]>
      </task-description-html>
   </method>
   <method name="SetVirtualDiskUuid"
      vmodl-name="setVirtualDiskUuid"
      is-deprecated="true"
      privilege="System.View"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Set the virtual disk SCSI inquiry page 0x83 data.
  <p>
  The datacenter parameter may be omitted if a URL is used to name the disk.
  <p>
  Requires Datastore.FileManagement privilege on the datastore where the
  virtual disk resides.
  <p>]]>
      </description-html>
      <deprecated-html>
         <![CDATA[as of vSphere 6.5, use
  <a href="vim.vslm.host.VStorageObjectManager.html#registerDisk">HostRegisterDisk</a> to register
  a disk as vStorageObject with new unique UUID.]]>
      </deprecated-html>
      <parameter name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      version-id-ref="vim.version.version2"
      privilege="name"
      >
      <description-html>
         <![CDATA[The name of the disk, either a datastore path or a URL
              referring to the virtual disk whose SCSI inquiry page 0x83
              data should be set.]]>
      </description-html>
      </parameter>
      <parameter name="datacenter" type-id-ref="vim.Datacenter"
      vmodl-name="datacenter"
      version-id-ref="vim.version.version2"
      is-optional="true"
      privilege="datacenter"
      >
      <description-html>
         <![CDATA[If <code>name</code> is a datastore path, the datacenter for
                    that datastore path. Not needed when invoked directly on ESX.
                    If not specified on a call to VirtualCenter,
                    <code>name</code> must be a URL.]]>
      </description-html>
      </parameter>
      <parameter name="uuid" type-id-ref="java.lang.String"
      vmodl-name="uuid"
      version-id-ref="vim.version.version2"
      privilege="uuid"
      >
      <description-html>
         <![CDATA[The hex representation of the unique ID for this virtual disk.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.FileFault">
      <fault-description-html>
         <![CDATA[if an error occurs updating the virtual disk.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidDatastore">
      <fault-description-html>
         <![CDATA[if the operation cannot be performed on the datastore.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="QueryVirtualDiskUuid"
      vmodl-name="queryVirtualDiskUuid"
      is-deprecated="true"
      privilege="System.View"
      type-id-ref="java.lang.String"
      >
      <description-html>
         <![CDATA[Get the virtual disk SCSI inquiry page 0x83 data.
  <p>
  The datacenter parameter may be omitted if a URL is used to name the disk.
  <p>
  Requires Datastore.FileManagement privilege on the datastore where the
  virtual disk resides.
  <p>]]>
      </description-html>
      <deprecated-html>
         <![CDATA[as of vSphere 6.5, use
  <a href="vim.vslm.host.VStorageObjectManager.html#retrieveVStorageObject">HostRetrieveVStorageObject</a>
  instead.]]>
      </deprecated-html>
      <parameter name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      version-id-ref="vim.version.version2"
      privilege="name"
      >
      <description-html>
         <![CDATA[The name of the disk, either a datastore path or a URL
              referring to the virtual disk from which to get SCSI inquiry
              page 0x83 data.]]>
      </description-html>
      </parameter>
      <parameter name="datacenter" type-id-ref="vim.Datacenter"
      vmodl-name="datacenter"
      version-id-ref="vim.version.version2"
      is-optional="true"
      privilege="datacenter"
      >
      <description-html>
         <![CDATA[If <code>name</code> is a datastore path, the datacenter for
                    that datastore path. Not needed when invoked directly on ESX.
                    If not specified on a call to VirtualCenter,
                    <code>name</code> must be a URL.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.FileFault">
      <fault-description-html>
         <![CDATA[if an error occurs reading the virtual disk.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidDatastore">
      <fault-description-html>
         <![CDATA[if the operation cannot be performed on the datastore.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[The hex representation of the unique ID for this virtual disk.]]>
      </return-value-description-html>
   </method>
   <method name="QueryVirtualDiskGeometry"
      vmodl-name="queryVirtualDiskGeometry"
      privilege="System.View"
      type-id-ref="vim.host.DiskDimensions.Chs"
      >
      <description-html>
         <![CDATA[Get the disk geometry information for the virtual disk.
  <p>
  The datacenter parameter may be omitted if a URL is used to name the disk.
  <p>
  Requires Datastore.FileManagement privilege on the datastore where the
  virtual disk resides.
  <p>]]>
      </description-html>
      <parameter name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      version-id-ref="vim.version.version2"
      privilege="name"
      >
      <description-html>
         <![CDATA[The name of the disk, either a datastore path or a URL
              referring to the virtual disk from which to get geometry information.]]>
      </description-html>
      </parameter>
      <parameter name="datacenter" type-id-ref="vim.Datacenter"
      vmodl-name="datacenter"
      version-id-ref="vim.version.version2"
      is-optional="true"
      privilege="datacenter"
      >
      <description-html>
         <![CDATA[If <code>name</code> is a datastore path, the datacenter for
                    that datastore path. Not needed when invoked directly on ESX.
                    If not specified on a call to VirtualCenter,
                    <code>name</code> must be a URL.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.FileFault">
      <fault-description-html>
         <![CDATA[if an error occurs reading the virtual disk.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidDatastore">
      <fault-description-html>
         <![CDATA[if the operation cannot be performed on the datastore.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[The geometry information for this virtual disk.]]>
      </return-value-description-html>
   </method>
   <method name="ImportUnmanagedSnapshot"
      vmodl-name="importUnmanagedSnapshot"
      version-id-ref="vim.version.version10"
      privilege="System.View"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Import an unmanaged-snapshot from Virtual-Volume(VVol) enabled
  Storage Array.
  <p>
  Storage Array may support users to take snapshots indepedent of
  VMware stack. Such copies or snapshots are known as
  'Unmanaged-Snapshots'.
  We are providing an ability to end-users to import such
  unmanaged-snapshots as Virtual Disks.
  <p>
  End-user needs to know the VVol-Identifier to import unmanaged
  snapshot as VirtualDisk.
  <p>
  Once VirtualDisk is created, user can use 'Datastore Browser' to use
  with rest of Virtual Machine provisioning APIs.
  <p>]]>
      </description-html>
      <parameter name="vdisk" type-id-ref="java.lang.String"
      vmodl-name="vdisk"
      version-id-ref="vim.version.version10"
      privilege="vdisk"
      >
      <description-html>
         <![CDATA[-  The name of the disk to import, either a datastore path or a URL
                  referring to the virtual disk from which to get geometry information.]]>
      </description-html>
      </parameter>
      <parameter name="datacenter" type-id-ref="vim.Datacenter"
      vmodl-name="datacenter"
      version-id-ref="vim.version.version10"
      is-optional="true"
      privilege="datacenter"
      >
      <description-html>
         <![CDATA[If <code>vdisk</code> is a datastore path, the datacenter for
                    that datastore path. Not needed when invoked directly on ESX.
                    If not specified on a call to VirtualCenter,
                    <code>vdisk</code> must be a URL.]]>
      </description-html>
      </parameter>
      <parameter name="vvolId" type-id-ref="java.lang.String"
      vmodl-name="vvolId"
      version-id-ref="vim.version.version10"
      privilege="vvolId"
      >
      <description-html>
         <![CDATA[- unmanaged snapshot identifier]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[if VVol is not found]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidDatastore">
      <fault-description-html>
         <![CDATA[if the operation cannot be performed on the
  datastore.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="ReleaseManagedSnapshot"
      vmodl-name="releaseManagedSnapshot"
      version-id-ref="vim.version.version11"
      privilege="System.View"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Release a snapshot previously imported with importUnmanagedSnapshot
  <p>]]>
      </description-html>
      <parameter name="vdisk" type-id-ref="java.lang.String"
      vmodl-name="vdisk"
      version-id-ref="vim.version.version11"
      privilege="vdisk"
      >
      <description-html>
         <![CDATA[-  The name of the disk to release, either a datastore path or a URL
                  referring to the virtual disk.]]>
      </description-html>
      </parameter>
      <parameter name="datacenter" type-id-ref="vim.Datacenter"
      vmodl-name="datacenter"
      version-id-ref="vim.version.version11"
      is-optional="true"
      privilege="datacenter"
      >
      <description-html>
         <![CDATA[If <code>vdisk</code> is a datastore path, the datacenter for
                    that datastore path. Not needed when invoked directly on ESX.
                    If not specified on a call to VirtualCenter,
                    <code>vdisk</code> must be a URL.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.InvalidDatastore">
      <fault-description-html>
         <![CDATA[if the operation cannot be performed on the
  datastore.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.FileNotFound">
      <fault-description-html>
         <![CDATA[if vdisk is not found]]>
      </fault-description-html>
      </fault>
   </method>
   </managed-object>
   <managed-object name="HostServiceSystem"
      type-id="vim.host.ServiceSystem"
      vmodl-name="vim.host.ServiceSystem"
      version-id-ref="vim.version.version1"
      base-type-id="vim.ExtensibleManagedObject"
      >
      <description-html>
         <![CDATA[The <a href="vim.host.ServiceSystem.html">HostServiceSystem</a> managed object describes the configuration
  of host services.  This managed object operates in conjunction
  with the <a href="vim.host.FirewallSystem.html">HostFirewallSystem</a>
  managed object.]]>
      </description-html>
            <property name="serviceInfo" type-id-ref="vim.host.ServiceInfo"
      vmodl-name="serviceInfo"
      >
      <description-html>
         <![CDATA[Service configuration.]]>
      </description-html>
      </property>

   <method name="UpdateServicePolicy"
      vmodl-name="updatePolicy"
      privilege="Host.Config.NetService"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Updates the activation policy of the service.]]>
      </description-html>
      <parameter name="id" type-id-ref="java.lang.String"
      vmodl-name="id"
      version-id-ref="vim.version.version1"
      privilege="id"
      >
      <description-html>
         <![CDATA[Service identifier
  (<a href="vim.host.ServiceSystem.html#serviceInfo">ServiceInfo</a>.<a href="vim.host.ServiceInfo.html#service">service</a>.<a href="vim.host.Service.html#key">key</a>).]]>
      </description-html>
      </parameter>
      <parameter name="policy" type-id-ref="java.lang.String"
      vmodl-name="policy"
      version-id-ref="vim.version.version1"
      privilege="policy"
      >
      <description-html>
         <![CDATA[Specifies the condition for service activation.
  Use one of the <a href="vim.host.Service.Policy.html">HostServicePolicy</a> values.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[if the service ID is unknown.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[for all other failures.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="StartService"
      vmodl-name="start"
      privilege="Host.Config.NetService"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Starts the service.]]>
      </description-html>
      <parameter name="id" type-id-ref="java.lang.String"
      vmodl-name="id"
      version-id-ref="vim.version.version1"
      privilege="id"
      >
      <description-html>
         <![CDATA[Service identifier
  (<a href="vim.host.ServiceSystem.html#serviceInfo">ServiceInfo</a>.<a href="vim.host.ServiceInfo.html#service">service</a>.<a href="vim.host.Service.html#key">key</a>).]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the service is already running.
          Only hosts with ESX/ESXi 4.1 or earlier software use this fault.
          Hosts running later versions of ESXi do not throw a fault in this case.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[if the service ID is unknown.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[for all other failures.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="StopService"
      vmodl-name="stop"
      privilege="Host.Config.NetService"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Stops the service.]]>
      </description-html>
      <parameter name="id" type-id-ref="java.lang.String"
      vmodl-name="id"
      version-id-ref="vim.version.version1"
      privilege="id"
      >
      <description-html>
         <![CDATA[Service identifier
  (<a href="vim.host.ServiceSystem.html#serviceInfo">ServiceInfo</a>.<a href="vim.host.ServiceInfo.html#service">service</a>.<a href="vim.host.Service.html#key">key</a>).]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the service is not running.
          Only hosts with ESX/ESXi 4.1 or earlier software use this fault.
          Hosts running later versions of ESXi do not throw a fault in this case.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[if the service ID is unknown.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[for all other failures.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="RestartService"
      vmodl-name="restart"
      privilege="Host.Config.NetService"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Restarts the service.]]>
      </description-html>
      <parameter name="id" type-id-ref="java.lang.String"
      vmodl-name="id"
      version-id-ref="vim.version.version1"
      privilege="id"
      >
      <description-html>
         <![CDATA[Service identifier
  (<a href="vim.host.ServiceSystem.html#serviceInfo">ServiceInfo</a>.<a href="vim.host.ServiceInfo.html#service">service</a>.<a href="vim.host.Service.html#key">key</a>).]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the service is not running.
          Only hosts with ESX/ESXi 4.1 or earlier software use this fault.
          Hosts running later versions of ESXi do not throw a fault in this case.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[if the service ID is unknown.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[for all other failures.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="UninstallService"
      vmodl-name="uninstall"
      privilege="Host.Config.NetService"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Uninstalls the service.  If the service is running, it is
  stopped before being uninstalled.]]>
      </description-html>
      <parameter name="id" type-id-ref="java.lang.String"
      vmodl-name="id"
      version-id-ref="vim.version.version1"
      privilege="id"
      >
      <description-html>
         <![CDATA[Service identifier
  (<a href="vim.host.ServiceSystem.html#serviceInfo">ServiceInfo</a>.<a href="vim.host.ServiceInfo.html#service">service</a>.<a href="vim.host.Service.html#key">key</a>).]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[if the service ID is unknown.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[for all other failures.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="RefreshServices"
      vmodl-name="refresh"
      privilege="Host.Config.NetService"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Refresh the service information and settings to pick up any changes
  made directly on the host.]]>
      </description-html>
   </method>
   </managed-object>
   <managed-object name="HostGraphicsManager"
      type-id="vim.host.GraphicsManager"
      vmodl-name="vim.host.GraphicsManager"
      version-id-ref="vim.version.version9"
      base-type-id="vim.ExtensibleManagedObject"
      >
      <description-html>
         <![CDATA[This managed object manages the graphics state of the host.]]>
      </description-html>
            <property name="graphicsInfo" type-id-ref="vim.host.GraphicsInfo"
      vmodl-name="graphicsInfo"
      is-array="true"
      is-optional="true"
      privilege="System.Read"
      >
      <description-html>
         <![CDATA[Array of graphics information]]>
      </description-html>
      </property>

            <property name="graphicsConfig" type-id-ref="vim.host.GraphicsConfig"
      vmodl-name="graphicsConfig"
      version-id-ref="vim.version.version11"
      is-optional="true"
      privilege="System.Read"
      >
      <description-html>
         <![CDATA[Graphics Configuration]]>
      </description-html>
      </property>

            <property name="sharedPassthruGpuTypes" type-id-ref="java.lang.String"
      vmodl-name="sharedPassthruGpuTypes"
      version-id-ref="vim.version.version10"
      is-array="true"
      is-optional="true"
      privilege="System.Read"
      >
      <description-html>
         <![CDATA[Array of shared passthru GPU types. These GPU types may be enabled
  when specific host hardware is present. Example values are "grid_k120q"
  and "grid_k240q".]]>
      </description-html>
      </property>

            <property name="sharedGpuCapabilities" type-id-ref="vim.host.SharedGpuCapabilities"
      vmodl-name="sharedGpuCapabilities"
      version-id-ref="vim.version.version12"
      is-array="true"
      is-optional="true"
      privilege="System.Read"
      >
      <description-html>
         <![CDATA[Array of shared passthru GPU capablities.<br>See <a href="vim.host.SharedGpuCapabilities.html">HostSharedGpuCapabilities</a><br>]]>
      </description-html>
      </property>

   <method name="RefreshGraphicsManager"
      vmodl-name="refresh"
      privilege="Host.Config.Settings"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Refresh the available graphics information.]]>
      </description-html>
   </method>
   <method name="IsSharedGraphicsActive"
      vmodl-name="isSharedGraphicsActive"
      privilege="System.Read"
      type-id-ref="BOOLEAN"
      >
      <description-html>
         <![CDATA[Indicate if shared graphics device is active on the host.]]>
      </description-html>
   </method>
   <method name="UpdateGraphicsConfig"
      vmodl-name="updateGraphicsConfig"
      version-id-ref="vim.version.version11"
      privilege="Host.Config.Settings"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Update graphics configuration]]>
      </description-html>
      <parameter name="config" type-id-ref="vim.host.GraphicsConfig"
      vmodl-name="config"
      version-id-ref="vim.version.version11"
      privilege="config"
      >
      </parameter>
   </method>
   </managed-object>
   <managed-object name="HostSnmpSystem"
      type-id="vim.host.SnmpSystem"
      vmodl-name="vim.host.SnmpSystem"
      version-id-ref="vim.version.version1"
      >
      <description-html>
         <![CDATA[Provision the SNMP Version 1,2c agent.
  This object is accessed through the
 <a href="vim.host.ConfigManager.html">HostConfigManager</a> object.]]>
      </description-html>
            <property name="configuration" type-id-ref="vim.host.SnmpSystem.SnmpConfigSpec"
      vmodl-name="configuration"
      version-id-ref="vim.version.version2"
      privilege="Global.Settings"
      >
      </property>

            <property name="limits" type-id-ref="vim.host.SnmpSystem.AgentLimits"
      vmodl-name="limits"
      version-id-ref="vim.version.version2"
      privilege="Global.Settings"
      >
      </property>

      <nested-type-id-ref>vim.host.SnmpSystem.SnmpConfigSpec</nested-type-id-ref>
      <nested-type-id-ref>vim.host.SnmpSystem.AgentLimits</nested-type-id-ref>
   <method name="ReconfigureSnmpAgent"
      vmodl-name="reconfigureSnmpAgent"
      version-id-ref="vim.version.version2"
      privilege="Global.Settings"
      type-id-ref="void"
      >
      <parameter name="spec" type-id-ref="vim.host.SnmpSystem.SnmpConfigSpec"
      vmodl-name="spec"
      version-id-ref="vim.version.version2"
      privilege="spec"
      >
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      </fault>
      <fault type-id-ref="vim.fault.InsufficientResourcesFault">
      </fault>
   </method>
   <method name="SendTestNotification"
      vmodl-name="sendTestNotification"
      version-id-ref="vim.version.version2"
      privilege="Global.Settings"
      type-id-ref="void"
      >
      <fault type-id-ref="vim.fault.NotFound">
      </fault>
      <fault type-id-ref="vim.fault.InsufficientResourcesFault">
      </fault>
   </method>
   </managed-object>
   <managed-object name="HostBootDeviceSystem"
      type-id="vim.host.BootDeviceSystem"
      vmodl-name="vim.host.BootDeviceSystem"
      version-id-ref="vim.version.version2"
      >
      <description-html>
         <![CDATA[The <a href="vim.host.BootDeviceSystem.html">HostBootDeviceSystem</a> managed object provides methods to query and update
  a host boot device configuration.]]>
      </description-html>
      <nested-type-id-ref>vim.host.BootDeviceSystem.BootDevice</nested-type-id-ref>
   <method name="QueryBootDevices"
      vmodl-name="queryBootDevices"
      is-optional="true"
      privilege="System.Read"
      type-id-ref="vim.host.BootDeviceInfo"
      >
      <description-html>
         <![CDATA[Retrieves a list of the available boot devices for the host system.]]>
      </description-html>
      <return-value-description-html>
         <![CDATA[The boot device information for the host. The returned object has a
          list of <a href="vim.host.BootDeviceSystem.BootDevice.html">HostBootDevice</a> data objects; each boot
          device object defines a description and a key to identify the device.
          The order of devices in the list is unpredictable.
          The returned <a href="vim.host.BootDeviceInfo.html">HostBootDeviceInfo</a> data object also contains
          the key of the current boot device.]]>
      </return-value-description-html>
   </method>
   <method name="UpdateBootDevice"
      vmodl-name="updateBootDevice"
      privilege="Host.Config.Maintenance"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Sets the current boot device for the host system.]]>
      </description-html>
      <parameter name="key" type-id-ref="java.lang.String"
      vmodl-name="key"
      version-id-ref="vim.version.version2"
      privilege="key"
      >
      <description-html>
         <![CDATA[The <a href="vim.host.BootDeviceSystem.BootDevice.html#key">key</a> of the
  <a href="vim.host.BootDeviceSystem.BootDevice.html">HostBootDevice</a> from which the host will boot.]]>
      </description-html>
      </parameter>
   </method>
   </managed-object>
   <managed-object name="Datastore"
      type-id="vim.Datastore"
      vmodl-name="vim.Datastore"
      version-id-ref="vim.version.version1"
      base-type-id="vim.ManagedEntity"
      >
      <description-html>
         <![CDATA[Represents a storage location for virtual machine files. A storage location can be a
  VMFS volume, a directory on Network Attached Storage, or a local file system path.
  <p>
  A datastore is platform-independent and host-independent. Therefore, datastores do
  not change when the virtual machines they contain are moved between hosts. The scope
  of a datastore is a datacenter; the datastore is uniquely named within the
  datacenter.
  <p>
  Any reference to a virtual machine or file accessed by any host within the
  datacenter must use a datastore path. A datastore path has the form
  "[&lt;datastore&gt;] &lt;path&gt;", where &lt;datastore&gt; is the datastore name,
  and &lt;path&gt; is a slash-delimited path from the root of the datastore. An
  example datastore path is "[storage] path/to/config.vmx".
  <p>
  You may use the following characters in a path, but not in a datastore name:
  slash (/), backslash (\), and percent (%).
  <p>
  All references to files in the VIM API are implicitly done using datastore paths.
  <p>
  When a client creates a virtual machine, it may specify the name of
  the datastore, omitting the path; the system, meaning VirtualCenter or the host,
  automatically assigns filenames and creates directories on the given datastore. For
  example, specifying My_Datastore as a location for a virtual machine called MyVm
  results in a datastore location of My_Datastore\MyVm\MyVm.vmx.
  <p>
  Datastores are configured per host. As part of host configuration, a HostSystem can
  be configured to mount a set of network drives. Multiple hosts
  may be configured to point to the same storage location. There exists only one
  Datastore object per Datacenter, for each such shared location. Each Datastore
  object keeps a reference to the set of hosts that have mounted the datastore. A
  Datastore object can be removed only if no hosts currently have the datastore
  mounted.
  <p>
  Thus, managing datastores is done both at the host level and the datacenter level.
  Each host is configured explicitly with the set of datastores it can access. At the
  datacenter, a view of the datastores across the datacenter is shown.]]>
      </description-html>
            <property name="info" type-id-ref="vim.Datastore.Info"
      vmodl-name="info"
      >
      <description-html>
         <![CDATA[Specific information about the datastore.]]>
      </description-html>
      </property>

            <property name="summary" type-id-ref="vim.Datastore.Summary"
      vmodl-name="summary"
      >
      <description-html>
         <![CDATA[Global properties of the datastore.]]>
      </description-html>
      </property>

            <property name="host" type-id-ref="vim.Datastore.HostMount"
      vmodl-name="host"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Hosts attached to this datastore.]]>
      </description-html>
      </property>

            <property name="vm" type-id-ref="vim.VirtualMachine"
      vmodl-name="vm"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Virtual machines stored on this datastore.]]>
      </description-html>
      </property>

            <property name="browser" type-id-ref="vim.host.DatastoreBrowser"
      vmodl-name="browser"
      >
      <description-html>
         <![CDATA[DatastoreBrowser used to browse this datastore.]]>
      </description-html>
      </property>

            <property name="capability" type-id-ref="vim.Datastore.Capability"
      vmodl-name="capability"
      >
      <description-html>
         <![CDATA[Capabilities of this datastore.]]>
      </description-html>
      </property>

            <property name="iormConfiguration" type-id-ref="vim.StorageResourceManager.IORMConfigInfo"
      vmodl-name="iormConfiguration"
      version-id-ref="vim.version.version6"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Configuration of storage I/O resource management for the datastore.
  Currently we only support storage I/O resource management on VMFS volumes
  of a datastore.
  <p>
  This configuration may not be available if the datastore is not accessible
  from any host, or if the datastore does not have VMFS volume.
  The configuration can be modified using the method
  <a href="vim.StorageResourceManager.html#ConfigureDatastoreIORM">ConfigureDatastoreIORM_Task</a>]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.Datastore.Accessible</nested-type-id-ref>
      <nested-type-id-ref>vim.Datastore.Summary</nested-type-id-ref>
      <nested-type-id-ref>vim.Datastore.Info</nested-type-id-ref>
      <nested-type-id-ref>vim.Datastore.Capability</nested-type-id-ref>
      <nested-type-id-ref>vim.Datastore.HostMount</nested-type-id-ref>
      <nested-type-id-ref>vim.Datastore.MountPathDatastorePair</nested-type-id-ref>
      <nested-type-id-ref>vim.Datastore.VVolContainerFailoverPair</nested-type-id-ref>
   <method name="RefreshDatastore"
      vmodl-name="refresh"
      privilege="System.Read"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Explicitly refreshes free-space and capacity values in <a href="vim.Datastore.html#summary">Summary</a>
  and <a href="vim.Datastore.html#info">Info</a>.]]>
      </description-html>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[if the datastore or its underlying volume is not found.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[if unable to get the current system information
          for the datastore.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="RefreshDatastoreStorageInfo"
      vmodl-name="refreshStorageInfo"
      version-id-ref="vim.version.version5"
      privilege="System.Read"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Refreshes all storage related information including free-space, capacity,
  and detailed usage of virtual machines. Updated values are available
  in <a href="vim.Datastore.html#summary">Summary</a> and <a href="vim.Datastore.html#info">Info</a>.]]>
      </description-html>
   </method>
   <method name="UpdateVirtualMachineFiles"
      vmodl-name="updateVirtualMachineFiles"
      version-id-ref="vim.version.version6"
      privilege="Datastore.UpdateVirtualMachineFiles"
      type-id-ref="vim.UpdateVirtualMachineFilesResult"
      is-task="true"
      >
      <description-html>
         <![CDATA[Update file paths embedded in virtual machine files on the datastore.
  This can be called after the file system corresponding to the datastore
  has been resignatured or remounted.  Any MountPathDatastorePairs
  where the new path is the same as the original file path will be ignored.
  <p>
  This method is only supported by vCenter server.  Also, this method requires
  that the datastore is <a href="vim.host.MountInfo.html#accessible">accessible</a> from
  at least one host (ESX version 4.1 or above) in vCenter server.
  <p>
  While this operation is in progress, it is important that users do not
  initiate any operations that might read or write to any files on the
  datastore, such as registering a virtual machine with files residing
  on the datastore, or performing any virtual disk operations on any files
  in the datastore. These operations can potentially cause spurious file
  update failures, while at the same time they can prevent virtual machine
  files from being updated correctly.
  <p>
  If users intend to update multiple datastores using this method, it is
  strongly advised that the users do not initiate any operations that
  might read or write to files on any of the datastores, until all of
  them have been updated. The files of a single virtual machine can
  reside on multiple datastores, and thus all the involved datastores
  should be updated, before the virtual machine is considered updated
  completely.]]>
      </description-html>
      <parameter name="mountPathDatastoreMapping" type-id-ref="vim.Datastore.MountPathDatastorePair"
      vmodl-name="mountPathDatastoreMapping"
      version-id-ref="vim.version.version6"
      is-array="true"
      privilege="mountPathDatastoreMapping"
      >
      <description-html>
         <![CDATA[Old mount path to datastore mapping.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.ResourceInUse">
      <fault-description-html>
         <![CDATA[if there exists a registered virtual machine in the volume.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.PlatformConfigFault">
      <fault-description-html>
         <![CDATA[if any error related to platform
                                 occurs during the operation.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.TaskInProgress">
      <fault-description-html>
         <![CDATA[if the datastore is busy, for example, while another task
                            is updating the datastore after volume resignaturing
                            or remounting.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidDatastore">
      <fault-description-html>
         <![CDATA[if the operation cannot be performed due to some error
                              with the datastore; typically a specific subclass
                              of the fault is reported.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[Return an array of failed virtual machine file info. When
          there are too many failed files, only a subset of failed
          files will be returned.]]>
      </return-value-description-html>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to monitor the
        operation. The <a href="vim.TaskInfo.html#result">result</a> property in the
        <a href="vim.Task.html">Task</a> contains an <a href="vim.UpdateVirtualMachineFilesResult.html">UpdateVirtualMachineFilesResult</a>
        object, upon success, which is a list of virtual machines files the
        server has attempted to update but failed to update. When there are too
        many failed files, only a subset of failed files will be returned.]]>
      </task-description-html>
   </method>
   <method name="RenameDatastore"
      vmodl-name="renameDatastore"
      is-deprecated="true"
      privilege="Datastore.Rename"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Renames a datastore.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 4.0, use <a href="vim.ManagedEntity.html#rename">Rename_Task</a>.]]>
      </deprecated-html>
      <parameter name="newName" type-id-ref="java.lang.String"
      vmodl-name="newName"
      version-id-ref="vim.version.version1"
      privilege="newName"
      >
      <description-html>
         <![CDATA[The new name to assign to the datastore.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.DuplicateName">
      <fault-description-html>
         <![CDATA[if another datastore in this datacenter already
                        has the same name.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidName">
      <fault-description-html>
         <![CDATA[if the name is not a valid datastore name.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="DestroyDatastore"
      vmodl-name="destroyDatastore"
      is-deprecated="true"
      privilege="Datastore.Delete"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Removes a datastore. A datastore can be removed only if it is not currently used
  by any host or virtual machine.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of VI API 2.5 do not use this method. This method throws
              <a href="vim.fault.ResourceInUse.html">ResourceInUse</a>.  Datastores are automatically
              removed when no longer in use, so this method is unnecessary.]]>
      </deprecated-html>
      <fault type-id-ref="vim.fault.ResourceInUse">
      <fault-description-html>
         <![CDATA[if one or more hosts or virtual machines are configured
  to use the datastore.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="DatastoreEnterMaintenanceMode"
      vmodl-name="enterMaintenanceMode"
      version-id-ref="vim.version.version7"
      privilege="Datastore.Config"
      type-id-ref="vim.storageDrs.StoragePlacementResult"
      >
      <description-html>
         <![CDATA[Puts the datastore in maintenance mode. While this task is running and when the
  datastore is in maintenance mode, no virtual machines can be powered on and no
  provisioning operations can be performed on the datastore. Once the call
  completes, it is safe to remove datastore without disrupting any virtual machines.
  <p>
  The task completes once there are no virtual machines on the datastore
  and no provisioning operations in progress on the datastore. The operation does not
  directly initiate any operations to evacuate or power-down powered-on virtual machines.
  However, if the datastore is part of a storage pod with VMware Storage DRS enabled,
  Storage DRS provides migration recommendations to evacuate the virtual
  machines. If Storage DRS is in fully-automatic mode, these are automatically scheduled.

  The task is cancellable.

  This method returns a <a href="vim.storageDrs.StoragePlacementResult.html">StoragePlacementResult</a> object, which includes
  a <a href="vim.Task.html">Task</a> object with which to monitor the operation, and a list of recommendations
  and faults generated by Storage DRS when it tries to evacuate the virtual machines
  on the datastore. The recommendations and faults fields are set only if the datastore is
  a part of a storage pod with Storage DRS enabled.]]>
      </description-html>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the datastore is already in maintenance mode.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="DatastoreExitMaintenanceMode"
      vmodl-name="exitMaintenanceMode"
      version-id-ref="vim.version.version7"
      privilege="Datastore.Config"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Takes the datastore out of maintenance mode.
   <p>
   The task is cancellable.
   <p>]]>
      </description-html>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the datastore is not in maintenance mode.]]>
      </fault-description-html>
      </fault>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to monitor the
        operation.]]>
      </task-description-html>
   </method>
   <method name="UpdateVVolVirtualMachineFiles"
      vmodl-name="updateVVolVirtualMachineFiles"
      version-id-ref="vim.version.version11"
      privilege="Datastore.UpdateVirtualMachineFiles"
      type-id-ref="vim.VVolVmConfigFileUpdateResult"
      is-task="true"
      >
      <description-html>
         <![CDATA[Scan a VVol storage container to update file paths and objectID pointers
 embedded in virtual machine files on a given storage container.]]>
      </description-html>
      <parameter name="failoverPair" type-id-ref="vim.Datastore.VVolContainerFailoverPair"
      vmodl-name="failoverPair"
      version-id-ref="vim.version.version11"
      is-array="true"
      is-optional="true"
      privilege="failoverPair"
      >
      <description-html>
         <![CDATA[Mapping of source to target storage container
                     as well as source to target VVol IDs.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vmodl.fault.NotSupported">
      <fault-description-html>
         <![CDATA[if all hosts attached to this datastore do not
                      support updating VVol Virtual Machine Files.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.PlatformConfigFault">
      <fault-description-html>
         <![CDATA[if any error related to platform
                             occurs during the operation.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.TaskInProgress">
      <fault-description-html>
         <![CDATA[if the datastore is busy, for example, while
                        another task is updating the datastore.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidDatastore">
      <fault-description-html>
         <![CDATA[if the operation cannot be performed due to
                          some error with the datastore.]]>
      </fault-description-html>
      </fault>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to monitor
       the operation. The <a href="vim.TaskInfo.html#result">result</a> property in the
       <a href="vim.Task.html">Task</a> contains a
       <a href="vim.VVolVmConfigFileUpdateResult.html">VVolVmConfigFileUpdateResult</a> object, which
       provides a list of successfully updated virtual machine
       config files and a list of virtual machine config files
       that failed to update, for all virtual machine config files
       failed over onto the VVol storage container from the source
       containers in the failover pair.]]>
      </task-description-html>
   </method>
   </managed-object>
   <managed-object name="StorageQueryManager"
      type-id="vim.StorageQueryManager"
      vmodl-name="vim.StorageQueryManager"
      version-id-ref="vim.version.version14"
      >
      <description-html>
         <![CDATA[This managed object is used to query vCenter Server's storage system
  entities.]]>
      </description-html>
   <method name="QueryHostsWithAttachedLun"
      vmodl-name="queryHostsWithAttachedLun"
      is-array="true"
      is-optional="true"
      privilege="System.Read"
      type-id-ref="vim.HostSystem"
      >
      <description-html>
         <![CDATA[Query the set of all hosts which have the specified lun attached.
 Requires Host.Config.Storage privilege on the hosts which have
 the lun in attached state.]]>
      </description-html>
      <parameter name="lunUuid" type-id-ref="java.lang.String"
      vmodl-name="lunUuid"
      version-id-ref="vim.version.version14"
      privilege="lunUuid"
      >
      <description-html>
         <![CDATA[The UUID of the ScsiLun device.]]>
      </description-html>
      </parameter>
      <return-value-description-html>
         <![CDATA[HostSystem The set of hosts which have the specified lun attached.
                    No values are returned if there are no hosts with the
                    specified lun in attached state.]]>
      </return-value-description-html>
   </method>
   </managed-object>
   <managed-object name="GuestProcessManager"
      type-id="vim.vm.guest.ProcessManager"
      vmodl-name="vim.vm.guest.ProcessManager"
      version-id-ref="vim.version.version7"
      >
      <description-html>
         <![CDATA[ProcessManager is the managed object that provides APIs
 to manipulate the guest operating system processes.]]>
      </description-html>
      <nested-type-id-ref>vim.vm.guest.ProcessManager.ProgramSpec</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.guest.ProcessManager.WindowsProgramSpec</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.guest.ProcessManager.ProcessInfo</nested-type-id-ref>
   <method name="StartProgramInGuest"
      vmodl-name="startProgram"
      type-id-ref="LONG"
      >
      <description-html>
         <![CDATA[Starts a program in the guest operating system.
 <p>
 A process started this way can have its status queried with
 <a href="vim.vm.guest.ProcessManager.html#listProcesses">ListProcessesInGuest</a>.
 When the process completes, its exit code and end time will be
 available for 5 minutes after completion.
 <p>
 If VMware Tools is restarted, the exit code and end time will not
 be available.
 <p>]]>
      </description-html>
      <parameter name="vm" type-id-ref="vim.VirtualMachine"
      vmodl-name="vm"
      version-id-ref="vim.version.version7"
      privilege="vm"
      >
      <description-html>
         <![CDATA[Virtual machine to perform the operation on.]]>
      </description-html>
      </parameter>
      <parameter name="auth" type-id-ref="vim.vm.guest.GuestAuthentication"
      vmodl-name="auth"
      version-id-ref="vim.version.version7"
      privilege="auth"
      >
      <description-html>
         <![CDATA[The guest authentication data.  See
    <a href="vim.vm.guest.GuestAuthentication.html">GuestAuthentication</a>.]]>
      </description-html>
      </parameter>
      <parameter name="spec" type-id-ref="vim.vm.guest.ProcessManager.ProgramSpec"
      vmodl-name="spec"
      version-id-ref="vim.version.version7"
      privilege="spec"
      >
      <description-html>
         <![CDATA[The arguments describing the program to be started.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.GuestOperationsFault">
      <fault-description-html>
         <![CDATA[if there is an error processing a guest
    operation.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the operation cannot be performed because of the
     virtual machine's current state.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.TaskInProgress">
      <fault-description-html>
         <![CDATA[if the virtual machine is busy.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.FileFault">
      <fault-description-html>
         <![CDATA[if there is a file error in the guest operating system.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.GuestOperationsUnavailable">
      <fault-description-html>
         <![CDATA[if the VM agent for guest operations
    is not running.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidPowerState">
      <fault-description-html>
         <![CDATA[if the VM is not powered on.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.FileNotFound">
      <fault-description-html>
         <![CDATA[if the program path does not exist.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.CannotAccessFile">
      <fault-description-html>
         <![CDATA[if the program path cannot be accessed.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.GuestPermissionDenied">
      <fault-description-html>
         <![CDATA[if the program path cannot be run because
    the guest authentication will not allow the operation.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidGuestLogin">
      <fault-description-html>
         <![CDATA[if the the guest authentication information
    was not accepted.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.GuestComponentsOutOfDate">
      <fault-description-html>
         <![CDATA[if the guest agent is too old to support
    the operation.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.OperationNotSupportedByGuest">
      <fault-description-html>
         <![CDATA[if the operation is not supported by
    the guest OS.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.OperationDisabledByGuest">
      <fault-description-html>
         <![CDATA[if the operation is not enabled due to
    guest agent configuration.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[The pid of the program started.]]>
      </return-value-description-html>
   </method>
   <method name="ListProcessesInGuest"
      vmodl-name="listProcesses"
      is-array="true"
      is-optional="true"
      type-id-ref="vim.vm.guest.ProcessManager.ProcessInfo"
      >
      <description-html>
         <![CDATA[List the processes running in the guest operating system,
 plus those started by <a href="vim.vm.guest.ProcessManager.html#startProgram">StartProgramInGuest</a>
 that have recently completed.
 <p>]]>
      </description-html>
      <parameter name="vm" type-id-ref="vim.VirtualMachine"
      vmodl-name="vm"
      version-id-ref="vim.version.version7"
      privilege="vm"
      >
      <description-html>
         <![CDATA[Virtual machine to perform the operation on.]]>
      </description-html>
      </parameter>
      <parameter name="auth" type-id-ref="vim.vm.guest.GuestAuthentication"
      vmodl-name="auth"
      version-id-ref="vim.version.version7"
      privilege="auth"
      >
      <description-html>
         <![CDATA[The guest authentication data.  See
    <a href="vim.vm.guest.GuestAuthentication.html">GuestAuthentication</a>.]]>
      </description-html>
      </parameter>
      <parameter name="pids" type-id-ref="LONG"
      vmodl-name="pids"
      version-id-ref="vim.version.version7"
      is-array="true"
      is-optional="true"
      privilege="pids"
      >
      <description-html>
         <![CDATA[If set, only return information about the specified processes.
    Otherwise, information about all processes are returned.
    If a specified processes does not exist, nothing will
    be returned for that process.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.GuestOperationsFault">
      <fault-description-html>
         <![CDATA[if there is an error processing a guest
    operation.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the operation cannot be performed because of the
     virtual machine's current state.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.TaskInProgress">
      <fault-description-html>
         <![CDATA[if the virtual machine is busy.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.GuestOperationsUnavailable">
      <fault-description-html>
         <![CDATA[if the VM agent for guest operations
    is not running.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidPowerState">
      <fault-description-html>
         <![CDATA[if the VM is not powered on.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.GuestPermissionDenied">
      <fault-description-html>
         <![CDATA[if there are insufficient permissions in
    the guest OS.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidGuestLogin">
      <fault-description-html>
         <![CDATA[if the the guest authentication information
    was not accepted.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.GuestComponentsOutOfDate">
      <fault-description-html>
         <![CDATA[if the guest agent is too old to support
    the operation.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.OperationNotSupportedByGuest">
      <fault-description-html>
         <![CDATA[if the operation is not supported
    by the guest OS.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.OperationDisabledByGuest">
      <fault-description-html>
         <![CDATA[if the operation is not enabled due to
    guest agent configuration.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[The list running processes is returned in an array of
     <a href="vim.vm.guest.ProcessManager.ProcessInfo.html">GuestProcessInfo</a> structures.]]>
      </return-value-description-html>
   </method>
   <method name="TerminateProcessInGuest"
      vmodl-name="terminateProcess"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Terminates a process in the guest OS.
 <p>]]>
      </description-html>
      <parameter name="vm" type-id-ref="vim.VirtualMachine"
      vmodl-name="vm"
      version-id-ref="vim.version.version7"
      privilege="vm"
      >
      <description-html>
         <![CDATA[Virtual machine to perform the operation on.]]>
      </description-html>
      </parameter>
      <parameter name="auth" type-id-ref="vim.vm.guest.GuestAuthentication"
      vmodl-name="auth"
      version-id-ref="vim.version.version7"
      privilege="auth"
      >
      <description-html>
         <![CDATA[The guest authentication data.  See
    <a href="vim.vm.guest.GuestAuthentication.html">GuestAuthentication</a>.]]>
      </description-html>
      </parameter>
      <parameter name="pid" type-id-ref="LONG"
      vmodl-name="pid"
      version-id-ref="vim.version.version7"
      privilege="pid"
      >
      <description-html>
         <![CDATA[Process ID of the process to be terminated]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.GuestOperationsFault">
      <fault-description-html>
         <![CDATA[if there is an error processing a guest
    operation.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the operation cannot be performed because of the
     virtual machine's current state.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.TaskInProgress">
      <fault-description-html>
         <![CDATA[if the virtual machine is busy.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.GuestOperationsUnavailable">
      <fault-description-html>
         <![CDATA[if the VM agent for guest operations
    is not running.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidPowerState">
      <fault-description-html>
         <![CDATA[if the VM is not powered on.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.GuestProcessNotFound">
      <fault-description-html>
         <![CDATA[if the pid does not refer to a valid process.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.GuestPermissionDenied">
      <fault-description-html>
         <![CDATA[if the process cannot be terminated because
    the guest authentication will not allow the operation.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidGuestLogin">
      <fault-description-html>
         <![CDATA[if the the guest authentication information
    was not accepted.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.GuestComponentsOutOfDate">
      <fault-description-html>
         <![CDATA[if the guest agent is too old to
    support the operation.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.OperationNotSupportedByGuest">
      <fault-description-html>
         <![CDATA[if the operation is not supported
    by the guest OS.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.OperationDisabledByGuest">
      <fault-description-html>
         <![CDATA[if the operation is not enabled due
    to guest agent configuration.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="ReadEnvironmentVariableInGuest"
      vmodl-name="readEnvironmentVariable"
      is-array="true"
      is-optional="true"
      type-id-ref="java.lang.String"
      >
      <description-html>
         <![CDATA[Reads an environment variable from the guest OS
 <p>
 If the authentication uses interactiveSession, then the
 environment being read will be that of the user logged into the desktop.
 Otherwise it's the environment of the user specified by the auth.
 <p>]]>
      </description-html>
      <parameter name="vm" type-id-ref="vim.VirtualMachine"
      vmodl-name="vm"
      version-id-ref="vim.version.version7"
      privilege="vm"
      >
      <description-html>
         <![CDATA[Virtual machine to perform the operation on.]]>
      </description-html>
      </parameter>
      <parameter name="auth" type-id-ref="vim.vm.guest.GuestAuthentication"
      vmodl-name="auth"
      version-id-ref="vim.version.version7"
      privilege="auth"
      >
      <description-html>
         <![CDATA[The guest authentication data.  See
    <a href="vim.vm.guest.GuestAuthentication.html">GuestAuthentication</a>.]]>
      </description-html>
      </parameter>
      <parameter name="names" type-id-ref="java.lang.String"
      vmodl-name="names"
      version-id-ref="vim.version.version7"
      is-array="true"
      is-optional="true"
      privilege="names"
      >
      <description-html>
         <![CDATA[The names of the variables to be read. If not set, then
    all the environment variables are returned.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.GuestOperationsFault">
      <fault-description-html>
         <![CDATA[if there is an error processing a guest
    operation.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the operation cannot be performed because of the
     virtual machine's current state.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.TaskInProgress">
      <fault-description-html>
         <![CDATA[if the virtual machine is busy.
    accepted by the guest OS.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.GuestOperationsUnavailable">
      <fault-description-html>
         <![CDATA[if the VM agent for guest operations
    is not running.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidPowerState">
      <fault-description-html>
         <![CDATA[if the VM is not powered on.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.GuestPermissionDenied">
      <fault-description-html>
         <![CDATA[if there are insufficient permissions in
    the guest OS.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidGuestLogin">
      <fault-description-html>
         <![CDATA[if the the guest authentication information
    was not accepted.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.GuestComponentsOutOfDate">
      <fault-description-html>
         <![CDATA[if the guest agent is too old to support
    the operation.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.OperationNotSupportedByGuest">
      <fault-description-html>
         <![CDATA[if the operation is not supported
    by the guest OS.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.OperationDisabledByGuest">
      <fault-description-html>
         <![CDATA[if the operation is not enabled due to
    guest agent configuration.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[A string array containing the value of the variables,
    or all environment variables if nothing is specified.
    The format of each string is "name=value".
    If any specified environment variable isn't set, then nothing is
    returned for that variable.]]>
      </return-value-description-html>
   </method>
   </managed-object>
   <managed-object name="StorageResourceManager"
      type-id="vim.StorageResourceManager"
      vmodl-name="vim.StorageResourceManager"
      version-id-ref="vim.version.version6"
      >
      <description-html>
         <![CDATA[This managed object type provides a way to configure resource usage for
  storage resources.]]>
      </description-html>
      <nested-type-id-ref>vim.StorageResourceManager.IOAllocationInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.StorageResourceManager.IOAllocationOption</nested-type-id-ref>
      <nested-type-id-ref>vim.StorageResourceManager.CongestionThresholdMode</nested-type-id-ref>
      <nested-type-id-ref>vim.StorageResourceManager.IORMConfigInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.StorageResourceManager.IORMConfigSpec</nested-type-id-ref>
      <nested-type-id-ref>vim.StorageResourceManager.IORMConfigOption</nested-type-id-ref>
      <nested-type-id-ref>vim.StorageResourceManager.StoragePerformanceSummary</nested-type-id-ref>
      <nested-type-id-ref>vim.StorageResourceManager.PodStorageDrsEntry</nested-type-id-ref>
      <nested-type-id-ref>vim.StorageResourceManager.StorageProfileStatistics</nested-type-id-ref>
   <method name="ConfigureDatastoreIORM"
      vmodl-name="ConfigureDatastoreIORM"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Changes configuration of storage I/O resource management for a given datastore.
  The changes are applied to all the backing storage devices for the datastore.
  Currently we only support storage I/O resource management on VMFS volumes.
  In order to enable storage I/O resource management on a datstore, we require
  that all the hosts that are attached to the datastore support this feature.
  <p>
  This method is only supported by vCenter server.
  <p>]]>
      </description-html>
      <parameter name="datastore" type-id-ref="vim.Datastore"
      vmodl-name="datastore"
      version-id-ref="vim.version.version6"
      privilege="datastore"
      >
      <description-html>
         <![CDATA[The datastore to be configured.]]>
      </description-html>
      </parameter>
      <parameter name="spec" type-id-ref="vim.StorageResourceManager.IORMConfigSpec"
      vmodl-name="spec"
      version-id-ref="vim.version.version6"
      privilege="spec"
      >
      <description-html>
         <![CDATA[The configuration spec.
  <p>]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.IORMNotSupportedHostOnDatastore">
      <fault-description-html>
         <![CDATA[if called on a datastore that is
          connected to a host that does not support storage I/O resource
          management.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InaccessibleDatastore">
      <fault-description-html>
         <![CDATA[if cannot access the datastore from any of the
          hosts.]]>
      </fault-description-html>
      </fault>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to
        monitor the operation.
  <p>]]>
      </task-description-html>
   </method>
   <method name="QueryIORMConfigOption"
      vmodl-name="QueryIORMConfigOption"
      privilege="Datastore.Config"
      type-id-ref="vim.StorageResourceManager.IORMConfigOption"
      >
      <description-html>
         <![CDATA[Query configuration options for storage I/O resource management.
  <p>]]>
      </description-html>
      <parameter name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      version-id-ref="vim.version.version6"
      privilege="host"
      >
      <description-html>
         <![CDATA[[in] - The host VC will forward the query
  to. This parameter is ignored by host if this method is
  called on a host directly.]]>
      </description-html>
      </parameter>
      <return-value-description-html>
         <![CDATA[configuration option object.]]>
      </return-value-description-html>
   </method>
   <method name="QueryDatastorePerformanceSummary"
      vmodl-name="queryDatastorePerformanceSummary"
      version-id-ref="vim.version.version8"
      is-array="true"
      is-optional="true"
      privilege="System.View"
      type-id-ref="vim.StorageResourceManager.StoragePerformanceSummary"
      >
      <description-html>
         <![CDATA[Returns datastore summary performance statistics.

 <p> This is an experimental interface that is not intended for
 use in production code.

 <p>]]>
      </description-html>
      <parameter name="datastore" type-id-ref="vim.Datastore"
      vmodl-name="datastore"
      version-id-ref="vim.version.version8"
      privilege="datastore"
      >
      <description-html>
         <![CDATA[Datastore for which summary statistics is requested.
 </p>]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[if input datastore cannot be found]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[Summary performance statistics for the datastore. The summary
         contains latency, throughput, and SIOC activity.]]>
      </return-value-description-html>
   </method>
   <method name="ApplyStorageDrsRecommendationToPod"
      vmodl-name="applyRecommendationToPod"
      version-id-ref="vim.version.version7"
      privilege="System.View"
      type-id-ref="vim.storageDrs.ApplyRecommendationResult"
      is-task="true"
      >
      <description-html>
         <![CDATA[Applies a recommendation from the recommendation list that is generated
  by SDRS load balancing activity. Each recommendation can be applied
  only once.
  <p>
  Requires Resource.ApplyRecommendation privilege on the storage pod. And
  requires Resource.ColdMigrate privilege on the virtual machine(s) that
  are relocated. Additionally requires Resource.HotMigrate privilege if
  the virtual machine is powered on (for Storage VMotion). Also requires
  Datastore.AllocateSpace on any datastore the virtual machine or its disks
  are relocated to.
  <p>]]>
      </description-html>
      <parameter name="pod" type-id-ref="vim.StoragePod"
      vmodl-name="pod"
      version-id-ref="vim.version.version7"
      privilege="pod"
      >
      <description-html>
         <![CDATA[The storage pod.]]>
      </description-html>
      </parameter>
      <parameter name="key" type-id-ref="java.lang.String"
      vmodl-name="key"
      version-id-ref="vim.version.version7"
      privilege="key"
      >
      <description-html>
         <![CDATA[The key field of the Recommendation.
  <p>]]>
      </description-html>
      </parameter>
   </method>
   <method name="ApplyStorageDrsRecommendation"
      vmodl-name="applyRecommendation"
      version-id-ref="vim.version.version7"
      privilege="System.View"
      type-id-ref="vim.storageDrs.ApplyRecommendationResult"
      is-task="true"
      >
      <description-html>
         <![CDATA[Applies a recommendation from the recommendation list that is generated
  by SDRS initial placement invoked by RecommendDatastore method.
  In the case of CreateVm and CloneVm a VirtualMachine is returned. Other
  workflows don't have a return value.
  <p>
  Requires Resource. ApplyRecommendation privilege on the storage pod.
  Additionally, depending on the workflow where this API is called from,
  it may require the privileges of invoking one of following APIs:
  <ul>
    <li>CreateVm <a href="vim.Folder.html#createVm">CreateVM_Task</a></li>
    <li>AddDisk <a href="vim.VirtualMachine.html#reconfigure">ReconfigVM_Task</a></li>
    <li>RelocateVm <a href="vim.VirtualMachine.html#relocate">RelocateVM_Task</a></li>
    <li>CloneVm <a href="vim.VirtualMachine.html#clone">CloneVM_Task</a></li>
  </ul>
  <p>]]>
      </description-html>
      <parameter name="key" type-id-ref="java.lang.String"
      vmodl-name="key"
      version-id-ref="vim.version.version7"
      is-array="true"
      privilege="key"
      >
      <description-html>
         <![CDATA[The key fields of the Recommendations that are applied.
  <p>]]>
      </description-html>
      </parameter>
   </method>
   <method name="CancelStorageDrsRecommendation"
      vmodl-name="cancelRecommendation"
      version-id-ref="vim.version.version7"
      privilege="System.View"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Cancels a recommendation. Currently only initial placement
  recommendations can be cancelled. Migration recommendations cannot.
  <p>]]>
      </description-html>
      <parameter name="key" type-id-ref="java.lang.String"
      vmodl-name="key"
      version-id-ref="vim.version.version7"
      is-array="true"
      privilege="key"
      >
      <description-html>
         <![CDATA[The key field of the Recommendation.
  <p>]]>
      </description-html>
      </parameter>
   </method>
   <method name="RefreshStorageDrsRecommendation"
      vmodl-name="refreshRecommendation"
      version-id-ref="vim.version.version7"
      privilege="System.View"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Make Storage DRS invoke again on the specified pod <a href="vim.StoragePod.html">StoragePod</a>
  and return a new list of recommendations. Concurrent "refresh" requests
  may be combined together and trigger only one Storage DRS invocation.
  <p>]]>
      </description-html>
      <parameter name="pod" type-id-ref="vim.StoragePod"
      vmodl-name="pod"
      version-id-ref="vim.version.version7"
      privilege="pod"
      >
      <description-html>
         <![CDATA[The storage pod.
  The recommendations generated is stored at
  PodStorageDrsEntry#recommendation.
  <p>]]>
      </description-html>
      </parameter>
   </method>
   <method name="RefreshStorageDrsRecommendationsForPod"
      vmodl-name="refreshRecommendationsForPod"
      version-id-ref="vim.version.version12"
      privilege="System.View"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Invoke Storage DRS on a specific pod <a href="vim.StoragePod.html">StoragePod</a>
  and return a new list of recommendations.
  <p>]]>
      </description-html>
      <parameter name="pod" type-id-ref="vim.StoragePod"
      vmodl-name="pod"
      version-id-ref="vim.version.version12"
      privilege="pod"
      >
      <description-html>
         <![CDATA[The storage pod.
  The recommendations generated is stored at
  PodStorageDrsEntry#recommendation.
  <p>]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vmodl.fault.InvalidArgument">
      </fault>
   </method>
   <method name="ConfigureStorageDrsForPod"
      vmodl-name="configureStorageDrsForPod"
      version-id-ref="vim.version.version7"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Change the storage DRS configuration for a pod <a href="vim.StoragePod.html">StoragePod</a>.
  <p>]]>
      </description-html>
      <parameter name="pod" type-id-ref="vim.StoragePod"
      vmodl-name="pod"
      version-id-ref="vim.version.version7"
      privilege="pod"
      >
      <description-html>
         <![CDATA[The storage pod.]]>
      </description-html>
      </parameter>
      <parameter name="spec" type-id-ref="vim.storageDrs.ConfigSpec"
      vmodl-name="spec"
      version-id-ref="vim.version.version7"
      privilege="spec"
      >
      <description-html>
         <![CDATA[A set of storage Drs configuration changes to apply to the storage pod.
              The specification can be a complete set of changes or a partial
              set of changes, applied incrementally.]]>
      </description-html>
      </parameter>
      <parameter name="modify" type-id-ref="BOOLEAN"
      vmodl-name="modify"
      version-id-ref="vim.version.version7"
      privilege="modify"
      >
      <description-html>
         <![CDATA[Flag to specify whether the specification ("spec") should
                be applied incrementally. If "modify" is false and the
                operation succeeds, then the configuration of the storage pod
                matches the specification exactly; in this case any unset
                portions of the specification will result in unset or
                default portions of the configuration.
  <p>]]>
      </description-html>
      </parameter>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to monitor
        the operation.
  <p>]]>
      </task-description-html>
   </method>
   <method name="ValidateStoragePodConfig"
      vmodl-name="validateStoragePodConfig"
      version-id-ref="vim.version.version12"
      is-optional="true"
      privilege="System.View"
      type-id-ref="vmodl.MethodFault"
      >
      <description-html>
         <![CDATA[Validate the new storage DRS configuration for a pod
  <a href="vim.StoragePod.html">StoragePod</a>.
  If validation fails, it will return with InvalidArgument fault.
  <p>]]>
      </description-html>
      <parameter name="pod" type-id-ref="vim.StoragePod"
      vmodl-name="pod"
      version-id-ref="vim.version.version12"
      privilege="pod"
      >
      <description-html>
         <![CDATA[The storage pod.]]>
      </description-html>
      </parameter>
      <parameter name="spec" type-id-ref="vim.storageDrs.ConfigSpec"
      vmodl-name="spec"
      version-id-ref="vim.version.version12"
      privilege="spec"
      >
      <description-html>
         <![CDATA[A set of storage Drs configuration changes to apply to
              the storage pod.
  <p>]]>
      </description-html>
      </parameter>
   </method>
   <method name="RecommendDatastores"
      vmodl-name="recommendDatastores"
      version-id-ref="vim.version.version7"
      privilege="System.View"
      type-id-ref="vim.storageDrs.StoragePlacementResult"
      >
      <description-html>
         <![CDATA[<p>
  This method returns a <a href="vim.storageDrs.StoragePlacementResult.html">StoragePlacementResult</a> object.

  This API is intended to replace the following existing APIs for
  SDRS-enabled pods:

  CreateVm: StoragePlacementSpec::type == create =
  <a href="vim.Folder.html#createVm">CreateVM_Task</a>

  AddDisk: StoragePlacementSpec::type == reconfigure =
  <a href="vim.VirtualMachine.html#reconfigure">ReconfigVM_Task</a>

  RelocateVm: StoragePlacementSpec::type == relocate =
  <a href="vim.VirtualMachine.html#relocate">RelocateVM_Task</a>

  CloneVm: StoragePlacementSpec::type == clone =
  <a href="vim.VirtualMachine.html#clone">CloneVM_Task</a>

  The PodSelectionSpec parameter in StoragePlacementSpec is required
  for all workflows. It specifies which SDRS-enabled pod the user
  has selected for the VM and/or for each disk.

  For CreateVm, RelocateVm and CloneVm, PodSelectionSpec.storagePod is
  the user selected SDRS pod for the VM, i.e., its system files.

  For all workflows, PodSelectionSpec.disk.storagePod is the
  user selected SDRS pod for the given disk. Note that a
  DiskLocator must be specified for each disk that the user
  requests to create, migrate or clone into an SDRS pod, even if it's
  the same pod as the VM or the user has manually selected a datastore
  within the pod. If the user has manually selected a datastore, the
  datastore must be specified in the workflow specific fields as
  described below.

  For CreateVm, AddDisk, the manually selected datastore
  must be specified in ConfigSpec.files or
  ConfigSpec.deviceChange.device.backing.datastore, the fields
  should will be unset if the user wants SDRS to recommend the datastore.
  For RelocateVm, the manually selected datastore must be specified in
  RelocateSpec.datastore or RelocateSpec.disk.datastore; the fields should
  be unset iff the user wants SDRS recommendations. For CloneVm, the
  manually selected datastore must be specified in
  CloneSpec.location.datastore or CloneSpec.location.disk[].datastore;
  the fields should be unset iff the user wants SDRS recommendations.

  The remaining expected input parameters in StoragePlacementSpec
  will be the same as those for the existing API as determined by
  StoragePlacementSpec::type. If a parameter is optional in the
  existing API, it will also be optional in the new API.

  <ul>
  <li>
  For CreateVm, the Folder, ConfigSpec, ResourcePool and HostSystem
  parameters will be expected in StoragePlacementSpec. The disks
  to be created can be determined by ConfigSpec -&gt;
  VirtualDeviceSpec[] (deviceChange) -&gt; VirtualDevice (device) -&gt;
  VirtualDisk (subclass).
  <li>
  For AddDisk, the VirtualMachine and ConfigSpec parameters will
  be expected. The use of the ConfigSpec for determining the disks
  to add will be the same as that in CreateVm.
  <li>
  For ExpandDisk, the VirtualMachine and ConfigSpec parameters will
  be expected. The use of the ConfigSpec for determining the disks
  to be expanded will be the same as the disks IDs of existing VM disks.
  <li>
  For RelocateVm, the VirtualMachine, RelocateSpec and
  MovePriority parameters will be expected.
  <li>
  For CloneVm, the VirtualMachine, CloneSpec, Folder and cloneName
  parameters will be expected.
  </ul>

  SDRS takes into account constraints such as space usages,
  (anti-) affinity rules, datastore maintenance mode, etc. when
  making placement recommendations. Given that the constraints are
  satisfied, SDRS tries to balance space usages and I/O loads in
  the placement.
  <p>]]>
      </description-html>
      <parameter name="storageSpec" type-id-ref="vim.storageDrs.StoragePlacementSpec"
      vmodl-name="storageSpec"
      version-id-ref="vim.version.version7"
      privilege="storageSpec"
      >
      </parameter>
   </method>
   </managed-object>
   <managed-object name="IscsiManager"
      type-id="vim.host.IscsiManager"
      vmodl-name="vim.host.IscsiManager"
      version-id-ref="vim.version.version7"
      >
      <description-html>
         <![CDATA[This managed object provides interfaces for mapping VMkernel NIC to
  iSCSI Host Bus Adapter.]]>
      </description-html>
      <nested-type-id-ref>vim.host.IscsiManager.IscsiStatus</nested-type-id-ref>
      <nested-type-id-ref>vim.host.IscsiManager.IscsiPortInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.host.IscsiManager.IscsiDependencyEntity</nested-type-id-ref>
      <nested-type-id-ref>vim.host.IscsiManager.IscsiMigrationDependency</nested-type-id-ref>
   <method name="QueryVnicStatus"
      vmodl-name="queryVnicStatus"
      privilege="Host.Config.Storage"
      type-id-ref="vim.host.IscsiManager.IscsiStatus"
      >
      <description-html>
         <![CDATA[Query the status of Virtual NIC association with the iSCSI.]]>
      </description-html>
      <parameter name="vnicDevice" type-id-ref="java.lang.String"
      vmodl-name="vnicDevice"
      version-id-ref="vim.version.version7"
      privilege="vnicDevice"
      >
      <description-html>
         <![CDATA[Virtual NIC device to check the status for]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.IscsiFault">
      <fault-description-html>
         <![CDATA[For any problem that is not handled with a more specific fault.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[A status object IscsiStatus, containing
          list of the fault codes, providing the user with information as to
          whether Virtual NIC is used by iSCSI and list of compliance check
          failure codes if any. The returned IscsiStatus
          object will have an array of MethodFault objects providing
          following information:
          <ul>
             <li> Empty IscsiStatus (i.e reason unset)
                  if Virtual NIC device is not used.</li>
             <li> Fault code IscsiFaultVnicInUse if Virtual
                  NIC is being used by iSCSI.</li>
             <li> This will be followed with list of fault codes
                  corresponding to the compliance check failures.</li>
          </ul>]]>
      </return-value-description-html>
   </method>
   <method name="QueryPnicStatus"
      vmodl-name="queryPnicStatus"
      privilege="Host.Config.Storage"
      type-id-ref="vim.host.IscsiManager.IscsiStatus"
      >
      <description-html>
         <![CDATA[Query if Physical NIC device is used for iSCSI.]]>
      </description-html>
      <parameter name="pnicDevice" type-id-ref="java.lang.String"
      vmodl-name="pnicDevice"
      version-id-ref="vim.version.version7"
      privilege="pnicDevice"
      >
      <description-html>
         <![CDATA[Physical NIC device name to check the status for]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.IscsiFault">
      <fault-description-html>
         <![CDATA[For any problem that is not handled with a more specific fault.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[A status object, IscsiStatus, indicating
          whether Physical NIC is used by iSCSI or not.
          <ul>
             <li> Empty IscsiStatus (i.e reason unset)
                  if Physical NIC device is not used.</li>
             <li> Fault code IscsiFaultPnicInUse if
                  Physical NIC is being used.</li>
          </ul>]]>
      </return-value-description-html>
   </method>
   <method name="QueryBoundVnics"
      vmodl-name="queryBoundVnics"
      is-array="true"
      is-optional="true"
      privilege="Host.Config.Storage"
      type-id-ref="vim.host.IscsiManager.IscsiPortInfo"
      >
      <description-html>
         <![CDATA[Query the list of Virtual NICs that are bound to a given iSCSI HBA.]]>
      </description-html>
      <parameter name="iScsiHbaName" type-id-ref="java.lang.String"
      vmodl-name="iScsiHbaName"
      version-id-ref="vim.version.version7"
      privilege="iScsiHbaName"
      >
      <description-html>
         <![CDATA[iSCSI adapter name for which the method to be
                      applied.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.IscsiFault">
      <fault-description-html>
         <![CDATA[For any problem that is not handled with a more specific fault.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[If the given HBA is not found]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[An array of IscsiPortInfo containing detailed
          information on the list of Virtual NICs bound to the adapter]]>
      </return-value-description-html>
   </method>
   <method name="QueryCandidateNics"
      vmodl-name="queryCandidateNics"
      is-array="true"
      is-optional="true"
      privilege="Host.Config.Storage"
      type-id-ref="vim.host.IscsiManager.IscsiPortInfo"
      >
      <description-html>
         <![CDATA[Query the candidate Virtual NICs and Physical NICs that can be used
  for Port-Binding.

  For dependent offload adapters, the Virtual NIC should be attached
  to the physical NIC associated with the hardware function.]]>
      </description-html>
      <parameter name="iScsiHbaName" type-id-ref="java.lang.String"
      vmodl-name="iScsiHbaName"
      version-id-ref="vim.version.version7"
      privilege="iScsiHbaName"
      >
      <description-html>
         <![CDATA[iSCSI Adapter name for which the method to be
                      applied.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.IscsiFault">
      <fault-description-html>
         <![CDATA[For any problem that is not handled with a more specific fault.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[If the given HBA is not found]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[Array of IscsiPortInfo containing detailed
          information on list of eligible Virtual NICs that can be bound
          to the adapter. This list will also include details on the
          eligible Physical NICs that are not associated with any
          Virtual NICs.]]>
      </return-value-description-html>
   </method>
   <method name="BindVnic"
      vmodl-name="bindVnic"
      privilege="Host.Config.Storage"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Bind a Virtual NIC to be used for an iSCSI adapter]]>
      </description-html>
      <parameter name="iScsiHbaName" type-id-ref="java.lang.String"
      vmodl-name="iScsiHbaName"
      version-id-ref="vim.version.version7"
      privilege="iScsiHbaName"
      >
      <description-html>
         <![CDATA[iSCSI adapter name for which the Virtual NIC to
                      be added.]]>
      </description-html>
      </parameter>
      <parameter name="vnicDevice" type-id-ref="java.lang.String"
      vmodl-name="vnicDevice"
      version-id-ref="vim.version.version7"
      privilege="vnicDevice"
      >
      <description-html>
         <![CDATA[Virtual NIC that is to be bound to the iSCSI HBA]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.IscsiFaultVnicAlreadyBound">
      <fault-description-html>
         <![CDATA[The given Virtual NIC is already bound to the HBA.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.IscsiFaultVnicHasNoUplinks">
      <fault-description-html>
         <![CDATA[The given Virtual NIC has no physical uplinks.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.IscsiFaultVnicHasMultipleUplinks">
      <fault-description-html>
         <![CDATA[The given Virtual NIC has multiple uplinks.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.IscsiFaultVnicHasWrongUplink">
      <fault-description-html>
         <![CDATA[The given Virtual NIC has the wrong uplink and
                                       it can't be used for iSCSI multi-pathing.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.IscsiFaultVnicNotFound">
      <fault-description-html>
         <![CDATA[The given Virtual NIC is not present on the system.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.IscsiFaultInvalidVnic">
      <fault-description-html>
         <![CDATA[The given Virtual NIC is not valid for the HBA.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.PlatformConfigFault">
      <fault-description-html>
         <![CDATA[For platform error that occurs during the operation.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.IscsiFault">
      <fault-description-html>
         <![CDATA[For any problem that is not handled with a more specific fault.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[If the given HBA is not found]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="UnbindVnic"
      vmodl-name="unbindVnic"
      privilege="Host.Config.Storage"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Unbind Virtual NIC binding from an iSCSI adapter.]]>
      </description-html>
      <parameter name="iScsiHbaName" type-id-ref="java.lang.String"
      vmodl-name="iScsiHbaName"
      version-id-ref="vim.version.version7"
      privilege="iScsiHbaName"
      >
      <description-html>
         <![CDATA[iSCSI adapter name for which the Virtual NIC to
                      be removed.]]>
      </description-html>
      </parameter>
      <parameter name="vnicDevice" type-id-ref="java.lang.String"
      vmodl-name="vnicDevice"
      version-id-ref="vim.version.version7"
      privilege="vnicDevice"
      >
      <description-html>
         <![CDATA[Virtual NIC that is to be removed from the iSCSI HBA]]>
      </description-html>
      </parameter>
      <parameter name="force" type-id-ref="BOOLEAN"
      vmodl-name="force"
      version-id-ref="vim.version.version7"
      privilege="force"
      >
      </parameter>
      <fault type-id-ref="vim.fault.IscsiFaultVnicNotBound">
      <fault-description-html>
         <![CDATA[The given Virtual NIC is not bound to the adapter]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.IscsiFaultVnicHasActivePaths">
      <fault-description-html>
         <![CDATA[The given Virtual NIC is associated with "active" paths
                                       to the storage.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.IscsiFaultVnicIsLastPath">
      <fault-description-html>
         <![CDATA[The given Virtual NIC is associated with "only" paths
                                   to the storage.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.PlatformConfigFault">
      <fault-description-html>
         <![CDATA[For platform error that occurs during the operation.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.IscsiFault">
      <fault-description-html>
         <![CDATA[For any problem that is not handled with a more specific fault.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[If the given HBA is not found]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="QueryMigrationDependencies"
      vmodl-name="queryMigrationDependencies"
      privilege="Host.Config.Storage"
      type-id-ref="vim.host.IscsiManager.IscsiMigrationDependency"
      >
      <description-html>
         <![CDATA[Query the dependency table for a migration operation of a given Physical
  NIC.]]>
      </description-html>
      <parameter name="pnicDevice" type-id-ref="java.lang.String"
      vmodl-name="pnicDevice"
      version-id-ref="vim.version.version7"
      is-array="true"
      privilege="pnicDevice"
      >
      <description-html>
         <![CDATA[List of Physical NICs to be migrated]]>
      </description-html>
      </parameter>
      <return-value-description-html>
         <![CDATA[Dependency table, as described in IscsiMigrationDependency,
          providing the user of all the Virtual NIC and iSCSI resources
          affected.]]>
      </return-value-description-html>
   </method>
   </managed-object>
   <managed-object name="GuestWindowsRegistryManager"
      type-id="vim.vm.guest.WindowsRegistryManager"
      vmodl-name="vim.vm.guest.WindowsRegistryManager"
      version-id-ref="vim.version.version10"
      >
      <description-html>
         <![CDATA[WindowsRegistryManager is the managed object that provides APIs
 to manipulate the Registry in a Windows guest OS.]]>
      </description-html>
      <nested-type-id-ref>vim.vm.guest.WindowsRegistryManager.RegistryKeyName</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.guest.WindowsRegistryManager.RegistryKey</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.guest.WindowsRegistryManager.RegistryKeyRecord</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.guest.WindowsRegistryManager.RegistryValueName</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.guest.WindowsRegistryManager.RegistryValueData</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.guest.WindowsRegistryManager.RegistryValueDword</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.guest.WindowsRegistryManager.RegistryValueQword</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.guest.WindowsRegistryManager.RegistryValueString</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.guest.WindowsRegistryManager.RegistryValueExpandString</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.guest.WindowsRegistryManager.RegistryValueMultiString</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.guest.WindowsRegistryManager.RegistryValueBinary</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.guest.WindowsRegistryManager.RegistryValue</nested-type-id-ref>
   <method name="CreateRegistryKeyInGuest"
      vmodl-name="createRegistryKey"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Create a registry key.]]>
      </description-html>
      <parameter name="vm" type-id-ref="vim.VirtualMachine"
      vmodl-name="vm"
      version-id-ref="vim.version.version10"
      privilege="vm"
      >
      <description-html>
         <![CDATA[Virtual machine to perform the operation on.]]>
      </description-html>
      </parameter>
      <parameter name="auth" type-id-ref="vim.vm.guest.GuestAuthentication"
      vmodl-name="auth"
      version-id-ref="vim.version.version10"
      privilege="auth"
      >
      <description-html>
         <![CDATA[The guest authentication data.]]>
      </description-html>
      </parameter>
      <parameter name="keyName" type-id-ref="vim.vm.guest.WindowsRegistryManager.RegistryKeyName"
      vmodl-name="keyName"
      version-id-ref="vim.version.version10"
      privilege="keyName"
      >
      <description-html>
         <![CDATA[The path to the registry key to be created.]]>
      </description-html>
      </parameter>
      <parameter name="isVolatile" type-id-ref="BOOLEAN"
      vmodl-name="isVolatile"
      version-id-ref="vim.version.version10"
      privilege="isVolatile"
      >
      <description-html>
         <![CDATA[If true, the key is created in memory and is not
                   preserved across system reboot. Otherwise, it shall
                   persist in the file system.]]>
      </description-html>
      </parameter>
      <parameter name="classType" type-id-ref="java.lang.String"
      vmodl-name="classType"
      version-id-ref="vim.version.version10"
      is-optional="true"
      privilege="classType"
      >
      <description-html>
         <![CDATA[User defined class type for this key. May be omitted.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.GuestOperationsFault">
      <fault-description-html>
         <![CDATA[if there is an error processing a guest
                              operation.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the operation cannot be performed because of the
                      virtual machine's current state.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.TaskInProgress">
      <fault-description-html>
         <![CDATA[if the virtual machine is busy.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.GuestOperationsUnavailable">
      <fault-description-html>
         <![CDATA[if the VM agent for guest operations
                                    is not running.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidPowerState">
      <fault-description-html>
         <![CDATA[if the VM is not powered on.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.GuestRegistryKeyInvalid">
      <fault-description-html>
         <![CDATA[if the registry key is not valid. Check
                                 the HKEY Root specified.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.GuestRegistryKeyAlreadyExists">
      <fault-description-html>
         <![CDATA[if the registry key already exists.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.GuestRegistryKeyParentVolatile">
      <fault-description-html>
         <![CDATA[if trying to create a non-volatile
                                        registry subkey under a volatile
                                        registry parent key.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.GuestPermissionDenied">
      <fault-description-html>
         <![CDATA[if the program path cannot be run because
                               the guest authentication will not allow the
                               operation.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidGuestLogin">
      <fault-description-html>
         <![CDATA[if the the guest authentication information
                           was not accepted.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.GuestComponentsOutOfDate">
      <fault-description-html>
         <![CDATA[if the guest agent is too old to support
                                  the operation.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.OperationNotSupportedByGuest">
      <fault-description-html>
         <![CDATA[if the operation is not supported by
                                      the guest OS.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.OperationDisabledByGuest">
      <fault-description-html>
         <![CDATA[if the operation is not enabled due to
                                  guest agent configuration.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="ListRegistryKeysInGuest"
      vmodl-name="listRegistryKeys"
      is-array="true"
      is-optional="true"
      type-id-ref="vim.vm.guest.WindowsRegistryManager.RegistryKeyRecord"
      >
      <description-html>
         <![CDATA[List all registry subkeys for a given registry key.]]>
      </description-html>
      <parameter name="vm" type-id-ref="vim.VirtualMachine"
      vmodl-name="vm"
      version-id-ref="vim.version.version10"
      privilege="vm"
      >
      <description-html>
         <![CDATA[Virtual machine to perform the operation on.]]>
      </description-html>
      </parameter>
      <parameter name="auth" type-id-ref="vim.vm.guest.GuestAuthentication"
      vmodl-name="auth"
      version-id-ref="vim.version.version10"
      privilege="auth"
      >
      <description-html>
         <![CDATA[The guest authentication data.]]>
      </description-html>
      </parameter>
      <parameter name="keyName" type-id-ref="vim.vm.guest.WindowsRegistryManager.RegistryKeyName"
      vmodl-name="keyName"
      version-id-ref="vim.version.version10"
      privilege="keyName"
      >
      <description-html>
         <![CDATA[The path to the registry key for which all subkeys are to
                be listed.]]>
      </description-html>
      </parameter>
      <parameter name="recursive" type-id-ref="BOOLEAN"
      vmodl-name="recursive"
      version-id-ref="vim.version.version10"
      privilege="recursive"
      >
      <description-html>
         <![CDATA[If true, all subkeys are listed recursively.]]>
      </description-html>
      </parameter>
      <parameter name="matchPattern" type-id-ref="java.lang.String"
      vmodl-name="matchPattern"
      version-id-ref="vim.version.version10"
      is-optional="true"
      privilege="matchPattern"
      >
      <description-html>
         <![CDATA[A filter for the key names returned, specified using
                     perl-compatible regular expressions. If matchPattern
                     is unset, then the pattern '.*' is used, which returns
                     all key names found, otherwise only those key names
                     that match the input pattern shall be returned.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.GuestOperationsFault">
      <fault-description-html>
         <![CDATA[if there is an error processing a guest
                              operation.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the operation cannot be performed because of the
                      virtual machine's current state.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.TaskInProgress">
      <fault-description-html>
         <![CDATA[if the virtual machine is busy.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.GuestOperationsUnavailable">
      <fault-description-html>
         <![CDATA[if the VM agent for guest operations
                                    is not running.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidPowerState">
      <fault-description-html>
         <![CDATA[if the VM is not powered on.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.GuestRegistryKeyInvalid">
      <fault-description-html>
         <![CDATA[if the registry key is not valid. Check
                                 the HKEY Root specified.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.GuestPermissionDenied">
      <fault-description-html>
         <![CDATA[if the program path cannot be run because
                               the guest authentication will not allow the
                               operation.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidGuestLogin">
      <fault-description-html>
         <![CDATA[if the the guest authentication information
                           was not accepted.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.GuestComponentsOutOfDate">
      <fault-description-html>
         <![CDATA[if the guest agent is too old to support
                                  the operation.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.OperationNotSupportedByGuest">
      <fault-description-html>
         <![CDATA[if the operation is not supported by
                                      the guest OS.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.OperationDisabledByGuest">
      <fault-description-html>
         <![CDATA[if the operation is not enabled due to
                                  guest agent configuration.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[The list of subkeys is returned in an array of
     <a href="vim.vm.guest.WindowsRegistryManager.RegistryKey.html">GuestRegKeySpec</a> structures.]]>
      </return-value-description-html>
   </method>
   <method name="DeleteRegistryKeyInGuest"
      vmodl-name="deleteRegistryKey"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Delete a registry key.]]>
      </description-html>
      <parameter name="vm" type-id-ref="vim.VirtualMachine"
      vmodl-name="vm"
      version-id-ref="vim.version.version10"
      privilege="vm"
      >
      <description-html>
         <![CDATA[Virtual machine to perform the operation on.]]>
      </description-html>
      </parameter>
      <parameter name="auth" type-id-ref="vim.vm.guest.GuestAuthentication"
      vmodl-name="auth"
      version-id-ref="vim.version.version10"
      privilege="auth"
      >
      <description-html>
         <![CDATA[The guest authentication data.]]>
      </description-html>
      </parameter>
      <parameter name="keyName" type-id-ref="vim.vm.guest.WindowsRegistryManager.RegistryKeyName"
      vmodl-name="keyName"
      version-id-ref="vim.version.version10"
      privilege="keyName"
      >
      <description-html>
         <![CDATA[The path to the registry key to be deleted.]]>
      </description-html>
      </parameter>
      <parameter name="recursive" type-id-ref="BOOLEAN"
      vmodl-name="recursive"
      version-id-ref="vim.version.version10"
      privilege="recursive"
      >
      <description-html>
         <![CDATA[If true, the key is deleted along with any subkeys (if
                  present). Otherwise, it shall only delete the key if it
                  has no subkeys.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.GuestOperationsFault">
      <fault-description-html>
         <![CDATA[if there is an error processing a guest
                              operation.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the operation cannot be performed because of the
                      virtual machine's current state.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.TaskInProgress">
      <fault-description-html>
         <![CDATA[if the virtual machine is busy.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.GuestOperationsUnavailable">
      <fault-description-html>
         <![CDATA[if the VM agent for guest operations
                                    is not running.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidPowerState">
      <fault-description-html>
         <![CDATA[if the VM is not powered on.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.GuestRegistryKeyInvalid">
      <fault-description-html>
         <![CDATA[if the registry key is not valid. Check
                                 the HKEY Root specified.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.GuestRegistryKeyHasSubkeys">
      <fault-description-html>
         <![CDATA[if the parameter recursive is false and
                                    the key has subkeys.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.GuestPermissionDenied">
      <fault-description-html>
         <![CDATA[if the program path cannot be run because
                               the guest authentication will not allow the
                               operation.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidGuestLogin">
      <fault-description-html>
         <![CDATA[if the the guest authentication information
                           was not accepted.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.GuestComponentsOutOfDate">
      <fault-description-html>
         <![CDATA[if the guest agent is too old to support
                                  the operation.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.OperationNotSupportedByGuest">
      <fault-description-html>
         <![CDATA[if the operation is not supported by
                                      the guest OS.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.OperationDisabledByGuest">
      <fault-description-html>
         <![CDATA[if the operation is not enabled due to
                                  guest agent configuration.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="SetRegistryValueInGuest"
      vmodl-name="setRegistryValue"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Set/Create a registry value.]]>
      </description-html>
      <parameter name="vm" type-id-ref="vim.VirtualMachine"
      vmodl-name="vm"
      version-id-ref="vim.version.version10"
      privilege="vm"
      >
      <description-html>
         <![CDATA[Virtual machine to perform the operation on.]]>
      </description-html>
      </parameter>
      <parameter name="auth" type-id-ref="vim.vm.guest.GuestAuthentication"
      vmodl-name="auth"
      version-id-ref="vim.version.version10"
      privilege="auth"
      >
      <description-html>
         <![CDATA[The guest authentication data.]]>
      </description-html>
      </parameter>
      <parameter name="value" type-id-ref="vim.vm.guest.WindowsRegistryManager.RegistryValue"
      vmodl-name="value"
      version-id-ref="vim.version.version10"
      privilege="value"
      >
      <description-html>
         <![CDATA[The information for the registry value to be set/created.
              The Value "name" (specified in
              <a href="vim.vm.guest.WindowsRegistryManager.RegistryValueName.html">GuestRegValueNameSpec</a>)
              and the Value "data" (specified in
              <a href="vim.vm.guest.WindowsRegistryManager.RegistryValue.html">GuestRegValueSpec</a>)
              can both be empty. If "name" is empty, it sets the value for
              the unnamed or default value of the given key.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.GuestOperationsFault">
      <fault-description-html>
         <![CDATA[if there is an error processing a guest
                              operation.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the operation cannot be performed because of the
                      virtual machine's current state.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.TaskInProgress">
      <fault-description-html>
         <![CDATA[if the virtual machine is busy.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.GuestOperationsUnavailable">
      <fault-description-html>
         <![CDATA[if the VM agent for guest operations
                                    is not running.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidPowerState">
      <fault-description-html>
         <![CDATA[if the VM is not powered on.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.GuestRegistryKeyInvalid">
      <fault-description-html>
         <![CDATA[if the registry key is not valid. Check
                                 the HKEY Root specified.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.GuestPermissionDenied">
      <fault-description-html>
         <![CDATA[if the program path cannot be run because
                               the guest authentication will not allow the
                               operation.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidGuestLogin">
      <fault-description-html>
         <![CDATA[if the the guest authentication information
                           was not accepted.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.GuestComponentsOutOfDate">
      <fault-description-html>
         <![CDATA[if the guest agent is too old to support
                                  the operation.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.OperationNotSupportedByGuest">
      <fault-description-html>
         <![CDATA[if the operation is not supported by
                                      the guest OS.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.OperationDisabledByGuest">
      <fault-description-html>
         <![CDATA[if the operation is not enabled due to
                                  guest agent configuration.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="ListRegistryValuesInGuest"
      vmodl-name="listRegistryValues"
      is-array="true"
      is-optional="true"
      type-id-ref="vim.vm.guest.WindowsRegistryManager.RegistryValue"
      >
      <description-html>
         <![CDATA[List all registry values for a given registry key.]]>
      </description-html>
      <parameter name="vm" type-id-ref="vim.VirtualMachine"
      vmodl-name="vm"
      version-id-ref="vim.version.version10"
      privilege="vm"
      >
      <description-html>
         <![CDATA[Virtual machine to perform the operation on.]]>
      </description-html>
      </parameter>
      <parameter name="auth" type-id-ref="vim.vm.guest.GuestAuthentication"
      vmodl-name="auth"
      version-id-ref="vim.version.version10"
      privilege="auth"
      >
      <description-html>
         <![CDATA[The guest authentication data.]]>
      </description-html>
      </parameter>
      <parameter name="keyName" type-id-ref="vim.vm.guest.WindowsRegistryManager.RegistryKeyName"
      vmodl-name="keyName"
      version-id-ref="vim.version.version10"
      privilege="keyName"
      >
      <description-html>
         <![CDATA[The path to the registry key for which all values are to be
                listed.]]>
      </description-html>
      </parameter>
      <parameter name="expandStrings" type-id-ref="BOOLEAN"
      vmodl-name="expandStrings"
      version-id-ref="vim.version.version10"
      privilege="expandStrings"
      >
      <description-html>
         <![CDATA[If true, all values that have expandable data such
                      as environment variable names, shall get expanded in
                      the result.]]>
      </description-html>
      </parameter>
      <parameter name="matchPattern" type-id-ref="java.lang.String"
      vmodl-name="matchPattern"
      version-id-ref="vim.version.version10"
      is-optional="true"
      privilege="matchPattern"
      >
      <description-html>
         <![CDATA[A filter for the value names returned, specified using
                     perl-compatible regular expressions. If matchPattern
                     is unset, then the pattern '.*' is used, which returns
                     all value names found, otherwise only those value
                     names that match the input pattern shall be returned.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.GuestOperationsFault">
      <fault-description-html>
         <![CDATA[if there is an error processing a guest
                              operation.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the operation cannot be performed because of the
                      virtual machine's current state.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.TaskInProgress">
      <fault-description-html>
         <![CDATA[if the virtual machine is busy.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.GuestOperationsUnavailable">
      <fault-description-html>
         <![CDATA[if the VM agent for guest operations
                                    is not running.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidPowerState">
      <fault-description-html>
         <![CDATA[if the VM is not powered on.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.GuestRegistryKeyInvalid">
      <fault-description-html>
         <![CDATA[if the registry key is not valid. Check
                                 the HKEY Root specified.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.GuestPermissionDenied">
      <fault-description-html>
         <![CDATA[if the program path cannot be run because
                               the guest authentication will not allow the
                               operation.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidGuestLogin">
      <fault-description-html>
         <![CDATA[if the the guest authentication information
                           was not accepted.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.GuestComponentsOutOfDate">
      <fault-description-html>
         <![CDATA[if the guest agent is too old to support
                                  the operation.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.OperationNotSupportedByGuest">
      <fault-description-html>
         <![CDATA[if the operation is not supported by
                                      the guest OS.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.OperationDisabledByGuest">
      <fault-description-html>
         <![CDATA[if the operation is not enabled due to
                                  guest agent configuration.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[The list of values is returned in an array of
     <a href="vim.vm.guest.WindowsRegistryManager.RegistryValue.html">GuestRegValueSpec</a> structures.]]>
      </return-value-description-html>
   </method>
   <method name="DeleteRegistryValueInGuest"
      vmodl-name="deleteRegistryValue"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Delete a registry value.]]>
      </description-html>
      <parameter name="vm" type-id-ref="vim.VirtualMachine"
      vmodl-name="vm"
      version-id-ref="vim.version.version10"
      privilege="vm"
      >
      <description-html>
         <![CDATA[Virtual machine to perform the operation on.]]>
      </description-html>
      </parameter>
      <parameter name="auth" type-id-ref="vim.vm.guest.GuestAuthentication"
      vmodl-name="auth"
      version-id-ref="vim.version.version10"
      privilege="auth"
      >
      <description-html>
         <![CDATA[The guest authentication data.]]>
      </description-html>
      </parameter>
      <parameter name="valueName" type-id-ref="vim.vm.guest.WindowsRegistryManager.RegistryValueName"
      vmodl-name="valueName"
      version-id-ref="vim.version.version10"
      privilege="valueName"
      >
      <description-html>
         <![CDATA[The registry value name to be deleted.
                  The Value "name" (specified in
                  <a href="vim.vm.guest.WindowsRegistryManager.RegistryValueName.html">GuestRegValueNameSpec</a>)
                  can be empty. If "name" is empty, it deletes the value
                  for the unnamed or default value of the given key.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.GuestOperationsFault">
      <fault-description-html>
         <![CDATA[if there is an error processing a guest
                              operation.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the operation cannot be performed because of the
                      virtual machine's current state.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.TaskInProgress">
      <fault-description-html>
         <![CDATA[if the virtual machine is busy.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.GuestOperationsUnavailable">
      <fault-description-html>
         <![CDATA[if the VM agent for guest operations
                                    is not running.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidPowerState">
      <fault-description-html>
         <![CDATA[if the VM is not powered on.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.GuestRegistryKeyInvalid">
      <fault-description-html>
         <![CDATA[if the registry key is not valid. Check
                                 the HKEY Root specified.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.GuestRegistryValueNotFound">
      <fault-description-html>
         <![CDATA[if the registry value was not found.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.GuestPermissionDenied">
      <fault-description-html>
         <![CDATA[if the program path cannot be run because
                               the guest authentication will not allow the
                               operation.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidGuestLogin">
      <fault-description-html>
         <![CDATA[if the the guest authentication information
                           was not accepted.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.GuestComponentsOutOfDate">
      <fault-description-html>
         <![CDATA[if the guest agent is too old to support
                                  the operation.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.OperationNotSupportedByGuest">
      <fault-description-html>
         <![CDATA[if the operation is not supported by
                                      the guest OS.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.OperationDisabledByGuest">
      <fault-description-html>
         <![CDATA[if the operation is not enabled due to
                                  guest agent configuration.]]>
      </fault-description-html>
      </fault>
   </method>
   </managed-object>
   <managed-object name="ServiceManager"
      type-id="vim.ServiceManager"
      vmodl-name="vim.ServiceManager"
      version-id-ref="vim.version.version2"
      internal-before-version-id-ref="vim.version.version8"
      >
      <description-html>
         <![CDATA[The ServiceManager managed object is a singleton object that is used to present
  services that are optional and not necessarily formally defined.

  This directory makes available a list of such services and provides an easy way
  to locate them. The service being represented can take arbitrary form here and
  is thus represented by a generic ManagedObject. The expectation is that the
  client side is knowledgeable of the instance type of the specific service it
  is interested in using.]]>
      </description-html>
            <property name="service" type-id-ref="vim.ServiceManager.ServiceInfo"
      vmodl-name="service"
      is-array="true"
      is-optional="true"
      privilege="Global.ServiceManagers"
      >
      <description-html>
         <![CDATA[The full list of services available in this directory.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.ServiceManager.ServiceInfo</nested-type-id-ref>
   <method name="QueryServiceList"
      vmodl-name="queryServiceList"
      is-array="true"
      is-optional="true"
      privilege="Global.ServiceManagers"
      type-id-ref="vim.ServiceManager.ServiceInfo"
      >
      <description-html>
         <![CDATA[A query interface that returns a list of services that match certain criteria.
  Besides a basic service name entry, an arbitrary list of matching locations
  can also be specified. The location array is assumed to be a list of AND expressions,
  ie, all locations must match for an entry to be considered a match.

  Regular expressions are not allowed in the query service.]]>
      </description-html>
      <parameter name="serviceName" type-id-ref="java.lang.String"
      vmodl-name="serviceName"
      version-id-ref="vim.version.version2"
      is-optional="true"
      privilege="serviceName"
      >
      <description-html>
         <![CDATA[The name of the service to be located.]]>
      </description-html>
      </parameter>
      <parameter name="location" type-id-ref="java.lang.String"
      vmodl-name="location"
      version-id-ref="vim.version.version2"
      is-array="true"
      is-optional="true"
      privilege="location"
      >
      <description-html>
         <![CDATA[The list of location information that needs to match for a service to be
  considered a match.]]>
      </description-html>
      </parameter>
   </method>
   </managed-object>
   <managed-object name="VirtualizationManager"
      type-id="vim.VirtualizationManager"
      vmodl-name="vim.VirtualizationManager"
      version-id-ref="vim.version.version2"
      is-deprecated="true"
      >
      <description-html>
         <![CDATA[The VirtualizationManager is the interface for discover and consolidate
  host and services from physical environment to virtualization environment.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of VI API 2.5, use the VMware vCenter Converter,
 an optional software plug-in for vCenter Server for
 migrating physical and virtual machines to VMware vSphere.]]>
      </deprecated-html>
   </managed-object>
   <managed-object name="View"
      type-id="vim.view.View"
      vmodl-name="vim.view.View"
      version-id-ref="vim.version.version2"
      >
      <description-html>
         <![CDATA[<a href="vim.view.View.html">View</a> is the base class for session-specific view objects.
  A view is a mechanism that supports selection of objects on the server
  and subsequently, access to those objects.
  To create a view, use the <a href="vim.view.ViewManager.html">ViewManager</a> methods.
  A view exists until you terminate it by calling the <a href="vim.view.View.html#destroy">DestroyView</a> method,
  or until the end of the session.
  Access to a view is limited to the session in which it is created.
  <p>
  There are three types of views:
  <ul>
  <li> <a href="vim.view.ContainerView.html">ContainerView</a>
  <li> <a href="vim.view.ListView.html">ListView</a>
  <li> <a href="vim.view.InventoryView.html">InventoryView</a>
  </ul>
  <p>
  A view maintains a <a href="vim.view.ManagedObjectView.html#view">View</a> list that contains
  managed object references. You can use a view
  with the <a href="vmodl.query.PropertyCollector.html">PropertyCollector</a> to retrieve data and
  obtain notification of changes to the virtual environment.
  For information about using views with the PropertyCollector,
  see the description of <a href="vim.view.ViewManager.html">ViewManager</a>.]]>
      </description-html>
   <method name="DestroyView"
      vmodl-name="destroy"
      privilege="System.View"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Destroy this view.]]>
      </description-html>
   </method>
   </managed-object>
   <managed-object name="HostActiveDirectoryAuthentication"
      type-id="vim.host.ActiveDirectoryAuthentication"
      vmodl-name="vim.host.ActiveDirectoryAuthentication"
      version-id-ref="vim.version.version6"
      base-type-id="vim.host.DirectoryStore"
      >
      <description-html>
         <![CDATA[The <a href="vim.host.ActiveDirectoryAuthentication.html">HostActiveDirectoryAuthentication</a> managed object
  indicates domain membership status and provides methods
  for adding a host to and removing a host from a domain.]]>
      </description-html>
      <nested-type-id-ref>vim.host.ActiveDirectoryAuthentication.CertificateDigest</nested-type-id-ref>
   <method name="JoinDomain"
      vmodl-name="joinDomain"
      privilege="Host.Config.AuthenticationStore"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Adds the host to an Active Directory domain.
  <p>
  If the <a href="vim.host.AuthenticationStoreInfo.html">HostAuthenticationStoreInfo</a>.<a href="vim.host.AuthenticationStoreInfo.html#enabled">enabled</a>
  property is <code>True</code> (accessed through the <code>info</code> property),
  the host has joined a domain.
  The vSphere API will throw the <code>InvalidState</code> fault if you try
  to add a host to a domain when the host has already joined a domain.]]>
      </description-html>
      <parameter name="domainName" type-id-ref="java.lang.String"
      vmodl-name="domainName"
      version-id-ref="vim.version.version6"
      privilege="domainName"
      >
      <description-html>
         <![CDATA[Name of the domain to be joined.]]>
      </description-html>
      </parameter>
      <parameter name="userName" type-id-ref="java.lang.String"
      vmodl-name="userName"
      version-id-ref="vim.version.version6"
      privilege="userName"
      >
      <description-html>
         <![CDATA[Name for an Active Directory account
                  that has the authority to add hosts to the domain.]]>
      </description-html>
      </parameter>
      <parameter name="password" type-id-ref="java.lang.String"
      vmodl-name="password"
      version-id-ref="vim.version.version6"
      privilege="password"
      >
      <description-html>
         <![CDATA[Password for the <code>userName</code> account.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the host has already joined a domain.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[if the host configuration prevents the join operation
                          from succeeding.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidLogin">
      <fault-description-html>
         <![CDATA[if <code>userName</code> and <code>password</code>
                       are not valid user credentials.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.ActiveDirectoryFault">
      <fault-description-html>
         <![CDATA[for any problem that is not handled with a more specific fault.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.TaskInProgress">
      <fault-description-html>
         <![CDATA[if the <a href="vim.host.ActiveDirectoryAuthentication.html">HostActiveDirectoryAuthentication</a> object is busy.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.BlockedByFirewall">
      <fault-description-html>
         <![CDATA[if ports needed by the join operation are
                            blocked by the firewall.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.DomainNotFound">
      <fault-description-html>
         <![CDATA[if the domain controller for <code>domainName</code>
                         cannot be reached.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.NoPermissionOnAD">
      <fault-description-html>
         <![CDATA[if <code>userName</code> has no right to add hosts to the domain.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidHostName">
      <fault-description-html>
         <![CDATA[if the domain part of the host's FQDN doesn't match
                          the domain being joined.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.ClockSkew">
      <fault-description-html>
         <![CDATA[if the clocks of the host and the domain controller
                    differ by more than the allowed amount of time.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="JoinDomainWithCAM"
      vmodl-name="joinDomainWithCAM"
      version-id-ref="vim.version.version7"
      privilege="Host.Config.AuthenticationStore"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Adds the host to an Active Directory domain through CAM service.
  <p>
  If the <a href="vim.host.AuthenticationStoreInfo.html">HostAuthenticationStoreInfo</a>.<a href="vim.host.AuthenticationStoreInfo.html#enabled">enabled</a>
  property is <code>True</code> (accessed through the <code>info</code> property),
  the host has joined a domain.
  The vSphere API will throw the <code>InvalidState</code> fault if you try
  to add a host to a domain when the host has already joined a domain.]]>
      </description-html>
      <parameter name="domainName" type-id-ref="java.lang.String"
      vmodl-name="domainName"
      version-id-ref="vim.version.version7"
      privilege="domainName"
      >
      <description-html>
         <![CDATA[Name of the domain to be joined.]]>
      </description-html>
      </parameter>
      <parameter name="camServer" type-id-ref="java.lang.String"
      vmodl-name="camServer"
      version-id-ref="vim.version.version7"
      privilege="camServer"
      >
      <description-html>
         <![CDATA[Name of server providing the CAM service.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the host has already joined a domain.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[if the host configuration prevents the join operation
                          from succeeding.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.ActiveDirectoryFault">
      <fault-description-html>
         <![CDATA[for any problem that is not handled with a more specific fault.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.TaskInProgress">
      <fault-description-html>
         <![CDATA[if the <a href="vim.host.ActiveDirectoryAuthentication.html">HostActiveDirectoryAuthentication</a> object is busy.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.BlockedByFirewall">
      <fault-description-html>
         <![CDATA[if ports needed by the join operation are
                            blocked by the firewall.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.DomainNotFound">
      <fault-description-html>
         <![CDATA[if the domain controller for <code>domainName</code>
                         cannot be reached.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidHostName">
      <fault-description-html>
         <![CDATA[if the domain part of the host's FQDN doesn't match
                          the domain being joined.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.ClockSkew">
      <fault-description-html>
         <![CDATA[if the clocks of the host and the domain controller
                    differ by more than the allowed amount of time.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidCAMServer">
      <fault-description-html>
         <![CDATA[if camServer is not a valid IP address, or
                           if camServer is not accessible.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidCAMCertificate">
      <fault-description-html>
         <![CDATA[if the certificate of the given CAM server
                                cannot be verified.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.CAMServerRefusedConnection">
      <fault-description-html>
         <![CDATA[if the specified CAM server is not
                                     reachable, or
                                     if the server denied access.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="ImportCertificateForCAM"
      vmodl-name="importCertificateForCAM"
      version-id-ref="vim.version.version7"
      privilege="Host.Config.AuthenticationStore"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Import the CAM server's certificate to the local store of vmwauth.
  <p>
  The certificate should have already been uploaded to ESXi file system.]]>
      </description-html>
      <parameter name="certPath" type-id-ref="java.lang.String"
      vmodl-name="certPath"
      version-id-ref="vim.version.version7"
      privilege="certPath"
      >
      <description-html>
         <![CDATA[full path of the certificate on ESXi]]>
      </description-html>
      </parameter>
      <parameter name="camServer" type-id-ref="java.lang.String"
      vmodl-name="camServer"
      version-id-ref="vim.version.version7"
      privilege="camServer"
      >
      <description-html>
         <![CDATA[IP of server providing the CAM service.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.FileNotFound">
      <fault-description-html>
         <![CDATA[if the certificate file does not exist]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.ActiveDirectoryFault">
      <fault-description-html>
         <![CDATA[for any problem that is not handled with a more specific fault.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidCAMServer">
      <fault-description-html>
         <![CDATA[if camServer is not a valid IP address]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="LeaveCurrentDomain"
      vmodl-name="leaveCurrentDomain"
      privilege="Host.Config.AuthenticationStore"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Removes the host from the Active Directory domain to which it belongs.]]>
      </description-html>
      <parameter name="force" type-id-ref="BOOLEAN"
      vmodl-name="force"
      version-id-ref="vim.version.version6"
      privilege="force"
      >
      <description-html>
         <![CDATA[If <code>True</code>, any existing permissions on managed entities for
               Active Directory users will be deleted. If <code>False</code> and such
               permissions exist, the operation will fail.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the host is not in a domain or there are active
                       permissions for Active Directory users.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.AuthMinimumAdminPermission">
      <fault-description-html>
         <![CDATA[if this change would leave the system with
                       no Administrator permission on the root node.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.ActiveDirectoryFault">
      <fault-description-html>
         <![CDATA[for any problem that is not handled with a specific fault.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.TaskInProgress">
      <fault-description-html>
         <![CDATA[if the ActiveDirectoryAuthentication object is busy.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.NonADUserRequired">
      <fault-description-html>
         <![CDATA[only non Active Directory users can initiate
                       the leave domain operation.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="EnableSmartCardAuthentication"
      vmodl-name="enableSmartCardAuthentication"
      version-id-ref="vim.version.version10"
      privilege="Host.Config.AuthenticationStore"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Enables console authentication using a local smart card and reader.

  To take effect this feature requires an active domain membership to a
  domain with users configured to authenticate using smart cards.]]>
      </description-html>
      <fault type-id-ref="vim.fault.ActiveDirectoryFault">
      <fault-description-html>
         <![CDATA[if the active directory client could not
                               be reconfigured.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[if the host configuration prevents smart card
                          authentication from being enabled.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="InstallSmartCardTrustAnchor"
      vmodl-name="installSmartCardTrustAnchor"
      version-id-ref="vim.version.version10"
      privilege="Host.Config.AuthenticationStore"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Install a trust anchor certificate for smart card authentication.]]>
      </description-html>
      <parameter name="cert" type-id-ref="java.lang.String"
      vmodl-name="cert"
      version-id-ref="vim.version.version10"
      privilege="cert"
      >
      <description-html>
         <![CDATA[SSL certificate in PEM format]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[if the host configuration prevents the
                          certificate from being installed.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="ReplaceSmartCardTrustAnchors"
      vmodl-name="replaceSmartCardTrustAnchors"
      version-id-ref="vim.version.version10"
      privilege="Host.Config.AuthenticationStore"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Replace the trust anchor certificates for smart card authentication.]]>
      </description-html>
      <parameter name="certs" type-id-ref="java.lang.String"
      vmodl-name="certs"
      version-id-ref="vim.version.version10"
      is-array="true"
      is-optional="true"
      privilege="certs"
      >
      <description-html>
         <![CDATA[List of trusted CA certificates in PEM format. If empty
                then all existing trust anchors are removed.]]>
      </description-html>
      </parameter>
   </method>
   <method name="RemoveSmartCardTrustAnchor"
      vmodl-name="removeSmartCardTrustAnchor"
      version-id-ref="vim.version.version10"
      is-deprecated="true"
      privilege="Host.Config.AuthenticationStore"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Remove a smart card trust anchor certificate from the system.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[Please remove by fingerprint/digest instead.]]>
      </deprecated-html>
      <parameter name="issuer" type-id-ref="java.lang.String"
      vmodl-name="issuer"
      version-id-ref="vim.version.version10"
      privilege="issuer"
      >
      <description-html>
         <![CDATA[Certificate issuer]]>
      </description-html>
      </parameter>
      <parameter name="serial" type-id-ref="java.lang.String"
      vmodl-name="serial"
      version-id-ref="vim.version.version10"
      privilege="serial"
      >
      <description-html>
         <![CDATA[Certificate serial number (decimal integer)]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[if the host configuration prevents the
                          certificate from being removed.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="RemoveSmartCardTrustAnchorByFingerprint"
      vmodl-name="removeSmartCardTrustAnchorByFingerprint"
      version-id-ref="vim.version.version10"
      privilege="Host.Config.AuthenticationStore"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Remove a smart card trust anchor certificate from the system by
  fingerprint.]]>
      </description-html>
      <parameter name="fingerprint" type-id-ref="java.lang.String"
      vmodl-name="fingerprint"
      version-id-ref="vim.version.version10"
      privilege="fingerprint"
      >
      <description-html>
         <![CDATA[Certificate fingerprint]]>
      </description-html>
      </parameter>
      <parameter name="digest" type-id-ref="java.lang.String"
      vmodl-name="digest"
      version-id-ref="vim.version.version10"
      privilege="digest"
      >
      <description-html>
         <![CDATA[Digest function used to compute fingerprint. One of
                      <a href="vim.host.ActiveDirectoryAuthentication.CertificateDigest.html">HostActiveDirectoryAuthenticationCertificateDigest</a>.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[if the host configuration prevents the
                          certificate from being removed.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="ListSmartCardTrustAnchors"
      vmodl-name="listSmartCardTrustAnchors"
      version-id-ref="vim.version.version10"
      is-array="true"
      is-optional="true"
      privilege="Host.Config.AuthenticationStore"
      type-id-ref="java.lang.String"
      >
      <description-html>
         <![CDATA[Lists installed trust anchor certificates for smart card authentication.]]>
      </description-html>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[if the host configuration prevents the
                          certificates from being listed.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[SSL certificates of trusted CAs in PEM format.]]>
      </return-value-description-html>
   </method>
   <method name="DisableSmartCardAuthentication"
      vmodl-name="disableSmartCardAuthentication"
      version-id-ref="vim.version.version10"
      privilege="Host.Config.AuthenticationStore"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Disables console authentication using a local smart card and reader.]]>
      </description-html>
      <fault type-id-ref="vim.fault.ActiveDirectoryFault">
      <fault-description-html>
         <![CDATA[if the active directory client could not
                               be reconfigured.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[if the host configuration prevents smart card
                          authentication from being disabled.]]>
      </fault-description-html>
      </fault>
   </method>
   </managed-object>
   <managed-object name="DistributedVirtualPortgroup"
      type-id="vim.dvs.DistributedVirtualPortgroup"
      vmodl-name="vim.dvs.DistributedVirtualPortgroup"
      version-id-ref="vim.version.version5"
      base-type-id="vim.Network"
      >
      <description-html>
         <![CDATA[The <a href="vim.dvs.DistributedVirtualPortgroup.html">DistributedVirtualPortgroup</a> managed object
 defines how hosts and virtual machines connect to a network.
 A distributed virtual portgroup specifies <a href="vim.dvs.DistributedVirtualPort.html">DistributedVirtualPort</a>
 configuration options for the ports on a <a href="vim.DistributedVirtualSwitch.html">DistributedVirtualSwitch</a>.
 A portgroup also represents a <a href="vim.Network.html">Network</a> entity in the datacenter.
 <br /><br />
 <ul>
 <li>To configure host access by portgroup, set the portgroup in the host virtual NIC specification
     (<a href="vim.host.VirtualNic.Specification.html">HostVirtualNicSpec</a>.<a href="vim.host.VirtualNic.Specification.html#portgroup">portgroup</a>).
 </li><br />
 <li>To configure virtual machine access by portgroup, set the portgroup
     in the virtual Ethernet card backing
  (<a href="vim.vm.device.VirtualEthernetCard.html">VirtualEthernetCard</a>.<a href="vim.vm.device.VirtualDevice.html#backing">backing</a>.<a href="vim.vm.device.VirtualEthernetCard.DistributedVirtualPortBackingInfo.html#port">port</a>.<a href="vim.dvs.PortConnection.html#portgroupKey">portgroupKey</a>).
 </li>
 </ul>
 <p>
 When you use a portgroup for network access, the Server will create a port according
 to <a href="vim.dvs.DistributedVirtualPortgroup.html#config">Config</a>.<a href="vim.dvs.DistributedVirtualPortgroup.ConfigInfo.html#type">type</a>.]]>
      </description-html>
            <property name="key" type-id-ref="java.lang.String"
      vmodl-name="key"
      >
      <description-html>
         <![CDATA[Generated UUID of the portgroup.]]>
      </description-html>
      </property>

            <property name="config" type-id-ref="vim.dvs.DistributedVirtualPortgroup.ConfigInfo"
      vmodl-name="config"
      >
      <description-html>
         <![CDATA[Configuration of the portgroup.]]>
      </description-html>
      </property>

            <property name="portKeys" type-id-ref="java.lang.String"
      vmodl-name="portKeys"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Port keys for the set of ports in the portgroup.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.dvs.DistributedVirtualPortgroup.PortgroupType</nested-type-id-ref>
      <nested-type-id-ref>vim.dvs.DistributedVirtualPortgroup.BackingType</nested-type-id-ref>
      <nested-type-id-ref>vim.dvs.DistributedVirtualPortgroup.PortgroupPolicy</nested-type-id-ref>
      <nested-type-id-ref>vim.dvs.DistributedVirtualPortgroup.MetaTagName</nested-type-id-ref>
      <nested-type-id-ref>vim.dvs.DistributedVirtualPortgroup.ConfigSpec</nested-type-id-ref>
      <nested-type-id-ref>vim.dvs.DistributedVirtualPortgroup.ConfigInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.dvs.DistributedVirtualPortgroup.Problem</nested-type-id-ref>
      <nested-type-id-ref>vim.dvs.DistributedVirtualPortgroup.NsxPortgroupOperationResult</nested-type-id-ref>
   <method name="ReconfigureDVPortgroup"
      vmodl-name="reconfigure"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Reconfigures one or more distributed virtual portgroups.
  You can use this method to set portgroup properties or
  to reset the portgroup to a previous state.
  <h3>Reconfiguring a Standard Distributed Virtual Portgroup</h3>
  <p>
  To reconfigure a <a href="vim.dvs.DistributedVirtualPortgroup.html">DistributedVirtualPortgroup</a>,
  use a <a href="vim.dvs.DistributedVirtualPortgroup.ConfigSpec.html">DVPortgroupConfigSpec</a>
  to set the portgroup properties.
  </p>
  <h3>Reconfiguring a Portgroup Associated With a VMware Distributed Virtual Switch</h3>
  <p>
  If you use a <a href="vim.dvs.VmwareDistributedVirtualSwitch.html">VmwareDistributedVirtualSwitch</a>,
  you can perform the following portgroup reconfiguration:
  <ul>
  <li>Use a <a href="vim.dvs.DistributedVirtualPortgroup.ConfigSpec.html">DVPortgroupConfigSpec</a>
  to set the portgroup properties.</li><br />
  <li>Use the <a href="vim.dvs.DistributedVirtualPortgroup.ConfigSpec.html">DVPortgroupConfigSpec</a>
  returned by <a href="vim.dvs.DistributedVirtualPortgroup.html#rollback">DVPortgroupRollback_Task</a>
  to reset the portgroup to a previous state.</li>
  </ul>
  <p>
  The following privileges are required to reconfigure a portgroup.
  <ul>
    <li>DVPortgroup.PolicyOp if you are changing the policy of the portgroup.</li>
    <li>DVPortgroup.ScopeOp if you are changing the scope of the portgroup.</li>
    <li>DVPortgroup.Modify for anything else.</li>
  </ul>]]>
      </description-html>
      <parameter name="spec" type-id-ref="vim.dvs.DistributedVirtualPortgroup.ConfigSpec"
      vmodl-name="spec"
      version-id-ref="vim.version.version5"
      privilege="spec"
      >
      <description-html>
         <![CDATA[Configuration data for the portgroup.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.DvsFault">
      <fault-description-html>
         <![CDATA[if spec is not valid.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.ConcurrentAccess">
      </fault>
      <fault type-id-ref="vim.fault.DuplicateName">
      </fault>
      <fault type-id-ref="vim.fault.InvalidName">
      </fault>
      <fault type-id-ref="vim.fault.DvsNotAuthorized">
      <fault-description-html>
         <![CDATA[if login-session's extension key does not match
          the switch's configured
          <a href="vim.DistributedVirtualSwitch.ConfigInfo.html#extensionKey">extensionKey</a>.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="DVPortgroupRollback"
      vmodl-name="rollback"
      version-id-ref="vim.version.version8"
      is-optional="true"
      type-id-ref="vim.dvs.DistributedVirtualPortgroup.ConfigSpec"
      is-task="true"
      >
      <description-html>
         <![CDATA[This method determines if the portgroup configuration has changed.
 If it has changed, the method returns a
 <a href="vim.dvs.DistributedVirtualPortgroup.ConfigSpec.html">DVPortgroupConfigSpec</a>.
 Use the <a href="vim.dvs.DistributedVirtualPortgroup.html#reconfigure">ReconfigureDVPortgroup_Task</a> method
 to apply the rollback configuration to the portgroup. You can use the
 rollback method only on a portgroup that is associated with a
 <a href="vim.dvs.VmwareDistributedVirtualSwitch.html">VmwareDistributedVirtualSwitch</a>.
  <p>
  <ul>
  <li>If you specify the <code>entityBackup</code> parameter, the returned
  configuration specification represents the exported portgroup configuration.
  If the <code>entityBackup</code> matches the current portgroup
  configuration, the method does not return a configuration specification.
  </li><br />
  <li>If <code>entityBackup</code> is not specified, the returned configuration
  specification represents a previous state of the portgroup, if available.
  When you use a VMware distributed virtual switch, each time you reconfigure
  the switch, the Server saves the switch configuration before applying the updates.
  If the vCenter Server is restarted, the saved configuration is not preserved
  and the method does not return a configuration specification.
  </li>
  </ul>
  <p>
  To use the rollback method, you must have the DVPortgroup.Read privilege.
  </p>]]>
      </description-html>
      <parameter name="entityBackup" type-id-ref="vim.dvs.EntityBackup.Config"
      vmodl-name="entityBackup"
      version-id-ref="vim.version.version8"
      is-optional="true"
      privilege="entityBackup"
      >
      <description-html>
         <![CDATA[The backup of Distributed Virtual PortGroup entity.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.DvsFault">
      <fault-description-html>
         <![CDATA[if operation fails.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.RollbackFailure">
      <fault-description-html>
         <![CDATA[if there is no configuration specified in entityBackup and
          the previous configuration does not exist either]]>
      </fault-description-html>
      </fault>
      <task-description-html>
         <![CDATA[Returns a <a href="vim.Task.html">Task</a> object with which to monitor the operation.
        If the distributed virtual portgroup configuration has changed, the
        <a href="vim.Task.html">Task</a>.<a href="vim.Task.html#info">Info</a>.<a href="vim.TaskInfo.html#result">result</a>
        property contains the <a href="vim.dvs.DistributedVirtualPortgroup.ConfigSpec.html">DVPortgroupConfigSpec</a> object.]]>
      </task-description-html>
   </method>
   </managed-object>
   <managed-object name="PropertyCollector"
      type-id="vmodl.query.PropertyCollector"
      vmodl-name="vmodl.query.PropertyCollector"
      version-id-ref="vmodl.query.version.version1"
      >
      <description-html>
         <![CDATA[The <a href="vmodl.query.PropertyCollector.html">PropertyCollector</a> managed object retrieves and detects changes
  to the properties of other managed objects. The <a href="vmodl.query.PropertyCollector.html#retrievePropertiesEx">RetrievePropertiesEx</a> method provides one-time property retrieval. The
  <a href="vmodl.query.PropertyCollector.html#waitForUpdatesEx">WaitForUpdatesEx</a> method provides incremental change detection and
  supports both polling and notification.

  <p> For change detection a client creates one or more filters to specify the
  subset of managed objects in which the client is interested. Filters keep
  per-session state to track incremental changes. Because this state is
  per-session: <ul>

  <li> A session cannot share its <a href="vmodl.query.PropertyCollector.html">PropertyCollector</a> filters with other
       sessions

  <li> two different clients can share the same session, and so can
       share the same filters, but this is not recommended

  <li> When a session terminates, the associated <a href="vmodl.query.PropertyCollector.html">PropertyCollector</a> filters
       are automatically destroyed.

  </ul>]]>
      </description-html>
            <property name="filter" type-id-ref="vmodl.query.PropertyCollector.Filter"
      vmodl-name="filter"
      is-array="true"
      is-optional="true"
      privilege="System.View"
      >
      <description-html>
         <![CDATA[The filters that this <a href="vmodl.query.PropertyCollector.html">PropertyCollector</a> uses to determine the list of
  properties for which it detects incremental changes.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vmodl.query.PropertyCollector.FilterSpec</nested-type-id-ref>
      <nested-type-id-ref>vmodl.query.PropertyCollector.PropertySpec</nested-type-id-ref>
      <nested-type-id-ref>vmodl.query.PropertyCollector.ObjectSpec</nested-type-id-ref>
      <nested-type-id-ref>vmodl.query.PropertyCollector.SelectionSpec</nested-type-id-ref>
      <nested-type-id-ref>vmodl.query.PropertyCollector.TraversalSpec</nested-type-id-ref>
      <nested-type-id-ref>vmodl.query.PropertyCollector.Filter</nested-type-id-ref>
      <nested-type-id-ref>vmodl.query.PropertyCollector.ObjectContent</nested-type-id-ref>
      <nested-type-id-ref>vmodl.query.PropertyCollector.UpdateSet</nested-type-id-ref>
      <nested-type-id-ref>vmodl.query.PropertyCollector.FilterUpdate</nested-type-id-ref>
      <nested-type-id-ref>vmodl.query.PropertyCollector.ObjectUpdate</nested-type-id-ref>
      <nested-type-id-ref>vmodl.query.PropertyCollector.Change</nested-type-id-ref>
      <nested-type-id-ref>vmodl.query.PropertyCollector.MissingProperty</nested-type-id-ref>
      <nested-type-id-ref>vmodl.query.PropertyCollector.MissingObject</nested-type-id-ref>
      <nested-type-id-ref>vmodl.query.PropertyCollector.WaitOptions</nested-type-id-ref>
      <nested-type-id-ref>vmodl.query.PropertyCollector.RetrieveOptions</nested-type-id-ref>
      <nested-type-id-ref>vmodl.query.PropertyCollector.RetrieveResult</nested-type-id-ref>
   <method name="CreateFilter"
      vmodl-name="createFilter"
      privilege="System.View"
      type-id-ref="vmodl.query.PropertyCollector.Filter"
      >
      <description-html>
         <![CDATA[Creates a new filter for the given set of managed objects.]]>
      </description-html>
      <parameter name="spec" type-id-ref="vmodl.query.PropertyCollector.FilterSpec"
      vmodl-name="spec"
      version-id-ref="vmodl.query.version.version1"
      privilege="spec"
      >
      <description-html>
         <![CDATA[The specifications for the filter.]]>
      </description-html>
      </parameter>
      <parameter name="partialUpdates" type-id-ref="BOOLEAN"
      vmodl-name="partialUpdates"
      version-id-ref="vmodl.query.version.version1"
      privilege="partialUpdates"
      >
      <description-html>
         <![CDATA[Flag to specify whether a change to a nested property should report
     only the nested change or the entire specified property value.  If the
     value is true, a change should report only the nested property.  If
     the value is false, a change should report the enclosing property
     named in the filter.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vmodl.query.InvalidProperty">
      <fault-description-html>
         <![CDATA[if "spec" has a property that is not defined on one of the objects.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[A reference to the new filter.]]>
      </return-value-description-html>
   </method>
   <method name="RetrieveProperties"
      vmodl-name="retrieveContents"
      is-deprecated="true"
      is-array="true"
      is-optional="true"
      privilege="System.Anonymous"
      type-id-ref="vmodl.query.PropertyCollector.ObjectContent"
      >
      <description-html>
         <![CDATA[Retrieves the specified properties of the specified managed objects.

  <p> This method is similar to creating the filters, receiving the
  property values, and destroying the filters. The main difference is that
  the output blends the results from all the filters and reports a given
  managed object at most once no matter how many filters apply.

  <p> The filter creation step can throw all of the same faults as <a href="vmodl.query.PropertyCollector.html#createFilter">CreateFilter</a>.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 4.1, use <a href="vmodl.query.PropertyCollector.html#retrievePropertiesEx">RetrievePropertiesEx</a>.]]>
      </deprecated-html>
      <parameter name="specSet" type-id-ref="vmodl.query.PropertyCollector.FilterSpec"
      vmodl-name="specSet"
      version-id-ref="vmodl.query.version.version1"
      is-array="true"
      privilege="specSet"
      >
      <description-html>
         <![CDATA[Specifies the properties to retrieve.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vmodl.query.InvalidProperty">
      <fault-description-html>
         <![CDATA[See <a href="vmodl.query.PropertyCollector.html#createFilter">CreateFilter</a>]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[The data contents of the specified objects.]]>
      </return-value-description-html>
   </method>
   <method name="CheckForUpdates"
      vmodl-name="checkForUpdates"
      is-deprecated="true"
      is-optional="true"
      privilege="System.View"
      type-id-ref="vmodl.query.PropertyCollector.UpdateSet"
      >
      <description-html>
         <![CDATA[Checks for updates on properties specified by the union of all current
  filters. If no updates are pending, this method returns null.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 4.1, use
  <a href="vmodl.query.PropertyCollector.html#waitForUpdatesEx">WaitForUpdatesEx</a> with a
  <a href="vmodl.query.PropertyCollector.WaitOptions.html#maxWaitSeconds">maxWaitSeconds</a> of 0.]]>
      </deprecated-html>
      <parameter name="version" type-id-ref="java.lang.String"
      vmodl-name="version"
      version-id-ref="vmodl.query.version.version1"
      is-optional="true"
      privilege="version"
      >
      <description-html>
         <![CDATA[The data version currently known to the client. The value
     must be either <ul>

     <li> the special initial version (an empty string)

     <li> a data version returned from <a href="vmodl.query.PropertyCollector.html#checkForUpdates">CheckForUpdates</a> or <a href="vmodl.query.PropertyCollector.html#waitForUpdates">WaitForUpdates</a> by the same <a href="vmodl.query.PropertyCollector.html">PropertyCollector</a> on the same session.

     <li> a non-truncated data version returned from <a href="vmodl.query.PropertyCollector.html#waitForUpdatesEx">WaitForUpdatesEx</a> by the same <a href="vmodl.query.PropertyCollector.html">PropertyCollector</a> on the same
          session.

     </ul>]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vmodl.query.InvalidCollectorVersion">
      <fault-description-html>
         <![CDATA[if the data version does not meet the
     requirements above.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[Changes since the passed in data version.  If no updates are
     pending, then this method returns null.]]>
      </return-value-description-html>
   </method>
   <method name="WaitForUpdates"
      vmodl-name="waitForUpdates"
      is-deprecated="true"
      privilege="System.View"
      type-id-ref="vmodl.query.PropertyCollector.UpdateSet"
      >
      <description-html>
         <![CDATA[Calculate the set of updates for each existing filter in the session,
  returning when at least one filter has updates.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 4.1, use <a href="vmodl.query.PropertyCollector.html#waitForUpdatesEx">WaitForUpdatesEx</a>.]]>
      </deprecated-html>
      <parameter name="version" type-id-ref="java.lang.String"
      vmodl-name="version"
      version-id-ref="vmodl.query.version.version1"
      is-optional="true"
      privilege="version"
      >
      <description-html>
         <![CDATA[The data version currently known to the client. The value
     must be either <ul>

     <li> the special initial version (an empty string)

     <li> a data version returned from <a href="vmodl.query.PropertyCollector.html#checkForUpdates">CheckForUpdates</a> or <a href="vmodl.query.PropertyCollector.html#waitForUpdates">WaitForUpdates</a> by the same <a href="vmodl.query.PropertyCollector.html">PropertyCollector</a> on the same session

     <li> a non-truncated data version returned from <a href="vmodl.query.PropertyCollector.html#waitForUpdatesEx">WaitForUpdatesEx</a> by the same <a href="vmodl.query.PropertyCollector.html">PropertyCollector</a> on the same
          session.

     </ul>]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vmodl.query.InvalidCollectorVersion">
      <fault-description-html>
         <![CDATA[if the data version does not meet the
     requirements above.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[Changes since the passed in data version.]]>
      </return-value-description-html>
   </method>
   <method name="CancelWaitForUpdates"
      vmodl-name="cancelWaitForUpdates"
      privilege="System.View"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Attempts to cancel outstanding calls to <a href="vmodl.query.PropertyCollector.html#waitForUpdates">WaitForUpdates</a> or <a href="vmodl.query.PropertyCollector.html#waitForUpdatesEx">WaitForUpdatesEx</a> in the current session.  If an update calculation is
  in process this method has no effect. If an update calculation is not in
  process any waiting calls complete quickly and report a <a href="vmodl.fault.RequestCanceled.html">RequestCanceled</a> fault.]]>
      </description-html>
   </method>
   <method name="WaitForUpdatesEx"
      vmodl-name="waitForUpdatesEx"
      version-id-ref="vmodl.query.version.version3"
      is-optional="true"
      privilege="System.View"
      type-id-ref="vmodl.query.PropertyCollector.UpdateSet"
      >
      <description-html>
         <![CDATA[Calculate the set of updates for each existing filter in the session.

  <p> <a href="vmodl.query.PropertyCollector.html#waitForUpdatesEx">WaitForUpdatesEx</a> may return only partial update
  calculations. See <a href="vmodl.query.PropertyCollector.UpdateSet.html#truncated">truncated</a> for a
  more detailed explanation. <a href="vmodl.query.PropertyCollector.html#waitForUpdatesEx">WaitForUpdatesEx</a> may also return null
  after a timeout, either as requested by <a href="vmodl.query.PropertyCollector.WaitOptions.html#maxWaitSeconds">maxWaitSeconds</a> or due to <a href="vmodl.query.PropertyCollector.html">PropertyCollector</a>
  policy.

  <p> If an application uses waitForUpdatesEx it is strongly recommended
  that it not make concurrent calls to <a href="vmodl.query.PropertyCollector.html#waitForUpdates">WaitForUpdates</a>, <a href="vmodl.query.PropertyCollector.html#checkForUpdates">CheckForUpdates</a>, or <a href="vmodl.query.PropertyCollector.html#waitForUpdatesEx">WaitForUpdatesEx</a> in the same
  session. Concurrent calls may cause suspended change calculations to be
  discarded.]]>
      </description-html>
      <parameter name="version" type-id-ref="java.lang.String"
      vmodl-name="version"
      version-id-ref="vmodl.query.version.version3"
      is-optional="true"
      privilege="version"
      >
      <description-html>
         <![CDATA[The data version currently known to the client. The value must be
     either <ul>

     <li> the special initial data version (an empty string),

     <li> a data version returned from <a href="vmodl.query.PropertyCollector.html#checkForUpdates">CheckForUpdates</a> or <a href="vmodl.query.PropertyCollector.html#waitForUpdates">WaitForUpdates</a>

     <li> a non-truncated data version returned from <a href="vmodl.query.PropertyCollector.html#waitForUpdatesEx">WaitForUpdatesEx</a>

     <li> a truncated data version returned from the last call to <a href="vmodl.query.PropertyCollector.html#waitForUpdatesEx">WaitForUpdatesEx</a> with no intervening calls to <a href="vmodl.query.PropertyCollector.html#waitForUpdates">WaitForUpdates</a> or <a href="vmodl.query.PropertyCollector.html#checkForUpdates">CheckForUpdates</a>.

     </ul>]]>
      </description-html>
      </parameter>
      <parameter name="options" type-id-ref="vmodl.query.PropertyCollector.WaitOptions"
      vmodl-name="options"
      version-id-ref="vmodl.query.version.version3"
      is-optional="true"
      privilege="options"
      >
      <description-html>
         <![CDATA[Additional options controlling the change calculation.  If omitted,
     equivalent to an options argument with no fields set.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vmodl.query.InvalidCollectorVersion">
      <fault-description-html>
         <![CDATA[if the data version does not meet the
     requirements above.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[Changes since the passed in version or null if there are no
     changes.]]>
      </return-value-description-html>
   </method>
   <method name="RetrievePropertiesEx"
      vmodl-name="retrievePropertiesEx"
      version-id-ref="vmodl.query.version.version3"
      is-optional="true"
      privilege="System.Anonymous"
      type-id-ref="vmodl.query.PropertyCollector.RetrieveResult"
      >
      <description-html>
         <![CDATA[Retrieves the specified properties of the specified managed objects.

  <p> This method is similar to creating the filters, receiving the
  property values, and destroying the filters. The main difference is that
  the output blends the results from all the filters and reports a given
  managed object at most once no matter how many filters apply.

  <p> The filter creation step can throw all of the same faults as <a href="vmodl.query.PropertyCollector.html#createFilter">CreateFilter</a>.]]>
      </description-html>
      <parameter name="specSet" type-id-ref="vmodl.query.PropertyCollector.FilterSpec"
      vmodl-name="specSet"
      version-id-ref="vmodl.query.version.version3"
      is-array="true"
      privilege="specSet"
      >
      <description-html>
         <![CDATA[Specifies the properties to retrieve.]]>
      </description-html>
      </parameter>
      <parameter name="options" type-id-ref="vmodl.query.PropertyCollector.RetrieveOptions"
      vmodl-name="options"
      version-id-ref="vmodl.query.version.version3"
      privilege="options"
      >
      <description-html>
         <![CDATA[Additional method options.  If omitted, equivalent to an options
     argument with no fields set.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vmodl.query.InvalidProperty">
      <fault-description-html>
         <![CDATA[See <a href="vmodl.query.PropertyCollector.html#createFilter">CreateFilter</a>]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[retrieved objects or null if there are no matching objects.]]>
      </return-value-description-html>
   </method>
   <method name="ContinueRetrievePropertiesEx"
      vmodl-name="continueRetrievePropertiesEx"
      version-id-ref="vmodl.query.version.version3"
      privilege="System.Anonymous"
      type-id-ref="vmodl.query.PropertyCollector.RetrieveResult"
      >
      <description-html>
         <![CDATA[Retrieves additional results from a retrieval started by <a href="vmodl.query.PropertyCollector.html#retrievePropertiesEx">RetrievePropertiesEx</a> on the same session on the same <a href="vmodl.query.PropertyCollector.html">PropertyCollector</a>.]]>
      </description-html>
      <parameter name="token" type-id-ref="java.lang.String"
      vmodl-name="token"
      version-id-ref="vmodl.query.version.version3"
      privilege="token"
      >
      <description-html>
         <![CDATA[the token returned in the previous <a href="vmodl.query.PropertyCollector.RetrieveResult.html">RetrieveResult</a> returned on the same session by the
     same <a href="vmodl.query.PropertyCollector.html">PropertyCollector</a>.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vmodl.query.InvalidProperty">
      </fault>
      <return-value-description-html>
         <![CDATA[retrieved objects.]]>
      </return-value-description-html>
   </method>
   <method name="CancelRetrievePropertiesEx"
      vmodl-name="cancelRetrievePropertiesEx"
      version-id-ref="vmodl.query.version.version3"
      privilege="System.Anonymous"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Discards remaining results from a retrieval started by <a href="vmodl.query.PropertyCollector.html#retrievePropertiesEx">RetrievePropertiesEx</a> on the same session on the same <a href="vmodl.query.PropertyCollector.html">PropertyCollector</a>.]]>
      </description-html>
      <parameter name="token" type-id-ref="java.lang.String"
      vmodl-name="token"
      version-id-ref="vmodl.query.version.version3"
      privilege="token"
      >
      <description-html>
         <![CDATA[the token returned in the previous <a href="vmodl.query.PropertyCollector.RetrieveResult.html">RetrieveResult</a> returned on the same session by the
     same <a href="vmodl.query.PropertyCollector.html">PropertyCollector</a>.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vmodl.query.InvalidProperty">
      </fault>
   </method>
   <method name="CreatePropertyCollector"
      vmodl-name="createPropertyCollector"
      version-id-ref="vmodl.query.version.version3"
      privilege="System.View"
      type-id-ref="vmodl.query.PropertyCollector"
      >
      <description-html>
         <![CDATA[Creates a new session-specific <a href="vmodl.query.PropertyCollector.html">PropertyCollector</a> that can
  be used to retrieve property updates independent of any other
  <a href="vmodl.query.PropertyCollector.html">PropertyCollector</a>.  The newly created <a href="vmodl.query.PropertyCollector.html">PropertyCollector</a>
  is not tied to the creating <a href="vmodl.query.PropertyCollector.html">PropertyCollector</a> in any way and
  exists until it is destroyed
  by a call to <a href="vmodl.query.PropertyCollector.html#destroy">DestroyPropertyCollector</a> or until the session
  on which the PropertyCollector was created is closed.  This is in contrast
  to the default <a href="vmodl.query.PropertyCollector.html">PropertyCollector</a>, which always exists, but still has
  session-specific data such as filters and unfinished update calculations
  that are discarded when the associated session is closed.

  <p> A new <a href="vmodl.query.PropertyCollector.html">PropertyCollector</a> can be useful when multiple modules or even
  multiple clients that share the
  same session need to create their own <a href="vmodl.query.PropertyCollector.Filter.html">PropertyFilter</a>
  objects and process updates independently.  They may also be useful
  to allow important updates to be seen on one <a href="vmodl.query.PropertyCollector.html">PropertyCollector</a> while
  a large update is being calculated on another.  The underlying
  issue that this addresses is that any call to <a href="vmodl.query.PropertyCollector.html#waitForUpdates">WaitForUpdates</a>,
  <a href="vmodl.query.PropertyCollector.html#checkForUpdates">CheckForUpdates</a>, or <a href="vmodl.query.PropertyCollector.html#waitForUpdatesEx">WaitForUpdatesEx</a> does updates on all the
  filters created on a given <a href="vmodl.query.PropertyCollector.html">PropertyCollector</a> on a given session.

  <p> A more subtle use of multiple <a href="vmodl.query.PropertyCollector.html">PropertyCollector</a> objects is implied
  by the fact that the returned version value for the various updates
  calculations is strongly ordered.  The only way this can make sense is that
  two different versions calculated on the same <a href="vmodl.query.PropertyCollector.html">PropertyCollector</a> on
  the same session cannot ever be created in parallel.  This means that multiple
  calls to <a href="vmodl.query.PropertyCollector.html#waitForUpdates">WaitForUpdates</a>, <a href="vmodl.query.PropertyCollector.html#checkForUpdates">CheckForUpdates</a>, or
  <a href="vmodl.query.PropertyCollector.html#waitForUpdatesEx">WaitForUpdatesEx</a> made to the same <a href="vmodl.query.PropertyCollector.html">PropertyCollector</a> on the
  same session on different threads of the same client, or even on different
  clients that share the same session are still handled on the server serially.
  Use of different <a href="vmodl.query.PropertyCollector.html">PropertyCollector</a> instances allows the server to
  handle these calculations in parallel.

  <p> Typically a service that supports the <a href="vmodl.query.PropertyCollector.html">PropertyCollector</a> managed
  object type will automatically create a default <a href="vmodl.query.PropertyCollector.html">PropertyCollector</a>
  and provide some way to obtain a reference to this
  <a href="vmodl.query.PropertyCollector.html">PropertyCollector</a>.  If not, it will have to provide some
  service-specific way to create the a <a href="vmodl.query.PropertyCollector.html">PropertyCollector</a>.]]>
      </description-html>
      <return-value-description-html>
         <![CDATA[A reference to the new <a href="vmodl.query.PropertyCollector.html">PropertyCollector</a>.]]>
      </return-value-description-html>
   </method>
   <method name="DestroyPropertyCollector"
      vmodl-name="destroy"
      version-id-ref="vmodl.query.version.version3"
      privilege="System.View"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Destroys this <a href="vmodl.query.PropertyCollector.html">PropertyCollector</a>.

  <p> A <a href="vmodl.query.PropertyCollector.html">PropertyCollector</a> that was created by
  <a href="vmodl.query.PropertyCollector.html#createPropertyCollector">CreatePropertyCollector</a> is automatically destroyed when the
  session on which it was created is closed. This method can be used to
  destroy them explicitly.

  <p> An automatically created <a href="vmodl.query.PropertyCollector.html">PropertyCollector</a> provided by a service
  is not session specific and may not be destroyed.]]>
      </description-html>
   </method>
   </managed-object>
   <managed-object name="Alarm"
      type-id="vim.alarm.Alarm"
      vmodl-name="vim.alarm.Alarm"
      version-id-ref="vim.version.version1"
      base-type-id="vim.ExtensibleManagedObject"
      >
      <description-html>
         <![CDATA[This managed object type defines an alarm that is triggered and
  an action that occurs due to the triggered alarm when certain conditions
  are met on a specific <a href="vim.ManagedEntity.html">ManagedEntity</a> object.]]>
      </description-html>
            <property name="info" type-id-ref="vim.alarm.AlarmInfo"
      vmodl-name="info"
      privilege="System.View"
      >
      <description-html>
         <![CDATA[Information about this alarm.]]>
      </description-html>
      </property>

   <method name="RemoveAlarm"
      vmodl-name="remove"
      privilege="Alarm.Delete"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Removes the alarm.]]>
      </description-html>
   </method>
   <method name="ReconfigureAlarm"
      vmodl-name="reconfigure"
      privilege="Alarm.Edit"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Reconfigures the alarm properties. This operation requires access
  privileges on the entity with which the alarm is associated.
  <p>
  In addition to the Alarm.Edit privilege, may also require the
  Global.ScriptAction if a RunScriptAction action is specified in
  the AlarmSpec.]]>
      </description-html>
      <parameter name="spec" type-id-ref="vim.alarm.AlarmSpec"
      vmodl-name="spec"
      version-id-ref="vim.version.version1"
      privilege="spec"
      >
      <description-html>
         <![CDATA[The new specification for the alarm.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.InvalidName">
      <fault-description-html>
         <![CDATA[if the alarm name is empty or too long.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.DuplicateName">
      <fault-description-html>
         <![CDATA[if an alarm with the name already exists.]]>
      </fault-description-html>
      </fault>
   </method>
   </managed-object>
   <managed-object name="HostSpecificationManager"
      type-id="vim.profile.host.HostSpecificationManager"
      vmodl-name="vim.profile.host.HostSpecificationManager"
      version-id-ref="vim.version.version11"
      >
      <description-html>
         <![CDATA[The <a href="vim.profile.host.HostSpecificationManager.html">HostSpecificationManager</a> provides the
 functionality to update, restrieve and delete
 <a href="vim.profile.host.HostSpecification.html">HostSpecification</a> and
 <a href="vim.profile.host.HostSubSpecification.html">HostSubSpecification</a>.]]>
      </description-html>
   <method name="UpdateHostSpecification"
      vmodl-name="updateHostSpecification"
      privilege="Profile.Edit"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Update the host specification with the provided copy.

 If there is no host specification for the host, create the host
 specification for this host in the host specification "database";
 otherwise, update the host specification with the provided.
 <a href="vim.profile.host.HostSpecification.html">HostSpecification</a> object.

 On success, it will fire a <code>HostSpecificationChangedEvent</code>.]]>
      </description-html>
      <parameter name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      version-id-ref="vim.version.version11"
      privilege="host"
      >
      <description-html>
         <![CDATA[The host whose specification will be updated.]]>
      </description-html>
      </parameter>
      <parameter name="hostSpec" type-id-ref="vim.profile.host.HostSpecification"
      vmodl-name="hostSpec"
      version-id-ref="vim.version.version11"
      privilege="hostSpec"
      >
      <description-html>
         <![CDATA[The new host specification to be updated with.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.HostSpecificationOperationFailed">
      <fault-description-html>
         <![CDATA[If the method fails.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="UpdateHostSubSpecification"
      vmodl-name="updateHostSubSpecification"
      privilege="Profile.Edit"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Update the host specification with the provided host sub specification.

 If there is no host specification for the host, create the host
 specification, which contains only the provided host sub specification,
 for this host; otherwise, add or update the host specification with the
 provided <a href="vim.profile.host.HostSubSpecification.html">HostSubSpecification</a> object.

 This method provides a way to incrementally build the host specification.

 On success, it will fire a <code>HostSpecificationChangedEvent</code>.]]>
      </description-html>
      <parameter name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      version-id-ref="vim.version.version11"
      privilege="host"
      >
      <description-html>
         <![CDATA[The host whose specification will be updated.]]>
      </description-html>
      </parameter>
      <parameter name="hostSubSpec" type-id-ref="vim.profile.host.HostSubSpecification"
      vmodl-name="hostSubSpec"
      version-id-ref="vim.version.version11"
      privilege="hostSubSpec"
      >
      <description-html>
         <![CDATA[The data object for the new host sub specification.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.HostSpecificationOperationFailed">
      <fault-description-html>
         <![CDATA[If the method fails.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="RetrieveHostSpecification"
      vmodl-name="retrieveHostSpecification"
      privilege="System.View"
      type-id-ref="vim.profile.host.HostSpecification"
      >
      <description-html>
         <![CDATA[Retrieve the host specification. When the parameter <code>fromHost</code>
 is <code>true</code>, the host specification is retrieved from the host;
 otherwise, it is from the host specification "database" for this manager.

 When retrieved from host, the copy in host specification "database" will
 be updated. On success, it will fire a
 <code>HostSpecificationChangedEvent</code>.]]>
      </description-html>
      <parameter name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      version-id-ref="vim.version.version11"
      privilege="host"
      >
      <description-html>
         <![CDATA[The specified host whose host specification will be retrieved.]]>
      </description-html>
      </parameter>
      <parameter name="fromHost" type-id-ref="BOOLEAN"
      vmodl-name="fromHost"
      version-id-ref="vim.version.version11"
      privilege="fromHost"
      >
      <description-html>
         <![CDATA[Whether retrieve from the host.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.HostSpecificationOperationFailed">
      <fault-description-html>
         <![CDATA[If the method fails when retrieve
         from host.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[The host specification of the specified host.]]>
      </return-value-description-html>
   </method>
   <method name="DeleteHostSubSpecification"
      vmodl-name="deleteHostSubSpecification"
      privilege="System.View"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Delete the host sub specification specified by the provided <code>
 subSpecname</code> of the specified host.]]>
      </description-html>
      <parameter name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      version-id-ref="vim.version.version11"
      privilege="host"
      >
      <description-html>
         <![CDATA[The specified host for which the sub specification will be
             deleted.]]>
      </description-html>
      </parameter>
      <parameter name="subSpecName" type-id-ref="java.lang.String"
      vmodl-name="subSpecName"
      version-id-ref="vim.version.version11"
      privilege="subSpecName"
      >
      <description-html>
         <![CDATA[The name of the host sub specification to be deleted.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.HostSpecificationOperationFailed">
      <fault-description-html>
         <![CDATA[If the method fails when delete
         the sub spec.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="DeleteHostSpecification"
      vmodl-name="deleteHostSpecification"
      privilege="System.View"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Delete the host specification of the specified host.]]>
      </description-html>
      <parameter name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      version-id-ref="vim.version.version11"
      privilege="host"
      >
      <description-html>
         <![CDATA[The specified host for which the specification will be
             deleted.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.HostSpecificationOperationFailed">
      <fault-description-html>
         <![CDATA[If the method fails when delete
         the spec.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="HostSpecGetUpdatedHosts"
      vmodl-name="getUpdatedHosts"
      is-array="true"
      is-optional="true"
      privilege="System.View"
      type-id-ref="vim.HostSystem"
      >
      <description-html>
         <![CDATA[Query the hosts whose specification was updated in the specified
 time period.  When the <code>startChangeID</code> isn't provided, it will
 return all the host updated before the <code>endChangeID</code>. When the
 <code>endChangeID</code> isn't provided, it will return all the hosts
 updated after <code>startChangeID</code>. If both aren't provided, all
 hosts having host spec will be returned.

 The format of the change ID is defined at
 <a href="vim.profile.host.HostSpecification.html#changeID">changeID</a>.]]>
      </description-html>
      <parameter name="startChangeID" type-id-ref="java.lang.String"
      vmodl-name="startChangeID"
      version-id-ref="vim.version.version11"
      is-optional="true"
      privilege="startChangeID"
      >
      <description-html>
         <![CDATA[The beginning of the time period.]]>
      </description-html>
      </parameter>
      <parameter name="endChangeID" type-id-ref="java.lang.String"
      vmodl-name="endChangeID"
      version-id-ref="vim.version.version11"
      is-optional="true"
      privilege="endChangeID"
      >
      <description-html>
         <![CDATA[The ending of the time period.]]>
      </description-html>
      </parameter>
      <return-value-description-html>
         <![CDATA[The queried host list.]]>
      </return-value-description-html>
   </method>
   </managed-object>
   <managed-object name="DistributedVirtualSwitch"
      type-id="vim.DistributedVirtualSwitch"
      vmodl-name="vim.DistributedVirtualSwitch"
      version-id-ref="vim.version.version5"
      base-type-id="vim.ManagedEntity"
      >
      <description-html>
         <![CDATA[A <a href="vim.DistributedVirtualSwitch.html">DistributedVirtualSwitch</a> managed object is a virtual network
  switch that is located on a vCenter Server. A distributed virtual switch
  manages configuration for proxy switches (<a href="vim.host.HostProxySwitch.html">HostProxySwitch</a>).
  A proxy switch is located on an ESXi host that is managed by the vCenter
  Server and is a member of the switch.
  A distributed switch also provides virtual port state management
  so that port state is maintained when vCenter Server operations
  move a virtual machine from one host to another.
  <p>
  A proxy switch performs network I/O to support the following network traffic
  and operations:
  <ul>
  <li>Network traffic between virtual machines on any hosts that are members
  of the distributed virtual switch.</li>
  <li>Network traffic between virtual machines that uses a distributed switch
  and a virtual machine that uses a VMware standard switch.</li>
  <li>Network traffic between a virtual machine and a remote system
  on a physical network connected to the ESXi host.</li>
  <li>vSphere system operations to support capabilities
  such as VMotion or High Availability.</li>
  </ul>
  <p>
  A <a href="vim.DistributedVirtualSwitch.html">DistributedVirtualSwitch</a> is the base distributed
  switch implementation. It supports a VMware distributed virtual
  switch implementation and it supports third party distributed
  switch implementations. The base implementation provides
  the following capabilities
  (<a href="vim.DistributedVirtualSwitch.FeatureCapability.html">DVSFeatureCapability</a>):
  </p>
  <ul>
  <li>NIC teaming</li>
  <li>Network I/O control</li>
  <li>Network resource allocation</li>
  <li>Quality of service tag support</li>
  <li>User-defined resource pools</li>
  <li>I/O passthrough (VMDirectPath Gen2)</li>
  </ul>
  <p>
  A <a href="vim.dvs.VmwareDistributedVirtualSwitch.html">VmwareDistributedVirtualSwitch</a>
  supports the following additional capabilities
  (<a href="vim.DistributedVirtualSwitch.FeatureCapability.html">DVSFeatureCapability</a> and
  <a href="vim.dvs.VmwareDistributedVirtualSwitch.FeatureCapability.html">VMwareDVSFeatureCapability</a>):
  </p>
  <ul>
  <li>Backup, restore, and rollback for a VMware distributed virtual switch
  and its associated portgroups.</li>
  <li>Maximum Transmission Unit (MTU) configuration.</li>
  <li>Health check operations for NIC teaming and VLAN/MTU support.</li>
  <li>Monitoring switch traffic using Internet Protocol Flow Information Export (IPFIX).</li>
  <li>Link Layer Discovery Protocol (LLDP).</li>
  <li>Virtual network segmentation using a Private VLAN (PVLAN).</li>
  <li>VLAN-based SPAN (VSPAN) for virtual distributed port mirroring.</li>
  <li>Link Aggregation Control Protocol (LACP) defined for uplink portgroups.</li>
  </ul>
  <h3>Distributed Virtual Switch Configuration</h3>
  <p>
  To use a distributed virtual switch, you create a switch and portgroups
  on a vCenter Server, and add hosts as members of the switch.
  </p>
  <ol>
  <li>Create a distributed virtual switch
  (<a href="vim.Folder.html">Folder</a>.<a href="vim.Folder.html#createDistributedVirtualSwitch">CreateDVS_Task</a>).
  Use a <a href="vim.DistributedVirtualSwitch.ConfigSpec.html">DVSConfigSpec</a> to create a switch
  for a third-party implementation. Use a
  <a href="vim.dvs.VmwareDistributedVirtualSwitch.ConfigSpec.html">VMwareDVSConfigSpec</a> to create
  a VMware distributed virtual switch.
  </li><br />
  <li>Create portgroups (<a href="vim.DistributedVirtualSwitch.html#addPortgroup">CreateDVPortgroup_Task</a>)
  for host and virtual machine network connections and for the connection between
  proxy switches and physical NICs.
  A <a href="vim.dvs.DistributedVirtualPortgroup.html">DistributedVirtualPortgroup</a> specifies how
  virtual ports (<a href="vim.dvs.DistributedVirtualPort.html">DistributedVirtualPort</a>) will be used.
  When you create a distributed virtual switch, the vCenter Server
  automatically creates one uplink portgroup
  (<a href="vim.DistributedVirtualSwitch.html#config">Config</a>.<a href="vim.DistributedVirtualSwitch.ConfigInfo.html#uplinkPortgroup">uplinkPortgroup</a>).
  Uplink portgroups are distributed virtual portgroups that support
  the connection between proxy switches and physical NICs.
  <p>
  Port creation on a distributed switch is determined by the
  portgroup type
  (<a href="vim.dvs.DistributedVirtualPortgroup.ConfigSpec.html">DVPortgroupConfigSpec</a>.<a href="vim.dvs.DistributedVirtualPortgroup.ConfigSpec.html#type">type</a>):
  </p>
  <ul>
  <li>If a portgroup is early binding (static), then
  <a href="vim.dvs.DistributedVirtualPortgroup.ConfigSpec.html">DVPortgroupConfigSpec</a>.<a href="vim.dvs.DistributedVirtualPortgroup.ConfigSpec.html#numPorts">numPorts</a>
  determines the number of ports that get created when the portgroup is created.
  This number can be increased if
  <a href="vim.dvs.DistributedVirtualPortgroup.ConfigSpec.html">DVPortgroupConfigSpec</a>.<a href="vim.dvs.DistributedVirtualPortgroup.ConfigSpec.html#autoExpand">autoExpand</a>
  is <code>true</code>.
  </li><br />
  <li>If a portgroup is ephemeral (dynamic), then
  <a href="vim.dvs.DistributedVirtualPortgroup.ConfigSpec.html#numPorts">numPorts</a>
  is ignored and ports are created as needed.
  </li>
  </ul>
  <p>
  You can also specify standalone ports that are not associated with
  a port group and uplink ports that are created on ESXi hosts
 (<a href="vim.DistributedVirtualSwitch.ConfigSpec.html">DVSConfigSpec</a>.<a href="vim.DistributedVirtualSwitch.ConfigSpec.html#numStandalonePorts">numStandalonePorts</a>).
  </p>
  <p>
  The <a href="vim.dvs.DistributedVirtualPortgroup.ConfigInfo.html">DVPortgroupConfigInfo</a>.<a href="vim.dvs.DistributedVirtualPortgroup.ConfigInfo.html#numPorts">numPorts</a>
  property is the total number of ports for a distributed virtual switch.
  This total includes the ports generated by the static and dynamic portgroups
  and the standalone ports.
  </p>
  </li><br />
  <li>If you have created additional uplink portgroups, use the
  <a href="vim.DistributedVirtualSwitch.html#reconfigure">ReconfigureDvs_Task</a> method
  to add the portgroup(s) to the
  <a href="vim.DistributedVirtualSwitch.ConfigSpec.html">DVSConfigSpec</a>.<a href="vim.DistributedVirtualSwitch.ConfigSpec.html#uplinkPortgroup">uplinkPortgroup</a>
  array.
  </li><br />
  <li>Retrieve physical NIC device names from the host
  (<a href="vim.HostSystem.html">HostSystem</a>.<a href="vim.HostSystem.html#config">Config</a>.<a href="vim.host.ConfigInfo.html#network">network</a>.<a href="vim.host.NetworkInfo.html#pnic">pnic</a>[].<a href="vim.host.PhysicalNic.html#device">device</a>).</li><br />
  <li>Add host member(s) to the distributed virtual switch. To configure host members:
  <br /><br />
  <ul>
  <li>Specify hosts
  (<a href="vim.DistributedVirtualSwitch.ConfigSpec.html">DVSConfigSpec</a>.<a href="vim.DistributedVirtualSwitch.ConfigSpec.html#host">host</a>[]).</li><br />
  <li>For each host, specify one or more physical NIC device names
  to identify the pNIC(s) for the host proxy connection to the network
  (<a href="vim.dvs.HostMember.ConfigSpec.html">DistributedVirtualSwitchHostMemberConfigSpec</a>.<a href="vim.dvs.HostMember.ConfigSpec.html#backing">backing</a>.<a href="vim.dvs.HostMember.PnicBacking.html#pnicSpec">pnicSpec</a>[].<a href="vim.dvs.HostMember.PnicSpec.html#pnicDevice">pnicDevice</a>)
  </li><br />
  <li>Use the
  <a href="vim.DistributedVirtualSwitch.html">DistributedVirtualSwitch</a>.<a href="vim.DistributedVirtualSwitch.html#reconfigure">ReconfigureDvs_Task</a>
  method to update the switch configuration.
  </li>
  </ul>
  <p>
  When you add a host to a distributed virtual switch
  (<a href="vim.DistributedVirtualSwitch.html">DistributedVirtualSwitch</a>.<a href="vim.DistributedVirtualSwitch.html#config">Config</a>.<a href="vim.DistributedVirtualSwitch.ConfigInfo.html#host">host</a>),
  the host automatically creates a proxy switch. The proxy switch is removed automatically
  when the host is removed from the distributed virtual switch.
  </li><br />
  <li>Connect hosts and virtual machines to the distributed virtual switch.
  <p>
  <table style="border:0">
  <tr>
  <td style="border:0">Host connection</td>
  <td style="border:0">Specify port or portgroup connections in the host virtual NIC spec
  (<a href="vim.host.VirtualNic.Specification.html">HostVirtualNicSpec</a>.<a href="vim.host.VirtualNic.Specification.html#distributedVirtualPort">distributedVirtualPort</a>
  or <a href="vim.host.VirtualNic.Specification.html">HostVirtualNicSpec</a>.<a href="vim.host.VirtualNic.Specification.html#portgroup">portgroup</a>).</td>
  </tr>
  <tr>
  <td style="border:0">Virtual machine connection</td>
  <td style="border:0">Specify port or portgroup connections in the distributed virtual port backing
  (<a href="vim.vm.device.VirtualEthernetCard.DistributedVirtualPortBackingInfo.html">VirtualEthernetCardDistributedVirtualPortBackingInfo</a>)
  for the virtual Ethernet cards on the virtual machine
  (<a href="vim.vm.device.VirtualEthernetCard.html">VirtualEthernetCard</a>.<a href="vim.vm.device.VirtualDevice.html#backing">backing</a>).</td>
  </tr>
  </table>
  </li>
  </ol>
  <h3>Backup, Rollback, and Query Operations</h3>
  <p>
  If you are using a <a href="vim.dvs.VmwareDistributedVirtualSwitch.html">VmwareDistributedVirtualSwitch</a>,
  you can perform backup and rollback operations on the switch
  and its associated distributed virtual portgroups.
  </p>
  When you reconfigure a VMware distributed virtual switch
  (<a href="vim.DistributedVirtualSwitch.html#reconfigure">ReconfigureDvs_Task</a>), the Server
  saves the current switch configuration before applying the
  configuration updates. The saved switch configuration includes
  portgroup configuration data. The Server uses the saved switch
  configuration as a checkpoint for rollback operations.
  You can rollback the switch or portgroup configuration
  to the saved configuration, or you can rollback to a backup
  configuration (<a href="vim.dvs.EntityBackup.Config.html">EntityBackupConfig</a>).
  </p>
  <ul>
  <li>To backup the switch and portgroup configuration, use the
  <a href="vim.dvs.DistributedVirtualSwitchManager.html">DistributedVirtualSwitchManager</a>.<a href="vim.dvs.DistributedVirtualSwitchManager.html#exportEntity">DVSManagerExportEntity_Task</a>
  method. The export method produces a
  <a href="vim.dvs.EntityBackup.Config.html">EntityBackupConfig</a> object. The backup configuration
  contains the switch and/or portgroups specified in the
  <code>SelectionSet</code> parameter.
  To backup the complete configuration you must select the
  distributed virtual switch and all of its portgroups.
 </li><br />
  <li>To rollback the switch configuration, use the
  <a href="vim.DistributedVirtualSwitch.html#rollback">DVSRollback_Task</a> method
  to determine if the switch configuration has changed.
  If it has changed, use the
  <a href="vim.DistributedVirtualSwitch.html#reconfigure">ReconfigureDvs_Task</a>
   method to complete the rollback operation.</li><br />
  <li>To rollback the portgroup configuration, use the
  <a href="vim.dvs.DistributedVirtualPortgroup.html">DistributedVirtualPortgroup</a>.<a href="vim.dvs.DistributedVirtualPortgroup.html#rollback">DVPortgroupRollback_Task</a>
  method to determine if the portgroup configuration
  has changed. If it has changed, use the
  <a href="vim.dvs.DistributedVirtualPortgroup.html#reconfigure">ReconfigureDVPortgroup_Task</a>
  method to complete the rollback operation.</li><br />
  </ul>
  <p>
  To perform query operations on a distributed virtual switch,
  use the <a href="vim.dvs.DistributedVirtualSwitchManager.html">DistributedVirtualSwitchManager</a> methods.
  </p>]]>
      </description-html>
            <property name="uuid" type-id-ref="java.lang.String"
      vmodl-name="uuid"
      >
      <description-html>
         <![CDATA[Generated UUID of the switch. Unique across vCenter Server
  inventory and instances.]]>
      </description-html>
      </property>

            <property name="capability" type-id-ref="vim.DistributedVirtualSwitch.Capability"
      vmodl-name="capability"
      >
      <description-html>
         <![CDATA[Capability of the switch. Capabilities are indicated at the port,
 portgroup and switch levels, and for version-specific features.
 When you retrieve this property from an ESXi host,
 <a href="vim.DistributedVirtualSwitch.html#capability">Capability</a>.<a href="vim.DistributedVirtualSwitch.Capability.html#dvsOperationSupported">dvsOperationSupported</a>
 should always be set to false.]]>
      </description-html>
      </property>

            <property name="summary" type-id-ref="vim.DistributedVirtualSwitch.Summary"
      vmodl-name="summary"
      >
      <description-html>
         <![CDATA[Summary of the switch.]]>
      </description-html>
      </property>

            <property name="config" type-id-ref="vim.DistributedVirtualSwitch.ConfigInfo"
      vmodl-name="config"
      >
      <description-html>
         <![CDATA[Switch configuration data.]]>
      </description-html>
      </property>

            <property name="networkResourcePool" type-id-ref="vim.dvs.NetworkResourcePool"
      vmodl-name="networkResourcePool"
      version-id-ref="vim.version.version6"
      is-deprecated="true"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Network resource pool information for the switch.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[as of vSphere API 6.0
 Use <a href="vim.DistributedVirtualSwitch.ConfigInfo.html#vmVnicNetworkResourcePool">vmVnicNetworkResourcePool</a>
 to get the Virtual NIC resource pool information.
 Use <a href="vim.DistributedVirtualSwitch.ConfigInfo.html#infrastructureTrafficResourceConfig">infrastructureTrafficResourceConfig</a>
 to get the host infrastructure resource information.]]>
      </deprecated-html>
      </property>

            <property name="portgroup" type-id-ref="vim.dvs.DistributedVirtualPortgroup"
      vmodl-name="portgroup"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Portgroups that are defined on the switch.]]>
      </description-html>
      </property>

            <property name="runtime" type-id-ref="vim.DistributedVirtualSwitch.RuntimeInfo"
      vmodl-name="runtime"
      version-id-ref="vim.version.version8"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Runtime information of the distributed virtual switch.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.DistributedVirtualSwitch.ProductSpecOperationType</nested-type-id-ref>
      <nested-type-id-ref>vim.DistributedVirtualSwitch.ContactInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.DistributedVirtualSwitch.NicTeamingPolicyMode</nested-type-id-ref>
      <nested-type-id-ref>vim.DistributedVirtualSwitch.NetworkResourceManagementCapability</nested-type-id-ref>
      <nested-type-id-ref>vim.DistributedVirtualSwitch.RollbackCapability</nested-type-id-ref>
      <nested-type-id-ref>vim.DistributedVirtualSwitch.BackupRestoreCapability</nested-type-id-ref>
      <nested-type-id-ref>vim.DistributedVirtualSwitch.FeatureCapability</nested-type-id-ref>
      <nested-type-id-ref>vim.DistributedVirtualSwitch.HealthCheckFeatureCapability</nested-type-id-ref>
      <nested-type-id-ref>vim.DistributedVirtualSwitch.Capability</nested-type-id-ref>
      <nested-type-id-ref>vim.DistributedVirtualSwitch.Summary</nested-type-id-ref>
      <nested-type-id-ref>vim.DistributedVirtualSwitch.SwitchPolicy</nested-type-id-ref>
      <nested-type-id-ref>vim.DistributedVirtualSwitch.UplinkPortPolicy</nested-type-id-ref>
      <nested-type-id-ref>vim.DistributedVirtualSwitch.NameArrayUplinkPortPolicy</nested-type-id-ref>
      <nested-type-id-ref>vim.DistributedVirtualSwitch.ConfigSpec</nested-type-id-ref>
      <nested-type-id-ref>vim.DistributedVirtualSwitch.CreateSpec</nested-type-id-ref>
      <nested-type-id-ref>vim.DistributedVirtualSwitch.ConfigInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.DistributedVirtualSwitch.NetworkResourceControlVersion</nested-type-id-ref>
      <nested-type-id-ref>vim.DistributedVirtualSwitch.HostInfrastructureTrafficClass</nested-type-id-ref>
      <nested-type-id-ref>vim.DistributedVirtualSwitch.HostInfrastructureTrafficResource</nested-type-id-ref>
      <nested-type-id-ref>vim.DistributedVirtualSwitch.HealthCheckConfig</nested-type-id-ref>
      <nested-type-id-ref>vim.DistributedVirtualSwitch.ResourceRuntimeInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.DistributedVirtualSwitch.RuntimeInfo</nested-type-id-ref>
   <method name="FetchDVPortKeys"
      vmodl-name="fetchPortKeys"
      is-array="true"
      is-optional="true"
      privilege="System.Read"
      type-id-ref="java.lang.String"
      >
      <description-html>
         <![CDATA[Return the keys of ports that meet the criteria. On an ESXi host,
  the property shows only the connected ports currently on the host.]]>
      </description-html>
      <parameter name="criteria" type-id-ref="vim.dvs.PortCriteria"
      vmodl-name="criteria"
      version-id-ref="vim.version.version5"
      is-optional="true"
      privilege="criteria"
      >
      <description-html>
         <![CDATA[The port selection criteria. If unset, the operation
                 returns the keys of all the ports in the switch.]]>
      </description-html>
      </parameter>
   </method>
   <method name="FetchDVPorts"
      vmodl-name="fetchPorts"
      is-array="true"
      is-optional="true"
      privilege="System.Read"
      type-id-ref="vim.dvs.DistributedVirtualPort"
      >
      <description-html>
         <![CDATA[Return the ports that meet the criteria.]]>
      </description-html>
      <parameter name="criteria" type-id-ref="vim.dvs.PortCriteria"
      vmodl-name="criteria"
      version-id-ref="vim.version.version5"
      is-optional="true"
      privilege="criteria"
      >
      <description-html>
         <![CDATA[The port selection criteria. If unset, the operation
                 returns the keys of all the ports in the portgroup.]]>
      </description-html>
      </parameter>
   </method>
   <method name="QueryUsedVlanIdInDvs"
      vmodl-name="queryUsedVlanId"
      is-array="true"
      is-optional="true"
      privilege="System.Read"
      type-id-ref="INT"
      >
      <description-html>
         <![CDATA[Return the used VLAN ID (PVLAN excluded) in the switch.]]>
      </description-html>
   </method>
   <method name="ReconfigureDvs"
      vmodl-name="reconfigure"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Reconfigures a distributed virtual switch. You can use this method
  to set switch properties or to reset the switch to a previous state.
  <p>
  <h3>Reconfiguring a Standard Distributed Virtual Switch</h3>
  <p>
  To reconfigure a <a href="vim.DistributedVirtualSwitch.html">DistributedVirtualSwitch</a>,
  use a <a href="vim.DistributedVirtualSwitch.ConfigSpec.html">DVSConfigSpec</a>
  to set the switch properties.
  <p>
  <h3>Reconfiguring a VMware Distributed Virtual Switch</h3>
  <p>
  If you use a <a href="vim.dvs.VmwareDistributedVirtualSwitch.html">VmwareDistributedVirtualSwitch</a>,
  you can perform the following switch reconfiguration:
  <ul>
  <li>Use a <a href="vim.dvs.VmwareDistributedVirtualSwitch.ConfigSpec.html">VMwareDVSConfigSpec</a>
  to set the switch properties.</li><br />
  <li>Use the <a href="vim.dvs.VmwareDistributedVirtualSwitch.ConfigSpec.html">VMwareDVSConfigSpec</a>
  returned by <a href="vim.DistributedVirtualSwitch.html#rollback">DVSRollback_Task</a>
  to reset the switch to a previous state.</li>
  </ul>
  <p>
  Reconfiguring the switch may require any of the following privileges,
  depending on what is being changed:
  <ul>
    <li>DVSwitch.PolicyOp if <a href="vim.DistributedVirtualSwitch.ConfigSpec.html#policy">policy</a>
                        is set.</li>
    <li>DVSwitch.PortSetting if <a href="vim.DistributedVirtualSwitch.ConfigSpec.html#defaultPortConfig">defaultPortConfig</a>
                        is set.</li>
    <li>DVSwitch.HostOp if <a href="vim.DistributedVirtualSwitch.ConfigSpec.html#policy">policy</a>
                        is set. The
                        user will also need the Host.Config.Network
                        privilege on the host.</li>
    <li>DVSwitch.Vspan if <a href="vim.dvs.VmwareDistributedVirtualSwitch.ConfigSpec.html#vspanConfigSpec">vspanConfigSpec</a>
                        is set.</li>
    <li>DVSwitch.Modify for anything else.</li>
  </ul>]]>
      </description-html>
      <parameter name="spec" type-id-ref="vim.DistributedVirtualSwitch.ConfigSpec"
      vmodl-name="spec"
      version-id-ref="vim.version.version5"
      privilege="spec"
      >
      <description-html>
         <![CDATA[The configuration of the switch]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.DvsFault">
      <fault-description-html>
         <![CDATA[if operation fails on any host or if there are other update failures.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.ConcurrentAccess">
      </fault>
      <fault type-id-ref="vim.fault.DuplicateName">
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      </fault>
      <fault type-id-ref="vim.fault.InvalidName">
      </fault>
      <fault type-id-ref="vim.fault.NotFound">
      </fault>
      <fault type-id-ref="vim.fault.AlreadyExists">
      </fault>
      <fault type-id-ref="vim.fault.LimitExceeded">
      </fault>
      <fault type-id-ref="vim.fault.ResourceInUse">
      </fault>
      <fault type-id-ref="vim.fault.ResourceNotAvailable">
      <fault-description-html>
         <![CDATA[If there is no port available in the portgroup]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.DvsNotAuthorized">
      <fault-description-html>
         <![CDATA[if login-session's extension key does not match
          the switch's configured
          <a href="vim.DistributedVirtualSwitch.ConfigInfo.html#extensionKey">extensionKey</a>.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.VspanPortConflict">
      <fault-description-html>
         <![CDATA[if dvPort is used as both the transmitted source and destination ports in Distributed Port Mirroring sessions.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.VspanPromiscuousPortNotSupported">
      <fault-description-html>
         <![CDATA[if a promiscuous port is used as transmitted source or destination in the Distributed Port Mirroring sessions.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.VspanSameSessionPortConflict">
      <fault-description-html>
         <![CDATA[if a dvPort is used as both the source and destination in the same Distributed Port Mirroring session.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.VspanDestPortConflict">
      <fault-description-html>
         <![CDATA[if a dvPort is used as desination ports in multiple Distributed Port Mirroring sessions.]]>
      </fault-description-html>
      </fault>
      <task-description-html>
         <![CDATA[Returns a <a href="vim.Task.html">Task</a> object with which to monitor the operation.]]>
      </task-description-html>
   </method>
   <method name="PerformDvsProductSpecOperation"
      vmodl-name="performProductSpecOperation"
      privilege="DVSwitch.Modify"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[This method updates the <a href="vim.DistributedVirtualSwitch.html">DistributedVirtualSwitch</a> product specifications.]]>
      </description-html>
      <parameter name="operation" type-id-ref="java.lang.String"
      vmodl-name="operation"
      version-id-ref="vim.version.version5"
      privilege="operation"
      >
      <description-html>
         <![CDATA[The operation. See <a href="vim.DistributedVirtualSwitch.ProductSpecOperationType.html">DistributedVirtualSwitchProductSpecOperationType</a> for
                   valid values. For
                   <a href="vim.dvs.VmwareDistributedVirtualSwitch.html">VmwareDistributedVirtualSwitch</a>,
                   only vim.DistributedVirtualSwitch.ProductSpecOperationType#upgrade
                   is valid.]]>
      </description-html>
      </parameter>
      <parameter name="productSpec" type-id-ref="vim.dvs.ProductSpec"
      vmodl-name="productSpec"
      version-id-ref="vim.version.version5"
      is-optional="true"
      privilege="productSpec"
      >
      <description-html>
         <![CDATA[The product info of the implementation.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.TaskInProgress">
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      </fault>
      <fault type-id-ref="vim.fault.DvsFault">
      <fault-description-html>
         <![CDATA[if operation fails on any host or if there are other update failures.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.DvsNotAuthorized">
      <fault-description-html>
         <![CDATA[if login-session's extension key does not match
          the switch's configured
          <a href="vim.DistributedVirtualSwitch.ConfigInfo.html#extensionKey">extensionKey</a>.]]>
      </fault-description-html>
      </fault>
      <task-description-html>
         <![CDATA[Returns a <a href="vim.Task.html">Task</a> object with which to monitor the operation.]]>
      </task-description-html>
   </method>
   <method name="MergeDvs"
      vmodl-name="merge"
      is-deprecated="true"
      privilege="DVSwitch.Modify"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Merge an existing DistributedVirtualSwitch (source) to this switch
  (destination). The host members and the connected entity of the source
  switch will be transferred to the destination switch. This operation
  disconnects the entities from the source switch, tears down its host
  proxy switches, creates new proxies for the destination switch,
  and reconnects the entities to the destination switch.
  <p>
  In summary, this operation does the following:
  <ul>
     <li>Adds the
         <code>config</code>.<a href="vim.DistributedVirtualSwitch.ConfigInfo.html#maxPorts">maxPorts</a>
         of the source switch to the <code>maxPorts</code> of the
         destination switch.</li>
     <li>The host members of the source switch leave the source switch
         and join the destination switch with the same Physical NIC and
         VirtualSwitch (if applicable). A set of new uplink ports,
         compliant with the
         <a href="vim.DistributedVirtualSwitch.ConfigSpec.html#uplinkPortPolicy">uplinkPortPolicy</a>,
         is created as the hosts join the destination switch.</li>
     <li>The portgroups on the source switch are copied over to destination
         switch, by calculating the effective default port config and
         creating a portgroup of the same name in the destination switch. If
         the name already exists, the copied portgroup uses names following a
         "Copy of switch-portgroup-name" scheme to avoid conflict. The same
         number of ports are created inside each copied portgroup.</li>
     <li>The standalone distributed virtual ports are not copied,
         unless there is a virtual
         machine or host virtual NIC connecting to it. In that case, the
         operation calculates the effective port config and creates a port
         in the destination switch with the same name. Name conflict is
         resolved using numbers like "original-port-name(1)". The uplink ports
         are not copied over.</li>
     <li>The virtual machine and host virtual NICs are disconnected from the source
         switch and reconnected with the destination switch, to the
         copied standalone port or portgroup.</li>
     <li>If you are using a <a href="vim.dvs.VmwareDistributedVirtualSwitch.html">VmwareDistributedVirtualSwitch</a> -
         Unless the PVLAN map contains exactly the same entries between
         the source and destination VMware distributed virtual switches,
         the method raises a fault if
         <a href="vim.dvs.VmwareDistributedVirtualSwitch.PvlanSpec.html#pvlanId">pvlanId</a>
         is set in any port, portgroup, or switch that will be copied.
         </li>
  </ul>]]>
      </description-html>
      <deprecated-html>
         <![CDATA[as of vSphere API 5.5]]>
      </deprecated-html>
      <parameter name="dvs" type-id-ref="vim.DistributedVirtualSwitch"
      vmodl-name="dvs"
      version-id-ref="vim.version.version5"
      privilege="dvs"
      >
      <description-html>
         <![CDATA[The switch (source) to be merged]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.DvsFault">
      <fault-description-html>
         <![CDATA[if operation fails on any host or if there are other update failures.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.NotFound">
      </fault>
      <fault type-id-ref="vim.fault.ResourceInUse">
      <fault-description-html>
         <![CDATA[If failed to delete the source switch]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidHostState">
      </fault>
      <fault type-id-ref="vim.fault.DvsNotAuthorized">
      <fault-description-html>
         <![CDATA[if login-session's extension key does not match
          the switch's configured
          <a href="vim.DistributedVirtualSwitch.ConfigInfo.html#extensionKey">extensionKey</a>.]]>
      </fault-description-html>
      </fault>
      <task-description-html>
         <![CDATA[Returns a <a href="vim.Task.html">Task</a> object with which to monitor the operation.]]>
      </task-description-html>
   </method>
   <method name="AddDVPortgroup"
      vmodl-name="addPortgroups"
      privilege="DVPortgroup.Create"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Creates one or more <a href="vim.dvs.DistributedVirtualPortgroup.html">DistributedVirtualPortgroup</a>s and adds them to
  the distributed virtual switch.]]>
      </description-html>
      <parameter name="spec" type-id-ref="vim.dvs.DistributedVirtualPortgroup.ConfigSpec"
      vmodl-name="spec"
      version-id-ref="vim.version.version5"
      is-array="true"
      privilege="spec"
      >
      <description-html>
         <![CDATA[The specification for the portgroup.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.DvsFault">
      <fault-description-html>
         <![CDATA[if operation fails on any host or if there are other update failures.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.DuplicateName">
      </fault>
      <fault type-id-ref="vim.fault.InvalidName">
      </fault>
      <fault type-id-ref="vim.fault.DvsNotAuthorized">
      <fault-description-html>
         <![CDATA[if login-session's extension key does not match
          the switch's configured
          <a href="vim.DistributedVirtualSwitch.ConfigInfo.html#extensionKey">extensionKey</a>.]]>
      </fault-description-html>
      </fault>
      <task-description-html>
         <![CDATA[Returns a <a href="vim.Task.html">Task</a> object with which to monitor the operation.
        The method does not return a value in the
        <a href="vim.Task.html">Task</a>.<a href="vim.Task.html#info">Info</a>.<a href="vim.TaskInfo.html#result">result</a> property.
        Use the <a href="vim.DistributedVirtualSwitch.html#portgroup">Portgroup</a> property to obtain
        managed object references to the new portgroups.]]>
      </task-description-html>
   </method>
   <method name="MoveDVPort"
      vmodl-name="movePort"
      is-deprecated="true"
      privilege="DVSwitch.Modify"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Move the ports out of their current portgroup into the specified portgroup.
  If the moving of any of the ports results in a violation of the portgroup
  policy, or type of the source or destination portgroup, the operation
  raises a fault. A conflict port cannot be moved.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[as of vSphere API 6.0]]>
      </deprecated-html>
      <parameter name="portKey" type-id-ref="java.lang.String"
      vmodl-name="portKey"
      version-id-ref="vim.version.version5"
      is-array="true"
      privilege="portKey"
      >
      <description-html>
         <![CDATA[The keys of the ports to be moved into the portgroup.]]>
      </description-html>
      </parameter>
      <parameter name="destinationPortgroupKey" type-id-ref="java.lang.String"
      vmodl-name="destinationPortgroupKey"
      version-id-ref="vim.version.version5"
      is-optional="true"
      privilege="destinationPortgroupKey"
      >
      <description-html>
         <![CDATA[The key of the portgroup to be moved into.
                     If unset, the port will be moved under the switch.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.DvsFault">
      <fault-description-html>
         <![CDATA[if operation fails on any host or if there are other update failures.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.NotFound">
      </fault>
      <fault type-id-ref="vim.fault.ConcurrentAccess">
      </fault>
      <fault type-id-ref="vim.fault.DvsNotAuthorized">
      <fault-description-html>
         <![CDATA[if login-session's extension key does not match
          the switch's configured
          <a href="vim.DistributedVirtualSwitch.ConfigInfo.html#extensionKey">extensionKey</a>.]]>
      </fault-description-html>
      </fault>
      <task-description-html>
         <![CDATA[Returns a <a href="vim.Task.html">Task</a> object with which to monitor the operation.]]>
      </task-description-html>
   </method>
   <method name="UpdateDvsCapability"
      vmodl-name="updateCapability"
      privilege="DVSwitch.Modify"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Set the capability of the switch.]]>
      </description-html>
      <parameter name="capability" type-id-ref="vim.DistributedVirtualSwitch.Capability"
      vmodl-name="capability"
      version-id-ref="vim.version.version5"
      privilege="capability"
      >
      <description-html>
         <![CDATA[The capability of the switch.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.DvsFault">
      <fault-description-html>
         <![CDATA[if operation fails on any host or if there are other update failures.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.DvsNotAuthorized">
      <fault-description-html>
         <![CDATA[if login-session's extension key does not match
          the switch's configured
          <a href="vim.DistributedVirtualSwitch.ConfigInfo.html#extensionKey">extensionKey</a>.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="ReconfigureDVPort"
      vmodl-name="reconfigurePort"
      privilege="DVSwitch.PortConfig"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Reconfigure individual ports.]]>
      </description-html>
      <parameter name="port" type-id-ref="vim.dvs.DistributedVirtualPort.ConfigSpec"
      vmodl-name="port"
      version-id-ref="vim.version.version5"
      is-array="true"
      privilege="port"
      >
      <description-html>
         <![CDATA[The specification of the ports.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.DvsFault">
      <fault-description-html>
         <![CDATA[if operation fails on any host or if there are other update failures.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.NotFound">
      </fault>
      <fault type-id-ref="vim.fault.ResourceInUse">
      </fault>
      <fault type-id-ref="vim.fault.ConcurrentAccess">
      </fault>
      <fault type-id-ref="vim.fault.DvsNotAuthorized">
      <fault-description-html>
         <![CDATA[if login-session's extension key does not match
          the switch's configured
          <a href="vim.DistributedVirtualSwitch.ConfigInfo.html#extensionKey">extensionKey</a>.]]>
      </fault-description-html>
      </fault>
      <task-description-html>
         <![CDATA[Returns a <a href="vim.Task.html">Task</a> object with which to monitor the operation.]]>
      </task-description-html>
   </method>
   <method name="RefreshDVPortState"
      vmodl-name="refreshPortState"
      privilege="System.Read"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Refresh port states.]]>
      </description-html>
      <parameter name="portKeys" type-id-ref="java.lang.String"
      vmodl-name="portKeys"
      version-id-ref="vim.version.version5"
      is-array="true"
      is-optional="true"
      privilege="portKeys"
      >
      <description-html>
         <![CDATA[The keys of the ports to be refreshed. If not specified, all port
                  states are refreshed.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.DvsFault">
      <fault-description-html>
         <![CDATA[if operation fails on any host or if there are other update failures.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.NotFound">
      </fault>
   </method>
   <method name="RectifyDvsHost"
      vmodl-name="rectifyHost"
      is-deprecated="true"
      privilege="System.Read"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Update the switch configuration on the host to bring them in sync with the
  current configuration in vCenter Server.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[as of vSphere API 5.0.
  Use
  <a href="vim.dvs.DistributedVirtualSwitchManager.html">DistributedVirtualSwitchManager</a>.<a href="vim.dvs.DistributedVirtualSwitchManager.html#rectifyHost">RectifyDvsOnHost_Task</a> instead.]]>
      </deprecated-html>
      <parameter name="hosts" type-id-ref="vim.HostSystem"
      vmodl-name="hosts"
      version-id-ref="vim.version.version5"
      is-array="true"
      is-optional="true"
      privilege="hosts"
      >
      <description-html>
         <![CDATA[The hosts to be rectified.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.DvsFault">
      <fault-description-html>
         <![CDATA[if operation fails on any host or if there are other update failures.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.NotFound">
      </fault>
   </method>
   <method name="UpdateNetworkResourcePool"
      vmodl-name="updateNetworkResourcePool"
      version-id-ref="vim.version.version6"
      is-deprecated="true"
      privilege="DVSwitch.ResourceManagement"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Update the network resource pool configuration.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[as of vSphere API 6.0
  Use <a href="vim.DistributedVirtualSwitch.html#reconfigureVmVnicNetworkResourcePool">DvsReconfigureVmVnicNetworkResourcePool_Task</a> instead
  to update the Virtual NIC network resource pool.]]>
      </deprecated-html>
      <parameter name="configSpec" type-id-ref="vim.dvs.NetworkResourcePool.ConfigSpec"
      vmodl-name="configSpec"
      version-id-ref="vim.version.version6"
      is-array="true"
      privilege="configSpec"
      >
      <description-html>
         <![CDATA[The network resource pool configuration specification.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.DvsFault">
      <fault-description-html>
         <![CDATA[if operation fails on any host or if there are other update failures.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[if the resource pool does not exist on the dvs.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidName">
      <fault-description-html>
         <![CDATA[if the name of the resource pool is invalid.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.ConcurrentAccess">
      <fault-description-html>
         <![CDATA[if a network resource pool is modified by
          two or more clients at the same time.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.DvsNotAuthorized">
      <fault-description-html>
         <![CDATA[if login-session's extension key does not match
          the switch's configured
          <a href="vim.DistributedVirtualSwitch.ConfigInfo.html#extensionKey">extensionKey</a>.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="AddNetworkResourcePool"
      vmodl-name="addNetworkResourcePool"
      version-id-ref="vim.version.version7"
      is-deprecated="true"
      privilege="DVSwitch.ResourceManagement"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Add a network resource pool.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[as of vSphere API 6.0
  Use <a href="vim.DistributedVirtualSwitch.html#reconfigureVmVnicNetworkResourcePool">DvsReconfigureVmVnicNetworkResourcePool_Task</a> instead
  to add a Virtual NIC network resource pool.]]>
      </deprecated-html>
      <parameter name="configSpec" type-id-ref="vim.dvs.NetworkResourcePool.ConfigSpec"
      vmodl-name="configSpec"
      version-id-ref="vim.version.version7"
      is-array="true"
      privilege="configSpec"
      >
      <description-html>
         <![CDATA[the network resource pool configuration specification.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.DvsFault">
      <fault-description-html>
         <![CDATA[if operation fails on any host or if there are other update failures.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidName">
      </fault>
      <fault type-id-ref="vim.fault.DvsNotAuthorized">
      <fault-description-html>
         <![CDATA[if login-session's extension key does not match
          the switch's configured
          <a href="vim.DistributedVirtualSwitch.ConfigInfo.html#extensionKey">extensionKey</a>.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="RemoveNetworkResourcePool"
      vmodl-name="removeNetworkResourcePool"
      version-id-ref="vim.version.version7"
      is-deprecated="true"
      privilege="DVSwitch.ResourceManagement"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Remove a network resource pool.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[as of vSphere API 6.0
  Use <a href="vim.DistributedVirtualSwitch.html#reconfigureVmVnicNetworkResourcePool">DvsReconfigureVmVnicNetworkResourcePool_Task</a> instead
  to remove a Virtual NIC network resource pool.]]>
      </deprecated-html>
      <parameter name="key" type-id-ref="java.lang.String"
      vmodl-name="key"
      version-id-ref="vim.version.version7"
      is-array="true"
      privilege="key"
      >
      <description-html>
         <![CDATA[The network resource pool key.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.DvsFault">
      <fault-description-html>
         <![CDATA[if operation fails on any host or if there are other update failures.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[if the resource pool does not exist on the dvs.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidName">
      <fault-description-html>
         <![CDATA[if the name of the resource pool is invalid.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.ResourceInUse">
      <fault-description-html>
         <![CDATA[If network resource pool is associated with a network entity]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.DvsNotAuthorized">
      <fault-description-html>
         <![CDATA[if login-session's extension key does not match
          the switch's configured
          <a href="vim.DistributedVirtualSwitch.ConfigInfo.html#extensionKey">extensionKey</a>.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="DvsReconfigureVmVnicNetworkResourcePool"
      vmodl-name="reconfigureVmVnicNetworkResourcePool"
      version-id-ref="vim.version.version10"
      privilege="DVSwitch.ResourceManagement"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[reconfigure the Virtual NIC network resource pool configuration.]]>
      </description-html>
      <parameter name="configSpec" type-id-ref="vim.dvs.VmVnicNetworkResourcePool.ConfigSpec"
      vmodl-name="configSpec"
      version-id-ref="vim.version.version10"
      is-array="true"
      privilege="configSpec"
      >
      <description-html>
         <![CDATA[The Virtual NIC network resource pool configuration specification and operation type.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.DvsFault">
      <fault-description-html>
         <![CDATA[if operation fails on any host or if there are other reconfigure failures.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[if the resource pool does not exist on the dvs.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidName">
      </fault>
      <fault type-id-ref="vim.fault.ConcurrentAccess">
      <fault-description-html>
         <![CDATA[if a Virtual NIC network resource pool is modified by
          two or more clients at the same time.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.ConflictingConfiguration">
      <fault-description-html>
         <![CDATA[if the any property being set is in conflict.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.ResourceInUse">
      <fault-description-html>
         <![CDATA[If Virtual NIC network resource pool being removed
          is associated with a network entity]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.DvsNotAuthorized">
      <fault-description-html>
         <![CDATA[if login-session's extension key does not match
          the switch's configured
          <a href="vim.DistributedVirtualSwitch.ConfigInfo.html#extensionKey">extensionKey</a>.]]>
      </fault-description-html>
      </fault>
      <task-description-html>
         <![CDATA[Returns a <a href="vim.Task.html">Task</a> object with which to monitor the operation.]]>
      </task-description-html>
   </method>
   <method name="EnableNetworkResourceManagement"
      vmodl-name="enableNetworkResourceManagement"
      version-id-ref="vim.version.version6"
      privilege="DVSwitch.ResourceManagement"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Enable/Disable network I/O control on the vSphere Distributed Switch.]]>
      </description-html>
      <parameter name="enable" type-id-ref="BOOLEAN"
      vmodl-name="enable"
      version-id-ref="vim.version.version6"
      privilege="enable"
      >
      <description-html>
         <![CDATA[If true, enables I/O control. If false,
         disables network I/O control.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.DvsFault">
      <fault-description-html>
         <![CDATA[if the enabling/disabling fails.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.DvsNotAuthorized">
      <fault-description-html>
         <![CDATA[if login-session's extension key does not match
          the switch's configured
          <a href="vim.DistributedVirtualSwitch.ConfigInfo.html#extensionKey">extensionKey</a>.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="DVSRollback"
      vmodl-name="rollback"
      version-id-ref="vim.version.version8"
      is-optional="true"
      type-id-ref="vim.DistributedVirtualSwitch.ConfigSpec"
      is-task="true"
      >
      <description-html>
         <![CDATA[This method determines if the distributed virtual switch configuration
  has changed. If it has changed, the method returns a
  <a href="vim.dvs.VmwareDistributedVirtualSwitch.ConfigSpec.html">VMwareDVSConfigSpec</a>.
  Use the <a href="vim.DistributedVirtualSwitch.html#reconfigure">ReconfigureDvs_Task</a> method to apply
  the rollback configuration to the switch.
  You can use the rollback method only on a <a href="vim.dvs.VmwareDistributedVirtualSwitch.html">VmwareDistributedVirtualSwitch</a>.
  <p>
  <ul>
  <li>If you specify the <code>entityBackup</code> parameter, the returned
  configuration specification represents the exported switch configuration.
  If the <code>entityBackup</code> matches the current switch
  configuration, the method does not return a configuration specification.
  </li><br />
  <li>If <code>entityBackup</code> is not specified, the returned configuration
  specification represents a previous state of the switch, if available.
  When you use a VMware distributed virtual switch, each time you reconfigure
  the switch, the Server saves the switch configuration before applying the updates.
  If the vCenter Server is restarted, the saved configuration is not preserved
  and the method does not return a configuration specification.
  </li>
  </ul>
  <p>
  To use the rollback method, you must have the DVSwitch.Read privilege.
  </p>]]>
      </description-html>
      <parameter name="entityBackup" type-id-ref="vim.dvs.EntityBackup.Config"
      vmodl-name="entityBackup"
      version-id-ref="vim.version.version8"
      is-optional="true"
      privilege="entityBackup"
      >
      <description-html>
         <![CDATA[Backup of a distributed virtual switch, returned by
                      the <a href="vim.dvs.DistributedVirtualSwitchManager.html#exportEntity">DVSManagerExportEntity_Task</a>
                      method.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.DvsFault">
      <fault-description-html>
         <![CDATA[if operation fails.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.RollbackFailure">
      <fault-description-html>
         <![CDATA[if there is no configuration specified in entityBackup and
          the previous configuration does not exist either.]]>
      </fault-description-html>
      </fault>
      <task-description-html>
         <![CDATA[Returns a <a href="vim.Task.html">Task</a> object with which to monitor the operation.
        If the distributed virtual switch configuration has changed, the
        <a href="vim.Task.html">Task</a>.<a href="vim.Task.html#info">Info</a>.<a href="vim.TaskInfo.html#result">result</a>
        property contains the <a href="vim.DistributedVirtualSwitch.ConfigSpec.html">DVSConfigSpec</a> object.]]>
      </task-description-html>
   </method>
   <method name="CreateDVPortgroup"
      vmodl-name="addPortgroup"
      version-id-ref="vim.version.version8"
      privilege="DVPortgroup.Create"
      type-id-ref="vim.dvs.DistributedVirtualPortgroup"
      is-task="true"
      >
      <description-html>
         <![CDATA[Creates a single <a href="vim.dvs.DistributedVirtualPortgroup.html">DistributedVirtualPortgroup</a> and adds it
  to the distributed virtual switch.]]>
      </description-html>
      <parameter name="spec" type-id-ref="vim.dvs.DistributedVirtualPortgroup.ConfigSpec"
      vmodl-name="spec"
      version-id-ref="vim.version.version8"
      privilege="spec"
      >
      <description-html>
         <![CDATA[The specification for the portgroup.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.DvsFault">
      <fault-description-html>
         <![CDATA[if operation fails on any host or if there are other update failures.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.DuplicateName">
      <fault-description-html>
         <![CDATA[if a portgroup with the same name already exists]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidName">
      <fault-description-html>
         <![CDATA[if name of the portgroup is invalid]]>
      </fault-description-html>
      </fault>
      <task-description-html>
         <![CDATA[Returns a <a href="vim.Task.html">Task</a> object. The
        <a href="vim.Task.html">Task</a>.<a href="vim.Task.html#info">Info</a>.<a href="vim.TaskInfo.html#result">result</a> property
        contains a managed object reference to the new portgroup.
        The <a href="vim.DistributedVirtualSwitch.html#portgroup">Portgroup</a> property also contains
        the reference.]]>
      </task-description-html>
   </method>
   <method name="UpdateDVSHealthCheckConfig"
      vmodl-name="updateHealthCheckConfig"
      version-id-ref="vim.version.version8"
      privilege="DVSwitch.Modify"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Update health check configuration.]]>
      </description-html>
      <parameter name="healthCheckConfig" type-id-ref="vim.DistributedVirtualSwitch.HealthCheckConfig"
      vmodl-name="healthCheckConfig"
      version-id-ref="vim.version.version8"
      is-array="true"
      privilege="healthCheckConfig"
      >
      <description-html>
         <![CDATA[The health check configuration.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.DvsFault">
      <fault-description-html>
         <![CDATA[if operation fails on any host or if there are other update failures.]]>
      </fault-description-html>
      </fault>
      <task-description-html>
         <![CDATA[Returns a <a href="vim.Task.html">Task</a> object with which to monitor the operation.]]>
      </task-description-html>
   </method>
   <method name="LookupDvPortGroup"
      vmodl-name="lookupPortgroup"
      version-id-ref="vim.version.version8"
      is-optional="true"
      privilege="System.Read"
      type-id-ref="vim.dvs.DistributedVirtualPortgroup"
      >
      <description-html>
         <![CDATA[Returns the portgroup identified by the key within this VDS.]]>
      </description-html>
      <parameter name="portgroupKey" type-id-ref="java.lang.String"
      vmodl-name="portgroupKey"
      version-id-ref="vim.version.version8"
      privilege="portgroupKey"
      >
      <description-html>
         <![CDATA[The key that identifies a portgroup of this VDS.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[If the portgroup for the specified key is not found.]]>
      </fault-description-html>
      </fault>
   </method>
   </managed-object>
   <managed-object name="HostDatastoreSystem"
      type-id="vim.host.DatastoreSystem"
      vmodl-name="vim.host.DatastoreSystem"
      version-id-ref="vim.version.version1"
      >
      <description-html>
         <![CDATA[This managed object creates and removes datastores from the host.
  <p>
  To a host, a datastore is a storage abstraction that is backed by one
  of several types of storage volumes:
  <dl>
  <dt><b>Local file system</b></dt>
  <dd>
  A datastore that is backed by a local file system volume uses a host native
  local file system such as NTFS or ext3.  The datastore is created by
  identifying a file path for a directory in which virtual machine data will
  be stored.  When the datastore is deleted, the mapping from the datastore to
  the file is deleted.  The contents of the directory are not deleted.
  </dd>
  <p>
  <dt><b>NAS Volume</b></dt>
  <dd>
  A datastore that is backed by a network-attached storage device is created
  by specifying the required data needed to attach the volume to the host.
  Destroying the datastore detaches the volume from the host.
  </dd>
  <p>
  <dt><b>VMFS</b></dt>
  <dd>
  A datastore that is backed by a VMware File System (VMFS) is created by
  specifying a disk with unpartitioned space, the desired disk partition
  format on the disk, and some VMFS attributes.
  <p>
  An ESX Server system automatically discovers the VMFS volume on attached Logical
  Unit Numbers (LUNs) on startup and after re-scanning the host bus adapter.
  Datastores are automatically created.  The datastore label is based on the
  VMFS volume label.  If there is a conflict with an existing datastore,
  it is made unique by appending a suffix.  The VMFS volume label will
  be unchanged.
  <p>
  Destroying the datastore removes the partitions that compose the VMFS volume.
  </dd>
  </dl>
  Datastores are never automatically removed because transient storage
  connection outages may occur.  They must be removed from the host using
  this interface.<br>See <a href="vim.Datastore.html">Datastore</a><br>]]>
      </description-html>
            <property name="datastore" type-id-ref="vim.Datastore"
      vmodl-name="datastore"
      is-array="true"
      is-optional="true"
      privilege="System.View"
      >
      <description-html>
         <![CDATA[List of datastores on this host.]]>
      </description-html>
      </property>

            <property name="capabilities" type-id-ref="vim.host.DatastoreSystem.Capabilities"
      vmodl-name="capabilities"
      version-id-ref="vim.version.version2"
      >
      <description-html>
         <![CDATA[Capability vector indicating the available product features.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.host.DatastoreSystem.Capabilities</nested-type-id-ref>
      <nested-type-id-ref>vim.host.DatastoreSystem.VvolDatastoreSpec</nested-type-id-ref>
      <nested-type-id-ref>vim.host.DatastoreSystem.DatastoreResult</nested-type-id-ref>
   <method name="UpdateLocalSwapDatastore"
      vmodl-name="updateLocalSwapDatastore"
      version-id-ref="vim.version.version2"
      privilege="Host.Config.Storage"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Choose the
  <a href="vim.host.ConfigInfo.html#localSwapDatastore">localSwapDatastore</a>
  for this host. Any change to this setting will affect virtual machines
  that subsequently power on or resume from a suspended state at this host,
  or that migrate to this host while powered on; virtual machines that are
  currently powered on at this host will not yet be affected.]]>
      </description-html>
      <parameter name="datastore" type-id-ref="vim.Datastore"
      vmodl-name="datastore"
      version-id-ref="vim.version.version2"
      is-optional="true"
      privilege="datastore"
      >
      <description-html>
         <![CDATA[The selected datastore. If this argument is unset, then
  the <a href="vim.host.ConfigInfo.html#localSwapDatastore">localSwapDatastore</a>
  property becomes unset. Otherwise, the host must have read/write
  access to the indicated datastore.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.InaccessibleDatastore">
      <fault-description-html>
         <![CDATA[if the datastore argument is set and
  the host cannot access the indicated datastore.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.DatastoreNotWritableOnHost">
      <fault-description-html>
         <![CDATA[if the datastore argument is set and
  the host cannot write to the indicated datastore.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="QueryAvailableDisksForVmfs"
      vmodl-name="queryAvailableDisksForVmfs"
      is-array="true"
      is-optional="true"
      privilege="Host.Config.Storage"
      type-id-ref="vim.host.ScsiDisk"
      >
      <description-html>
         <![CDATA[Query to list disks that can be used to contain VMFS datastore extents.
  If the optional parameter name is supplied, queries for disks that can be
  used to contain extents for a VMFS datastore identified by the supplied
  name.  Otherwise, the method retrieves disks that can be used to contain
  new VMFS datastores.
  <p>
  This operation will filter out disks that are currently in use by an
  existing VMFS unless the VMFS using the disk is one being extended.
  It will also filter out management LUNs and disks that are referenced by
  RDMs.  These disk LUNs are also unsuited for use by a VMFS.
  <p>
  Disk LUNs referenced by RDMs are found by examining all virtual machines
  known to the system and visiting their virtual disk backends.  If a
  virtual disk backend uses an RDM that is referencing a disk LUN, the disk
  LUN becomes ineligible for use by a VMFS datastore.]]>
      </description-html>
      <parameter name="datastore" type-id-ref="vim.Datastore"
      vmodl-name="datastore"
      version-id-ref="vim.version.version1"
      is-optional="true"
      privilege="datastore"
      >
      <description-html>
         <![CDATA[The managed object reference of the VMFS datastore
                   you want extents for.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[if the named VMFS datastore is not found.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[if unable to query disk information.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[An array of data objects describing SCSI disks.]]>
      </return-value-description-html>
   </method>
   <method name="QueryVmfsDatastoreCreateOptions"
      vmodl-name="queryVmfsDatastoreCreateOptions"
      is-array="true"
      is-optional="true"
      privilege="Host.Config.Storage"
      type-id-ref="vim.host.VmfsDatastoreOption"
      >
      <description-html>
         <![CDATA[Queries options for creating a new VMFS datastore for a disk.<br>See <a href="vim.host.ScsiDisk.html#devicePath">devicePath</a><br>]]>
      </description-html>
      <parameter name="devicePath" type-id-ref="java.lang.String"
      vmodl-name="devicePath"
      version-id-ref="vim.version.version1"
      privilege="devicePath"
      >
      <description-html>
         <![CDATA[The devicePath of the disk on which datastore creation
                    options are generated.<br>See <a href="vim.host.ScsiDisk.html#devicePath">devicePath</a><br>]]>
      </description-html>
      </parameter>
      <parameter name="vmfsMajorVersion" type-id-ref="INT"
      vmodl-name="vmfsMajorVersion"
      version-id-ref="vim.version.version1"
      is-optional="true"
      privilege="vmfsMajorVersion"
      >
      <description-html>
         <![CDATA[major version of VMFS to be used for
                          formatting the datastore. If this
                          parameter is not specified, then the highest
                          <a href="vim.host.Capability.html#supportedVmfsMajorVersion">supportedVmfsMajorVersion</a> for the host
                          is used.<br>See <a href="vim.host.ScsiDisk.html#devicePath">devicePath</a><br>]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[if the device is not found.<br>See <a href="vim.host.ScsiDisk.html#devicePath">devicePath</a><br>]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[if unable to get the current partition information for
          the device.<br>See <a href="vim.host.ScsiDisk.html#devicePath">devicePath</a><br>]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[An array of VMFS datastore provisioning options that can be
          applied on a disk.]]>
      </return-value-description-html>
   </method>
   <method name="CreateVmfsDatastore"
      vmodl-name="createVmfsDatastore"
      privilege="Host.Config.Storage"
      type-id-ref="vim.Datastore"
      >
      <description-html>
         <![CDATA[Creates a new VMFS datastore.]]>
      </description-html>
      <parameter name="spec" type-id-ref="vim.host.VmfsDatastoreCreateSpec"
      vmodl-name="spec"
      version-id-ref="vim.version.version1"
      privilege="spec"
      >
      <description-html>
         <![CDATA[The specification for creating a datastore backed by a VMFS.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.DuplicateName">
      <fault-description-html>
         <![CDATA[if a datastore with the same name already exists.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[if unable to format the VMFS volume or
          gather information about the created volume.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[The newly created datastore.]]>
      </return-value-description-html>
   </method>
   <method name="QueryVmfsDatastoreExtendOptions"
      vmodl-name="queryVmfsDatastoreExtendOptions"
      is-array="true"
      is-optional="true"
      privilege="Host.Config.Storage"
      type-id-ref="vim.host.VmfsDatastoreOption"
      >
      <description-html>
         <![CDATA[Queries for options for increasing the capacity of an existing VMFS
  datastore by adding new extents using space from the specified disk.<br>See <a href="vim.host.ScsiDisk.html#devicePath">devicePath</a><br>]]>
      </description-html>
      <parameter name="datastore" type-id-ref="vim.Datastore"
      vmodl-name="datastore"
      version-id-ref="vim.version.version1"
      privilege="datastore"
      >
      <description-html>
         <![CDATA[The datastore to be extended.<br>See <a href="vim.host.ScsiDisk.html#devicePath">devicePath</a><br>]]>
      </description-html>
      </parameter>
      <parameter name="devicePath" type-id-ref="java.lang.String"
      vmodl-name="devicePath"
      version-id-ref="vim.version.version1"
      privilege="devicePath"
      >
      <description-html>
         <![CDATA[The devicePath of the disk on which datastore extension
                    options are generated.<br>See <a href="vim.host.ScsiDisk.html#devicePath">devicePath</a><br>]]>
      </description-html>
      </parameter>
      <parameter name="suppressExpandCandidates" type-id-ref="BOOLEAN"
      vmodl-name="suppressExpandCandidates"
      version-id-ref="vim.version.version1"
      is-optional="true"
      privilege="suppressExpandCandidates"
      >
      <description-html>
         <![CDATA[Indicates whether to exclude options that can be
         used for extent expansion also.
         Free space can be used for adding an extent or expanding an existing
         extent. If this parameter is set to true, the list of options
         returned will not include free space that can be used for expansion.<br>See <a href="vim.host.ScsiDisk.html#devicePath">devicePath</a><br>]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[if a datastore or device with the given name could not be found
               or if the datastore is unmounted.<br>See <a href="vim.host.ScsiDisk.html#devicePath">devicePath</a><br>]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[if unable to get the current partition information for
          the device.<br>See <a href="vim.host.ScsiDisk.html#devicePath">devicePath</a><br>]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[An array of VMFS datastore provisioning options that can be applied
          on a disk.]]>
      </return-value-description-html>
   </method>
   <method name="QueryVmfsDatastoreExpandOptions"
      vmodl-name="queryVmfsDatastoreExpandOptions"
      version-id-ref="vim.version.version5"
      is-array="true"
      is-optional="true"
      privilege="Host.Config.Storage"
      type-id-ref="vim.host.VmfsDatastoreOption"
      >
      <description-html>
         <![CDATA[Queries for options for increasing the capacity of an existing VMFS
  datastore by expanding (increasing the size of) an existing extent of
  the datastore.]]>
      </description-html>
      <parameter name="datastore" type-id-ref="vim.Datastore"
      vmodl-name="datastore"
      version-id-ref="vim.version.version5"
      privilege="datastore"
      >
      <description-html>
         <![CDATA[The datastore to be expanded.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[if the specified datastore could not be found or is unmounted.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[if unable to get partition information for the
          devices on which the extents reside]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[An array of VMFS datastore expansion options that can be applied.]]>
      </return-value-description-html>
   </method>
   <method name="ExtendVmfsDatastore"
      vmodl-name="extendVmfsDatastore"
      privilege="Host.Config.Storage"
      type-id-ref="vim.Datastore"
      >
      <description-html>
         <![CDATA[Increases the capacity of an existing VMFS datastore by adding new
  extents to the datastore.]]>
      </description-html>
      <parameter name="datastore" type-id-ref="vim.Datastore"
      vmodl-name="datastore"
      version-id-ref="vim.version.version1"
      privilege="datastore"
      >
      <description-html>
         <![CDATA[The datastore whose capacity should be increased.]]>
      </description-html>
      </parameter>
      <parameter name="spec" type-id-ref="vim.host.VmfsDatastoreExtendSpec"
      vmodl-name="spec"
      version-id-ref="vim.version.version1"
      privilege="spec"
      >
      <description-html>
         <![CDATA[The specification describing what extents to add to a
              VMFS datastore.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[if a datastore with the name could not be found.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[if unable to extend the VMFS volume.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[The extended datastore.]]>
      </return-value-description-html>
   </method>
   <method name="EnableClusteredVmdkSupport"
      vmodl-name="enableClusteredVmdkSupport"
      version-id-ref="vim.version.v7_0"
      privilege="Host.Config.Storage"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Enable the clustered vmdk support on specified datastore.]]>
      </description-html>
      <parameter name="datastore" type-id-ref="vim.Datastore"
      vmodl-name="datastore"
      version-id-ref="vim.version.v7_0"
      privilege="datastore"
      >
      <description-html>
         <![CDATA[Datastore on which clustered vmdk should be
        enabled]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[if a datastore with the name could not be found.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[if unable to enable clustered vmdk support.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="DisableClusteredVmdkSupport"
      vmodl-name="disableClusteredVmdkSupport"
      version-id-ref="vim.version.v7_0"
      privilege="Host.Config.Storage"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Disable the clustered vmdk support on specified datastore.
 This API will fail if there are running VMs on the datastore
 which are configured to use clustered VMDK feature.]]>
      </description-html>
      <parameter name="datastore" type-id-ref="vim.Datastore"
      vmodl-name="datastore"
      version-id-ref="vim.version.v7_0"
      privilege="datastore"
      >
      <description-html>
         <![CDATA[Datastore on which clustered vmdk should be
        disabled.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[if a datastore with the name could not be found.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[if unable to disable clustered vmdk support.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="ExpandVmfsDatastore"
      vmodl-name="expandVmfsDatastore"
      version-id-ref="vim.version.version5"
      privilege="Host.Config.Storage"
      type-id-ref="vim.Datastore"
      >
      <description-html>
         <![CDATA[Increases the capacity of an existing VMFS datastore by expanding
  (increasing the size of) an existing extent of the datastore.]]>
      </description-html>
      <parameter name="datastore" type-id-ref="vim.Datastore"
      vmodl-name="datastore"
      version-id-ref="vim.version.version5"
      privilege="datastore"
      >
      <description-html>
         <![CDATA[The datastore whose capacity should be increased.]]>
      </description-html>
      </parameter>
      <parameter name="spec" type-id-ref="vim.host.VmfsDatastoreExpandSpec"
      vmodl-name="spec"
      version-id-ref="vim.version.version5"
      privilege="spec"
      >
      <description-html>
         <![CDATA[The specification describing which extent of the VMFS
              datastore to expand.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[if a datastore with the name could not be found.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[if unable to expand the VMFS volume.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[The expanded datastore.]]>
      </return-value-description-html>
   </method>
   <method name="CreateNasDatastore"
      vmodl-name="createNasDatastore"
      privilege="Host.Config.Storage"
      type-id-ref="vim.Datastore"
      >
      <description-html>
         <![CDATA[Creates a new network-attached storage datastore.]]>
      </description-html>
      <parameter name="spec" type-id-ref="vim.host.NasVolume.Specification"
      vmodl-name="spec"
      version-id-ref="vim.version.version1"
      privilege="spec"
      >
      <description-html>
         <![CDATA[The specification for creating a network-attached storage volume.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.DuplicateName">
      <fault-description-html>
         <![CDATA[if a datastore with the same name already exists.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.AlreadyExists">
      <fault-description-html>
         <![CDATA[if the local path already exists on the host, or
          the remote path is already mounted on the host.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[if unable to mount the NAS volume.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.NoVirtualNic">
      <fault-description-html>
         <![CDATA[if VMkernel TCPIP stack is not configured.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.NoGateway">
      <fault-description-html>
         <![CDATA[if VMkernel gateway is not configured.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[The newly created datastore.]]>
      </return-value-description-html>
   </method>
   <method name="CreateLocalDatastore"
      vmodl-name="createLocalDatastore"
      privilege="Host.Config.Storage"
      type-id-ref="vim.Datastore"
      >
      <description-html>
         <![CDATA[Creates a new local datastore.]]>
      </description-html>
      <parameter name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      version-id-ref="vim.version.version1"
      privilege="name"
      >
      <description-html>
         <![CDATA[The name of a datastore to create on the local host.]]>
      </description-html>
      </parameter>
      <parameter name="path" type-id-ref="java.lang.String"
      vmodl-name="path"
      version-id-ref="vim.version.version1"
      privilege="path"
      >
      <description-html>
         <![CDATA[The file path for a directory in which the virtual machine data
              will be stored.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.DuplicateName">
      <fault-description-html>
         <![CDATA[if a datastore with the same name already exists.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[if unable to create the datastore on host.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.FileNotFound">
      <fault-description-html>
         <![CDATA[if path doesn't exist]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidName">
      <fault-description-html>
         <![CDATA[if name is not valid datastore name]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="CreateVvolDatastore"
      vmodl-name="createVvolDatastore"
      version-id-ref="vim.version.version10"
      privilege="Host.Config.Storage"
      type-id-ref="vim.Datastore"
      >
      <description-html>
         <![CDATA[Create a Virtual-Volume based datastore]]>
      </description-html>
      <parameter name="spec" type-id-ref="vim.host.DatastoreSystem.VvolDatastoreSpec"
      vmodl-name="spec"
      version-id-ref="vim.version.version10"
      privilege="spec"
      >
      <description-html>
         <![CDATA[Specification for creating a Virtual-Volume based datastore.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[if the storage container could not be found.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.DuplicateName">
      <fault-description-html>
         <![CDATA[if a datastore with the same name already exists.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[if unable to create the datastore on host.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidName">
      <fault-description-html>
         <![CDATA[if name is not valid datastore name]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[The newly created datastore.]]>
      </return-value-description-html>
   </method>
   <method name="RemoveDatastore"
      vmodl-name="removeDatastore"
      privilege="Host.Config.Storage"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Removes a datastore from a host.]]>
      </description-html>
      <parameter name="datastore" type-id-ref="vim.Datastore"
      vmodl-name="datastore"
      version-id-ref="vim.version.version1"
      privilege="datastore"
      >
      <description-html>
         <![CDATA[The datastore to be removed.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[if the datastore could not be found.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[if unable to umount the NAS volume for NAS
          datastore, or gather the existing volume information.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.ResourceInUse">
      <fault-description-html>
         <![CDATA[for a VMFS volume if there is any VM registered
          on any host attached to this datastore.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="RemoveDatastoreEx"
      vmodl-name="removeDatastoreEx"
      version-id-ref="vim.version.version10"
      is-array="true"
      privilege="Host.Config.Storage"
      type-id-ref="vim.host.DatastoreSystem.DatastoreResult"
      is-task="true"
      >
      <description-html>
         <![CDATA[Remove one or more datastores. This is an asynchronous, batch operation of
  removeDatastore. Please see <a href="vim.host.DatastoreSystem.html#removeDatastore">RemoveDatastore</a>
  for operational details.

  Note: This API currently supports removal of only NFS datastores.]]>
      </description-html>
      <parameter name="datastore" type-id-ref="vim.Datastore"
      vmodl-name="datastore"
      version-id-ref="vim.version.version10"
      is-array="true"
      privilege="datastore"
      >
      <description-html>
         <![CDATA[each element specifies one datastore to be removed.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[for host configuration failures.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[datastoreResult  each element specifies result of a removal
                           request. The faults are specified in
                           <a href="vim.host.DatastoreSystem.html#removeDatastore">RemoveDatastore</a>]]>
      </return-value-description-html>
   </method>
   <method name="ConfigureDatastorePrincipal"
      vmodl-name="configureDatastorePrincipal"
      privilege="Host.Config.Maintenance"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Configures datastore principal user for the host.
  <p>
  All virtual machine-related file I/O is performed under
  this user. Configuring datastore principal user
  will result in all virtual machine files (configuration, disk,
  and so on) being checked for proper access. If necessary, ownership
  and permissions are modified.  Note that in some environments,
  file ownership and permissions modification may not be possible.
  For example, virtual machine files stored on NFS cannot be
  modified for ownership and permissions if root squashing is
  enabled.  Ownership and permissions for these files must be
  manually changed by a system administrator.  In general, if
  server process does not have rights to change ownership
  and file permissions of virtual machine files, they must
  be modified manually.  If a virtual machine files are not
  read/writeable by this user, virtual machine related operations such as
  power on/off, configuration, and so on will fail.  This operation
  must be performed while in maintenance mode and requires host
  reboot.]]>
      </description-html>
      <parameter name="userName" type-id-ref="java.lang.String"
      vmodl-name="userName"
      version-id-ref="vim.version.version1"
      privilege="userName"
      >
      <description-html>
         <![CDATA[Datastore principal user name.]]>
      </description-html>
      </parameter>
      <parameter name="password" type-id-ref="java.lang.String"
      vmodl-name="password"
      version-id-ref="vim.version.version1"
      is-optional="true"
      privilege="password"
      >
      <description-html>
         <![CDATA[Optional password for systems that require password for
                   user impersonation.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the host is not in maintenance mode.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[if unable to configure the datastore principal.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="QueryUnresolvedVmfsVolumes"
      vmodl-name="queryUnresolvedVmfsVolumes"
      version-id-ref="vim.version.version5"
      is-array="true"
      is-optional="true"
      privilege="System.Read"
      type-id-ref="vim.host.UnresolvedVmfsVolume"
      >
      <description-html>
         <![CDATA[Get the list of unbound VMFS volumes.
  For sharing a volume across hosts, a VMFS volume is bound to its
  underlying block device storage. When a low level block copy is
  performed to copy or move the VMFS volume, the copied volume will
  be unbound.]]>
      </description-html>
      <return-value-description-html>
         <![CDATA[An array of unbound VMFS datastore]]>
      </return-value-description-html>
   </method>
   <method name="ResignatureUnresolvedVmfsVolume"
      vmodl-name="resignatureUnresolvedVmfsVolume"
      version-id-ref="vim.version.version5"
      is-optional="true"
      privilege="Host.Config.Storage"
      type-id-ref="vim.host.ResignatureRescanResult"
      is-task="true"
      >
      <description-html>
         <![CDATA[Resignature an unbound VMFS volume.

  To safely enable sharing of the volume across hosts, a VMFS volume
  is bound to its underlying block device storage.  When a low level
  block copy is performed to copy or move the VMFS volume, the copied
  volume will be unbound.  In order for the VMFS volume to be usable,
  a resolution operation is needed to determine whether the VMFS volume
  should be treated as a new volume or not and what extents compose
  that volume in the event there is more than one unbound volume.
  <p>
  With 'Resignature' operation, a new Vmfs Uuid is assigned to the
  volume but its contents are kept intact. Resignature results in a
  new Vmfs volume on the host. Users can specify a list of hosts on which
  the volume will be auto-mounted.

  <p>]]>
      </description-html>
      <parameter name="resolutionSpec" type-id-ref="vim.host.UnresolvedVmfsResignatureSpec"
      vmodl-name="resolutionSpec"
      version-id-ref="vim.version.version5"
      privilege="resolutionSpec"
      >
      <description-html>
         <![CDATA[A data object that describes what the disk
                        extents to be used for creating the new
                        VMFS volume.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.VmfsAmbiguousMount">
      <fault-description-html>
         <![CDATA[when ESX is unable to resolve the extents
          of a VMFS volume unambiguously. This is thrown only when
          a VMFS volume has multiple extents and multiple copies of
          non-head extents are detected, and the user has not
          specified one copy of every extent. Please note that some
          versions of ESX may not support resolving the situation
          where multiple copies of non-head extents are detected,
          even if one copy of every extent is specified in the
          method parameter. To resolve such a situation, the user
          is expected to change the configuration (for example,
          using array management tools) so that only one copy of
          each non-head extent is presented to ESX.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[for all other configuration failures.]]>
      </fault-description-html>
      </fault>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to monitor
        the operation. The task result
        (<a href="vim.Task.html#info">Info</a>.<a href="vim.TaskInfo.html#result">result</a>) contains a
        <a href="vim.host.ResignatureRescanResult.html">HostResignatureRescanResult</a> object that identifies
        the newly created VMFS datastore.]]>
      </task-description-html>
   </method>
   </managed-object>
   <managed-object name="ClusterEVCManager"
      type-id="vim.cluster.EVCManager"
      vmodl-name="vim.cluster.EVCManager"
      version-id-ref="vim.version.version10"
      base-type-id="vim.ExtensibleManagedObject"
      >
      <description-html>
         <![CDATA[Controls Enhanced vMotion Compatibility mode for a particular cluster given
  by <a href="vim.cluster.EVCManager.html#managedCluster">ManagedCluster</a>.

  VMware Enhanced vMotion Compatibility (EVC) facilitates vMotion between
  different CPU generations through the use of Intel Flex Migration and AMD-V
  Extended Migration technologies. When enabled for a cluster, EVC ensures
  that all VMs are vMotion-compatible with the CPUs of all hosts in the
  cluster.<br>See <a href="vim.EVCMode.html">EVCMode</a><br>]]>
      </description-html>
            <property name="managedCluster" type-id-ref="vim.ClusterComputeResource"
      vmodl-name="managedCluster"
      >
      <description-html>
         <![CDATA[Cluster associated with this manager object.]]>
      </description-html>
      </property>

            <property name="evcState" type-id-ref="vim.cluster.EVCManager.EVCState"
      vmodl-name="evcState"
      >
      <description-html>
         <![CDATA[EVC-related state of the managed cluster.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.cluster.EVCManager.EVCState</nested-type-id-ref>
      <nested-type-id-ref>vim.cluster.EVCManager.CheckResult</nested-type-id-ref>
   <method name="ConfigureEvcMode"
      vmodl-name="configureEvc"
      privilege="Host.Inventory.EditCluster"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Set the EVC mode. If EVC is currently disabled, then this will enable
  EVC. The parameter must specify a key to one of the EVC modes listed in
  the <a href="vim.cluster.EVCManager.EVCState.html#supportedEVCMode">supportedEVCMode</a> array
  property. If there are no modes listed there,
  then EVC may not currently be enabled; reference the other properties
  in EVCState to determine what conditions are blocking EVC.
  <p>]]>
      </description-html>
      <parameter name="evcModeKey" type-id-ref="java.lang.String"
      vmodl-name="evcModeKey"
      version-id-ref="vim.version.version10"
      privilege="evcModeKey"
      >
      <description-html>
         <![CDATA[A key referencing the desired EVC mode.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.EVCConfigFault">
      <fault-description-html>
         <![CDATA[if configuring EVC failed. Typically, a more
  specific subclass is thrown.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="DisableEvcMode"
      vmodl-name="disableEvc"
      privilege="Host.Inventory.EditCluster"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Disable EVC. EVC may be disabled at any time.]]>
      </description-html>
   </method>
   <method name="CheckConfigureEvcMode"
      vmodl-name="checkConfigureEvc"
      is-array="true"
      is-optional="true"
      privilege="System.View"
      type-id-ref="vim.cluster.EVCManager.CheckResult"
      is-task="true"
      >
      <description-html>
         <![CDATA[Test the validity of configuring an EVC mode on the managed cluster.]]>
      </description-html>
      <parameter name="evcModeKey" type-id-ref="java.lang.String"
      vmodl-name="evcModeKey"
      version-id-ref="vim.version.version10"
      privilege="evcModeKey"
      >
      <description-html>
         <![CDATA[A key referencing the desired EVC mode.]]>
      </description-html>
      </parameter>
      <return-value-description-html>
         <![CDATA[The set of errors, if any, that would result from an attempt
          to configure the desired EVC mode. Each element in the returned
          array describes an error and the hosts to which it applies.]]>
      </return-value-description-html>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to
        monitor the operation.]]>
      </task-description-html>
   </method>
   <method name="CheckAddHostEvc"
      vmodl-name="checkAddHostEvc"
      is-array="true"
      is-optional="true"
      privilege="System.View"
      type-id-ref="vim.cluster.EVCManager.CheckResult"
      is-task="true"
      >
      <description-html>
         <![CDATA[Test the validity of adding a host into the managed cluster. Note that
  this method only tests EVC admission control; host-add may fail for
  other reasons.]]>
      </description-html>
      <parameter name="cnxSpec" type-id-ref="vim.host.ConnectSpec"
      vmodl-name="cnxSpec"
      version-id-ref="vim.version.version10"
      privilege="cnxSpec"
      >
      <description-html>
         <![CDATA[The spec that will be used to add the host.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.InvalidLogin">
      <fault-description-html>
         <![CDATA[if authentication with the host fails.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.HostConnectFault">
      <fault-description-html>
         <![CDATA[if an error occurred when attempting to connect
          to the host. Typically, a more specific subclass is thrown.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.GatewayConnectFault">
      <fault-description-html>
         <![CDATA[if the host is managed via gateway and
          attempts to connect to the host have failed. A more specific
          subclass may be thrown.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[The set of EVC-related errors, if any, that would result from
          an attempt to add the indicated host.]]>
      </return-value-description-html>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to
        monitor the operation.]]>
      </task-description-html>
   </method>
   </managed-object>
   <managed-object name="HostDirectoryStore"
      type-id="vim.host.DirectoryStore"
      vmodl-name="vim.host.DirectoryStore"
      version-id-ref="vim.version.version6"
      base-type-id="vim.host.AuthenticationStore"
      >
      <description-html>
         <![CDATA[<a href="vim.host.DirectoryStore.html">HostDirectoryStore</a> is a base class for
  directory-based authentication stores.]]>
      </description-html>
   </managed-object>
   <managed-object name="HostFirewallSystem"
      type-id="vim.host.FirewallSystem"
      vmodl-name="vim.host.FirewallSystem"
      version-id-ref="vim.version.version1"
      base-type-id="vim.ExtensibleManagedObject"
      >
      <description-html>
         <![CDATA[The FirewallSystem managed object describes the firewall configuration
  of the host.
  <p>
  The firewall should be configured first by setting the default policy and
  then by making exceptions to the policy to get the desired openness.]]>
      </description-html>
            <property name="firewallInfo" type-id-ref="vim.host.FirewallInfo"
      vmodl-name="firewallInfo"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Firewall configuration.]]>
      </description-html>
      </property>

   <method name="UpdateDefaultPolicy"
      vmodl-name="updateDefaultPolicy"
      privilege="Host.Config.NetService"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Updates the default firewall policy; unset fields are left unchanged.]]>
      </description-html>
      <parameter name="defaultPolicy" type-id-ref="vim.host.FirewallInfo.DefaultPolicy"
      vmodl-name="defaultPolicy"
      version-id-ref="vim.version.version1"
      privilege="defaultPolicy"
      >
      </parameter>
   </method>
   <method name="EnableRuleset"
      vmodl-name="enableRuleset"
      privilege="Host.Config.NetService"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Opens the firewall ports belonging to the specified ruleset.
  If the ruleset has a managed service with a policy of 'auto'
  that is not running, starts the service.]]>
      </description-html>
      <parameter name="id" type-id-ref="java.lang.String"
      vmodl-name="id"
      version-id-ref="vim.version.version1"
      privilege="id"
      >
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[if the ruleset ID is unknown.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[if an internal error happened when reconfigure the
                          ruleset.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="DisableRuleset"
      vmodl-name="disableRuleset"
      privilege="Host.Config.NetService"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Blocks the firewall ports belonging to the specified ruleset.
  If the ruleset has a managed service with a policy of 'auto'
  and all other rulesets used by the service are blocked, stops
  the service.]]>
      </description-html>
      <parameter name="id" type-id-ref="java.lang.String"
      vmodl-name="id"
      version-id-ref="vim.version.version1"
      privilege="id"
      >
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[if the ruleset ID is unknown.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[if an internal error happened when reconfigure the
                          ruleset.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="UpdateRuleset"
      vmodl-name="updateRuleset"
      version-id-ref="vim.version.version7"
      privilege="Host.Config.NetService"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Update the firewall ruleset specification.]]>
      </description-html>
      <parameter name="id" type-id-ref="java.lang.String"
      vmodl-name="id"
      version-id-ref="vim.version.version7"
      privilege="id"
      >
      </parameter>
      <parameter name="spec" type-id-ref="vim.host.Ruleset.RulesetSpec"
      vmodl-name="spec"
      version-id-ref="vim.version.version7"
      privilege="spec"
      >
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[if the ruleset ID is unknown]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[if the update of the ruleset failed.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="RefreshFirewall"
      vmodl-name="refresh"
      privilege="Host.Config.NetService"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Refresh the firewall information and settings to pick up any changes
  made directly on the host.]]>
      </description-html>
   </method>
   </managed-object>
   <managed-object name="VirtualMachineGuestCustomizationManager"
      type-id="vim.vm.GuestCustomizationManager"
      vmodl-name="vim.vm.GuestCustomizationManager"
      version-id-ref="vim.version.v6_8_7"
      >
      <description-html>
         <![CDATA[GuestCustomizationManager is a singleton managed object that provides APIs
  for guest customization of a running VM.]]>
      </description-html>
   <method name="CustomizeGuest"
      vmodl-name="customize"
      privilege="VirtualMachine.Provisioning.Customize"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Customize a running virtual machine.
  The virtual machine must be in the powered-on state and the VMware Tools
  must be running.
  The VM is typically a cloned VM after the InstantClone operation. See
    <a href="vim.VirtualMachine.html#instantClone">InstantClone_Task</a>.]]>
      </description-html>
      <parameter name="vm" type-id-ref="vim.VirtualMachine"
      vmodl-name="vm"
      version-id-ref="vim.version.v6_8_7"
      privilege="vm"
      >
      <description-html>
         <![CDATA[The Virtual Machine managed object reference.]]>
      </description-html>
      </parameter>
      <parameter name="auth" type-id-ref="vim.vm.guest.GuestAuthentication"
      vmodl-name="auth"
      version-id-ref="vim.version.v6_8_7"
      privilege="auth"
      >
      <description-html>
         <![CDATA[The guest authentication data.  See
    <a href="vim.vm.guest.GuestAuthentication.html">GuestAuthentication</a>.]]>
      </description-html>
      </parameter>
      <parameter name="spec" type-id-ref="vim.vm.customization.Specification"
      vmodl-name="spec"
      version-id-ref="vim.version.v6_8_7"
      privilege="spec"
      >
      <description-html>
         <![CDATA[Is a <a href="vim.vm.customization.Specification.html">CustomizationSpec</a>.
         It specifies the virtual machine's configuration.]]>
      </description-html>
      </parameter>
      <parameter name="configParams" type-id-ref="vim.option.OptionValue"
      vmodl-name="configParams"
      version-id-ref="vim.version.v6_8_7"
      is-array="true"
      is-optional="true"
      privilege="configParams"
      >
      <description-html>
         <![CDATA[addtional key/value pair list to support
         third party customization.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.TaskInProgress">
      <fault-description-html>
         <![CDATA[if the virtual machine is busy.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the operation cannot be performed because of the
          virtual machine's current state. For example, if the VMware
          Tools is not running.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidGuestLogin">
      <fault-description-html>
         <![CDATA[if the the guest authentication information
          was not accepted.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.GuestPermissionDenied">
      <fault-description-html>
         <![CDATA[if the provided guest authentication
          is not sufficient to perform the guest customization.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.CustomizationFault">
      <fault-description-html>
         <![CDATA[if a customization error occurs.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidPowerState">
      <fault-description-html>
         <![CDATA[if the VM is not powered on.]]>
      </fault-description-html>
      </fault>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to monitor
        the operation.]]>
      </task-description-html>
   </method>
   <method name="StartGuestNetwork"
      vmodl-name="startNetwork"
      privilege="VirtualMachine.Provisioning.Customize"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Start the network service in the guest, e.g. acquire IPs from DHCP.
  The virtual machine must be in the powered-on state and the VMware Tools
  must be running.
  The VM is typically a cloned VM after the InstantClone operation. See
    <a href="vim.VirtualMachine.html#instantClone">InstantClone_Task</a>.]]>
      </description-html>
      <parameter name="vm" type-id-ref="vim.VirtualMachine"
      vmodl-name="vm"
      version-id-ref="vim.version.v6_8_7"
      privilege="vm"
      >
      <description-html>
         <![CDATA[The Virtual Machine managed object reference.]]>
      </description-html>
      </parameter>
      <parameter name="auth" type-id-ref="vim.vm.guest.GuestAuthentication"
      vmodl-name="auth"
      version-id-ref="vim.version.v6_8_7"
      privilege="auth"
      >
      <description-html>
         <![CDATA[The guest authentication data.  See
    <a href="vim.vm.guest.GuestAuthentication.html">GuestAuthentication</a>.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.TaskInProgress">
      <fault-description-html>
         <![CDATA[if the virtual machine is busy.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the operation cannot be performed because of the
          virtual machine's current state. For example, if the VMware
          Tools is not running.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidGuestLogin">
      <fault-description-html>
         <![CDATA[if the the guest authentication information
          was not accepted.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.GuestPermissionDenied">
      <fault-description-html>
         <![CDATA[if the provided guest authentication
          is not sufficient to perform the guest customization.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.CustomizationFault">
      <fault-description-html>
         <![CDATA[if a customization error occurs.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidPowerState">
      <fault-description-html>
         <![CDATA[if the VM is not powered on.]]>
      </fault-description-html>
      </fault>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to monitor
        the operation.]]>
      </task-description-html>
   </method>
   <method name="AbortCustomization"
      vmodl-name="abortCustomization"
      privilege="VirtualMachine.Provisioning.Customize"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Abort any running guest customization process in the guest and remove
  the guest customization lock in the guest as well. As a result of the
  operation, the guest configuration may be left in an undefined state,
  which is however fine because guest customization is idempotent.
  A later successful guest customization can set the guest configuration
  to a valid state.

  The virtual machine must be in the powered-on state and the VMware Tools
  must be running.
  The VM is typically a cloned VM after the InstantClone operation. See
    <a href="vim.VirtualMachine.html#instantClone">InstantClone_Task</a>.]]>
      </description-html>
      <parameter name="vm" type-id-ref="vim.VirtualMachine"
      vmodl-name="vm"
      version-id-ref="vim.version.v6_8_7"
      privilege="vm"
      >
      <description-html>
         <![CDATA[The Virtual Machine managed object reference.]]>
      </description-html>
      </parameter>
      <parameter name="auth" type-id-ref="vim.vm.guest.GuestAuthentication"
      vmodl-name="auth"
      version-id-ref="vim.version.v6_8_7"
      privilege="auth"
      >
      <description-html>
         <![CDATA[The guest authentication data.  See
    <a href="vim.vm.guest.GuestAuthentication.html">GuestAuthentication</a>.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.TaskInProgress">
      <fault-description-html>
         <![CDATA[if the virtual machine is busy.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the operation cannot be performed because of the
          virtual machine's current state. For example, if the VMware
          Tools is not running.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidGuestLogin">
      <fault-description-html>
         <![CDATA[if the the guest authentication information
          was not accepted.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.GuestPermissionDenied">
      <fault-description-html>
         <![CDATA[if the provided guest authentication
          is not sufficient to perform the guest customization.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.CustomizationFault">
      <fault-description-html>
         <![CDATA[if a customization error occurs.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidPowerState">
      <fault-description-html>
         <![CDATA[if the VM is not powered on.]]>
      </fault-description-html>
      </fault>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to monitor
        the operation.]]>
      </task-description-html>
   </method>
   </managed-object>
   <managed-object name="CustomizationSpecManager"
      type-id="vim.CustomizationSpecManager"
      vmodl-name="vim.CustomizationSpecManager"
      version-id-ref="vim.version.version1"
      >
      <description-html>
         <![CDATA[The CustomizationSpecManager managed object is used to manage
 customization specifications stored on the VirtualCenter server.]]>
      </description-html>
            <property name="info" type-id-ref="vim.CustomizationSpecInfo"
      vmodl-name="info"
      is-array="true"
      is-optional="true"
      privilege="VirtualMachine.Provisioning.ReadCustSpecs"
      >
      <description-html>
         <![CDATA[Gets a list of information on available specifications.]]>
      </description-html>
      </property>

            <property name="encryptionKey" type-id-ref="BYTE"
      vmodl-name="encryptionKey"
      is-array="true"
      is-optional="true"
      privilege="System.View"
      >
      <description-html>
         <![CDATA[Gets a binary public encryption key that can be used to encrypt
 passwords in stored specifications.]]>
      </description-html>
      </property>

   <method name="DoesCustomizationSpecExist"
      vmodl-name="exists"
      privilege="VirtualMachine.Provisioning.ReadCustSpecs"
      type-id-ref="BOOLEAN"
      >
      <description-html>
         <![CDATA[Whether or not a specification exists.]]>
      </description-html>
      <parameter name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      version-id-ref="vim.version.version1"
      privilege="name"
      >
      </parameter>
   </method>
   <method name="GetCustomizationSpec"
      vmodl-name="get"
      privilege="VirtualMachine.Provisioning.ReadCustSpecs"
      type-id-ref="vim.CustomizationSpecItem"
      >
      <description-html>
         <![CDATA[Obtains a specification for the given name.]]>
      </description-html>
      <parameter name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      version-id-ref="vim.version.version1"
      privilege="name"
      >
      <description-html>
         <![CDATA[Unique name identifying the requested customization specification.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      </fault>
   </method>
   <method name="CreateCustomizationSpec"
      vmodl-name="create"
      privilege="VirtualMachine.Provisioning.ModifyCustSpecs"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Creates a new specification.]]>
      </description-html>
      <parameter name="item" type-id-ref="vim.CustomizationSpecItem"
      vmodl-name="item"
      version-id-ref="vim.version.version1"
      privilege="item"
      >
      </parameter>
      <fault type-id-ref="vim.fault.CustomizationFault">
      </fault>
      <fault type-id-ref="vim.fault.AlreadyExists">
      </fault>
      <fault type-id-ref="vim.fault.CannotDecryptPasswords">
      </fault>
   </method>
   <method name="OverwriteCustomizationSpec"
      vmodl-name="overwrite"
      privilege="VirtualMachine.Provisioning.ModifyCustSpecs"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Overwrites an existing specification, possibly after retrieving
 (by using 'get') and editing it. If, based on the item's changeVersion
 value, the overwrite process detects that the specification has changed
 since its retrieval, then the API uses the SpecModified exception to
 warn the client that he might overwrite another client's change.]]>
      </description-html>
      <parameter name="item" type-id-ref="vim.CustomizationSpecItem"
      vmodl-name="item"
      version-id-ref="vim.version.version1"
      privilege="item"
      >
      </parameter>
      <fault type-id-ref="vim.fault.CustomizationFault">
      </fault>
      <fault type-id-ref="vim.fault.NotFound">
      </fault>
      <fault type-id-ref="vim.fault.ConcurrentAccess">
      </fault>
      <fault type-id-ref="vim.fault.CannotDecryptPasswords">
      </fault>
   </method>
   <method name="DeleteCustomizationSpec"
      vmodl-name="delete"
      privilege="VirtualMachine.Provisioning.ModifyCustSpecs"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Deletes a specification.]]>
      </description-html>
      <parameter name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      version-id-ref="vim.version.version1"
      privilege="name"
      >
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      </fault>
   </method>
   <method name="DuplicateCustomizationSpec"
      vmodl-name="duplicate"
      privilege="VirtualMachine.Provisioning.ModifyCustSpecs"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Duplicates a specification.]]>
      </description-html>
      <parameter name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      version-id-ref="vim.version.version1"
      privilege="name"
      >
      </parameter>
      <parameter name="newName" type-id-ref="java.lang.String"
      vmodl-name="newName"
      version-id-ref="vim.version.version1"
      privilege="newName"
      >
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      </fault>
      <fault type-id-ref="vim.fault.AlreadyExists">
      </fault>
   </method>
   <method name="RenameCustomizationSpec"
      vmodl-name="rename"
      privilege="VirtualMachine.Provisioning.ModifyCustSpecs"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Renames a specification.]]>
      </description-html>
      <parameter name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      version-id-ref="vim.version.version1"
      privilege="name"
      >
      </parameter>
      <parameter name="newName" type-id-ref="java.lang.String"
      vmodl-name="newName"
      version-id-ref="vim.version.version1"
      privilege="newName"
      >
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      </fault>
      <fault type-id-ref="vim.fault.AlreadyExists">
      </fault>
   </method>
   <method name="CustomizationSpecItemToXml"
      vmodl-name="specItemToXml"
      privilege="System.View"
      type-id-ref="java.lang.String"
      >
      <description-html>
         <![CDATA[Converts a specification item to XML text]]>
      </description-html>
      <parameter name="item" type-id-ref="vim.CustomizationSpecItem"
      vmodl-name="item"
      version-id-ref="vim.version.version1"
      privilege="item"
      >
      </parameter>
   </method>
   <method name="XmlToCustomizationSpecItem"
      vmodl-name="xmlToSpecItem"
      privilege="System.View"
      type-id-ref="vim.CustomizationSpecItem"
      >
      <description-html>
         <![CDATA[Converts an XML string to a specification item]]>
      </description-html>
      <parameter name="specItemXml" type-id-ref="java.lang.String"
      vmodl-name="specItemXml"
      version-id-ref="vim.version.version1"
      privilege="specItemXml"
      >
      </parameter>
      <fault type-id-ref="vim.fault.CustomizationFault">
      </fault>
   </method>
   <method name="CheckCustomizationResources"
      vmodl-name="checkResources"
      privilege="System.View"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Validate that required resources are available on the server to customize a
 particular guest operating system. These would include sysprep for Windows
 and the debugfs and changefs volume editors for Linux guests.]]>
      </description-html>
      <parameter name="guestOs" type-id-ref="java.lang.String"
      vmodl-name="guestOs"
      version-id-ref="vim.version.version1"
      privilege="guestOs"
      >
      <description-html>
         <![CDATA[Short name from the guest OS descriptor list describing the OS
 we intend to customize.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.CustomizationFault">
      </fault>
      <fault type-id-ref="vim.fault.MissingLinuxCustResources">
      </fault>
      <fault type-id-ref="vim.fault.MissingWindowsCustResources">
      </fault>
      <fault type-id-ref="vim.fault.UncustomizableGuest">
      </fault>
   </method>
   </managed-object>
   <managed-object name="HostAutoStartManager"
      type-id="vim.host.AutoStartManager"
      vmodl-name="vim.host.AutoStartManager"
      version-id-ref="vim.version.version1"
      >
      <description-html>
         <![CDATA[The AutoStartManager allows clients to invoke and set up the auto-start/auto-stop
  order of virtual machines on a single host. Virtual machines configured to use
  auto-start are automatically started or stopped when the host is started or shut
  down. The AutoStartManager is available when clients connect directly to a host,
  such as an ESX Server machine or through VirtualCenter.]]>
      </description-html>
            <property name="config" type-id-ref="vim.host.AutoStartManager.Config"
      vmodl-name="config"
      >
      </property>

      <nested-type-id-ref>vim.host.AutoStartManager.Action</nested-type-id-ref>
      <nested-type-id-ref>vim.host.AutoStartManager.SystemDefaults</nested-type-id-ref>
      <nested-type-id-ref>vim.host.AutoStartManager.AutoPowerInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.host.AutoStartManager.Config</nested-type-id-ref>
   <method name="ReconfigureAutostart"
      vmodl-name="reconfigure"
      privilege="Host.Config.AutoStart"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Changes the power-on or power-off sequence and system defaults. The specification
  is an incremental change to the current configuration.
  <p>
  If systemDefaults are included, only values that are specified in the
  specification are changed.
  <p>
  For the spec.powerInfo array, each element is interpreted as an incremental
  change and the changes are processed sequentially. It is not an error to remove a
  non-existing virtual machine. If both startAction and stopAction are set to
  none, then the virtual machine is removed from the configuration.
  <p>
  A virtual machine's position in the order can be changed either by assigning the
  virtual machine a different position in the order or removing the machine from
  the order. When a virtual machine's position changes, all other virtual machines'
  positions may be affected as they move to new positions relative to each other.
  <p>]]>
      </description-html>
      <parameter name="spec" type-id-ref="vim.host.AutoStartManager.Config"
      vmodl-name="spec"
      version-id-ref="vim.version.version1"
      privilege="spec"
      >
      <description-html>
         <![CDATA[List of changes to defaults and auto-start/auto-stop order.]]>
      </description-html>
      </parameter>
   </method>
   <method name="AutoStartPowerOn"
      vmodl-name="autoPowerOn"
      privilege="Host.Config.AutoStart"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Powers-on virtual machines according to the current AutoStart configuration.
  <p>
  See the description of the (@link vim.host.AutoStartManager.AutoPowerInfo)
  data object type for more information on Auto power-on behavior.]]>
      </description-html>
   </method>
   <method name="AutoStartPowerOff"
      vmodl-name="autoPowerOff"
      privilege="Host.Config.AutoStart"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Powers-off virtual machines according to the current AutoStart configuration.
  <p>
  See the description of the (@link vim.host.AutoStartManager.AutoPowerInfo)
  data object type for more information on Auto power-off behavior.]]>
      </description-html>
   </method>
   </managed-object>
   <managed-object name="EnvironmentBrowser"
      type-id="vim.EnvironmentBrowser"
      vmodl-name="vim.EnvironmentBrowser"
      version-id-ref="vim.version.version1"
      >
      <description-html>
         <![CDATA[This managed object type provides access to the environment that a
  ComputeResource presents for creating and configuring a virtual machine.
  <p>
  The environment consists of three main components:
  <ul>
  <li>The virtual machine configuration options. Each vim.vm.ConfigOption
      describes the execution environment for a virtual machine, the particular
      set of virtual hardware that is supported. A
      ComputeResource might support multiple sets. Access is provided
      through the configOptionDescriptor property and the
      <a href="vim.EnvironmentBrowser.html#queryConfigOption">QueryConfigOption</a> operation.
  <li>The supported device targets. Each virtual device specified in the virtual
      machine needs to be hooked up to a "physical" counterpart. For networks,
      this means choosing a network name; for a virtual CD-rom this might be
      an ISO image, etc.  The environment browser provides access to the device
      targets through the
      <a href="vim.EnvironmentBrowser.html#queryConfigTarget">QueryConfigTarget</a> operation.
  <li>Storage locations and files. A selection of locations where the virtual machine
      files can be stored, and the possibility to browse for existing virtual disks
      and ISO images. The datastore browser, provided by the datastoreBrowser
      property, provides access to the contents of one or more datastores. The
      items in a datastore are files that contain configuration, virtual disk, and
      the other data associated with a virtual machine.
  <li>The capabilities supported by the ComputeResource to which the virtual
      machine belongs.
  </ul>]]>
      </description-html>
            <property name="datastoreBrowser" type-id-ref="vim.host.DatastoreBrowser"
      vmodl-name="datastoreBrowser"
      is-optional="true"
      privilege="System.View"
      >
      <description-html>
         <![CDATA[DatastoreBrowser to browse datastores that are available on this entity.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.EnvironmentBrowser.ConfigOptionQuerySpec</nested-type-id-ref>
   <method name="QueryConfigOptionDescriptor"
      vmodl-name="queryConfigOptionDescriptor"
      is-array="true"
      is-optional="true"
      privilege="System.View"
      type-id-ref="vim.vm.ConfigOptionDescriptor"
      >
      <description-html>
         <![CDATA[The list of ConfigOption keys available on this entity.]]>
      </description-html>
   </method>
   <method name="QueryConfigOption"
      vmodl-name="queryConfigOption"
      is-optional="true"
      privilege="System.View"
      type-id-ref="vim.vm.ConfigOption"
      >
      <description-html>
         <![CDATA[Query for a specific virtual machine configuration option (the ConfigOption).
  <p>
  If the EnvironmentBrowser is from a ComputeResource or ClusterComputeResource,
  the key or host, or both arguments can be used to return the required config
  options. If a key is specified, then the ConfigOption corresponding to that key
  value is  returned. If a host is specified, then the default ConfigOption for
  that host is returned. If key and host both are specified, the ConfigOption
  corresponding to the given key for that host is returned. If neither is specified,
  then the default ConfigOption for this environment browser is returned. Typically,
  the default contains the options for the most recent virtual hardware
  supported.
  <p>
  If the EnvironmentBrowser is from a VirtualMachine neither a host nor a
  key should be specified.]]>
      </description-html>
      <parameter name="key" type-id-ref="java.lang.String"
      vmodl-name="key"
      version-id-ref="vim.version.version1"
      is-optional="true"
      privilege="key"
      >
      <description-html>
         <![CDATA[The key found in the VirtualMachineConfigOptionDescriptor,
             obtained by invoking the
             <a href="vim.EnvironmentBrowser.html#queryConfigOptionDescriptor">QueryConfigOptionDescriptor</a> operation.]]>
      </description-html>
      </parameter>
      <parameter name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      version-id-ref="vim.version.version1"
      is-optional="true"
      privilege="host"
      >
      <description-html>
         <![CDATA[The host whose ConfigOption is requested.]]>
      </description-html>
      </parameter>
      <return-value-description-html>
         <![CDATA[Returns the ConfigOption object. If invoked on a cluster with no hosts, or
          if the ConfigOption with given key is not found for the given host,  null
          is returned.]]>
      </return-value-description-html>
   </method>
   <method name="QueryConfigOptionEx"
      vmodl-name="queryConfigOptionEx"
      version-id-ref="vim.version.version10"
      is-optional="true"
      privilege="System.View"
      type-id-ref="vim.vm.ConfigOption"
      >
      <description-html>
         <![CDATA[Query for a virtual machine configuration <a href="vim.vm.ConfigOption.html">option</a>
  matching the key or host or both given in the
  <a href="vim.EnvironmentBrowser.ConfigOptionQuerySpec.html">EnvironmentBrowserConfigOptionQuerySpec</a>.
  For more details see
  <a href="vim.EnvironmentBrowser.html#queryConfigOption">QueryConfigOption</a>
  <p>
  If the Environment Browser belongs to a virtual machine and the spec argument
  is omitted, the method returns the ConfigOption object corresponding to the
  vmx version of the virutal machine and the
  <a href="vim.vm.ConfigOption.html#guestOSDescriptor">guestOSDescriptor</a> list contains
  only the guestId of the virutal machine.]]>
      </description-html>
      <parameter name="spec" type-id-ref="vim.EnvironmentBrowser.ConfigOptionQuerySpec"
      vmodl-name="spec"
      version-id-ref="vim.version.version10"
      is-optional="true"
      privilege="spec"
      >
      <description-html>
         <![CDATA[Search criteria and filters to control the result.
              If a <a href="vim.EnvironmentBrowser.ConfigOptionQuerySpec.html#key">key</a> or
              <a href="vim.EnvironmentBrowser.ConfigOptionQuerySpec.html#host">host</a> (or both)
              are specified, they will be used to search for a config option.
              If <a href="vim.EnvironmentBrowser.ConfigOptionQuerySpec.html#guestId">guestId</a>
              is nonempty, the <a href="vim.vm.ConfigOption.html#guestOSDescriptor">guestOSDescriptor</a>
              array of the config option is filtered to match against the guest
              IDs in the spec. If there is no match, the whole list is returned.
              If the spec argument is omitted, the default
              <a href="vim.vm.ConfigOption.html">VirtualMachineConfigOption</a> for this environment browser is
              returned.]]>
      </description-html>
      </parameter>
      <return-value-description-html>
         <![CDATA[Returns the <a href="vim.vm.ConfigOption.html">VirtualMachineConfigOption</a> object. If invoked on a cluster
          with no hosts, or if the <a href="vim.vm.ConfigOption.html">VirtualMachineConfigOption</a> with given key is
          not found for the given host, null is returned.]]>
      </return-value-description-html>
   </method>
   <method name="QueryConfigTarget"
      vmodl-name="queryConfigTarget"
      is-optional="true"
      privilege="System.View"
      type-id-ref="vim.vm.ConfigTarget"
      >
      <description-html>
         <![CDATA[Queries for information about a specific target, a "physical" device that
  can be used to back virtual devices. The ConfigTarget that is returned specifies
  the set of values that can be used in the device backings to connect the virtual
  machine to physical (or logical) host devices.
  <p>
  If the EnvironmentBrowser is from a ComputeResource or ClusterComputeResource,
  the host argument can be used to return the ConfigTarget provided by a particular
  host in the compute resource or cluster. If host is not specified and the
  EnvironmentBrowser is from a ComputeResource or ClusterComputeResource,
  then the union of all the devices is returned and the
  vim.vm.TargetInfo.configurationTag field indicates  how widely the device is
  available  across the compute resource or cluster.
  <p>
  If the EnvironmentBrowser is from a VirtualMachine a host should not be specified.]]>
      </description-html>
      <parameter name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      version-id-ref="vim.version.version1"
      is-optional="true"
      privilege="host"
      >
      <description-html>
         <![CDATA[If specified, the host whose default BackingInfo is requested.]]>
      </description-html>
      </parameter>
      <return-value-description-html>
         <![CDATA[Returns the ConfigTarget object. If invoked on a cluster with no hosts,
          null is returned.]]>
      </return-value-description-html>
   </method>
   <method name="QueryTargetCapabilities"
      vmodl-name="queryTargetCapabilities"
      version-id-ref="vim.version.version5"
      is-optional="true"
      privilege="System.View"
      type-id-ref="vim.host.Capability"
      >
      <description-html>
         <![CDATA[Queries for information on the capabilities supported by the ComputeResource
  associated with the EnvironmentBrowser.
  <p>
  If the EnvironmentBrowser is from a ComputeResource or ClusterComputeResource,
  the host argument can be used to return the capabilities associated with a
  specific host in the compute resource or cluster. If the host argument is not
  specified and the EnvironmentBrowser is from a ComputeResource or
  ClusterComputeResource, then the intersection of the capabilities supported by
  all the hosts in the cluster is returned. If the EnvironmentBrowser is from
  a VirtualMachine, the compute resource associated with the virtual machine
  will be queried for its capabilities.
  <p>
  If the EnvironmentBrowser is from a VirtualMachine a host should not be specified.]]>
      </description-html>
      <parameter name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      version-id-ref="vim.version.version5"
      is-optional="true"
      privilege="host"
      >
      <description-html>
         <![CDATA[If specified, the host whose capabilities are requested.]]>
      </description-html>
      </parameter>
      <return-value-description-html>
         <![CDATA[Returns the set of capabilities supported by the ComputeResource
          associated with the EnvironmentBrowser. If invoked on a cluster with
          no hosts, null is returned.]]>
      </return-value-description-html>
   </method>
   </managed-object>
   <managed-object name="OvfManager"
      type-id="vim.OvfManager"
      vmodl-name="vim.OvfManager"
      version-id-ref="vim.version.version5"
      >
      <description-html>
         <![CDATA[Service interface to parse and generate OVF descriptors.
 <p>
 The purpose of this interface is to make it easier for callers to import VMs and
 vApps from OVF packages and to export VI packages to OVF. In the following
 description, the term "client" is used to mean any caller of the interface.
 <p>
 This interface only converts between OVF and VI types. To actually import and export
 entities, use <a href="vim.ResourcePool.html#importVApp">ImportVApp</a>,
 <a href="vim.VirtualMachine.html#exportVm">ExportVm</a> and
 <a href="vim.VirtualApp.html#exportVApp">ExportVApp</a>.

 <h2>Import</h2>
 For the import scenario, the typical sequence of events is as follows:
 <p>
 The client calls parseDescriptor to obtain information about the OVF descriptor. This
 typically includes information (such as a list of networks) that must be mapped to VI
 infrastructure entities.
 <p>
 The OVF descriptor is validated against the OVF Specification, and any errors or
 warnings are returned as part of the ParseResult. For example, the parser might
 encounter a section marked required that it does not understand, or the XML descriptor
 might be malformed.
 <p>
 The client decides on network mappings, datastore, properties etc. It then calls
 createImportSpec to obtain the parameters needed to call
 <a href="vim.ResourcePool.html#importVApp">ImportVApp</a>.
 <p>
 If any warnings are present, the client will review these and decide whether to
 proceed or not. If errors are present, the ImportSpec will be missing, so
 the client is forced to give up or fix the problems and then try again.
 <p>
 The client now calls <a href="vim.ResourcePool.html#importVApp">ImportVApp</a>, passing the ImportSpec as a parameter. This will create
 the virtual machines and <a href="vim.VirtualApp.html">VirtualApp</a> objects in VI and return locations
 to which the files of the entity can be uploaded. It also returns a lease that
 controls the duration of the lock taken on the newly created inventory objects. When
 all files have been uploaded, the client must release this lease.

 <h2>Export</h2>
 Creating the OVF descriptor is the last part of exporting an entity to OVF. At this
 point, the client has already downloaded all files for the entity, optionally
 compressing and/or chunking them (however, the client may do a "dry run" of creating
 the descriptor before downloading the files. See <a href="vim.OvfManager.html#createDescriptor">CreateDescriptor</a>).
 <p>
 In addition to the entity reference itself, information about the choices made on
 these files is passed to createDescriptor as a list of OvfFile instances.
 <p>
 The client must inspect and act upon warnings and errors as previously described.
 <p>
 No matter if the export succeeds or fails, the client is responsible for releasing the
 shared state lock taken on the entity (by <a href="vim.VirtualMachine.html#exportVm">ExportVm</a> or <a href="vim.VirtualApp.html#exportVApp">ExportVApp</a>) during the export.

 <h2>Error handling</h2>
 All result types contain warning and error lists. Warnings do not cause processing to
 fail, but the caller (typically, the user of a GUI client) may choose to reject the
 result based on the warnings issued.
 <p>
 Errors cause processing to abort by definition.]]>
      </description-html>
            <property name="ovfImportOption" type-id-ref="vim.OvfManager.OvfOptionInfo"
      vmodl-name="ovfImportOption"
      version-id-ref="vim.version.version8"
      is-array="true"
      is-optional="true"
      privilege="System.View"
      >
      <description-html>
         <![CDATA[Returns an array of <a href="vim.OvfManager.OvfOptionInfo.html">OvfOptionInfo</a> object that specifies what options the server
 support for modifing/relaxing the OVF import process.
 <p>]]>
      </description-html>
      </property>

            <property name="ovfExportOption" type-id-ref="vim.OvfManager.OvfOptionInfo"
      vmodl-name="ovfExportOption"
      version-id-ref="vim.version.version8"
      is-array="true"
      is-optional="true"
      privilege="System.View"
      >
      <description-html>
         <![CDATA[Returns an array of <a href="vim.OvfManager.OvfOptionInfo.html">OvfOptionInfo</a> object that specifies what options the server
 support for exporting an OVF descriptor.
 <p>]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.OvfManager.OvfOptionInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.OvfManager.DeploymentOption</nested-type-id-ref>
      <nested-type-id-ref>vim.OvfManager.CommonParams</nested-type-id-ref>
      <nested-type-id-ref>vim.OvfManager.ValidateHostParams</nested-type-id-ref>
      <nested-type-id-ref>vim.OvfManager.ValidateHostResult</nested-type-id-ref>
      <nested-type-id-ref>vim.OvfManager.ParseDescriptorParams</nested-type-id-ref>
      <nested-type-id-ref>vim.OvfManager.ParseDescriptorResult</nested-type-id-ref>
      <nested-type-id-ref>vim.OvfManager.NetworkInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.OvfManager.CreateImportSpecParams</nested-type-id-ref>
      <nested-type-id-ref>vim.OvfManager.ResourceMap</nested-type-id-ref>
      <nested-type-id-ref>vim.OvfManager.NetworkMapping</nested-type-id-ref>
      <nested-type-id-ref>vim.OvfManager.CreateImportSpecResult</nested-type-id-ref>
      <nested-type-id-ref>vim.OvfManager.FileItem</nested-type-id-ref>
      <nested-type-id-ref>vim.OvfManager.CreateDescriptorParams</nested-type-id-ref>
      <nested-type-id-ref>vim.OvfManager.CreateDescriptorResult</nested-type-id-ref>
      <nested-type-id-ref>vim.OvfManager.OvfFile</nested-type-id-ref>
   <method name="ValidateHost"
      vmodl-name="validateHost"
      privilege="System.View"
      type-id-ref="vim.OvfManager.ValidateHostResult"
      >
      <description-html>
         <![CDATA[Validate that the given OVF can be imported on the host.
 <p>
 More specifically, this means whether or not the host supports the virtual hardware
 required by the OVF descriptor.]]>
      </description-html>
      <parameter name="ovfDescriptor" type-id-ref="java.lang.String"
      vmodl-name="ovfDescriptor"
      version-id-ref="vim.version.version5"
      privilege="ovfDescriptor"
      >
      <description-html>
         <![CDATA[The OVF descriptor to examine.]]>
      </description-html>
      </parameter>
      <parameter name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      version-id-ref="vim.version.version5"
      privilege="host"
      >
      <description-html>
         <![CDATA[The host to validate against.]]>
      </description-html>
      </parameter>
      <parameter name="vhp" type-id-ref="vim.OvfManager.ValidateHostParams"
      vmodl-name="vhp"
      version-id-ref="vim.version.version5"
      privilege="vhp"
      >
      <description-html>
         <![CDATA[Additional parameters for validateHost, wrapped in a ValidateHostParams
            instance.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.TaskInProgress">
      <fault-description-html>
         <![CDATA[if a required managed entity is busy.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.ConcurrentAccess">
      <fault-description-html>
         <![CDATA[if a concurrency issue prevents the operation from
         succeeding.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.FileFault">
      <fault-description-html>
         <![CDATA[if there is a generic file error]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the operation failed due to the current state of the system.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[A ValidateResult instance containing any warnings and/or errors from the
         validation.]]>
      </return-value-description-html>
   </method>
   <method name="ParseDescriptor"
      vmodl-name="parseDescriptor"
      privilege="System.View"
      type-id-ref="vim.OvfManager.ParseDescriptorResult"
      >
      <description-html>
         <![CDATA[Parse the OVF descriptor and return as much information about it as possible
 without knowing the host on which it will be imported.
 <p>
 Typically, this method is called once without a deploymentOption parameter to
 obtain the values for the default deployment option. Part of the result is the list
 of possible deployment options. To obtain the values for a particular deployment
 option, call this method again, specifying that option.]]>
      </description-html>
      <parameter name="ovfDescriptor" type-id-ref="java.lang.String"
      vmodl-name="ovfDescriptor"
      version-id-ref="vim.version.version5"
      privilege="ovfDescriptor"
      >
      <description-html>
         <![CDATA[The OVF descriptor to examine.]]>
      </description-html>
      </parameter>
      <parameter name="pdp" type-id-ref="vim.OvfManager.ParseDescriptorParams"
      vmodl-name="pdp"
      version-id-ref="vim.version.version5"
      privilege="pdp"
      >
      <description-html>
         <![CDATA[Additional parameters for parseDescriptor, wrapped in an instance of
            ParseDescriptorParams.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.TaskInProgress">
      <fault-description-html>
         <![CDATA[if a required managed entity is busy.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.VmConfigFault">
      <fault-description-html>
         <![CDATA[if a configuration issue prevents the operation from
         succeeding. Typically, a more specific subclass is thrown.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.ConcurrentAccess">
      <fault-description-html>
         <![CDATA[if a concurrency issue prevents the operation from
         succeeding.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.FileFault">
      <fault-description-html>
         <![CDATA[if there is a generic file error]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the operation failed due to the current state of the system.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[The information about the descriptor]]>
      </return-value-description-html>
   </method>
   <method name="CreateImportSpec"
      vmodl-name="createImportSpec"
      privilege="System.View"
      type-id-ref="vim.OvfManager.CreateImportSpecResult"
      >
      <description-html>
         <![CDATA[Validate the OVF descriptor against the hardware supported by the
 host system. If the validation succeeds, return a result containing:
 <ul>
 <li>An <a href="vim.ImportSpec.html">ImportSpec</a> to use when importing the entity.</li>
 <li>A list of items to upload (for example disk backing files, ISO images etc.)</li>
 </ul>]]>
      </description-html>
      <parameter name="ovfDescriptor" type-id-ref="java.lang.String"
      vmodl-name="ovfDescriptor"
      version-id-ref="vim.version.version5"
      privilege="ovfDescriptor"
      >
      <description-html>
         <![CDATA[The OVF descriptor of the entity.]]>
      </description-html>
      </parameter>
      <parameter name="resourcePool" type-id-ref="vim.ResourcePool"
      vmodl-name="resourcePool"
      version-id-ref="vim.version.version5"
      privilege="resourcePool"
      >
      <description-html>
         <![CDATA[The resource pool to import the entity to. May be a
                     vApp.]]>
      </description-html>
      </parameter>
      <parameter name="datastore" type-id-ref="vim.Datastore"
      vmodl-name="datastore"
      version-id-ref="vim.version.version5"
      privilege="datastore"
      >
      <description-html>
         <![CDATA[The datastore on which to create the inventory objects
                  of the entity, for example "storage1". The privilege
                  Datastore.AllocateSpace is required on the datastore.]]>
      </description-html>
      </parameter>
      <parameter name="cisp" type-id-ref="vim.OvfManager.CreateImportSpecParams"
      vmodl-name="cisp"
      version-id-ref="vim.version.version5"
      privilege="cisp"
      >
      <description-html>
         <![CDATA[Additional parameters to the method, bundled in an instance of
             CreateImportSpecParams.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.TaskInProgress">
      <fault-description-html>
         <![CDATA[if a required managed entity is busy.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.VmConfigFault">
      <fault-description-html>
         <![CDATA[if a configuration issue prevents the operation from
         succeeding. Typically, a more specific subclass is thrown.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.ConcurrentAccess">
      <fault-description-html>
         <![CDATA[if a concurrency issue prevents the operation from
         succeeding.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.FileFault">
      <fault-description-html>
         <![CDATA[if there is a generic file error]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the operation failed due to the current state of the system.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidDatastore">
      </fault>
   </method>
   <method name="CreateDescriptor"
      vmodl-name="createDescriptor"
      privilege="System.View"
      type-id-ref="vim.OvfManager.CreateDescriptorResult"
      >
      <description-html>
         <![CDATA[Create an OVF descriptor for the specified ManagedEntity, which may be a
 <a href="vim.VirtualMachine.html">VirtualMachine</a> or a <a href="vim.VirtualApp.html">VirtualApp</a>.
 <p>
 To create the complete OVF descriptor, the client must already have downloaded the
 files that are part of the entity, because information about these files
 (compression, chunking, filename etc.) is part of the descriptor.
 <p>
 However, these downloads can be quite time-consuming, so if the descriptor for some
 reason cannot be generated, the client will want to know this before downloading
 the files.
 <p>
 For this reason, the client may do an initial "dry run" with the ovfFiles
 parameter unset. Default filenames will then be used in the descriptor, and the
 client can examine any warnings and/or errors before downloading the files.
 <p>
 After the final call to this method, client must release the lock on the entity
 given to it by <a href="vim.VirtualMachine.html#exportVm">ExportVm</a> or <a href="vim.VirtualApp.html#exportVApp">ExportVApp</a>.]]>
      </description-html>
      <parameter name="obj" type-id-ref="vim.ManagedEntity"
      vmodl-name="obj"
      version-id-ref="vim.version.version5"
      privilege="obj"
      >
      <description-html>
         <![CDATA[The entity to export. Supported types are <a href="vim.VirtualMachine.html">VirtualMachine</a>
            and <a href="vim.VirtualApp.html">VirtualApp</a>.]]>
      </description-html>
      </parameter>
      <parameter name="cdp" type-id-ref="vim.OvfManager.CreateDescriptorParams"
      vmodl-name="cdp"
      version-id-ref="vim.version.version5"
      privilege="cdp"
      >
      <description-html>
         <![CDATA[Parameters to the method, bundled in an instance of
            CreateDescriptorParams.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.TaskInProgress">
      <fault-description-html>
         <![CDATA[if a required managed entity is busy.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.VmConfigFault">
      <fault-description-html>
         <![CDATA[if a configuration issue prevents the operation from
         succeeding. Typically, a more specific subclass is thrown.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.ConcurrentAccess">
      <fault-description-html>
         <![CDATA[if a concurrency issue prevents the operation from
         succeeding.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.FileFault">
      <fault-description-html>
         <![CDATA[if there is a generic file error]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the operation failed due to the current state of the system.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[An instance of CreateDescriptorResult]]>
      </return-value-description-html>
   </method>
   </managed-object>
   <managed-object name="HostEsxAgentHostManager"
      type-id="vim.host.EsxAgentHostManager"
      vmodl-name="vim.host.EsxAgentHostManager"
      version-id-ref="vim.version.version7"
      >
      <description-html>
         <![CDATA[This managed object type is used to configure agent virtual machine resource
  configuration, such as what network and datastore to use for agent virtual
  machines.]]>
      </description-html>
            <property name="configInfo" type-id-ref="vim.host.EsxAgentHostManager.ConfigInfo"
      vmodl-name="configInfo"
      privilege="Host.Config.Settings"
      >
      <description-html>
         <![CDATA[Configuration of agent virtual machine resources]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.host.EsxAgentHostManager.ConfigInfo</nested-type-id-ref>
   <method name="EsxAgentHostManagerUpdateConfig"
      vmodl-name="updateConfig"
      privilege="Host.Config.Settings"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Update the host's ESX agent configuration.

  The entire configuration must be set each time since all values are
  overwritten. E.g. a field set to null clears the value on the host.]]>
      </description-html>
      <parameter name="configInfo" type-id-ref="vim.host.EsxAgentHostManager.ConfigInfo"
      vmodl-name="configInfo"
      version-id-ref="vim.version.version7"
      privilege="configInfo"
      >
      <description-html>
         <![CDATA[configuration of agent virtual machine resources]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[if an error occurs.]]>
      </fault-description-html>
      </fault>
   </method>
   </managed-object>
   <managed-object name="HostAuthenticationManager"
      type-id="vim.host.AuthenticationManager"
      vmodl-name="vim.host.AuthenticationManager"
      version-id-ref="vim.version.version6"
      >
      <description-html>
         <![CDATA[The <a href="vim.host.AuthenticationManager.html">HostAuthenticationManager</a> managed object provides
  access to Active Directory configuration information for an
  ESX host. It also provides access to methods for adding a host
  to or removing a host from an Active Directory domain.
  <p>
  The vSphere API supports Microsoft Active Directory management
  of authentication for ESX hosts. To integrate an ESX host
  into an Active Directory environment, you use an Active
  Directory account that has the authority to add
  a computer to a domain. The ESX Server locates the Active
  Directory domain controller. When you add a host to a domain,
  you only need to specify the domain and the account
  user name and password.
  <p>
  There are two approaches that you can use to add an ESX host
  to or remove a host from an Active Directory domain.
  <ul>
  <li><a href="vim.host.ActiveDirectoryAuthentication.html#joinDomain">JoinDomain_Task</a> and
    <a href="vim.host.ActiveDirectoryAuthentication.html#leaveCurrentDomain">LeaveCurrentDomain_Task</a>
    methods - Your vSphere client application can call
    these methods directly to add the host to or remove the host
    from a domain.
  </li>
  <li>Host configuration - Use the <a href="vim.host.ActiveDirectorySpec.html">HostActiveDirectory</a> data object
    to specify Active Directory configuration, either adding the host to
    or removing the host from a domain. To apply the Active Directory
    configuration, use the <a href="vim.profile.host.ProfileManager.html">HostProfileManager</a> method
    (<a href="vim.profile.host.ProfileManager.html#applyHostConfiguration">ApplyHostConfig_Task</a>)
    to apply the <a href="vim.host.ConfigSpec.html">HostConfigSpec</a>. When the ESX Server processes
    the configuration, it will invoke the join or leave method.
  </li>
  </ul>
  <p>
  To take advantage of ESX host membership in an Active Directory domain,
  grant permissions on the ESX host to Active Directory users and groups
  who should have direct access to management of the ESX host.
  Use the <a href="vim.UserDirectory.html">UserDirectory</a>.<a href="vim.UserDirectory.html#retrieveUserGroups">RetrieveUserGroups</a>
  method to obtain information about Active Directory users and groups.
  After retrieving the Active Directory data, you can use the
  <a href="vim.AuthorizationManager.html">AuthorizationManager</a>.<a href="vim.AuthorizationManager.html#setEntityPermissions">SetEntityPermissions</a>
  method to set the <a href="vim.AuthorizationManager.Permission.html#principal">principal</a> property
  to the appropriate user or group.
  <p>
  By default, the ESX host assigns the Administrator role to the "ESX Admins" group.
  If the group does not exist when the host joins the domain, the host will
  not assign the role. In this case, you must create the "ESX Admins"
  group in the Active Directory. The host will periodically check the domain controller
  for the group and will assign the role when the group exists.]]>
      </description-html>
            <property name="info" type-id-ref="vim.host.AuthenticationManagerInfo"
      vmodl-name="info"
      >
      <description-html>
         <![CDATA[Information about Active Directory membership.]]>
      </description-html>
      </property>

            <property name="supportedStore" type-id-ref="vim.host.AuthenticationStore"
      vmodl-name="supportedStore"
      is-array="true"
      >
      <description-html>
         <![CDATA[An array that can contain managed object references to local and
 Active Directory authentication managed objects.
 <p>
 <code>supportedStore</code> data implies a connection to a system
 that stores information about accounts.
 The <code>supportedStore</code> array can include the following objects:
 <ul>
   <li> <a href="vim.host.LocalAuthentication.html">HostLocalAuthentication</a> - Local authentication refers
        to user accounts on the ESX host. Local authentication is always enabled.
   </li>
   <li> <a href="vim.host.ActiveDirectoryAuthentication.html">HostActiveDirectoryAuthentication</a> - Active Directory authentication
        refers to computer accounts and user accounts on the domain controller.
        This object indicates the domain membership status for the host
        and defines the join and leave methods for Active Directory
        membership.
        <p />
        If <code>supportedStore</code> references
        a <a href="vim.host.ActiveDirectoryAuthentication.html">HostActiveDirectoryAuthentication</a> object, the host
        is capable of joining a domain.
        However, if you try to add a host to a domain when the
        <a href="vim.host.AuthenticationStoreInfo.html">HostAuthenticationStoreInfo</a>.<a href="vim.host.AuthenticationStoreInfo.html#enabled">enabled</a>
        property is <code>True</code> (accessed through the <code>info</code>
        property), the join method will throw a fault.
   </li>
 </ul>]]>
      </description-html>
      </property>

   </managed-object>
   <managed-object name="HostPatchManager"
      type-id="vim.host.PatchManager"
      vmodl-name="vim.host.PatchManager"
      version-id-ref="vim.version.version1"
      internal-before-version-id-ref="vim.version.version2"
      >
      <description-html>
         <![CDATA[This managed object is the interface for scanning and patching an ESX
  server.

  VMware publishes updates through its external website. A patch update is
  synonymous with a bulletin. An update may contain many individual patch
  binaries, but its installation and uninstallation are atomic.]]>
      </description-html>
      <nested-type-id-ref>vim.host.PatchManager.Result</nested-type-id-ref>
      <nested-type-id-ref>vim.host.PatchManager.Status</nested-type-id-ref>
      <nested-type-id-ref>vim.host.PatchManager.Locator</nested-type-id-ref>
      <nested-type-id-ref>vim.host.PatchManager.PatchManagerOperationSpec</nested-type-id-ref>
   <method name="CheckHostPatch"
      vmodl-name="Check"
      version-id-ref="vim.version.version5"
      privilege="System.Read"
      type-id-ref="vim.host.PatchManager.Result"
      is-task="true"
      >
      <description-html>
         <![CDATA[Check the list of metadata and returns the dependency, obsolete and conflict information
  The operation is cancelable through the returned <a href="vim.Task.html">Task</a> object. No integrity checks
  are performed on the metadata.]]>
      </description-html>
      <parameter name="metaUrls" type-id-ref="java.lang.String"
      vmodl-name="metaUrls"
      version-id-ref="vim.version.version5"
      is-array="true"
      is-optional="true"
      privilege="metaUrls"
      >
      <description-html>
         <![CDATA[a list of urls pointing to metadata.zip.]]>
      </description-html>
      </parameter>
      <parameter name="bundleUrls" type-id-ref="java.lang.String"
      vmodl-name="bundleUrls"
      version-id-ref="vim.version.version5"
      is-array="true"
      is-optional="true"
      privilege="bundleUrls"
      >
      <description-html>
         <![CDATA[a list of urls pointing to an "offline" bundle. It is not supported in 5.0 or later.]]>
      </description-html>
      </parameter>
      <parameter name="spec" type-id-ref="vim.host.PatchManager.PatchManagerOperationSpec"
      vmodl-name="spec"
      version-id-ref="vim.version.version5"
      is-optional="true"
      privilege="spec"
      >
      </parameter>
      <fault type-id-ref="vmodl.fault.RequestCanceled">
      <fault-description-html>
         <![CDATA[if the operation is canceled.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the feature cannot be supported on the platform,
          potentially because the hardware configuration does not support it.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.TaskInProgress">
      <fault-description-html>
         <![CDATA[if there is already a patch installation in progress.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.PlatformConfigFault">
      <fault-description-html>
         <![CDATA[if any error occurs during the operation.
          More detailed information will be returned within the payload of the
          exception as xml string.]]>
      </fault-description-html>
      </fault>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to monitor the
        operation. The <a href="vim.TaskInfo.html#result">result</a> property in the
        <a href="vim.Task.html">Task</a> contains the
        <a href="vim.host.PatchManager.Status.html">HostPatchManagerStatus</a>
        upon success.]]>
      </task-description-html>
   </method>
   <method name="ScanHostPatch"
      vmodl-name="Scan"
      is-deprecated="true"
      is-array="true"
      is-optional="true"
      privilege="System.Read"
      type-id-ref="vim.host.PatchManager.Status"
      is-task="true"
      >
      <description-html>
         <![CDATA[Scan the host for the patch status. The operation is cancelable
  through the returned <a href="vim.Task.html">Task</a> object. Integrity checks are
  performed on the metadata only during the scan operation.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of VI API 4.0, use <a href="vim.host.PatchManager.html#ScanV2">ScanHostPatchV2_Task</a>.]]>
      </deprecated-html>
      <parameter name="repository" type-id-ref="vim.host.PatchManager.Locator"
      vmodl-name="repository"
      version-id-ref="vim.version.version1"
      privilege="repository"
      >
      <description-html>
         <![CDATA[Location of the repository that contains the
         bulletin depot. The depot must be organized as a flat
         collection of bulletins with each one being a folder named
         after the bulletin ID. Each folder must contain the full
         update metadata.]]>
      </description-html>
      </parameter>
      <parameter name="updateID" type-id-ref="java.lang.String"
      vmodl-name="updateID"
      version-id-ref="vim.version.version1"
      is-array="true"
      is-optional="true"
      privilege="updateID"
      >
      <description-html>
         <![CDATA[The updates to scan. Wildcards can be used to specify
         the update IDs. The wildcards will be expanded to include all
         updates whose IDs match the specified wildcard and whose metadata
         is available in the repository. Specifying no update is
         equivalent to a wildcard "*". In this case all updates available
         in the repository will be scanned.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vmodl.fault.RequestCanceled">
      <fault-description-html>
         <![CDATA[if the operation is canceled.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.PatchMetadataInvalid">
      <fault-description-html>
         <![CDATA[if query required metadata is invalid - for
          example, it is not found in the repository, is corrupted and
          so on. Typically a more specific subclass of PatchMetadataInvalid
          is thrown.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.PlatformConfigFault">
      <fault-description-html>
         <![CDATA[if there is any error in the repository access,
          metadata download, repository level integrity check, or reading the
          metadata. See <a href="vim.fault.PlatformConfigFault.html#text">text</a> for
          specific details.]]>
      </fault-description-html>
      </fault>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to monitor the
        operation. The <a href="vim.TaskInfo.html#result">result</a> property in the
        <a href="vim.Task.html">Task</a> contains the
        <a href="vim.host.PatchManager.Status.html">HostPatchManagerStatus</a>
        upon success.]]>
      </task-description-html>
   </method>
   <method name="ScanHostPatchV2"
      vmodl-name="ScanV2"
      version-id-ref="vim.version.version5"
      is-optional="true"
      privilege="System.Read"
      type-id-ref="vim.host.PatchManager.Result"
      is-task="true"
      >
      <description-html>
         <![CDATA[Scan the host for the patch status. The operation is cancelable
  through the returned <a href="vim.Task.html">Task</a> object. Integrity checks are
  performed on the metadata only during the scan operation.]]>
      </description-html>
      <parameter name="metaUrls" type-id-ref="java.lang.String"
      vmodl-name="metaUrls"
      version-id-ref="vim.version.version5"
      is-array="true"
      is-optional="true"
      privilege="metaUrls"
      >
      <description-html>
         <![CDATA[a list of urls pointing to metadata.zip.]]>
      </description-html>
      </parameter>
      <parameter name="bundleUrls" type-id-ref="java.lang.String"
      vmodl-name="bundleUrls"
      version-id-ref="vim.version.version5"
      is-array="true"
      is-optional="true"
      privilege="bundleUrls"
      >
      <description-html>
         <![CDATA[a list of urls pointing to an "offline" bundle. It is not supported in 5.0 or later.]]>
      </description-html>
      </parameter>
      <parameter name="spec" type-id-ref="vim.host.PatchManager.PatchManagerOperationSpec"
      vmodl-name="spec"
      version-id-ref="vim.version.version5"
      is-optional="true"
      privilege="spec"
      >
      </parameter>
      <fault type-id-ref="vmodl.fault.RequestCanceled">
      <fault-description-html>
         <![CDATA[if the operation is canceled.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the feature cannot be supported on the platform,
          potentially because the hardware configuration does not support it.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.TaskInProgress">
      <fault-description-html>
         <![CDATA[if there is already a patch installation in progress.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.PlatformConfigFault">
      <fault-description-html>
         <![CDATA[if there is any error in the repository access,
          metadata download, repository level integrity check, or reading the
          metadata. See <a href="vim.fault.PlatformConfigFault.html#text">text</a> for
          specific details.]]>
      </fault-description-html>
      </fault>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to monitor the
        operation. The <a href="vim.TaskInfo.html#result">result</a> property in the
        <a href="vim.Task.html">Task</a> contains the
        <a href="vim.host.PatchManager.Status.html">HostPatchManagerStatus</a>
        upon success.]]>
      </task-description-html>
   </method>
   <method name="StageHostPatch"
      vmodl-name="Stage"
      version-id-ref="vim.version.version5"
      privilege="Host.Config.Patch"
      type-id-ref="vim.host.PatchManager.Result"
      is-task="true"
      >
      <description-html>
         <![CDATA[Stage the vib files to esx local location and possibly do some run time check.]]>
      </description-html>
      <parameter name="metaUrls" type-id-ref="java.lang.String"
      vmodl-name="metaUrls"
      version-id-ref="vim.version.version5"
      is-array="true"
      is-optional="true"
      privilege="metaUrls"
      >
      <description-html>
         <![CDATA[A list of urls pointing to metadata.zip.]]>
      </description-html>
      </parameter>
      <parameter name="bundleUrls" type-id-ref="java.lang.String"
      vmodl-name="bundleUrls"
      version-id-ref="vim.version.version5"
      is-array="true"
      is-optional="true"
      privilege="bundleUrls"
      >
      <description-html>
         <![CDATA[a list of urls pointing to an "offline" bundle. It is not supported in 5.0 or later.]]>
      </description-html>
      </parameter>
      <parameter name="vibUrls" type-id-ref="java.lang.String"
      vmodl-name="vibUrls"
      version-id-ref="vim.version.version5"
      is-array="true"
      is-optional="true"
      privilege="vibUrls"
      >
      <description-html>
         <![CDATA[The urls of update binary files to be staged.]]>
      </description-html>
      </parameter>
      <parameter name="spec" type-id-ref="vim.host.PatchManager.PatchManagerOperationSpec"
      vmodl-name="spec"
      version-id-ref="vim.version.version5"
      is-optional="true"
      privilege="spec"
      >
      </parameter>
      <fault type-id-ref="vmodl.fault.RequestCanceled">
      <fault-description-html>
         <![CDATA[if the operation is canceled.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the feature cannot be supported on the platform,
          potentially because the hardware configuration does not support it.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.TaskInProgress">
      <fault-description-html>
         <![CDATA[if there is already a patch installation in progress.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.PlatformConfigFault">
      <fault-description-html>
         <![CDATA[if any error occurs during the operation.
          More detailed information will be returned within the payload of the
          exception as xml string.]]>
      </fault-description-html>
      </fault>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to monitor the
        operation. The <a href="vim.TaskInfo.html#result">result</a> property in the
        <a href="vim.Task.html">Task</a> contains the
        <a href="vim.host.PatchManager.Status.html">HostPatchManagerStatus</a>
        upon success.]]>
      </task-description-html>
   </method>
   <method name="InstallHostPatch"
      vmodl-name="Install"
      is-deprecated="true"
      privilege="Host.Config.Patch"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Patch the host. The operation is not cancelable. If the
  patch installation failed, an atomic rollback of the installation will
  be attempted. Manual rollback is required if the atomic rollback
  failed, see <a href="vim.fault.PatchInstallFailed.html">PatchInstallFailed</a> for details.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[Method is deprecated, use <a href="vim.host.PatchManager.html#InstallV2">InstallHostPatchV2_Task</a> instead.]]>
      </deprecated-html>
      <parameter name="repository" type-id-ref="vim.host.PatchManager.Locator"
      vmodl-name="repository"
      version-id-ref="vim.version.version1"
      privilege="repository"
      >
      <description-html>
         <![CDATA[Location of the repository that contains the
         bulletin depot. The depot must be organized as a flat
         collection of bulletins with each one being a folder named
         after the bulletin ID. Each folder must contain both
         update metadata and required binaries.]]>
      </description-html>
      </parameter>
      <parameter name="updateID" type-id-ref="java.lang.String"
      vmodl-name="updateID"
      version-id-ref="vim.version.version1"
      privilege="updateID"
      >
      <description-html>
         <![CDATA[The update to be installed on the host.]]>
      </description-html>
      </parameter>
      <parameter name="force" type-id-ref="BOOLEAN"
      vmodl-name="force"
      version-id-ref="vim.version.version1"
      is-optional="true"
      privilege="force"
      >
      <description-html>
         <![CDATA[Specify whether to force reinstall an update.
         By default, installing an already-installed update would fail
         with the <a href="vim.fault.PatchAlreadyInstalled.html">PatchAlreadyInstalled</a> fault. If
         force is set to true, the update will be forcefully reinstalled,
         thus overwriting the already installed update.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.PatchMetadataInvalid">
      <fault-description-html>
         <![CDATA[if the required metadata is invalid - for
          example, it is not found in the repository, is corrupted and so
          on. Typically a more specific subclass of PatchMetadataInvalid is
          thrown.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.PatchBinariesNotFound">
      <fault-description-html>
         <![CDATA[if required update related binaries were not
          available.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.PatchNotApplicable">
      <fault-description-html>
         <![CDATA[if the patch is not applicable. Typically a
          more specific subclass of PatchNotApplicable is thrown to indicate
          a specific problem - for example, PatchSuperseded if the patch is
          superseded, MissingDependency if required patch or libraries are not
          installed, AlreadyInstalled if the patch is already installed.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.NoDiskSpace">
      <fault-description-html>
         <![CDATA[if the update can not be installed because there is
          insufficient disk space for the installation, including temporary
          space used for rollback.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.PatchInstallFailed">
      <fault-description-html>
         <![CDATA[if the installation failed,
          <a href="vim.fault.PlatformConfigFault.html#text">text</a> has details of the
          failure. Automatic rollback might have succeeded or failed.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.RebootRequired">
      <fault-description-html>
         <![CDATA[if the update cannot be installed without
          restarting the host. This might occur on account of a prior
          update installation which needed to be installed separately
          from other updates.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the host is not in maintenance mode but the
          patch install requires all virtual machines to be powered off.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.TaskInProgress">
      <fault-description-html>
         <![CDATA[if there is already a patch installation in progress.]]>
      </fault-description-html>
      </fault>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to monitor
        the operation.]]>
      </task-description-html>
   </method>
   <method name="InstallHostPatchV2"
      vmodl-name="InstallV2"
      version-id-ref="vim.version.version5"
      privilege="Host.Config.Patch"
      type-id-ref="vim.host.PatchManager.Result"
      is-task="true"
      >
      <description-html>
         <![CDATA[Patch the host. The operation is not cancelable. If the
  patch installation failed, an atomic rollback of the installation will
  be attempted. Manual rollback is required if the atomic rollback
  failed, see <a href="vim.fault.PatchInstallFailed.html">PatchInstallFailed</a> for details.]]>
      </description-html>
      <parameter name="metaUrls" type-id-ref="java.lang.String"
      vmodl-name="metaUrls"
      version-id-ref="vim.version.version5"
      is-array="true"
      is-optional="true"
      privilege="metaUrls"
      >
      <description-html>
         <![CDATA[A list of urls pointing to metadata.zip.]]>
      </description-html>
      </parameter>
      <parameter name="bundleUrls" type-id-ref="java.lang.String"
      vmodl-name="bundleUrls"
      version-id-ref="vim.version.version5"
      is-array="true"
      is-optional="true"
      privilege="bundleUrls"
      >
      <description-html>
         <![CDATA[a list of urls pointing to an "offline" bundle. It is not supported in 5.0 or later.]]>
      </description-html>
      </parameter>
      <parameter name="vibUrls" type-id-ref="java.lang.String"
      vmodl-name="vibUrls"
      version-id-ref="vim.version.version5"
      is-array="true"
      is-optional="true"
      privilege="vibUrls"
      >
      <description-html>
         <![CDATA[The urls of update binary files to be installed.]]>
      </description-html>
      </parameter>
      <parameter name="spec" type-id-ref="vim.host.PatchManager.PatchManagerOperationSpec"
      vmodl-name="spec"
      version-id-ref="vim.version.version5"
      is-optional="true"
      privilege="spec"
      >
      </parameter>
      <fault type-id-ref="vmodl.fault.RequestCanceled">
      <fault-description-html>
         <![CDATA[if the operation is canceled.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the feature cannot be supported on the platform,
          potentially because the hardware configuration does not support it.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.TaskInProgress">
      <fault-description-html>
         <![CDATA[if there is already a patch installation in progress.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.PlatformConfigFault">
      <fault-description-html>
         <![CDATA[if any error occurs during the operation.
          More detailed information will be returned within the payload of the
          exception as xml string.]]>
      </fault-description-html>
      </fault>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to monitor
        the operation.]]>
      </task-description-html>
   </method>
   <method name="UninstallHostPatch"
      vmodl-name="Uninstall"
      version-id-ref="vim.version.version5"
      privilege="Host.Config.Patch"
      type-id-ref="vim.host.PatchManager.Result"
      is-task="true"
      >
      <description-html>
         <![CDATA[Uninstall patch from the host. The operation is not cancelable.]]>
      </description-html>
      <parameter name="bulletinIds" type-id-ref="java.lang.String"
      vmodl-name="bulletinIds"
      version-id-ref="vim.version.version5"
      is-array="true"
      is-optional="true"
      privilege="bulletinIds"
      >
      <description-html>
         <![CDATA[A list of bulletin IDs to be removed.]]>
      </description-html>
      </parameter>
      <parameter name="spec" type-id-ref="vim.host.PatchManager.PatchManagerOperationSpec"
      vmodl-name="spec"
      version-id-ref="vim.version.version5"
      is-optional="true"
      privilege="spec"
      >
      </parameter>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the feature cannot be supported on the platform,
          potentially because the hardware configuration does not support it.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.TaskInProgress">
      <fault-description-html>
         <![CDATA[if there is already a patch installation in progress.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.PlatformConfigFault">
      <fault-description-html>
         <![CDATA[if any error occurs during the operation.
          More detailed information will be returned within the payload of the
          exception as xml string.]]>
      </fault-description-html>
      </fault>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to monitor
        the operation.]]>
      </task-description-html>
   </method>
   <method name="QueryHostPatch"
      vmodl-name="Query"
      version-id-ref="vim.version.version5"
      privilege="System.Read"
      type-id-ref="vim.host.PatchManager.Result"
      is-task="true"
      >
      <description-html>
         <![CDATA[Query the host for installed bulletins.]]>
      </description-html>
      <parameter name="spec" type-id-ref="vim.host.PatchManager.PatchManagerOperationSpec"
      vmodl-name="spec"
      version-id-ref="vim.version.version5"
      is-optional="true"
      privilege="spec"
      >
      </parameter>
      <fault type-id-ref="vmodl.fault.RequestCanceled">
      <fault-description-html>
         <![CDATA[if the operation is canceled.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the bulletin ID did not exist.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.TaskInProgress">
      <fault-description-html>
         <![CDATA[if there is already a patch installation in progress.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.PlatformConfigFault">
      <fault-description-html>
         <![CDATA[if any error occurs during the operation.
          More detailed information will be returned within the payload of the
          exception as xml string.]]>
      </fault-description-html>
      </fault>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to monitor
        the operation.]]>
      </task-description-html>
   </method>
   </managed-object>
   <managed-object name="HostDiagnosticSystem"
      type-id="vim.host.DiagnosticSystem"
      vmodl-name="vim.host.DiagnosticSystem"
      version-id-ref="vim.version.version1"
      >
      <description-html>
         <![CDATA[The DiagnosticSystem managed object is used to configure the diagnostic
  mechanisms specific to the host.  The DiagnosticSystem interface supports
  the following concepts:
  <ul>
    <li> Notion of an active diagnostic partition that is selected from
         a set of available partitions.
    <li> Ability to create a diagnostic partition that gets added to the
         list of available partitions and could be made active.
  </ul>]]>
      </description-html>
            <property name="activePartition" type-id-ref="vim.host.DiagnosticPartition"
      vmodl-name="activePartition"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The currently active diagnostic partition.]]>
      </description-html>
      </property>

   <method name="QueryAvailablePartition"
      vmodl-name="queryAvailablePartition"
      is-array="true"
      is-optional="true"
      privilege="Host.Config.Storage"
      type-id-ref="vim.host.DiagnosticPartition"
      >
      <description-html>
         <![CDATA[Retrieves a list of available diagnostic partitions.  The server will
  provide the list in order of preference.  In general, local diagnostic
  partitions are better than shared diagnostic partitions because of
  the impossibility of multiple servers sharing the same partition.  The
  most preferred diagnostic partition will be first in the array.]]>
      </description-html>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[on some internal failure while setting the
          active partition.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="SelectActivePartition"
      vmodl-name="selectActivePartition"
      privilege="Host.Config.Storage"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Changes the active diagnostic partition to a different partition.
  Setting a NULL partition will result in unsetting the diagnostic
  partition.]]>
      </description-html>
      <parameter name="partition" type-id-ref="vim.host.ScsiDisk.Partition"
      vmodl-name="partition"
      version-id-ref="vim.version.version1"
      is-optional="true"
      privilege="partition"
      >
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[if the diagnostic partition does not exist.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[on some internal failure while selecting the
          active partition.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="QueryPartitionCreateOptions"
      vmodl-name="queryPartitionCreateOptions"
      is-array="true"
      is-optional="true"
      privilege="Host.Config.Storage"
      type-id-ref="vim.host.DiagnosticPartition.CreateOption"
      >
      <description-html>
         <![CDATA[Retrieves a list of disks that can be used to contain a diagnostic
  partition.  This list will contain disks that have sufficient space
  to contain a diagnostic partition of the specific type.
  <p>
  The choices will be returned in the order that is most preferable
  as determined by the system.]]>
      </description-html>
      <parameter name="storageType" type-id-ref="java.lang.String"
      vmodl-name="storageType"
      version-id-ref="vim.version.version1"
      privilege="storageType"
      >
      </parameter>
      <parameter name="diagnosticType" type-id-ref="java.lang.String"
      vmodl-name="diagnosticType"
      version-id-ref="vim.version.version1"
      privilege="diagnosticType"
      >
      </parameter>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[on some internal failure while querying the
          create options.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="QueryPartitionCreateDesc"
      vmodl-name="queryPartitionCreateDesc"
      privilege="Host.Config.Storage"
      type-id-ref="vim.host.DiagnosticPartition.CreateDescription"
      >
      <description-html>
         <![CDATA[For a disk, query for the diagnostic partition creation description.
  The description details how the diagnostic partition will be created
  on the disk and provides a creation specification that is needed to
  invoke the create operation.<br>See <a href="vim.host.ScsiDisk.html">HostScsiDisk</a><br>See <a href="vim.host.ScsiLun.html#uuid">uuid</a><br>]]>
      </description-html>
      <parameter name="diskUuid" type-id-ref="java.lang.String"
      vmodl-name="diskUuid"
      version-id-ref="vim.version.version1"
      privilege="diskUuid"
      >
      <description-html>
         <![CDATA[<br>See <a href="vim.host.ScsiDisk.html">HostScsiDisk</a><br>See <a href="vim.host.ScsiLun.html#uuid">uuid</a><br>]]>
      </description-html>
      </parameter>
      <parameter name="diagnosticType" type-id-ref="java.lang.String"
      vmodl-name="diagnosticType"
      version-id-ref="vim.version.version1"
      privilege="diagnosticType"
      >
      <description-html>
         <![CDATA[<br>See <a href="vim.host.ScsiDisk.html">HostScsiDisk</a><br>See <a href="vim.host.ScsiLun.html#uuid">uuid</a><br>]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[if the specified disk cannot be found.<br>See <a href="vim.host.ScsiDisk.html">HostScsiDisk</a><br>See <a href="vim.host.ScsiLun.html#uuid">uuid</a><br>]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[on some internal failure while trying to
          query information about the disk.<br>See <a href="vim.host.ScsiDisk.html">HostScsiDisk</a><br>See <a href="vim.host.ScsiLun.html#uuid">uuid</a><br>]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="CreateDiagnosticPartition"
      vmodl-name="createDiagnosticPartition"
      privilege="Host.Config.Storage"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Creates a diagnostic partition according to the provided create
  specification.  On success, this method will create the partition
  and make the partition the active diagnostic partition if specified.
  On failure, the diagnostic partition may exist but may not be active
  if the partition was supposed to be made active.]]>
      </description-html>
      <parameter name="spec" type-id-ref="vim.host.DiagnosticPartition.CreateSpec"
      vmodl-name="spec"
      version-id-ref="vim.version.version1"
      privilege="spec"
      >
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[if the specified disk cannot be found.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[on some internal failure while trying to
          create the diagnostic partition or to activate the diagnostic
          partition.]]>
      </fault-description-html>
      </fault>
   </method>
   </managed-object>
   <managed-object name="EventHistoryCollector"
      type-id="vim.event.EventHistoryCollector"
      vmodl-name="vim.event.EventHistoryCollector"
      version-id-ref="vim.version.version1"
      base-type-id="vim.HistoryCollector"
      >
      <description-html>
         <![CDATA[EventHistoryCollector provides a mechanism for
 retrieving historical data and updates when the server appends new
 events.]]>
      </description-html>
            <property name="latestPage" type-id-ref="vim.event.Event"
      vmodl-name="latestPage"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The items in the 'viewable latest page'. As new events that match the
 collector's <a href="vim.event.EventFilterSpec.html">EventFilterSpec</a> are created, they are added to this
 page, and the oldest events are removed from the collector to keep the
 size of the page to that allowed by
 HistoryCollector#setLatestPageSize.
 <p>
 The "oldest event" is the one with the smallest key (event ID). The
 events in the returned page are unordered.]]>
      </description-html>
      </property>

   <method name="ReadNextEvents"
      vmodl-name="readNext"
      is-array="true"
      is-optional="true"
      type-id-ref="vim.event.Event"
      >
      <description-html>
         <![CDATA[Reads the 'scrollable view' from the current position. The scrollable
 position is moved to the next newer page after the read. No item is
 returned when the end of the collector is reached.
 <p>]]>
      </description-html>
      <parameter name="maxCount" type-id-ref="INT"
      vmodl-name="maxCount"
      version-id-ref="vim.version.version1"
      privilege="maxCount"
      >
      <description-html>
         <![CDATA[The maximum number of items in the page.]]>
      </description-html>
      </parameter>
   </method>
   <method name="ReadPreviousEvents"
      vmodl-name="readPrev"
      is-array="true"
      is-optional="true"
      type-id-ref="vim.event.Event"
      >
      <description-html>
         <![CDATA[Reads the 'scrollable view' from the current position. The scrollable
 position is moved to the next older page after the read. No item is
 returned when the head of the collector is reached.
 <p>]]>
      </description-html>
      <parameter name="maxCount" type-id-ref="INT"
      vmodl-name="maxCount"
      version-id-ref="vim.version.version1"
      privilege="maxCount"
      >
      <description-html>
         <![CDATA[The maximum number of items in the page.]]>
      </description-html>
      </parameter>
   </method>
   </managed-object>
   <managed-object name="ScheduledTaskManager"
      type-id="vim.scheduler.ScheduledTaskManager"
      vmodl-name="vim.scheduler.ScheduledTaskManager"
      version-id-ref="vim.version.version1"
      >
      <description-html>
         <![CDATA[Object manager for scheduled tasks.]]>
      </description-html>
            <property name="scheduledTask" type-id-ref="vim.scheduler.ScheduledTask"
      vmodl-name="scheduledTask"
      is-array="true"
      is-optional="true"
      privilege="System.View"
      >
      <description-html>
         <![CDATA[All available scheduled tasks.]]>
      </description-html>
      </property>

            <property name="description" type-id-ref="vim.scheduler.ScheduledTaskDescription"
      vmodl-name="description"
      privilege="System.View"
      >
      <description-html>
         <![CDATA[Static descriptive strings used in scheduled tasks.]]>
      </description-html>
      </property>

   <method name="CreateScheduledTask"
      vmodl-name="create"
      type-id-ref="vim.scheduler.ScheduledTask"
      >
      <description-html>
         <![CDATA[Creates a scheduled task.]]>
      </description-html>
      <parameter name="entity" type-id-ref="vim.ManagedEntity"
      vmodl-name="entity"
      version-id-ref="vim.version.version1"
      privilege="entity"
      >
      <description-html>
         <![CDATA[The managed entity (or entities) for which the
                 scheduled task triggers an action. You can
                 schedule tasks on any managed entity. If the
                 scheduled task is associated with a leaf node in
                 the inventory tree, it applies only to a single
                 entity (virtual machine or host). If the
                 task is associated with a folder, a datacenter, a
                 compute resource, or a resource pool, it applies to
                 the virtual machine or host descendants of the entity.]]>
      </description-html>
      </parameter>
      <parameter name="spec" type-id-ref="vim.scheduler.ScheduledTaskSpec"
      vmodl-name="spec"
      version-id-ref="vim.version.version1"
      privilege="spec"
      >
      <description-html>
         <![CDATA[The specification for the new scheduled task.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.InvalidName">
      <fault-description-html>
         <![CDATA[if the scheduled task name is empty or too long.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.DuplicateName">
      <fault-description-html>
         <![CDATA[if a scheduled task with the name already exists.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[The scheduled task created by the operation.]]>
      </return-value-description-html>
   </method>
   <method name="RetrieveEntityScheduledTask"
      vmodl-name="retrieveEntityScheduledTask"
      is-array="true"
      is-optional="true"
      privilege="System.View"
      type-id-ref="vim.scheduler.ScheduledTask"
      >
      <description-html>
         <![CDATA[Available scheduled tasks defined on the entity.
 <p>]]>
      </description-html>
      <parameter name="entity" type-id-ref="vim.ManagedEntity"
      vmodl-name="entity"
      version-id-ref="vim.version.version1"
      is-optional="true"
      privilege="entity"
      >
      <description-html>
         <![CDATA[The entity. If null, all scheduled tasks are returned
                   for visible entities.]]>
      </description-html>
      </parameter>
      <return-value-description-html>
         <![CDATA[The scheduled tasks.]]>
      </return-value-description-html>
   </method>
   <method name="CreateObjectScheduledTask"
      vmodl-name="createObjectScheduledTask"
      version-id-ref="vim.version.version5"
      type-id-ref="vim.scheduler.ScheduledTask"
      >
      <description-html>
         <![CDATA[Creates a scheduled task.]]>
      </description-html>
      <parameter name="obj" type-id-ref="vmodl.ManagedObject"
      vmodl-name="obj"
      version-id-ref="vim.version.version5"
      privilege="obj"
      >
      <description-html>
         <![CDATA[The managed object for which the
                 scheduled task triggers an action. You can
                 schedule tasks on any managed object.]]>
      </description-html>
      </parameter>
      <parameter name="spec" type-id-ref="vim.scheduler.ScheduledTaskSpec"
      vmodl-name="spec"
      version-id-ref="vim.version.version5"
      privilege="spec"
      >
      <description-html>
         <![CDATA[The specification for the new scheduled task.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.InvalidName">
      <fault-description-html>
         <![CDATA[if the scheduled task name is empty or too long.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.DuplicateName">
      <fault-description-html>
         <![CDATA[if a scheduled task with the name already exists.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[The scheduled task created by the operation.]]>
      </return-value-description-html>
   </method>
   <method name="RetrieveObjectScheduledTask"
      vmodl-name="retrieveObjectScheduledTask"
      version-id-ref="vim.version.version5"
      is-array="true"
      is-optional="true"
      privilege="System.View"
      type-id-ref="vim.scheduler.ScheduledTask"
      >
      <description-html>
         <![CDATA[Available scheduled tasks defined on the object.
 <p>]]>
      </description-html>
      <parameter name="obj" type-id-ref="vmodl.ManagedObject"
      vmodl-name="obj"
      version-id-ref="vim.version.version5"
      is-optional="true"
      privilege="obj"
      >
      <description-html>
         <![CDATA[The object. If not specified, all scheduled tasks are returned
                   for visible entities and visible ManagedObjects.]]>
      </description-html>
      </parameter>
      <return-value-description-html>
         <![CDATA[The scheduled tasks.]]>
      </return-value-description-html>
   </method>
   </managed-object>
   <managed-object name="ExtensibleManagedObject"
      type-id="vim.ExtensibleManagedObject"
      vmodl-name="vim.ExtensibleManagedObject"
      version-id-ref="vim.version.version1"
      >
      <description-html>
         <![CDATA[<a href="vim.ExtensibleManagedObject.html">ExtensibleManagedObject</a> provides methods and properties that provide
  access to custom fields that may be associated with a managed object.
  Use the <a href="vim.CustomFieldsManager.html">CustomFieldsManager</a> to define custom fields.
  The <a href="vim.CustomFieldsManager.html">CustomFieldsManager</a> handles the entire list of custom fields
  on a server. You can can specify the object type to which a particular custom
  field applies by setting its <a href="vim.CustomFieldsManager.FieldDef.html#managedObjectType">managedObjectType</a>.
  (If you do not set a managed object type for a custom field definition,
  the field applies to all managed objects.)]]>
      </description-html>
            <property name="value" type-id-ref="vim.CustomFieldsManager.Value"
      vmodl-name="value"
      version-id-ref="vim.version.version2"
      is-array="true"
      is-optional="true"
      privilege="System.View"
      >
      <description-html>
         <![CDATA[List of custom field values. Each value uses a key to associate
  an instance of a <a href="vim.CustomFieldsManager.StringValue.html">CustomFieldStringValue</a> with
  a custom field definition.]]>
      </description-html>
      </property>

            <property name="availableField" type-id-ref="vim.CustomFieldsManager.FieldDef"
      vmodl-name="availableField"
      version-id-ref="vim.version.version2"
      is-array="true"
      is-optional="true"
      privilege="System.View"
      >
      <description-html>
         <![CDATA[List of custom field definitions that are valid for the object's type.
  The fields are sorted by <a href="vim.CustomFieldsManager.FieldDef.html#name">name</a>.]]>
      </description-html>
      </property>

   <method name="setCustomValue"
      vmodl-name="setCustomValue"
      version-id-ref="vim.version.version2"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Assigns a value to a custom field. The setCustomValue method requires
  whichever updatePrivilege is defined as one of the
  <a href="vim.CustomFieldsManager.FieldDef.html#fieldInstancePrivileges">fieldInstancePrivileges</a>
  for the CustomFieldDef whose value is being changed.]]>
      </description-html>
      <parameter name="key" type-id-ref="java.lang.String"
      vmodl-name="key"
      version-id-ref="vim.version.version2"
      privilege="key"
      >
      <description-html>
         <![CDATA[The name of the field whose value is to be updated.]]>
      </description-html>
      </parameter>
      <parameter name="value" type-id-ref="java.lang.String"
      vmodl-name="value"
      version-id-ref="vim.version.version2"
      privilege="value"
      >
      <description-html>
         <![CDATA[Value to be assigned to the custom field.]]>
      </description-html>
      </parameter>
   </method>
   </managed-object>
   <managed-object name="HealthUpdateManager"
      type-id="vim.HealthUpdateManager"
      vmodl-name="vim.HealthUpdateManager"
      version-id-ref="vim.version.version11"
      >
   <method name="RegisterHealthUpdateProvider"
      vmodl-name="registerProvider"
      privilege="HealthUpdateProvider.Register"
      type-id-ref="java.lang.String"
      >
      <description-html>
         <![CDATA[Registers provider.]]>
      </description-html>
      <parameter name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      version-id-ref="vim.version.version11"
      privilege="name"
      >
      <description-html>
         <![CDATA[The provider name. Should follow Java package
                           naming convention to minimize name clashes with
                           currently registered providers.
                           For example, "com.vmware.HealthUpdateProvider".]]>
      </description-html>
      </parameter>
      <parameter name="healthUpdateInfo" type-id-ref="vim.HealthUpdateInfo"
      vmodl-name="healthUpdateInfo"
      version-id-ref="vim.version.version11"
      is-array="true"
      is-optional="true"
      privilege="healthUpdateInfo"
      >
      <description-html>
         <![CDATA[The list of healthUpdateInfo that can be
                           reported in healthUpdates.]]>
      </description-html>
      </parameter>
      <return-value-description-html>
         <![CDATA[The identifier for the registered provider.]]>
      </return-value-description-html>
   </method>
   <method name="UnregisterHealthUpdateProvider"
      vmodl-name="unregisterProvider"
      privilege="HealthUpdateProvider.Unregister"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Unregisters the specified provider, if it exists. A VirtualCenter
  Server restart implicitly unregisters all providers.]]>
      </description-html>
      <parameter name="providerId" type-id-ref="java.lang.String"
      vmodl-name="providerId"
      version-id-ref="vim.version.version11"
      privilege="providerId"
      >
      <description-html>
         <![CDATA[The provider id.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[If the specified provider is not registered.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[If the specified provider is still used in an
                       InfraUpdateHa cluster.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="QueryProviderList"
      vmodl-name="queryProviderList"
      is-array="true"
      is-optional="true"
      privilege="System.View"
      type-id-ref="java.lang.String"
      >
      <description-html>
         <![CDATA[The providers.]]>
      </description-html>
      <return-value-description-html>
         <![CDATA[The list of identifiers of registered providers.]]>
      </return-value-description-html>
   </method>
   <method name="HasProvider"
      vmodl-name="hasProvider"
      privilege="System.View"
      type-id-ref="BOOLEAN"
      >
      <description-html>
         <![CDATA[Verifies if the given provider is registered.]]>
      </description-html>
      <parameter name="id" type-id-ref="java.lang.String"
      vmodl-name="id"
      version-id-ref="vim.version.version11"
      privilege="id"
      >
      <description-html>
         <![CDATA[The provider id.]]>
      </description-html>
      </parameter>
      <return-value-description-html>
         <![CDATA[True iff the provider is registered.]]>
      </return-value-description-html>
   </method>
   <method name="QueryProviderName"
      vmodl-name="queryProviderName"
      privilege="System.View"
      type-id-ref="java.lang.String"
      >
      <description-html>
         <![CDATA[Query the name of the provider.]]>
      </description-html>
      <parameter name="id" type-id-ref="java.lang.String"
      vmodl-name="id"
      version-id-ref="vim.version.version11"
      privilege="id"
      >
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[If no provider with this id is registered.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[The name of the provider.]]>
      </return-value-description-html>
   </method>
   <method name="QueryHealthUpdateInfos"
      vmodl-name="queryHealthUpdateInfos"
      is-array="true"
      is-optional="true"
      privilege="System.View"
      type-id-ref="vim.HealthUpdateInfo"
      >
      <description-html>
         <![CDATA[Returns the list of HealthUpdateInfo configured for the given provider.]]>
      </description-html>
      <parameter name="providerId" type-id-ref="java.lang.String"
      vmodl-name="providerId"
      version-id-ref="vim.version.version11"
      privilege="providerId"
      >
      <description-html>
         <![CDATA[The provider id.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[If no provider with this id is registered.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[The list of configured HealthUpdateInfo.]]>
      </return-value-description-html>
   </method>
   <method name="AddMonitoredEntities"
      vmodl-name="addMonitoredEntities"
      privilege="HealthUpdateProvider.Update"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[The provider monitors additional managed entities. A particular
  managed entity can be monitored by multiple providers.]]>
      </description-html>
      <parameter name="providerId" type-id-ref="java.lang.String"
      vmodl-name="providerId"
      version-id-ref="vim.version.version11"
      privilege="providerId"
      >
      <description-html>
         <![CDATA[The provider id.]]>
      </description-html>
      </parameter>
      <parameter name="entities" type-id-ref="vim.ManagedEntity"
      vmodl-name="entities"
      version-id-ref="vim.version.version11"
      is-array="true"
      is-optional="true"
      privilege="entities"
      >
      <description-html>
         <![CDATA[The entities that are newly monitored by this
                           provider.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[If no provider with this id is registered.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="RemoveMonitoredEntities"
      vmodl-name="removeMonitoredEntities"
      privilege="HealthUpdateProvider.Update"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[The provider monitors fewer managed entities.]]>
      </description-html>
      <parameter name="providerId" type-id-ref="java.lang.String"
      vmodl-name="providerId"
      version-id-ref="vim.version.version11"
      privilege="providerId"
      >
      <description-html>
         <![CDATA[The provider id.]]>
      </description-html>
      </parameter>
      <parameter name="entities" type-id-ref="vim.ManagedEntity"
      vmodl-name="entities"
      version-id-ref="vim.version.version11"
      is-array="true"
      is-optional="true"
      privilege="entities"
      >
      <description-html>
         <![CDATA[The entities that are no longer monitored by
                           this provider.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[If no provider with this id is registered.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[If any of the entities is a part of an
                           InfraUpdateHa cluster that has the provider
                           enabled.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="QueryMonitoredEntities"
      vmodl-name="queryMonitoredEntities"
      is-array="true"
      is-optional="true"
      privilege="System.View"
      type-id-ref="vim.ManagedEntity"
      >
      <description-html>
         <![CDATA[Returns the list of managed entities monitored by the given provider.]]>
      </description-html>
      <parameter name="providerId" type-id-ref="java.lang.String"
      vmodl-name="providerId"
      version-id-ref="vim.version.version11"
      privilege="providerId"
      >
      <description-html>
         <![CDATA[The provider id.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[If no provider with this id is registered.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[The list of monitored managed entities.]]>
      </return-value-description-html>
   </method>
   <method name="HasMonitoredEntity"
      vmodl-name="hasMonitoredEntity"
      privilege="System.View"
      type-id-ref="BOOLEAN"
      >
      <description-html>
         <![CDATA[Check if the managed entity is monitored by the provider.]]>
      </description-html>
      <parameter name="providerId" type-id-ref="java.lang.String"
      vmodl-name="providerId"
      version-id-ref="vim.version.version11"
      privilege="providerId"
      >
      <description-html>
         <![CDATA[The provider id.]]>
      </description-html>
      </parameter>
      <parameter name="entity" type-id-ref="vim.ManagedEntity"
      vmodl-name="entity"
      version-id-ref="vim.version.version11"
      privilege="entity"
      >
      <description-html>
         <![CDATA[An entity of type HostSystem.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[If no provider with this id is registered.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[True iff the entity is monitored by this
                           provider.]]>
      </return-value-description-html>
   </method>
   <method name="QueryUnmonitoredHosts"
      vmodl-name="queryUnmonitoredHosts"
      is-array="true"
      is-optional="true"
      privilege="System.View"
      type-id-ref="vim.HostSystem"
      >
      <description-html>
         <![CDATA[The set of hosts that are in the cluster, but not monitored by
  the provider.]]>
      </description-html>
      <parameter name="providerId" type-id-ref="java.lang.String"
      vmodl-name="providerId"
      version-id-ref="vim.version.version11"
      privilege="providerId"
      >
      <description-html>
         <![CDATA[The provider id.]]>
      </description-html>
      </parameter>
      <parameter name="cluster" type-id-ref="vim.ClusterComputeResource"
      vmodl-name="cluster"
      version-id-ref="vim.version.version11"
      privilege="cluster"
      >
      <description-html>
         <![CDATA[The cluster.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[If no provider with this id is registered.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[The hosts in the cluster that are not monitored by
                     the provider.]]>
      </return-value-description-html>
   </method>
   <method name="PostHealthUpdates"
      vmodl-name="postHealthUpdates"
      privilege="HealthUpdateProvider.Update"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Report a change in health status.]]>
      </description-html>
      <parameter name="providerId" type-id-ref="java.lang.String"
      vmodl-name="providerId"
      version-id-ref="vim.version.version11"
      privilege="providerId"
      >
      <description-html>
         <![CDATA[The provider id.]]>
      </description-html>
      </parameter>
      <parameter name="updates" type-id-ref="vim.HealthUpdate"
      vmodl-name="updates"
      version-id-ref="vim.version.version11"
      is-array="true"
      is-optional="true"
      privilege="updates"
      >
      <description-html>
         <![CDATA[The changes in health states.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[If no provider with this id is registered.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="QueryHealthUpdates"
      vmodl-name="queryHealthUpdates"
      is-array="true"
      is-optional="true"
      privilege="System.View"
      type-id-ref="vim.HealthUpdate"
      >
      <description-html>
         <![CDATA[Returns the list of health updates reported by the given provider.]]>
      </description-html>
      <parameter name="providerId" type-id-ref="java.lang.String"
      vmodl-name="providerId"
      version-id-ref="vim.version.version11"
      privilege="providerId"
      >
      <description-html>
         <![CDATA[The provider id.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[If no provider with this id is registered.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[The list of current health updates by this provider.]]>
      </return-value-description-html>
   </method>
   <method name="AddFilter"
      vmodl-name="addFilter"
      privilege="Host.Inventory.EditCluster"
      type-id-ref="java.lang.String"
      >
      <description-html>
         <![CDATA[Adds health update filters.]]>
      </description-html>
      <parameter name="providerId" type-id-ref="java.lang.String"
      vmodl-name="providerId"
      version-id-ref="vim.version.version11"
      privilege="providerId"
      >
      <description-html>
         <![CDATA[The provider identifier.]]>
      </description-html>
      </parameter>
      <parameter name="filterName" type-id-ref="java.lang.String"
      vmodl-name="filterName"
      version-id-ref="vim.version.version11"
      privilege="filterName"
      >
      <description-html>
         <![CDATA[The filter name.]]>
      </description-html>
      </parameter>
      <parameter name="infoIds" type-id-ref="java.lang.String"
      vmodl-name="infoIds"
      version-id-ref="vim.version.version11"
      is-array="true"
      is-optional="true"
      privilege="infoIds"
      >
      <description-html>
         <![CDATA[The list of HealthUpdateInfo IDs that should be
                           filtered.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[If no provider with this id is registered.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[The filter identifier.]]>
      </return-value-description-html>
   </method>
   <method name="QueryFilterList"
      vmodl-name="queryFilterList"
      is-array="true"
      is-optional="true"
      privilege="System.View"
      type-id-ref="java.lang.String"
      >
      <description-html>
         <![CDATA[Returns the list of filters.]]>
      </description-html>
      <parameter name="providerId" type-id-ref="java.lang.String"
      vmodl-name="providerId"
      version-id-ref="vim.version.version11"
      privilege="providerId"
      >
      <description-html>
         <![CDATA[The provider id.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[If no provider with this id is registered.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[The list of filters identifiers.]]>
      </return-value-description-html>
   </method>
   <method name="QueryFilterName"
      vmodl-name="queryFilterName"
      privilege="System.View"
      type-id-ref="java.lang.String"
      >
      <description-html>
         <![CDATA[Returns the filter name.]]>
      </description-html>
      <parameter name="filterId" type-id-ref="java.lang.String"
      vmodl-name="filterId"
      version-id-ref="vim.version.version11"
      privilege="filterId"
      >
      <description-html>
         <![CDATA[The filter id.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[If no filter with this id is registered.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[The name of the filter.]]>
      </return-value-description-html>
   </method>
   <method name="QueryFilterInfoIds"
      vmodl-name="queryFilterInfoIds"
      is-array="true"
      is-optional="true"
      privilege="System.View"
      type-id-ref="java.lang.String"
      >
      <description-html>
         <![CDATA[Returns the list of HealthUpdateInfos configured for this filter.]]>
      </description-html>
      <parameter name="filterId" type-id-ref="java.lang.String"
      vmodl-name="filterId"
      version-id-ref="vim.version.version11"
      privilege="filterId"
      >
      <description-html>
         <![CDATA[The filter id.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[If no filter with this id is registered.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[The list of identifiers of the configured
                   HealthUpdateInfos.]]>
      </return-value-description-html>
   </method>
   <method name="QueryFilterEntities"
      vmodl-name="queryFilterEntities"
      is-array="true"
      is-optional="true"
      privilege="System.View"
      type-id-ref="vim.ManagedEntity"
      >
      <description-html>
         <![CDATA[Returns the list of entities on which this filter is configured.]]>
      </description-html>
      <parameter name="filterId" type-id-ref="java.lang.String"
      vmodl-name="filterId"
      version-id-ref="vim.version.version11"
      privilege="filterId"
      >
      <description-html>
         <![CDATA[The filter id.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[If no filter with this id is registered.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[The list of managed entities.]]>
      </return-value-description-html>
   </method>
   <method name="AddFilterEntities"
      vmodl-name="addFilterEntities"
      privilege="Host.Inventory.EditCluster"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Add entities on which this filter is configured.]]>
      </description-html>
      <parameter name="filterId" type-id-ref="java.lang.String"
      vmodl-name="filterId"
      version-id-ref="vim.version.version11"
      privilege="filterId"
      >
      <description-html>
         <![CDATA[The filter id.]]>
      </description-html>
      </parameter>
      <parameter name="entities" type-id-ref="vim.ManagedEntity"
      vmodl-name="entities"
      version-id-ref="vim.version.version11"
      is-array="true"
      is-optional="true"
      privilege="entities"
      >
      <description-html>
         <![CDATA[The list of additional managed entities. Only
                           entities of type HostSystem or
                           ClusterComputeResource are valid.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[If no filter with this id is registered.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="RemoveFilterEntities"
      vmodl-name="removeFilterEntities"
      privilege="Host.Inventory.EditCluster"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Remove entities on which this filter is configured.]]>
      </description-html>
      <parameter name="filterId" type-id-ref="java.lang.String"
      vmodl-name="filterId"
      version-id-ref="vim.version.version11"
      privilege="filterId"
      >
      <description-html>
         <![CDATA[The filter id.]]>
      </description-html>
      </parameter>
      <parameter name="entities" type-id-ref="vim.ManagedEntity"
      vmodl-name="entities"
      version-id-ref="vim.version.version11"
      is-array="true"
      is-optional="true"
      privilege="entities"
      >
      <description-html>
         <![CDATA[The list of removed managed entities.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[If no filter with this id is registered.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="RemoveFilter"
      vmodl-name="removeFilter"
      privilege="Host.Inventory.EditCluster"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Removes the specified filter.]]>
      </description-html>
      <parameter name="filterId" type-id-ref="java.lang.String"
      vmodl-name="filterId"
      version-id-ref="vim.version.version11"
      privilege="filterId"
      >
      <description-html>
         <![CDATA[The filter id.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[If no filter with this id is registered.]]>
      </fault-description-html>
      </fault>
   </method>
   </managed-object>
   <managed-object name="HostVsanInternalSystem"
      type-id="vim.host.VsanInternalSystem"
      vmodl-name="vim.host.VsanInternalSystem"
      version-id-ref="vim.version.version9"
      >
      <description-html>
         <![CDATA[The VsanInternalSystem exposes low level access to CMMDS, as well as draft
 versions of VSAN object and disk management APIs that are subject to change
 in future releases. No compatibility is guaranteed on any of the APIs,
 including their prototype, behavior or result encoding.]]>
      </description-html>
      <nested-type-id-ref>vim.host.VsanInternalSystem.CmmdsQuery</nested-type-id-ref>
      <nested-type-id-ref>vim.host.VsanInternalSystem.PolicyCost</nested-type-id-ref>
      <nested-type-id-ref>vim.host.VsanInternalSystem.PolicySatisfiability</nested-type-id-ref>
      <nested-type-id-ref>vim.host.VsanInternalSystem.PolicyChangeBatch</nested-type-id-ref>
      <nested-type-id-ref>vim.host.VsanInternalSystem.NewPolicyBatch</nested-type-id-ref>
      <nested-type-id-ref>vim.host.VsanInternalSystem.VsanPhysicalDiskDiagnosticsResult</nested-type-id-ref>
      <nested-type-id-ref>vim.host.VsanInternalSystem.DeleteVsanObjectsResult</nested-type-id-ref>
      <nested-type-id-ref>vim.host.VsanInternalSystem.VsanObjectOperationResult</nested-type-id-ref>
   <method name="QueryCmmds"
      vmodl-name="queryCmmds"
      privilege="System.Read"
      type-id-ref="java.lang.String"
      >
      <description-html>
         <![CDATA[Query CMMDS directly. The list of given queries is executed and all
 results are returned in a flat list. No attempt is made to de-dupe
 results in the case of overlapping query results.]]>
      </description-html>
      <parameter name="queries" type-id-ref="vim.host.VsanInternalSystem.CmmdsQuery"
      vmodl-name="queries"
      version-id-ref="vim.version.version9"
      is-array="true"
      privilege="queries"
      >
      <description-html>
         <![CDATA[List of CMMDS query specs.]]>
      </description-html>
      </parameter>
      <return-value-description-html>
         <![CDATA[JSON string with the results]]>
      </return-value-description-html>
   </method>
   <method name="QueryPhysicalVsanDisks"
      vmodl-name="queryPhysicalVsanDisks"
      privilege="System.Read"
      type-id-ref="java.lang.String"
      >
      <description-html>
         <![CDATA[Query statistics about physical VSAN disks. Using the props parameter the
 caller can control which properties are returned. Requesting only the
 required properties is encouraged to reduce server load, response time
 and client load.]]>
      </description-html>
      <parameter name="props" type-id-ref="java.lang.String"
      vmodl-name="props"
      version-id-ref="vim.version.version9"
      is-array="true"
      is-optional="true"
      privilege="props"
      >
      <description-html>
         <![CDATA[List of properties to gather. Not specifying a list will
              fetch all properties.]]>
      </description-html>
      </parameter>
      <return-value-description-html>
         <![CDATA[JSON string with the results]]>
      </return-value-description-html>
   </method>
   <method name="QueryVsanObjects"
      vmodl-name="queryVsanObjects"
      privilege="System.Read"
      type-id-ref="java.lang.String"
      >
      <description-html>
         <![CDATA[Query information about VSAN DOM objects. Retrieves information about the
 given set of DOM object UUIDs. In order to make this API efficient, the
 output of this API contains the found DOM_OBJECT, and referenced
 LSOM_OBJECT and DISK entries.]]>
      </description-html>
      <parameter name="uuids" type-id-ref="java.lang.String"
      vmodl-name="uuids"
      version-id-ref="vim.version.version9"
      is-array="true"
      is-optional="true"
      privilege="uuids"
      >
      <description-html>
         <![CDATA[List of VSAN/DOM object UUIDs.]]>
      </description-html>
      </parameter>
      <return-value-description-html>
         <![CDATA[JSON string with the results]]>
      </return-value-description-html>
   </method>
   <method name="QueryObjectsOnPhysicalVsanDisk"
      vmodl-name="queryObjectsOnPhysicalVsanDisk"
      privilege="System.Read"
      type-id-ref="java.lang.String"
      >
      <description-html>
         <![CDATA[Query DOM objects on a given set of physical disks. Finds all DOM objects
 that have at least one component on the given physical disks. In order to
 make this API efficient, the output of this API contains the found
 DOM_OBJECT, and referenced LSOM_OBJECT and DISK entries.]]>
      </description-html>
      <parameter name="disks" type-id-ref="java.lang.String"
      vmodl-name="disks"
      version-id-ref="vim.version.version9"
      is-array="true"
      privilege="disks"
      >
      <description-html>
         <![CDATA[List of VSAN disk UUIDs.]]>
      </description-html>
      </parameter>
      <return-value-description-html>
         <![CDATA[JSON string with the results]]>
      </return-value-description-html>
   </method>
   <method name="AbdicateDomOwnership"
      vmodl-name="abdicateDomOwnership"
      internal-before-version-id-ref="vim.version.version10"
      is-array="true"
      is-optional="true"
      privilege="Host.Config.Storage"
      type-id-ref="java.lang.String"
      >
      <description-html>
         <![CDATA[Abdicate ownership of DOM objects. The objects must be currently owned
 by this host. Which host has ownership of an object at a given point in
 time can be queried from QueryVsanObjects() or QueryCmmds() APIs.
 Abidcating ownership tears down DOM owner in-memory state. Hosts in the
 cluster will then compete to become the new owner of the object, similar
 to a host failure event. There is a short interuption of IO flow while
 the owner re-election is going on, but it is transparent to any consumers
 of the object.

 This API is meant as a troubleshooting and debugging tool. It is internal
 at this point and can be used to resolve issues where DOM owner gets
 "stuck".]]>
      </description-html>
      <parameter name="uuids" type-id-ref="java.lang.String"
      vmodl-name="uuids"
      version-id-ref="vim.version.version9"
      is-array="true"
      privilege="uuids"
      >
      <description-html>
         <![CDATA[List of VSAN/DOM object UUIDs.]]>
      </description-html>
      </parameter>
      <return-value-description-html>
         <![CDATA[List of UUIDs successfully abdicated.]]>
      </return-value-description-html>
   </method>
   <method name="QueryVsanStatistics"
      vmodl-name="queryVsanStatistics"
      internal-before-version-id-ref="vim.version.version10"
      privilege="System.Read"
      type-id-ref="java.lang.String"
      >
      <description-html>
         <![CDATA[Query VSAN system statistics. This is a low level API that gathers low
 level statistic counters from the system. The details of the counters
 remain undocumented and unsupported at this point, and this API remains
 internal.

 The data for this API call mostly comes from VSI, but also other tools
 like memstats.

 The caller can control which counters are being retrieved by providing
 a list of labels. The following labels are current supported:
 - TBD]]>
      </description-html>
      <parameter name="labels" type-id-ref="java.lang.String"
      vmodl-name="labels"
      version-id-ref="vim.version.version9"
      is-array="true"
      privilege="labels"
      >
      <description-html>
         <![CDATA[List of labels of counters to retrieve.]]>
      </description-html>
      </parameter>
      <return-value-description-html>
         <![CDATA[JSON string with the results]]>
      </return-value-description-html>
   </method>
   <method name="ReconfigureDomObject"
      vmodl-name="reconfigureDomObject"
      internal-before-version-id-ref="vim.version.version10"
      privilege="Host.Config.Storage"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Reconfigure DOM object. Typically we expect VM centric APIs to be used
 for setting storage policies, i.e. to use ReconfigVM() to change the
 policy/profile of a namespace directory or virtual disk. This is a low
 level API to reconfigure any object known by UUID.

 This API is internal and intended for troubleshooting/debugging
 situations in the field.]]>
      </description-html>
      <parameter name="uuid" type-id-ref="java.lang.String"
      vmodl-name="uuid"
      version-id-ref="vim.version.version9"
      privilege="uuid"
      >
      <description-html>
         <![CDATA[DOM object UUID.]]>
      </description-html>
      </parameter>
      <parameter name="policy" type-id-ref="java.lang.String"
      vmodl-name="policy"
      version-id-ref="vim.version.version9"
      privilege="policy"
      >
      <description-html>
         <![CDATA[VSAN expression formatted policy string.]]>
      </description-html>
      </parameter>
   </method>
   <method name="QuerySyncingVsanObjects"
      vmodl-name="querySyncingVsanObjects"
      internal-before-version-id-ref="vim.version.version10"
      privilege="System.Read"
      type-id-ref="java.lang.String"
      >
      <description-html>
         <![CDATA[Query information about VSAN DOM objects that are currently syncing data.
 Instead of returning all objects, only such objects are returned that
 are currently resyncing any stale components or syncing fresh replicas.
 The API returns the same output format as queryVsanObjects(). It
 retrieves information about syncing all objects, or retricts the
 search for syncing objects to the UUID list provided. In order to make
 this API efficient, the output of this API contains the found
 DOM_OBJECT, and referenced LSOM_OBJECT and DISK entries.]]>
      </description-html>
      <parameter name="uuids" type-id-ref="java.lang.String"
      vmodl-name="uuids"
      version-id-ref="vim.version.version9"
      is-array="true"
      is-optional="true"
      privilege="uuids"
      >
      <description-html>
         <![CDATA[List of VSAN/DOM object UUIDs to restrict search to.]]>
      </description-html>
      </parameter>
      <return-value-description-html>
         <![CDATA[JSON string with the results]]>
      </return-value-description-html>
   </method>
   <method name="RunVsanPhysicalDiskDiagnostics"
      vmodl-name="runVsanPhysicalDiskDiagnostics"
      internal-before-version-id-ref="vim.version.version10"
      is-array="true"
      privilege="System.Read"
      type-id-ref="vim.host.VsanInternalSystem.VsanPhysicalDiskDiagnosticsResult"
      >
      <description-html>
         <![CDATA[Runs diagnostics on VSAN physical disks. This method takes an active
 approach and creates a minimal and temporary object on each physical
 MD disk consumed by VSAN across the entire VSAN cluster. The temporary
 objects are deleted right away upon completion of creation. The result
 returns a list of all checked MDs, indicating wheather or not there was
 a problem creating an object on that MD at the given point in time.]]>
      </description-html>
      <parameter name="disks" type-id-ref="java.lang.String"
      vmodl-name="disks"
      version-id-ref="vim.version.version9"
      is-array="true"
      is-optional="true"
      privilege="disks"
      >
      <description-html>
         <![CDATA[List of VSAN disk UUIDs. If specified restricts the
              diagnostics run to VSAN disks present in the provided list.]]>
      </description-html>
      </parameter>
      <return-value-description-html>
         <![CDATA[A list of result structures. One per checked disk.]]>
      </return-value-description-html>
   </method>
   <method name="GetVsanObjExtAttrs"
      vmodl-name="getVsanObjExtAttrs"
      internal-before-version-id-ref="vim.version.version10"
      privilege="System.Read"
      type-id-ref="java.lang.String"
      >
      <description-html>
         <![CDATA[Get VSAN object extended attributes.

 This API is internal and intended for troubleshooting/debugging
 situations in the field. WARNING: This API can be slow because we
 do IOs (reads) to all the objects. This API can be used to get
 extended attributes of any object in the VSAN cluster from any host
 provided the object is accessible from that host. In case of an error,
 we return a dict with key "Error" for that object.]]>
      </description-html>
      <parameter name="uuids" type-id-ref="java.lang.String"
      vmodl-name="uuids"
      version-id-ref="vim.version.version9"
      is-array="true"
      privilege="uuids"
      >
      <description-html>
         <![CDATA[List of object UUIDs.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.VimFault">
      </fault>
      <return-value-description-html>
         <![CDATA[JSON string with the extended attributes.]]>
      </return-value-description-html>
   </method>
   <method name="ReconfigurationSatisfiable"
      vmodl-name="reconfigurationSatisfiable"
      internal-before-version-id-ref="vim.version.version10"
      is-array="true"
      privilege="System.Read"
      type-id-ref="vim.host.VsanInternalSystem.PolicySatisfiability"
      >
      <description-html>
         <![CDATA[Determine if the given objects can be reconfigured with the given
 policies. The what-if determination only takes into account
 the total number of hosts and total number
 of disks per host. The API is intended to answer the question: is
 this reconfiguration possible using the current cluster topology
 (#hosts and #disks) and does NOT take into account free space on the
 disk, size of disks, etc. If policy is not satisfiable, the API returns
 the reason for not being able to satisfy the policy. If the policy is
 satisfiable, the API returns the cost of provisioning objects with the
 new policy. This cost can be combined with current available free disk
 space to compute if a particular operation is expected to succeed
 or fail. Please note: This API ignores forceProvisioning.]]>
      </description-html>
      <parameter name="pcbs" type-id-ref="vim.host.VsanInternalSystem.PolicyChangeBatch"
      vmodl-name="pcbs"
      version-id-ref="vim.version.version9"
      is-array="true"
      privilege="pcbs"
      >
      <description-html>
         <![CDATA[List of PolicyChangeBatch structure with uuids and policies.]]>
      </description-html>
      </parameter>
      <parameter name="ignoreSatisfiability" type-id-ref="BOOLEAN"
      vmodl-name="ignoreSatisfiability"
      version-id-ref="vim.version.version9"
      is-optional="true"
      privilege="ignoreSatisfiability"
      >
      <description-html>
         <![CDATA[Optionally populate PolicyCost even though
        object cannot be reconfigured in the current cluster topology.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.VimFault">
      </fault>
      <return-value-description-html>
         <![CDATA[List of PolicySatisfiability objects, one for each specified
         UUID.]]>
      </return-value-description-html>
   </method>
   <method name="CanProvisionObjects"
      vmodl-name="canProvisionObjects"
      internal-before-version-id-ref="vim.version.version10"
      is-array="true"
      privilege="System.Read"
      type-id-ref="vim.host.VsanInternalSystem.PolicySatisfiability"
      >
      <description-html>
         <![CDATA[Determine if given objects can be provisioned. Determines if the objects
 of the given size can be provisioned with the given policies.
 The API is intended to answer the question: can these objects be
 provisioned with the given policy using the current cluster topology
 (#hosts and #disks) and does NOT take into account free space on the
 disk, size of disks, etc. If the objects cannot be provisioned,
 the API returns the reason for not being able to satisfy the policy.
 If the objects can be provisioned, the API returns the cost of
 provisioning objects with this policy. Please note: This API ignores
 forceProvisioning.]]>
      </description-html>
      <parameter name="npbs" type-id-ref="vim.host.VsanInternalSystem.NewPolicyBatch"
      vmodl-name="npbs"
      version-id-ref="vim.version.version9"
      is-array="true"
      privilege="npbs"
      >
      <description-html>
         <![CDATA[List of NewPolicyBatch structure with sizes and policies.]]>
      </description-html>
      </parameter>
      <parameter name="ignoreSatisfiability" type-id-ref="BOOLEAN"
      vmodl-name="ignoreSatisfiability"
      version-id-ref="vim.version.version9"
      is-optional="true"
      privilege="ignoreSatisfiability"
      >
      <description-html>
         <![CDATA[Optionally populate PolicyCost even though
        object cannot be provisioned in the current cluster topology.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.VimFault">
      </fault>
      <return-value-description-html>
         <![CDATA[List of PolicySatisfiability objects, one for each specified
         size.]]>
      </return-value-description-html>
   </method>
   <method name="DeleteVsanObjects"
      vmodl-name="deleteVsanObjects"
      internal-before-version-id-ref="vim.version.version10"
      is-array="true"
      privilege="Host.Config.Storage"
      type-id-ref="vim.host.VsanInternalSystem.DeleteVsanObjectsResult"
      >
      <description-html>
         <![CDATA[Delete VSAN objects.

 This API is internal and intended for troubleshooting/debugging only.
 WARNING: This API can be slow because we do IOs to all the objects.
 This API can be used to delete VSAN objects. DOM won't allow access to
 objects which have lost quorum. Such objects can be deleted with the
 optional "force" flag. These objects may however re-appear with quorum
 if the absent components come back (network partition gets resolved,
 etc.)]]>
      </description-html>
      <parameter name="uuids" type-id-ref="java.lang.String"
      vmodl-name="uuids"
      version-id-ref="vim.version.version9"
      is-array="true"
      privilege="uuids"
      >
      <description-html>
         <![CDATA[List of object UUIDs to be deleted.]]>
      </description-html>
      </parameter>
      <parameter name="force" type-id-ref="BOOLEAN"
      vmodl-name="force"
      version-id-ref="vim.version.version9"
      is-optional="true"
      privilege="force"
      >
      <description-html>
         <![CDATA[Optional force delete.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.VimFault">
      </fault>
      <return-value-description-html>
         <![CDATA[List of DeleteVsanObjectsResult.]]>
      </return-value-description-html>
   </method>
   <method name="UpgradeVsanObjects"
      vmodl-name="upgradeVsanObjects"
      version-id-ref="vim.version.version10"
      is-array="true"
      is-optional="true"
      privilege="Host.Config.Storage"
      type-id-ref="vim.host.VsanInternalSystem.VsanObjectOperationResult"
      >
      <description-html>
         <![CDATA[Upgrade VSAN objects version.

 Upgrade a set of objects' version to new one in batch mode.
 API caller should limit the size of the inputs array, and suggested
 array size is 500 ~ 1000 initially. (The API will give more realistic
 suggestion after more experiments, then will apply hard limits in future)]]>
      </description-html>
      <parameter name="uuids" type-id-ref="java.lang.String"
      vmodl-name="uuids"
      version-id-ref="vim.version.version10"
      is-array="true"
      privilege="uuids"
      >
      <description-html>
         <![CDATA[The array of objects' UUID which will be upgraded.]]>
      </description-html>
      </parameter>
      <parameter name="newVersion" type-id-ref="INT"
      vmodl-name="newVersion"
      version-id-ref="vim.version.version10"
      privilege="newVersion"
      >
      <description-html>
         <![CDATA[The new version will be applied to objects.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.VsanFault">
      <fault-description-html>
         <![CDATA[for any unexpected failures.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[Array of VsanObjectOperationResult, the array only contains
         result for failed objects, such as invalid or not existing UUID,
         upgrade failure, etc.]]>
      </return-value-description-html>
   </method>
   <method name="QueryVsanObjectUuidsByFilter"
      vmodl-name="queryVsanObjectUuidsByFilter"
      version-id-ref="vim.version.version10"
      is-array="true"
      is-optional="true"
      privilege="System.Read"
      type-id-ref="java.lang.String"
      >
      <description-html>
         <![CDATA[Query VSAN object UUIDs by filtering conditions.

 The API queries CMMDS by given filtering conditions (initially only for
 object version) and return object UUID in an array with limited elements
 count.

 If caller specified the inputs objects UUID, then only these objects will
 be checked for the filtering conditions, and return ones which satisfy
 the filtering condition. In this case, the 'limit' parameter will be
 ignored.]]>
      </description-html>
      <parameter name="uuids" type-id-ref="java.lang.String"
      vmodl-name="uuids"
      version-id-ref="vim.version.version10"
      is-array="true"
      is-optional="true"
      privilege="uuids"
      >
      <description-html>
         <![CDATA[Objects UUID will be checked against the filtering
              conditions.]]>
      </description-html>
      </parameter>
      <parameter name="limit" type-id-ref="INT"
      vmodl-name="limit"
      version-id-ref="vim.version.version10"
      is-optional="true"
      privilege="limit"
      >
      <description-html>
         <![CDATA[To limit the size of the result set.]]>
      </description-html>
      </parameter>
      <parameter name="version" type-id-ref="INT"
      vmodl-name="version"
      version-id-ref="vim.version.version10"
      is-optional="true"
      privilege="version"
      >
      <description-html>
         <![CDATA[Filtering condition 1: object version.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.VsanFault">
      <fault-description-html>
         <![CDATA[for any unexpected failures.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[String array of object uuids which satisfy the filtering
         conditions.]]>
      </return-value-description-html>
   </method>
   </managed-object>
   <managed-object name="ResourcePlanningManager"
      type-id="vim.ResourcePlanningManager"
      vmodl-name="vim.ResourcePlanningManager"
      version-id-ref="vim.version.version5"
      >
      <nested-type-id-ref>vim.ResourcePlanningManager.DatabaseSizeParam</nested-type-id-ref>
      <nested-type-id-ref>vim.ResourcePlanningManager.InventoryDescription</nested-type-id-ref>
      <nested-type-id-ref>vim.ResourcePlanningManager.PerfStatsDescription</nested-type-id-ref>
      <nested-type-id-ref>vim.ResourcePlanningManager.DatabaseSizeEstimate</nested-type-id-ref>
   <method name="EstimateDatabaseSize"
      vmodl-name="estimateDatabaseSize"
      privilege="System.Read"
      type-id-ref="vim.ResourcePlanningManager.DatabaseSizeEstimate"
      >
      <description-html>
         <![CDATA[Estimates the database size required to store VirtualCenter data.
  <p>]]>
      </description-html>
      <parameter name="dbSizeParam" type-id-ref="vim.ResourcePlanningManager.DatabaseSizeParam"
      vmodl-name="dbSizeParam"
      version-id-ref="vim.version.version5"
      privilege="dbSizeParam"
      >
      <description-html>
         <![CDATA[<a href="vim.ResourcePlanningManager.DatabaseSizeParam.html">DatabaseSizeParam</a>
  Contains the summary of an inventory for which the database size
  requirements are to be computed. It also contains
  the historic interval setting for which the database
  computations are to be done. This is an optional parameter and
  the current virtual center historical settings are used by default.
  There are many other optional fields in the dbSizeParam structure
  that are appropriately filled up based on some heuristics.]]>
      </description-html>
      </parameter>
      <return-value-description-html>
         <![CDATA[<a href="vim.ResourcePlanningManager.DatabaseSizeEstimate.html">DatabaseSizeEstimate</a>
  Returns the size required in MB of the database and the number of database
  rows.]]>
      </return-value-description-html>
   </method>
   </managed-object>
   <managed-object name="GuestAliasManager"
      type-id="vim.vm.guest.AliasManager"
      vmodl-name="vim.vm.guest.AliasManager"
      version-id-ref="vim.version.version10"
      >
      <description-html>
         <![CDATA[The GuestAliasManager supports single sign-on for virtual machine access
 to perform guest operations. The GuestAliasManager provides methods
 to create and access aliases.
 <p>
 A guest alias defines an association between a guest user account on a virtual
 machine
 and an external vSphere user account. The vSphere account is represented by
 credentials consisting of an X.509 certificate and a subject name.
 The certificate and subject name
 are encoded
 in SAML tokens that are provided by the VMware SSO Server. The SAML tokens
 are attached
 to guest operation requests. If the credentials in a SAML token match an
 alias that is defined
 for a virtual machine, the ESXi Server guest components grant
 access for execution of the
 guest operation
 in the context of the user account on the virtual machine.
 </p>
 <p>
 To create a guest alias, use the AddGuestAlias method. AddGuestAlias
 establishes
 the association between a guest user account, certificate, and SAML token subject.
 </p>
 <ul>
 <li>The username parameter identifies the guest account.</li>
 <li>The base64Cert parameter specifies the X.509 certificate.</li>
 <li>The aliasInfo parameter identifies the SAML token subject
  (<a href="vim.vm.guest.AliasManager.GuestAuthAliasInfo.html">GuestAuthAliasInfo</a>.
  <a href="vim.vm.guest.AliasManager.GuestAuthAliasInfo.html#subject">subject</a>.
  <a href="vim.vm.guest.AliasManager.GuestAuthNamedSubject.html#name">name</a>).</li>
  </ul>
  <p>
  If there are no aliases defined for a virtual machine, the ESXi Server
  will perform
  standard authentication using the credentials associated with a guest
  operation request.
  If one or more aliases are defined for a virtual machine, any guest
  operation request
  that uses SAML token authentication SAMLTokenAuthentication must specify
  a token
  that corresponds to one of the defined aliases.
  </p>
  <p>
  After defining one or more guest aliases, you can specify
  <a href="vim.vm.guest.SAMLTokenAuthentication.html">SAMLTokenAuthentication</a> for the
  <b>auth</b> parameter to guest operation methods:
  </p>
  <ul>
  <li><a href="vim.vm.guest.ProcessManager.html">GuestProcessManager</a> methods</li>
  <li><a href="vim.vm.guest.FileManager.html">GuestFileManager</a> methods</li>
  <li><a href="vim.vm.guest.WindowsRegistryManager.html">GuestWindowsRegistryManager</a> methods</li>
  </ul>
  <p>
  For information about obtaining a SAML token from a VMware SSO Server,
  see <i>VMware Single Sign-On Programming Guide</i>.
  </p>
  <p>
  You can define multiple aliases for a guest account. You can also
  map the credentials
  to an alias by setting <b>mapCert</b> to "true" in the call to the
  AddGuestAlias method.
  When an alias has a mapped credential, requests using that alias do not
  need to identify the guest account.
  </p>]]>
      </description-html>
      <nested-type-id-ref>vim.vm.guest.AliasManager.GuestAuthSubject</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.guest.AliasManager.GuestAuthAnySubject</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.guest.AliasManager.GuestAuthNamedSubject</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.guest.AliasManager.GuestAuthAliasInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.guest.AliasManager.GuestAliases</nested-type-id-ref>
      <nested-type-id-ref>vim.vm.guest.AliasManager.GuestMappedAliases</nested-type-id-ref>
   <method name="AddGuestAlias"
      vmodl-name="addAlias"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Defines an alias for a guest account in a virtual machine.
 After the alias is defined, the ESXi Server will use the alias
 to authenticate guest operations requests.
 <p>
 This will add the given VMware SSO Server's certificate and a
 subject to the alias store of the
 specified user in the guest.
 <p>
 In order to add an alias to the guest, you must supply
 an existing valid credential.  This can be any instance
 of <a href="vim.vm.guest.GuestAuthentication.html">GuestAuthentication</a>, but must be valid for the
 specified guest username.
 <p>]]>
      </description-html>
      <parameter name="vm" type-id-ref="vim.VirtualMachine"
      vmodl-name="vm"
      version-id-ref="vim.version.version10"
      privilege="vm"
      >
      <description-html>
         <![CDATA[Virtual machine to perform the operation on.]]>
      </description-html>
      </parameter>
      <parameter name="auth" type-id-ref="vim.vm.guest.GuestAuthentication"
      vmodl-name="auth"
      version-id-ref="vim.version.version10"
      privilege="auth"
      >
      <description-html>
         <![CDATA[The guest authentication data for this operation.  See
             <a href="vim.vm.guest.GuestAuthentication.html">GuestAuthentication</a>.   These credentials must satisfy
             authentication requirements
             for a guest account on the specified virtual machine.]]>
      </description-html>
      </parameter>
      <parameter name="username" type-id-ref="java.lang.String"
      vmodl-name="username"
      version-id-ref="vim.version.version10"
      privilege="username"
      >
      <description-html>
         <![CDATA[Username for the guest account on the virtual machine.]]>
      </description-html>
      </parameter>
      <parameter name="mapCert" type-id-ref="BOOLEAN"
      vmodl-name="mapCert"
      version-id-ref="vim.version.version10"
      privilege="mapCert"
      >
      <description-html>
         <![CDATA[Indicates whether the certificate associated with the
                alias should be mapped. If an alias certificate is mapped,
                guest operation requests that use that alias do not have
                to specify the guest account username in the
                <a href="vim.vm.guest.SAMLTokenAuthentication.html">SAMLTokenAuthentication</a> object. If mapCert is
                false, the request must specify the username.]]>
      </description-html>
      </parameter>
      <parameter name="base64Cert" type-id-ref="java.lang.String"
      vmodl-name="base64Cert"
      version-id-ref="vim.version.version10"
      privilege="base64Cert"
      >
      <description-html>
         <![CDATA[X.509 certificate from the VMware SSO Server,
                    in base64 encoded DER format. The ESXi
                    Server uses this certificate to authenticate guest
                    operation requests.]]>
      </description-html>
      </parameter>
      <parameter name="aliasInfo" type-id-ref="vim.vm.guest.AliasManager.GuestAuthAliasInfo"
      vmodl-name="aliasInfo"
      version-id-ref="vim.version.version10"
      privilege="aliasInfo"
      >
      <description-html>
         <![CDATA[Specifies the subject name for authentication.
                   The subject name (when present) corresponds to
                   the value of the Subject element
                   in SAML tokens. The ESXi Server uses the subject
                   name to authenticate guest operation requests.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.GuestOperationsFault">
      <fault-description-html>
         <![CDATA[if there is an error processing a guest
                              operation.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the operation cannot be performed because of the
                      virtual machine's current state.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.TaskInProgress">
      <fault-description-html>
         <![CDATA[if the virtual machine is busy.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.GuestOperationsUnavailable">
      <fault-description-html>
         <![CDATA[if the VM agent for guest operations
                                    is not running.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidPowerState">
      <fault-description-html>
         <![CDATA[if the VM is not powered on.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.GuestPermissionDenied">
      <fault-description-html>
         <![CDATA[if there are insufficient permissions in
                               the guest OS.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidGuestLogin">
      <fault-description-html>
         <![CDATA[if the the guest authentication information
                           was not accepted.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.GuestComponentsOutOfDate">
      <fault-description-html>
         <![CDATA[if the guest agent is too old to support
                                  the operation.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.OperationNotSupportedByGuest">
      <fault-description-html>
         <![CDATA[if the operation is not supported
                                      by the guest OS.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.OperationDisabledByGuest">
      <fault-description-html>
         <![CDATA[if the operation is not enabled due to
                                  guest agent configuration.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.GuestMultipleMappings">
      <fault-description-html>
         <![CDATA[if the operation fails because
                               mapCert is set and the certificate already
                               exists in the mapping file for a
                               different user.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="RemoveGuestAlias"
      vmodl-name="removeAlias"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Removes an alias from the guest so it can no longer be
 used for
 authentication of guest operations.  It will also be removed
 from the mapped credentials.
 <p>]]>
      </description-html>
      <parameter name="vm" type-id-ref="vim.VirtualMachine"
      vmodl-name="vm"
      version-id-ref="vim.version.version10"
      privilege="vm"
      >
      <description-html>
         <![CDATA[Virtual machine to perform the operation on.]]>
      </description-html>
      </parameter>
      <parameter name="auth" type-id-ref="vim.vm.guest.GuestAuthentication"
      vmodl-name="auth"
      version-id-ref="vim.version.version10"
      privilege="auth"
      >
      <description-html>
         <![CDATA[The guest authentication data for this operation.  See
             <a href="vim.vm.guest.GuestAuthentication.html">GuestAuthentication</a>.   These credentials must satisfy
             authentication requirements
             for a guest account on the specified virtual machine.]]>
      </description-html>
      </parameter>
      <parameter name="username" type-id-ref="java.lang.String"
      vmodl-name="username"
      version-id-ref="vim.version.version10"
      privilege="username"
      >
      <description-html>
         <![CDATA[Username for the guest account on the virtual machine.]]>
      </description-html>
      </parameter>
      <parameter name="base64Cert" type-id-ref="java.lang.String"
      vmodl-name="base64Cert"
      version-id-ref="vim.version.version10"
      privilege="base64Cert"
      >
      <description-html>
         <![CDATA[The X.509 certificate associated with the alias to be
                   removed, in base64 encoded DER format.]]>
      </description-html>
      </parameter>
      <parameter name="subject" type-id-ref="vim.vm.guest.AliasManager.GuestAuthSubject"
      vmodl-name="subject"
      version-id-ref="vim.version.version10"
      privilege="subject"
      >
      <description-html>
         <![CDATA[The subject of the alias.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.GuestOperationsFault">
      <fault-description-html>
         <![CDATA[if there is an error processing a guest
                              operation.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the operation cannot be performed because of the
                      virtual machine's current state.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.TaskInProgress">
      <fault-description-html>
         <![CDATA[if the virtual machine is busy.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.GuestOperationsUnavailable">
      <fault-description-html>
         <![CDATA[if the VM agent for guest operations
                                    is not running.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidPowerState">
      <fault-description-html>
         <![CDATA[if the VM is not powered on.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.GuestPermissionDenied">
      <fault-description-html>
         <![CDATA[if there are insufficient permissions in
                               the guest OS.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidGuestLogin">
      <fault-description-html>
         <![CDATA[if the the guest authentication information
                           was not accepted.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.GuestComponentsOutOfDate">
      <fault-description-html>
         <![CDATA[if the guest agent is too old to support
                                  the operation.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.OperationNotSupportedByGuest">
      <fault-description-html>
         <![CDATA[if the operation is not supported
                                      by the guest OS.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.OperationDisabledByGuest">
      <fault-description-html>
         <![CDATA[if the operation is not enabled due to
                                  guest agent configuration.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="RemoveGuestAliasByCert"
      vmodl-name="removeAliasByCert"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Removes a VMware SSO Server's certificate and all
 associated aliases from the guest so it
 can no longer be used for
 authentication of guest operations.  It will also be removed
 from the global certificate-to-user mapping file in the guest.
 <p>]]>
      </description-html>
      <parameter name="vm" type-id-ref="vim.VirtualMachine"
      vmodl-name="vm"
      version-id-ref="vim.version.version10"
      privilege="vm"
      >
      <description-html>
         <![CDATA[Virtual machine to perform the operation on.]]>
      </description-html>
      </parameter>
      <parameter name="auth" type-id-ref="vim.vm.guest.GuestAuthentication"
      vmodl-name="auth"
      version-id-ref="vim.version.version10"
      privilege="auth"
      >
      <description-html>
         <![CDATA[The guest authentication data for this operation.  See
             <a href="vim.vm.guest.GuestAuthentication.html">GuestAuthentication</a>.   These credentials must satisfy
             authentication requirements
             for a guest account on the specified virtual machine.]]>
      </description-html>
      </parameter>
      <parameter name="username" type-id-ref="java.lang.String"
      vmodl-name="username"
      version-id-ref="vim.version.version10"
      privilege="username"
      >
      <description-html>
         <![CDATA[Username for the guest account on the virtual machine.]]>
      </description-html>
      </parameter>
      <parameter name="base64Cert" type-id-ref="java.lang.String"
      vmodl-name="base64Cert"
      version-id-ref="vim.version.version10"
      privilege="base64Cert"
      >
      <description-html>
         <![CDATA[The X.509 certificate to be removed, in base64
                   encoded DER format.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.GuestOperationsFault">
      <fault-description-html>
         <![CDATA[if there is an error processing a guest
                              operation.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the operation cannot be performed because of the
                      virtual machine's current state.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.TaskInProgress">
      <fault-description-html>
         <![CDATA[if the virtual machine is busy.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.GuestOperationsUnavailable">
      <fault-description-html>
         <![CDATA[if the VM agent for guest operations
                                    is not running.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidPowerState">
      <fault-description-html>
         <![CDATA[if the VM is not powered on.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.GuestPermissionDenied">
      <fault-description-html>
         <![CDATA[if there are insufficient permissions in
                               the guest OS.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidGuestLogin">
      <fault-description-html>
         <![CDATA[if the the guest authentication information
                           was not accepted.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.GuestComponentsOutOfDate">
      <fault-description-html>
         <![CDATA[if the guest agent is too old to support
                                  the operation.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.OperationNotSupportedByGuest">
      <fault-description-html>
         <![CDATA[if the operation is not supported
                                      by the guest OS.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.OperationDisabledByGuest">
      <fault-description-html>
         <![CDATA[if the operation is not enabled due to
                                  guest agent configuration.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="ListGuestAliases"
      vmodl-name="listAliases"
      is-array="true"
      is-optional="true"
      type-id-ref="vim.vm.guest.AliasManager.GuestAliases"
      >
      <description-html>
         <![CDATA[Lists the
 <a href="vim.vm.guest.AliasManager.GuestAliases.html">GuestAliases</a>
 for a specified user in the guest that can be used
 for authentication of guest operations.
 <p>]]>
      </description-html>
      <parameter name="vm" type-id-ref="vim.VirtualMachine"
      vmodl-name="vm"
      version-id-ref="vim.version.version10"
      privilege="vm"
      >
      <description-html>
         <![CDATA[Virtual machine to perform the operation on.]]>
      </description-html>
      </parameter>
      <parameter name="auth" type-id-ref="vim.vm.guest.GuestAuthentication"
      vmodl-name="auth"
      version-id-ref="vim.version.version10"
      privilege="auth"
      >
      <description-html>
         <![CDATA[The guest authentication data for this operation.  See
             <a href="vim.vm.guest.GuestAuthentication.html">GuestAuthentication</a>.   These credentials must satisfy
             authentication requirements
             for a guest account on the specified virtual machine.]]>
      </description-html>
      </parameter>
      <parameter name="username" type-id-ref="java.lang.String"
      vmodl-name="username"
      version-id-ref="vim.version.version10"
      privilege="username"
      >
      <description-html>
         <![CDATA[The guest user whose Alias store is being queried.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.GuestOperationsFault">
      <fault-description-html>
         <![CDATA[if there is an error processing a guest
                              operation.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the operation cannot be performed because of the
                      virtual machine's current state.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.TaskInProgress">
      <fault-description-html>
         <![CDATA[if the virtual machine is busy.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.GuestOperationsUnavailable">
      <fault-description-html>
         <![CDATA[if the agent for guest operations
                                    is not running.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidPowerState">
      <fault-description-html>
         <![CDATA[if the VM is not powered on.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.GuestPermissionDenied">
      <fault-description-html>
         <![CDATA[if there are insufficient permissions in
                               the guest OS.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidGuestLogin">
      <fault-description-html>
         <![CDATA[if the the guest authentication information
                           was not accepted.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.GuestComponentsOutOfDate">
      <fault-description-html>
         <![CDATA[if the guest agent is too old to support
                                  the operation.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.OperationNotSupportedByGuest">
      <fault-description-html>
         <![CDATA[if the operation is not supported
                                      by the guest OS.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.OperationDisabledByGuest">
      <fault-description-html>
         <![CDATA[if the operation is not enabled due to
                                  guest agent configuration.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="ListGuestMappedAliases"
      vmodl-name="listMappedAliases"
      is-array="true"
      is-optional="true"
      type-id-ref="vim.vm.guest.AliasManager.GuestMappedAliases"
      >
      <description-html>
         <![CDATA[Lists the
 <a href="vim.vm.guest.AliasManager.GuestMappedAliases.html">GuestMappedAliases</a>
 in the guest that can be used for
 authentication of guest operations.
 <p>]]>
      </description-html>
      <parameter name="vm" type-id-ref="vim.VirtualMachine"
      vmodl-name="vm"
      version-id-ref="vim.version.version10"
      privilege="vm"
      >
      <description-html>
         <![CDATA[Virtual machine to perform the operation on.]]>
      </description-html>
      </parameter>
      <parameter name="auth" type-id-ref="vim.vm.guest.GuestAuthentication"
      vmodl-name="auth"
      version-id-ref="vim.version.version10"
      privilege="auth"
      >
      <description-html>
         <![CDATA[The guest authentication data for this operation.  See
             <a href="vim.vm.guest.GuestAuthentication.html">GuestAuthentication</a>.   These credentials must satisfy
             authentication requirements
             for a guest account on the specified virtual machine.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.GuestOperationsFault">
      <fault-description-html>
         <![CDATA[if there is an error processing a guest
                              operation.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the operation cannot be performed because of the
                      virtual machine's current state.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.TaskInProgress">
      <fault-description-html>
         <![CDATA[if the virtual machine is busy.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.GuestOperationsUnavailable">
      <fault-description-html>
         <![CDATA[if the VM agent for guest operations
                                    is not running.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidPowerState">
      <fault-description-html>
         <![CDATA[if the VM is not powered on.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.GuestPermissionDenied">
      <fault-description-html>
         <![CDATA[if there are insufficient permissions in
                               the guest OS.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidGuestLogin">
      <fault-description-html>
         <![CDATA[if the the guest authentication information
                           was not accepted.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.GuestComponentsOutOfDate">
      <fault-description-html>
         <![CDATA[if the guest agent is too old to support
                                  the operation.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.OperationNotSupportedByGuest">
      <fault-description-html>
         <![CDATA[if the operation is not supported
                                      by the guest OS.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.OperationDisabledByGuest">
      <fault-description-html>
         <![CDATA[if the operation is not enabled due to
                                  guest agent configuration.]]>
      </fault-description-html>
      </fault>
   </method>
   </managed-object>
   <managed-object name="DatastoreNamespaceManager"
      type-id="vim.DatastoreNamespaceManager"
      vmodl-name="vim.DatastoreNamespaceManager"
      version-id-ref="vim.version.version9"
      >
      <description-html>
         <![CDATA[The DatastoreNamespaceManager managed object exposes APIs for
 manipulating top-level directories of datastores which do not
 support the traditional top-level directory creation.<br>See <a href="vim.Datastore.Capability.html#topLevelDirectoryCreateSupported">topLevelDirectoryCreateSupported</a><br>]]>
      </description-html>
   <method name="CreateDirectory"
      vmodl-name="CreateDirectory"
      type-id-ref="java.lang.String"
      >
      <description-html>
         <![CDATA[Creates a top-level directory on the given datastore, using the given
 user display name hint and opaque storage policy.
 <p>
 The optional given display name hint may be used by the underlying
 storage system for user display purposes, but it may not be relied
 upon for future directory references.
 <p>
 Clients must use the returned stable path for future directory
 references.<br>See <a href="vim.DatastoreNamespaceManager.html#DeleteDirectory">DeleteDirectory</a><br>]]>
      </description-html>
      <parameter name="datastore" type-id-ref="vim.Datastore"
      vmodl-name="datastore"
      version-id-ref="vim.version.version9"
      privilege="datastore"
      >
      <description-html>
         <![CDATA[datastore on which to create a top-level directory<br>See <a href="vim.DatastoreNamespaceManager.html#DeleteDirectory">DeleteDirectory</a><br>]]>
      </description-html>
      </parameter>
      <parameter name="displayName" type-id-ref="java.lang.String"
      vmodl-name="displayName"
      version-id-ref="vim.version.version9"
      is-optional="true"
      privilege="displayName"
      >
      <description-html>
         <![CDATA[display name hint for the directory to create<br>See <a href="vim.DatastoreNamespaceManager.html#DeleteDirectory">DeleteDirectory</a><br>]]>
      </description-html>
      </parameter>
      <parameter name="policy" type-id-ref="java.lang.String"
      vmodl-name="policy"
      version-id-ref="vim.version.version9"
      is-optional="true"
      privilege="policy"
      >
      <description-html>
         <![CDATA[opaque storage policy to associate with the directory<br>See <a href="vim.DatastoreNamespaceManager.html#DeleteDirectory">DeleteDirectory</a><br>]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.CannotCreateFile">
      <fault-description-html>
         <![CDATA[if a general system error occurred while creating
                     directory on the datastore<br>See <a href="vim.DatastoreNamespaceManager.html#DeleteDirectory">DeleteDirectory</a><br>]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.FileAlreadyExists">
      <fault-description-html>
         <![CDATA[if the given directory already exists<br>See <a href="vim.DatastoreNamespaceManager.html#DeleteDirectory">DeleteDirectory</a><br>]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidDatastore">
      <fault-description-html>
         <![CDATA[if the given datastore is not supported by
                          the DatastoreNamespaceManage<br>See <a href="vim.DatastoreNamespaceManager.html#DeleteDirectory">DeleteDirectory</a><br>]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[a stable vmfs path which may be used for future
         reference of the created directory, of the form
         <blockquote>
         /vmfs/volumes/[<i>datastore-uuid</i>]/[<i>directory-uuid</i>]
         </blockquote>]]>
      </return-value-description-html>
   </method>
   <method name="DeleteDirectory"
      vmodl-name="DeleteDirectory"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Deletes the given top-level directory from a datastore.
 <p>
 The top-level directory must be a full path of the form
 <blockquote>
 /vmfs/volumes/[<i>datastore-uuid</i>]/[<i>directory-uuid</i>]
 </blockquote> as returned by
 <a href="vim.DatastoreNamespaceManager.html#CreateDirectory">CreateDirectory</a>.
 <p>
 Requires Datastore.Config privilege on the datastore.
 <p><br>See <a href="vim.DatastoreNamespaceManager.html#CreateDirectory">CreateDirectory</a><br>]]>
      </description-html>
      <parameter name="datacenter" type-id-ref="vim.Datacenter"
      vmodl-name="datacenter"
      version-id-ref="vim.version.version9"
      is-optional="true"
      privilege="datacenter"
      >
      <description-html>
         <![CDATA[The datacenter of the datastore path. Needs to be set
                   when making the call to VC; ignored when the call is
                   made to ESX.<br>See <a href="vim.DatastoreNamespaceManager.html#CreateDirectory">CreateDirectory</a><br>]]>
      </description-html>
      </parameter>
      <parameter name="datastorePath" type-id-ref="java.lang.String"
      vmodl-name="datastorePath"
      version-id-ref="vim.version.version9"
      privilege="datastorePath"
      >
      <description-html>
         <![CDATA[Stable vmfs path of the directory to delete.<br>See <a href="vim.DatastoreNamespaceManager.html#CreateDirectory">CreateDirectory</a><br>]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.FileFault">
      <fault-description-html>
         <![CDATA[if a generic system error happened.<br>See <a href="vim.DatastoreNamespaceManager.html#CreateDirectory">CreateDirectory</a><br>]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.FileNotFound">
      <fault-description-html>
         <![CDATA[if the given directory can not be found<br>See <a href="vim.DatastoreNamespaceManager.html#CreateDirectory">CreateDirectory</a><br>]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidDatastore">
      <fault-description-html>
         <![CDATA[if the given datastore is not supported by
                          the DatastoreNamespaceManager<br>See <a href="vim.DatastoreNamespaceManager.html#CreateDirectory">CreateDirectory</a><br>]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidDatastorePath">
      <fault-description-html>
         <![CDATA[if the given path is not a top-level directory<br>See <a href="vim.DatastoreNamespaceManager.html#CreateDirectory">CreateDirectory</a><br>]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="ConvertNamespacePathToUuidPath"
      vmodl-name="ConvertNamespacePathToUuidPath"
      version-id-ref="vim.version.version11"
      privilege="System.View"
      type-id-ref="java.lang.String"
      >
      <description-html>
         <![CDATA[Convert the namespace path to the namespace UUID path.]]>
      </description-html>
      <parameter name="datacenter" type-id-ref="vim.Datacenter"
      vmodl-name="datacenter"
      version-id-ref="vim.version.version11"
      is-optional="true"
      privilege="datacenter"
      >
      <description-html>
         <![CDATA[The datacenter of the namespace path. Needs to be set
                   when making the call to VC; ignored when the call is
                   made to ESX.]]>
      </description-html>
      </parameter>
      <parameter name="namespaceUrl" type-id-ref="java.lang.String"
      vmodl-name="namespaceUrl"
      version-id-ref="vim.version.version11"
      privilege="namespaceUrl"
      >
      <description-html>
         <![CDATA[Namesapce URL of the form
                     <blockquote>
                     [ds://]/vmfs/volumes/[<i>datastore-uuid</i>]/[<i>directory-name</i>]/...
                     </blockquote>]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.InvalidDatastore">
      <fault-description-html>
         <![CDATA[if the given datastore is not supported by
                          the DatastoreNamespaceManager]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidDatastorePath">
      <fault-description-html>
         <![CDATA[if the given path is not a top-level
                              directory]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[the URL path with namespace object UUID, of the form
         <blockquote>
         [ds://]/vmfs/volumes/[<i>datastore-uuid</i>]/[<i>directory-uuid</i>]/...
         </blockquote>]]>
      </return-value-description-html>
   </method>
   </managed-object>
   <managed-object name="HostDateTimeSystem"
      type-id="vim.host.DateTimeSystem"
      vmodl-name="vim.host.DateTimeSystem"
      version-id-ref="vim.version.version2"
      >
      <description-html>
         <![CDATA[This managed object provides for NTP and date/time related
  configuration on a host.

  Information regarding the running status of the NTP daemon and
  functionality to start and stop the daemon is provided by the
  <a href="vim.host.ServiceSystem.html">HostServiceSystem</a> object.]]>
      </description-html>
            <property name="dateTimeInfo" type-id-ref="vim.host.DateTimeInfo"
      vmodl-name="dateTimeInfo"
      privilege="System.Read"
      >
      <description-html>
         <![CDATA[The DateTime configuration of the host.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.host.DateTimeSystem.TimeZone</nested-type-id-ref>
   <method name="UpdateDateTimeConfig"
      vmodl-name="updateConfig"
      privilege="Host.Config.DateTime"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Update the DateTime configuration of the host.]]>
      </description-html>
      <parameter name="config" type-id-ref="vim.host.DateTimeConfig"
      vmodl-name="config"
      version-id-ref="vim.version.version2"
      privilege="config"
      >
      <description-html>
         <![CDATA[The new DateTime configuration information.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[if an error occurs.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="QueryAvailableTimeZones"
      vmodl-name="queryAvailableTimeZones"
      is-array="true"
      is-optional="true"
      privilege="System.Read"
      type-id-ref="vim.host.DateTimeSystem.TimeZone"
      >
      <description-html>
         <![CDATA[Retrieves the list of available timezones on the host.
  The API works off the public domain 'tz' timezone database.]]>
      </description-html>
      <return-value-description-html>
         <![CDATA[List of available timezones on the host.]]>
      </return-value-description-html>
   </method>
   <method name="QueryDateTime"
      vmodl-name="queryDateTime"
      privilege="System.Read"
      type-id-ref="vmodl.DateTime"
      >
      <description-html>
         <![CDATA[Get the current DateTime on the host.]]>
      </description-html>
      <return-value-description-html>
         <![CDATA[Current DateTime on the host.]]>
      </return-value-description-html>
   </method>
   <method name="UpdateDateTime"
      vmodl-name="updateDateTime"
      privilege="Host.Config.DateTime"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Update the date/time on the host.
  This method should be used with caution since network delays, execution
  delays can result in time skews.]]>
      </description-html>
      <parameter name="dateTime" type-id-ref="vmodl.DateTime"
      vmodl-name="dateTime"
      version-id-ref="vim.version.version2"
      privilege="dateTime"
      >
      <description-html>
         <![CDATA[DateTime to update the host to.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[if an error occurs.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="RefreshDateTimeSystem"
      vmodl-name="refresh"
      privilege="Host.Config.DateTime"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Refresh the DateTime related settings to pick up any changes that might have
  occurred.]]>
      </description-html>
   </method>
   </managed-object>
   <managed-object name="HostAccessManager"
      type-id="vim.host.HostAccessManager"
      vmodl-name="vim.host.HostAccessManager"
      version-id-ref="vim.version.version10"
      >
      <description-html>
         <![CDATA[Managed object used to control direct access to the host.
 <p>
 This should be used to control users and privileges on the host directly,
 which are different from the users and privileges defined in vCenter.
 <p>
 See <a href="vim.AuthorizationManager.html">AuthorizationManager</a> for more information on permissions.]]>
      </description-html>
            <property name="lockdownMode" type-id-ref="vim.host.HostAccessManager.LockdownMode"
      vmodl-name="lockdownMode"
      privilege="System.View"
      >
      <description-html>
         <![CDATA[Current lockdown state of the host.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.host.HostAccessManager.AccessMode</nested-type-id-ref>
      <nested-type-id-ref>vim.host.HostAccessManager.AccessEntry</nested-type-id-ref>
      <nested-type-id-ref>vim.host.HostAccessManager.LockdownMode</nested-type-id-ref>
   <method name="RetrieveHostAccessControlEntries"
      vmodl-name="retrieveAccessEntries"
      is-array="true"
      is-optional="true"
      privilege="Global.Settings"
      type-id-ref="vim.host.HostAccessManager.AccessEntry"
      >
      <description-html>
         <![CDATA[Retrieve access entries.
 Returns a list of AccessEntry objects for each VIM user or group which
 have explicitly assigned permissions on the host. This means that
 AccessMode#accessNone will not be present in the result.]]>
      </description-html>
      <return-value-description-html>
         <![CDATA[a list of AccessEntry objects.]]>
      </return-value-description-html>
   </method>
   <method name="ChangeAccessMode"
      vmodl-name="changeAccessMode"
      privilege="Global.Settings"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Update the access mode for a user or group.
 <p>
 If the host is in lockdown mode, this operation is allowed only on
 users in the exceptions list - see <a href="vim.host.HostAccessManager.html#queryLockdownExceptions">QueryLockdownExceptions</a>,
 and trying to change the access mode of other users or groups
 will fail with SecurityError.]]>
      </description-html>
      <parameter name="principal" type-id-ref="java.lang.String"
      vmodl-name="principal"
      version-id-ref="vim.version.version10"
      privilege="principal"
      >
      <description-html>
         <![CDATA[The affected user or group.]]>
      </description-html>
      </parameter>
      <parameter name="isGroup" type-id-ref="BOOLEAN"
      vmodl-name="isGroup"
      version-id-ref="vim.version.version10"
      privilege="isGroup"
      >
      <description-html>
         <![CDATA[True if principal refers to a group account,
                     false otherwise.]]>
      </description-html>
      </parameter>
      <parameter name="accessMode" type-id-ref="vim.host.HostAccessManager.AccessMode"
      vmodl-name="accessMode"
      version-id-ref="vim.version.version10"
      privilege="accessMode"
      >
      <description-html>
         <![CDATA[AccessMode to be granted.
                     AccessMode#accessOther is meaningless and
                     will result in InvalidArgument exception.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.AuthMinimumAdminPermission">
      </fault>
      <fault type-id-ref="vim.fault.UserNotFound">
      <fault-description-html>
         <![CDATA[if the specified user is not found.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="QuerySystemUsers"
      vmodl-name="querySystemUsers"
      is-array="true"
      is-optional="true"
      privilege="Global.Settings"
      type-id-ref="java.lang.String"
      >
      <description-html>
         <![CDATA[Get the list of local system users.
 <p>
 These are special users like 'vpxuser' and 'dcui',
 which may be used for authenticating different sub-components of the
 vSphere system and may be essential for its correct functioning.
 <p>
 Usually these users may not be used by human operators to connect
 directly to the host and the UI may choose to show them only in some
 "advanced" UI view.]]>
      </description-html>
      <return-value-description-html>
         <![CDATA[the list of local system users.]]>
      </return-value-description-html>
   </method>
   <method name="UpdateSystemUsers"
      vmodl-name="updateSystemUsers"
      privilege="Global.Settings"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Update the list of local system users.
 The special users 'dcui' and 'vpxuser' need not be specified.
 They are always reported in the list of system users.]]>
      </description-html>
      <parameter name="users" type-id-ref="java.lang.String"
      vmodl-name="users"
      version-id-ref="vim.version.version10"
      is-array="true"
      is-optional="true"
      privilege="users"
      >
      <description-html>
         <![CDATA[the new list of local system users.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.UserNotFound">
      <fault-description-html>
         <![CDATA[If one of the specified users is not found.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="QueryLockdownExceptions"
      vmodl-name="queryLockdownExceptions"
      is-array="true"
      is-optional="true"
      privilege="Global.Settings"
      type-id-ref="java.lang.String"
      >
      <description-html>
         <![CDATA[Get the list of users which are exceptions for lockdown mode.
 See <a href="vim.host.HostAccessManager.html#updateLockdownExceptions">UpdateLockdownExceptions</a>.]]>
      </description-html>
      <return-value-description-html>
         <![CDATA[the list of users which will not lose their permissions when
          the host enters lockdown mode.]]>
      </return-value-description-html>
   </method>
   <method name="UpdateLockdownExceptions"
      vmodl-name="updateLockdownExceptions"
      privilege="Global.Settings"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Update the list of users which are exceptions for lockdown mode.
 <p>
 Usually these are user accounts used by third party solutions and
 external applications which need to continue to function in lockdown
 mode. It is not advised to add user accounts used by human operators,
 because this will compromise the purpose of lockdown mode.
 <p>
 Both local and domain users are supported. The format for domain accounts
 is "DOMAIN\login".
 <p>
 When this API is called when the host is in lockdown mode,
 the behaviour is as follows:
 <li> if a user is removed from the exceptions list,
       then the permissions of that user are removed.
 <li> if a user is added to the exceptions list,
      then the permissions of that user are restored.]]>
      </description-html>
      <parameter name="users" type-id-ref="java.lang.String"
      vmodl-name="users"
      version-id-ref="vim.version.version10"
      is-array="true"
      is-optional="true"
      privilege="users"
      >
      <description-html>
         <![CDATA[the new list of lockdown mode exceptions.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.AuthMinimumAdminPermission">
      <fault-description-html>
         <![CDATA[if the user invoking the operation
               is not present in the new list of exceptions.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.UserNotFound">
      <fault-description-html>
         <![CDATA[if one of the specified users is not found.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="ChangeLockdownMode"
      vmodl-name="changeLockdownMode"
      privilege="Host.Config.Settings"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Changes the lockdown state of the ESXi host.
 <p>
 This operation will do nothing if the host is already in the desired
 lockdown state.
 <p>
 When the host is in lockdown mode it can be managed only through vCenter
 and through DCUI (Direct Console User Interface) if the DCUI service is
 running.
 This is achieved by removing all permissions on the host, except those
 of the exception users defined with <a href="vim.host.HostAccessManager.html#updateLockdownExceptions">UpdateLockdownExceptions</a>.
 <p>
 In addition, the permissions for users 'dcui' and 'vpxuser'
 are always preserved.
 <p>
 When lockdown mode is disabled, the system will try to restore all
 permissions that have been removed when lockdown mode was enabled.
 It is possible that not all permissions may be restored and this is not
 an error, e.g. if in the meantime some user or managed object was deleted.
 <p>
 It may be possible that after exiting lockdown mode the only permissions
 on the host will be those of users 'dcui' and 'vpxuser'. This will render the
 host unmanageable if it is not already managed by vCenter, or if the
 connection to vCenter is lost. To prevent this, the users in the
 "DCUI.Access" list will be assigned Admin roles.
 <p>
 While the host is in lockdown mode, some operations will fail with
 SecurityError. This ensures that the conditions for lockdown mode cannot
 be changed. For example it is allowed to change the access mode only for
 users in the exceptions list.
 <p>
 When the host is in lockdown mode, changing the running state of service
 DCUI through <a href="vim.host.ServiceSystem.html">HostServiceSystem</a> will also fail with
 SecurityError accompanied with an appropriate localizeable message.]]>
      </description-html>
      <parameter name="mode" type-id-ref="vim.host.HostAccessManager.LockdownMode"
      vmodl-name="mode"
      version-id-ref="vim.version.version10"
      privilege="mode"
      >
      <description-html>
         <![CDATA[The new desired lockdown mode.
               <p>
               If this is the same as the current lockdown mode state, the
               operation will silently succeed and nothing will be changed.
               <p>
               If this is LockdownMode#lockdownDisabled
               then lockdown mode will be disabled and the system will
               start service DCUI if it is not running.
               <p>
               If this is LockdownMode#lockdownNormal
               then lockdown mode will be enabled and the system will
               start service DCUI if it is not running.
               <p>
               If this is LockdownMode#lockdownStrict
               then lockdown mode will be enabled and the system will
               stop service DCUI if it is running.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.AuthMinimumAdminPermission">
      <fault-description-html>
         <![CDATA[if the user invoking the operation
               is not in the exceptions list - see
               <a href="vim.host.HostAccessManager.html#queryLockdownExceptions">QueryLockdownExceptions</a>.]]>
      </fault-description-html>
      </fault>
   </method>
   </managed-object>
   <managed-object name="HostNvdimmSystem"
      type-id="vim.host.NvdimmSystem"
      vmodl-name="vim.host.NvdimmSystem"
      version-id-ref="vim.version.version12"
      >
      <description-html>
         <![CDATA[Managed object responsible for reading and configuring
  Non-Volatile DIMMs.]]>
      </description-html>
            <property name="nvdimmSystemInfo" type-id-ref="vim.host.NvdimmSystem.NvdimmSystemInfo"
      vmodl-name="nvdimmSystemInfo"
      privilege="Host.Config.Nvdimm"
      >
      <description-html>
         <![CDATA[Host NVDIMM information.
 - Summary of all dimms on the host.
 - Array of all DIMMs on the host.
 - Array of DIMM information and health for all dimms on the host.
 - Array of interleave set for all sets on the host.
 - Array of interleave set information for all sets on the host.
 - Array of namespace IDs for all dimms on the host.
 - Array of namespace details of all dimms on the host.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.host.NvdimmSystem.RangeType</nested-type-id-ref>
      <nested-type-id-ref>vim.host.NvdimmSystem.NamespaceType</nested-type-id-ref>
      <nested-type-id-ref>vim.host.NvdimmSystem.HealthInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.host.NvdimmSystem.RegionInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.host.NvdimmSystem.Summary</nested-type-id-ref>
      <nested-type-id-ref>vim.host.NvdimmSystem.DimmInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.host.NvdimmSystem.InterleaveSetInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.host.NvdimmSystem.Guid</nested-type-id-ref>
      <nested-type-id-ref>vim.host.NvdimmSystem.NamespaceInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.host.NvdimmSystem.NamespaceDetails</nested-type-id-ref>
      <nested-type-id-ref>vim.host.NvdimmSystem.NamespaceCreateSpec</nested-type-id-ref>
      <nested-type-id-ref>vim.host.NvdimmSystem.PMemNamespaceCreateSpec</nested-type-id-ref>
      <nested-type-id-ref>vim.host.NvdimmSystem.NamespaceDeleteSpec</nested-type-id-ref>
      <nested-type-id-ref>vim.host.NvdimmSystem.NvdimmSystemInfo</nested-type-id-ref>
   <method name="CreateNvdimmNamespace"
      vmodl-name="createNamespace"
      is-deprecated="true"
      privilege="Host.Config.Nvdimm"
      type-id-ref="vim.host.NvdimmSystem.Guid"
      is-task="true"
      >
      <description-html>
         <![CDATA[deprecated As of vSphere 6.7u1, use createPMemNamespace
  Create nvd namespace from information passed in NamespaceCreationSpec.

  <p>
  A new block or persistent namespace can be created on the NVDIMM(s)
  when the system is in maintenance mode. If all the parameters passed
  are valid and system is in maintenance mode, then a DSM (Device
  Specific Method) call is made to create the namespace. DSM calls are
  blockable and slow operations and hence the use of task.

  <p>
  If a new namespace is created, its UUID is returned.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere 6.7u1, use createPMemNamespace
  Create nvd namespace from information passed in NamespaceCreationSpec.

  <p>
  A new block or persistent namespace can be created on the NVDIMM(s)
  when the system is in maintenance mode. If all the parameters passed
  are valid and system is in maintenance mode, then a DSM (Device
  Specific Method) call is made to create the namespace. DSM calls are
  blockable and slow operations and hence the use of task.

  <p>
  If a new namespace is created, its UUID is returned.]]>
      </deprecated-html>
      <parameter name="createSpec" type-id-ref="vim.host.NvdimmSystem.NamespaceCreateSpec"
      vmodl-name="createSpec"
      version-id-ref="vim.version.version12"
      privilege="createSpec"
      >
      <description-html>
         <![CDATA[Parameters to create the required namespace.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.InvalidHostState">
      <fault-description-html>
         <![CDATA[if operation is not allowed as system is not in
                            maintenance mode.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.AlreadyExists">
      <fault-description-html>
         <![CDATA[if the namespace of type already exists.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[for any other failure.]]>
      </fault-description-html>
      </fault>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object which is used to
        monitor this operation. The task result
        (<a href="vim.Task.html#info">Info</a>.<a href="vim.TaskInfo.html#result">result</a>) contains a
        Guid object that has the UUID of the
        newly created namespace.]]>
      </task-description-html>
   </method>
   <method name="CreateNvdimmPMemNamespace"
      vmodl-name="createPMemNamespace"
      version-id-ref="vim.version.version13"
      privilege="Host.Config.Nvdimm"
      type-id-ref="vim.host.NvdimmSystem.Guid"
      is-task="true"
      >
      <description-html>
         <![CDATA[Create persistent memory mode nvd namespace from information passed
  in PMemNamespaceCreationSpec.

  <p>
  A new persistent namespace can be created on the NVDIMM(s)
  when the system is in maintenance mode. If all the parameters passed
  are valid and system is in maintenance mode, then a DSM (Device
  Specific Method) call is made to create the namespace. DSM calls are
  blockable and slow operations and hence the use of task.

  <p>
  If a new namespace is created, its UUID is returned.]]>
      </description-html>
      <parameter name="createSpec" type-id-ref="vim.host.NvdimmSystem.PMemNamespaceCreateSpec"
      vmodl-name="createSpec"
      version-id-ref="vim.version.version13"
      privilege="createSpec"
      >
      <description-html>
         <![CDATA[Parameters to create the required namespace.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.InvalidHostState">
      <fault-description-html>
         <![CDATA[if operation is not allowed as system is not in
                            maintenance mode.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.AlreadyExists">
      <fault-description-html>
         <![CDATA[if the namespace of type already exists.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[for any other failure.]]>
      </fault-description-html>
      </fault>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object which is used to
        monitor this operation. The task result
        (<a href="vim.Task.html#info">Info</a>.<a href="vim.TaskInfo.html#result">result</a>) contains a
        Guid object that has the UUID of the
        newly created namespace.]]>
      </task-description-html>
   </method>
   <method name="DeleteNvdimmNamespace"
      vmodl-name="deleteNamespace"
      privilege="Host.Config.Nvdimm"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Delete nvd namespace whose uuid matches passed parameter.

  <p>
  An existing namespace of type block or persistent mode can be deleted
  from NVDIMM(s), if the system is in maintenance mode. If paramters
  passed are valid and the system is in maintenance mode, then a DSM call
  is made to delete this namespace. DSM calls are blockable, slow
  operations and hence the use of task.]]>
      </description-html>
      <parameter name="deleteSpec" type-id-ref="vim.host.NvdimmSystem.NamespaceDeleteSpec"
      vmodl-name="deleteSpec"
      version-id-ref="vim.version.version12"
      privilege="deleteSpec"
      >
      <description-html>
         <![CDATA[Details of namespace to be deleted.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[if the namespace to be deleted is not found.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidHostState">
      <fault-description-html>
         <![CDATA[if operation is not allowed as system is not in
                            maintenance mode.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[for any other failure.]]>
      </fault-description-html>
      </fault>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object which is used to
        monitor this operation.]]>
      </task-description-html>
   </method>
   <method name="DeleteNvdimmBlockNamespaces"
      vmodl-name="deleteBlockNamespaces"
      privilege="Host.Config.Nvdimm"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Delete all block mode namespaces in the system.

  <p>
  Existing block namespace(s) can be deleted from all NVDIMMs, if the
  system is in maintenance mode. If paramters passed are valid and
  the system is in maintenance mode, then DSM calls are made to
  delete these namespaces. DSM calls are blockable, slow operations
  and hence the use of task.

  <p>
  If a particular block namespace is to be deleted, use
  <a href="vim.host.NvdimmSystem.html#deleteNamespace">DeleteNvdimmNamespace_Task</a> by passing it the UUID
  of the block namespace.]]>
      </description-html>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[if the namespace to be deleted is not found.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidHostState">
      <fault-description-html>
         <![CDATA[if operation is not allowed as system is not
                            in maintenance mode.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[for any other failure.]]>
      </fault-description-html>
      </fault>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object which is used to
        monitor this operation.]]>
      </task-description-html>
   </method>
   </managed-object>
   <managed-object name="ComputeResource"
      type-id="vim.ComputeResource"
      vmodl-name="vim.ComputeResource"
      version-id-ref="vim.version.version1"
      base-type-id="vim.ManagedEntity"
      >
      <description-html>
         <![CDATA[Represents a set of physical compute resources for a set of virtual machines.
  <p>
  The base type <a href="vim.ComputeResource.html">ComputeResource</a>, when instantiated by calling
  <a href="vim.Folder.html#addStandaloneHost">AddStandaloneHost_Task</a>, represents a single host. The subclass
  <a href="vim.ClusterComputeResource.html">ClusterComputeResource</a> represents a cluster of hosts and adds distributed management
  features such as availability and resource scheduling.
  <p>
  A <a href="vim.ComputeResource.html">ComputeResource</a> always has a root <a href="vim.ResourcePool.html">ResourcePool</a> associated with it.
  Certain types of  clusters such as those with VMware DRS enabled and standalone hosts
  (ESX Server 3) support the creation of <a href="vim.ResourcePool.html">ResourcePool</a> hierarchies.]]>
      </description-html>
            <property name="resourcePool" type-id-ref="vim.ResourcePool"
      vmodl-name="resourcePool"
      is-optional="true"
      privilege="System.View"
      >
      <description-html>
         <![CDATA[Reference to root resource pool.]]>
      </description-html>
      </property>

            <property name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      is-array="true"
      is-optional="true"
      privilege="System.View"
      >
      <description-html>
         <![CDATA[List of hosts that are part of this compute resource. If the compute resource is a
  standalone type, then this list contains just one element.]]>
      </description-html>
      </property>

            <property name="datastore" type-id-ref="vim.Datastore"
      vmodl-name="datastore"
      is-array="true"
      is-optional="true"
      privilege="System.View"
      >
      <description-html>
         <![CDATA[The datastore property is the subset of datastore objects in the datacenter
  available in this ComputeResource.
  <p>
  This property is computed as the aggregate set of datastores available from all
  the hosts that are part of this compute resource.]]>
      </description-html>
      </property>

            <property name="network" type-id-ref="vim.Network"
      vmodl-name="network"
      is-array="true"
      is-optional="true"
      privilege="System.View"
      >
      <description-html>
         <![CDATA[The subset of network objects available in the datacenter that is available in
  this ComputeResource.
  <p>
  This property is computed as the aggregate set of networks available from all the
  hosts that are part of this compute resource.]]>
      </description-html>
      </property>

            <property name="summary" type-id-ref="vim.ComputeResource.Summary"
      vmodl-name="summary"
      >
      <description-html>
         <![CDATA[Basic runtime information about a compute resource. This information is used on
  summary screens and in list views.]]>
      </description-html>
      </property>

            <property name="environmentBrowser" type-id-ref="vim.EnvironmentBrowser"
      vmodl-name="environmentBrowser"
      is-optional="true"
      privilege="System.View"
      >
      <description-html>
         <![CDATA[The environment browser object that identifies the environments that are supported
  on this compute resource.]]>
      </description-html>
      </property>

            <property name="configurationEx" type-id-ref="vim.ComputeResource.ConfigInfo"
      vmodl-name="configurationEx"
      version-id-ref="vim.version.version2"
      >
      <description-html>
         <![CDATA[Configuration of the compute resource; applies to both standalone hosts
  and clusters. For a cluster this property will return a
  <a href="vim.cluster.ConfigInfoEx.html">ClusterConfigInfoEx</a> object.]]>
      </description-html>
      </property>

            <property name="lifecycleManaged" type-id-ref="BOOLEAN"
      vmodl-name="lifecycleManaged"
      version-id-ref="vim.version.v6_9_1"
      is-optional="true"
      privilege="System.View"
      >
      <description-html>
         <![CDATA[Flag indicating whether or not the lifecycle of the compute resource is
  managed. Once it is enabled, it cannot be disabled.

  This property can be set only at the time of creation or through the
  <a href="vim.ComputeResource.html#enableLifecycleManagement">EnableLifecycleManagement</a> method.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.ComputeResource.Summary</nested-type-id-ref>
      <nested-type-id-ref>vim.ComputeResource.ConfigInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.ComputeResource.HostSPBMLicenseInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.ComputeResource.ConfigSpec</nested-type-id-ref>
   <method name="ReconfigureComputeResource"
      vmodl-name="reconfigureEx"
      version-id-ref="vim.version.version2"
      privilege="Host.Inventory.EditCluster"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Change the compute resource configuration.]]>
      </description-html>
      <parameter name="spec" type-id-ref="vim.ComputeResource.ConfigSpec"
      vmodl-name="spec"
      version-id-ref="vim.version.version2"
      privilege="spec"
      >
      <description-html>
         <![CDATA[A set of configuration changes to apply to the compute resource.
              The specification can be a complete set of changes or a partial
              set of changes, applied incrementally. When invoking
              reconfigureEx on a cluster, this argument may be a
              <a href="vim.cluster.ConfigSpecEx.html">ClusterConfigSpecEx</a> object.]]>
      </description-html>
      </parameter>
      <parameter name="modify" type-id-ref="BOOLEAN"
      vmodl-name="modify"
      version-id-ref="vim.version.version2"
      privilege="modify"
      >
      <description-html>
         <![CDATA[Flag to specify whether the specification ("spec") should
                be applied incrementally. If "modify" is false and the
                operation succeeds, then the configuration of the cluster
                matches the specification exactly; in this case any unset
                portions of the specification will result in unset or
                default portions of the configuration.]]>
      </description-html>
      </parameter>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to monitor
        the operation.]]>
      </task-description-html>
   </method>
   </managed-object>
   <managed-object name="VirtualMachineCompatibilityChecker"
      type-id="vim.vm.check.CompatibilityChecker"
      vmodl-name="vim.vm.check.CompatibilityChecker"
      version-id-ref="vim.version.version5"
      >
      <description-html>
         <![CDATA[A singleton managed object that can answer questions about compatibility
  of a virtual machine with a host.]]>
      </description-html>
   <method name="CheckCompatibility"
      vmodl-name="checkCompatibility"
      is-array="true"
      privilege="System.View"
      type-id-ref="vim.vm.check.Result"
      is-task="true"
      >
      <description-html>
         <![CDATA[Tests whether or not a virtual machine could be placed on
  the given host in the given resource pool.]]>
      </description-html>
      <parameter name="vm" type-id-ref="vim.VirtualMachine"
      vmodl-name="vm"
      version-id-ref="vim.version.version5"
      privilege="vm"
      >
      <description-html>
         <![CDATA[The virtual machine we'd like to place.]]>
      </description-html>
      </parameter>
      <parameter name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      version-id-ref="vim.version.version5"
      is-optional="true"
      privilege="host"
      >
      <description-html>
         <![CDATA[The host we would like the virtual machine
        to execute on. The host parameter may be left unset if the compute
        resource associated with the pool represents a stand-alone host
        or a DRS-enabled cluster. In the former case the stand-alone host is
        used. In the latter case, each connected host in the cluster
        that is not in maintenance mode is tested.  If the virtual machine is a
        template then either this parameter or the pool parameter must be set.]]>
      </description-html>
      </parameter>
      <parameter name="pool" type-id-ref="vim.ResourcePool"
      vmodl-name="pool"
      version-id-ref="vim.version.version5"
      is-optional="true"
      privilege="pool"
      >
      <description-html>
         <![CDATA[The resource pool we would like the virtual machine
        to reside in.  If the pool parameter is left unset, then the virtual
        machine's current pool is assumed.  If the virtual machine is a template
        then either this parameter or the host parameter must be set.]]>
      </description-html>
      </parameter>
      <parameter name="testType" type-id-ref="java.lang.String"
      vmodl-name="testType"
      version-id-ref="vim.version.version5"
      is-array="true"
      is-optional="true"
      privilege="testType"
      >
      <description-html>
         <![CDATA[The set of tests to run. If this argument is not set, all
        tests will be run.  See <a href="vim.vm.check.TestType.html">CheckTestType</a> for possible values.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the operation cannot be performed because of the
         host or virtual machine's current state. For example, if the host
         is in maintenance mode or if the virtual machine's configuration
         information is not available.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vmodl.fault.InvalidArgument">
      <fault-description-html>
         <![CDATA[if the desired host and pool are not associated
         with the same compute resource, the host parameter is left unset
         when the specified pool is associated with a non-DRS cluster, or
         if the specified vm does not exist.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.DatacenterMismatch">
      <fault-description-html>
         <![CDATA[if the provided host and pool do not belong
         to the same datacenter.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[The potential problems associated with placing this virtual
         machine in the proposed location.
         If multiple hosts are tested against a <a href="vim.vm.check.Result.html">CheckResult</a>
         is returned for each host.]]>
      </return-value-description-html>
   </method>
   <method name="CheckVmConfig"
      vmodl-name="checkVmConfig"
      version-id-ref="vim.version.version12"
      is-array="true"
      is-optional="true"
      privilege="System.View"
      type-id-ref="vim.vm.check.Result"
      is-task="true"
      >
      <description-html>
         <![CDATA[Tests whether the provided virtual machine specification can be applied
  on the given host and resource pool.]]>
      </description-html>
      <parameter name="spec" type-id-ref="vim.vm.ConfigSpec"
      vmodl-name="spec"
      version-id-ref="vim.version.version12"
      privilege="spec"
      >
      <description-html>
         <![CDATA[The specification of the virtual machine to create.]]>
      </description-html>
      </parameter>
      <parameter name="vm" type-id-ref="vim.VirtualMachine"
      vmodl-name="vm"
      version-id-ref="vim.version.version12"
      is-optional="true"
      privilege="vm"
      >
      <description-html>
         <![CDATA[The existing virtual machine to apply the spec to.
        If this is not provided, the spec is assumed to be for the creation
        of a new virtual machine.]]>
      </description-html>
      </parameter>
      <parameter name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      version-id-ref="vim.version.version12"
      is-optional="true"
      privilege="host"
      >
      <description-html>
         <![CDATA[The host we would like the virtual machine
        to execute on. The host parameter may be left unset if the compute
        resource associated with the pool represents a stand-alone host
        or a DRS-enabled cluster. In the former case the stand-alone host
        is used. In the latter case, each connected host in the cluster
        that is not in maintenance mode is tested. If the virtual machine
        is a template, then either this parameter or the pool parameter
        must be set.]]>
      </description-html>
      </parameter>
      <parameter name="pool" type-id-ref="vim.ResourcePool"
      vmodl-name="pool"
      version-id-ref="vim.version.version12"
      is-optional="true"
      privilege="pool"
      >
      <description-html>
         <![CDATA[The resource pool we would like the virtual machine
        to reside in.  If the pool parameter is left unset, then we use the
        host's root resource pool.]]>
      </description-html>
      </parameter>
      <parameter name="testType" type-id-ref="java.lang.String"
      vmodl-name="testType"
      version-id-ref="vim.version.version12"
      is-array="true"
      is-optional="true"
      privilege="testType"
      >
      <description-html>
         <![CDATA[The set of tests to run. If this argument is not set, all
        tests will be run.  See <a href="vim.vm.check.TestType.html">CheckTestType</a> for possible values.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vmodl.fault.InvalidArgument">
      <fault-description-html>
         <![CDATA[if the desired host and pool are not associated
         with the same compute resource, the host parameter is left unset
         when the specified pool is associated with a non-DRS cluster, or
         if the provided vm does not exist.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.DatacenterMismatch">
      <fault-description-html>
         <![CDATA[if the provided host and pool do not belong
         to the same datacenter.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[The potential problems associated with placing this virtual
         machine in the proposed location.
         If multiple hosts are tested against a <a href="vim.vm.check.Result.html">CheckResult</a>
         is returned for each host.]]>
      </return-value-description-html>
   </method>
   <method name="CheckPowerOn"
      vmodl-name="checkPowerOn"
      version-id-ref="vim.version.version12"
      is-array="true"
      is-optional="true"
      privilege="System.View"
      type-id-ref="vim.vm.check.Result"
      is-task="true"
      >
      <description-html>
         <![CDATA[Tests whether the provided virtual machine can be powered on
 on the given host and/or resource pool.]]>
      </description-html>
      <parameter name="vm" type-id-ref="vim.VirtualMachine"
      vmodl-name="vm"
      version-id-ref="vim.version.version12"
      privilege="vm"
      >
      <description-html>
         <![CDATA[The virtual machine to power on.]]>
      </description-html>
      </parameter>
      <parameter name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      version-id-ref="vim.version.version12"
      is-optional="true"
      privilege="host"
      >
      <description-html>
         <![CDATA[The host on which we want to power on the virtual machine.
        The host parameter may be left unset if the compute
        resource associated with the pool represents a stand-alone host
        or a DRS-enabled cluster. In the former case the stand-alone host
        is used. In the latter case, each connected host in the cluster
        that is not in maintenance mode is tested. Either this parameter
        or the pool parameter must be set.]]>
      </description-html>
      </parameter>
      <parameter name="pool" type-id-ref="vim.ResourcePool"
      vmodl-name="pool"
      version-id-ref="vim.version.version12"
      is-optional="true"
      privilege="pool"
      >
      <description-html>
         <![CDATA[The resource pool we would like the virtual machine to run
        in. If the pool parameter is left unset, we use the host's
        root resource pool.]]>
      </description-html>
      </parameter>
      <parameter name="testType" type-id-ref="java.lang.String"
      vmodl-name="testType"
      version-id-ref="vim.version.version12"
      is-array="true"
      is-optional="true"
      privilege="testType"
      >
      <description-html>
         <![CDATA[The set of tests to run. If this argument is not set,
        all tests will be run. See <a href="vim.vm.check.TestType.html">CheckTestType</a> for possible values.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vmodl.fault.InvalidArgument">
      <fault-description-html>
         <![CDATA[if the desired host and pool are not associated
         with the same compute resource, the host parameter is left unset
         when the specified pool is associated with a non-DRS cluster, or
         if the provided vm does not exist.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.DatacenterMismatch">
      <fault-description-html>
         <![CDATA[if the provided host and pool do not belong
         to the same datacenter.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[The potential problems associated with powering on this virtual
         machine at the proposed location.
         If multiple hosts are tested, a <a href="vim.vm.check.Result.html">CheckResult</a>
         is returned for each host.]]>
      </return-value-description-html>
   </method>
   </managed-object>
   <managed-object name="Task"
      type-id="vim.Task"
      vmodl-name="vim.Task"
      version-id-ref="vim.version.version1"
      base-type-id="vim.ExtensibleManagedObject"
      >
      <description-html>
         <![CDATA[A task is used to monitor and potentially cancel long
  running operations.]]>
      </description-html>
            <property name="info" type-id-ref="vim.TaskInfo"
      vmodl-name="info"
      >
      <description-html>
         <![CDATA[Detailed information about this task.]]>
      </description-html>
      </property>

   <method name="CancelTask"
      vmodl-name="cancel"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Cancels a running or queued task.  A task may only be canceled if it is
  cancelable.  Multiple cancel requests will be treated as a single
  cancelation request.  Canceling a completed or already canceled task
  will throw an InvalidState exception.
  <p>
  If a task is canceled, its runtime state will be set to error and its
  error state will be set to <a href="vmodl.fault.RequestCanceled.html">RequestCanceled</a>.
  <p>
  A cancel operation is asynchronous.  The operation may return before
  the task is canceled.]]>
      </description-html>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[If the task is already canceled or completed.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="UpdateProgress"
      vmodl-name="UpdateProgress"
      version-id-ref="vim.version.version2"
      privilege="Task.Update"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Sets percentage done for this task and recalculates overall
  percentage done. If a percentDone value of less than zero or
  greater than 100 is specified, a value of zero or 100
  respectively is used.
  <p>]]>
      </description-html>
      <parameter name="percentDone" type-id-ref="INT"
      vmodl-name="percentDone"
      version-id-ref="vim.version.version2"
      privilege="percentDone"
      >
      <description-html>
         <![CDATA[Percentage to set for this task]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[If task is not running]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.OutOfBounds">
      <fault-description-html>
         <![CDATA[VirtualCenter 2.x servers throw
  this fault if percentDone is less than 0 or greater than 100.  Newer
  versions behave as described above, and never throw this fault.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="SetTaskState"
      vmodl-name="setState"
      version-id-ref="vim.version.version2"
      privilege="Task.Update"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Sets task state and optionally sets results or fault,
  as appropriate for state
  <p>]]>
      </description-html>
      <parameter name="state" type-id-ref="vim.TaskInfo.State"
      vmodl-name="state"
      version-id-ref="vim.version.version2"
      privilege="state"
      >
      <description-html>
         <![CDATA[New state for task]]>
      </description-html>
      </parameter>
      <parameter name="result" type-id-ref="vmodl.Any"
      vmodl-name="result"
      version-id-ref="vim.version.version2"
      is-optional="true"
      privilege="result"
      >
      <description-html>
         <![CDATA[Result to set, valid only if task state is
    TaskInfo.State.success]]>
      </description-html>
      </parameter>
      <parameter name="fault" type-id-ref="vmodl.MethodFault"
      vmodl-name="fault"
      version-id-ref="vim.version.version2"
      is-optional="true"
      privilege="fault"
      >
      <description-html>
         <![CDATA[Fault to set, valid only if task state is
    <a href="vim.TaskInfo.html#error">error</a>.  The fault must be a of a fault type that
    directly or indirectly extends <a href="vim.fault.VimFault.html">VimFault</a>.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[If attempting to change states after
    task is completed or in error, or attempting to set the
    result or fault incorrectly]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="SetTaskDescription"
      vmodl-name="UpdateDescription"
      version-id-ref="vim.version.version5"
      privilege="Task.Update"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Updates task description to describe the current phase of the task.
  <p>]]>
      </description-html>
      <parameter name="description" type-id-ref="vmodl.LocalizableMessage"
      vmodl-name="description"
      version-id-ref="vim.version.version5"
      privilege="description"
      >
      <description-html>
         <![CDATA[New description for task]]>
      </description-html>
      </parameter>
   </method>
   </managed-object>
   <managed-object name="ManagedEntity"
      type-id="vim.ManagedEntity"
      vmodl-name="vim.ManagedEntity"
      version-id-ref="vim.version.version1"
      base-type-id="vim.ExtensibleManagedObject"
      >
      <description-html>
         <![CDATA[ManagedEntity is an abstract base type for all managed objects present in
  the inventory tree. The base type provides common functionality for traversing the
  tree structure, as well as health monitoring and other basic functions.
  <p>
  Most Virtual Infrastructure managed object types extend this type.]]>
      </description-html>
            <property name="parent" type-id-ref="vim.ManagedEntity"
      vmodl-name="parent"
      is-optional="true"
      privilege="System.View"
      >
      <description-html>
         <![CDATA[Parent of this entity.
  <p>
  This value is null for the root object and for
  <a href="vim.VirtualMachine.html">VirtualMachine</a> objects that are part of
  a <a href="vim.VirtualApp.html">VirtualApp</a>.]]>
      </description-html>
      </property>

            <property name="customValue" type-id-ref="vim.CustomFieldsManager.Value"
      vmodl-name="customValue"
      is-array="true"
      is-optional="true"
      privilege="System.View"
      >
      <description-html>
         <![CDATA[Custom field values.]]>
      </description-html>
      </property>

            <property name="overallStatus" type-id-ref="vim.ManagedEntity.Status"
      vmodl-name="overallStatus"
      >
      <description-html>
         <![CDATA[General health of this managed entity.
  The overall status of the managed entity is computed as the worst status
  among its alarms and the configuration issues detected on the entity.
  The status is reported as one of the following values:
  <ul>
  <li>red:    The entity has alarms or configuration issues with a red status.
  <li>yellow: The entity does not have alarms or configuration issues with a
              red status, and has at least one with a yellow status.
  <li>green:  The entity does not have alarms or configuration issues with a
              red or yellow status, and has at least one with a green status.
  <li>gray:   All of the entity's alarms have a gray status and the
              configuration status of the entity is not being monitored.
  </ul>

  In releases after vSphere API 5.0, vSphere Servers might not
  generate property collector update notifications for this property.
  To obtain the latest value of the property, you can use
  PropertyCollector methods RetrievePropertiesEx or WaitForUpdatesEx.
  If you use the PropertyCollector.WaitForUpdatesEx method, specify
  an empty string for the version parameter. Any other version value will not
  produce any property values as no updates are generated.]]>
      </description-html>
      </property>

            <property name="configStatus" type-id-ref="vim.ManagedEntity.Status"
      vmodl-name="configStatus"
      >
      <description-html>
         <![CDATA[The configStatus indicates whether or not the system has detected a configuration
  issue involving this entity. For example, it might have detected a
  duplicate IP address or MAC address, or a host in a cluster
  might be out of compliance. The meanings of the configStatus values are:
  <ul>
  <li>red:    A problem has been detected involving the entity.
  <li>yellow: A problem is about to occur or a transient condition
              has occurred (For example, reconfigure fail-over policy).
  <li>green:  No configuration issues have been detected.
  <li>gray:   The configuration status of the entity is not being monitored.
  </ul>
  A green status indicates only that a problem has not been detected;
  it is not a guarantee that the entity is problem-free.
  <p>
  The <a href="vim.ManagedEntity.html#configIssue">ConfigIssue</a> property contains a list of the
  problems that have been detected.

  In releases after vSphere API 5.0, vSphere Servers might not
  generate property collector update notifications for this property.
  To obtain the latest value of the property, you can use
  PropertyCollector methods RetrievePropertiesEx or WaitForUpdatesEx.
  If you use the PropertyCollector.WaitForUpdatesEx method, specify
  an empty string for the version parameter. Any other version value will not
  produce any property values as no updates are generated.]]>
      </description-html>
      </property>

            <property name="configIssue" type-id-ref="vim.event.Event"
      vmodl-name="configIssue"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Current configuration issues that have been detected for this entity. Typically,
  these issues have already been logged as events. The entity stores these
  events as long as they are still current. The
  <a href="vim.ManagedEntity.html#configStatus">ConfigStatus</a> property provides an overall status
  based on these events.]]>
      </description-html>
      </property>

            <property name="effectiveRole" type-id-ref="INT"
      vmodl-name="effectiveRole"
      is-array="true"
      is-optional="true"
      privilege="System.View"
      >
      <description-html>
         <![CDATA[Access rights the current session has to this entity.]]>
      </description-html>
      </property>

            <property name="permission" type-id-ref="vim.AuthorizationManager.Permission"
      vmodl-name="permission"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of permissions defined for this entity.]]>
      </description-html>
      </property>

            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      privilege="System.View"
      >
      <description-html>
         <![CDATA[Name of this entity, unique relative to its parent.
  <p>
  Any / (slash), \ (backslash), character used in this
  name element will be escaped. Similarly, any % (percent) character used in
 this name element will be escaped, unless it is used to start an escape
  sequence. A slash is escaped as %2F or %2f. A backslash is escaped as %5C or
  %5c, and a percent is escaped as %25.]]>
      </description-html>
      </property>

            <property name="disabledMethod" type-id-ref="vmodl.MethodName"
      vmodl-name="disabledMethod"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of operations that are disabled, given the current runtime
  state of the entity. For example, a power-on operation always fails if a
  virtual machine is already powered on. This list can be used by clients to
  enable or disable operations in a graphical user interface.
  <p>
  Note: This list is determined by the current runtime state of an entity,
  not by its permissions.
  <p>
  This list may include the following operations for a HostSystem:
  <ul>
  <li><a href="vim.HostSystem.html#enterMaintenanceMode">EnterMaintenanceMode_Task</a>
  <li><a href="vim.HostSystem.html#exitMaintenanceMode">ExitMaintenanceMode_Task</a>
  <li><a href="vim.HostSystem.html#reboot">RebootHost_Task</a>
  <li><a href="vim.HostSystem.html#shutdown">ShutdownHost_Task</a>
  <li><a href="vim.HostSystem.html#reconnect">ReconnectHost_Task</a>
  <li><a href="vim.HostSystem.html#disconnect">DisconnectHost_Task</a>
  </ul>
  <p>
  This list may include the following operations for a VirtualMachine:
  <ul>
  <li><a href="vim.VirtualMachine.html#answer">AnswerVM</a>
  <li><a href="vim.ManagedEntity.html#rename">Rename_Task</a>
  <li><a href="vim.VirtualMachine.html#clone">CloneVM_Task</a>
  <li><a href="vim.VirtualMachine.html#powerOff">PowerOffVM_Task</a>
  <li><a href="vim.VirtualMachine.html#powerOn">PowerOnVM_Task</a>
  <li><a href="vim.VirtualMachine.html#suspend">SuspendVM_Task</a>
  <li><a href="vim.VirtualMachine.html#reset">ResetVM_Task</a>
  <li><a href="vim.VirtualMachine.html#reconfigure">ReconfigVM_Task</a>
  <li><a href="vim.VirtualMachine.html#relocate">RelocateVM_Task</a>
  <li><a href="vim.VirtualMachine.html#migrate">MigrateVM_Task</a>
  <li><a href="vim.VirtualMachine.html#customize">CustomizeVM_Task</a>
  <li><a href="vim.VirtualMachine.html#shutdownGuest">ShutdownGuest</a>
  <li><a href="vim.VirtualMachine.html#standbyGuest">StandbyGuest</a>
  <li><a href="vim.VirtualMachine.html#rebootGuest">RebootGuest</a>
  <li><a href="vim.VirtualMachine.html#createSnapshot">CreateSnapshot_Task</a>
  <li><a href="vim.VirtualMachine.html#removeAllSnapshots">RemoveAllSnapshots_Task</a>
  <li><a href="vim.VirtualMachine.html#revertToCurrentSnapshot">RevertToCurrentSnapshot_Task</a>
  <li><a href="vim.VirtualMachine.html#markAsTemplate">MarkAsTemplate</a>
  <li><a href="vim.VirtualMachine.html#markAsVirtualMachine">MarkAsVirtualMachine</a>
  <li><a href="vim.VirtualMachine.html#resetGuestInformation">ResetGuestInformation</a>
  <li><a href="vim.VirtualMachine.html#mountToolsInstaller">MountToolsInstaller</a>
  <li><a href="vim.VirtualMachine.html#unmountToolsInstaller">UnmountToolsInstaller</a>
  <li><a href="vim.ManagedEntity.html#destroy">Destroy_Task</a>
  <li><a href="vim.VirtualMachine.html#upgradeVirtualHardware">UpgradeVM_Task</a>
  <li><a href="vim.VirtualMachine.html#exportVm">ExportVm</a>
  </ul>
  <p>
  This list may include the following operations for a ResourcePool:
  <ul>
  <li><a href="vim.ResourcePool.html#importVApp">ImportVApp</a>
  <li><a href="vim.ResourcePool.html#createVm">CreateChildVM_Task</a>
  <li><a href="vim.ResourcePool.html#updateConfig">UpdateConfig</a>
  <li><a href="vim.Folder.html#createVm">CreateVM_Task</a>
  <li><a href="vim.ManagedEntity.html#destroy">Destroy_Task</a>
  <li><a href="vim.ManagedEntity.html#rename">Rename_Task</a>
  </ul>
  This list may include the following operations for a VirtualApp:
  <ul>
  <li><a href="vim.ManagedEntity.html#destroy">Destroy_Task</a>
  <li><a href="vim.VirtualApp.html#clone">CloneVApp_Task</a>
  <li><a href="vim.VirtualApp.html#unregister">unregisterVApp_Task</a>
  <li><a href="vim.VirtualApp.html#exportVApp">ExportVApp</a>
  <li><a href="vim.VirtualApp.html#powerOn">PowerOnVApp_Task</a>
  <li><a href="vim.VirtualApp.html#powerOff">PowerOffVApp_Task</a>
  <li><a href="vim.VirtualApp.html#updateVAppConfig">UpdateVAppConfig</a>
  </ul>
 <p>

  In releases after vSphere API 5.0, vSphere Servers might not
  generate property collector update notifications for this property.
  To obtain the latest value of the property, you can use
  PropertyCollector methods RetrievePropertiesEx or WaitForUpdatesEx.
  If you use the PropertyCollector.WaitForUpdatesEx method, specify
  an empty string for the version parameter. Any other version value will not
  produce any property values as no updates are generated.]]>
      </description-html>
      </property>

            <property name="recentTask" type-id-ref="vim.Task"
      vmodl-name="recentTask"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The set of recent tasks operating on this managed entity. This is a subset
  of <a href="vim.TaskManager.html#recentTask">RecentTask</a> belong to this entity. A task in this
  list could be in one of the four states: pending, running, success or error.
  <p>
  This property can be used to deduce intermediate power states for
  a virtual machine entity. For example, if the current powerState is "poweredOn"
  and there is a running task performing the "suspend" operation, then the virtual
  machine's intermediate state might be described as "suspending."
  <p>
  Most tasks (such as power operations) obtain exclusive access to the virtual
  machine, so it is unusual for this list to contain more than one running task.
  One exception, however, is the task of cloning a virtual machine.

  In releases after vSphere API 5.0, vSphere Servers might not
  generate property collector update notifications for this property.
  To obtain the latest value of the property, you can use
  PropertyCollector methods RetrievePropertiesEx or WaitForUpdatesEx.
  If you use the PropertyCollector.WaitForUpdatesEx method, specify
  an empty string for the version parameter. Any other version value will not
  produce any property values as no updates are generated.]]>
      </description-html>
      </property>

            <property name="declaredAlarmState" type-id-ref="vim.alarm.AlarmState"
      vmodl-name="declaredAlarmState"
      is-array="true"
      is-optional="true"
      privilege="System.View"
      >
      <description-html>
         <![CDATA[A set of alarm states for alarms that apply to this managed entity.
  The set includes alarms defined on this entity
  and alarms inherited from the parent entity,
  or from any ancestors in the inventory hierarchy.
  <p>
  Alarms are inherited if they can be triggered by this entity or its descendants.
  This set does not include alarms that are defined on descendants of this entity.]]>
      </description-html>
      </property>

            <property name="triggeredAlarmState" type-id-ref="vim.alarm.AlarmState"
      vmodl-name="triggeredAlarmState"
      is-array="true"
      is-optional="true"
      privilege="System.View"
      >
      <description-html>
         <![CDATA[A set of alarm states for alarms triggered by this entity
  or by its descendants.
  <p>
  Triggered alarms are propagated up the inventory hierarchy
  so that a user can readily tell when a descendant has triggered an alarm.

  In releases after vSphere API 5.0, vSphere Servers might not
  generate property collector update notifications for this property.
  To obtain the latest value of the property, you can use
  PropertyCollector methods RetrievePropertiesEx or WaitForUpdatesEx.
  If you use the PropertyCollector.WaitForUpdatesEx method, specify
  an empty string for the version parameter. Any other version value will not
  produce any property values as no updates are generated.]]>
      </description-html>
      </property>

            <property name="alarmActionsEnabled" type-id-ref="BOOLEAN"
      vmodl-name="alarmActionsEnabled"
      version-id-ref="vim.version.version5"
      is-optional="true"
      privilege="System.Read"
      >
      <description-html>
         <![CDATA[Whether alarm actions are enabled for this entity.
 True if enabled; false otherwise.]]>
      </description-html>
      </property>

            <property name="tag" type-id-ref="vim.Tag"
      vmodl-name="tag"
      version-id-ref="vim.version.version5"
      is-array="true"
      is-optional="true"
      privilege="System.View"
      >
      <description-html>
         <![CDATA[The set of tags associated with this managed entity.
  Experimental. Subject to change.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.ManagedEntity.Status</nested-type-id-ref>
   <method name="Reload"
      vmodl-name="reload"
      privilege="System.Read"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Reload the entity state. Clients only need to call this method
  if they changed some external state that affects the service
  without using the Web service interface to perform the change.
  For example, hand-editing a virtual machine configuration file
  affects the configuration of the associated virtual machine but
  the service managing the virtual machine might not monitor the
  file for changes. In this case, after such an edit, a client
  would call "reload" on the associated virtual machine to ensure
  the service and its clients have current data for the
  virtual machine.]]>
      </description-html>
   </method>
   <method name="Rename"
      vmodl-name="rename"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Renames this managed entity.
 <p>
 Any % (percent) character used in this name parameter
 must be escaped, unless it is used to start an escape
 sequence. Clients may also escape any other characters in
 this name parameter.
 <p><br>See <a href="vim.ManagedEntity.html#name">Name</a><br>]]>
      </description-html>
      <sub-privilege target-type-id-ref="vim.VirtualApp" privilege="VApp.Rename"/>
      <sub-privilege target-type-id-ref="vim.Datastore" privilege="Datastore.Rename"/>
      <sub-privilege target-type-id-ref="vim.VirtualMachine" privilege="VirtualMachine.Config.Rename"/>
      <sub-privilege target-type-id-ref="vim.dvs.VmwareDistributedVirtualSwitch" privilege="DVSwitch.Modify"/>
      <sub-privilege target-type-id-ref="vim.Network" privilege="System.Read"/>
      <sub-privilege target-type-id-ref="vim.Datacenter" privilege="Datacenter.Rename"/>
      <sub-privilege target-type-id-ref="vim.ClusterComputeResource" privilege="Host.Inventory.RenameCluster"/>
      <sub-privilege target-type-id-ref="vim.DistributedVirtualSwitch" privilege="DVSwitch.Modify"/>
      <sub-privilege target-type-id-ref="vim.ResourcePool" privilege="Resource.RenamePool"/>
      <sub-privilege target-type-id-ref="vim.dvs.DistributedVirtualPortgroup" privilege="DVPortgroup.Modify"/>
      <sub-privilege target-type-id-ref="vim.Folder" privilege="Folder.Rename"/>
      <parameter name="newName" type-id-ref="java.lang.String"
      vmodl-name="newName"
      version-id-ref="vim.version.version1"
      privilege="newName"
      >
      <description-html>
         <![CDATA[<br>See <a href="vim.ManagedEntity.html#name">Name</a><br>]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.DuplicateName">
      <fault-description-html>
         <![CDATA[If another object in the same folder has the target name.<br>See <a href="vim.ManagedEntity.html#name">Name</a><br>]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidName">
      <fault-description-html>
         <![CDATA[If the new name is not a valid entity name.<br>See <a href="vim.ManagedEntity.html#name">Name</a><br>]]>
      </fault-description-html>
      </fault>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to monitor the
        operation.]]>
      </task-description-html>
   </method>
   <method name="Destroy"
      vmodl-name="destroy"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Destroys this object, deleting its contents and removing it from its parent
  folder (if any).
  <p>
  NOTE: The appropriate privilege must be held on the parent of the destroyed
  entity as well as the entity itself.
  </p>
  This method can throw one of several exceptions. The exact set of exceptions
  depends on the kind of entity that is being removed.  See comments for
  each entity for more information on destroy behavior.]]>
      </description-html>
      <sub-privilege target-type-id-ref="vim.ComputeResource" privilege="Host.Inventory.RemoveHostFromCluster"/>
      <sub-privilege target-type-id-ref="vim.VirtualMachine" privilege="VirtualMachine.Inventory.Delete"/>
      <sub-privilege target-type-id-ref="vim.dvs.VmwareDistributedVirtualSwitch" privilege="DVSwitch.Delete"/>
      <sub-privilege target-type-id-ref="vim.Network" privilege="System.Read"/>
      <sub-privilege target-type-id-ref="vim.Datacenter" privilege="Datacenter.Delete"/>
      <sub-privilege target-type-id-ref="vim.HostSystem" privilege="Host.Inventory.RemoveHostFromCluster"/>
      <sub-privilege target-type-id-ref="vim.ClusterComputeResource" privilege="Host.Inventory.DeleteCluster"/>
      <sub-privilege target-type-id-ref="vim.ResourcePool" privilege="Resource.DeletePool"/>
      <sub-privilege target-type-id-ref="vim.Folder" privilege="Folder.Delete"/>
      <sub-privilege target-type-id-ref="vim.VirtualApp" privilege="VApp.Delete"/>
      <sub-privilege target-type-id-ref="vim.StoragePod" privilege="Folder.Delete"/>
      <sub-privilege target-type-id-ref="vim.Datastore" privilege="System.Read"/>
      <sub-privilege target-type-id-ref="vim.DistributedVirtualSwitch" privilege="DVSwitch.Delete"/>
      <sub-privilege target-type-id-ref="vim.dvs.DistributedVirtualPortgroup" privilege="DVPortgroup.Delete"/>
      <fault type-id-ref="vim.fault.VimFault">
      </fault>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to monitor the
        operation.]]>
      </task-description-html>
   </method>
   </managed-object>
   <managed-object name="ViewManager"
      type-id="vim.view.ViewManager"
      vmodl-name="vim.view.ViewManager"
      version-id-ref="vim.version.version2"
      >
      <description-html>
         <![CDATA[The <a href="vim.view.ViewManager.html">ViewManager</a> managed object provides methods to create <a href="vim.view.ContainerView.html">ContainerView</a>,
  <a href="vim.view.InventoryView.html">InventoryView</a>, and <a href="vim.view.ListView.html">ListView</a> managed objects.
  The <a href="vim.view.ViewManager.html">ViewManager</a> also maintains a list of managed object references
  to the views that you have created. Use the <a href="vim.view.ViewManager.html#viewList">ViewList</a>
  property to access the views.
  <p>
  A <a href="vim.view.View.html">View</a> is a mechanism that supports selection of objects on the server
  and subsequently, access to those objects. Views can simplify the task of
  retrieving data from the server. When you use a view, you can use a single
  invocation of a <a href="vmodl.query.PropertyCollector.html">PropertyCollector</a> method
  to retrieve data or receive notification of changes instead of multiple invocations
  involving multiple filter specifications. A view exists until you destroy it
  or until the end of the session.
  <p>
  The <a href="vim.view.ViewManager.html">ViewManager</a> supports the following views:
  <ul>
    <li> A <a href="vim.view.ContainerView.html">ContainerView</a> is based on <a href="vim.Folder.html">Folder</a>,
         <a href="vim.Datacenter.html">Datacenter</a>, <a href="vim.ComputeResource.html">ComputeResource</a>,
         <a href="vim.ResourcePool.html">ResourcePool</a>, or <a href="vim.HostSystem.html">HostSystem</a> managed objects.
         Use a container view to monitor the container contents and optionally,
         its descendants.
    <li> A <a href="vim.view.ListView.html">ListView</a> managed object is based on an arbitrary but
         specific set of objects. When you create a list view, you provide
         a list of objects to populate the view
         (<a href="vim.view.ViewManager.html#createListView">CreateListView</a>),
         or you provide an existing view from which the new view is created
         (<a href="vim.view.ViewManager.html#createListViewFromView">CreateListViewFromView</a>).
    <li> An <a href="vim.view.InventoryView.html">InventoryView</a> managed object is based on the entire inventory.
         Use an inventory view as a general mechanism to monitor the inventory
         or portions of the inventory.
  </ul>

  <p>
  For example, you might use the following sequence of operations to get the
  names of all the virtual machines on a server:
  <ol>
    <li> Create a <a href="vim.view.ContainerView.html">ContainerView</a> for the root folder in the server inventory.
         For the <a href="vim.view.ContainerView.html">ContainerView</a>, use the <a href="vim.view.ContainerView.html#type">Type</a> property
         to include only virtual machines.
    <li> Create a filter specification for the <a href="vmodl.query.PropertyCollector.html">PropertyCollector</a>.
    <ul>
        <li> Use the <a href="vim.view.ContainerView.html">ContainerView</a> as the starting object in the
         <a href="vmodl.query.PropertyCollector.ObjectSpec.html">ObjectSpec</a> for the filter.
        <li> Use the <a href="vmodl.query.PropertyCollector.TraversalSpec.html">TraversalSpec</a>
         to select all objects in the view list (all the virtual machines).
        <li> Use the <a href="vmodl.query.PropertyCollector.PropertySpec.html">PropertySpec</a>
         to retrieve the name property from each virtual machine.
    </ul>
    <li> Invoke the <a href="vmodl.query.PropertyCollector.html">PropertyCollector</a>
         <a href="vmodl.query.PropertyCollector.html#retrieveContents">RetrieveProperties</a> method.
  </ol>]]>
      </description-html>
            <property name="viewList" type-id-ref="vim.view.View"
      vmodl-name="viewList"
      is-array="true"
      is-optional="true"
      privilege="System.View"
      >
      <description-html>
         <![CDATA[An array of view references. Each array entry is a managed object reference
  to a view created by this ViewManager.]]>
      </description-html>
      </property>

   <method name="CreateInventoryView"
      vmodl-name="createInventoryView"
      privilege="System.View"
      type-id-ref="vim.view.InventoryView"
      >
      <description-html>
         <![CDATA[Create a new <a href="vim.view.InventoryView.html">InventoryView</a> managed object for this session.]]>
      </description-html>
   </method>
   <method name="CreateContainerView"
      vmodl-name="createContainerView"
      privilege="System.View"
      type-id-ref="vim.view.ContainerView"
      >
      <description-html>
         <![CDATA[Create a <a href="vim.view.ContainerView.html">ContainerView</a> managed object for this session.  The method returns
  a reference to a <a href="vim.view.ContainerView.html">ContainerView</a> object that has a list of managed object references.
  The list references objects in the container and may include references to objects from
  additional containers. You can configure the resulting list of objects by specifying
  a type list and recursion. Once you have created the view, the object list always
  represents the current configuration of the virtual environment and reflects any
  subsequent changes that occur.]]>
      </description-html>
      <parameter name="container" type-id-ref="vim.ManagedEntity"
      vmodl-name="container"
      version-id-ref="vim.version.version2"
      privilege="container"
      >
      <description-html>
         <![CDATA[A reference to an instance of a <a href="vim.Folder.html">Folder</a>,
                   <a href="vim.Datacenter.html">Datacenter</a>, <a href="vim.ComputeResource.html">ComputeResource</a>,
                   <a href="vim.ResourcePool.html">ResourcePool</a>, or <a href="vim.HostSystem.html">HostSystem</a> object.]]>
      </description-html>
      </parameter>
      <parameter name="type" type-id-ref="vmodl.TypeName"
      vmodl-name="type"
      version-id-ref="vim.version.version2"
      is-array="true"
      is-optional="true"
      privilege="type"
      >
      <description-html>
         <![CDATA[An optional list of managed entity types. The server
                   associates only objects of the specified type(s) with the view.
                   If you specify an empty array, the server uses all types.]]>
      </description-html>
      </parameter>
      <parameter name="recursive" type-id-ref="BOOLEAN"
      vmodl-name="recursive"
      version-id-ref="vim.version.version2"
      privilege="recursive"
      >
      <description-html>
         <![CDATA[Whether to include only the immediate children of the
                   container instance, or to include additional objects by
                   following paths beyond the immediate children.
                   <p>
                   When recursive is false, the list of objects contains
                   only immediate children.
                   When recursive is true, the server populates the list
                   by following references beyond the immediate children
                   (using a child's references, and then references in the
                   resulting objects, and so on).
                   <p>
                   Depending on the container type, the server will use the following
                   properties of the container instance to obtain objects for the
                   view's object list:
                   <ul>
                   <li> <a href="vim.Folder.html">Folder</a> object - <a href="vim.Folder.html#childEntity">ChildEntity</a>
                        property.
                        If recursive is false, the container list includes the reference
                        to the child entity in the folder instance.
                        If recursive is true, the server will follow the child
                        folder path(s) to collect additional childEntity references.
                   <li> <a href="vim.ResourcePool.html">ResourcePool</a> object - <a href="vim.ResourcePool.html#vm">Vm</a>
                        and <a href="vim.ResourcePool.html#resourcePool">ResourcePool</a> properties.
                        If recursive is false, the object list will contain references
                        to the virtual machines associated with this resource pool,
                        and references to virtual machines associated with the
                        immediate child resource pools. If recursive is true,
                        the server will follow all child resource pool paths
                        extending from the immediate children (and their children,
                        and so on) to collect additional references to virtual machines.
                   <li> <a href="vim.ComputeResource.html">ComputeResource</a> object - <a href="vim.ComputeResource.html#host">Host</a>
                        and <a href="vim.ComputeResource.html#resourcePool">ResourcePool</a> properties.
                        If recursive is false, the object list will contain references
                        to the host systems associated with this compute resource,
                        references to virtual machines associated with the
                        host systems, and references to virtual machines associated
                        with the immediate child resource pools.
                        If recursive is true, the server will follow the child
                        resource pool paths (and their child resource pool paths,
                        and so on) to collect additional references to virtual machines.
                   <li> <a href="vim.Datacenter.html">Datacenter</a> object - <a href="vim.Datacenter.html#vmFolder">VmFolder</a>,
                        <a href="vim.Datacenter.html#hostFolder">HostFolder</a>,
                        <a href="vim.Datacenter.html#datastoreFolder">DatastoreFolder</a>, and
                        <a href="vim.Datacenter.html#networkFolder">NetworkFolder</a> properties.
                        If recursive is set to false, the server uses the
                        immediate child folders for the virtual machines,
                        hosts, datastores, and networks associated with this
                        datacenter. If recursive is set to true, the server
                        will follow the folder paths to collect references
                        to additional objects.
                   <li> <a href="vim.HostSystem.html">HostSystem</a> object - <a href="vim.HostSystem.html#vm">Vm</a>
                        property.
                        The view object list contains references to the virtual machines
                        associated with this host system. The value of recursive does not
                        affect this behavior.
                   </ul>]]>
      </description-html>
      </parameter>
   </method>
   <method name="CreateListView"
      vmodl-name="createListView"
      privilege="System.View"
      type-id-ref="vim.view.ListView"
      >
      <description-html>
         <![CDATA[Create a <a href="vim.view.ListView.html">ListView</a> object for this session.  The method returns
  a session object that has a list of managed object references. The list
  of references corresponds to the input object list.
  You can modify the resulting list after you have created the object.]]>
      </description-html>
      <parameter name="obj" type-id-ref="vmodl.ManagedObject"
      vmodl-name="obj"
      version-id-ref="vim.version.version2"
      is-array="true"
      is-optional="true"
      privilege="obj"
      >
      <description-html>
         <![CDATA[The initial list of objects in the view.]]>
      </description-html>
      </parameter>
   </method>
   <method name="CreateListViewFromView"
      vmodl-name="createListViewFromView"
      privilege="System.View"
      type-id-ref="vim.view.ListView"
      >
      <description-html>
         <![CDATA[Create a <a href="vim.view.ListView.html">ListView</a> object for this session. This method uses an existing
  view to construct the object list for the new view.]]>
      </description-html>
      <parameter name="view" type-id-ref="vim.view.View"
      vmodl-name="view"
      version-id-ref="vim.version.version2"
      privilege="view"
      >
      <description-html>
         <![CDATA[The view that will provide the object list for the
                 new ListView object.]]>
      </description-html>
      </parameter>
   </method>
   </managed-object>
   <managed-object name="ProfileManager"
      type-id="vim.profile.ProfileManager"
      vmodl-name="vim.profile.ProfileManager"
      version-id-ref="vim.version.version5"
      >
      <description-html>
         <![CDATA[This class is responsible for managing Profiles.]]>
      </description-html>
            <property name="profile" type-id-ref="vim.profile.Profile"
      vmodl-name="profile"
      is-array="true"
      is-optional="true"
      privilege="Profile.View"
      >
      <description-html>
         <![CDATA[A list of profiles known to this ProfileManager.]]>
      </description-html>
      </property>

   <method name="CreateProfile"
      vmodl-name="createProfile"
      privilege="Profile.Create"
      type-id-ref="vim.profile.Profile"
      >
      <description-html>
         <![CDATA[Create a profile from the specified CreateSpec.]]>
      </description-html>
      <parameter name="createSpec" type-id-ref="vim.profile.Profile.CreateSpec"
      vmodl-name="createSpec"
      version-id-ref="vim.version.version5"
      privilege="createSpec"
      >
      <description-html>
         <![CDATA[Specification for the profile being created.
 Usually a derived class CreateSpec can be used to create the Profile.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.DuplicateName">
      <fault-description-html>
         <![CDATA[If a profile with the specified name already
 exists.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[Profile created from the specified createSpec.]]>
      </return-value-description-html>
   </method>
   <method name="QueryPolicyMetadata"
      vmodl-name="queryPolicyMetadata"
      is-array="true"
      is-optional="true"
      privilege="System.View"
      type-id-ref="vim.profile.PolicyMetadata"
      >
      <description-html>
         <![CDATA[Get the Metadata information for the policyNames.
 PolicyNames are available with the defaultProfile obtained by invoking the
 method createDefaultProfile.]]>
      </description-html>
      <parameter name="policyName" type-id-ref="java.lang.String"
      vmodl-name="policyName"
      version-id-ref="vim.version.version5"
      is-array="true"
      is-optional="true"
      privilege="policyName"
      >
      <description-html>
         <![CDATA[Retrieve metadata for the specified policyNames.
    If policyName is not specified, metadata for all policies will be returned.]]>
      </description-html>
      </parameter>
      <parameter name="profile" type-id-ref="vim.profile.Profile"
      vmodl-name="profile"
      version-id-ref="vim.version.version5"
      is-optional="true"
      privilege="profile"
      >
      <description-html>
         <![CDATA[Base profile whose context needs to be used during the operation]]>
      </description-html>
      </parameter>
      <return-value-description-html>
         <![CDATA[The metadata information for the policy.]]>
      </return-value-description-html>
   </method>
   <method name="FindAssociatedProfile"
      vmodl-name="findAssociatedProfile"
      is-array="true"
      is-optional="true"
      privilege="System.View"
      type-id-ref="vim.profile.Profile"
      >
      <description-html>
         <![CDATA[Get the profile(s) to which this entity is associated.
 The list of profiles will only include profiles known to this
    profileManager.]]>
      </description-html>
      <parameter name="entity" type-id-ref="vim.ManagedEntity"
      vmodl-name="entity"
      version-id-ref="vim.version.version5"
      privilege="entity"
      >
      <description-html>
         <![CDATA[Entity for which profile is being looked up.]]>
      </description-html>
      </parameter>
   </method>
   </managed-object>
   <managed-object name="SessionManager"
      type-id="vim.SessionManager"
      vmodl-name="vim.SessionManager"
      version-id-ref="vim.version.version1"
      >
      <description-html>
         <![CDATA[This managed object type includes methods for logging on and
  logging off clients, determining which clients are currently
  logged on, and forcing clients to log off.]]>
      </description-html>
            <property name="sessionList" type-id-ref="vim.UserSession"
      vmodl-name="sessionList"
      is-array="true"
      is-optional="true"
      privilege="Sessions.TerminateSession"
      >
      <description-html>
         <![CDATA[The list of currently active sessions.]]>
      </description-html>
      </property>

            <property name="currentSession" type-id-ref="vim.UserSession"
      vmodl-name="currentSession"
      is-optional="true"
      privilege="System.Anonymous"
      >
      <description-html>
         <![CDATA[This property contains information about the client's current session.
  If the client is not logged on, the value is null.]]>
      </description-html>
      </property>

            <property name="message" type-id-ref="java.lang.String"
      vmodl-name="message"
      is-optional="true"
      privilege="System.View"
      >
      <description-html>
         <![CDATA[The system global message from the server.]]>
      </description-html>
      </property>

            <property name="messageLocaleList" type-id-ref="java.lang.String"
      vmodl-name="messageLocaleList"
      is-array="true"
      is-optional="true"
      privilege="System.Anonymous"
      >
      <description-html>
         <![CDATA[Provides the list of locales for which the server has localized messages.]]>
      </description-html>
      </property>

            <property name="supportedLocaleList" type-id-ref="java.lang.String"
      vmodl-name="supportedLocaleList"
      is-array="true"
      is-optional="true"
      privilege="System.Anonymous"
      >
      <description-html>
         <![CDATA[Provides the list of locales that the server supports.
  Listing a locale ensures that some standardized information such as dates appear
  in the appropriate format. Other localized information, such as error messages,
  are displayed, if available. If localized information is not available, the
  message is returned using the system locale.]]>
      </description-html>
      </property>

            <property name="defaultLocale" type-id-ref="java.lang.String"
      vmodl-name="defaultLocale"
      privilege="System.Anonymous"
      >
      <description-html>
         <![CDATA[This is the default server locale.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.SessionManager.LocalTicket</nested-type-id-ref>
      <nested-type-id-ref>vim.SessionManager.GenericServiceTicket</nested-type-id-ref>
      <nested-type-id-ref>vim.SessionManager.ServiceRequestSpec</nested-type-id-ref>
      <nested-type-id-ref>vim.SessionManager.VmomiServiceRequestSpec</nested-type-id-ref>
      <nested-type-id-ref>vim.SessionManager.HttpServiceRequestSpec</nested-type-id-ref>
   <method name="UpdateServiceMessage"
      vmodl-name="updateMessage"
      privilege="Sessions.GlobalMessage"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Updates the system global message. If not blank, the message is immediately
  displayed to currently logged-on users. When set, the message is shown by new
  clients upon logging in.]]>
      </description-html>
      <parameter name="message" type-id-ref="java.lang.String"
      vmodl-name="message"
      version-id-ref="vim.version.version1"
      privilege="message"
      >
      <description-html>
         <![CDATA[The message to send. Newline characters may be included.]]>
      </description-html>
      </parameter>
   </method>
   <method name="LoginByToken"
      vmodl-name="loginByToken"
      version-id-ref="vim.version.version8"
      privilege="System.Anonymous"
      type-id-ref="vim.UserSession"
      >
      <description-html>
         <![CDATA[Log on to the server through token representing principal identity.
  The token is obtained from SSO (single sign-on) service. This method
  fails if the token is not valid, or the principal has no permissions
  granted. Two type of sso tokens are supported by this method: Bearer
  and Holder-of-Key (HoK). If the token type obliges the method caller
  to prove his rights to present this token (HoK), then a signature is
  supplied as well. The token and the security signature if available
  are provided in a transport specific way.

  <p>
  If the communication with the VirtualCenter is SOAP based read the
  WS-Security specification (SAML Token profile) to understand how
  to transport the SSO token and signature.

  <p>
  Usual login scenario:
  <ol>
  <li>Acquire HoK token from the SSO service. Different authentication
     mechanisms are available for acquiring token (user/password,
     certificate, SSPI and so on). For more details consult the SSO
     documentation. To find the location of your SSO service consult the
     Virtual Infrastructure documentation.
  </li>

  <li>Once SSO token is acquired successfully <a href="vim.SessionManager.html#loginByToken">LoginByToken</a> could be
     invoked.
  </li>
  </ol>]]>
      </description-html>
      <parameter name="locale" type-id-ref="java.lang.String"
      vmodl-name="locale"
      version-id-ref="vim.version.version8"
      is-optional="true"
      privilege="locale"
      >
      <description-html>
         <![CDATA[A two-character ISO-639 language ID (like "en")
                optionally followed by an
                underscore and a two-character ISO 3166 country ID (like "US").
                <p>
                Examples are "de", "fr_CA", "zh", "zh_CN", and "zh_TW".
                Note: The method uses the server default locale when
                a locale is not provided. This default can be configured in the
                server configuration file. If unspecified, it defaults to the
                locale of the server environment or English ("en") if unsupported.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.InvalidLogin">
      <fault-description-html>
         <![CDATA[if there is no token provided or the token
                       could not be validated.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidLocale">
      <fault-description-html>
         <![CDATA[if the locale is invalid or unknown to the server.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[The UserSession object.]]>
      </return-value-description-html>
   </method>
   <method name="Login"
      vmodl-name="login"
      privilege="System.Anonymous"
      type-id-ref="vim.UserSession"
      >
      <description-html>
         <![CDATA[Log on to the server.  This method fails if the user name and password are
  incorrect, or if the user is valid but has no permissions granted.]]>
      </description-html>
      <parameter name="userName" type-id-ref="java.lang.String"
      vmodl-name="userName"
      version-id-ref="vim.version.version1"
      privilege="userName"
      >
      <description-html>
         <![CDATA[The <a href="vim.host.LocalAccountManager.AccountSpecification.html#id">id</a>
                  of the user who is logging on to the server.]]>
      </description-html>
      </parameter>
      <parameter name="password" type-id-ref="java.lang.String"
      vmodl-name="password"
      version-id-ref="vim.version.version1"
      privilege="password"
      >
      <description-html>
         <![CDATA[The <a href="vim.host.LocalAccountManager.AccountSpecification.html#password">password</a>
                  of the user who is logging on to the server.]]>
      </description-html>
      </parameter>
      <parameter name="locale" type-id-ref="java.lang.String"
      vmodl-name="locale"
      version-id-ref="vim.version.version1"
      is-optional="true"
      privilege="locale"
      >
      <description-html>
         <![CDATA[A two-character ISO-639 language ID (like "en")
                optionally followed by an
                underscore and a two-character ISO 3166 country ID (like "US").
                <p>
                Examples are "de", "fr_CA", "zh", "zh_CN", and "zh_TW".
                Note: The method uses the server default locale when
                a locale is not provided. This default can be configured in the
                server configuration file. If unspecified, it defaults to the
                locale of the server environment or English ("en") if unsupported.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.InvalidLogin">
      <fault-description-html>
         <![CDATA[if the user and password combination is invalid.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidLocale">
      <fault-description-html>
         <![CDATA[if the locale is invalid or unknown to the server.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[The UserSession object.

  <p>
  As of vSphere API 5.1 for VirtualCenter login use SSO style
     <a href="vim.SessionManager.html#loginByToken">LoginByToken</a>]]>
      </return-value-description-html>
   </method>
   <method name="LoginBySSPI"
      vmodl-name="loginBySSPI"
      version-id-ref="vim.version.version2"
      privilege="System.Anonymous"
      type-id-ref="vim.UserSession"
      >
      <description-html>
         <![CDATA[Log on to the server using SSPI pass-through authentication.
  <p>
  This method provides support for passing credentials of the calling
  process to the server without using a password, by leveraging the
  Windows Security Support Provider Interface (SSPI) library.
  <p>
  If the function is not supported, this throws a NotSupported fault.
  <p>
  The client first calls AcquireCredentialsHandle().  If Kerberos is
  used, this should include the desired credential to pass.  The client then
  calls InitializeSecurityContext().  The resulting partially-formed
  context is passed in Base-64 encoded form to this method.
  <p>
  If the context has been successfully formed, the server proceeds with
  login and behaves like <a href="vim.SessionManager.html#login">Login</a>.  If further
  negotiation is needed, the server throws an SSPIChallenge fault with
  a challenge token, which the client should again pass to
  InitializeSecurityContext(), followed by calling this method again.
  <p>
  For more information, see the MSDN documentation on SSPI.]]>
      </description-html>
      <parameter name="base64Token" type-id-ref="java.lang.String"
      vmodl-name="base64Token"
      version-id-ref="vim.version.version2"
      privilege="base64Token"
      >
      <description-html>
         <![CDATA[The partially formed context returned from
                     InitializeSecurityContext().]]>
      </description-html>
      </parameter>
      <parameter name="locale" type-id-ref="java.lang.String"
      vmodl-name="locale"
      version-id-ref="vim.version.version2"
      is-optional="true"
      privilege="locale"
      >
      <description-html>
         <![CDATA[A two-character ISO-639 language ID (like "en")
                optionally followed by an
                underscore and a two-character ISO 3166 country ID (like "US").
                <p>
                Examples are "de", "fr_CA", "zh", "zh_CN", and "zh_TW".
                Note: The method uses the server default locale when
                a locale is not provided. This default can be configured in the
                server configuration file. If unspecified, it defaults to the
                locale of the server environment or English ("en") if unsupported.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.SSPIChallenge">
      <fault-description-html>
         <![CDATA[if further negotiation is required.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidLogin">
      <fault-description-html>
         <![CDATA[if the user context could not be passed successfully,
                       or the context is not valid on the server.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidLocale">
      <fault-description-html>
         <![CDATA[if the locale is invalid or unknown to the server.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[The UserSession object.

  <p>
  As of vSphere API 5.1 for VirtualCenter login use SSO style
  <a href="vim.SessionManager.html#loginByToken">LoginByToken</a>]]>
      </return-value-description-html>
   </method>
   <method name="Logout"
      vmodl-name="logout"
      privilege="System.View"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Log out and terminate the current session.]]>
      </description-html>
   </method>
   <method name="AcquireLocalTicket"
      vmodl-name="acquireLocalTicket"
      privilege="System.Anonymous"
      type-id-ref="vim.SessionManager.LocalTicket"
      >
      <description-html>
         <![CDATA[Acquires a one-time ticket for mutual authentication between a server and client.
 <p>
 The caller of this operation can use the user name and file content of
 the returned object as the userName and password arguments for login
 operation.  The local ticket that is returned becomes invalid either
 after it is used or after a server-determined ticket expiration time
 passes. This operation can be used by servers and clients to avoid
 re-entering user credentials after authentication by the operating
 system has already happened.
 <p>
 For example, service console utilities that connect to a host agent
 should not require users to re-enter their passwords every time the
 utilities run. Since the one-time password file is readable only by
 the given user, the identity of the one-time password user is protected
 by the operating system file permission.
 <p>
 Only local clients are allowed to call this operation. Remote clients
 receive an InvalidRequest fault upon calling this operation.]]>
      </description-html>
      <parameter name="userName" type-id-ref="java.lang.String"
      vmodl-name="userName"
      version-id-ref="vim.version.version1"
      privilege="userName"
      >
      <description-html>
         <![CDATA[User requesting one-time password.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.InvalidLogin">
      <fault-description-html>
         <![CDATA[if the userName is invalid.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[LocalTicket object containing userName and path to file
         containing one-time password for use in login operation.]]>
      </return-value-description-html>
   </method>
   <method name="AcquireGenericServiceTicket"
      vmodl-name="acquireGenericServiceTicket"
      version-id-ref="vim.version.version7"
      privilege="System.Anonymous"
      type-id-ref="vim.SessionManager.GenericServiceTicket"
      >
      <description-html>
         <![CDATA[Creates and returns a one-time credential that may be used to make the
  specified request.]]>
      </description-html>
      <parameter name="spec" type-id-ref="vim.SessionManager.ServiceRequestSpec"
      vmodl-name="spec"
      version-id-ref="vim.version.version7"
      privilege="spec"
      >
      <description-html>
         <![CDATA[specification for the service request which will be
              invoked with the ticket.]]>
      </description-html>
      </parameter>
      <return-value-description-html>
         <![CDATA[a ticket that may be used to invoke the specified request.]]>
      </return-value-description-html>
   </method>
   <method name="TerminateSession"
      vmodl-name="terminate"
      privilege="Sessions.TerminateSession"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Log off and terminate the provided list of sessions.
  <p>
  This method is only transactional for each session ID. The set of sessions
  are terminated sequentially, as specified in the list. If a failure
  occurs, for example, because of an unknown sessionID, the method aborts with
  an exception. When the method aborts, any sessions that have not yet been
  terminated are left in their unterminated state.]]>
      </description-html>
      <parameter name="sessionId" type-id-ref="java.lang.String"
      vmodl-name="sessionId"
      version-id-ref="vim.version.version1"
      is-array="true"
      privilege="sessionId"
      >
      <description-html>
         <![CDATA[A list of sessions to terminate.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[if a sessionId could not be found as a valid logged-on session.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="SetLocale"
      vmodl-name="setLocale"
      privilege="System.View"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Sets the session locale.]]>
      </description-html>
      <parameter name="locale" type-id-ref="java.lang.String"
      vmodl-name="locale"
      version-id-ref="vim.version.version1"
      privilege="locale"
      >
      <description-html>
         <![CDATA[A two-character ISO-639 language ID (like "en")
                optionally followed by an
                underscore and a two-character ISO 3166 country ID (like "US").
                <p>
                Examples are "de", "fr_CA", "zh", "zh_CN", and "zh_TW".
                Note: The method uses the server default locale when
                a locale is not provided. This default can be configured in the
                server configuration file. If unspecified, it defaults to the
                locale of the server environment or English ("en") if unsupported.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.InvalidLocale">
      <fault-description-html>
         <![CDATA[if the locale is invalid or unknown to the server.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="LoginExtensionBySubjectName"
      vmodl-name="loginExtensionBySubjectName"
      version-id-ref="vim.version.version2"
      internal-before-version-id-ref="vim.version.version5"
      is-deprecated="true"
      privilege="System.Anonymous"
      type-id-ref="vim.UserSession"
      >
      <description-html>
         <![CDATA[Creates a special privileged session that includes
  the Sessions.ImpersonateUser privilege. Requires that the extension connected
  using SSL, with a certificate that has a subject name that matches the subject
  name registered for the extension.
  <p>
  As of vSphere API 4.0, the NotFound fault is no longer thrown.  Instead, InvalidLogin
  is thrown if the specified extension is not registered.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 6.0, use SSO style of login instead
     <a href="vim.SessionManager.html#loginByToken">LoginByToken</a>]]>
      </deprecated-html>
      <parameter name="extensionKey" type-id-ref="java.lang.String"
      vmodl-name="extensionKey"
      version-id-ref="vim.version.version2"
      privilege="extensionKey"
      >
      <description-html>
         <![CDATA[Key of extension that is logging in.]]>
      </description-html>
      </parameter>
      <parameter name="locale" type-id-ref="java.lang.String"
      vmodl-name="locale"
      version-id-ref="vim.version.version2"
      is-optional="true"
      privilege="locale"
      >
      <description-html>
         <![CDATA[A two-character ISO-639 language ID (like "en")
                optionally followed by an
                underscore and a two-character ISO 3166 country ID (like "US").
                <p>
                Examples are "de", "fr_CA", "zh", "zh_CN", and "zh_TW".
                Note: The method uses the server default locale when
                a locale is not provided. This default can be configured in the
                server configuration file. If unspecified, it defaults to the
                locale of the server environment or English ("en") if unsupported.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.InvalidLogin">
      <fault-description-html>
         <![CDATA[if the extension is not registered, or the subject name
                       doesn't match the subject name of the extension.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidLocale">
      <fault-description-html>
         <![CDATA[if the supplied locale is not valid]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[if no extension is associated with the given key]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.NoClientCertificate">
      <fault-description-html>
         <![CDATA[if no certificate was used by the client to connect]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.NoSubjectName">
      <fault-description-html>
         <![CDATA[if the extension was registered without a subject name]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidClientCertificate">
      <fault-description-html>
         <![CDATA[if the client cerificate fails the verification at the server]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="LoginExtensionByCertificate"
      vmodl-name="loginExtensionByCertificate"
      version-id-ref="vim.version.version5"
      is-deprecated="true"
      privilege="System.Anonymous"
      type-id-ref="vim.UserSession"
      >
      <description-html>
         <![CDATA[Creates a special privileged session that includes
  the Sessions.ImpersonateUser privilege. Requires that the client connect
  over SSL and provide an X.509 certificate for which they hold the private key.
  The certificate must match the certificate used in an earlier call to
  <a href="vim.ExtensionManager.html#setCertificate">SetExtensionCertificate</a>.
  <p>
  NOTE: Verification of the received certificate (such as expiry, revocation,
  and trust chain) is not required for successful authentication using
  this method.  If certificate verification is desired, use the
  <a href="vim.SessionManager.html#loginExtensionBySubjectName">LoginExtensionBySubjectName</a> method instead.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 6.0, use SSO style of login instead
     <a href="vim.SessionManager.html#loginByToken">LoginByToken</a>]]>
      </deprecated-html>
      <parameter name="extensionKey" type-id-ref="java.lang.String"
      vmodl-name="extensionKey"
      version-id-ref="vim.version.version5"
      privilege="extensionKey"
      >
      <description-html>
         <![CDATA[Key of extension that is logging in.]]>
      </description-html>
      </parameter>
      <parameter name="locale" type-id-ref="java.lang.String"
      vmodl-name="locale"
      version-id-ref="vim.version.version5"
      is-optional="true"
      privilege="locale"
      >
      <description-html>
         <![CDATA[A two-character ISO-639 language ID (like "en")
                optionally followed by an
                underscore and a two-character ISO 3166 country ID (like "US").
                <p>
                Examples are "de", "fr_CA", "zh", "zh_CN", and "zh_TW".
                Note: The method uses the server default locale when
                a locale is not provided. This default can be configured in the
                server configuration file. If unspecified, it defaults to the
                locale of the server environment or English ("en") if unsupported.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.InvalidLogin">
      <fault-description-html>
         <![CDATA[if the extension is not registered, or the
                       certificate does not match the expected value.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidLocale">
      <fault-description-html>
         <![CDATA[if the supplied locale is not valid]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.NoClientCertificate">
      <fault-description-html>
         <![CDATA[if no certificate was used by the client to connect]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="ImpersonateUser"
      vmodl-name="impersonateUser"
      version-id-ref="vim.version.version2"
      privilege="Sessions.ImpersonateUser"
      type-id-ref="vim.UserSession"
      >
      <description-html>
         <![CDATA[Converts current session to impersonate the specified user.
  The current session will take on the identity and authorization level of
  the user. That user must have a currently-active session.
  If the given userName is an extension key and this key does
  not overlap with a user name of any currently-active session, it will
  take on the identity and  authorization level of that extension provided
  the current session has the same authorization level of that extension.]]>
      </description-html>
      <parameter name="userName" type-id-ref="java.lang.String"
      vmodl-name="userName"
      version-id-ref="vim.version.version2"
      privilege="userName"
      >
      <description-html>
         <![CDATA[The user or extension key to impersonate.]]>
      </description-html>
      </parameter>
      <parameter name="locale" type-id-ref="java.lang.String"
      vmodl-name="locale"
      version-id-ref="vim.version.version2"
      is-optional="true"
      privilege="locale"
      >
      <description-html>
         <![CDATA[A two-character ISO-639 language ID (like "en")
                optionally followed by an
                underscore and a two-character ISO 3166 country ID (like "US").
                <p>
                Examples are "de", "fr_CA", "zh", "zh_CN", and "zh_TW".
                Note: The method uses the server default locale when
                a locale is not provided. This default can be configured in the
                server configuration file. If unspecified, it defaults to the
                locale of the server environment or English ("en") if unsupported.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.InvalidLogin">
      </fault>
      <fault type-id-ref="vim.fault.InvalidLocale">
      </fault>
   </method>
   <method name="SessionIsActive"
      vmodl-name="sessionIsActive"
      version-id-ref="vim.version.version2"
      privilege="Sessions.ValidateSession"
      type-id-ref="BOOLEAN"
      >
      <description-html>
         <![CDATA[Validates that a currently-active session exists with the specified
  sessionID and userName associated with it. Returns true
  if session exists.]]>
      </description-html>
      <parameter name="sessionID" type-id-ref="java.lang.String"
      vmodl-name="sessionID"
      version-id-ref="vim.version.version2"
      privilege="sessionID"
      >
      <description-html>
         <![CDATA[Session ID to validate.]]>
      </description-html>
      </parameter>
      <parameter name="userName" type-id-ref="java.lang.String"
      vmodl-name="userName"
      version-id-ref="vim.version.version2"
      privilege="userName"
      >
      <description-html>
         <![CDATA[User name to validate.]]>
      </description-html>
      </parameter>
   </method>
   <method name="AcquireCloneTicket"
      vmodl-name="acquireCloneTicket"
      version-id-ref="vim.version.version3"
      internal-before-version-id-ref="vim.version.version4"
      privilege="System.View"
      type-id-ref="java.lang.String"
      >
      <description-html>
         <![CDATA[Acquire a session-specific ticket string which can be used to clone
   the current session. The caller of this operation can pass the ticket
   value to another entity on the client. The recipient can then call
   <a href="vim.SessionManager.html#cloneSession">CloneSession</a> with the ticket string on an unauthenticated
   session and avoid having to re-enter credentials.
   <p>
   The ticket may only be used once and becomes invalid after use. The
   ticket is also invalidated when the corresponding session is closed or
   expires.  The ticket is only valid on the server which issued it.
   <p>
   This sequence of operations is conceptually similar to the
   functionality provided by <a href="vim.SessionManager.html#acquireLocalTicket">AcquireLocalTicket</a>, however the
   methods can be used by remote clients and do not require a shared
   filesystem for transport.<br>See <a href="vim.SessionManager.html#cloneSession">CloneSession</a><br>]]>
      </description-html>
      <return-value-description-html>
         <![CDATA[one-time secret ticket string.]]>
      </return-value-description-html>
   </method>
   <method name="CloneSession"
      vmodl-name="cloneSession"
      version-id-ref="vim.version.version3"
      internal-before-version-id-ref="vim.version.version4"
      privilege="System.Anonymous"
      type-id-ref="vim.UserSession"
      >
      <description-html>
         <![CDATA[Clone the session specified by the clone ticket and associate it with
  the current connection. The current session will take on the identity
  and authorization level of the UserSession associated with the
  specified cloning ticket.<br>See <a href="vim.SessionManager.html#acquireCloneTicket">AcquireCloneTicket</a><br>See <a href="vim.SessionManager.html#acquireGenericServiceTicket">AcquireGenericServiceTicket</a><br>]]>
      </description-html>
      <parameter name="cloneTicket" type-id-ref="java.lang.String"
      vmodl-name="cloneTicket"
      version-id-ref="vim.version.version3"
      privilege="cloneTicket"
      >
      <description-html>
         <![CDATA[ticket string acquired via <a href="vim.SessionManager.html#acquireCloneTicket">AcquireCloneTicket</a>.<br>See <a href="vim.SessionManager.html#acquireCloneTicket">AcquireCloneTicket</a><br>See <a href="vim.SessionManager.html#acquireGenericServiceTicket">AcquireGenericServiceTicket</a><br>]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.InvalidLogin">
      <fault-description-html>
         <![CDATA[if the specified ticket value is not valid.<br>See <a href="vim.SessionManager.html#acquireCloneTicket">AcquireCloneTicket</a><br>See <a href="vim.SessionManager.html#acquireGenericServiceTicket">AcquireGenericServiceTicket</a><br>]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[The new/cloned UserSession object.]]>
      </return-value-description-html>
   </method>
   </managed-object>
   <managed-object name="VcenterVStorageObjectManager"
      type-id="vim.vslm.vcenter.VStorageObjectManager"
      vmodl-name="vim.vslm.vcenter.VStorageObjectManager"
      version-id-ref="vim.version.version11"
      base-type-id="vim.vslm.VStorageObjectManagerBase"
      >
      <description-html>
         <![CDATA[Interface to manage virtual storage object on a vCenter.

 VStorageObjectManager and SPBM policy support:

 All of the VStorageObjectManager APIs requiring ESXi host
 uses "Programatically selected" host to perform the actual operation.
 If the selected host is of 6.5 version then policy would not be passed
 down to host. In that case, user operation would succeed but if user checks
 SPBM Entity Compliance, it will show "Mismatch" / "Non Compliant" as a
 compliance result.]]>
      </description-html>
   <method name="CreateDisk"
      vmodl-name="createDisk"
      privilege="System.View"
      type-id-ref="vim.vslm.VStorageObject"
      is-task="true"
      >
      <description-html>
         <![CDATA[Create a virtual disk, which is a storage object with
  vim.vslm.VStorageObject.ConsumptionType#disk
  as consumption type.
  <p>
  Requires Datastore.FileManagement privilege on the datastore where the
  virtual disk object is created.
  <p>]]>
      </description-html>
      <parameter name="spec" type-id-ref="vim.vslm.CreateSpec"
      vmodl-name="spec"
      version-id-ref="vim.version.version11"
      privilege="spec"
      >
      <description-html>
         <![CDATA[The specification of the virtual storage object
              to be created.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.FileFault">
      <fault-description-html>
         <![CDATA[If an error occurs when creating the virtual disk.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidDatastore">
      <fault-description-html>
         <![CDATA[If the operation cannot be performed on the
                           datastore.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[The new virtual storage object.]]>
      </return-value-description-html>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to monitor
        monitor the operation. The <a href="vim.TaskInfo.html#result">result</a>
        property in the <a href="vim.Task.html">Task</a> contains the newly created
        <a href="vim.vslm.VStorageObject.html">VStorageObject</a> upon success.]]>
      </task-description-html>
   </method>
   <method name="RegisterDisk"
      vmodl-name="registerDisk"
      privilege="System.View"
      type-id-ref="vim.vslm.VStorageObject"
      >
      <description-html>
         <![CDATA[Promote a virtual disk to a First Class Disk.
  <p>
  Requires Datastore.FileManagement privilege on the datastore where the
  virtual disk resides.
  <p><br>See vim.vslm.BaseConfigInfo.name]]>
      </description-html>
      <parameter name="path" type-id-ref="java.lang.String"
      vmodl-name="path"
      version-id-ref="vim.version.version11"
      privilege="path"
      >
      <description-html>
         <![CDATA[URL path to the virtual disk.<br>See vim.vslm.BaseConfigInfo.name]]>
      </description-html>
      </parameter>
      <parameter name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      version-id-ref="vim.version.version11"
      is-optional="true"
      privilege="name"
      >
      <description-html>
         <![CDATA[The descriptive name of the disk object. If
              unset the name will be automatically determined
              from the path.<br>See vim.vslm.BaseConfigInfo.name]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.FileFault">
      <fault-description-html>
         <![CDATA[If an error occurs while registering the virtual disk.<br>See vim.vslm.BaseConfigInfo.name]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidDatastore">
      <fault-description-html>
         <![CDATA[If datastore cannot be found or the operation
                           cannot be performed on the datastore.<br>See vim.vslm.BaseConfigInfo.name]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.AlreadyExists">
      <fault-description-html>
         <![CDATA[If disk is already registered as a
                        virtual storage object.<br>See vim.vslm.BaseConfigInfo.name]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[The registered virtual storage object for the disk.]]>
      </return-value-description-html>
   </method>
   <method name="ExtendDisk"
      vmodl-name="extendDisk"
      privilege="System.View"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Expand the capacity of a virtual disk, which is a storage object with
  vim.vslm.VStorageObject.ConsumptionType#disk, to the new
  capacity.

  The extended disk region will be the same as the original disk:
  - For a zerothick disk, the extended disk region will be zeroedthick.
  - For an eagerzerothick disk, the extended disk region will be
    eagerzeroedthick
  - A thin-provisioned disk will always be extended as a thin-provisioned
    disk.]]>
      </description-html>
      <parameter name="id" type-id-ref="vim.vslm.ID"
      vmodl-name="id"
      version-id-ref="vim.version.version11"
      privilege="id"
      >
      <description-html>
         <![CDATA[The ID of the virtual disk to be extended.]]>
      </description-html>
      </parameter>
      <parameter name="datastore" type-id-ref="vim.Datastore"
      vmodl-name="datastore"
      version-id-ref="vim.version.version11"
      privilege="datastore"
      >
      <description-html>
         <![CDATA[The datastore where the virtual disk is located.]]>
      </description-html>
      </parameter>
      <parameter name="newCapacityInMB" type-id-ref="LONG"
      vmodl-name="newCapacityInMB"
      version-id-ref="vim.version.version11"
      privilege="newCapacityInMB"
      >
      <description-html>
         <![CDATA[The new capacity of the virtual disk in MB.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.FileFault">
      <fault-description-html>
         <![CDATA[If an error occurs while extending the virtual disk.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[If the specified virtual storage object cannot be
                   found.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidDatastore">
      <fault-description-html>
         <![CDATA[If the operation cannot be performed on the
                           datastore.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[If the operation cannot be performed on the disk.
                       The disk may be consumed and cannot be extended.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.TaskInProgress">
      <fault-description-html>
         <![CDATA[If the virtual storage object is busy.]]>
      </fault-description-html>
      </fault>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to
        monitor the operation.]]>
      </task-description-html>
   </method>
   <method name="InflateDisk"
      vmodl-name="inflateDisk"
      privilege="System.View"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Inflate a sparse or thin-provisioned virtual disk up to the full size.
  Additional space allocated to the disk as a result of this operation
  will be filled with zeros.
  <p>
  Currently inflateDisk API only supports the following combinations:
  Valid provisioning type: THIN;
  Valid Datastore: VMFS, NFS.
  Inflating a disk is not applicable for VVol/VSAN datastore.
  <p>

  <p>
  Requires Datastore.FileManagement privilege on the datastore where the
  virtual storage object is located.
  <p>]]>
      </description-html>
      <parameter name="id" type-id-ref="vim.vslm.ID"
      vmodl-name="id"
      version-id-ref="vim.version.version11"
      privilege="id"
      >
      <description-html>
         <![CDATA[The ID of the virtual disk to be inflated.]]>
      </description-html>
      </parameter>
      <parameter name="datastore" type-id-ref="vim.Datastore"
      vmodl-name="datastore"
      version-id-ref="vim.version.version11"
      privilege="datastore"
      >
      <description-html>
         <![CDATA[The datastore where the virtual disk is located.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.FileFault">
      <fault-description-html>
         <![CDATA[If an error occurs while inflating the virtual disk.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[If the specified virtual storage object cannot be
                   found.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidDatastore">
      <fault-description-html>
         <![CDATA[If the operation cannot be performed on the
                           datastore.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[If the operation cannot be performed on the disk.
                       The disk may be consumed and cannot be extended.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.TaskInProgress">
      <fault-description-html>
         <![CDATA[If the virtual storage object is busy.]]>
      </fault-description-html>
      </fault>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to
        monitor the operation.]]>
      </task-description-html>
   </method>
   <method name="RenameVStorageObject"
      vmodl-name="renameVStorageObject"
      privilege="System.View"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Rename a virtual storage object.]]>
      </description-html>
      <parameter name="id" type-id-ref="vim.vslm.ID"
      vmodl-name="id"
      version-id-ref="vim.version.version11"
      privilege="id"
      >
      <description-html>
         <![CDATA[The ID of the virtual storage object to be renamed.]]>
      </description-html>
      </parameter>
      <parameter name="datastore" type-id-ref="vim.Datastore"
      vmodl-name="datastore"
      version-id-ref="vim.version.version11"
      privilege="datastore"
      >
      <description-html>
         <![CDATA[The datastore where the virtual storage object is
                   located.]]>
      </description-html>
      </parameter>
      <parameter name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      version-id-ref="vim.version.version11"
      privilege="name"
      >
      <description-html>
         <![CDATA[The new name for the virtual storage object.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.FileFault">
      <fault-description-html>
         <![CDATA[If an error occurs while renaming the virtual storage
                    object.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidDatastore">
      <fault-description-html>
         <![CDATA[If the operation cannot be performed on the
                           datastore.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[If the specified virtual storage object cannot be
                   found.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="UpdateVStorageObjectPolicy"
      vmodl-name="updateVStorageObjectPolicy"
      version-id-ref="vim.version.version12"
      privilege="System.View"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Update the storage policy on a virtual storage object.
  <p>
  Requires Datastore.FileManagement privilege on the datastore where the
  virtual storage object is located.
  <p>]]>
      </description-html>
      <parameter name="id" type-id-ref="vim.vslm.ID"
      vmodl-name="id"
      version-id-ref="vim.version.version12"
      privilege="id"
      >
      <description-html>
         <![CDATA[The ID of the virtual storage object.]]>
      </description-html>
      </parameter>
      <parameter name="datastore" type-id-ref="vim.Datastore"
      vmodl-name="datastore"
      version-id-ref="vim.version.version12"
      privilege="datastore"
      >
      <description-html>
         <![CDATA[The datastore where the virtual storage object is
                   located.]]>
      </description-html>
      </parameter>
      <parameter name="profile" type-id-ref="vim.vm.ProfileSpec"
      vmodl-name="profile"
      version-id-ref="vim.version.version12"
      is-array="true"
      is-optional="true"
      privilege="profile"
      >
      <description-html>
         <![CDATA[New profile requirement on the virtual storage object.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.FileFault">
      <fault-description-html>
         <![CDATA[If an error occurs while updating the virtual storage
                    object policy.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidDatastore">
      <fault-description-html>
         <![CDATA[If the operation cannot be performed on the
                           datastore.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[If the specified virtual storage object cannot be
                   found.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.TaskInProgress">
      <fault-description-html>
         <![CDATA[If the virtual storage object is busy.]]>
      </fault-description-html>
      </fault>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to
        monitor the operation.]]>
      </task-description-html>
   </method>
   <method name="UpdateVStorageObjectCrypto"
      vmodl-name="updateVStorageObjectCrypto"
      version-id-ref="vim.version.v7_0"
      privilege="System.View"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Update the crypto on a virtual storage object.
  This is also intended for disk encryption, decryption and re-encryption.
  To encrypt the disk, profile must contain an encryption component.
  disksCrypto can be left as blank, which means caller doesn't care
  which key is used to encrypt the disk. If it's not blank, it has to
  be of type CryptoSpecEncrypt.
  To decrypt the disk, profile must not contain an encryption component.
  disksCrypto can be left as blank, if not, it has be of type
  CryptoSpecDecrypt.
  To re-encrypt the disk, profile must contain an encryption component.
  disksCrypto cannot be left as blank. It has to be of type either
  CryptoSpecShallowRecrypt or CryptoSpecDeepRecrypt.

  <p>
  Requires Datastore.FileManagement privilege on the datastore where the
  virtual storage object is located.
  <p>]]>
      </description-html>
      <parameter name="id" type-id-ref="vim.vslm.ID"
      vmodl-name="id"
      version-id-ref="vim.version.v7_0"
      privilege="id"
      >
      <description-html>
         <![CDATA[The ID of the virtual storage object.]]>
      </description-html>
      </parameter>
      <parameter name="datastore" type-id-ref="vim.Datastore"
      vmodl-name="datastore"
      version-id-ref="vim.version.v7_0"
      privilege="datastore"
      >
      <description-html>
         <![CDATA[The datastore where the virtual storage object is
                   located.]]>
      </description-html>
      </parameter>
      <parameter name="profile" type-id-ref="vim.vm.ProfileSpec"
      vmodl-name="profile"
      version-id-ref="vim.version.v7_0"
      is-array="true"
      is-optional="true"
      privilege="profile"
      >
      <description-html>
         <![CDATA[New profile requirement on the virtual storage object.]]>
      </description-html>
      </parameter>
      <parameter name="disksCrypto" type-id-ref="vim.vslm.DiskCryptoSpec"
      vmodl-name="disksCrypto"
      version-id-ref="vim.version.v7_0"
      is-optional="true"
      privilege="disksCrypto"
      >
      <description-html>
         <![CDATA[The crypto information of each disk on the chain.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.FileFault">
      <fault-description-html>
         <![CDATA[If an error occurs while updating the virtual storage
                    object policy.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidDatastore">
      <fault-description-html>
         <![CDATA[If the operation cannot be performed on the
                           datastore.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[If the specified virtual storage object cannot be
                   found.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.TaskInProgress">
      <fault-description-html>
         <![CDATA[If the virtual storage object is busy.]]>
      </fault-description-html>
      </fault>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to
        monitor the operation.]]>
      </task-description-html>
   </method>
   <method name="UpdateVStorageInfrastructureObjectPolicy"
      vmodl-name="updateVStorageInfrastructureObjectPolicy"
      version-id-ref="vim.version.version12"
      privilege="System.View"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Assigns specified SBPM policy to the given virtual storage
 infrastructure object.
 Only support VSAN datastore.
  <p>
  Requires Datastore.FileManagement privilege on the datastore where the
  virtual storage infrastructure object is located.
  <p>]]>
      </description-html>
      <parameter name="spec" type-id-ref="vim.vslm.InfrastructureObjectPolicySpec"
      vmodl-name="spec"
      version-id-ref="vim.version.version12"
      privilege="spec"
      >
      <description-html>
         <![CDATA[specification to assign a SPBM policy to virtual storage
             infrastructure object.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.InvalidDatastore">
      <fault-description-html>
         <![CDATA[If the operation cannot be performed on the
                          datastore.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[If specified virtual storage object cannot be found.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[If there is issue with profile spec.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.TaskInProgress">
      </fault>
   </method>
   <method name="RetrieveVStorageInfrastructureObjectPolicy"
      vmodl-name="retrieveVStorageInfrastructureObjectPolicy"
      version-id-ref="vim.version.version12"
      is-array="true"
      is-optional="true"
      privilege="System.View"
      type-id-ref="vim.vslm.InfrastructureObjectPolicy"
      >
      <description-html>
         <![CDATA[Retrieve virtual storage infrastructure object SBPM policy on given
 datastore.
 Only support VSAN datastore.
  <p>
  Requires Datastore.FileManagement privilege on the datastore where the
  virtual storage infrastructure object is located.
  <p>]]>
      </description-html>
      <parameter name="datastore" type-id-ref="vim.Datastore"
      vmodl-name="datastore"
      version-id-ref="vim.version.version12"
      privilege="datastore"
      >
      <description-html>
         <![CDATA[Datastore on which policy needs to be retrieved.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.InvalidDatastore">
      <fault-description-html>
         <![CDATA[If the operation cannot be performed on the
                          datastore.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[If specified virtual storage object cannot be found.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[If the operation cannot be performed on the disk.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[The policy object of virtual storage object.]]>
      </return-value-description-html>
   </method>
   <method name="DeleteVStorageObject"
      vmodl-name="deleteVStorageObject"
      privilege="System.View"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Delete a virtual storage object and its associated backings.
  <p>
  Requires Datastore.FileManagement privilege on the datastore where the
  virtual storage object is located.
  <p>]]>
      </description-html>
      <parameter name="id" type-id-ref="vim.vslm.ID"
      vmodl-name="id"
      version-id-ref="vim.version.version11"
      privilege="id"
      >
      <description-html>
         <![CDATA[The ID of the virtual storage object to be deleted.]]>
      </description-html>
      </parameter>
      <parameter name="datastore" type-id-ref="vim.Datastore"
      vmodl-name="datastore"
      version-id-ref="vim.version.version11"
      privilege="datastore"
      >
      <description-html>
         <![CDATA[The datastore where the virtual storage object
                   is located.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.FileFault">
      <fault-description-html>
         <![CDATA[If an error occurs when deleting the virtual storage
                    object.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidDatastore">
      <fault-description-html>
         <![CDATA[If the operation cannot be performed on the
                           datastore.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[If the operation cannot be performed on the disk.
                       The disk may be consumed and cannot be deleted.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[If the specified virtual storage object cannot be
                   found.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.TaskInProgress">
      <fault-description-html>
         <![CDATA[If the virtual storage object is busy.]]>
      </fault-description-html>
      </fault>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to
        monitor the operation.]]>
      </task-description-html>
   </method>
   <method name="RetrieveVStorageObject"
      vmodl-name="retrieveVStorageObject"
      privilege="System.View"
      type-id-ref="vim.vslm.VStorageObject"
      >
      <description-html>
         <![CDATA[Retrieve a virtual storage object.
  <p>
  Requires Datastore.FileManagement privilege on the datastore where the
  virtual storage object is located.
  <p>]]>
      </description-html>
      <parameter name="id" type-id-ref="vim.vslm.ID"
      vmodl-name="id"
      version-id-ref="vim.version.version11"
      privilege="id"
      >
      <description-html>
         <![CDATA[The ID of the virtual storage object to be retrieved.]]>
      </description-html>
      </parameter>
      <parameter name="datastore" type-id-ref="vim.Datastore"
      vmodl-name="datastore"
      version-id-ref="vim.version.version11"
      privilege="datastore"
      >
      <description-html>
         <![CDATA[The datastore where the virtual storage object is
                   located.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.FileFault">
      <fault-description-html>
         <![CDATA[If an error occurs when retrieving the virtual object.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidDatastore">
      <fault-description-html>
         <![CDATA[If the operation cannot be performed on the
                           datastore.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[If specified virtual storage object cannot be found.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[The required virtual storage object.]]>
      </return-value-description-html>
   </method>
   <method name="RetrieveVStorageObjectState"
      vmodl-name="retrieveVStorageObjectState"
      privilege="System.View"
      type-id-ref="vim.vslm.StateInfo"
      >
      <description-html>
         <![CDATA[Retrieve a virtual storage object state.
  <p>
  Requires Datastore.FileManagement privilege on the datastore where the
  virtual storage object is located.
  <p>]]>
      </description-html>
      <parameter name="id" type-id-ref="vim.vslm.ID"
      vmodl-name="id"
      version-id-ref="vim.version.version11"
      privilege="id"
      >
      <description-html>
         <![CDATA[The ID of the virtual storage object the state to be retrieved.]]>
      </description-html>
      </parameter>
      <parameter name="datastore" type-id-ref="vim.Datastore"
      vmodl-name="datastore"
      version-id-ref="vim.version.version11"
      privilege="datastore"
      >
      <description-html>
         <![CDATA[The datastore where the virtual storage object is
                   located.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.FileFault">
      <fault-description-html>
         <![CDATA[If an error occurs when retrieving the virtual object
          state.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidDatastore">
      <fault-description-html>
         <![CDATA[If the operation cannot be performed on the
          datastore.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[If specified virtual storage object cannot be found.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[The required virtual storage object state.]]>
      </return-value-description-html>
   </method>
   <method name="RetrieveVStorageObjectAssociations"
      vmodl-name="retrieveVStorageObjectAssociations"
      version-id-ref="vim.version.version12"
      is-array="true"
      is-optional="true"
      privilege="System.View"
      type-id-ref="vim.vslm.vcenter.VStorageObjectAssociations"
      >
      <description-html>
         <![CDATA[Retrieve vm associations for each virtual storage object in the query.]]>
      </description-html>
      <parameter name="ids" type-id-ref="vim.vslm.vcenter.RetrieveVStorageObjSpec"
      vmodl-name="ids"
      version-id-ref="vim.version.version12"
      is-array="true"
      is-optional="true"
      privilege="ids"
      >
      <description-html>
         <![CDATA[The IDs of the virtual storage objects of the query.]]>
      </description-html>
      </parameter>
      <return-value-description-html>
         <![CDATA[The list of VStorageObjectVmAssociations which provides virtual
           storage object id to vm associations mapping.]]>
      </return-value-description-html>
   </method>
   <method name="ListVStorageObject"
      vmodl-name="listVStorageObject"
      is-array="true"
      is-optional="true"
      privilege="System.View"
      type-id-ref="vim.vslm.ID"
      >
      <description-html>
         <![CDATA[List all virtual storage objects located on a datastore.
  <p>
  Requires Datastore.FileManagement privilege on the datastore where the
  virtual storage object is located.
  <p>]]>
      </description-html>
      <parameter name="datastore" type-id-ref="vim.Datastore"
      vmodl-name="datastore"
      version-id-ref="vim.version.version11"
      privilege="datastore"
      >
      <description-html>
         <![CDATA[The datastore to query for the virtual storage objects.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.InvalidDatastore">
      <fault-description-html>
         <![CDATA[If the operation cannot be performed on the
                           datastore, such as datastore cannot be found or
                           inaccessible.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[The list of IDs of the virtual storage objects located on the
           datastore.]]>
      </return-value-description-html>
   </method>
   <method name="CloneVStorageObject"
      vmodl-name="cloneVStorageObject"
      privilege="System.View"
      type-id-ref="vim.vslm.VStorageObject"
      is-task="true"
      >
      <description-html>
         <![CDATA[Clone a virtual storage object.
  <p>
  Requires Datastore.FileManagement privilege on both source and
  destination datastore.
  <p>]]>
      </description-html>
      <parameter name="id" type-id-ref="vim.vslm.ID"
      vmodl-name="id"
      version-id-ref="vim.version.version11"
      privilege="id"
      >
      <description-html>
         <![CDATA[The ID of the virtual storage object.]]>
      </description-html>
      </parameter>
      <parameter name="datastore" type-id-ref="vim.Datastore"
      vmodl-name="datastore"
      version-id-ref="vim.version.version11"
      privilege="datastore"
      >
      <description-html>
         <![CDATA[The datastore where the source virtual storage object
                   is located.]]>
      </description-html>
      </parameter>
      <parameter name="spec" type-id-ref="vim.vslm.CloneSpec"
      vmodl-name="spec"
      version-id-ref="vim.version.version11"
      privilege="spec"
      >
      <description-html>
         <![CDATA[The specification for cloning the virtual storage
              object.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.FileFault">
      <fault-description-html>
         <![CDATA[If an error occurs while cloning the virtual
                    storage object.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidDatastore">
      <fault-description-html>
         <![CDATA[If the operation cannot be performed on the
                           datastore.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[If specified virtual storage object cannot be
                   found.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[The cloned virtual storage object.]]>
      </return-value-description-html>
   </method>
   <method name="RelocateVStorageObject"
      vmodl-name="relocateVStorageObject"
      privilege="System.View"
      type-id-ref="vim.vslm.VStorageObject"
      is-task="true"
      >
      <description-html>
         <![CDATA[Relocate a virtual storage object.
  <p>
  Requires Datastore.FileManagement privilege on both source and
  destination datastore.
  <p>]]>
      </description-html>
      <parameter name="id" type-id-ref="vim.vslm.ID"
      vmodl-name="id"
      version-id-ref="vim.version.version11"
      privilege="id"
      >
      <description-html>
         <![CDATA[The ID of the virtual storage object.]]>
      </description-html>
      </parameter>
      <parameter name="datastore" type-id-ref="vim.Datastore"
      vmodl-name="datastore"
      version-id-ref="vim.version.version11"
      privilege="datastore"
      >
      <description-html>
         <![CDATA[The datastore where the source virtual storage object
                   is located.]]>
      </description-html>
      </parameter>
      <parameter name="spec" type-id-ref="vim.vslm.RelocateSpec"
      vmodl-name="spec"
      version-id-ref="vim.version.version11"
      privilege="spec"
      >
      <description-html>
         <![CDATA[The specification for relocation of the virtual
              storage object.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.FileFault">
      <fault-description-html>
         <![CDATA[If an error occurs while relocating the virtual
                    storage object.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidDatastore">
      <fault-description-html>
         <![CDATA[If the operation cannot be performed on the
                           datastore.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[If the operation cannot be performed on the disk.
                       The disk may be consumed and cannot be relocated.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[If specified virtual storage object cannot
                   be found.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[The relocated virtual storage object.]]>
      </return-value-description-html>
   </method>
   <method name="SetVStorageObjectControlFlags"
      vmodl-name="setVStorageObjectControlFlags"
      version-id-ref="vim.version.version12"
      privilege="System.View"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Set control flags on VStorageObject.
  <p>
  Requires Datastore.FileManagement privilege on both source and
  destination datastore.
  <p>]]>
      </description-html>
      <parameter name="id" type-id-ref="vim.vslm.ID"
      vmodl-name="id"
      version-id-ref="vim.version.version12"
      privilege="id"
      >
      <description-html>
         <![CDATA[The ID of the virtual storage object.]]>
      </description-html>
      </parameter>
      <parameter name="datastore" type-id-ref="vim.Datastore"
      vmodl-name="datastore"
      version-id-ref="vim.version.version12"
      privilege="datastore"
      >
      <description-html>
         <![CDATA[The datastore where the source virtual storage
                   object is located.]]>
      </description-html>
      </parameter>
      <parameter name="controlFlags" type-id-ref="java.lang.String"
      vmodl-name="controlFlags"
      version-id-ref="vim.version.version12"
      is-array="true"
      is-optional="true"
      privilege="controlFlags"
      >
      <description-html>
         <![CDATA[control flags enum array to be set on the
                      VStorageObject. All control flags not included
                      in the array remain intact.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.InvalidDatastore">
      <fault-description-html>
         <![CDATA[If the operation cannot be performed on
                           the datastore.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[If the operation cannot be performed on the disk.
                       The disk may be consumed.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[If specified virtual storage object cannot
                   be found.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="ClearVStorageObjectControlFlags"
      vmodl-name="clearVStorageObjectControlFlags"
      version-id-ref="vim.version.version12"
      privilege="System.View"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Clear control flags on VStorageObject.
  <p>
  Requires Datastore.FileManagement privilege on both source and
  destination datastore.
  <p>]]>
      </description-html>
      <parameter name="id" type-id-ref="vim.vslm.ID"
      vmodl-name="id"
      version-id-ref="vim.version.version12"
      privilege="id"
      >
      <description-html>
         <![CDATA[The ID of the virtual storage object.]]>
      </description-html>
      </parameter>
      <parameter name="datastore" type-id-ref="vim.Datastore"
      vmodl-name="datastore"
      version-id-ref="vim.version.version12"
      privilege="datastore"
      >
      <description-html>
         <![CDATA[The datastore where the source virtual storage
                   object is located.]]>
      </description-html>
      </parameter>
      <parameter name="controlFlags" type-id-ref="java.lang.String"
      vmodl-name="controlFlags"
      version-id-ref="vim.version.version12"
      is-array="true"
      is-optional="true"
      privilege="controlFlags"
      >
      <description-html>
         <![CDATA[control flags enum array to be cleared on the
                      VStorageObject. All control flags not included
                      in the array remain intact.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.InvalidDatastore">
      <fault-description-html>
         <![CDATA[If the operation cannot be performed on
                           the datastore.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[If the operation cannot be performed on the disk.
                       The disk may be consumed.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[If specified virtual storage object cannot
                   be found.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="AttachTagToVStorageObject"
      vmodl-name="attachTagToVStorageObject"
      privilege="System.Read"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Attach a tag to a virtual storage object.
  <p>
  Requires privilege InventoryService.Tagging.AttachTag on root folder
  <p>]]>
      </description-html>
      <parameter name="id" type-id-ref="vim.vslm.ID"
      vmodl-name="id"
      version-id-ref="vim.version.version11"
      privilege="id"
      >
      <description-html>
         <![CDATA[The identifier(ID) of the virtual storage object.]]>
      </description-html>
      </parameter>
      <parameter name="category" type-id-ref="java.lang.String"
      vmodl-name="category"
      version-id-ref="vim.version.version11"
      privilege="category"
      >
      <description-html>
         <![CDATA[The category to which the tag belongs.]]>
      </description-html>
      </parameter>
      <parameter name="tag" type-id-ref="java.lang.String"
      vmodl-name="tag"
      version-id-ref="vim.version.version11"
      privilege="tag"
      >
      <description-html>
         <![CDATA[The tag which has to be associated with the virtual storage
             object.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[If the specified category or tag cannot be found.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="DetachTagFromVStorageObject"
      vmodl-name="detachTagFromVStorageObject"
      privilege="System.Read"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Detach a tag from a virtual storage object.
  <p>
  Requires privilege InventoryService.Tagging.AttachTag on root folder
  <p>]]>
      </description-html>
      <parameter name="id" type-id-ref="vim.vslm.ID"
      vmodl-name="id"
      version-id-ref="vim.version.version11"
      privilege="id"
      >
      <description-html>
         <![CDATA[The identifier(ID) of the virtual storage object.]]>
      </description-html>
      </parameter>
      <parameter name="category" type-id-ref="java.lang.String"
      vmodl-name="category"
      version-id-ref="vim.version.version11"
      privilege="category"
      >
      <description-html>
         <![CDATA[The category to which the tag belongs.]]>
      </description-html>
      </parameter>
      <parameter name="tag" type-id-ref="java.lang.String"
      vmodl-name="tag"
      version-id-ref="vim.version.version11"
      privilege="tag"
      >
      <description-html>
         <![CDATA[The tag which has to be disassociated with the virtual storage
              object.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[If the specified category or tag cannot be found.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="ListVStorageObjectsAttachedToTag"
      vmodl-name="listVStorageObjectsAttachedToTag"
      is-array="true"
      is-optional="true"
      privilege="System.Read"
      type-id-ref="vim.vslm.ID"
      >
      <description-html>
         <![CDATA[Lists all virtual storage objects attached to the tag.]]>
      </description-html>
      <parameter name="category" type-id-ref="java.lang.String"
      vmodl-name="category"
      version-id-ref="vim.version.version11"
      privilege="category"
      >
      <description-html>
         <![CDATA[The category to which the tag belongs.]]>
      </description-html>
      </parameter>
      <parameter name="tag" type-id-ref="java.lang.String"
      vmodl-name="tag"
      version-id-ref="vim.version.version11"
      privilege="tag"
      >
      <description-html>
         <![CDATA[The tag to be queried.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[If the specified category or tag cannot be found.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[The list of IDs of the virtual storage objects.]]>
      </return-value-description-html>
   </method>
   <method name="ListTagsAttachedToVStorageObject"
      vmodl-name="listTagsAttachedToVStorageObject"
      is-array="true"
      is-optional="true"
      privilege="System.Read"
      type-id-ref="vim.vslm.TagEntry"
      >
      <description-html>
         <![CDATA[Lists all tags attached to virtual storage object.]]>
      </description-html>
      <parameter name="id" type-id-ref="vim.vslm.ID"
      vmodl-name="id"
      version-id-ref="vim.version.version11"
      privilege="id"
      >
      <description-html>
         <![CDATA[The ID of the virtual storage object.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[If the specified category or tag cannot be found.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[The list of Tag-association tuples associated with the
          virtual storage object.]]>
      </return-value-description-html>
   </method>
   <method name="ReconcileDatastoreInventory"
      vmodl-name="reconcileDatastoreInventory"
      privilege="System.View"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Reconcile the datastore inventory info of virtual storage objects.
  <p>
  Requires Datastore.FileManagement privilege.
  <p>]]>
      </description-html>
      <parameter name="datastore" type-id-ref="vim.Datastore"
      vmodl-name="datastore"
      version-id-ref="vim.version.version11"
      privilege="datastore"
      >
      <description-html>
         <![CDATA[The datastore that needs to be reconciled.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.InvalidDatastore">
      <fault-description-html>
         <![CDATA[If the operation cannot be performed on
                           the datastore.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.NotFound">
      </fault>
   </method>
   <method name="ScheduleReconcileDatastoreInventory"
      vmodl-name="scheduleReconcileDatastoreInventory"
      privilege="System.View"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Schedules reconcile of the inventory info of virtual storage objects on
  one of the hosts that is connected with the datastore. This method just
  schedules the reconcile operation for the nearby future and returns. Note
  that since the reconcile operation will be executed after this method
  already returns the success of this method should not be considered as
  success of the actual reconcile operation.
  <p>
  Requires Datastore.FileManagement privilege.
  <p>]]>
      </description-html>
      <parameter name="datastore" type-id-ref="vim.Datastore"
      vmodl-name="datastore"
      version-id-ref="vim.version.version11"
      privilege="datastore"
      >
      <description-html>
         <![CDATA[The datastore that needs to be reconciled.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.InvalidDatastore">
      <fault-description-html>
         <![CDATA[If the operation cannot be performed on
                           the datastore.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.NotFound">
      </fault>
   </method>
   <method name="VStorageObjectCreateSnapshot"
      vmodl-name="createSnapshot"
      version-id-ref="vim.version.version12"
      privilege="System.View"
      type-id-ref="vim.vslm.ID"
      is-task="true"
      >
      <description-html>
         <![CDATA[Creates a snapshot of a given VStorageObject.
 <p>
 Requires Datastore.FileManagement privilege.
 <p>]]>
      </description-html>
      <parameter name="id" type-id-ref="vim.vslm.ID"
      vmodl-name="id"
      version-id-ref="vim.version.version12"
      privilege="id"
      >
      <description-html>
         <![CDATA[The ID of the virtual storage object.]]>
      </description-html>
      </parameter>
      <parameter name="datastore" type-id-ref="vim.Datastore"
      vmodl-name="datastore"
      version-id-ref="vim.version.version12"
      privilege="datastore"
      >
      <description-html>
         <![CDATA[The datastore where the source virtual storage object
                  is located.]]>
      </description-html>
      </parameter>
      <parameter name="description" type-id-ref="java.lang.String"
      vmodl-name="description"
      version-id-ref="vim.version.version12"
      privilege="description"
      >
      <description-html>
         <![CDATA[A short description to be associated with the snapshot.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.InvalidDatastore">
      <fault-description-html>
         <![CDATA[If the operation cannot be performed on the
                          datastore.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[If specified virtual storage object cannot be found.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.FileFault">
      <fault-description-html>
         <![CDATA[If an error occurs while snapshotting the virtual
                   storage object.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[If the operation cannot be performed on the disk.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="DeleteSnapshot"
      vmodl-name="deleteSnapshot"
      version-id-ref="vim.version.version12"
      privilege="System.View"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Deletes a given snapshot of a VStorageObject.
 <p>
 Requires Datastore.FileManagement privilege.
 <p>]]>
      </description-html>
      <parameter name="id" type-id-ref="vim.vslm.ID"
      vmodl-name="id"
      version-id-ref="vim.version.version12"
      privilege="id"
      >
      <description-html>
         <![CDATA[The ID of the virtual storage object.]]>
      </description-html>
      </parameter>
      <parameter name="datastore" type-id-ref="vim.Datastore"
      vmodl-name="datastore"
      version-id-ref="vim.version.version12"
      privilege="datastore"
      >
      <description-html>
         <![CDATA[The datastore where the source virtual storage object
                  is located.]]>
      </description-html>
      </parameter>
      <parameter name="snapshotId" type-id-ref="vim.vslm.ID"
      vmodl-name="snapshotId"
      version-id-ref="vim.version.version12"
      privilege="snapshotId"
      >
      <description-html>
         <![CDATA[The ID of the snapshot of a virtual storage object.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.InvalidDatastore">
      <fault-description-html>
         <![CDATA[If the operation cannot be performed on the
                          datastore.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[If specified virtual storage object cannot be found.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.FileFault">
      <fault-description-html>
         <![CDATA[If an error occurs while snapshotting the virtual
                   storage object.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[If the operation cannot be performed on the disk.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="RetrieveSnapshotInfo"
      vmodl-name="retrieveSnapshotInfo"
      version-id-ref="vim.version.version12"
      privilege="System.View"
      type-id-ref="vim.vslm.VStorageObjectSnapshotInfo"
      >
      <description-html>
         <![CDATA[Retrieves snapshot information of a given VStorageObject.
 <p>
 Requires Datastore.FileManagement privilege.
 <p>]]>
      </description-html>
      <parameter name="id" type-id-ref="vim.vslm.ID"
      vmodl-name="id"
      version-id-ref="vim.version.version12"
      privilege="id"
      >
      <description-html>
         <![CDATA[The ID of the virtual storage object.]]>
      </description-html>
      </parameter>
      <parameter name="datastore" type-id-ref="vim.Datastore"
      vmodl-name="datastore"
      version-id-ref="vim.version.version12"
      privilege="datastore"
      >
      <description-html>
         <![CDATA[The datastore where the source virtual storage object
                  is located.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.InvalidDatastore">
      <fault-description-html>
         <![CDATA[If the operation cannot be performed on the
                          datastore.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[If specified virtual storage object cannot be found.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.FileFault">
      <fault-description-html>
         <![CDATA[If an error occurs while snapshotting the virtual
                   storage object.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[If the operation cannot be performed on the disk.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="CreateDiskFromSnapshot"
      vmodl-name="createDiskFromSnapshot"
      version-id-ref="vim.version.version12"
      privilege="System.View"
      type-id-ref="vim.vslm.VStorageObject"
      is-task="true"
      >
      <description-html>
         <![CDATA[Creates a new Disk from given snapshot of a VStorageObject.
 <p>
 Requires Datastore.FileManagement privilege.
 <p>]]>
      </description-html>
      <parameter name="id" type-id-ref="vim.vslm.ID"
      vmodl-name="id"
      version-id-ref="vim.version.version12"
      privilege="id"
      >
      <description-html>
         <![CDATA[The ID of the virtual storage object.]]>
      </description-html>
      </parameter>
      <parameter name="datastore" type-id-ref="vim.Datastore"
      vmodl-name="datastore"
      version-id-ref="vim.version.version12"
      privilege="datastore"
      >
      <description-html>
         <![CDATA[The datastore where the source virtual storage object
                  is located.]]>
      </description-html>
      </parameter>
      <parameter name="snapshotId" type-id-ref="vim.vslm.ID"
      vmodl-name="snapshotId"
      version-id-ref="vim.version.version12"
      privilege="snapshotId"
      >
      <description-html>
         <![CDATA[The ID of the snapshot of the virtual storage object.]]>
      </description-html>
      </parameter>
      <parameter name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      version-id-ref="vim.version.version12"
      privilege="name"
      >
      <description-html>
         <![CDATA[A user friendly name to be associated with the new disk.]]>
      </description-html>
      </parameter>
      <parameter name="profile" type-id-ref="vim.vm.ProfileSpec"
      vmodl-name="profile"
      version-id-ref="vim.version.version12"
      is-array="true"
      is-optional="true"
      privilege="profile"
      >
      <description-html>
         <![CDATA[SPBM Profile requirement on the new virtual storage object.
                If not specified datastore default policy would be
                assigned.]]>
      </description-html>
      </parameter>
      <parameter name="crypto" type-id-ref="vim.encryption.CryptoSpec"
      vmodl-name="crypto"
      version-id-ref="vim.version.version12"
      is-optional="true"
      privilege="crypto"
      >
      <description-html>
         <![CDATA[Crypto information of the new disk.
               If unset and if profile contains an encryption iofilter and
               if snapshto is unencrypted, then cyrpto will be of
               type CryptoSpecEncrypt, and filled with keyId that is
               automatically generated and keyProviderId that is the
               default kms cluster.
               If unset and if profile is a default policy and if snapshot
               is unenrypted, then crypto is treated as CryptoSpecNoOp.
               If unset and if profile contains an encryption iofilter and
               if snapshot is encrypted, then cyrpto is treated as
               CryptoSpecNoOp.
               If unset and if profile is a default policy and if
               snapshot is encrypted, then cyrpto is treated as
               CryptoSpecDecrypt.
               To recrypt the disk during creating disk, crypto has to be
               present.]]>
      </description-html>
      </parameter>
      <parameter name="path" type-id-ref="java.lang.String"
      vmodl-name="path"
      version-id-ref="vim.version.version12"
      is-optional="true"
      privilege="path"
      >
      <description-html>
         <![CDATA[Relative location in the specified datastore where disk needs
             to be created. If not specified disk gets created at the
             defualt VStorageObject location on the specified datastore.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.InvalidDatastore">
      <fault-description-html>
         <![CDATA[If the operation cannot be performed on the
                          datastore.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[If specified virtual storage object cannot be found.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.FileFault">
      <fault-description-html>
         <![CDATA[If an error occurs while snapshotting the virtual
                   storage object.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[If the operation cannot be performed on the disk.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="RevertVStorageObject"
      vmodl-name="RevertVStorageObject"
      version-id-ref="vim.version.version12"
      privilege="System.View"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Reverts to a given snapshot of a VStorageObject.
 This operation is supported on detached VirtualDisks
 During revert all the snapshots which were taken after the specified
 snapshot would get deleted.

 <p>
 E.g. Consider Disk with 4 snapshots
 <p>
      BaseDisk -> Snap-2 -> Snap-3 -> Snap-4 -> Running-Point
 <p>
  If user chooses to revert to snap-2 then snap-4 and snap-3 would also
  be deleted. After revert operation disk would have below configuration:
 <p>
      BaseDisk -> Snap-2 -> Running-Point

 <p>
 Requires Datastore.FileManagement privilege.
 <p>]]>
      </description-html>
      <parameter name="id" type-id-ref="vim.vslm.ID"
      vmodl-name="id"
      version-id-ref="vim.version.version12"
      privilege="id"
      >
      <description-html>
         <![CDATA[The ID of the virtual storage object.]]>
      </description-html>
      </parameter>
      <parameter name="datastore" type-id-ref="vim.Datastore"
      vmodl-name="datastore"
      version-id-ref="vim.version.version12"
      privilege="datastore"
      >
      <description-html>
         <![CDATA[The datastore where the source virtual storage object
                  is located.]]>
      </description-html>
      </parameter>
      <parameter name="snapshotId" type-id-ref="vim.vslm.ID"
      vmodl-name="snapshotId"
      version-id-ref="vim.version.version12"
      privilege="snapshotId"
      >
      <description-html>
         <![CDATA[The ID of the snapshot of a virtual storage object.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.InvalidDatastore">
      <fault-description-html>
         <![CDATA[If the operation cannot be performed on the
                          datastore.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[If specified virtual storage object cannot be found.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.FileFault">
      <fault-description-html>
         <![CDATA[If an error occurs while snapshotting the virtual
                   storage object.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[If the operation cannot be performed on the disk.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="RetrieveSnapshotDetails"
      vmodl-name="retrieveSnapshotDetails"
      version-id-ref="vim.version.version12"
      internal-before-version-id-ref="vim.version.v7_0"
      privilege="System.View"
      type-id-ref="vim.vslm.VStorageObjectSnapshotDetails"
      >
      <description-html>
         <![CDATA[Retrieves snapshot disk details of a given snapshot.]]>
      </description-html>
      <parameter name="id" type-id-ref="vim.vslm.ID"
      vmodl-name="id"
      version-id-ref="vim.version.version12"
      privilege="id"
      >
      <description-html>
         <![CDATA[The ID of the virtual storage object.]]>
      </description-html>
      </parameter>
      <parameter name="datastore" type-id-ref="vim.Datastore"
      vmodl-name="datastore"
      version-id-ref="vim.version.version12"
      privilege="datastore"
      >
      <description-html>
         <![CDATA[The datastore where the source virtual storage object
                  is located.]]>
      </description-html>
      </parameter>
      <parameter name="snapshotId" type-id-ref="vim.vslm.ID"
      vmodl-name="snapshotId"
      version-id-ref="vim.version.version12"
      privilege="snapshotId"
      >
      <description-html>
         <![CDATA[The ID of the snapshot of a virtual storage object.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.InvalidDatastore">
      <fault-description-html>
         <![CDATA[If the operation cannot be performed on the
                          datastore.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[If specified virtual storage object cannot be found.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.FileFault">
      <fault-description-html>
         <![CDATA[If an error occurs while snapshotting the virtual
                   storage object.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[If the operation cannot be performed on the disk.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="VstorageObjectVCenterQueryChangedDiskAreas"
      vmodl-name="queryChangedDiskAreas"
      version-id-ref="vim.version.version12"
      internal-before-version-id-ref="vim.version.v7_0"
      privilege="System.View"
      type-id-ref="vim.VirtualMachine.DiskChangeInfo"
      >
      <description-html>
         <![CDATA[Get a list of areas of a virtual disk that have been modified since a
 well-defined point in the past. The beginning of the change interval is
 identified by "changeId", while the end of the change interval is implied
 by the snapshot ID passed in.
 <p>
 Note that the result of this function may contain "false positives"
 (i.e: flag areas of the disk as modified that are not). However, it is
 guaranteed that no changes will be missed.]]>
      </description-html>
      <parameter name="id" type-id-ref="vim.vslm.ID"
      vmodl-name="id"
      version-id-ref="vim.version.version12"
      privilege="id"
      >
      <description-html>
         <![CDATA[The ID of the virtual storage object.]]>
      </description-html>
      </parameter>
      <parameter name="datastore" type-id-ref="vim.Datastore"
      vmodl-name="datastore"
      version-id-ref="vim.version.version12"
      privilege="datastore"
      >
      <description-html>
         <![CDATA[The datastore where the source virtual storage object
                  is located.]]>
      </description-html>
      </parameter>
      <parameter name="snapshotId" type-id-ref="vim.vslm.ID"
      vmodl-name="snapshotId"
      version-id-ref="vim.version.version12"
      privilege="snapshotId"
      >
      <description-html>
         <![CDATA[The ID of the snapshot of a virtual storage object for
                   which changes that have been made since "changeId"
                   should be computed.]]>
      </description-html>
      </parameter>
      <parameter name="startOffset" type-id-ref="LONG"
      vmodl-name="startOffset"
      version-id-ref="vim.version.version12"
      privilege="startOffset"
      >
      <description-html>
         <![CDATA[Start Offset in bytes at which to start computing
                    changes. Typically, callers will make multiple calls
                    to this function, starting with startOffset 0 and then
                    examine the "length" property in the returned
                    DiskChangeInfo structure, repeatedly calling
                    queryChangedDiskAreas until a map for the entire
                    virtual disk has been obtained.]]>
      </description-html>
      </parameter>
      <parameter name="changeId" type-id-ref="java.lang.String"
      vmodl-name="changeId"
      version-id-ref="vim.version.version12"
      privilege="changeId"
      >
      <description-html>
         <![CDATA[Identifier referring to a point in the past that should
                 be used as the point in time at which to begin including
                 changes to the disk in the result. A typical use case
                 would be a backup application obtaining a changeId from
                 a virtual disk's backing info when performing a backup.
                 When a subsequent incremental backup is to be performed,
                 this change Id can be used to obtain a list of changed
                 areas on disk.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.InvalidDatastore">
      <fault-description-html>
         <![CDATA[If the operation cannot be performed on the
                          datastore.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[If specified virtual storage object or snapshot
                  cannot be found.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.FileFault">
      <fault-description-html>
         <![CDATA[if the virtual disk files cannot be accessed/queried.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if change tracking is not supported for this
                      particular disk.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vmodl.fault.InvalidArgument">
      <fault-description-html>
         <![CDATA[if startOffset is beyond the end of the virtual
                         disk or changeId is invalid.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[Returns a data structure specifying extents of the virtual disk
         that have changed since the thime the changeId string was
         obtained.]]>
      </return-value-description-html>
   </method>
   </managed-object>
   <managed-object name="HostAuthenticationStore"
      type-id="vim.host.AuthenticationStore"
      vmodl-name="vim.host.AuthenticationStore"
      version-id-ref="vim.version.version6"
      >
      <description-html>
         <![CDATA[The <a href="vim.host.AuthenticationStore.html">HostAuthenticationStore</a> base class represents both local user
  and host Active Directory authentication for an ESX host.
  <ul>
    <li>Local user authentication is always enabled. The vSphere API
        does not support local user configuration for a host.
    <li>Active Directory authentication for ESX hosts relies on
        an established Active Directory account that
        has the authority to add the host to a domain.
  </ul>]]>
      </description-html>
            <property name="info" type-id-ref="vim.host.AuthenticationStoreInfo"
      vmodl-name="info"
      >
      <description-html>
         <![CDATA[Information about the authentication store.]]>
      </description-html>
      </property>

   </managed-object>
   <managed-object name="FileManager"
      type-id="vim.FileManager"
      vmodl-name="vim.FileManager"
      version-id-ref="vim.version.version2"
      >
      <description-html>
         <![CDATA[This managed object type provides a way to manage and manipulate files and
  folders on datastores. The source and the destination names are in the form of
  a URL or a datastore path.
  <p>
  A URL has the form
  <blockquote><i>scheme</i>://<i>authority</i>/folder/<i>path</i>?dcPath=<i>dcPath</i>&dsName=<i>dsName</i></blockquote>
  where
  <li><i>scheme</i> is <code>http</code> or <code>https</code>.</li>
  <li><i>authority</i> specifies the hostname or IP address of the VirtualCenter or
  ESX server and optionally the port.</li>
  <li><i>dcPath</i> is the inventory path to the Datacenter containing the
   Datastore.</li>
  <li><i>dsName</i> is the name of the Datastore.</li>
  <li><i>path</i> is a slash-delimited path from the root of the datastore.</li>
  <p>
  A datastore path has the form <blockquote>[<i>datastore</i>] <i>path</i></blockquote>
  where
  <li><i>datastore</i> is the datastore name.</li>
  <li><i>path</i> is a slash-delimited path from the root of the datastore.</li>
  An example datastore path is "[storage] path/to/file.extension".
  A listing of all the files, disks and folders on
  a datastore can be obtained from the datastore browser.<br>See <a href="vim.host.DatastoreBrowser.html">HostDatastoreBrowser</a><br>]]>
      </description-html>
   <method name="MoveDatastoreFile"
      vmodl-name="moveFile"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Moves the source file or folder to the destination.
  <p>
  If the destination file does not exist, it is created.
  If the destination file exists, the force parameter determines whether
  to overwrite it with the source or not.
  If the source path is a folder, then the destination path must not exist; the
  destination cannot be overwritten even with a force flag in that case. Folder
  moves are recursive, treating all files and disks to move as binary.
  <p>
  If source (or destination) name is specified as a URL, then the
  corresponding datacenter parameter may be omitted.
  <p>
  If any intermediate level folder specified by the source and destination
  does not exist, a <a href="vim.fault.FileNotFound.html">FileNotFound</a> fault is thrown.
  <p>
  If a file of a virtual machine is moved, it may corrupt that virtual machine.
  If a file of a virtual machine is overwritten on the destination datastore
  as a result of the force parameter, it may corrupt that virtual machine.
  <p>
  If the source is an extent of a virtual disk, this operation treats the extent
  as a file.
  <p>
  If source and destination resolve to the same file system location,
  the call has no effect.
  <p>
  It is important to note that this operation will provide transactional guarantees
  only for a file. No guarantees are provided for folder moves. If the intent is
  to move a virtual machine registered in the inventory, with transactional
  guarantees, please refer to <a href="vim.VirtualMachine.html#relocate">RelocateVM_Task</a>.
  If the intent is to rename a virtual machine registered in the inventory, please
  refer to <a href="vim.ManagedEntity.html#rename">Rename_Task</a>.
  <p>
  Datastore.FileManagement privilege is required on both source and
  destination datastores.
  <p>]]>
      </description-html>
      <parameter name="sourceName" type-id-ref="java.lang.String"
      vmodl-name="sourceName"
      version-id-ref="vim.version.version2"
      privilege="sourceName"
      >
      <description-html>
         <![CDATA[The name of the source, either a URL or a datastore path
                    referring to the file or folder to be moved.]]>
      </description-html>
      </parameter>
      <parameter name="sourceDatacenter" type-id-ref="vim.Datacenter"
      vmodl-name="sourceDatacenter"
      version-id-ref="vim.version.version2"
      is-optional="true"
      privilege="sourceDatacenter"
      >
      <description-html>
         <![CDATA[If <code>sourceName</code> is a datastore path, the
                          datacenter for that datastore path.
                          Not needed when invoked directly on ESX.
                          If not specified on a call to VirtualCenter,
                          <code>sourceName</code> must be a URL.]]>
      </description-html>
      </parameter>
      <parameter name="destinationName" type-id-ref="java.lang.String"
      vmodl-name="destinationName"
      version-id-ref="vim.version.version2"
      privilege="destinationName"
      >
      <description-html>
         <![CDATA[The name of the destination, either a URL or a
                         datastore path referring to the destination file or folder.]]>
      </description-html>
      </parameter>
      <parameter name="destinationDatacenter" type-id-ref="vim.Datacenter"
      vmodl-name="destinationDatacenter"
      version-id-ref="vim.version.version2"
      is-optional="true"
      privilege="destinationDatacenter"
      >
      <description-html>
         <![CDATA[If <code>destinationName</code> is a datastore
                               path, the datacenter for that datastore path.
                               Not needed when invoked directly on ESX.
                               If not specified on a call to VirtualCenter, it is assumed that
                               the destination path belongs to the source datacenter.]]>
      </description-html>
      </parameter>
      <parameter name="force" type-id-ref="BOOLEAN"
      vmodl-name="force"
      version-id-ref="vim.version.version2"
      is-optional="true"
      privilege="force"
      >
      <description-html>
         <![CDATA[If true, overwrite any identically named file
               at the destination.  If not specified, it is assumed to be false.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.InvalidDatastore">
      <fault-description-html>
         <![CDATA[if the operation cannot be performed on the source
  or destination datastores. Typically, a specific subclass of this exception is
  thrown.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.FileFault">
      <fault-description-html>
         <![CDATA[if there is a generic file error]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.FileNotFound">
      <fault-description-html>
         <![CDATA[if the file or folder specified by sourceName is not
  found, or, any intermediate level folder specified by the destinationName is not
  found.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.CannotAccessFile">
      <fault-description-html>
         <![CDATA[if the source file or folder cannot be moved because of
  insufficient permissions.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.FileLocked">
      <fault-description-html>
         <![CDATA[if the source file or folder is currently locked or in use.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.FileAlreadyExists">
      <fault-description-html>
         <![CDATA[if a file with the given name already
  exists at the destination, and the force flag is false. For folders, if the
  destination exists, this fault is thrown regardless.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.NoDiskSpace">
      <fault-description-html>
         <![CDATA[if there is not enough space available on the destination
  datastore.]]>
      </fault-description-html>
      </fault>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to monitor the
        operation.]]>
      </task-description-html>
   </method>
   <method name="CopyDatastoreFile"
      vmodl-name="copyFile"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Copies the source file or folder to the destination.
  <p>
  If the destination file does not exist, it is created.
  If the destination file exists, the force parameter determines whether
  to overwrite it with the source or not.
  Folders can be copied recursively. In this case, the
  destination, if it exists, must be a folder, else one will be created. Existing
  files on the destination that conflict with source files can be overwritten using
  the force parameter. Files and disks are always copied in binary format during
  recursive copy.
  <p>
  If source (or destination) name is specified as a URL, then the
  corresponding datacenter parameter may be omitted.
  <p>
  If any intermediate level folder specified by the source and destination
  does not exist, a <a href="vim.fault.FileNotFound.html">FileNotFound</a> fault is thrown.
  <p>
  If a file of a virtual machine is overwritten on the destination datastore
  as a result of the force parameter, it may corrupt that virtual machine.
  <p>
  If the source is an extent of a virtual disk, this operation treats the extent
  as a file.
  <p>
  If source and destination resolve to the same file system location,
  the call has no effect.
  <p>
  It is important to note that this operation will provide transactional guarantees
  only for a file. No guarantees are provided when copying a folder.
  If the intent is to clone a virtual machine registered in the inventory,
  with transactional guarantees, please refer to <a href="vim.VirtualMachine.html#clone">CloneVM_Task</a>.
  <p>
  Datastore.FileManagement privilege is required on both source and
  destination datastores.
  <p>]]>
      </description-html>
      <parameter name="sourceName" type-id-ref="java.lang.String"
      vmodl-name="sourceName"
      version-id-ref="vim.version.version2"
      privilege="sourceName"
      >
      <description-html>
         <![CDATA[The name of the source, either a URL or a
                    datastore path referring to the file or folder to be copied.]]>
      </description-html>
      </parameter>
      <parameter name="sourceDatacenter" type-id-ref="vim.Datacenter"
      vmodl-name="sourceDatacenter"
      version-id-ref="vim.version.version2"
      is-optional="true"
      privilege="sourceDatacenter"
      >
      <description-html>
         <![CDATA[If <code>sourceName</code> is a datastore path, the
                          datacenter for that datastore path.
                          Not needed when invoked directly on ESX.
                          If not specified on a call to VirtualCenter,
                          <code>sourceName</code> must be a URL.]]>
      </description-html>
      </parameter>
      <parameter name="destinationName" type-id-ref="java.lang.String"
      vmodl-name="destinationName"
      version-id-ref="vim.version.version2"
      privilege="destinationName"
      >
      <description-html>
         <![CDATA[The name of the destination, either a
                         URL or a datastore path referring to the destination file
                         or folder.]]>
      </description-html>
      </parameter>
      <parameter name="destinationDatacenter" type-id-ref="vim.Datacenter"
      vmodl-name="destinationDatacenter"
      version-id-ref="vim.version.version2"
      is-optional="true"
      privilege="destinationDatacenter"
      >
      <description-html>
         <![CDATA[If <code>destinationName</code> is a datastore
                               path, the datacenter for that datastore path.
                               Not needed when invoked directly on ESX.
                               If not specified on a call to VirtualCenter, it is assumed that
                               the destination path belongs to the source datacenter.]]>
      </description-html>
      </parameter>
      <parameter name="force" type-id-ref="BOOLEAN"
      vmodl-name="force"
      version-id-ref="vim.version.version2"
      is-optional="true"
      privilege="force"
      >
      <description-html>
         <![CDATA[If true, overwrite any identically named file
               at the destination.  If not specified, it is assumed to be false.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.InvalidDatastore">
      <fault-description-html>
         <![CDATA[if the operation cannot be performed on the source
  or destination datastores. Typically, a specific subclass of this exception is
  thrown.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.FileFault">
      <fault-description-html>
         <![CDATA[if there is a generic file error]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.FileNotFound">
      <fault-description-html>
         <![CDATA[if the file or folder specified by sourceName is not
  found, or, any intermediate level folder specified by the destinationName is not
  found.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.CannotAccessFile">
      <fault-description-html>
         <![CDATA[if the source cannot be accessed because of
  insufficient permissions.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.FileLocked">
      <fault-description-html>
         <![CDATA[if the source file or folder is currently locked or in use.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.FileAlreadyExists">
      <fault-description-html>
         <![CDATA[if a file with the given name already
  exists at the destination, and the force flag is false.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.NoDiskSpace">
      <fault-description-html>
         <![CDATA[if there is not enough space available at the destination
  datastore.]]>
      </fault-description-html>
      </fault>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to monitor the
        operation.]]>
      </task-description-html>
   </method>
   <method name="DeleteDatastoreFile"
      vmodl-name="deleteFile"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Deletes the specified file or folder from the datastore.
  If a file of a virtual machine is deleted, it may corrupt that
  virtual machine. Folder deletes are always recursive.
  The datacenter parameter may be omitted if a URL is used to name
  the file or folder.
  <p>
  If the source is an extent of a virtual disk, this operation treats the extent
  as a file.
  <p>
  It is important to note that this operation will provide transactional guarantees
  only for a file. No guarantees are provided when deleting folders.
  If the intent is to delete a virtual machine registered in the inventory,
  please refer to <a href="vim.ManagedEntity.html#destroy">Destroy_Task</a>.

  <p>
  Requires Datastore.FileManagement privilege on the datastore.
  <p>]]>
      </description-html>
      <parameter name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      version-id-ref="vim.version.version2"
      privilege="name"
      >
      <description-html>
         <![CDATA[The name of the file or folder, either a URL or a datastore path
              referring to the file or folder to be deleted.]]>
      </description-html>
      </parameter>
      <parameter name="datacenter" type-id-ref="vim.Datacenter"
      vmodl-name="datacenter"
      version-id-ref="vim.version.version2"
      is-optional="true"
      privilege="datacenter"
      >
      <description-html>
         <![CDATA[If <code>name</code> is a datastore path, the datacenter for
                    that datastore path. Not needed when invoked directly on ESX.
                    If not specified on a call to VirtualCenter,
                    <code>name</code> must be a URL.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.InvalidDatastore">
      <fault-description-html>
         <![CDATA[if the operation cannot be performed on the
  datastore. Typically, a specific subclass of this exception is thrown.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.FileFault">
      <fault-description-html>
         <![CDATA[if there is a generic file error]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.FileNotFound">
      <fault-description-html>
         <![CDATA[if the file or folder specified by name
  is not found.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.CannotDeleteFile">
      <fault-description-html>
         <![CDATA[if the delete operation on the file or folder
  fails.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.FileLocked">
      <fault-description-html>
         <![CDATA[if the source file or folder  is currently locked or
  in use.]]>
      </fault-description-html>
      </fault>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to monitor the
        operation.]]>
      </task-description-html>
   </method>
   <method name="MakeDirectory"
      vmodl-name="makeDirectory"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Create a folder using the specified name. If the parent
  or intermediate level folders do not exist, and the parameter
  createParentDirectories is false, a <a href="vim.fault.FileNotFound.html">FileNotFound</a> fault
  is thrown.
  If the intermediate level folders do not exist, and the parameter
  createParentDirectories is true, all the non-existent folders
  are created.

  <p>
  Requires Datastore.FileManagement privilege on the datastore.
  <p>]]>
      </description-html>
      <parameter name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      version-id-ref="vim.version.version2"
      privilege="name"
      >
      <description-html>
         <![CDATA[The name of the folder, either a URL or a datastore path
              referring to the folder to be created.]]>
      </description-html>
      </parameter>
      <parameter name="datacenter" type-id-ref="vim.Datacenter"
      vmodl-name="datacenter"
      version-id-ref="vim.version.version2"
      is-optional="true"
      privilege="datacenter"
      >
      <description-html>
         <![CDATA[If <code>name</code> is a datastore path, the datacenter for
                    that datastore path. Not needed when invoked directly on ESX.
                    If not specified on a call to VirtualCenter,
                    <code>name</code> must be a URL.]]>
      </description-html>
      </parameter>
      <parameter name="createParentDirectories" type-id-ref="BOOLEAN"
      vmodl-name="createParentDirectories"
      version-id-ref="vim.version.version2"
      is-optional="true"
      privilege="createParentDirectories"
      >
      <description-html>
         <![CDATA[If true, any non-existent intermediate level
                                 folders will be created.  If not specified,
                                 it is assumed to be false.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.InvalidDatastore">
      <fault-description-html>
         <![CDATA[if the operation cannot be performed on the
  datastore. Typically, a specific subclass of this exception is thrown.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.FileFault">
      <fault-description-html>
         <![CDATA[if there is a generic file error]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.CannotCreateFile">
      <fault-description-html>
         <![CDATA[if the create operation on the folder fails.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.FileAlreadyExists">
      <fault-description-html>
         <![CDATA[if a file or folder with the given name already
  exists at the destination.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.FileNotFound">
      <fault-description-html>
         <![CDATA[if the createParentDirectories is false and a intermediate
  level folder specified by name is not found.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="ChangeOwner"
      vmodl-name="changeOwner"
      version-id-ref="vim.version.version5"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Change the owner for a file.

  <p>
  This method is currently not supported.
  <p>]]>
      </description-html>
      <parameter name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      version-id-ref="vim.version.version5"
      privilege="name"
      >
      </parameter>
      <parameter name="datacenter" type-id-ref="vim.Datacenter"
      vmodl-name="datacenter"
      version-id-ref="vim.version.version5"
      is-optional="true"
      privilege="datacenter"
      >
      </parameter>
      <parameter name="owner" type-id-ref="java.lang.String"
      vmodl-name="owner"
      version-id-ref="vim.version.version5"
      privilege="owner"
      >
      </parameter>
      <fault type-id-ref="vim.fault.InvalidDatastore">
      </fault>
      <fault type-id-ref="vim.fault.FileFault">
      </fault>
      <fault type-id-ref="vim.fault.UserNotFound">
      </fault>
   </method>
   </managed-object>
   <managed-object name="FailoverClusterManager"
      type-id="vim.vcha.FailoverClusterManager"
      vmodl-name="vim.vcha.FailoverClusterManager"
      version-id-ref="vim.version.version11"
      >
      <description-html>
         <![CDATA[FailoverClusterManager provides operations to manage a vCenter
 High Availability Cluster (VCHA Cluster).

 A VCHA Cluster consists of three VMs. One is the Active vCenter VM that
 serves client requests. Second is the Passive VM that is identical to the
 Active vCenter VM in terms of resources and capabilities. Passive VM
 constantly receives updates from Active VM and takes over the role of
 Active vCenter VM in the event of failover. Third is the Witness VM that
 acts as a quorum VM in a VCHA Cluster. Sole purpose of Witness VM is to
 avoid classic split-brain problem in a VCHA Cluster.

 A VCHA Cluster has following states -
 1. Healthy - All three nodes in a VCHA Cluster are healthy and connected.
 State replication between Active and Passive node is working and both
 nodes are in-sync.
 2. Degraded - A VCHA Cluster is said to be in degraded state when it has
 lost one of the three nodes. Node loss can be due to various reasons and
 as a result the lost node is not visible to other two nodes. If an Active
 node is lost, Passive node will take the role of Active node. If Passive or
 Witness node is lost, Active node will continue to serve requests. A VCHA
 Cluster can also be in degraded state if state replication fails between
 Active and Passive nodes.
 3. Isolated - All three nodes are isolated from each other. If this happens
 while VCHA Cluster is in enabled mode, Active node stops serving client
 requests. If nodes are isolated in a disabled VCHA Cluster mode, Active
 node continues to serve client requests.

 A VCHA Cluster has following modes -
 1. Enabled - State replication between Active and Passive nodes is
 enabled and automatic failover happens if Active node fails while the
 VCHA Cluster is in a healthy state.
 2. Disabled - All three nodes are part of VCHA Cluster but state
 replication and automatic failover is disabled.
 3. Maintenance - All three nodes are part of VCHA Cluster but automatic
 failover is disabled while state replication continues. Active node continues
 to serve client requests even if Passive and Witness nodes are lost.]]>
      </description-html>
            <property name="disabledClusterMethod" type-id-ref="vmodl.MethodName"
      vmodl-name="disabledClusterMethod"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[A list of method names that must not be called and will throw
 a fault due to some other method running that the disabled method
 can cause side-effects for.

 <p>
 This list may include the following methods:
 <ul>
 <li><a href="vim.vcha.FailoverClusterManager.html#setClusterMode">setClusterMode_Task</a></li>
 <li><a href="vim.vcha.FailoverClusterManager.html#getClusterMode">getClusterMode</a></li>
 <li><a href="vim.vcha.FailoverClusterManager.html#initiateFailover">initiateFailover_Task</a></li>
 <li><a href="vim.vcha.FailoverClusterManager.html#getClusterHealth">GetVchaClusterHealth</a></li>
 </ul>
 </p>

 GetClusterHealth will also be disabled if Deploy is in progress.

 As with other disabled methods there will be no property updates
 on this property when called with non-zero property collector versions.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.vcha.FailoverClusterManager.VchaNodeRole</nested-type-id-ref>
      <nested-type-id-ref>vim.vcha.FailoverClusterManager.VchaClusterMode</nested-type-id-ref>
      <nested-type-id-ref>vim.vcha.FailoverClusterManager.VchaClusterState</nested-type-id-ref>
      <nested-type-id-ref>vim.vcha.FailoverClusterManager.VchaNodeState</nested-type-id-ref>
      <nested-type-id-ref>vim.vcha.FailoverClusterManager.VchaNodeRuntimeInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.vcha.FailoverClusterManager.VchaClusterRuntimeInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.vcha.FailoverClusterManager.VchaClusterHealth</nested-type-id-ref>
   <method name="setClusterMode"
      vmodl-name="setClusterMode"
      privilege="Global.VCServer"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[setClusterMode method allows caller to manipulate the mode of a
  VCHA Cluster

  Following mode transitions are allowed -

  enabled -> disabled - Allowed only in healthy and degraded states.
  enabled -> maintenance - Allowed only in healthy state.
  disabled -> enabled - Allowed only in healthy state.
  maintenance -> enabled - Allowed only in healthy state with all nodes
                           are running the same version.
  maintenance -> disabled - Allowed only in healthy state with all nodes
                            are running the same version.

  All other transitions are not allowed.

  VCHA Cluster configuration remains intact in any of the cluster modes.]]>
      </description-html>
      <parameter name="mode" type-id-ref="java.lang.String"
      vmodl-name="mode"
      version-id-ref="vim.version.version11"
      privilege="mode"
      >
      </parameter>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to
        monitor the progress of the operation.]]>
      </task-description-html>
   </method>
   <method name="getClusterMode"
      vmodl-name="getClusterMode"
      privilege="System.Read"
      type-id-ref="java.lang.String"
      >
      <description-html>
         <![CDATA[Returns current mode of a VCHA Cluster.]]>
      </description-html>
   </method>
   <method name="GetVchaClusterHealth"
      vmodl-name="getClusterHealth"
      privilege="System.Read"
      type-id-ref="vim.vcha.FailoverClusterManager.VchaClusterHealth"
      >
      <description-html>
         <![CDATA[Returns last known health of the VCHA Cluster.]]>
      </description-html>
   </method>
   <method name="initiateFailover"
      vmodl-name="initiateFailover"
      privilege="Global.VCServer"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Allows a caller to initiate a failover from Active vCenter Server node
  to the Passive node. By default it is a forced failover. The planned
  flag can be used to initiate it as a planned failover.

  For forced failover, Active node immediately initiates a failover. This
  may result into a data loss after failover.

  For planned failover, Active node flushes all the state to the
  Passive node, waits for the flush to complete before causing a failover.
  After the failover, Passive node starts without any data loss.

  A failover is allowed only in the following cases -
  1. Cluster's mode is enabled and all cluster members are present.
  2. Cluster's mode is maintenance and all cluster members are present.

  API throws an exception in all other cases.]]>
      </description-html>
      <parameter name="planned" type-id-ref="BOOLEAN"
      vmodl-name="planned"
      version-id-ref="vim.version.version11"
      privilege="planned"
      >
      <description-html>
         <![CDATA[- if false, a failover is initiated immediate and may
                    result in data loss.
                    if true, a failover is initated after the Active node
                    flushes its state to Passive and there is no data loss.]]>
      </description-html>
      </parameter>
   </method>
   </managed-object>
   <managed-object name="VirtualApp"
      type-id="vim.VirtualApp"
      vmodl-name="vim.VirtualApp"
      version-id-ref="vim.version.version5"
      base-type-id="vim.ResourcePool"
      >
      <description-html>
         <![CDATA[Represents a multi-tiered software solution. A vApp is a collection of
  virtual machines (and potentially other vApp containers) that are operated and
  monitored as a unit. From a manage perspective, a multi-tiered vApp acts a
  lot like a virtual machine object. It has power operations, networks, datastores,
  and its resource usage can be configured.
  <p>
  From a technical perspective, a vApp container is a specialized resource pool that
  has been extended with the following capabilities:
  <li>
  <ul>Product information such as product name, vendor, properties,
      and licenses.</ul>
  <ul>A power-on/power-off sequence specification</ul>
  <ul>Support for import/export vApps as OVF packages</ul>
  <ul>An OVF environment that allows for application-level customization</ul>
  </li>
  <p>
  <b>Destroying a vApp</b>
  <p>
  When a vApp is destroyed, all of its virtual machines are destroyed,
  as well as any child vApps.
  <p>
  The VApp.Delete privilege must be held on the vApp as well as the
  parent folder of the vApp.  Also, the VApp.Delete privilege must
  be held on any child vApps that would be destroyed by the operation.]]>
      </description-html>
            <property name="parentFolder" type-id-ref="vim.Folder"
      vmodl-name="parentFolder"
      is-optional="true"
      privilege="System.View"
      >
      <description-html>
         <![CDATA[A reference to the parent folder in the VM and Template folder hierarchy. This
  is only set for a root vApp. A root vApp is a vApp that is not a child of
  another vApp.]]>
      </description-html>
      </property>

            <property name="datastore" type-id-ref="vim.Datastore"
      vmodl-name="datastore"
      is-array="true"
      is-optional="true"
      privilege="System.View"
      >
      <description-html>
         <![CDATA[A collection of references to the subset of datastore objects used by this
  vApp.]]>
      </description-html>
      </property>

            <property name="network" type-id-ref="vim.Network"
      vmodl-name="network"
      is-array="true"
      is-optional="true"
      privilege="System.View"
      >
      <description-html>
         <![CDATA[A collection of references to the subset of network objects that
  is used by this virtual machine.]]>
      </description-html>
      </property>

            <property name="vAppConfig" type-id-ref="vim.vApp.VAppConfigInfo"
      vmodl-name="vAppConfig"
      is-optional="true"
      privilege="System.Read"
      >
      <description-html>
         <![CDATA[Configuration of this package.]]>
      </description-html>
      </property>

            <property name="parentVApp" type-id-ref="vim.ManagedEntity"
      vmodl-name="parentVApp"
      version-id-ref="vim.version.version6"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Reference to the parent vApp.]]>
      </description-html>
      </property>

            <property name="childLink" type-id-ref="vim.VirtualApp.LinkInfo"
      vmodl-name="childLink"
      version-id-ref="vim.version.version6"
      is-deprecated="true"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of linked children.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 5.1.]]>
      </deprecated-html>
      </property>

      <nested-type-id-ref>vim.VirtualApp.VAppState</nested-type-id-ref>
      <nested-type-id-ref>vim.VirtualApp.Summary</nested-type-id-ref>
      <nested-type-id-ref>vim.VirtualApp.LinkInfo</nested-type-id-ref>
   <method name="UpdateVAppConfig"
      vmodl-name="updateVAppConfig"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Updates the vApp configuration.
  <p>
  Updates in different areas require different privileges. See
  <a href="vim.vApp.VAppConfigSpec.html">VAppConfigSpec</a> for a full description.]]>
      </description-html>
      <parameter name="spec" type-id-ref="vim.vApp.VAppConfigSpec"
      vmodl-name="spec"
      version-id-ref="vim.version.version5"
      privilege="spec"
      >
      <description-html>
         <![CDATA[contains the updates to the current configuration. Any set element,
              is changed. All values in the spec that is left unset, will not be
              modified.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.TaskInProgress">
      <fault-description-html>
         <![CDATA[if the vApp is busy.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.VmConfigFault">
      <fault-description-html>
         <![CDATA[for bad configuration, such as invalid
          property types.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.ConcurrentAccess">
      <fault-description-html>
         <![CDATA[if another operation conflicted with this operation.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.FileFault">
      </fault>
      <fault type-id-ref="vim.fault.InvalidName">
      </fault>
      <fault type-id-ref="vim.fault.DuplicateName">
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      </fault>
      <fault type-id-ref="vim.fault.InsufficientResourcesFault">
      </fault>
      <fault type-id-ref="vim.fault.InvalidDatastore">
      </fault>
      <fault type-id-ref="vim.fault.InvalidPowerState">
      <fault-description-html>
         <![CDATA[if the reconfiguration is not possible given the
          current powerState of the vApp.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="UpdateLinkedChildren"
      vmodl-name="updateLinkedChildren"
      version-id-ref="vim.version.version6"
      is-deprecated="true"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Reconfigure the set of linked children.
  <p>
  A VirtualMachine and vApp can be added as a linked child as long as it
  is not a direct child of another vApp. In case it is a linked child, the
  existing link is removed and replaced with the new link specified in this
  call.
  <p>
  An InvalidArgument fault is thrown if a link target is a direct child
  of another vApp, or if the addition of the link will result in a vApp
  with a cycle. For example, a vApp cannot be linked to itself.
  <p>
  The removeSet must refer to managed entities that are currently linked
  children. Otherwise, an InvalidArgument exception is thrown.
  <p>
  For each entity being linked, the operation is subject to the following privilege
  checks:
  <ul>
    <li>If the object being linked is a vApp, VApp.Move must be held on
    the vApp being linked and its former parent vApp (if any). The privilege
    VApp.AssignVApp must be held on this vApp.</li>

    <li>If the object being linked is a VirtualMachine, VApp.AssignVM is required on
    both the target vApp, the VirtualMachine, and its former parent vApp (if any).
    </li>
  </ul>
  <p>
  Privilege checks for each entity in the removeSet are similar to the entities
  in the addChangeSet, except that there is no target vApp.
  <p>
  This operation is only transactional with respect to each individual link change.
  The changes are processed sequentially and committed one at a time. The
  addChangeSet is processed first, followed by the removeSet. If a failure is
  detected, then the method terminates with an exception.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 5.1.]]>
      </deprecated-html>
      <parameter name="addChangeSet" type-id-ref="vim.VirtualApp.LinkInfo"
      vmodl-name="addChangeSet"
      version-id-ref="vim.version.version6"
      is-array="true"
      is-optional="true"
      privilege="addChangeSet"
      >
      <description-html>
         <![CDATA[a set of LinkInfo objects that either add a new link
                      or modify an exisiting link.]]>
      </description-html>
      </parameter>
      <parameter name="removeSet" type-id-ref="vim.ManagedEntity"
      vmodl-name="removeSet"
      version-id-ref="vim.version.version6"
      is-array="true"
      is-optional="true"
      privilege="removeSet"
      >
      <description-html>
         <![CDATA[a set of entities that should no longer link to this vApp.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.ConcurrentAccess">
      <fault-description-html>
         <![CDATA[If a concurrent modification happens while adding the link.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="CloneVApp"
      vmodl-name="clone"
      privilege="VApp.Clone"
      type-id-ref="vim.VirtualApp"
      is-task="true"
      >
      <description-html>
         <![CDATA[Creates a clone of this vApp.
  <p>
  Any % (percent) character used in this name parameter must be escaped, unless it
  is used to start an escape sequence. Clients may also escape any other characters
  in this name parameter.
  <p>
  When invoking this method, the following privilege checks occur:
  <ul>
    <li>The privilege VApp.Clone is required on this vApp.</li>
    <li>If the target is a resource pool, the privilege
    Resource.AssignVAppToPool is required on it.</li>
    <li>If the target is a vApp, the privileges VApp.Clone and
    VApp.AssignVApp are required on it.</li>
  </ul>
  Additional privileges are required by the clone spec provided. See <a href="vim.vApp.CloneSpec.html">VAppCloneSpec</a> for details.]]>
      </description-html>
      <parameter name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      version-id-ref="vim.version.version5"
      privilege="name"
      >
      <description-html>
         <![CDATA[The name of the new vApp.]]>
      </description-html>
      </parameter>
      <parameter name="target" type-id-ref="vim.ResourcePool"
      vmodl-name="target"
      version-id-ref="vim.version.version5"
      privilege="target"
      >
      <description-html>
         <![CDATA[The parent entity of the new vApp. Must be of type
               <a href="vim.ResourcePool.html">ResourcePool</a> or <a href="vim.VirtualApp.html">VirtualApp</a>.]]>
      </description-html>
      </parameter>
      <parameter name="spec" type-id-ref="vim.vApp.CloneSpec"
      vmodl-name="spec"
      version-id-ref="vim.version.version5"
      privilege="spec"
      >
      <description-html>
         <![CDATA[Specifies how to clone the vApp.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the operation cannot be performed because of the
         vApp's current state. For example, if the virtual machine
         configuration information is not available, or if the vApp
         is running.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidDatastore">
      <fault-description-html>
         <![CDATA[if the operation cannot be performed on the
         target datastores.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.TaskInProgress">
      <fault-description-html>
         <![CDATA[if the vApp is busy.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.VmConfigFault">
      <fault-description-html>
         <![CDATA[if one of the virtual machines are not compatible with a
         destination host. Typically, a specific subclass of this exception is
         thrown, such as IDEDiskNotSupported.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.FileFault">
      <fault-description-html>
         <![CDATA[if there was an error accessing one of the virtual machine files.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.MigrationFault">
      <fault-description-html>
         <![CDATA[if it is not possible to migrate one of the virtual machines
         to the destination. This is typically due to hosts being incompatible,
         such as mismatch in network polices or access to networks and datastores.
         Typically, a more specific subclass is thrown.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InsufficientResourcesFault">
      <fault-description-html>
         <![CDATA[if this operation would violate a resource
         usage policy.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidPowerState">
      <fault-description-html>
         <![CDATA[if the vApp is powered on.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[The newly created vApp.]]>
      </return-value-description-html>
   </method>
   <method name="ExportVApp"
      vmodl-name="exportVApp"
      privilege="VApp.Export"
      type-id-ref="vim.HttpNfcLease"
      >
      <description-html>
         <![CDATA[Obtains an export lease on this vApp. The export lease contains a list
  of URLs for the disks of the virtual machines in this vApp, as well as
  a ticket that gives access to these URLs.
  <p>
  See <a href="vim.HttpNfcLease.html">HttpNfcLease</a> for information on how to use the lease.]]>
      </description-html>
      <fault type-id-ref="vim.fault.InvalidPowerState">
      <fault-description-html>
         <![CDATA[if the vApp is powered on.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.TaskInProgress">
      <fault-description-html>
         <![CDATA[if the vApp is busy.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the operation cannot be performed because of the
         vApp's current state. For example, if the virtual machine
         configuration information is not available, or if the vApp
         is running or already powering on.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.FileFault">
      <fault-description-html>
         <![CDATA[if there was an error accessing one of the virtual machine files.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[the export lease on this vApp. The export task continues
         running until the lease is completed or aborted.]]>
      </return-value-description-html>
   </method>
   <method name="PowerOnVApp"
      vmodl-name="powerOn"
      privilege="VApp.PowerOn"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Starts this vApp.
 <p>
 The virtual machines (or sub vApps) will be started in the order
 specified in the vApp configuration. If the vApp is suspended
 (@see vim.VirtualApp.Summary.suspended), all suspended virtual machines
 will be powered-on based on the defined start-up order.
 <p>
 While a vApp is starting, all power operations performed on sub entities are
 disabled through the VIM API. They will throw TaskInProgress.
 <p>
 In case of a failure to power-on a virtual machine, the exception from the virtual
 machine power on is returned, and the power-on sequence will be terminated. In
 case of a failure, virtual machines that are already started will remain
 powered-on.
 <p>]]>
      </description-html>
      <fault type-id-ref="vim.fault.TaskInProgress">
      <fault-description-html>
         <![CDATA[if the vApp is busy]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if it fails to power on a virtual machine due to no host
              availability, or unable to access the configuration file of a VM.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InsufficientResourcesFault">
      <fault-description-html>
         <![CDATA[if this operation would violate a resource
         usage policy.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.VmConfigFault">
      <fault-description-html>
         <![CDATA[if a configuration issue on the vApp or a virtual
         machine in the vApp prevents the power-on to complete. Typically, a
         more specific fault, such as InvalidPropertyType is thrown.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.VAppConfigFault">
      <fault-description-html>
         <![CDATA[if a configuration issue on a vApp prevents the
         power-on. Typically, a more specific fault, MissingPowerOnConfiguration,
         is thrown.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.FileFault">
      <fault-description-html>
         <![CDATA[if there is a problem accessing the virtual machine on the
         filesystem.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidPowerState">
      <fault-description-html>
         <![CDATA[if the vApp is already running]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.MissingNetworkIpConfig">
      <fault-description-html>
         <![CDATA[if no network configuration exists for the primary
          network for the vApp.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="PowerOffVApp"
      vmodl-name="powerOff"
      privilege="VApp.PowerOff"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Stops this vApp.
 <p>
 The virtual machines (or child vApps) will be stopped in the order
 specified in the vApp configuration, if force is false. If force is set
 to true, all virtual machines are powered-off (in no specific order and
 possibly in parallel) regardless of the vApp auto-start configuration.
 <p>
 While a vApp is stopping, all power operations performed on sub entities are
 disabled through the VIM API. They will throw TaskInProgress.]]>
      </description-html>
      <parameter name="force" type-id-ref="BOOLEAN"
      vmodl-name="force"
      version-id-ref="vim.version.version5"
      privilege="force"
      >
      <description-html>
         <![CDATA[If force is false, the shutdown order in the vApp is
         executed. If force is true, all virtual machines are powered-off
         (regardless of shutdown order).]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.TaskInProgress">
      <fault-description-html>
         <![CDATA[if the vApp is busy.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the operation cannot be performed because of the
         vApp's current state. For example, if the vApp is in the
         process of being started.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.VAppConfigFault">
      </fault>
      <fault type-id-ref="vim.fault.InvalidPowerState">
      <fault-description-html>
         <![CDATA[if the vApp is not running]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.MissingPowerOffConfiguration">
      <fault-description-html>
         <![CDATA[if no vApp powerOff configuration
         has been specified.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="SuspendVApp"
      vmodl-name="suspend"
      version-id-ref="vim.version.version6"
      privilege="VApp.Suspend"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Suspends this vApp.
 <p>
 Suspends all powered-on virtual machines in a vApp, including virtual machines
 in child vApps. The virtual machines are suspended in the same order as
 used for a power-off operation (reverse power-on sequence).
 <p>
 While a vApp is being suspended, all power operations performed on sub entities
 are disabled through the VIM API. They will throw TaskInProgress.]]>
      </description-html>
      <fault type-id-ref="vim.fault.TaskInProgress">
      <fault-description-html>
         <![CDATA[if the vApp is busy.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the operation cannot be performed because of the
         vApp's current state. For example, if the vApp is in the
         process of being started.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.VAppConfigFault">
      </fault>
      <fault type-id-ref="vim.fault.InvalidPowerState">
      <fault-description-html>
         <![CDATA[if the vApp is not running]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="unregisterVApp"
      vmodl-name="unregister"
      privilege="VApp.Unregister"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Removes this vApp from the inventory without removing
  any of the virtual machine's files on disk. All high-level information
  stored with the management server (ESX Server or VirtualCenter) is
  removed, including information such as vApp configuration, statistics,
  permissions, and alarms.
  <p>]]>
      </description-html>
      <fault type-id-ref="vim.fault.ConcurrentAccess">
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      </fault>
      <fault type-id-ref="vim.fault.InvalidPowerState">
      <fault-description-html>
         <![CDATA[if the vApp is running.]]>
      </fault-description-html>
      </fault>
   </method>
   </managed-object>
   <managed-object name="ClusterComputeResource"
      type-id="vim.ClusterComputeResource"
      vmodl-name="vim.ClusterComputeResource"
      version-id-ref="vim.version.version1"
      base-type-id="vim.ComputeResource"
      >
      <description-html>
         <![CDATA[The <a href="vim.ClusterComputeResource.html">ClusterComputeResource</a> data object aggregates the compute
  resources of associated <a href="vim.HostSystem.html">HostSystem</a> objects into a single
  compute resource for use by virtual machines. The cluster services
  such as HA (High Availability), DRS (Distributed Resource Scheduling),
  and EVC (Enhanced vMotion Compatibility), enhance the utility of this
  single compute resource.
  <p>
  Use the <a href="vim.Folder.html">Folder</a>.<a href="vim.Folder.html#createClusterEx">CreateClusterEx</a> method
  to create an instance of this object.]]>
      </description-html>
            <property name="configuration" type-id-ref="vim.cluster.ConfigInfo"
      vmodl-name="configuration"
      is-deprecated="true"
      >
      <description-html>
         <![CDATA[Configuration of the cluster.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of VI API 2.5, use <a href="vim.ComputeResource.html#configurationEx">ConfigurationEx</a>,
  which is a <a href="vim.cluster.ConfigInfoEx.html">ClusterConfigInfoEx</a> data object..]]>
      </deprecated-html>
      </property>

            <property name="recommendation" type-id-ref="vim.cluster.Recommendation"
      vmodl-name="recommendation"
      version-id-ref="vim.version.version2"
      is-array="true"
      is-optional="true"
      privilege="System.Read"
      >
      <description-html>
         <![CDATA[List of recommended actions for the cluster. It is
  possible that the current set of recommendations may be empty,
  either due to not having any running dynamic recommendation
  generation module, or since there may be no recommended actions
  at this time.]]>
      </description-html>
      </property>

            <property name="drsRecommendation" type-id-ref="vim.cluster.DrsRecommendation"
      vmodl-name="drsRecommendation"
      is-deprecated="true"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[deprecated As of VI API 2.5, use
  <a href="vim.ClusterComputeResource.html#recommendation">Recommendation</a>.

  vSphere 6.5 is the last version where this property is populated.
  Later versions of vSphere no longer populate this property.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of VI API 2.5, use
  <a href="vim.ClusterComputeResource.html#recommendation">Recommendation</a>.

  vSphere 6.5 is the last version where this property is populated.
  Later versions of vSphere no longer populate this property.]]>
      </deprecated-html>
      </property>

            <property name="hciConfig" type-id-ref="vim.ClusterComputeResource.HCIConfigInfo"
      vmodl-name="hciConfig"
      version-id-ref="vim.version.version13"
      is-optional="true"
      >
      <description-html>
         <![CDATA[This is applicable to clusters which are configured using the HCI
 workflow and contains data related to the workflow and specification.]]>
      </description-html>
      </property>

            <property name="migrationHistory" type-id-ref="vim.cluster.DrsMigration"
      vmodl-name="migrationHistory"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The set of migration decisions that have recently been performed.
  <p>
  This list is populated only when DRS is in automatic mode.]]>
      </description-html>
      </property>

            <property name="actionHistory" type-id-ref="vim.cluster.ActionHistory"
      vmodl-name="actionHistory"
      version-id-ref="vim.version.version2"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The set of actions that have been performed recently.]]>
      </description-html>
      </property>

            <property name="drsFault" type-id-ref="vim.cluster.DrsFaults"
      vmodl-name="drsFault"
      version-id-ref="vim.version.version5"
      is-array="true"
      is-optional="true"
      privilege="System.Read"
      >
      <description-html>
         <![CDATA[A collection of the DRS faults generated in the last DRS invocation.
  Each element of the collection is the set of faults generated in one
  recommendation.

  DRS faults are generated when DRS tries to make recommendations
  for rule enforcement, power management, etc., and indexed in a tree
  structure with reason for recommendations and VM to migrate (optional)
  as the index keys.

  In releases after vSphere API 5.0, vSphere Servers might not
  generate property collector update notifications for this property.
  To obtain the latest value of the property, you can use
  PropertyCollector methods RetrievePropertiesEx or WaitForUpdatesEx.
  If you use the PropertyCollector.WaitForUpdatesEx method, specify
  an empty string for the version parameter. Any other version value will not
  produce any property values as no updates are generated.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.ClusterComputeResource.Summary</nested-type-id-ref>
      <nested-type-id-ref>vim.ClusterComputeResource.DVSSetting</nested-type-id-ref>
      <nested-type-id-ref>vim.ClusterComputeResource.HCIWorkflowState</nested-type-id-ref>
      <nested-type-id-ref>vim.ClusterComputeResource.HostConfigurationProfile</nested-type-id-ref>
      <nested-type-id-ref>vim.ClusterComputeResource.HCIConfigInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.ClusterComputeResource.ClusterConfigResult</nested-type-id-ref>
      <nested-type-id-ref>vim.ClusterComputeResource.DvsProfile</nested-type-id-ref>
      <nested-type-id-ref>vim.ClusterComputeResource.VCProfile</nested-type-id-ref>
      <nested-type-id-ref>vim.ClusterComputeResource.HCIConfigSpec</nested-type-id-ref>
      <nested-type-id-ref>vim.ClusterComputeResource.HostVmkNicInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.ClusterComputeResource.HostConfigurationInput</nested-type-id-ref>
      <nested-type-id-ref>vim.ClusterComputeResource.ValidationResultBase</nested-type-id-ref>
      <nested-type-id-ref>vim.ClusterComputeResource.HostConfigurationValidation</nested-type-id-ref>
      <nested-type-id-ref>vim.ClusterComputeResource.DVSConfigurationValidation</nested-type-id-ref>
   <method name="ConfigureHCI"
      vmodl-name="configureHCI"
      version-id-ref="vim.version.version13"
      type-id-ref="vim.ClusterComputeResource.ClusterConfigResult"
      is-task="true"
      >
      <description-html>
         <![CDATA[Configures the cluster.

  This API requires Host.Inventory.EditCluster privilege on the cluster
  and the hosts; additional privileges might be required depending on the
  inputs.

  This operation is only allowed on a cluster that was created
  with the HCI workflow.

  Before calling this method, it is recommended that
  <a href="vim.ClusterComputeResource.html#validateHCIConfiguration">ValidateHCIConfiguration</a> is
  invoked with the DvsProfile objects listed in
  HCIConfigSpec#dvsProf along with the hosts listed in
  HostConfigurationInput to validate that
  the desired network settings can be applied correctly.]]>
      </description-html>
      <parameter name="clusterSpec" type-id-ref="vim.ClusterComputeResource.HCIConfigSpec"
      vmodl-name="clusterSpec"
      version-id-ref="vim.version.version13"
      privilege="clusterSpec"
      >
      <description-html>
         <![CDATA[Specification to configure the cluster,
         see <a href="vim.ClusterComputeResource.HCIConfigSpec.html">ClusterComputeResourceHCIConfigSpec</a>
         for details. The <a href="vim.DistributedVirtualSwitch.html">DistributedVirtualSwitch</a> and
         <a href="vim.dvs.DistributedVirtualPortgroup.html">DistributedVirtualPortgroup</a> objects contained
         within the specification must be in the same datacenter as the
         cluster. Specify HCIConfigSpec#vSanConfigSpec only when
         vSan is enabled on the cluster.]]>
      </description-html>
      </parameter>
      <parameter name="hostInputs" type-id-ref="vim.ClusterComputeResource.HostConfigurationInput"
      vmodl-name="hostInputs"
      version-id-ref="vim.version.version13"
      is-array="true"
      is-optional="true"
      privilege="hostInputs"
      >
      <description-html>
         <![CDATA[Inputs to configure each host in the cluster,
         see <a href="vim.ClusterComputeResource.HostConfigurationInput.html">ClusterComputeResourceHostConfigurationInput</a>
         for details. Hosts in this list should be part of the cluster and
         should be in maintenance mode for them to be configured per
         specification. If this parameter is not specified, the API
         operates on all the hosts in the cluster. Hosts which were not
         configured due to not being in maintenance
         mode will be returned in ClusterConfigResult#failedHosts.]]>
      </description-html>
      </parameter>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to
        monitor the operation. The <a href="vim.TaskInfo.html#result">result</a> property
        in the <a href="vim.Task.html">Task</a> contains a ClusterConfigResult
        object, which upon completion will contain a list of hosts which
        were successfully configured and a list of hosts
        which could not be configured.]]>
      </task-description-html>
   </method>
   <method name="ExtendHCI"
      vmodl-name="extendHCI"
      version-id-ref="vim.version.version13"
      type-id-ref="vim.ClusterComputeResource.ClusterConfigResult"
      is-task="true"
      >
      <description-html>
         <![CDATA[Extend an existing HCI cluster.

  This API requires Host.Inventory.EditCluster privilege on the cluster
  and the hosts, additional privileges might be required depending on the
  inputs.]]>
      </description-html>
      <parameter name="hostInputs" type-id-ref="vim.ClusterComputeResource.HostConfigurationInput"
      vmodl-name="hostInputs"
      version-id-ref="vim.version.version13"
      is-array="true"
      is-optional="true"
      privilege="hostInputs"
      >
      <description-html>
         <![CDATA[Inputs to configure specified set of hosts in the
         cluster. See
         <a href="vim.ClusterComputeResource.HostConfigurationInput.html">ClusterComputeResourceHostConfigurationInput</a>
         for details. Hosts in this list should be part of the cluster and
         should be in maintenance mode for them to be configured per
         specification. Hosts which were not configured due to not
         being in maintenance mode will be returned in
         ClusterConfigResult#failedHosts. Specify
         HostConfigurationInput#hostVmkNics only if <a href="vim.ClusterComputeResource.HCIConfigInfo.html#dvsSetting">dvsSetting</a>
         is set.]]>
      </description-html>
      </parameter>
      <parameter name="vSanConfigSpec" type-id-ref="vim.SDDCBase"
      vmodl-name="vSanConfigSpec"
      version-id-ref="vim.version.version13"
      is-optional="true"
      privilege="vSanConfigSpec"
      >
      <description-html>
         <![CDATA[Specification to configure vSAN on specified set of
         hosts. See vim.vsan.ReconfigSpec for details. This parameter
         should be specified only when vSan is enabled on the cluster.]]>
      </description-html>
      </parameter>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to
        monitor the operation. The <a href="vim.TaskInfo.html#result">result</a> property
        in the <a href="vim.Task.html">Task</a> contains a ClusterConfigResult
        object, which upon successful completion would contain the list
        of hosts which couldn't be configured and a list of hosts which
        were successfully configured. This API can be called only after
        the cluster is configured using <a href="vim.ClusterComputeResource.html#configureHCI">ConfigureHCI_Task</a> and requires
        HCIConfigInfo#workflowState to be "done".]]>
      </task-description-html>
   </method>
   <method name="AbandonHciWorkflow"
      vmodl-name="AbandonHciWorkflow"
      version-id-ref="vim.version.version13"
      privilege="Host.Inventory.EditCluster"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Opt out of the HCI workflow. This operation is only allowed on a cluster
 that was created with the HCI workflow.
 When the cluster is created, but still unconfigured, the
 <a href="vim.ClusterComputeResource.HCIConfigInfo.html#workflowState">workflowState</a>
 is "in_progress". The AbandonHciWorkflow method may be called at any time before
 cluster configuration begins; it is not possible to abandon the workflow
 during the configuration procedure.]]>
      </description-html>
      <fault type-id-ref="vim.fault.InvalidState">
      </fault>
   </method>
   <method name="ValidateHCIConfiguration"
      vmodl-name="validateHCIConfiguration"
      version-id-ref="vim.version.version13"
      is-array="true"
      is-optional="true"
      privilege="System.Read"
      type-id-ref="vim.ClusterComputeResource.ValidationResultBase"
      >
      <description-html>
         <![CDATA[Validate HCI configuration in pre-configure and post-configure use-cases.

  <ol>
  <li>
  pre-configure use-case: Validates the HCI configuration to be applied on
  the cluster. A successful validation in this case means the HCIConfigSpec
  can be applied without errors on the cluster using
  <a href="vim.ClusterComputeResource.html#configureHCI">ConfigureHCI_Task</a> or
  <a href="vim.ClusterComputeResource.html#extendHCI">ExtendHCI_Task</a><br></br>
  These are the things the API validates:
  <ol>
  <li>
  When providing a set of physical adapters in the
  <a href="vim.ClusterComputeResource.HCIConfigSpec.html#dvsProf">dvsProf</a> argument,
  the API validates that all the adapters should be present on all the
  hosts to be validated. The adapters should either be unmapped or mapped
  to the same vSwitch across hosts. In addition to this, if the adapters
  are connected to a <a href="vim.DistributedVirtualSwitch.html">DistributedVirtualSwitch</a>, it should be
  exactly the same way as specified in the
  <a href="vim.ClusterComputeResource.HCIConfigSpec.html#dvsProf">dvsProf</a> or in the
  <a href="vim.ClusterComputeResource.HCIConfigInfo.html#dvsSetting">dvsSetting</a>.
  </li>
  <li>
  The API will also validate that the ESXi versions of the hosts are
  compatible with the version of the <a href="vim.DistributedVirtualSwitch.html">DistributedVirtualSwitch</a>
  being created.
  </li>
  </ol>
  </li>

  <li>
  post-configure case: Validate the cluster has been configured correctly
  as per the <a href="vim.ClusterComputeResource.HCIConfigInfo.html">ClusterComputeResourceHCIConfigInfo</a> for the
  cluster. In this case, the API should be invoked with both params omitted
  as the intent is to validate all hosts in the cluster using the existing
  <a href="vim.ClusterComputeResource.HCIConfigInfo.html">ClusterComputeResourceHCIConfigInfo</a>

  </li>
  </ol>]]>
      </description-html>
      <parameter name="hciConfigSpec" type-id-ref="vim.ClusterComputeResource.HCIConfigSpec"
      vmodl-name="hciConfigSpec"
      version-id-ref="vim.version.version13"
      is-optional="true"
      privilege="hciConfigSpec"
      >
      <description-html>
         <![CDATA[The <a href="vim.ClusterComputeResource.HCIConfigSpec.html">ClusterComputeResourceHCIConfigSpec</a>
         to be used for validating the hosts. If not specified, the
         existing <a href="vim.ClusterComputeResource.HCIConfigInfo.html">ClusterComputeResourceHCIConfigInfo</a> of the
         cluster will be used.<br></br>
         Note:- This param must be omitted for post-configure validation.]]>
      </description-html>
      </parameter>
      <parameter name="hosts" type-id-ref="vim.HostSystem"
      vmodl-name="hosts"
      version-id-ref="vim.version.version13"
      is-array="true"
      is-optional="true"
      privilege="hosts"
      >
      <description-html>
         <![CDATA[The set of hosts to be validated. If not specified, the set
         of existing hosts in the cluster will be used.<br></br>
         Note:- This param must be omitted for post-configure validation.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.InvalidState">
      </fault>
      <return-value-description-html>
         <![CDATA[A list of configuration errors. A non-empty list indicates
          validation has failed.]]>
      </return-value-description-html>
   </method>
   <method name="ReconfigureCluster"
      vmodl-name="reconfigure"
      is-deprecated="true"
      privilege="Host.Inventory.EditCluster"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Reconfigures a cluster.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of VI API 2.5, use <a href="vim.ComputeResource.html#reconfigureEx">ReconfigureComputeResource_Task</a>.]]>
      </deprecated-html>
      <parameter name="spec" type-id-ref="vim.cluster.ConfigSpec"
      vmodl-name="spec"
      version-id-ref="vim.version.version1"
      privilege="spec"
      >
      <description-html>
         <![CDATA[A set of configuration changes to apply to the cluster. The
              specification can be a complete set of changes or a partial set of
              changes, applied incrementally.]]>
      </description-html>
      </parameter>
      <parameter name="modify" type-id-ref="BOOLEAN"
      vmodl-name="modify"
      version-id-ref="vim.version.version1"
      privilege="modify"
      >
      <description-html>
         <![CDATA[Flag to specify whether the specification ("spec") should
                be applied incrementally. If "modify" is false and the
                operation succeeds, then the configuration of the cluster
                matches the specification exactly; in this case any unset
                portions of the specification will result in unset or
                default portions of the configuration.]]>
      </description-html>
      </parameter>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to monitor the
        operation.]]>
      </task-description-html>
   </method>
   <method name="ApplyRecommendation"
      vmodl-name="applyRecommendation"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Applies a recommendation from the drsRecommendation or the
  recommendation list. Each recommendation can be applied only
  once.
  <p>
  resource.applyRecommendation privilege is required if the recommendation
  is DRS migration or power management recommendations.
  <p>]]>
      </description-html>
      <parameter name="key" type-id-ref="java.lang.String"
      vmodl-name="key"
      version-id-ref="vim.version.version1"
      privilege="key"
      >
      <description-html>
         <![CDATA[The key field of the DrsRecommendation or Recommendation.]]>
      </description-html>
      </parameter>
   </method>
   <method name="CancelRecommendation"
      vmodl-name="cancelRecommendation"
      version-id-ref="vim.version.version6"
      privilege="System.Read"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Cancels a recommendation.
  <p>]]>
      </description-html>
      <parameter name="key" type-id-ref="java.lang.String"
      vmodl-name="key"
      version-id-ref="vim.version.version6"
      privilege="key"
      >
      <description-html>
         <![CDATA[The key field of the Recommendation.]]>
      </description-html>
      </parameter>
   </method>
   <method name="RecommendHostsForVm"
      vmodl-name="recommendHostsForVm"
      is-deprecated="true"
      is-array="true"
      is-optional="true"
      privilege="System.Read"
      type-id-ref="vim.cluster.HostRecommendation"
      >
      <description-html>
         <![CDATA[Gets a recommendation for where to power on, resume, revert
  from powered-off state to powered on state, or to migrate a
  specific virtual machine. If no host is found, an empty list is
  returned.
  <p>
  The type of operation is implied by the state of the virtual machine. Returned
  hosts are intended for power-on or resume if the virtual machine is powered-off or
  suspended. However, if the virtual machine is powered-on, the request is assumed
  to be for migrating a virtual machine into a DRS enabled cluster. In that case,
  the ResourcePool argument should be specified and the ResourcePool and the virtual
  machine cannot be in the same cluster.
  <p>]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of VI API 2.5, use <a href="vim.Datacenter.html#powerOnVm">PowerOnMultiVM_Task</a>.
  <a href="vim.ClusterComputeResource.html#recommendHostsForVm">RecommendHostsForVm</a> cannot make  any recommendations if DRS cannot
  find the specified host in the cluster.
  With <a href="vim.Datacenter.html#powerOnVm">PowerOnMultiVM_Task</a>, DRS attempts to migrate virtual machines
  and power on hosts in standby mode, given the same conditions.
  <p>]]>
      </deprecated-html>
      <parameter name="vm" type-id-ref="vim.VirtualMachine"
      vmodl-name="vm"
      version-id-ref="vim.version.version1"
      privilege="vm"
      >
      <description-html>
         <![CDATA[Specifies the virtual machine for which the user is requesting a
            recommendations.]]>
      </description-html>
      </parameter>
      <parameter name="pool" type-id-ref="vim.ResourcePool"
      vmodl-name="pool"
      version-id-ref="vim.version.version1"
      is-optional="true"
      privilege="pool"
      >
      <description-html>
         <![CDATA[Specifies the ResourcePool into which the virtual machine is to be
            migrated. If the virtual machine is powered-on, this argument must be
            specified and it is relevant only when the virtual machine is
            powered-on. This ResourcePool cannot be in the same cluster as the
            virtual machine.]]>
      </description-html>
      </parameter>
      <return-value-description-html>
         <![CDATA[An array of HostRecommendation ordered by their rating.]]>
      </return-value-description-html>
   </method>
   <method name="AddHost"
      vmodl-name="addHost"
      privilege="Host.Inventory.AddHostToCluster"
      type-id-ref="vim.HostSystem"
      is-task="true"
      >
      <description-html>
         <![CDATA[Adds a host to the cluster. The hostname must be either an IP address, such as
 192.168.0.1, or a DNS resolvable name. DNS names may be fully qualified names,
 such as host1.domain1.com, or a short name such as host1, providing host1 resolves
 to host1.domain1.com. The system uses DNS to resolve short names to fully qualified
 names. If the cluster supports nested resource pools and the user specifies the
 optional ResourcePool argument, then the host's root resource pool becomes the
 specified resource pool. The stand-alone host resource hierarchy is imported into
 the new nested resource pool.
 <p>
 If the cluster does not support nested resource pools, then the stand-alone host
 resource hierarchy is discarded and all virtual machines on the host are put
 under the cluster's root resource pool.

 <p>
 In addition to the Host.Inventory.AddHostToCluster and
 Resource.AssignVMToPool privileges, it requires System.View privilege on
 the VM folder that the VMs of the host will be placed on.]]>
      </description-html>
      <parameter name="spec" type-id-ref="vim.host.ConnectSpec"
      vmodl-name="spec"
      version-id-ref="vim.version.version1"
      privilege="spec"
      >
      <description-html>
         <![CDATA[Specifies the parameters needed to add a single host.]]>
      </description-html>
      </parameter>
      <parameter name="asConnected" type-id-ref="BOOLEAN"
      vmodl-name="asConnected"
      version-id-ref="vim.version.version1"
      privilege="asConnected"
      >
      <description-html>
         <![CDATA[Flag to specify whether or not the host should be connected
                     immediately after it is added. The host will not be added if
                     a connection attempt is made and fails.]]>
      </description-html>
      </parameter>
      <parameter name="resourcePool" type-id-ref="vim.ResourcePool"
      vmodl-name="resourcePool"
      version-id-ref="vim.version.version1"
      is-optional="true"
      privilege="resourcePool"
      >
      <description-html>
         <![CDATA[the resource pool for the root resource pool from the host.]]>
      </description-html>
      </parameter>
      <parameter name="license" type-id-ref="java.lang.String"
      vmodl-name="license"
      version-id-ref="vim.version.version1"
      is-optional="true"
      privilege="license"
      >
      <description-html>
         <![CDATA[Provide a licenseKey or licenseKeyType. See <a href="vim.LicenseManager.html">LicenseManager</a>]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.InvalidLogin">
      <fault-description-html>
         <![CDATA[if "asConnected" is specified but authentication with the
          new host fails.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.HostConnectFault">
      <fault-description-html>
         <![CDATA[if an error occurred when connecting to a host.
          Typically, a more specific subclass, such as AlreadyBeingManaged,
          is thrown.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.DuplicateName">
      <fault-description-html>
         <![CDATA[if another host in the same cluster has the name.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.AlreadyBeingManaged">
      <fault-description-html>
         <![CDATA[if the host is already being managed by a
          VirtualCenter server.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.NoHost">
      <fault-description-html>
         <![CDATA[if the host cannot be contacted.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.NotSupportedHost">
      <fault-description-html>
         <![CDATA[if the host is running a software version that does
          not support clustering features. It may still be possible to add
          the host as a stand-alone host.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.TooManyHosts">
      <fault-description-html>
         <![CDATA[if no additional hosts can be added to the cluster.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.AgentInstallFailed">
      <fault-description-html>
         <![CDATA[if there is an error installing the VirtualCenter agent
          on the host.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.AlreadyConnected">
      <fault-description-html>
         <![CDATA[if asConnected is true and the host is already
          connected to VirtualCenter.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.SSLVerifyFault">
      <fault-description-html>
         <![CDATA[if the host certificate could not be authenticated]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.GatewayNotFound">
      <fault-description-html>
         <![CDATA[if the host is managed via host gateway and
          no available gateway server is found for the given parameters]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.GatewayNotReachable">
      <fault-description-html>
         <![CDATA[if the host is managed via host gateway
          and vCenter Server cannot establish a network connection to the
          gateway server, or verify the gateway server's identity]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.GatewayOperationRefused">
      <fault-description-html>
         <![CDATA[if the gateway server cannot accept
          more host connections]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.GatewayHostNotReachable">
      <fault-description-html>
         <![CDATA[if the host is managed via host
          gateway and the gateway server cannot connect to the host]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.GatewayToHostTrustVerifyFault">
      <fault-description-html>
         <![CDATA[if the host is managed via host gateway
          and the gateway server cannot verify that the host is trusted]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.GatewayToHostAuthFault">
      <fault-description-html>
         <![CDATA[if the host is managed via host gateway
          and the gateway server needs additional information to
          authenticate before the host]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.GatewayConnectFault">
      <fault-description-html>
         <![CDATA[if the host is managed via host gateway
          and any error occurred during the communication with the gateway]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[the newly added HostSystem.]]>
      </return-value-description-html>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to monitor the
        operation. The <a href="vim.TaskInfo.html#result">result</a> property in the
        <a href="vim.Task.html">Task</a> contains the newly added <a href="vim.HostSystem.html">HostSystem</a> upon
        success.]]>
      </task-description-html>
   </method>
   <method name="MoveInto"
      vmodl-name="moveInto"
      privilege="Host.Inventory.EditCluster"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Moves an existing host into a cluster. The host must be part of the same
  datacenter, and if the host is part of a cluster, the host must be in maintenance
  mode.
  <p>
  If the host is part of a stand-alone ComputeResource, then the stand-alone
  ComputeResource is removed as part of this operation.
  <p>
  All virtual machines associated with a host, regardless of whether or not they
  are running, are moved with the host into the cluster. If there are virtual
  machines that should not be moved, then migrate those virtual machines off the
  host before initiating this operation.
  <p>
  For stand-alone hosts, the host resource pool hierarchy is discarded in this call.
  To preserve a host resource pools from a stand-alone host, call moveHostInt,
  specifying an optional resource pool. This operation is transactional only with
  respect to each individual host. Hosts in the set are moved sequentially and are
  committed, one at a time. If a failure is detected, then the method terminates
  with an exception. Since hosts are moved one at a time, if this operation fails
  while in the process of moving multiple hosts, some hosts are left unmoved.
  <p>
  In addition to the privileges mentioned, the user must also hold
  Host.Inventory.EditCluster on the host's source ComputeResource object.]]>
      </description-html>
      <parameter name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      version-id-ref="vim.version.version1"
      is-array="true"
      privilege="host"
      >
      <description-html>
         <![CDATA[The list of hosts to move into the cluster.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.DuplicateName">
      <fault-description-html>
         <![CDATA[if the host is already in the cluster]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.TooManyHosts">
      <fault-description-html>
         <![CDATA[if no additional hosts can be added to the cluster.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if a host is already part of a cluster and is not in
          maintenance mode.]]>
      </fault-description-html>
      </fault>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to monitor the
        operation.]]>
      </task-description-html>
   </method>
   <method name="MoveHostInto"
      vmodl-name="moveHostInto"
      privilege="Host.Inventory.EditCluster"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Moves an existing host into a cluster. The host must be part of the same
  datacenter, and if the host is part of a cluster, the host must be in maintenance
  mode.
  <p>
  If the host is a stand-alone host, the stand-alone ComputeResource is removed
  as part of this operation.
  <p>
  All virtual machines associated with the host, regardless of whether or not they
  are running, are moved with the host into the cluster. If there are virtual
  machines that should not be moved, then migrate those virtual machines off the
  host before initiating this operation.
  <p>
  If the host is a stand-alone host, the cluster supports nested resource pools,
  and the user specifies the optional resourcePool argument, then the stand-alone
  host's root resource pool becomes the specified resource pool and the stand-alone
  host resource hierarchy is imported into the new nested resource pool. If the
  cluster does not support nested resource pools or the resourcePool argument is not
  specified, then the stand-alone host resource hierarchy is ignored.
  <p>]]>
      </description-html>
      <parameter name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      version-id-ref="vim.version.version1"
      privilege="host"
      >
      <description-html>
         <![CDATA[The list of hosts to move into the cluster.]]>
      </description-html>
      </parameter>
      <parameter name="resourcePool" type-id-ref="vim.ResourcePool"
      vmodl-name="resourcePool"
      version-id-ref="vim.version.version1"
      is-optional="true"
      privilege="resourcePool"
      >
      <description-html>
         <![CDATA[The resource pool to match the root resource pool of
          stand-alone hosts. This argument has no effect if the host is part of a
          cluster.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.TooManyHosts">
      <fault-description-html>
         <![CDATA[if no additional hosts can be added to the cluster.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if a host is already part of a cluster and is not in
          maintenance mode.]]>
      </fault-description-html>
      </fault>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to monitor the
        operation.]]>
      </task-description-html>
   </method>
   <method name="RefreshRecommendation"
      vmodl-name="refreshRecommendation"
      version-id-ref="vim.version.version2"
      privilege="Host.Inventory.EditCluster"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Make DRS invoke again and return a new list of recommendations.
  Concurrent "refresh" requests may be combined together and trigger only
  one DRS invocation.

  <p>
  The recommendations generated is stored at <a href="vim.ClusterComputeResource.html#recommendation">Recommendation</a>.]]>
      </description-html>
   </method>
   <method name="EvcManager"
      vmodl-name="evcManager"
      version-id-ref="vim.version.version10"
      is-optional="true"
      privilege="System.Read"
      type-id-ref="vim.cluster.EVCManager"
      >
      <description-html>
         <![CDATA[A managed object that controls Enhanced vMotion Compatibility mode for
  this cluster.]]>
      </description-html>
   </method>
   <method name="RetrieveDasAdvancedRuntimeInfo"
      vmodl-name="retrieveDasAdvancedRuntimeInfo"
      version-id-ref="vim.version.version5"
      is-optional="true"
      privilege="System.Read"
      type-id-ref="vim.cluster.DasAdvancedRuntimeInfo"
      >
      <description-html>
         <![CDATA[Retrieve DAS advanced runtime info for this cluster.]]>
      </description-html>
   </method>
   <method name="ClusterEnterMaintenanceMode"
      vmodl-name="enterMaintenanceMode"
      version-id-ref="vim.version.version7"
      privilege="System.View"
      type-id-ref="vim.cluster.EnterMaintenanceResult"
      >
      <description-html>
         <![CDATA[The API takes a list of hosts in the cluster as input, and
  returns a list of hosts in "ClusterMaintenanceResult" that the
  server can successfully evacuate given the existing
  constraints in the cluster, such as HA, FT, Vmotion
  compatibility, reservations, affinity rules, etc.

  The client is allowed to pass all hosts in the cluster to the
  API, even though all of them cannot enter maintenance mode at
  the same time. The list returned from the API contains the
  largest number of hosts that the server can evacuate
  simultaneously. The client can then request to enter each host
  in the returned list into maintenance mode.

  The client can specify an integer "DemandCapacityRatioTarget"
  option in the "option" parameter. The allowed values of the
  option range from 40 to 200, and the default value is 100. This
  option controls how much resource overcommitment the server
  should make in consolidating the VMs onto fewer hosts. A value
  of 100 means the server will keep the same amount of powered-on
  capacity as the current VM demands. A value less than 100 means
  undercommitted resources. A value greater than 100 means
  overcommitted resources.

  The hosts are recommended based on the inventory at the time of
  the API invocation. It is not guaranteed that the actual
  enter-maintenance tasks on the hosts will succeed, if the
  inventory changes after the API returns, or if vmotions fail
  due to unexpected conditions.  For possible exceptions thrown
  by the necessary relocate operations, see
  <a href="vim.VirtualMachine.html#migrate">MigrateVM_Task</a>.

 <p>]]>
      </description-html>
      <parameter name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      version-id-ref="vim.version.version7"
      is-array="true"
      privilege="host"
      >
      <description-html>
         <![CDATA[The array of hosts to put into maintenance mode.]]>
      </description-html>
      </parameter>
      <parameter name="option" type-id-ref="vim.option.OptionValue"
      vmodl-name="option"
      version-id-ref="vim.version.version7"
      is-array="true"
      is-optional="true"
      privilege="option"
      >
      <description-html>
         <![CDATA[An array of <a href="vim.option.OptionValue.html">OptionValue</a>
  options for this query. The specified options override the
  advanced options in <a href="vim.cluster.DrsConfigInfo.html">ClusterDrsConfigInfo</a>.]]>
      </description-html>
      </parameter>
      <return-value-description-html>
         <![CDATA[A <a href="vim.cluster.EnterMaintenanceResult.html">ClusterEnterMaintenanceResult</a> object,
  which consists of an array of recommendations for hosts that
  can be evacuated and an array of faults for hosts that cannot
  be evacuated.]]>
      </return-value-description-html>
   </method>
   <method name="PlaceVm"
      vmodl-name="placeVm"
      version-id-ref="vim.version.version10"
      privilege="System.View"
      type-id-ref="vim.cluster.PlacementResult"
      >
      <description-html>
         <![CDATA[This method returns a <a href="vim.cluster.PlacementResult.html">PlacementResult</a> object.

 This API can be invoked to ask DRS for a set of recommendations
 for moving a virtual machine and its virtual disks into a cluster.]]>
      </description-html>
      <parameter name="placementSpec" type-id-ref="vim.cluster.PlacementSpec"
      vmodl-name="placementSpec"
      version-id-ref="vim.version.version10"
      privilege="placementSpec"
      >
      <description-html>
         <![CDATA[Specification for placing a virtual machine
         and its virtual disks]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if invoked on a DRS disabled cluster.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="FindRulesForVm"
      vmodl-name="findRulesForVm"
      version-id-ref="vim.version.version10"
      is-array="true"
      is-optional="true"
      privilege="System.View"
      type-id-ref="vim.cluster.RuleInfo"
      >
      <description-html>
         <![CDATA[Finds all enabled and disabled VM-VM Affinity and Anti-Affinity rules,
  involving the given Virtual Machine.
  <p>]]>
      </description-html>
      <parameter name="vm" type-id-ref="vim.VirtualMachine"
      vmodl-name="vm"
      version-id-ref="vim.version.version10"
      privilege="vm"
      >
      <description-html>
         <![CDATA[The vm whose rules need to be looked up.]]>
      </description-html>
      </parameter>
   </method>
   <method name="StampAllRulesWithUuid"
      vmodl-name="stampAllRulesWithUuid"
      version-id-ref="vim.version.version10"
      privilege="Host.Inventory.EditCluster"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Stamp all rules in the cluster with ruleUuid.
  If a rule has ruleUuid field set, and it has a value, leave it untouched.
  If rule's ruleUuid field is unset, generate a UUID and stamp the rule.]]>
      </description-html>
   </method>
   <method name="GetResourceUsage"
      vmodl-name="getResourceUsage"
      version-id-ref="vim.version.version10"
      privilege="System.Read"
      type-id-ref="vim.cluster.ResourceUsageSummary"
      >
      <description-html>
         <![CDATA[This API can be invoked to get the current CPU, memory and storage usage
 in the cluster.]]>
      </description-html>
      <return-value-description-html>
         <![CDATA[An instance of ResourceUsageSummary with following information:
 <ol>
 <li>
 cpuCapacityMHz:  Sum of CPU capacity of all the available hosts in the
 cluster in MHz.
 <li>
 cpuUsedMHz: Sum of CPU consumed in all the available hosts in the cluster
 in MHz.
 <li>
 memCapacityMB: Sum of memory capacity of all the available hosts in the
 cluster in MB.
 <li>
 memUsedMB: Sum of memory consumed in all the available hosts in this
 cluster in MB.
 <li>
 storageCapacityMB: Total storage capacity of all the accessible datastores
 in this cluster.
 <li>
 storageUsedMB: Total storage consumed in all the accessible datastores in
 this cluster.
 </ol>]]>
      </return-value-description-html>
   </method>
   <method name="SetCryptoMode"
      vmodl-name="setCryptoMode"
      version-id-ref="vim.version.v7_0"
      privilege="Cryptographer.RegisterHost"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Set encrytion mode of the cluster.
   "onDemand" mode means the hosts will be crypto enabled when
   there are encrypted VMs created in the cluster.
   "forceEnable" means all the hosts in the cluster will be forced
   crypto enable.]]>
      </description-html>
      <parameter name="cryptoMode" type-id-ref="java.lang.String"
      vmodl-name="cryptoMode"
      version-id-ref="vim.version.v7_0"
      privilege="cryptoMode"
      >
      <description-html>
         <![CDATA[The new proposed encryption mode. It can be
                      null, "onDemand", or "forceEnable".]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vmodl.fault.InvalidRequest">
      <fault-description-html>
         <![CDATA[if feature state swith
                          VMcrypt3_Enhancement is not enabled.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vmodl.fault.InvalidArgument">
      <fault-description-html>
         <![CDATA[if cryptoMode is anything other than
                           null, "onDemand", or "forceEnable".]]>
      </fault-description-html>
      </fault>
   </method>
   </managed-object>
   <managed-object name="HostLocalAccountManager"
      type-id="vim.host.LocalAccountManager"
      vmodl-name="vim.host.LocalAccountManager"
      version-id-ref="vim.version.version1"
      >
      <description-html>
         <![CDATA[This managed object type provides an interface
  through which local accounts on a host are managed.  Note that this
  managed object applies only to applications that use a local account
  database on the host to provide authentication (ESX Server, for example).
  POSIX and win32 hosts may impose different restrictions on the password,
  ID, and description formats. POSIX host implementation may restrict the
  user or group name to be lower case letters and less than 16 characters in
  total.  It may also disallow characters such as
  ";", "\n", and so on.  In short, all the platform dependent rules and
  restrictions regarding naming of users/groups and password apply here.
  An InvalidArgument fault is thrown if any of these rules are not obeyed.]]>
      </description-html>
      <nested-type-id-ref>vim.host.LocalAccountManager.AccountSpecification</nested-type-id-ref>
      <nested-type-id-ref>vim.host.LocalAccountManager.PosixAccountSpecification</nested-type-id-ref>
   <method name="CreateUser"
      vmodl-name="createUser"
      privilege="Host.Local.ManageUserGroups"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Creates a local user account using the parameters defined in the
  <a href="vim.host.LocalAccountManager.AccountSpecification.html">HostLocalAccountManagerAccountSpecification</a>
  data object type. For POSIX hosts,
  passing <a href="vim.host.LocalAccountManager.PosixAccountSpecification.html">HostLocalAccountManagerPosixAccountSpecification</a> data object
  type allows you to control the
  format of the user ID of the user account being created.]]>
      </description-html>
      <parameter name="user" type-id-ref="vim.host.LocalAccountManager.AccountSpecification"
      vmodl-name="user"
      version-id-ref="vim.version.version1"
      privilege="user"
      >
      <description-html>
         <![CDATA[Specification of user being created.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.AlreadyExists">
      <fault-description-html>
         <![CDATA[if the specified local user account
  already exists.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="UpdateUser"
      vmodl-name="updateUser"
      privilege="Host.Local.ManageUserGroups"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Updates a local user account using the parameters defined in the
  <a href="vim.host.LocalAccountManager.AccountSpecification.html">HostLocalAccountManagerAccountSpecification</a>
  data object type.]]>
      </description-html>
      <parameter name="user" type-id-ref="vim.host.LocalAccountManager.AccountSpecification"
      vmodl-name="user"
      version-id-ref="vim.version.version1"
      privilege="user"
      >
      <description-html>
         <![CDATA[Specification of user being updated.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.UserNotFound">
      <fault-description-html>
         <![CDATA[if user is not found.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.AlreadyExists">
      <fault-description-html>
         <![CDATA[if new account specification specifies an existing
                        user's ID.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="CreateGroup"
      vmodl-name="createGroup"
      is-deprecated="true"
      privilege="Host.Local.ManageUserGroups"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Creates a local group account using the parameters defined in the
  <a href="vim.host.LocalAccountManager.AccountSpecification.html">HostLocalAccountManagerAccountSpecification</a>
  data object type.  For POSIX hosts, passing the
  <a href="vim.host.LocalAccountManager.PosixAccountSpecification.html">HostLocalAccountManagerPosixAccountSpecification</a> data object
  type allows you to control
  the group ID format of the group account being created.
  <p/>]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 5.1, local user groups are not supported
  and group specific methods will throw NotSupported.]]>
      </deprecated-html>
      <parameter name="group" type-id-ref="vim.host.LocalAccountManager.AccountSpecification"
      vmodl-name="group"
      version-id-ref="vim.version.version1"
      privilege="group"
      >
      <description-html>
         <![CDATA[Specification of group being created.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.AlreadyExists">
      <fault-description-html>
         <![CDATA[if specified local group already exists.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="RemoveUser"
      vmodl-name="removeUser"
      privilege="Host.Local.ManageUserGroups"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Removes a local user account.
  <p/>
  As of vSphere API 5.1, this operation will first try to remove all
  permissions associated with the specified account. The permissions of
  the user are removed one by one, not atomically, and the operation
  is not rolled back if the removal of some permission fails.]]>
      </description-html>
      <parameter name="userName" type-id-ref="java.lang.String"
      vmodl-name="userName"
      version-id-ref="vim.version.version1"
      privilege="userName"
      >
      <description-html>
         <![CDATA[User ID of the user account being removed.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.UserNotFound">
      <fault-description-html>
         <![CDATA[if the specified userName does not exist.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="RemoveGroup"
      vmodl-name="removeGroup"
      is-deprecated="true"
      privilege="Host.Local.ManageUserGroups"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Removes a local group account.
  <p/>]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 5.1, local user groups are not supported
  and group specific methods will throw NotSupported.]]>
      </deprecated-html>
      <parameter name="groupName" type-id-ref="java.lang.String"
      vmodl-name="groupName"
      version-id-ref="vim.version.version1"
      privilege="groupName"
      >
      <description-html>
         <![CDATA[Group ID of the group account being removed.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.UserNotFound">
      <fault-description-html>
         <![CDATA[if the specified groupName does not exist.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="AssignUserToGroup"
      vmodl-name="assignUserToGroup"
      is-deprecated="true"
      privilege="Host.Local.ManageUserGroups"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Assigns a user to a group.
  <p/>]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 5.1, local user groups are not supported
  and group specific methods will throw NotSupported.]]>
      </deprecated-html>
      <parameter name="user" type-id-ref="java.lang.String"
      vmodl-name="user"
      version-id-ref="vim.version.version1"
      privilege="user"
      >
      <description-html>
         <![CDATA[User ID of the account whose group membership is
  being assigned.]]>
      </description-html>
      </parameter>
      <parameter name="group" type-id-ref="java.lang.String"
      vmodl-name="group"
      version-id-ref="vim.version.version1"
      privilege="group"
      >
      <description-html>
         <![CDATA[Destination group account to which the user is
  being assigned.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.UserNotFound">
      <fault-description-html>
         <![CDATA[if the specified user or group does not exist.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.AlreadyExists">
      <fault-description-html>
         <![CDATA[if the user is already a member of the target group.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="UnassignUserFromGroup"
      vmodl-name="unassignUserFromGroup"
      is-deprecated="true"
      privilege="Host.Local.ManageUserGroups"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Unassigns a user from a group.
  <p/>]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 5.1, local user groups are not supported
  and group specific methods will throw NotSupported.]]>
      </deprecated-html>
      <parameter name="user" type-id-ref="java.lang.String"
      vmodl-name="user"
      version-id-ref="vim.version.version1"
      privilege="user"
      >
      <description-html>
         <![CDATA[User being unassigned from group.]]>
      </description-html>
      </parameter>
      <parameter name="group" type-id-ref="java.lang.String"
      vmodl-name="group"
      version-id-ref="vim.version.version1"
      privilege="group"
      >
      <description-html>
         <![CDATA[Group from which the user is being removed.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.UserNotFound">
      <fault-description-html>
         <![CDATA[if the specified user or group does not exist.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="ChangePassword"
      vmodl-name="changePassword"
      version-id-ref="vim.version.version14"
      privilege="System.Anonymous"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Updates the password of a local user account.]]>
      </description-html>
      <parameter name="user" type-id-ref="java.lang.String"
      vmodl-name="user"
      version-id-ref="vim.version.version14"
      privilege="user"
      >
      <description-html>
         <![CDATA[the user whose password will be changed.]]>
      </description-html>
      </parameter>
      <parameter name="oldPassword" type-id-ref="java.lang.String"
      vmodl-name="oldPassword"
      version-id-ref="vim.version.version14"
      privilege="oldPassword"
      >
      <description-html>
         <![CDATA[the user's current (old) password.]]>
      </description-html>
      </parameter>
      <parameter name="newPassword" type-id-ref="java.lang.String"
      vmodl-name="newPassword"
      version-id-ref="vim.version.version14"
      privilege="newPassword"
      >
      <description-html>
         <![CDATA[the user's new password.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.InvalidLogin">
      <fault-description-html>
         <![CDATA[if the user and oldPassword combination is not valid.]]>
      </fault-description-html>
      </fault>
   </method>
   </managed-object>
   <managed-object name="Network"
      type-id="vim.Network"
      vmodl-name="vim.Network"
      version-id-ref="vim.version.version1"
      base-type-id="vim.ManagedEntity"
      >
      <description-html>
         <![CDATA[Represents a network accessible by either hosts or virtual machines. This can be a
  physical network or a logical network, such as a VLAN.
  <p>
  Networks are created:
  <ul>
     <li>explicitly when configuring a host.
     <li>automatically when adding a host to VirtualCenter.
     <li>automatically when adding a new virtual machine to a host or to
         VirtualCenter.
  </ul>
  <p>
  To configure network access for hosts and virtual machines, use
  <a href="vim.DistributedVirtualSwitch.html">DistributedVirtualSwitch</a> and
  <a href="vim.dvs.DistributedVirtualPortgroup.html">DistributedVirtualPortgroup</a> managed objects.]]>
      </description-html>
            <property name="summary" type-id-ref="vim.Network.Summary"
      vmodl-name="summary"
      >
      <description-html>
         <![CDATA[Properties of a network.]]>
      </description-html>
      </property>

            <property name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Hosts attached to this network.]]>
      </description-html>
      </property>

            <property name="vm" type-id-ref="vim.VirtualMachine"
      vmodl-name="vm"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Virtual machines using this network.]]>
      </description-html>
      </property>

            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      >
      <description-html>
         <![CDATA[Name of this network.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.Network.Summary</nested-type-id-ref>
   <method name="DestroyNetwork"
      vmodl-name="destroyNetwork"
      is-deprecated="true"
      privilege="Network.Delete"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Removes a network. A network can be removed only if it is not used by any host or
  virtual machine.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of VI API 2.5 do not use this method. This method throws
              <a href="vim.fault.ResourceInUse.html">ResourceInUse</a>.  Networks are automatically
              removed when no longer in use, so this method is unnecessary.]]>
      </deprecated-html>
      <fault type-id-ref="vim.fault.ResourceInUse">
      <fault-description-html>
         <![CDATA[if one or more hosts or virtual machines are configured
  to use the network.]]>
      </fault-description-html>
      </fault>
   </method>
   </managed-object>
   <managed-object name="IoFilterManager"
      type-id="vim.IoFilterManager"
      vmodl-name="vim.IoFilterManager"
      version-id-ref="vim.version.version10"
      >
      <description-html>
         <![CDATA[Interface to manage IO Filters installed on the ESXi hosts and
 IO Filter configurations on virtual disks. IO Filters are customized
 filters provided by third parties to process I/Os to virtual disks.
 They can be used to provide data services such as flash caching and
 replication.

 This interface is only supported on vCenter server.]]>
      </description-html>
      <nested-type-id-ref>vim.IoFilterManager.IoFilterInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.IoFilterManager.HostIoFilterInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.IoFilterManager.OperationType</nested-type-id-ref>
      <nested-type-id-ref>vim.IoFilterManager.ClusterIoFilterInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.IoFilterManager.IoFilterType</nested-type-id-ref>
      <nested-type-id-ref>vim.IoFilterManager.QueryIssueResult</nested-type-id-ref>
   <method name="InstallIoFilter"
      vmodl-name="installIoFilter"
      is-optional="true"
      type-id-ref="vim.IoFilterManager.ClusterIoFilterInfo"
      is-task="true"
      >
      <description-html>
         <![CDATA[Install an IO Filter on a compute resource.
 IO Filters can only be installed on a cluster.]]>
      </description-html>
      <parameter name="vibUrl" type-id-ref="java.lang.String"
      vmodl-name="vibUrl"
      version-id-ref="vim.version.version10"
      privilege="vibUrl"
      >
      <description-html>
         <![CDATA[The URL that points to the IO Filter VIB package.]]>
      </description-html>
      </parameter>
      <parameter name="compRes" type-id-ref="vim.ComputeResource"
      vmodl-name="compRes"
      version-id-ref="vim.version.version10"
      privilege="compRes"
      >
      <description-html>
         <![CDATA[The compute resource to install the IO Filter on.
                "compRes" must be a cluster.
 <p>]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.AlreadyExists">
      <fault-description-html>
         <![CDATA[if another VIB with the same name and vendor has
                       been installed.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[An instance of <a href="vim.IoFilterManager.ClusterIoFilterInfo.html">ClusterIoFilterInfo</a>.
 <p>]]>
      </return-value-description-html>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to monitor
 the operation. The task is set to success if the filter is installed on
 all the hosts in the compute resource successfully. If the task fails, first
 check <a href="vim.TaskInfo.html#error">error</a> to see the error. If the error indicates that
 installation has failed on the hosts, use <a href="vim.IoFilterManager.html#queryIssue">QueryIoFilterIssues</a>
 to get the detailed errors occurred during installation on each host.
 <p>
 The dynamic privilege check ensures that the user must have
 Host.Config.Patch privilege for all the hosts in the compute resource.
 <p>]]>
      </task-description-html>
   </method>
   <method name="UninstallIoFilter"
      vmodl-name="uninstallIoFilter"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Uninstall an IO Filter from a compute resource.
 <p>]]>
      </description-html>
      <parameter name="filterId" type-id-ref="java.lang.String"
      vmodl-name="filterId"
      version-id-ref="vim.version.version10"
      privilege="filterId"
      >
      <description-html>
         <![CDATA[ID of the filter.]]>
      </description-html>
      </parameter>
      <parameter name="compRes" type-id-ref="vim.ComputeResource"
      vmodl-name="compRes"
      version-id-ref="vim.version.version10"
      privilege="compRes"
      >
      <description-html>
         <![CDATA[The compute resource to uninstall the IO Filter from.
                "compRes" must be a cluster.
 <p>]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[if the filter is not installed on the cluster.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.FilterInUse">
      <fault-description-html>
         <![CDATA[if the filter to be uninstalled is being used by a
                     virtual disk.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if "compRes" is a cluster and DRS is disabled
                      on the cluster.]]>
      </fault-description-html>
      </fault>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to monitor
 the operation. The task is set to success if the filter is uninstalled from
 all the hosts in the compute resource successfully. If the task fails, first
 check <a href="vim.TaskInfo.html#error">error</a> to see the error. If the error indicates that
 uninstallation has failed on the hosts, use <a href="vim.IoFilterManager.html#queryIssue">QueryIoFilterIssues</a>
 to get the detailed errors occurred during uninstallation on each host.
 <p>
 The dynamic privilege check ensures that the user must have
 Host.Config.Maintenance and Host.Config.Patch privilege for
 all the hosts in the compute resource.
 <p>]]>
      </task-description-html>
   </method>
   <method name="UpgradeIoFilter"
      vmodl-name="upgradeIoFilter"
      is-optional="true"
      type-id-ref="vim.IoFilterManager.ClusterIoFilterInfo"
      is-task="true"
      >
      <description-html>
         <![CDATA[Upgrade an IO Filter on a compute resource.]]>
      </description-html>
      <parameter name="filterId" type-id-ref="java.lang.String"
      vmodl-name="filterId"
      version-id-ref="vim.version.version10"
      privilege="filterId"
      >
      <description-html>
         <![CDATA[The filter to be upgraded.]]>
      </description-html>
      </parameter>
      <parameter name="compRes" type-id-ref="vim.ComputeResource"
      vmodl-name="compRes"
      version-id-ref="vim.version.version10"
      privilege="compRes"
      >
      <description-html>
         <![CDATA[The compute resource that the filter is installed on.
                "compRes" must be a cluster.]]>
      </description-html>
      </parameter>
      <parameter name="vibUrl" type-id-ref="java.lang.String"
      vmodl-name="vibUrl"
      version-id-ref="vim.version.version10"
      privilege="vibUrl"
      >
      <description-html>
         <![CDATA[The URL that points to the new IO Filter VIB package.
 <p>]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[if the filter specified by "filterId" is
                  not installed on the cluster.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if "compRes" is a cluster and DRS is disabled
                      on the cluster.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[An instance of <a href="vim.IoFilterManager.ClusterIoFilterInfo.html">ClusterIoFilterInfo</a>.
 <p>]]>
      </return-value-description-html>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to monitor
 the operation. The task is set to success if all the hosts in the compute
 resource are upgraded successfully. If the task fails, first check
 <a href="vim.TaskInfo.html#error">error</a> to see the error. If the error indicates that
 upgrade has failed on the hosts, use <a href="vim.IoFilterManager.html#queryIssue">QueryIoFilterIssues</a>
 to get the detailed errors occurred during upgrade on each host.
 <p>
 The dynamic privilege check ensures that the user must have
 Host.Config.Maintenance and Host.Config.Patch privileges for
 all the hosts in the compute resource.
 <p>]]>
      </task-description-html>
   </method>
   <method name="QueryIoFilterIssues"
      vmodl-name="queryIssue"
      privilege="System.View"
      type-id-ref="vim.IoFilterManager.QueryIssueResult"
      >
      <description-html>
         <![CDATA[Return the issues that occurred during the last installation/uninstallation/upgrade
 operation of an IO Filter on a compute resource.]]>
      </description-html>
      <parameter name="filterId" type-id-ref="java.lang.String"
      vmodl-name="filterId"
      version-id-ref="vim.version.version10"
      privilege="filterId"
      >
      <description-html>
         <![CDATA[The filter.]]>
      </description-html>
      </parameter>
      <parameter name="compRes" type-id-ref="vim.ComputeResource"
      vmodl-name="compRes"
      version-id-ref="vim.version.version10"
      privilege="compRes"
      >
      <description-html>
         <![CDATA[The compute resource.
                "compRes" must be a cluster.
 <p>]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[if the filter specified by "filterId" is
                  not installed on the cluster.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[A <a href="vim.IoFilterManager.QueryIssueResult.html">IoFilterQueryIssueResult</a> object.
 <p>]]>
      </return-value-description-html>
   </method>
   <method name="QueryIoFilterInfo"
      vmodl-name="queryIoFilterInfo"
      is-array="true"
      is-optional="true"
      privilege="System.View"
      type-id-ref="vim.IoFilterManager.ClusterIoFilterInfo"
      >
      <description-html>
         <![CDATA[Return the information for the IO Filters that are installed on the cluster.]]>
      </description-html>
      <parameter name="compRes" type-id-ref="vim.ComputeResource"
      vmodl-name="compRes"
      version-id-ref="vim.version.version10"
      privilege="compRes"
      >
      <description-html>
         <![CDATA[The compute resource.
                "compRes" must be a cluster.
 <p>]]>
      </description-html>
      </parameter>
      <return-value-description-html>
         <![CDATA[An array of <a href="vim.IoFilterManager.ClusterIoFilterInfo.html">ClusterIoFilterInfo</a> objects
         that contain the information for the IO Filters that are installed
         on the compute resource.]]>
      </return-value-description-html>
   </method>
   <method name="ResolveInstallationErrorsOnHost"
      vmodl-name="resolveInstallationErrorsOnHost"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Resolve the errors occurred during an installation/uninstallation/upgrade
 operation of an IO Filter on a host.
 <p>
 Depending on the nature of the installation failure, vCenter will take the
 appropriate actions to resolve it. For example, retry or resume
 installation.
 <p>]]>
      </description-html>
      <parameter name="filterId" type-id-ref="java.lang.String"
      vmodl-name="filterId"
      version-id-ref="vim.version.version10"
      privilege="filterId"
      >
      <description-html>
         <![CDATA[ID of the filter.]]>
      </description-html>
      </parameter>
      <parameter name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      version-id-ref="vim.version.version10"
      privilege="host"
      >
      <description-html>
         <![CDATA[The host.
 <p>]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[if the filter specified by "filterId" is
                  not installed on the cluster.]]>
      </fault-description-html>
      </fault>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to monitor
 the operation. The task is set to success if all the errors related to the
 filter are resolved on the host. If the task fails, first check
 <a href="vim.TaskInfo.html#error">error</a> to see the error. If the error indicates that
 issues persist on the host, use <a href="vim.IoFilterManager.html#queryIssue">QueryIoFilterIssues</a>
 to get the detailed errors on the host.
 <p>
 The dynamic privilege check will ensure that the appropriate privileges
 are acquired based on the remediation actions. For example,
 Host.Config.Maintenance and Host.Config.Patch privilege must required for
 upgrading a VIB.
 <p>]]>
      </task-description-html>
   </method>
   <method name="ResolveInstallationErrorsOnCluster"
      vmodl-name="resolveInstallationErrorsOnCluster"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Resolve the errors occurred during an installation/uninstallation/upgrade
 operation of an IO Filter on a cluster.
 <p>
 Depending on the nature of the installation failure, vCenter will take the
 appropriate actions to resolve it. For example, retry or resume
 installation.
 <p>]]>
      </description-html>
      <parameter name="filterId" type-id-ref="java.lang.String"
      vmodl-name="filterId"
      version-id-ref="vim.version.version10"
      privilege="filterId"
      >
      <description-html>
         <![CDATA[ID of the filter.]]>
      </description-html>
      </parameter>
      <parameter name="cluster" type-id-ref="vim.ClusterComputeResource"
      vmodl-name="cluster"
      version-id-ref="vim.version.version10"
      privilege="cluster"
      >
      <description-html>
         <![CDATA[The cluster.
 <p>]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[if the filter specified by "filterId" is
                  not installed on the cluster.]]>
      </fault-description-html>
      </fault>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to monitor
 the operation. The task is set to success if all the errors related to the
 filter are resolved on the cluster. If the task fails, first check
 <a href="vim.TaskInfo.html#error">error</a> to see the error. If the error indicates that
 issues persist on the cluster, use <a href="vim.IoFilterManager.html#queryIssue">QueryIoFilterIssues</a>
 to get the detailed errors on the hosts in the cluster.
 <p>
 The dynamic privilege check will ensure that the appropriate privileges
 must be acquired for all the hosts in the cluster based on the remediation
 actions. For example, Host.Config.Maintenance privilege and Host.Config.Patch
 privileges must be required for upgrading a VIB.
 <p>]]>
      </task-description-html>
   </method>
   <method name="QueryDisksUsingFilter"
      vmodl-name="queryDisksUsingFilter"
      is-array="true"
      privilege="System.View"
      type-id-ref="vim.vm.device.VirtualDiskId"
      >
      <description-html>
         <![CDATA[Return the list of virtual disks that use an IO Filter installed on
 a compute resource.
 <p>]]>
      </description-html>
      <parameter name="filterId" type-id-ref="java.lang.String"
      vmodl-name="filterId"
      version-id-ref="vim.version.version10"
      privilege="filterId"
      >
      <description-html>
         <![CDATA[ID of the filter.]]>
      </description-html>
      </parameter>
      <parameter name="compRes" type-id-ref="vim.ComputeResource"
      vmodl-name="compRes"
      version-id-ref="vim.version.version10"
      privilege="compRes"
      >
      <description-html>
         <![CDATA[The compute resource that the filter has been installed on.
                "compRes" must be a cluster.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[if the filter specified by "filterId" is
                  not installed on the cluster.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[An array of <a href="vim.vm.device.VirtualDiskId.html">VirtualDiskId</a> objects that use
         the given IO Filter installed on the compute resource.
 <p>]]>
      </return-value-description-html>
   </method>
   </managed-object>
   <managed-object name="Profile"
      type-id="vim.profile.Profile"
      vmodl-name="vim.profile.Profile"
      version-id-ref="vim.version.version5"
      >
      <description-html>
         <![CDATA[The <code>Profile</code> managed object is the base class for host and cluster
 profiles.]]>
      </description-html>
            <property name="config" type-id-ref="vim.profile.Profile.ConfigInfo"
      vmodl-name="config"
      privilege="Profile.Edit"
      >
      <description-html>
         <![CDATA[Configuration data for the profile.]]>
      </description-html>
      </property>

            <property name="description" type-id-ref="vim.profile.Profile.Description"
      vmodl-name="description"
      is-deprecated="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Localizable description of the profile]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 5.0. use <a href="vim.profile.Profile.html#retrieveDescription">RetrieveDescription</a> instead.]]>
      </deprecated-html>
      </property>

            <property name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      >
      <description-html>
         <![CDATA[Name of the profile.]]>
      </description-html>
      </property>

            <property name="createdTime" type-id-ref="vmodl.DateTime"
      vmodl-name="createdTime"
      >
      <description-html>
         <![CDATA[Time at which the profile was created.]]>
      </description-html>
      </property>

            <property name="modifiedTime" type-id-ref="vmodl.DateTime"
      vmodl-name="modifiedTime"
      >
      <description-html>
         <![CDATA[Time at which the profile was last modified.]]>
      </description-html>
      </property>

            <property name="entity" type-id-ref="vim.ManagedEntity"
      vmodl-name="entity"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[List of managed entities associated with the profile.]]>
      </description-html>
      </property>

            <property name="complianceStatus" type-id-ref="java.lang.String"
      vmodl-name="complianceStatus"
      >
      <description-html>
         <![CDATA[Overall compliance of entities associated with this profile.
 If one of the entities is out of compliance, the profile is <code>nonCompliant</code>.
 If all entities are in compliance, the profile is <code>compliant</code>.
 If the compliance status of one of the entities is not known, compliance status
  of the profile is <code>unknown</code>.
 See <a href="vim.profile.ComplianceResult.Status.html">ComplianceResultStatus</a>.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.profile.Profile.CreateSpec</nested-type-id-ref>
      <nested-type-id-ref>vim.profile.Profile.SerializedCreateSpec</nested-type-id-ref>
      <nested-type-id-ref>vim.profile.Profile.ConfigInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.profile.Profile.Description</nested-type-id-ref>
   <method name="RetrieveDescription"
      vmodl-name="retrieveDescription"
      version-id-ref="vim.version.version7"
      is-optional="true"
      privilege="System.View"
      type-id-ref="vim.profile.Profile.Description"
      >
      <description-html>
         <![CDATA[Returns the localizable description for the profile.]]>
      </description-html>
      <return-value-description-html>
         <![CDATA[Profile divided into sections containing element descriptions and messages.]]>
      </return-value-description-html>
   </method>
   <method name="DestroyProfile"
      vmodl-name="destroy"
      privilege="Profile.Delete"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Destroy the profile.]]>
      </description-html>
   </method>
   <method name="AssociateProfile"
      vmodl-name="associateEntities"
      privilege="Profile.Edit"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Associate a profile with a managed entity. You can check the compliance of
 entities associated with a profile by calling the
 <a href="vim.profile.Profile.html#checkCompliance">CheckProfileCompliance_Task</a> method.]]>
      </description-html>
      <parameter name="entity" type-id-ref="vim.ManagedEntity"
      vmodl-name="entity"
      version-id-ref="vim.version.version5"
      is-array="true"
      privilege="entity"
      >
      <description-html>
         <![CDATA[The entity(s) to associate with the profile.
 If an entity is already associated with the profile, the association is
 maintained and the vCenter Server does not perform any action.]]>
      </description-html>
      </parameter>
   </method>
   <method name="DissociateProfile"
      vmodl-name="dissociateEntities"
      privilege="Profile.Edit"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Remove the association between a profile and a managed entity.]]>
      </description-html>
      <parameter name="entity" type-id-ref="vim.ManagedEntity"
      vmodl-name="entity"
      version-id-ref="vim.version.version5"
      is-array="true"
      is-optional="true"
      privilege="entity"
      >
      <description-html>
         <![CDATA[List of entities. The vCenter Server will remove the associations
 that the profile has with the entities in the list. If unset,
 the Server removes all the associations that the profile has with any
 managed entities in the inventory.
 If the specified entity is not associated with the profile,
 the Server does not perform any action.]]>
      </description-html>
      </parameter>
   </method>
   <method name="CheckProfileCompliance"
      vmodl-name="checkCompliance"
      is-array="true"
      privilege="System.View"
      type-id-ref="vim.profile.ComplianceResult"
      is-task="true"
      >
      <description-html>
         <![CDATA[Check compliance of an entity against a Profile.]]>
      </description-html>
      <parameter name="entity" type-id-ref="vim.ManagedEntity"
      vmodl-name="entity"
      version-id-ref="vim.version.version5"
      is-array="true"
      is-optional="true"
      privilege="entity"
      >
      <description-html>
         <![CDATA[If specified, the compliance check is performed on this entity.
 If the entity is not specified, the vCenter Server runs a compliance check on all the
 entities associated with the profile. The entity does not have to be associated with the
 profile.]]>
      </description-html>
      </parameter>
      <return-value-description-html>
         <![CDATA[The compliance result.]]>
      </return-value-description-html>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to monitor the
 operation.]]>
      </task-description-html>
   </method>
   <method name="ExportProfile"
      vmodl-name="exportProfile"
      privilege="Profile.Export"
      type-id-ref="java.lang.String"
      >
      <description-html>
         <![CDATA[Export the profile in a serialized form. To use the serialized string to create a profile,
 specify a <a href="vim.profile.Profile.SerializedCreateSpec.html">ProfileSerializedCreateSpec</a> when you call the
 <a href="vim.profile.host.ProfileManager.html">HostProfileManager</a>.<a href="vim.profile.ProfileManager.html#createProfile">CreateProfile</a>
 method.]]>
      </description-html>
      <return-value-description-html>
         <![CDATA[Serialized form of the profile.]]>
      </return-value-description-html>
   </method>
   </managed-object>
   <managed-object name="EventManager"
      type-id="vim.event.EventManager"
      vmodl-name="vim.event.EventManager"
      version-id-ref="vim.version.version1"
      >
      <description-html>
         <![CDATA[This managed object type provides properties and methods for
  event management support.
  Event objects are used to record significant state changes of
  managed entities.]]>
      </description-html>
            <property name="description" type-id-ref="vim.event.EventDescription"
      vmodl-name="description"
      privilege="System.View"
      >
      <description-html>
         <![CDATA[Static descriptive strings used in events.]]>
      </description-html>
      </property>

            <property name="latestEvent" type-id-ref="vim.event.Event"
      vmodl-name="latestEvent"
      is-optional="true"
      privilege="System.View"
      >
      <description-html>
         <![CDATA[The latest event that happened on the VirtualCenter server.]]>
      </description-html>
      </property>

            <property name="maxCollector" type-id-ref="INT"
      vmodl-name="maxCollector"
      privilege="System.View"
      >
      <description-html>
         <![CDATA[For each client, the maximum number of event collectors that can exist
  simultaneously.]]>
      </description-html>
      </property>

   <method name="RetrieveArgumentDescription"
      vmodl-name="retrieveArgumentDescription"
      version-id-ref="vim.version.version5"
      is-array="true"
      is-optional="true"
      privilege="System.View"
      type-id-ref="vim.event.EventDescription.EventArgDesc"
      >
      <description-html>
         <![CDATA[Retrieves the argument meta-data for a given Event type]]>
      </description-html>
      <parameter name="eventTypeId" type-id-ref="java.lang.String"
      vmodl-name="eventTypeId"
      version-id-ref="vim.version.version5"
      privilege="eventTypeId"
      >
      </parameter>
   </method>
   <method name="CreateCollectorForEvents"
      vmodl-name="createCollector"
      privilege="System.View"
      type-id-ref="vim.event.EventHistoryCollector"
      >
      <description-html>
         <![CDATA[Creates an event history collector, which is a specialized history collector
  that provides Event objects.
  <p>
  Event collectors do not persist beyond the current client session.]]>
      </description-html>
      <parameter name="filter" type-id-ref="vim.event.EventFilterSpec"
      vmodl-name="filter"
      version-id-ref="vim.version.version1"
      privilege="filter"
      >
      <description-html>
         <![CDATA[The event query filter.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if there are more than the maximum number of
                       event collectors.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[The event collector based on the filter.]]>
      </return-value-description-html>
   </method>
   <method name="LogUserEvent"
      vmodl-name="logUserEvent"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Logs a user defined event against a particular managed entity.]]>
      </description-html>
      <parameter name="entity" type-id-ref="vim.ManagedEntity"
      vmodl-name="entity"
      version-id-ref="vim.version.version1"
      privilege="entity"
      >
      <description-html>
         <![CDATA[The entity against which the event is logged. The entity must be
                 the root folder, a DataCenter, a VirtualMachine, a HostSystem,
                 or a ComputeResource.]]>
      </description-html>
      </parameter>
      <parameter name="msg" type-id-ref="java.lang.String"
      vmodl-name="msg"
      version-id-ref="vim.version.version1"
      privilege="msg"
      >
      <description-html>
         <![CDATA[The message to be logged.]]>
      </description-html>
      </parameter>
   </method>
   <method name="QueryEvents"
      vmodl-name="QueryEvent"
      is-array="true"
      is-optional="true"
      privilege="System.View"
      type-id-ref="vim.event.Event"
      >
      <description-html>
         <![CDATA[Returns the events in specified filter.
 Returns empty array when there are not any events qualified.]]>
      </description-html>
      <parameter name="filter" type-id-ref="vim.event.EventFilterSpec"
      vmodl-name="filter"
      version-id-ref="vim.version.version1"
      privilege="filter"
      >
      <description-html>
         <![CDATA[The events qualified.]]>
      </description-html>
      </parameter>
      <return-value-description-html>
         <![CDATA[The events matching the filter.]]>
      </return-value-description-html>
   </method>
   <method name="PostEvent"
      vmodl-name="postEvent"
      version-id-ref="vim.version.version2"
      privilege="Global.LogEvent"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Posts the specified event, optionally associating it with
 a task.
 <p>
 The event being posted should have the following info in it:
 <ul>
 <li>The ManagedEntity on which the event is being posted should
 be set in the appropriate <a href="vim.event.EntityEventArgument.html">EntityEventArgument</a> field of the base
 <a href="vim.event.Event.html">Event</a> class. It is OK to not set any entity, in which case the
 event is treated as an event about the system.
 <li>Some Event fields (<a href="vim.event.Event.html#key">key</a>, <a href="vim.event.Event.html#chainId">chainId</a>,
 <a href="vim.event.Event.html#createdTime">createdTime</a>) are mandatory because of the nature of
 the structure, but any caller-supplied values will be overwritten by
 the system.
 </ul>
 <p>
 If the event being posted is to be associated with an existing
 Task, the appropriate TaskInfo needs to be passed in.
 This task can either be one returned from a vSphere API operation or
 an extension task created by calling TaskManager#createTask.]]>
      </description-html>
      <parameter name="eventToPost" type-id-ref="vim.event.Event"
      vmodl-name="eventToPost"
      version-id-ref="vim.version.version2"
      privilege="eventToPost"
      >
      <description-html>
         <![CDATA[Fully-specified event to post]]>
      </description-html>
      </parameter>
      <parameter name="taskInfo" type-id-ref="vim.TaskInfo"
      vmodl-name="taskInfo"
      version-id-ref="vim.version.version2"
      is-optional="true"
      privilege="taskInfo"
      >
      <description-html>
         <![CDATA[optional task associated with the event]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.InvalidEvent">
      <fault-description-html>
         <![CDATA[no longer thrown by this API]]>
      </fault-description-html>
      </fault>
   </method>
   </managed-object>
   <managed-object name="StoragePod"
      type-id="vim.StoragePod"
      vmodl-name="vim.StoragePod"
      version-id-ref="vim.version.version7"
      base-type-id="vim.Folder"
      >
      <description-html>
         <![CDATA[The <a href="vim.StoragePod.html">StoragePod</a> data object aggregates the storage
  resources of associated <a href="vim.Datastore.html">Datastore</a> objects into a single
  storage resource for use by virtual machines. The storage services
  such as Storage DRS (Distributed Resource Scheduling),
  enhance the utility of the storage pod.
  <p>
  Use the <a href="vim.Folder.html">Folder</a>.<a href="vim.Folder.html#createStoragePod">CreateStoragePod</a> method
  to create an instance of this object.
  <p>]]>
      </description-html>
            <property name="summary" type-id-ref="vim.StoragePod.Summary"
      vmodl-name="summary"
      is-optional="true"
      privilege="System.View"
      >
      <description-html>
         <![CDATA[Storage pod summary.]]>
      </description-html>
      </property>

            <property name="podStorageDrsEntry" type-id-ref="vim.StorageResourceManager.PodStorageDrsEntry"
      vmodl-name="podStorageDrsEntry"
      is-optional="true"
      privilege="System.Read"
      >
      <description-html>
         <![CDATA[Storage DRS related attributes of the Storage Pod.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.StoragePod.Summary</nested-type-id-ref>
   </managed-object>
   <managed-object name="ListView"
      type-id="vim.view.ListView"
      vmodl-name="vim.view.ListView"
      version-id-ref="vim.version.version2"
      base-type-id="vim.view.ManagedObjectView"
      >
      <description-html>
         <![CDATA[The <a href="vim.view.ListView.html">ListView</a> managed object provides access to updates on a specific set of objects.
  You can use a <a href="vim.view.ListView.html">ListView</a> with a <a href="vmodl.query.PropertyCollector.html">PropertyCollector</a> method
  to retrieve data or receive notification of changes. For information about using views
  with the <a href="vmodl.query.PropertyCollector.html">PropertyCollector</a>, see the description of <a href="vim.view.ViewManager.html">ViewManager</a>.
  <p>
  When you invoke the <a href="vim.view.ViewManager.html#createListView">CreateListView</a> method, you specify
  a list of objects. The <a href="vim.view.ManagedObjectView.html#view">View</a> list
  always represents the current configuration of the virtual environment
  and reflects any subsequent changes that occur.]]>
      </description-html>
   <method name="ModifyListView"
      vmodl-name="modify"
      is-array="true"
      is-optional="true"
      type-id-ref="vmodl.ManagedObject"
      >
      <description-html>
         <![CDATA[Modify the list by giving a delta of entities to add and
  entities to remove.
  <p>
  May partially succeed if some objects could not be resolved.  The operation
  will still succeed for all objects which could be resolved, and the
  list of those which failed is returned as the result.]]>
      </description-html>
      <parameter name="add" type-id-ref="vmodl.ManagedObject"
      vmodl-name="add"
      version-id-ref="vim.version.version2"
      is-array="true"
      is-optional="true"
      privilege="add"
      >
      <description-html>
         <![CDATA[Optional list of objects to add to the view.]]>
      </description-html>
      </parameter>
      <parameter name="remove" type-id-ref="vmodl.ManagedObject"
      vmodl-name="remove"
      version-id-ref="vim.version.version2"
      is-array="true"
      is-optional="true"
      privilege="remove"
      >
      <description-html>
         <![CDATA[Optional list of objects to remove from the view.]]>
      </description-html>
      </parameter>
      <return-value-description-html>
         <![CDATA[A list containing any objects in 'add' that could not be resolved.]]>
      </return-value-description-html>
   </method>
   <method name="ResetListView"
      vmodl-name="reset"
      is-array="true"
      is-optional="true"
      type-id-ref="vmodl.ManagedObject"
      >
      <description-html>
         <![CDATA[Replaces the list with an entirely new set of objects.  If
  the entire set is changing, this is less data to send than a delta.
  <p>
  May partially succeed if some objects could not be resolved.  The operation
  will still succeed for all objects which could be resolved, and the
  list of those which failed is as the result.]]>
      </description-html>
      <parameter name="obj" type-id-ref="vmodl.ManagedObject"
      vmodl-name="obj"
      version-id-ref="vim.version.version2"
      is-array="true"
      is-optional="true"
      privilege="obj"
      >
      <description-html>
         <![CDATA[The new list of objects.]]>
      </description-html>
      </parameter>
      <return-value-description-html>
         <![CDATA[A list containing any objects in 'obj' that could not be resolved.]]>
      </return-value-description-html>
   </method>
   <method name="ResetListViewFromView"
      vmodl-name="resetFromView"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Replaces the list with the set of objects in a given view.]]>
      </description-html>
      <parameter name="view" type-id-ref="vim.view.View"
      vmodl-name="view"
      version-id-ref="vim.version.version2"
      privilege="view"
      >
      <description-html>
         <![CDATA[The view to copy objects from.]]>
      </description-html>
      </parameter>
   </method>
   </managed-object>
   <managed-object name="HostFirmwareSystem"
      type-id="vim.host.FirmwareSystem"
      vmodl-name="vim.host.FirmwareSystem"
      version-id-ref="vim.version.version2"
      >
      <description-html>
         <![CDATA[The <a href="vim.host.FirmwareSystem.html">HostFirmwareSystem</a> managed object type provides access to the firmware
  of an embedded ESX host. It provides operations to backup, restore, and reset the
  configuration of an embedded ESX host.]]>
      </description-html>
   <method name="ResetFirmwareToFactoryDefaults"
      vmodl-name="resetToFactoryDefaults"
      privilege="Host.Config.Firmware"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Reset the configuration to factory defaults.
 <p>
 This method will reset all configuration options, including the "admin"
 password, to the factory defaults. The host will be rebooted immediately.
 The host needs to be in maintenance mode before this operation can be
 performed.]]>
      </description-html>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the host is not in maintenance mode.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="BackupFirmwareConfiguration"
      vmodl-name="backupConfiguration"
      privilege="Host.Config.Firmware"
      type-id-ref="java.lang.String"
      >
      <description-html>
         <![CDATA[Backup the configuration of the host.
  <p>
  The method generates a bundle containing the host configuration.
  You can use an HTTP GET operation to download the bundle from the returned URL.]]>
      </description-html>
      <return-value-description-html>
         <![CDATA[URL that identifies the location of the backup bundle.]]>
      </return-value-description-html>
   </method>
   <method name="QueryFirmwareConfigUploadURL"
      vmodl-name="queryConfigUploadURL"
      privilege="Host.Config.Firmware"
      type-id-ref="java.lang.String"
      >
      <description-html>
         <![CDATA[Return the URL on the host to which the configuration bundle must be
 uploaded for a restore operation.
 See <a href="vim.host.FirmwareSystem.html#restoreConfiguration">RestoreFirmwareConfiguration</a>.]]>
      </description-html>
      <return-value-description-html>
         <![CDATA[URL that identifies the location for the restore operation.]]>
      </return-value-description-html>
   </method>
   <method name="RestoreFirmwareConfiguration"
      vmodl-name="restoreConfiguration"
      privilege="Host.Config.Firmware"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Restore the configuration of the host to that specified in the bundle.
 <p>
 Upload the bundle to the URL returned by the
 <a href="vim.host.FirmwareSystem.html#queryConfigUploadURL">QueryFirmwareConfigUploadURL</a> method.
 The <a href="vim.host.FirmwareSystem.html#restoreConfiguration">RestoreFirmwareConfiguration</a> method
 will restore all configuration options,
 including the "admin" password, to the values in the bundle.
 The host will be rebooted immediately.
 The host must be in maintenance mode before this operation can be
 performed.]]>
      </description-html>
      <parameter name="force" type-id-ref="BOOLEAN"
      vmodl-name="force"
      version-id-ref="vim.version.version2"
      privilege="force"
      >
      <description-html>
         <![CDATA[Forces application of the configuration even if the bundle
        is mismatched.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the host is not in maintenance mode.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.FileFault">
      <fault-description-html>
         <![CDATA[if the file was not accessible.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.MismatchedBundle">
      <fault-description-html>
         <![CDATA[if the uuid / build number in the bundle
         does not match the uuid / build number of the host and
         parameter 'force' is set to false.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidBundle">
      <fault-description-html>
         <![CDATA[if the bundle does not have the expected contents.]]>
      </fault-description-html>
      </fault>
   </method>
   </managed-object>
   <managed-object name="CryptoManagerHost"
      type-id="vim.encryption.CryptoManagerHost"
      vmodl-name="vim.encryption.CryptoManagerHost"
      version-id-ref="vim.version.version12"
      base-type-id="vim.encryption.CryptoManager"
      >
   <method name="CryptoManagerHostPrepare"
      vmodl-name="prepare"
      privilege="Cryptographer.RegisterHost"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Prime the host to receive sensitive information and put the host
 in vim.HostSystem.CryptoState#prepared state]]>
      </description-html>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the host is not in
   vim.HostSystem.CryptoState#incapable state]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="CryptoManagerHostEnable"
      vmodl-name="enable"
      privilege="Cryptographer.RegisterHost"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Begin core dump encryption by specifying the encryption key and put
 the host in vim.HostSystem.CryptoState#safe state
 Note: <a href="vim.encryption.CryptoManagerHost.html#prepare">CryptoManagerHostPrepare</a> must be called first]]>
      </description-html>
      <parameter name="initialKey" type-id-ref="vim.encryption.CryptoKeyPlain"
      vmodl-name="initialKey"
      version-id-ref="vim.version.version12"
      privilege="initialKey"
      >
      <description-html>
         <![CDATA[The key to be used for core dump encryption]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the host is in
   vim.HostSystem.CryptoState#incapable state]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.AlreadyExists">
      <fault-description-html>
         <![CDATA[if the host is in
   vim.HostSystem.CryptoState#safe state and initialKey differs
                                           from the existing core dump
                                           encryption key]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="ChangeKey"
      vmodl-name="changeKey"
      privilege="Cryptographer.RegisterHost"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Change the key used for core dump encryption
 Note: <a href="vim.encryption.CryptoManagerHost.html#enable">CryptoManagerHostEnable</a> must be called first

 If successful, a "best effort" will be made to "in place" shallow recrypt
 any core dumps found in /var/core to use the new key.]]>
      </description-html>
      <parameter name="newKey" type-id-ref="vim.encryption.CryptoKeyPlain"
      vmodl-name="newKey"
      version-id-ref="vim.version.version12"
      privilege="newKey"
      >
      <description-html>
         <![CDATA[The key that replaces the existing core dump encryption key]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the host is not in
   vim.HostSystem.CryptoState#safe state]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="CryptoManagerHostDisable"
      vmodl-name="disable"
      version-id-ref="vim.version.v7_0"
      privilege="Cryptographer.RegisterHost"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Disable encryption on host, if host was in crypto safe mode, put it in
 pendingIncapable state and host will be crypto incapable after a reboot

 Note: A reboot is expected from user after successfully invoking this API
 Note: Do not call this API if the host is in vSAN encrypted cluster]]>
      </description-html>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the host is already crypto disabled.]]>
      </fault-description-html>
      </fault>
   </method>
   </managed-object>
   <managed-object name="HostPciPassthruSystem"
      type-id="vim.host.PciPassthruSystem"
      vmodl-name="vim.host.PciPassthruSystem"
      version-id-ref="vim.version.version5"
      base-type-id="vim.ExtensibleManagedObject"
      >
      <description-html>
         <![CDATA[This managed object manages the PciPassthru state of the host.]]>
      </description-html>
            <property name="pciPassthruInfo" type-id-ref="vim.host.PciPassthruInfo"
      vmodl-name="pciPassthruInfo"
      is-array="true"
      privilege="System.Read"
      >
      <description-html>
         <![CDATA[Array of PciPassthru information]]>
      </description-html>
      </property>

            <property name="sriovDevicePoolInfo" type-id-ref="vim.host.SriovDevicePoolInfo"
      vmodl-name="sriovDevicePoolInfo"
      version-id-ref="vim.version.version11"
      is-array="true"
      is-optional="true"
      privilege="System.Read"
      >
      <description-html>
         <![CDATA[Array of Sriov Device Pool information]]>
      </description-html>
      </property>

   <method name="Refresh"
      vmodl-name="refresh"
      privilege="Host.Config.Settings"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Refresh the available PciPassthru information.]]>
      </description-html>
   </method>
   <method name="UpdatePassthruConfig"
      vmodl-name="updatePassthruConfig"
      privilege="Host.Config.PciPassthru"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Updates the PciPassthru configuration, this will
 get called for the dependent device with the enabled
 bool set]]>
      </description-html>
      <parameter name="config" type-id-ref="vim.host.PciPassthruConfig"
      vmodl-name="config"
      version-id-ref="vim.version.version5"
      is-array="true"
      privilege="config"
      >
      <description-html>
         <![CDATA[The new PciPassthru configuration information.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[if an error occurs.]]>
      </fault-description-html>
      </fault>
   </method>
   </managed-object>
   <managed-object name="DistributedVirtualSwitchManager"
      type-id="vim.dvs.DistributedVirtualSwitchManager"
      vmodl-name="vim.dvs.DistributedVirtualSwitchManager"
      version-id-ref="vim.version.version5"
      >
      <description-html>
         <![CDATA[The <a href="vim.dvs.DistributedVirtualSwitchManager.html">DistributedVirtualSwitchManager</a> provides methods
 that support the following operations:
 <ul>
 <li>Backup and restore operations for <a href="vim.dvs.VmwareDistributedVirtualSwitch.html">VmwareDistributedVirtualSwitch</a>
 and associated <a href="vim.dvs.DistributedVirtualPortgroup.html">DistributedVirtualPortgroup</a> managed objects.</li>
 <li>Query operations for information about portgroups and distributed
 virtual switches.</li>
 <li>Distributed virtual switch configuration update operations.
 </ul>]]>
      </description-html>
      <nested-type-id-ref>vim.dvs.DistributedVirtualSwitchManager.DvsConfigTarget</nested-type-id-ref>
      <nested-type-id-ref>vim.dvs.DistributedVirtualSwitchManager.CompatibilityResult</nested-type-id-ref>
      <nested-type-id-ref>vim.dvs.DistributedVirtualSwitchManager.HostContainer</nested-type-id-ref>
      <nested-type-id-ref>vim.dvs.DistributedVirtualSwitchManager.HostDvsFilterSpec</nested-type-id-ref>
      <nested-type-id-ref>vim.dvs.DistributedVirtualSwitchManager.HostArrayFilter</nested-type-id-ref>
      <nested-type-id-ref>vim.dvs.DistributedVirtualSwitchManager.HostContainerFilter</nested-type-id-ref>
      <nested-type-id-ref>vim.dvs.DistributedVirtualSwitchManager.HostDvsMembershipFilter</nested-type-id-ref>
      <nested-type-id-ref>vim.dvs.DistributedVirtualSwitchManager.DvsProductSpec</nested-type-id-ref>
      <nested-type-id-ref>vim.dvs.DistributedVirtualSwitchManager.ImportResult</nested-type-id-ref>
   <method name="QueryAvailableDvsSpec"
      vmodl-name="querySupportedSwitchSpec"
      is-array="true"
      is-optional="true"
      privilege="System.View"
      type-id-ref="vim.dvs.ProductSpec"
      >
      <description-html>
         <![CDATA[This operation returns a list of switch product specifications that
  are supported by the vCenter Server.]]>
      </description-html>
      <parameter name="recommended" type-id-ref="BOOLEAN"
      vmodl-name="recommended"
      version-id-ref="vim.version.version5"
      is-optional="true"
      privilege="recommended"
      >
      <description-html>
         <![CDATA[If set to true, return only the recommended versions.
                     If set to false, return only the not recommended versions.
                     If unset, return all supported versions.]]>
      </description-html>
      </parameter>
   </method>
   <method name="QueryCompatibleHostForNewDvs"
      vmodl-name="queryCompatibleHostForNewDvs"
      is-array="true"
      is-optional="true"
      privilege="System.View"
      type-id-ref="vim.HostSystem"
      >
      <description-html>
         <![CDATA[This operation returns a list of hosts that are compatible with
  the given DistributedVirtualSwitch product specification.]]>
      </description-html>
      <parameter name="container" type-id-ref="vim.ManagedEntity"
      vmodl-name="container"
      version-id-ref="vim.version.version5"
      privilege="container"
      >
      <description-html>
         <![CDATA[Where to look for hosts. Supported types of objects for
                     this parameter are <a href="vim.Datacenter.html">Datacenter</a>,
                     <a href="vim.ComputeResource.html">ComputeResource</a> and <a href="vim.Folder.html">Folder</a>.]]>
      </description-html>
      </parameter>
      <parameter name="recursive" type-id-ref="BOOLEAN"
      vmodl-name="recursive"
      version-id-ref="vim.version.version5"
      privilege="recursive"
      >
      <description-html>
         <![CDATA[Whether to search for hosts in the subfolders,
                     if applicable. In the case when container is a <a href="vim.Datacenter.html">Datacenter</a>,
                     the recursive flag is applied to its HostFolder.]]>
      </description-html>
      </parameter>
      <parameter name="switchProductSpec" type-id-ref="vim.dvs.ProductSpec"
      vmodl-name="switchProductSpec"
      version-id-ref="vim.version.version5"
      is-optional="true"
      privilege="switchProductSpec"
      >
      <description-html>
         <![CDATA[The productSpec of a <a href="vim.DistributedVirtualSwitch.html">DistributedVirtualSwitch</a>.
                     If not set, it is assumed to be the default one used for
                     DistributedVirtualSwitch creation.]]>
      </description-html>
      </parameter>
   </method>
   <method name="QueryCompatibleHostForExistingDvs"
      vmodl-name="queryCompatibleHostForExistingDvs"
      is-array="true"
      is-optional="true"
      privilege="System.View"
      type-id-ref="vim.HostSystem"
      >
      <description-html>
         <![CDATA[This operation returns a list of hosts that are compatible with
  the given DistributedVirtualSwitch product specification.]]>
      </description-html>
      <parameter name="container" type-id-ref="vim.ManagedEntity"
      vmodl-name="container"
      version-id-ref="vim.version.version5"
      privilege="container"
      >
      <description-html>
         <![CDATA[Where to look for hosts. Supported types of objects for
                     this parameter are <a href="vim.Datacenter.html">Datacenter</a>,
                     <a href="vim.ComputeResource.html">ComputeResource</a> and <a href="vim.Folder.html">Folder</a>.]]>
      </description-html>
      </parameter>
      <parameter name="recursive" type-id-ref="BOOLEAN"
      vmodl-name="recursive"
      version-id-ref="vim.version.version5"
      privilege="recursive"
      >
      <description-html>
         <![CDATA[Whether to search for hosts in the subfolders,
                     if applicable. In the case when container is a <a href="vim.Datacenter.html">Datacenter</a>,
                     the recursive flag is applied to its HostFolder.]]>
      </description-html>
      </parameter>
      <parameter name="dvs" type-id-ref="vim.DistributedVirtualSwitch"
      vmodl-name="dvs"
      version-id-ref="vim.version.version5"
      privilege="dvs"
      >
      <description-html>
         <![CDATA[Search the host based on the specification published in the
                     <a href="vim.DistributedVirtualSwitch.Capability.html#compatibleHostComponentProductInfo">compatibleHostComponentProductInfo</a>
                     of a <a href="vim.DistributedVirtualSwitch.html">DistributedVirtualSwitch</a>. If not
                     set, it is assumed to be the specification that a
                     DistributedVirtualSwitch would have if it is created
                     with the default <a href="vim.dvs.ProductSpec.html">DistributedVirtualSwitchProductSpec</a>.]]>
      </description-html>
      </parameter>
   </method>
   <method name="QueryDvsCompatibleHostSpec"
      vmodl-name="queryCompatibleHostSpec"
      is-array="true"
      is-optional="true"
      privilege="System.View"
      type-id-ref="vim.dvs.HostProductSpec"
      >
      <description-html>
         <![CDATA[This operation returns a list of host product specifications that
  are compatible with the given DistributedVirtualSwitch product
  specification.]]>
      </description-html>
      <parameter name="switchProductSpec" type-id-ref="vim.dvs.ProductSpec"
      vmodl-name="switchProductSpec"
      version-id-ref="vim.version.version5"
      is-optional="true"
      privilege="switchProductSpec"
      >
      <description-html>
         <![CDATA[The productSpec of a <a href="vim.DistributedVirtualSwitch.html">DistributedVirtualSwitch</a>.
                     If not set, it is assumed to be the default one used for
                     DistributedVirtualSwitch creation.]]>
      </description-html>
      </parameter>
   </method>
   <method name="QueryDvsFeatureCapability"
      vmodl-name="queryFeatureCapability"
      version-id-ref="vim.version.version6"
      is-optional="true"
      privilege="System.View"
      type-id-ref="vim.DistributedVirtualSwitch.FeatureCapability"
      >
      <description-html>
         <![CDATA[This operation indicates which version-specific DVS features are
  available for the given DistributedVirtualSwitch product specification.]]>
      </description-html>
      <parameter name="switchProductSpec" type-id-ref="vim.dvs.ProductSpec"
      vmodl-name="switchProductSpec"
      version-id-ref="vim.version.version6"
      is-optional="true"
      privilege="switchProductSpec"
      >
      <description-html>
         <![CDATA[The productSpec of a <a href="vim.DistributedVirtualSwitch.html">DistributedVirtualSwitch</a>.
                     If not set, it is assumed to be the default one used for
                     DistributedVirtualSwitch creation.]]>
      </description-html>
      </parameter>
   </method>
   <method name="QueryDvsByUuid"
      vmodl-name="querySwitchByUuid"
      is-optional="true"
      privilege="System.View"
      type-id-ref="vim.DistributedVirtualSwitch"
      >
      <description-html>
         <![CDATA[This operation returns a DistributedVirtualSwitch given a UUID.]]>
      </description-html>
      <parameter name="uuid" type-id-ref="java.lang.String"
      vmodl-name="uuid"
      version-id-ref="vim.version.version5"
      privilege="uuid"
      >
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[If a switch with the UUID doesn't exist.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="QueryDvsConfigTarget"
      vmodl-name="queryDvsConfigTarget"
      privilege="System.View"
      type-id-ref="vim.dvs.DistributedVirtualSwitchManager.DvsConfigTarget"
      >
      <description-html>
         <![CDATA[This operation returns the DistributedVirtualSwitch or
  DistributedVirtualPortgroup configuration target on a host.]]>
      </description-html>
      <parameter name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      version-id-ref="vim.version.version5"
      is-optional="true"
      privilege="host"
      >
      <description-html>
         <![CDATA[The host on which the query is to be made. If called
  directly on the host this parameter need not be specified.]]>
      </description-html>
      </parameter>
      <parameter name="dvs" type-id-ref="vim.DistributedVirtualSwitch"
      vmodl-name="dvs"
      version-id-ref="vim.version.version5"
      is-optional="true"
      privilege="dvs"
      >
      <description-html>
         <![CDATA[The distributed virtual switch on which the query is to be
  made. If unspecified the config target will encompass all the
  distributed virtual switches available on the host.]]>
      </description-html>
      </parameter>
   </method>
   <method name="QueryDvsCheckCompatibility"
      vmodl-name="checkCompatibility"
      version-id-ref="vim.version.version6"
      is-array="true"
      is-optional="true"
      privilege="System.View"
      type-id-ref="vim.dvs.DistributedVirtualSwitchManager.CompatibilityResult"
      >
      <description-html>
         <![CDATA[This operation returns a list of compatibility results. Each compatibility result
  is an object that has a host property and optionally a fault which would
  be populated only if that host is not compatible with a given dvsProductSpec.
  All filters in hostFilerSpecs are ANDed to derive the intersection of hosts against
  which compatibility is checked. If caller did not have view privileges on the
  host entity in an element of the CompatibilityResult array, then that entire
  element would be removed from the CompatibilityResult array.
  Typical uses:
  <ul>
  <li>
  For the createDVS situation, hostFilterSpec is of type HostDvsFilterSpec and DvsProductSpec
  will have newSwitchProductSpec set.</li>
  <li>
  For the Add-Host-To-DVS situation, you can use either HostDvsFilterSpec or
  HostDvsMembershipFilter with inclusive being false, and pass the DVS in DvsProductSpec.</li>
  <li>
  For the Upgrade-DVS situation, you can use either HostDvsFilterSpec or
  HostDvsMembershipFilter with inclusive being true, and pass the new desired ProductSpec
  for DVS in newSwitchProductSpec.</li>
  </ul>]]>
      </description-html>
      <parameter name="hostContainer" type-id-ref="vim.dvs.DistributedVirtualSwitchManager.HostContainer"
      vmodl-name="hostContainer"
      version-id-ref="vim.version.version6"
      privilege="hostContainer"
      >
      <description-html>
         <![CDATA[The container of hosts on which we check the compatibility.
                     This container can be a datacenter, folder, or computeResource.
                     We can also include all the hosts in the hierarchy with container
                     as root of the tree.]]>
      </description-html>
      </parameter>
      <parameter name="dvsProductSpec" type-id-ref="vim.dvs.DistributedVirtualSwitchManager.DvsProductSpec"
      vmodl-name="dvsProductSpec"
      version-id-ref="vim.version.version6"
      is-optional="true"
      privilege="dvsProductSpec"
      >
      <description-html>
         <![CDATA[The productSpec of a DistributedVirtualSwitch. If not
                     set, it is assumed to be the default one used for
                     DistributedVirtualSwitch creation for current version.]]>
      </description-html>
      </parameter>
      <parameter name="hostFilterSpec" type-id-ref="vim.dvs.DistributedVirtualSwitchManager.HostDvsFilterSpec"
      vmodl-name="hostFilterSpec"
      version-id-ref="vim.version.version6"
      is-array="true"
      is-optional="true"
      privilege="hostFilterSpec"
      >
      <description-html>
         <![CDATA[The hosts against which to check compatibility. This is a
                     filterSpec and users can use this to specify all hosts in a
                     container (datacenter, folder, or computeResource), an array
                     of hosts, or hosts that might or might not be a DVS member.]]>
      </description-html>
      </parameter>
   </method>
   <method name="RectifyDvsOnHost"
      vmodl-name="rectifyHost"
      version-id-ref="vim.version.version7"
      privilege="System.Read"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Update the Distributed Switch configuration on the hosts to bring them in sync with the
  current configuration in vCenter Server.]]>
      </description-html>
      <parameter name="hosts" type-id-ref="vim.HostSystem"
      vmodl-name="hosts"
      version-id-ref="vim.version.version7"
      is-array="true"
      privilege="hosts"
      >
      <description-html>
         <![CDATA[The hosts to be rectified.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.DvsFault">
      <fault-description-html>
         <![CDATA[if operation fails on any host or if there are other update failures.]]>
      </fault-description-html>
      </fault>
      <task-description-html>
         <![CDATA[Returns a <a href="vim.Task.html">Task</a> object with which to monitor the operation.]]>
      </task-description-html>
   </method>
   <method name="DVSManagerExportEntity"
      vmodl-name="exportEntity"
      version-id-ref="vim.version.version8"
      is-array="true"
      is-optional="true"
      type-id-ref="vim.dvs.EntityBackup.Config"
      is-task="true"
      >
      <description-html>
         <![CDATA[Export the configuration for entities specified in the
 <code>selectionSet</code> parameter. You can use this method only
 for a <a href="vim.dvs.VmwareDistributedVirtualSwitch.html">VmwareDistributedVirtualSwitch</a> and its
 associated <a href="vim.dvs.DistributedVirtualPortgroup.html">DistributedVirtualPortgroup</a> objects.
 <p>
 Use the <a href="vim.dvs.DistributedVirtualSwitchManager.html#importEntity">DVSManagerImportEntity_Task</a> method to restore the entity
 to the state represented by the exported configuration.
 You can also use the exported configuration to create
 a new switch or portgroup.]]>
      </description-html>
      <parameter name="selectionSet" type-id-ref="vim.SelectionSet"
      vmodl-name="selectionSet"
      version-id-ref="vim.version.version8"
      is-array="true"
      privilege="selectionSet"
      >
      <description-html>
         <![CDATA[The selection criteria for a set of
          entities to export the configuration.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[If entity in selectionSet doesn't exist.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.BackupBlobWriteFailure">
      <fault-description-html>
         <![CDATA[if failed to create backup config blob.]]>
      </fault-description-html>
      </fault>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which
        to monitor the operation. After successful completion, the
        <a href="vim.Task.html">Task</a>.<a href="vim.Task.html#info">Info</a>.<a href="vim.TaskInfo.html#result">result</a>
        property contains the <a href="vim.dvs.EntityBackup.Config.html">EntityBackupConfig</a> object.]]>
      </task-description-html>
   </method>
   <method name="DVSManagerImportEntity"
      vmodl-name="importEntity"
      version-id-ref="vim.version.version8"
      type-id-ref="vim.dvs.DistributedVirtualSwitchManager.ImportResult"
      is-task="true"
      >
      <description-html>
         <![CDATA[Import the configuration of entities specified in
  <a href="vim.dvs.EntityBackup.Config.html">EntityBackupConfig</a>. You can restore the
  existing configuration to the state represented by the
  backup configuration. You can also use the backup
  configuration to create a new switch or portgroup.
  See <a href="vim.dvs.EntityBackup.ImportType.html">EntityImportType</a>.]]>
      </description-html>
      <parameter name="entityBackup" type-id-ref="vim.dvs.EntityBackup.Config"
      vmodl-name="entityBackup"
      version-id-ref="vim.version.version8"
      is-array="true"
      privilege="entityBackup"
      >
      <description-html>
         <![CDATA[Configuration of one or more entities to be imported.
                      The entity backup configuration is returned
                      by the <a href="vim.dvs.DistributedVirtualSwitchManager.html#exportEntity">DVSManagerExportEntity_Task</a> method.]]>
      </description-html>
      </parameter>
      <parameter name="importType" type-id-ref="java.lang.String"
      vmodl-name="importType"
      version-id-ref="vim.version.version8"
      privilege="importType"
      >
      <description-html>
         <![CDATA[Specifies whether to create a new configuration
                    or restore a previous configuration. See <a href="vim.dvs.EntityBackup.ImportType.html">EntityImportType</a> for valid values.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.DvsFault">
      <fault-description-html>
         <![CDATA[if operation fails on any host.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[If entity in <a href="vim.dvs.EntityBackup.Config.html#key">key</a> doesn't exist.]]>
      </fault-description-html>
      </fault>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which
        to monitor the operation.]]>
      </task-description-html>
   </method>
   <method name="DVSManagerLookupDvPortGroup"
      vmodl-name="lookupPortgroup"
      version-id-ref="vim.version.version8"
      is-optional="true"
      privilege="System.View"
      type-id-ref="vim.dvs.DistributedVirtualPortgroup"
      >
      <description-html>
         <![CDATA[Returns the portgroup identified by the key within the specified VDS
 identified by its UUID.]]>
      </description-html>
      <parameter name="switchUuid" type-id-ref="java.lang.String"
      vmodl-name="switchUuid"
      version-id-ref="vim.version.version8"
      privilege="switchUuid"
      >
      <description-html>
         <![CDATA[The UUID of the <a href="vim.DistributedVirtualSwitch.html">DistributedVirtualSwitch</a>.]]>
      </description-html>
      </parameter>
      <parameter name="portgroupKey" type-id-ref="java.lang.String"
      vmodl-name="portgroupKey"
      version-id-ref="vim.version.version8"
      privilege="portgroupKey"
      >
      <description-html>
         <![CDATA[The key that identifies a
                    <a href="vim.dvs.DistributedVirtualPortgroup.html">DistributedVirtualPortgroup</a>.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[If the portgroup for the specified inputs was not found.]]>
      </fault-description-html>
      </fault>
   </method>
   </managed-object>
   <managed-object name="HttpNfcLease"
      type-id="vim.HttpNfcLease"
      vmodl-name="vim.HttpNfcLease"
      version-id-ref="vim.version.version5"
      >
      <description-html>
         <![CDATA[Represents a lease on a <a href="vim.VirtualMachine.html">VirtualMachine</a> or
  a <a href="vim.VirtualApp.html">VirtualApp</a>, which can be used to import or export
  disks for the entity. While the lease is held, operations
  that alter the state of the virtual machines covered by the lease
  are blocked. Examples of blocked operations are PowerOn, Destroy,
  Migrate, etc.
  <p>
  A lease is in one of four states:

  <dl>
    <dt>Initializing</dt>
    <dd>This is the initial state. The lease remains in this state
        while the corresponding import/export task is preparing the
        objects. In an import session, this involves creating
        inventory objects.</dd>
    <dt>Ready</dt>
    <dd>The lease changes to this state once the corresponding
        import/export task is done preparing the lease. The leased
        objects are now ready, and the client can use the information
        provided in the <a href="vim.HttpNfcLease.html#info">Info</a> property to determine where to
        up/download disks. The client must call <a href="vim.HttpNfcLease.html#progress">HttpNfcLeaseProgress</a>
        periodically to keep the lease alive and report progress to
        the corresponding import/export task. Failure to do so causes
        the lease to time out and enter the error state.</dd>
    <dt>Done</dt>
    <dd>When the client is done transferring disks, it calls
        <a href="vim.HttpNfcLease.html#complete">HttpNfcLeaseComplete</a> to signal the end of the import/export session.
        This causes the corresponding import/export task to complete
        successfully.</dd>
    <dt>Error</dt>
    <dd>If an error occurs during initialization or the lease times out,
        it will change to this state. The client can also abort the lease
        manually by calling <a href="vim.HttpNfcLease.html#abort">HttpNfcLeaseAbort</a>. In this state, the <a href="vim.HttpNfcLease.html#error">Error</a>
        property can be read to determine the cause.
        If the lease belongs to an import session, all objects created
        during the import are removed when the lease enters this state.</dd>
  </dl>

  The import/export task corresponding to the lease continues running while
  the lease is held.]]>
      </description-html>
            <property name="initializeProgress" type-id-ref="INT"
      vmodl-name="initializeProgress"
      >
      <description-html>
         <![CDATA[Provides progress information (0-100 percent) for the initializing state
  of the lease. Clients can use this to track overall progress.]]>
      </description-html>
      </property>

            <property name="transferProgress" type-id-ref="INT"
      vmodl-name="transferProgress"
      version-id-ref="vim.version.version12"
      >
      <description-html>
         <![CDATA[Provides progress information (0-100 percent) for current transfer.
  Transfer covers download, upload and pull scenario.
  Can be externally updated by progress method.]]>
      </description-html>
      </property>

            <property name="mode" type-id-ref="java.lang.String"
      vmodl-name="mode"
      version-id-ref="vim.version.version12"
      >
      <description-html>
         <![CDATA[Current mode of the lease.
  See Mode for possible values.]]>
      </description-html>
      </property>

            <property name="capabilities" type-id-ref="vim.HttpNfcLease.Capabilities"
      vmodl-name="capabilities"
      version-id-ref="vim.version.version12"
      >
      <description-html>
         <![CDATA[Current supported capabilities by this lease
  See Capabilities]]>
      </description-html>
      </property>

            <property name="info" type-id-ref="vim.HttpNfcLease.Info"
      vmodl-name="info"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Provides information on the objects contained in this lease. The
  info property is only valid when the lease is in the ready state.]]>
      </description-html>
      </property>

            <property name="state" type-id-ref="vim.HttpNfcLease.State"
      vmodl-name="state"
      >
      <description-html>
         <![CDATA[The current state of the lease.]]>
      </description-html>
      </property>

            <property name="error" type-id-ref="vmodl.LocalizedMethodFault"
      vmodl-name="error"
      is-optional="true"
      >
      <description-html>
         <![CDATA[If the lease is in the error state, this property contains the
  error that caused the lease to be aborted.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.HttpNfcLease.State</nested-type-id-ref>
      <nested-type-id-ref>vim.HttpNfcLease.Mode</nested-type-id-ref>
      <nested-type-id-ref>vim.HttpNfcLease.DatastoreLeaseInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.HttpNfcLease.HostInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.HttpNfcLease.Info</nested-type-id-ref>
      <nested-type-id-ref>vim.HttpNfcLease.DeviceUrl</nested-type-id-ref>
      <nested-type-id-ref>vim.HttpNfcLease.ManifestEntry</nested-type-id-ref>
      <nested-type-id-ref>vim.HttpNfcLease.SourceFile</nested-type-id-ref>
      <nested-type-id-ref>vim.HttpNfcLease.Capabilities</nested-type-id-ref>
   <method name="HttpNfcLeaseGetManifest"
      vmodl-name="getManifest"
      version-id-ref="vim.version.version6"
      is-array="true"
      is-optional="true"
      type-id-ref="vim.HttpNfcLease.ManifestEntry"
      >
      <description-html>
         <![CDATA[Gets the download manifest for this lease.]]>
      </description-html>
      <fault type-id-ref="vim.fault.Timedout">
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      </fault>
   </method>
   <method name="HttpNfcLeaseSetManifestChecksumType"
      vmodl-name="setManifestChecksumType"
      version-id-ref="vim.version.version12"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Sets desired checksum algorithm per each file that will be returned in
  ManifestEntry. Should be set before any transfer starts.]]>
      </description-html>
      <parameter name="deviceUrlsToChecksumTypes" type-id-ref="vim.KeyValue"
      vmodl-name="deviceUrlsToChecksumTypes"
      version-id-ref="vim.version.version12"
      is-array="true"
      is-optional="true"
      privilege="deviceUrlsToChecksumTypes"
      >
      <description-html>
         <![CDATA[[in] Should contain key value pairs:
  where key is DeviceUrl#key returned in this lease info and value
  is desired algorithm from ChecksumType.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.InvalidState">
      </fault>
   </method>
   <method name="HttpNfcLeaseComplete"
      vmodl-name="complete"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Completes the import/export and releases this lease. Operations on
  the objects contained in this lease will no longer be blocked. After
  calling this method, this lease will no longer be valid.
  <p>
  Clients should call this method when they are done accessing the
  disks for the <a href="vim.VirtualMachine.html">VirtualMachine</a>s in this lease. The status
  of the corresponding task will be set to success.]]>
      </description-html>
      <fault type-id-ref="vim.fault.Timedout">
      <fault-description-html>
         <![CDATA[if the lease has timed out before this call.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the lease has already been completed or
          aborted.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="HttpNfcLeaseAbort"
      vmodl-name="abort"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Aborts the import/export and releases this lease. Operations on the
  objects contained in this lease will no longer be blocked. After
  calling this method, this lease will no longer be valid.
  <p>
  Clients should call this method if an error occurs while accessing
  the disks, or if the operation is cancelled. The client can report
  the cause of the abort to other clients listening on the task with
  the fault parameter.]]>
      </description-html>
      <parameter name="fault" type-id-ref="vmodl.MethodFault"
      vmodl-name="fault"
      version-id-ref="vim.version.version5"
      is-optional="true"
      privilege="fault"
      >
      <description-html>
         <![CDATA[[in] The fault that caused the abort, if any.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.Timedout">
      <fault-description-html>
         <![CDATA[if the lease has timed out before this call.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the lease has already been aborted.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="HttpNfcLeaseProgress"
      vmodl-name="progress"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Sets the disk up/download progress, and renews this lease. A lease
  will time out automatically after a while. If the client wishes to
  continue using it, for example if it is not done accessing the
  disks, this method must be called periodically.]]>
      </description-html>
      <parameter name="percent" type-id-ref="INT"
      vmodl-name="percent"
      version-id-ref="vim.version.version5"
      privilege="percent"
      >
      <description-html>
         <![CDATA[[in] Completion status represented as an integer
         in the 0-100 range.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.Timedout">
      <fault-description-html>
         <![CDATA[if the lease has timed out.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="HttpNfcLeasePullFromUrls"
      vmodl-name="pullFromUrls"
      version-id-ref="vim.version.version12"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Upgrades current lease from push to pull mode.]]>
      </description-html>
      <parameter name="files" type-id-ref="vim.HttpNfcLease.SourceFile"
      vmodl-name="files"
      version-id-ref="vim.version.version12"
      is-array="true"
      is-optional="true"
      privilege="files"
      >
      <description-html>
         <![CDATA[[in] List of remote source file descriptors
  There should be the same number of SourceFile
  as DeviceUrl provided by this lease.
  Privilege VApp.PullFromUrls is required.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the lease has already been aborted.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.HttpFault">
      </fault>
      <fault type-id-ref="vim.fault.SSLVerifyFault">
      </fault>
   </method>
   </managed-object>
   <managed-object name="LicenseManager"
      type-id="vim.LicenseManager"
      vmodl-name="vim.LicenseManager"
      version-id-ref="vim.version.version1"
      >
      <description-html>
         <![CDATA[This managed object type controls entitlements for a given VMware
  platform. VMware platforms include VirtualCenter, ESX Server, VMware Server,
  Workstation and Player. Entitlements define what software capabilities
  this host may use.
  <p>
  Entitlements are identified by a short string 'key'. Keys can represent either
  a particular edition (Full, Starter) or a particular feature/function (featureKey)
  (backup, nas). An edition implies zero one or more functions which are express,
  denied or optional. For example a 'Full' edition includes 'iscsi' function but a
  Starter edition might disallow it.
  <p>
  Which edition a given VMware platform uses can be defined at any time. Generally this
  is done right after first install and boot as installation software may not set it.
  For editions that are similar in nature, any future changes to edition
  type will only impact future requests for functionality.
  Current functionality is left unaffected. The same is true for optional
  functions enabled/disabled after some period of time. For dissimilar editions,
  such transitions may require entering maintenance mode first else an exception of
  InvalidState will be thrown.
  <p>
  To specify the edition type and any optional functions, use updateLicense for
  ESX Server and addLicense follow by LicenseAssingmentManager.updateAssignedLicense
  for VirtualCenter.
  <p>
  When an edition is specified for a given host, the cost of that edition
  (how many licenses are needed) is determined. The cost is computed
  using the license's CostUnit value multiplied by the number of units activated.
  For example, when a VMware platform is set to an edition which uses a 'cpuPackage'
  on a two socket server, two licenses would be needed to successfully
  install that edition.
  <p>
  Here is a diagram of the unit costs supported by this API and their relationships.
  <pre>
   +------------------------------+   +--------+      +-------+
   | +-----------+ +-----------+  |   | Server |      |  Host |
   | |           | |           |  |   +--------+      +-------+
   | |  cpuCore  | |   cpuCore |  |                   +-------+
   | +-----------+ +-----------+  |   +--------+      |  Host |
   |                  cpuPackage  |   |  VM    |      +-------+
   +------------------------------+   +--------+
  </pre>]]>
      </description-html>
            <property name="source" type-id-ref="vim.LicenseManager.LicenseSource"
      vmodl-name="source"
      is-deprecated="true"
      >
      <description-html>
         <![CDATA[Set or return a data object type of LocalLicense or LicenseServer.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 4.0, use
  <a href="vim.LicenseAssignmentManager.html#queryAssignedLicenses">QueryAssignedLicenses</a> to get evaluation information.]]>
      </deprecated-html>
      </property>

            <property name="sourceAvailable" type-id-ref="BOOLEAN"
      vmodl-name="sourceAvailable"
      is-deprecated="true"
      >
      <description-html>
         <![CDATA[Current state of the license source. License sources that are LocalSource
  are always available.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 4.0, this property is not used.]]>
      </deprecated-html>
      </property>

            <property name="diagnostics" type-id-ref="vim.LicenseManager.DiagnosticInfo"
      vmodl-name="diagnostics"
      version-id-ref="vim.version.version2"
      is-deprecated="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Return current diagnostic information.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 4.0, this property is not used by the system.]]>
      </deprecated-html>
      </property>

            <property name="featureInfo" type-id-ref="vim.LicenseManager.FeatureInfo"
      vmodl-name="featureInfo"
      is-deprecated="true"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The list of features that can be licensed.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of VI API 2.5, use <a href="vim.LicenseManager.html#querySupportedFeatures">QuerySupportedFeatures</a>
  instead.]]>
      </deprecated-html>
      </property>

            <property name="licensedEdition" type-id-ref="java.lang.String"
      vmodl-name="licensedEdition"
      version-id-ref="vim.version.version2"
      is-deprecated="true"
      >
      <description-html>
         <![CDATA[The product's license edition. The edition defines which product license
  the server requires. This, in turn, determines the core set of functionalities
  provided by the product and the additional features that can be licensed. If
  no edition is set the property is set to the empty string ("").

  To set the edition use <a href="vim.LicenseManager.html#setEdition">SetLicenseEdition</a>.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 4.0, use
  <a href="vim.LicenseAssignmentManager.html#queryAssignedLicenses">QueryAssignedLicenses</a> instead.]]>
      </deprecated-html>
      </property>

            <property name="licenses" type-id-ref="vim.LicenseManager.LicenseInfo"
      vmodl-name="licenses"
      version-id-ref="vim.version.version5"
      is-array="true"
      >
      <description-html>
         <![CDATA[Get information about all the licenses available.]]>
      </description-html>
      </property>

            <property name="licenseAssignmentManager" type-id-ref="vim.LicenseAssignmentManager"
      vmodl-name="licenseAssignmentManager"
      version-id-ref="vim.version.version5"
      is-optional="true"
      privilege="System.View"
      >
      <description-html>
         <![CDATA[License Assignment Manager]]>
      </description-html>
      </property>

            <property name="evaluation" type-id-ref="vim.LicenseManager.EvaluationInfo"
      vmodl-name="evaluation"
      version-id-ref="vim.version.version5"
      privilege="System.Read"
      >
      </property>

      <nested-type-id-ref>vim.LicenseManager.LicenseState</nested-type-id-ref>
      <nested-type-id-ref>vim.LicenseManager.LicenseKey</nested-type-id-ref>
      <nested-type-id-ref>vim.LicenseManager.LicenseSource</nested-type-id-ref>
      <nested-type-id-ref>vim.LicenseManager.LicenseServer</nested-type-id-ref>
      <nested-type-id-ref>vim.LicenseManager.LocalLicense</nested-type-id-ref>
      <nested-type-id-ref>vim.LicenseManager.EvaluationLicense</nested-type-id-ref>
      <nested-type-id-ref>vim.LicenseManager.FeatureInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.LicenseManager.ReservationInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.LicenseManager.AvailabilityInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.LicenseManager.DiagnosticInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.LicenseManager.LicenseUsageInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.LicenseManager.EvaluationInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.LicenseManager.LicensableResourceInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.LicenseManager.LicenseInfo</nested-type-id-ref>
   <method name="QuerySupportedFeatures"
      vmodl-name="querySupportedFeatures"
      version-id-ref="vim.version.version2"
      is-deprecated="true"
      is-array="true"
      is-optional="true"
      privilege="Global.Licenses"
      type-id-ref="vim.LicenseManager.FeatureInfo"
      >
      <description-html>
         <![CDATA[Queries the current license source for a list of available licenses that can be
  licensed from this system.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 4.0, use
  <a href="vim.LicenseAssignmentManager.html#queryAssignedLicenses">QueryAssignedLicenses</a> instead.]]>
      </deprecated-html>
      <parameter name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      version-id-ref="vim.version.version2"
      is-optional="true"
      privilege="host"
      >
      <description-html>
         <![CDATA[Use the license source of the specified host.]]>
      </description-html>
      </parameter>
   </method>
   <method name="QueryLicenseSourceAvailability"
      vmodl-name="querySourceAvailability"
      is-deprecated="true"
      is-array="true"
      is-optional="true"
      privilege="Global.Licenses"
      type-id-ref="vim.LicenseManager.AvailabilityInfo"
      >
      <description-html>
         <![CDATA[Queries the current license source for total and available licenses available for
  each feature known to this system.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 4.0, use
  <a href="vim.LicenseAssignmentManager.html#queryAssignedLicenses">QueryAssignedLicenses</a> instead.]]>
      </deprecated-html>
      <parameter name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      version-id-ref="vim.version.version1"
      is-optional="true"
      privilege="host"
      >
      <description-html>
         <![CDATA[Use the license source of the specified host.]]>
      </description-html>
      </parameter>
   </method>
   <method name="QueryLicenseUsage"
      vmodl-name="queryUsage"
      is-deprecated="true"
      privilege="System.Read"
      type-id-ref="vim.LicenseManager.LicenseUsageInfo"
      >
      <description-html>
         <![CDATA[Returns the license usage. The license usage is a list of supported features and
  the number of licenses that have been reserved.
  <p>
  <b>PLATFORM Specific Notes:</b>
   VirtualCenter - Empty string returns the usage of non-host specific features.
                   Must specify managed host to query.
   ESX Server - Host argument ignored.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 4.0, use
  <a href="vim.LicenseAssignmentManager.html#queryAssignedLicenses">QueryAssignedLicenses</a> instead.]]>
      </deprecated-html>
      <parameter name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      version-id-ref="vim.version.version1"
      is-optional="true"
      privilege="host"
      >
      <description-html>
         <![CDATA[Host to query for usage. If missing, query the server the
  <a href="vim.LicenseManager.html">LicenseManager</a> is on.]]>
      </description-html>
      </parameter>
   </method>
   <method name="SetLicenseEdition"
      vmodl-name="setEdition"
      is-deprecated="true"
      privilege="Global.Licenses"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Defines the product's license edition. The edition defines which product license
  the server requires. This, in turn, determines the core set of functionality
  provided by the product and the additional features that can be licensed.
  <p>
  To determine what featureKey the current platform will accept, use
  querySourceAvailablity() at runtime, or consult the documentation for the
  current platform.
  <p>]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 4.0, use
  <a href="vim.LicenseAssignmentManager.html#queryAssignedLicenses">QueryAssignedLicenses</a> instead.]]>
      </deprecated-html>
      <parameter name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      version-id-ref="vim.version.version1"
      is-optional="true"
      privilege="host"
      >
      <description-html>
         <![CDATA[Host to act on if LicenseManager is not on a host.]]>
      </description-html>
      </parameter>
      <parameter name="featureKey" type-id-ref="java.lang.String"
      vmodl-name="featureKey"
      version-id-ref="vim.version.version1"
      is-optional="true"
      privilege="featureKey"
      >
      <description-html>
         <![CDATA[Name of edition feature to select. If featureKey is not
  set or set to empty string, the product becomes unlicensed.
  <p>]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[If the feature cannot be supported on the platform,
          potentially because the hardware configuration does not support it.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.LicenseServerUnavailable">
      <fault-description-html>
         <![CDATA[If the license server is unavailable.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="CheckLicenseFeature"
      vmodl-name="checkFeature"
      is-deprecated="true"
      privilege="System.Read"
      type-id-ref="BOOLEAN"
      >
      <description-html>
         <![CDATA[Returns whether or not a given feature is enabled.
  <p>]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 4.0, use
  <a href="vim.LicenseAssignmentManager.html#queryAssignedLicenses">QueryAssignedLicenses</a> instead.]]>
      </deprecated-html>
      <parameter name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      version-id-ref="vim.version.version1"
      is-optional="true"
      privilege="host"
      >
      <description-html>
         <![CDATA[Host to act on if LicenseManager is not on a host.]]>
      </description-html>
      </parameter>
      <parameter name="featureKey" type-id-ref="java.lang.String"
      vmodl-name="featureKey"
      version-id-ref="vim.version.version1"
      privilege="featureKey"
      >
      <description-html>
         <![CDATA[Name of the feature to enable.
  <p>]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[If the feature cannot be supported on the platform,
          potentially because the hardware configuration does not support it.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[Returns true if the feature is enabled and false if it is not.]]>
      </return-value-description-html>
   </method>
   <method name="EnableFeature"
      vmodl-name="enable"
      is-deprecated="true"
      privilege="Global.Licenses"
      type-id-ref="BOOLEAN"
      >
      <description-html>
         <![CDATA[Enable a feature that has an optional state.
  <p>]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 4.0, use
  <a href="vim.LicenseAssignmentManager.html#updateAssignedLicense">UpdateAssignedLicense</a> instead.]]>
      </deprecated-html>
      <parameter name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      version-id-ref="vim.version.version1"
      is-optional="true"
      privilege="host"
      >
      <description-html>
         <![CDATA[Host to act on if LicenseManager is not on a host.]]>
      </description-html>
      </parameter>
      <parameter name="featureKey" type-id-ref="java.lang.String"
      vmodl-name="featureKey"
      version-id-ref="vim.version.version1"
      privilege="featureKey"
      >
      <description-html>
         <![CDATA[Name of the feature to enable.
  <p>]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[If the feature cannot be supported on the platform,
          potentially because the hardware configuration does not support it.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.LicenseServerUnavailable">
      <fault-description-html>
         <![CDATA[If the license server is unavailable.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[Returns true if enabling the feature was successful, false otherwise.]]>
      </return-value-description-html>
   </method>
   <method name="DisableFeature"
      vmodl-name="disable"
      is-deprecated="true"
      privilege="Global.Licenses"
      type-id-ref="BOOLEAN"
      >
      <description-html>
         <![CDATA[Release licenses for an optional feature.
 <p>]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 4.0, use
 <a href="vim.LicenseAssignmentManager.html#removeAssignedLicense">RemoveAssignedLicense</a> instead.]]>
      </deprecated-html>
      <parameter name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      version-id-ref="vim.version.version1"
      is-optional="true"
      privilege="host"
      >
      <description-html>
         <![CDATA[Host to act on if LicenseManager is not on a host.]]>
      </description-html>
      </parameter>
      <parameter name="featureKey" type-id-ref="java.lang.String"
      vmodl-name="featureKey"
      version-id-ref="vim.version.version1"
      privilege="featureKey"
      >
      <description-html>
         <![CDATA[key of the feature to disable.
 <p>]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[If the feature is in use.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.LicenseServerUnavailable">
      <fault-description-html>
         <![CDATA[If the license server is unavailable.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[Returns true if the feature was disabled and false if not.]]>
      </return-value-description-html>
   </method>
   <method name="ConfigureLicenseSource"
      vmodl-name="configureSource"
      is-deprecated="true"
      privilege="Global.Licenses"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Allows for reconfiguration of the License Manager license source.
  <p>
  This changes the licensing source to be either served or local. Before changing
  the license source location, the API checks the number of licenses available at
  the new potential source to ensure there are at least as many licenses there as
  have been issued by the current source. If there are an equal or greater number of
  licenses at the new source, all licenses on the current source are released and
  then reacquired from the new source. If there are not enough licenses available on
  the new source to reissue all licenses, the operation fails.
  <p>
  This is used to configure the license source on an individual host.
  <p>
  <b>PLATFORM Specific Notes:</b>
    VirtualCenter - only supports a served source.
                    the host parameter is mandatory.
    ESX Server  -  the host parameter is optional.
  <p>]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 4.0, use <a href="vim.LicenseManager.html#updateLicense">UpdateLicense</a>
  instead.]]>
      </deprecated-html>
      <parameter name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      version-id-ref="vim.version.version1"
      is-optional="true"
      privilege="host"
      >
      <description-html>
         <![CDATA[Host for which the license manager should be reconfigured.]]>
      </description-html>
      </parameter>
      <parameter name="licenseSource" type-id-ref="vim.LicenseManager.LicenseSource"
      vmodl-name="licenseSource"
      version-id-ref="vim.version.version1"
      privilege="licenseSource"
      >
      <description-html>
         <![CDATA[ServedSource or LocalSource.
  <p>]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.CannotAccessLocalSource">
      <fault-description-html>
         <![CDATA[if the local source cannot be accessed.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidLicense">
      <fault-description-html>
         <![CDATA[if the new license source is LocalLicenseSource and the
  license file is not valid.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.LicenseServerUnavailable">
      <fault-description-html>
         <![CDATA[if the license server is unreachable.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="UpdateLicense"
      vmodl-name="updateLicense"
      version-id-ref="vim.version.version5"
      privilege="Global.Licenses"
      type-id-ref="vim.LicenseManager.LicenseInfo"
      >
      <description-html>
         <![CDATA[Updates the available licenses to the one provided in licenseKey.

 This is the same as removing all the licenses using
 <a href="vim.LicenseManager.html#removeLicense">RemoveLicense</a> and adding licenseKey using
 <a href="vim.LicenseManager.html#addLicense">AddLicense</a>

 If the optional parameter labels is specify this is the same as calling
 updateLicense without the optioal parameter and calling updateLabel for each pair
 in the labels array.]]>
      </description-html>
      <parameter name="licenseKey" type-id-ref="java.lang.String"
      vmodl-name="licenseKey"
      version-id-ref="vim.version.version5"
      privilege="licenseKey"
      >
      <description-html>
         <![CDATA[A license. E.g. a serial license.]]>
      </description-html>
      </parameter>
      <parameter name="labels" type-id-ref="vim.KeyValue"
      vmodl-name="labels"
      version-id-ref="vim.version.version5"
      is-array="true"
      is-optional="true"
      privilege="labels"
      >
      <description-html>
         <![CDATA[array of key-value labels.]]>
      </description-html>
      </parameter>
      <return-value-description-html>
         <![CDATA[Returns information about the license specified in licenseKey.]]>
      </return-value-description-html>
   </method>
   <method name="AddLicense"
      vmodl-name="addLicense"
      version-id-ref="vim.version.version5"
      privilege="Global.Licenses"
      type-id-ref="vim.LicenseManager.LicenseInfo"
      >
      <description-html>
         <![CDATA[Adds a license to the inventory of available licenses.]]>
      </description-html>
      <parameter name="licenseKey" type-id-ref="java.lang.String"
      vmodl-name="licenseKey"
      version-id-ref="vim.version.version5"
      privilege="licenseKey"
      >
      <description-html>
         <![CDATA[A license. E.g. a serial license.]]>
      </description-html>
      </parameter>
      <parameter name="labels" type-id-ref="vim.KeyValue"
      vmodl-name="labels"
      version-id-ref="vim.version.version5"
      is-array="true"
      is-optional="true"
      privilege="labels"
      >
      <description-html>
         <![CDATA[array of key-value labels. Ignored by ESX Server.]]>
      </description-html>
      </parameter>
      <return-value-description-html>
         <![CDATA[Returns information about the license specified in licenseKey.]]>
      </return-value-description-html>
   </method>
   <method name="RemoveLicense"
      vmodl-name="removeLicense"
      version-id-ref="vim.version.version5"
      privilege="Global.Licenses"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Remove license from the available set.]]>
      </description-html>
      <parameter name="licenseKey" type-id-ref="java.lang.String"
      vmodl-name="licenseKey"
      version-id-ref="vim.version.version5"
      privilege="licenseKey"
      >
      <description-html>
         <![CDATA[A licenses. E.g. a serial license.]]>
      </description-html>
      </parameter>
   </method>
   <method name="DecodeLicense"
      vmodl-name="decodeLicense"
      version-id-ref="vim.version.version5"
      privilege="Global.Licenses"
      type-id-ref="vim.LicenseManager.LicenseInfo"
      >
      <description-html>
         <![CDATA[Decodes licensing information on the license specified.]]>
      </description-html>
      <parameter name="licenseKey" type-id-ref="java.lang.String"
      vmodl-name="licenseKey"
      version-id-ref="vim.version.version5"
      privilege="licenseKey"
      >
      <description-html>
         <![CDATA[A license. E.g. a serial license.]]>
      </description-html>
      </parameter>
      <return-value-description-html>
         <![CDATA[Returns information about the license specified in licenseKey.]]>
      </return-value-description-html>
   </method>
   <method name="UpdateLicenseLabel"
      vmodl-name="updateLabel"
      version-id-ref="vim.version.version5"
      privilege="Global.Licenses"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Update a license's label.
 It creates a label entry if the labelKey doesn't already exist]]>
      </description-html>
      <parameter name="licenseKey" type-id-ref="java.lang.String"
      vmodl-name="licenseKey"
      version-id-ref="vim.version.version5"
      privilege="licenseKey"
      >
      <description-html>
         <![CDATA[A license.]]>
      </description-html>
      </parameter>
      <parameter name="labelKey" type-id-ref="java.lang.String"
      vmodl-name="labelKey"
      version-id-ref="vim.version.version5"
      privilege="labelKey"
      >
      <description-html>
         <![CDATA[A label key.]]>
      </description-html>
      </parameter>
      <parameter name="labelValue" type-id-ref="java.lang.String"
      vmodl-name="labelValue"
      version-id-ref="vim.version.version5"
      privilege="labelValue"
      >
      <description-html>
         <![CDATA[Value for the label.]]>
      </description-html>
      </parameter>
   </method>
   <method name="RemoveLicenseLabel"
      vmodl-name="removeLabel"
      version-id-ref="vim.version.version5"
      privilege="Global.Licenses"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Removed a license's label.]]>
      </description-html>
      <parameter name="licenseKey" type-id-ref="java.lang.String"
      vmodl-name="licenseKey"
      version-id-ref="vim.version.version5"
      privilege="licenseKey"
      >
      <description-html>
         <![CDATA[A license.]]>
      </description-html>
      </parameter>
      <parameter name="labelKey" type-id-ref="java.lang.String"
      vmodl-name="labelKey"
      version-id-ref="vim.version.version5"
      privilege="labelKey"
      >
      <description-html>
         <![CDATA[A label key.]]>
      </description-html>
      </parameter>
   </method>
   </managed-object>
   <managed-object name="HostLocalAuthentication"
      type-id="vim.host.LocalAuthentication"
      vmodl-name="vim.host.LocalAuthentication"
      version-id-ref="vim.version.version6"
      base-type-id="vim.host.AuthenticationStore"
      >
      <description-html>
         <![CDATA[The <a href="vim.host.LocalAuthentication.html">HostLocalAuthentication</a> managed object represents
  local authentication for user accounts on an ESX host.]]>
      </description-html>
   </managed-object>
   <managed-object name="CryptoManagerKmip"
      type-id="vim.encryption.CryptoManagerKmip"
      vmodl-name="vim.encryption.CryptoManagerKmip"
      version-id-ref="vim.version.version11"
      base-type-id="vim.encryption.CryptoManager"
      >
      <description-html>
         <![CDATA[Singleton Managed Object used to manage cryptographic keys.]]>
      </description-html>
            <property name="kmipServers" type-id-ref="vim.encryption.KmipClusterInfo"
      vmodl-name="kmipServers"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[A list of registered KMIP servers, grouped by clusters.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.encryption.CryptoManagerKmip.CertificateInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.encryption.CryptoManagerKmip.ServerStatus</nested-type-id-ref>
      <nested-type-id-ref>vim.encryption.CryptoManagerKmip.ClusterStatus</nested-type-id-ref>
      <nested-type-id-ref>vim.encryption.CryptoManagerKmip.ServerCertInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.encryption.CryptoManagerKmip.CryptoKeyStatus</nested-type-id-ref>
   <method name="RegisterKmipServer"
      vmodl-name="registerKmipServer"
      privilege="Cryptographer.ManageKeyServers"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Register a KMIP server.]]>
      </description-html>
      <parameter name="server" type-id-ref="vim.encryption.KmipServerSpec"
      vmodl-name="server"
      version-id-ref="vim.version.version11"
      privilege="server"
      >
      <description-html>
         <![CDATA[[in] KMIP server connection information.]]>
      </description-html>
      </parameter>
   </method>
   <method name="MarkDefault"
      vmodl-name="markDefault"
      privilege="Cryptographer.ManageKeyServers"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Set the default KMIP cluster.]]>
      </description-html>
      <parameter name="clusterId" type-id-ref="vim.encryption.KeyProviderId"
      vmodl-name="clusterId"
      version-id-ref="vim.version.version11"
      privilege="clusterId"
      >
      <description-html>
         <![CDATA[[in] KMIP cluster ID to become default.]]>
      </description-html>
      </parameter>
   </method>
   <method name="UpdateKmipServer"
      vmodl-name="updateKmipServer"
      privilege="Cryptographer.ManageKeyServers"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Update a KMIP server.]]>
      </description-html>
      <parameter name="server" type-id-ref="vim.encryption.KmipServerSpec"
      vmodl-name="server"
      version-id-ref="vim.version.version11"
      privilege="server"
      >
      <description-html>
         <![CDATA[[in] KMIP server connection information.]]>
      </description-html>
      </parameter>
   </method>
   <method name="RemoveKmipServer"
      vmodl-name="removeKmipServer"
      privilege="Cryptographer.ManageKeyServers"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Remove a KMIP server, even if in use.]]>
      </description-html>
      <parameter name="clusterId" type-id-ref="vim.encryption.KeyProviderId"
      vmodl-name="clusterId"
      version-id-ref="vim.version.version11"
      privilege="clusterId"
      >
      <description-html>
         <![CDATA[[in] KMIP cluster ID.]]>
      </description-html>
      </parameter>
      <parameter name="serverName" type-id-ref="java.lang.String"
      vmodl-name="serverName"
      version-id-ref="vim.version.version11"
      privilege="serverName"
      >
      <description-html>
         <![CDATA[[in] KMIP server name.]]>
      </description-html>
      </parameter>
   </method>
   <method name="ListKmipServers"
      vmodl-name="listKmipServers"
      is-array="true"
      is-optional="true"
      privilege="Cryptographer.ManageKeyServers"
      type-id-ref="vim.encryption.KmipClusterInfo"
      >
      <description-html>
         <![CDATA[List the registered KMIP servers.]]>
      </description-html>
      <parameter name="limit" type-id-ref="INT"
      vmodl-name="limit"
      version-id-ref="vim.version.version11"
      is-optional="true"
      privilege="limit"
      >
      <description-html>
         <![CDATA[[in] maximum clusters to return.]]>
      </description-html>
      </parameter>
      <return-value-description-html>
         <![CDATA[List of known KMIP servers grouped in clusters.]]>
      </return-value-description-html>
   </method>
   <method name="RetrieveKmipServersStatus"
      vmodl-name="retrieveKmipServersStatus"
      is-array="true"
      is-optional="true"
      privilege="Cryptographer.ManageKeyServers"
      type-id-ref="vim.encryption.CryptoManagerKmip.ClusterStatus"
      is-task="true"
      >
      <description-html>
         <![CDATA[Get the status of the KMIP servers.]]>
      </description-html>
      <parameter name="clusters" type-id-ref="vim.encryption.KmipClusterInfo"
      vmodl-name="clusters"
      version-id-ref="vim.version.version11"
      is-array="true"
      is-optional="true"
      privilege="clusters"
      >
      <description-html>
         <![CDATA[[in] KMIP clusters and their servers.]]>
      </description-html>
      </parameter>
      <return-value-description-html>
         <![CDATA[List with KMIP servers' status information.]]>
      </return-value-description-html>
   </method>
   <method name="GenerateKey"
      vmodl-name="generateKey"
      privilege="Cryptographer.ManageKeys"
      type-id-ref="vim.encryption.CryptoKeyResult"
      >
      <description-html>
         <![CDATA[Generate new encryption key.]]>
      </description-html>
      <parameter name="keyProvider" type-id-ref="vim.encryption.KeyProviderId"
      vmodl-name="keyProvider"
      version-id-ref="vim.version.version11"
      is-optional="true"
      privilege="keyProvider"
      >
      <description-html>
         <![CDATA[[in] Which provider will generate the key.
                         If omitted, will use the default key provider.]]>
      </description-html>
      </parameter>
      <return-value-description-html>
         <![CDATA[the generated key.]]>
      </return-value-description-html>
   </method>
   <method name="RetrieveKmipServerCert"
      vmodl-name="retrieveKmipServerCert"
      privilege="Cryptographer.ManageKeyServers"
      type-id-ref="vim.encryption.CryptoManagerKmip.ServerCertInfo"
      >
      <description-html>
         <![CDATA[Get the server certficate. In the case of error, an empty
 certificate string is returned.]]>
      </description-html>
      <parameter name="keyProvider" type-id-ref="vim.encryption.KeyProviderId"
      vmodl-name="keyProvider"
      version-id-ref="vim.version.version11"
      privilege="keyProvider"
      >
      <description-html>
         <![CDATA[[in] KMIP cluster in which the server is placed
                         or will be created.]]>
      </description-html>
      </parameter>
      <parameter name="server" type-id-ref="vim.encryption.KmipServerInfo"
      vmodl-name="server"
      version-id-ref="vim.version.version11"
      privilege="server"
      >
      <description-html>
         <![CDATA[[in] KMIP server.]]>
      </description-html>
      </parameter>
      <return-value-description-html>
         <![CDATA[Information about the server certificate.]]>
      </return-value-description-html>
   </method>
   <method name="UploadKmipServerCert"
      vmodl-name="uploadKmipServerCert"
      privilege="Cryptographer.ManageKeyServers"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Upload a server certficate.]]>
      </description-html>
      <parameter name="cluster" type-id-ref="vim.encryption.KeyProviderId"
      vmodl-name="cluster"
      version-id-ref="vim.version.version11"
      privilege="cluster"
      >
      <description-html>
         <![CDATA[[in] KMIP cluster.]]>
      </description-html>
      </parameter>
      <parameter name="certificate" type-id-ref="java.lang.String"
      vmodl-name="certificate"
      version-id-ref="vim.version.version11"
      privilege="certificate"
      >
      <description-html>
         <![CDATA[[in] Server certificate in PEM encoding.]]>
      </description-html>
      </parameter>
   </method>
   <method name="GenerateSelfSignedClientCert"
      vmodl-name="generateSelfSignedClientCert"
      privilege="Cryptographer.ManageKeyServers"
      type-id-ref="java.lang.String"
      >
      <description-html>
         <![CDATA[Generate a self-signed client certificate with its private key.
 This generates a self signed certificate as well as its private key.
 The private key will not be returned to caller for security protection.
 If this method is called again, the certificate and private key
 generated in the new invocation will overwrite the old ones.
 The generated certificate will not replace current working certificate
 until <a href="vim.encryption.CryptoManagerKmip.html#updateSelfSignedClientCert">UpdateSelfSignedClientCert</a> is called. The generated self
 signed certificate can be later retrieved by calling
 <a href="vim.encryption.CryptoManagerKmip.html#retrieveSelfSignedClientCert">RetrieveSelfSignedClientCert</a>.]]>
      </description-html>
      <parameter name="cluster" type-id-ref="vim.encryption.KeyProviderId"
      vmodl-name="cluster"
      version-id-ref="vim.version.version11"
      privilege="cluster"
      >
      <description-html>
         <![CDATA[[in] KMIP cluster.]]>
      </description-html>
      </parameter>
      <return-value-description-html>
         <![CDATA[A new self-signed client certificate.]]>
      </return-value-description-html>
   </method>
   <method name="GenerateClientCsr"
      vmodl-name="generateClientCsr"
      privilege="Cryptographer.ManageKeyServers"
      type-id-ref="java.lang.String"
      >
      <description-html>
         <![CDATA[Generate a certificate signing request with its private key.
 This generates a CSR request as well as its private key. The private key
 will not be returned to caller for security protection. If this method
 is called again, the CSR and private key generated in the new invocation
 will overwrite the old ones.
 After the CSR is signed by KMS into a certificate, it should be updated
 by calling <a href="vim.encryption.CryptoManagerKmip.html#updateKmsSignedCsrClientCert">UpdateKmsSignedCsrClientCert</a>. The generated CSR
 can be later retrieved by calling <a href="vim.encryption.CryptoManagerKmip.html#retrieveClientCsr">RetrieveClientCsr</a>.]]>
      </description-html>
      <parameter name="cluster" type-id-ref="vim.encryption.KeyProviderId"
      vmodl-name="cluster"
      version-id-ref="vim.version.version11"
      privilege="cluster"
      >
      <description-html>
         <![CDATA[[in] KMIP cluster.]]>
      </description-html>
      </parameter>
      <return-value-description-html>
         <![CDATA[A newly generated CSR.]]>
      </return-value-description-html>
   </method>
   <method name="RetrieveSelfSignedClientCert"
      vmodl-name="retrieveSelfSignedClientCert"
      privilege="Cryptographer.ManageKeyServers"
      type-id-ref="java.lang.String"
      >
      <description-html>
         <![CDATA[Get the generated self signed client certificate.
 If <a href="vim.encryption.CryptoManagerKmip.html#generateSelfSignedClientCert">GenerateSelfSignedClientCert</a> is called previously, this
 will return the generated certificate; otherwise return empty string.]]>
      </description-html>
      <parameter name="cluster" type-id-ref="vim.encryption.KeyProviderId"
      vmodl-name="cluster"
      version-id-ref="vim.version.version11"
      privilege="cluster"
      >
      <description-html>
         <![CDATA[[in] KMIP cluster.]]>
      </description-html>
      </parameter>
      <return-value-description-html>
         <![CDATA[The self signed certificate generated previously, if any.]]>
      </return-value-description-html>
   </method>
   <method name="RetrieveClientCsr"
      vmodl-name="retrieveClientCsr"
      privilege="Cryptographer.ManageKeyServers"
      type-id-ref="java.lang.String"
      >
      <description-html>
         <![CDATA[Get the generated client certificate signing request.
 If <a href="vim.encryption.CryptoManagerKmip.html#generateClientCsr">GenerateClientCsr</a> is called previously, this will return
 the generated certificate signing request; otherwise return empty string.]]>
      </description-html>
      <parameter name="cluster" type-id-ref="vim.encryption.KeyProviderId"
      vmodl-name="cluster"
      version-id-ref="vim.version.version11"
      privilege="cluster"
      >
      <description-html>
         <![CDATA[[in] KMIP cluster.]]>
      </description-html>
      </parameter>
      <return-value-description-html>
         <![CDATA[The CSR generated previously, if any.]]>
      </return-value-description-html>
   </method>
   <method name="RetrieveClientCert"
      vmodl-name="retrieveClientCert"
      privilege="Cryptographer.ManageKeyServers"
      type-id-ref="java.lang.String"
      >
      <description-html>
         <![CDATA[Get the client certificate of the KMIP cluster.]]>
      </description-html>
      <parameter name="cluster" type-id-ref="vim.encryption.KeyProviderId"
      vmodl-name="cluster"
      version-id-ref="vim.version.version11"
      privilege="cluster"
      >
      <description-html>
         <![CDATA[[in] KMIP cluster.]]>
      </description-html>
      </parameter>
      <return-value-description-html>
         <![CDATA[The client certificate.]]>
      </return-value-description-html>
   </method>
   <method name="UpdateSelfSignedClientCert"
      vmodl-name="updateSelfSignedClientCert"
      privilege="Cryptographer.ManageKeyServers"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Set a self-signed certificate as KMIP client certificate for the KMS
 cluster.
 This method should be called to update the certificate which is generated
 by calling <a href="vim.encryption.CryptoManagerKmip.html#generateSelfSignedClientCert">GenerateSelfSignedClientCert</a>. If
 <a href="vim.encryption.CryptoManagerKmip.html#generateSelfSignedClientCert">GenerateSelfSignedClientCert</a> is called more than once, the self
 signed certificate that is generated last time should be used; otherwise
 the certificate will be rejected because the private key from last time
 won't match the public key in the certificate.]]>
      </description-html>
      <parameter name="cluster" type-id-ref="vim.encryption.KeyProviderId"
      vmodl-name="cluster"
      version-id-ref="vim.version.version11"
      privilege="cluster"
      >
      <description-html>
         <![CDATA[[in] KMIP cluster.]]>
      </description-html>
      </parameter>
      <parameter name="certificate" type-id-ref="java.lang.String"
      vmodl-name="certificate"
      version-id-ref="vim.version.version11"
      privilege="certificate"
      >
      <description-html>
         <![CDATA[[in] Client certificate.]]>
      </description-html>
      </parameter>
   </method>
   <method name="UpdateKmsSignedCsrClientCert"
      vmodl-name="updateKmsSignedCsrClientCert"
      privilege="Cryptographer.ManageKeyServers"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Set KMS server signed certificate as KMIP client certificate for the KMS
 cluster.
 This method should be called to update the certificate signed by KMS
 server from a CSR that is generated by calling <a href="vim.encryption.CryptoManagerKmip.html#generateClientCsr">GenerateClientCsr</a>.
 If <a href="vim.encryption.CryptoManagerKmip.html#generateClientCsr">GenerateClientCsr</a> is called more than once, the CSR that is
 generated last time should be used; otherwise the certificate will be
 rejected because the private key from last time won't match the public
 key in the certificate.]]>
      </description-html>
      <parameter name="cluster" type-id-ref="vim.encryption.KeyProviderId"
      vmodl-name="cluster"
      version-id-ref="vim.version.version11"
      privilege="cluster"
      >
      <description-html>
         <![CDATA[[in] KMIP cluster.]]>
      </description-html>
      </parameter>
      <parameter name="certificate" type-id-ref="java.lang.String"
      vmodl-name="certificate"
      version-id-ref="vim.version.version11"
      privilege="certificate"
      >
      <description-html>
         <![CDATA[[in] Client certificate.]]>
      </description-html>
      </parameter>
   </method>
   <method name="UploadClientCert"
      vmodl-name="uploadClientCert"
      privilege="Cryptographer.ManageKeyServers"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Set a client certificate with private key for the KMIP cluster.
 The certificate and private key can be assigned by a KMS server and the
 certificate might be already trusted by the KMS server.]]>
      </description-html>
      <parameter name="cluster" type-id-ref="vim.encryption.KeyProviderId"
      vmodl-name="cluster"
      version-id-ref="vim.version.version11"
      privilege="cluster"
      >
      <description-html>
         <![CDATA[[in] KMIP cluster.]]>
      </description-html>
      </parameter>
      <parameter name="certificate" type-id-ref="java.lang.String"
      vmodl-name="certificate"
      version-id-ref="vim.version.version11"
      privilege="certificate"
      >
      <description-html>
         <![CDATA[[in] Client certificate.]]>
      </description-html>
      </parameter>
      <parameter name="privateKey" type-id-ref="java.lang.String"
      vmodl-name="privateKey"
      version-id-ref="vim.version.version11"
      privilege="privateKey"
      >
      <description-html>
         <![CDATA[[in] Private key.]]>
      </description-html>
      </parameter>
   </method>
   <method name="IsKmsClusterActive"
      vmodl-name="IsKmsClusterActive"
      version-id-ref="vim.version.v7_0"
      privilege="Cryptographer.ManageKeyServers"
      type-id-ref="BOOLEAN"
      >
      <description-html>
         <![CDATA[Check whether an active KMS exists in cluster.]]>
      </description-html>
      <parameter name="cluster" type-id-ref="vim.encryption.KeyProviderId"
      vmodl-name="cluster"
      version-id-ref="vim.version.v7_0"
      is-optional="true"
      privilege="cluster"
      >
      <description-html>
         <![CDATA[[in] KMIP cluster.
  Will use default cluster if omitted.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vmodl.fault.InvalidArgument">
      <fault-description-html>
         <![CDATA[in case the cluster is not found.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[true if active KMS exists in cluster, false otherwise.]]>
      </return-value-description-html>
   </method>
   <method name="SetDefaultKmsCluster"
      vmodl-name="setDefaultKmsCluster"
      version-id-ref="vim.version.v7_0"
      privilege="Cryptographer.ManageKeyServers"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Set the default KMS cluster for the specified managed entity.]]>
      </description-html>
      <parameter name="entity" type-id-ref="vim.ManagedEntity"
      vmodl-name="entity"
      version-id-ref="vim.version.v7_0"
      is-optional="true"
      privilege="entity"
      >
      <description-html>
         <![CDATA[[in] The managed entity where the default KMS cluster to be
                    set. Currently the valid managed entity could be
                    cluster or host folder.
                    If omitted, then will set global default KMS cluster.]]>
      </description-html>
      </parameter>
      <parameter name="clusterId" type-id-ref="vim.encryption.KeyProviderId"
      vmodl-name="clusterId"
      version-id-ref="vim.version.v7_0"
      is-optional="true"
      privilege="clusterId"
      >
      <description-html>
         <![CDATA[[in] KMS cluster ID to become default.
                       If omitted, then will clear the default KMS cluster
                       setting.]]>
      </description-html>
      </parameter>
   </method>
   <method name="GetDefaultKmsCluster"
      vmodl-name="getDefaultKmsCluster"
      version-id-ref="vim.version.v7_0"
      is-optional="true"
      privilege="Cryptographer.ManageKeyServers"
      type-id-ref="vim.encryption.KeyProviderId"
      >
      <description-html>
         <![CDATA[Get the default KMS cluster of the specified managed entity.]]>
      </description-html>
      <parameter name="entity" type-id-ref="vim.ManagedEntity"
      vmodl-name="entity"
      version-id-ref="vim.version.v7_0"
      is-optional="true"
      privilege="entity"
      >
      <description-html>
         <![CDATA[[in] The entity where the default KMS cluster to get.
                    If omitted, then return global default KMS cluster.]]>
      </description-html>
      </parameter>
      <parameter name="defaultsToParent" type-id-ref="BOOLEAN"
      vmodl-name="defaultsToParent"
      version-id-ref="vim.version.v7_0"
      is-optional="true"
      privilege="defaultsToParent"
      >
      <description-html>
         <![CDATA[[in] (Optional, default = false) If set to true,
                         then get the default kms cluster follow the
                         entity hierarchy. That means if the entity has
                         no default kms cluster, then try to get from
                         its parent.]]>
      </description-html>
      </parameter>
      <return-value-description-html>
         <![CDATA[The default kms cluster of the entity, if any.]]>
      </return-value-description-html>
   </method>
   <method name="QueryCryptoKeyStatus"
      vmodl-name="queryCryptoKeyStatus"
      version-id-ref="vim.version.version14"
      is-array="true"
      is-optional="true"
      privilege="Cryptographer.ManageKeys"
      type-id-ref="vim.encryption.CryptoManagerKmip.CryptoKeyStatus"
      >
      <description-html>
         <![CDATA[Check CryptoKey status, such as if VC can access the key, if the key is
 used by some VMs or as host key.]]>
      </description-html>
      <parameter name="keyIds" type-id-ref="vim.encryption.CryptoKeyId"
      vmodl-name="keyIds"
      version-id-ref="vim.version.version14"
      is-array="true"
      is-optional="true"
      privilege="keyIds"
      >
      <description-html>
         <![CDATA[[in] The Crypto Key Ids to query.]]>
      </description-html>
      </parameter>
      <parameter name="checkKeyBitMap" type-id-ref="INT"
      vmodl-name="checkKeyBitMap"
      version-id-ref="vim.version.version14"
      privilege="checkKeyBitMap"
      >
      <description-html>
         <![CDATA[[in] The key state to check. Supported value:
                    0x01. check if key data is available to VC.
                    0x02. check the VMs which use that key.
                    0x04. check the hosts using this key as host key.
                    0x08. Check 3rd party program which use that key.
                    Other bits - reserved and will be igonred.]]>
      </description-html>
      </parameter>
      <return-value-description-html>
         <![CDATA[The structure combined with key status. If bit in parameter
                    is not set when invoke, the returned data in related
                    CryptoKeyStatus will be unknown.]]>
      </return-value-description-html>
   </method>
   <method name="RegisterKmsCluster"
      vmodl-name="registerKmsCluster"
      version-id-ref="vim.version.v7_0"
      privilege="Cryptographer.ManageKeyServers"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Register the specified KMS cluster to the CryptoManager.]]>
      </description-html>
      <parameter name="clusterId" type-id-ref="vim.encryption.KeyProviderId"
      vmodl-name="clusterId"
      version-id-ref="vim.version.v7_0"
      privilege="clusterId"
      >
      <description-html>
         <![CDATA[[in] KMS cluster ID to register.]]>
      </description-html>
      </parameter>
      <parameter name="managementType" type-id-ref="java.lang.String"
      vmodl-name="managementType"
      version-id-ref="vim.version.v7_0"
      is-optional="true"
      privilege="managementType"
      >
      <description-html>
         <![CDATA[[in] Key provider management type
                       See <a href="vim.encryption.KmipClusterInfo.KmsManagementType.html">KmipClusterInfoKmsManagementType</a>
                       for valid values.
                       By default trustAuthority.]]>
      </description-html>
      </parameter>
   </method>
   <method name="UnregisterKmsCluster"
      vmodl-name="unregisterKmsCluster"
      version-id-ref="vim.version.v7_0"
      privilege="Cryptographer.ManageKeyServers"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Unregister the specified KMS cluster from the CryptoManager.]]>
      </description-html>
      <parameter name="clusterId" type-id-ref="vim.encryption.KeyProviderId"
      vmodl-name="clusterId"
      version-id-ref="vim.version.v7_0"
      privilege="clusterId"
      >
      <description-html>
         <![CDATA[[in] KMS cluster ID to unregister.]]>
      </description-html>
      </parameter>
   </method>
   <method name="ListKmsClusters"
      vmodl-name="listKmsClusters"
      version-id-ref="vim.version.v7_0"
      is-array="true"
      is-optional="true"
      privilege="Cryptographer.ManageKeyServers"
      type-id-ref="vim.encryption.KmipClusterInfo"
      >
      <description-html>
         <![CDATA[List the KMS clusters information.]]>
      </description-html>
      <parameter name="includeKmsServers" type-id-ref="BOOLEAN"
      vmodl-name="includeKmsServers"
      version-id-ref="vim.version.v7_0"
      is-optional="true"
      privilege="includeKmsServers"
      >
      <description-html>
         <![CDATA[[in] Whether to list KMS servers information
                               in the cluster.
                               By default will not include the KMS servers
                               information.]]>
      </description-html>
      </parameter>
      <parameter name="managementTypeFilter" type-id-ref="INT"
      vmodl-name="managementTypeFilter"
      version-id-ref="vim.version.v7_0"
      is-optional="true"
      privilege="managementTypeFilter"
      >
      <description-html>
         <![CDATA[[in] The KMS cluster management type filter.
                        Bit map values:
                           0x01 - Return VC managed Key Providers
                                  registered in the CryptoManager.
                           0x02 - Return Trusted Key Providers
                                  registered in the CryptoManager.
                           0x04 - Return Trusted Key Providers which are
                                  not registered with the CryptoManager.
                           others - reserved, will be ignored
                        If omitted or -1, then all kinds of Key Providers
                        will be returned.]]>
      </description-html>
      </parameter>
      <parameter name="statusFilter" type-id-ref="INT"
      vmodl-name="statusFilter"
      version-id-ref="vim.version.v7_0"
      is-optional="true"
      privilege="statusFilter"
      >
      <description-html>
         <![CDATA[[in] The Key Provider status filter.
                        Bit map values:
                           0x01 - Return active Key Providers.
                           0x02 - Return inactive Key Providers.
                           others - reserved, will be ignored
                        If omitted or -1, then all status of Key Providers
                        will be returned.]]>
      </description-html>
      </parameter>
      <return-value-description-html>
         <![CDATA[List of Key Providers.]]>
      </return-value-description-html>
   </method>
   </managed-object>
   <managed-object name="OverheadMemoryManager"
      type-id="vim.OverheadMemoryManager"
      vmodl-name="vim.OverheadMemoryManager"
      version-id-ref="vim.version.version10"
      >
      <description-html>
         <![CDATA[Provide static VM overhead memory values for (vm, host) pairs in
 Virtual Center.]]>
      </description-html>
   <method name="LookupVmOverheadMemory"
      vmodl-name="lookupVmOverheadMemory"
      privilege="Global.VCServer"
      type-id-ref="LONG"
      >
      <description-html>
         <![CDATA[Return static VM overhead memory value in bytes for a (vm, host) pair from
 the overhead memory module (OMM) in Virtual Center.]]>
      </description-html>
      <parameter name="vm" type-id-ref="vim.VirtualMachine"
      vmodl-name="vm"
      version-id-ref="vim.version.version10"
      privilege="vm"
      >
      <description-html>
         <![CDATA[The Virtual Machine managed object reference.]]>
      </description-html>
      </parameter>
      <parameter name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      version-id-ref="vim.version.version10"
      privilege="host"
      >
      <description-html>
         <![CDATA[The Host managed object reference.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[If the overhead memory value is not found in the OMM.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vmodl.fault.InvalidArgument">
      <fault-description-html>
         <![CDATA[If any of the MoRefs are NULL.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vmodl.fault.ManagedObjectNotFound">
      <fault-description-html>
         <![CDATA[If the inventory objects cannot be found.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vmodl.fault.InvalidType">
      <fault-description-html>
         <![CDATA[If the MoRefs do not point to appropriate type of
         inventory objects - VM and Host respectively.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[Overhead memory value, if found in the OMM.]]>
      </return-value-description-html>
   </method>
   </managed-object>
   <managed-object name="HostKernelModuleSystem"
      type-id="vim.host.KernelModuleSystem"
      vmodl-name="vim.host.KernelModuleSystem"
      version-id-ref="vim.version.version3"
      >
      <description-html>
         <![CDATA[The KernelModuleSystem managed object controls the configuration
  of kernel modules on the host.]]>
      </description-html>
      <nested-type-id-ref>vim.host.KernelModuleSystem.ModuleInfo</nested-type-id-ref>
   <method name="QueryModules"
      vmodl-name="queryModules"
      version-id-ref="vim.version.version5"
      is-array="true"
      is-optional="true"
      privilege="Host.Config.Settings"
      type-id-ref="vim.host.KernelModuleSystem.ModuleInfo"
      >
      <description-html>
         <![CDATA[Query the set of modules on the host.]]>
      </description-html>
   </method>
   <method name="UpdateModuleOptionString"
      vmodl-name="updateModuleOptionString"
      privilege="Host.Config.Settings"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Specifies the options to be passed to the kernel module when loaded.]]>
      </description-html>
      <parameter name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      version-id-ref="vim.version.version3"
      privilege="name"
      >
      <description-html>
         <![CDATA[Module name.]]>
      </description-html>
      </parameter>
      <parameter name="options" type-id-ref="java.lang.String"
      vmodl-name="options"
      version-id-ref="vim.version.version3"
      privilege="options"
      >
      <description-html>
         <![CDATA[Option string to be passed to the kernel module at
         load time.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[if the kernel module does not exist on the host.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="QueryConfiguredModuleOptionString"
      vmodl-name="queryConfiguredModuleOptionString"
      privilege="Host.Config.Settings"
      type-id-ref="java.lang.String"
      >
      <description-html>
         <![CDATA[Query the options configured to be passed to the kernel module when loaded.
  Note that this is not necessarily the option string currently in use by
  the kernel module.]]>
      </description-html>
      <parameter name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      version-id-ref="vim.version.version3"
      privilege="name"
      >
      <description-html>
         <![CDATA[Module name.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[if the kernel module does not exist on the host.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[Option string to be passed to the kernel module at load time.]]>
      </return-value-description-html>
   </method>
   </managed-object>
   <managed-object name="HostStorageSystem"
      type-id="vim.host.StorageSystem"
      vmodl-name="vim.host.StorageSystem"
      version-id-ref="vim.version.version1"
      base-type-id="vim.ExtensibleManagedObject"
      >
      <description-html>
         <![CDATA[This managed object gets and sets configuration information
  about the host's storage subsystem.  The properties and operations are
  used to configure the host to make storage available for virtual machines.

  This object contains properties that are specific to ESX Server and
  general to both the ESX Server system and the hosted architecture.]]>
      </description-html>
            <property name="storageDeviceInfo" type-id-ref="vim.host.StorageDeviceInfo"
      vmodl-name="storageDeviceInfo"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Host storage information up to the device level.]]>
      </description-html>
      </property>

            <property name="fileSystemVolumeInfo" type-id-ref="vim.host.FileSystemVolumeInfo"
      vmodl-name="fileSystemVolumeInfo"
      >
      <description-html>
         <![CDATA[File system volume information for the host.  See the
  <a href="vim.host.FileSystemVolumeInfo.html">FileSystemVolumeInfo</a> data
  object type for more information.]]>
      </description-html>
      </property>

            <property name="systemFile" type-id-ref="java.lang.String"
      vmodl-name="systemFile"
      version-id-ref="vim.version.version6"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Datastore paths of files used by the host system on
  mounted volumes, for instance, the COS vmdk file of the
  host. For information on datastore paths, see <a href="vim.Datastore.html">Datastore</a>.]]>
      </description-html>
      </property>

            <property name="multipathStateInfo" type-id-ref="vim.host.MultipathStateInfo"
      vmodl-name="multipathStateInfo"
      version-id-ref="vim.version.version5"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Runtime information about the state of a multipath path.
  A null value will be returned if path state information is not available
  for this system.
  <p>
  In systems prior to the plug-store architecture, the state of a path
  may be accessible on the <a href="vim.host.MultipathInfo.html">HostMultipathInfo</a> data object
  of the <a href="vim.host.StorageSystem.html#storageDeviceInfo">StorageDeviceInfo</a> property.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.host.StorageSystem.VmfsVolumeResult</nested-type-id-ref>
      <nested-type-id-ref>vim.host.StorageSystem.ScsiLunResult</nested-type-id-ref>
      <nested-type-id-ref>vim.host.StorageSystem.DiskLocatorLedResult</nested-type-id-ref>
   <method name="RetrieveDiskPartitionInfo"
      vmodl-name="retrieveDiskPartitionInfo"
      is-array="true"
      is-optional="true"
      privilege="System.Read"
      type-id-ref="vim.host.DiskPartitionInfo"
      >
      <description-html>
         <![CDATA[Gets the partition information for the disks named by the device names.]]>
      </description-html>
      <parameter name="devicePath" type-id-ref="java.lang.String"
      vmodl-name="devicePath"
      version-id-ref="vim.version.version1"
      is-array="true"
      privilege="devicePath"
      >
      <description-html>
         <![CDATA[An array of device path names that identify disks.
                    See <a href="vim.host.ScsiDisk.html">ScsiDisk</a>.]]>
      </description-html>
      </parameter>
      <return-value-description-html>
         <![CDATA[An array of information about the partitions.]]>
      </return-value-description-html>
   </method>
   <method name="ComputeDiskPartitionInfo"
      vmodl-name="computeDiskPartitionInfo"
      privilege="Host.Config.Storage"
      type-id-ref="vim.host.DiskPartitionInfo"
      >
      <description-html>
         <![CDATA[Computes the disk partition information given the desired disk layout.
  The server computes a new partition information object for a specific
  disk representing the desired layout.<br>See <a href="vim.host.DiskPartitionInfo.PartitionFormat.html">HostDiskPartitionInfoPartitionFormat</a><br>]]>
      </description-html>
      <parameter name="devicePath" type-id-ref="java.lang.String"
      vmodl-name="devicePath"
      version-id-ref="vim.version.version1"
      privilege="devicePath"
      >
      <description-html>
         <![CDATA[The name of the device path for the specific disk.<br>See <a href="vim.host.DiskPartitionInfo.PartitionFormat.html">HostDiskPartitionInfoPartitionFormat</a><br>]]>
      </description-html>
      </parameter>
      <parameter name="layout" type-id-ref="vim.host.DiskPartitionInfo.Layout"
      vmodl-name="layout"
      version-id-ref="vim.version.version1"
      privilege="layout"
      >
      <description-html>
         <![CDATA[A data object that describes the disk partition layout.<br>See <a href="vim.host.DiskPartitionInfo.PartitionFormat.html">HostDiskPartitionInfoPartitionFormat</a><br>]]>
      </description-html>
      </parameter>
      <parameter name="partitionFormat" type-id-ref="java.lang.String"
      vmodl-name="partitionFormat"
      version-id-ref="vim.version.version1"
      is-optional="true"
      privilege="partitionFormat"
      >
      <description-html>
         <![CDATA[Specifies the desired partition format to be
         computed from the block range.
         If partitionFormat is not specified, the existing partitionFormat
         on disk is used, if the disk is not blank and mbr otherwise.<br>See <a href="vim.host.DiskPartitionInfo.PartitionFormat.html">HostDiskPartitionInfoPartitionFormat</a><br>]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[if the device could not be found.<br>See <a href="vim.host.DiskPartitionInfo.PartitionFormat.html">HostDiskPartitionInfoPartitionFormat</a><br>]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[if unable to get the current partition information for
          the device.<br>See <a href="vim.host.DiskPartitionInfo.PartitionFormat.html">HostDiskPartitionInfoPartitionFormat</a><br>]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[A data object that contains information about
          the partitions on a disk]]>
      </return-value-description-html>
   </method>
   <method name="ComputeDiskPartitionInfoForResize"
      vmodl-name="computeDiskPartitionInfoForResize"
      version-id-ref="vim.version.version5"
      privilege="Host.Config.Storage"
      type-id-ref="vim.host.DiskPartitionInfo"
      >
      <description-html>
         <![CDATA[Computes the disk partition information for the purpose of resizing
  a given partition.<br>See <a href="vim.host.DiskPartitionInfo.PartitionFormat.html">HostDiskPartitionInfoPartitionFormat</a><br>]]>
      </description-html>
      <parameter name="partition" type-id-ref="vim.host.ScsiDisk.Partition"
      vmodl-name="partition"
      version-id-ref="vim.version.version5"
      privilege="partition"
      >
      <description-html>
         <![CDATA[The disk partition to resize.<br>See <a href="vim.host.DiskPartitionInfo.PartitionFormat.html">HostDiskPartitionInfoPartitionFormat</a><br>]]>
      </description-html>
      </parameter>
      <parameter name="blockRange" type-id-ref="vim.host.DiskPartitionInfo.BlockRange"
      vmodl-name="blockRange"
      version-id-ref="vim.version.version5"
      privilege="blockRange"
      >
      <description-html>
         <![CDATA[Specifies the desired block range for the resized
         partition. The start of the block range specified should match
         that of the current partition.<br>See <a href="vim.host.DiskPartitionInfo.PartitionFormat.html">HostDiskPartitionInfoPartitionFormat</a><br>]]>
      </description-html>
      </parameter>
      <parameter name="partitionFormat" type-id-ref="java.lang.String"
      vmodl-name="partitionFormat"
      version-id-ref="vim.version.version5"
      is-optional="true"
      privilege="partitionFormat"
      >
      <description-html>
         <![CDATA[Specifies the desired partition format to be
         computed from the block range.
         If partitionFormat is not specified, the existing partitionFormat
         on disk is used, if the disk is not blank and mbr otherwise.<br>See <a href="vim.host.DiskPartitionInfo.PartitionFormat.html">HostDiskPartitionInfoPartitionFormat</a><br>]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[if the device could not be found.<br>See <a href="vim.host.DiskPartitionInfo.PartitionFormat.html">HostDiskPartitionInfoPartitionFormat</a><br>]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[if unable to get the current partition
          information for the device.<br>See <a href="vim.host.DiskPartitionInfo.PartitionFormat.html">HostDiskPartitionInfoPartitionFormat</a><br>]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[resized disk partition information]]>
      </return-value-description-html>
   </method>
   <method name="UpdateDiskPartitions"
      vmodl-name="updateDiskPartitions"
      privilege="Host.Config.Storage"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Changes the partitions on the disk by supplying a partition specification
  and the device name.]]>
      </description-html>
      <parameter name="devicePath" type-id-ref="java.lang.String"
      vmodl-name="devicePath"
      version-id-ref="vim.version.version1"
      privilege="devicePath"
      >
      <description-html>
         <![CDATA[The name of the device path for the specific disk.]]>
      </description-html>
      </parameter>
      <parameter name="spec" type-id-ref="vim.host.DiskPartitionInfo.Specification"
      vmodl-name="spec"
      version-id-ref="vim.version.version1"
      privilege="spec"
      >
      <description-html>
         <![CDATA[A data object that describes the disk partition table
               specification used to configure the partitions on a disk.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[if the device could not be found.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[for all other configuration failures.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="FormatVmfs"
      vmodl-name="formatVmfs"
      privilege="Host.Config.Storage"
      type-id-ref="vim.host.VmfsVolume"
      >
      <description-html>
         <![CDATA[Formats a new VMFS on a disk partition.]]>
      </description-html>
      <parameter name="createSpec" type-id-ref="vim.host.VmfsVolume.Specification"
      vmodl-name="createSpec"
      version-id-ref="vim.version.version1"
      privilege="createSpec"
      >
      <description-html>
         <![CDATA[A data object that describes the VMware File System
                    (VMFS) creation specification.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.AlreadyExists">
      <fault-description-html>
         <![CDATA[if the volume name is already being used
          by another volume on the host.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[for all other configuration failures.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[A data object that represents the VMFS file system.]]>
      </return-value-description-html>
   </method>
   <method name="MountVmfsVolume"
      vmodl-name="mountVmfsVolume"
      version-id-ref="vim.version.version7"
      privilege="Host.Config.Storage"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Mount the unmounted Vmfs volume. A newly discovered vmfs volume will be
  mounted unless, it has been explicitly unmounted. The default mount
  behavior of Vmfs volumes is auto-mount. See <a href="vim.host.StorageSystem.html#unmountVmfsVolume">UnmountVmfsVolume</a>.
  <p>
  mountVmfsVolume is part of the Unmount / Detach workflow used
  when a device will be permanently removed.
    See also <a href="vim.host.StorageSystem.html#detachScsiLun">DetachScsiLun</a>.]]>
      </description-html>
      <parameter name="vmfsUuid" type-id-ref="java.lang.String"
      vmodl-name="vmfsUuid"
      version-id-ref="vim.version.version7"
      privilege="vmfsUuid"
      >
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[if VMFS Uuid is not found on the host.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if
  <ul>
   <li> The volume is already mounted. </li>
   <li> The volume is inaccessible. </li>
  </ul>]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[for all other configuration failures.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.ResourceInUse">
      </fault>
   </method>
   <method name="UnmountVmfsVolume"
      vmodl-name="unmountVmfsVolume"
      version-id-ref="vim.version.version7"
      privilege="Host.Config.Storage"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Unmount the Vmfs volume. An unmounted volume cannot be used for any
  filesystem operation requiring I/O. In contrast to removal, this
  operation does not destroy or alter partitions on which vmfs volumes
  reside. The mountState will be persisted across filesystem rescans and
  host reboots. See <a href="vim.host.StorageSystem.html#mountVmfsVolume">MountVmfsVolume</a>.
  <p>
  unmountVmfsVolume is part of the Unmount / Detach workflow used
  when a device will be permanently removed.

  <pre>
                     Mounted Vmfs Volume
    unmountVmfsVolume  |  ^ mountVmfsVolume
                       V  |
                     Unmounted Vmfs Volume

         Attached Scsi Device (honors I/O)
    detachScsiLun      |  ^ attachScsiLun
                       V  |
  Detached Scsi Device (does not honor I/O)
  </pre>
  <p>
  It is safe to unprovision a Lun from the Storage array *only*
  after a Scsi device is detached.
  <p>
  The best practice for decommisioning a Lun would be to find
  out the set of subsystems that a Lun is being used for.
  Many of the systems are listed as exceptions in the
  function documentation.
  <p>
    One typical workflow could be:
  <p>
  <ul>
    <li>Find out if the device is used as a Vmfs Extent. (See VmfsVolume.Extent API)</li>
    <li>Unmount the Vmfs Volume.</li>
    <li>Find out if device is used by the Diagnostic system (See Diagnostic System API).</li>
    <li>Deactivate the diagnostic system, if it is being used.</li>
    <li>Find out if this device is used to back a VM's RDM (See VirtualMachine API).</li>
    <li>Remove this device from the VM.</li>
    <li>Detach the Scsi device.</li>
    <li>On success, it is safe to decommision the Lun at this point.</li>
  </ul>
  See also <a href="vim.host.StorageSystem.html#detachScsiLun">DetachScsiLun</a>.]]>
      </description-html>
      <parameter name="vmfsUuid" type-id-ref="java.lang.String"
      vmodl-name="vmfsUuid"
      version-id-ref="vim.version.version7"
      privilege="vmfsUuid"
      >
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[if VMFS Uuid is not found on the host.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if
  <ul>
   <li>The volume is already unmounted.</li>
   <li>The volume is inaccessible.</li>
  </ul>]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[for all other configuration failures.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.ResourceInUse">
      <fault-description-html>
         <![CDATA[if
  <ul>
   <li>There is any VM registered on this volume.</li>
   <li>1 or more programs have I/O outstanding on this volume.</li>
  </ul>]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="UnmountVmfsVolumeEx"
      vmodl-name="unmountVmfsVolumeEx"
      version-id-ref="vim.version.version10"
      is-array="true"
      privilege="Host.Config.Storage"
      type-id-ref="vim.host.StorageSystem.VmfsVolumeResult"
      is-task="true"
      >
      <description-html>
         <![CDATA[Unmount one or more VMFS volumes. This is an asynchronous, batch operation of
  unmountVmfsVolume. Please see <a href="vim.host.StorageSystem.html#unmountVmfsVolume">UnmountVmfsVolume</a>
  for operational details.]]>
      </description-html>
      <parameter name="vmfsUuid" type-id-ref="java.lang.String"
      vmodl-name="vmfsUuid"
      version-id-ref="vim.version.version10"
      is-array="true"
      privilege="vmfsUuid"
      >
      <description-html>
         <![CDATA[each element specifies the UUID of a VMFS volume to be unmounted.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[for host configuration failures.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[VmfsVolumeResult  each element specifies result of an unmount
                                   request. The faults are specified in
                                   <a href="vim.host.StorageSystem.html#unmountVmfsVolume">UnmountVmfsVolume</a>.]]>
      </return-value-description-html>
   </method>
   <method name="MountVmfsVolumeEx"
      vmodl-name="mountVmfsVolumeEx"
      version-id-ref="vim.version.version10"
      is-array="true"
      privilege="Host.Config.Storage"
      type-id-ref="vim.host.StorageSystem.VmfsVolumeResult"
      is-task="true"
      >
      <description-html>
         <![CDATA[Mount one or more VMFS volumes. This is an asynchronous, batch operation of
  mountVmfsVolume. Please see <a href="vim.host.StorageSystem.html#mountVmfsVolume">MountVmfsVolume</a>
  for operational details.]]>
      </description-html>
      <parameter name="vmfsUuid" type-id-ref="java.lang.String"
      vmodl-name="vmfsUuid"
      version-id-ref="vim.version.version10"
      is-array="true"
      privilege="vmfsUuid"
      >
      <description-html>
         <![CDATA[each element specifies the UUID of a VMFS volume to be unmounted.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[for host configuration failures.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[VmfsVolumeResult  each element specifies result of an mount
                                   request. The faults are specified in
                                   <a href="vim.host.StorageSystem.html#mountVmfsVolume">MountVmfsVolume</a>.]]>
      </return-value-description-html>
   </method>
   <method name="UnmapVmfsVolumeEx"
      vmodl-name="unmapVmfsVolumeEx"
      version-id-ref="vim.version.version10"
      is-array="true"
      privilege="Host.Config.Storage"
      type-id-ref="vim.host.StorageSystem.VmfsVolumeResult"
      is-task="true"
      >
      <description-html>
         <![CDATA[Unmap one or more VMFS volumes. This is an asynchronous, batch operation.
  The operation unmaps free blocks in each VMFS volume.]]>
      </description-html>
      <parameter name="vmfsUuid" type-id-ref="java.lang.String"
      vmodl-name="vmfsUuid"
      version-id-ref="vim.version.version10"
      is-array="true"
      privilege="vmfsUuid"
      >
      <description-html>
         <![CDATA[each element specifies the UUID of a VMFS volume to be unmapped.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[for host configuration failures.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[VmfsVolumeResult  each element specifies result of an unmap operation.
    An unmap operation may fail due to
    InvalidState - If the volume is already unmounted or if the volume is inaccessible
    HostConfigFault - For all other exceptions.]]>
      </return-value-description-html>
   </method>
   <method name="DeleteVmfsVolumeState"
      vmodl-name="deleteVmfsVolumeState"
      version-id-ref="vim.version.version7"
      internal-before-version-id-ref="vim.version.version8"
      privilege="Host.Config.Storage"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[For previously unmounted VMFS volume, remove the state information from
  host.

  VMFS volumes mount state is maintained by host.

  <p>
  deleteVmfsVolumeState is part of the Unmount/Detach workflow used
  when the device will be permanently removed.
  See also <a href="vim.host.StorageSystem.html#unmountVmfsVolume">UnmountVmfsVolume</a>.

  If the VMFS volume is unmounted using unmountVmfsVolume, ESX maintains
  the state of VMFS volume. This API will remove the state from the host.

  If the underlying storage device is going to be un-provisioned on the
  array side, please detach the storage device.
  See also <a href="vim.host.StorageSystem.html#detachScsiLun">DetachScsiLun</a>.]]>
      </description-html>
      <parameter name="vmfsUuid" type-id-ref="java.lang.String"
      vmodl-name="vmfsUuid"
      version-id-ref="vim.version.version7"
      privilege="vmfsUuid"
      >
      <description-html>
         <![CDATA[The VMFS UUID.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[for any configuration failures.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="RescanVmfs"
      vmodl-name="rescanVmfs"
      privilege="Host.Config.Storage"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Rescans for new Virtual Machine File Systems (VMFS).
  The <a href="vim.host.StorageSystem.html#refresh">RefreshStorageSystem</a> method also performs a VMFS rescan.
  <p>
  <a href="vim.host.StorageSystem.html#rescanVmfs">RescanVmfs</a> may update the
  <a href="vim.HostSystem.html">HostSystem</a>.<a href="vim.HostSystem.html#config">Config</a>.<a href="vim.host.ConfigInfo.html#fileSystemVolume">fileSystemVolume</a> property.
  The Server performs asynchronous updates to the inventory. Use the
  <a href="vmodl.query.PropertyCollector.html">PropertyCollector</a>.<a href="vmodl.query.PropertyCollector.html#waitForUpdatesEx">WaitForUpdatesEx</a>
  method to obtain the property changes.]]>
      </description-html>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[if configuration fails.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="AttachVmfsExtent"
      vmodl-name="attachVmfsExtent"
      privilege="Host.Config.Storage"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Extends a VMFS by attaching a disk partition as an extent.]]>
      </description-html>
      <parameter name="vmfsPath" type-id-ref="java.lang.String"
      vmodl-name="vmfsPath"
      version-id-ref="vim.version.version1"
      privilege="vmfsPath"
      >
      <description-html>
         <![CDATA[The path of the VMFS to extend. See <a href="vim.host.FileSystemMountInfo.html">FileSystemMountInfo</a>.]]>
      </description-html>
      </parameter>
      <parameter name="extent" type-id-ref="vim.host.ScsiDisk.Partition"
      vmodl-name="extent"
      version-id-ref="vim.version.version1"
      privilege="extent"
      >
      <description-html>
         <![CDATA[A data object that describes the specification of a
                Disk partition.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[if the VMFS cannot be found or is unmounted.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[for all other configuration failures.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="ExpandVmfsExtent"
      vmodl-name="expandVmfsExtent"
      version-id-ref="vim.version.version5"
      privilege="Host.Config.Storage"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Expands a VMFS extent as specified by the Disk partition specification.]]>
      </description-html>
      <parameter name="vmfsPath" type-id-ref="java.lang.String"
      vmodl-name="vmfsPath"
      version-id-ref="vim.version.version5"
      privilege="vmfsPath"
      >
      <description-html>
         <![CDATA[The path of the VMFS to expand. See <a href="vim.host.FileSystemMountInfo.html">FileSystemMountInfo</a>.]]>
      </description-html>
      </parameter>
      <parameter name="extent" type-id-ref="vim.host.ScsiDisk.Partition"
      vmodl-name="extent"
      version-id-ref="vim.version.version5"
      privilege="extent"
      >
      <description-html>
         <![CDATA[The disk partition corresponding to the extent to be
         expanded.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[if the VMFS cannot be found or is unmounted.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[for all other configuration failures.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="UpgradeVmfs"
      vmodl-name="upgradeVmfs"
      privilege="Host.Config.Storage"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Upgrades the VMFS to the <a href="vim.host.Capability.html#supportedVmfsMajorVersion">supportedVmfsMajorVersion</a>.
  <p> Prerequisite:<br>
  All hosts that have mounted the volume must support the VMFS
  version to which the volume will be upgraded.]]>
      </description-html>
      <parameter name="vmfsPath" type-id-ref="java.lang.String"
      vmodl-name="vmfsPath"
      version-id-ref="vim.version.version1"
      privilege="vmfsPath"
      >
      <description-html>
         <![CDATA[The path of the VMFS.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[if the VMFS cannot be found or is unmounted.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[if the prerequisite is not satisfied
                          or for all other configuration
                          failures.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="UpgradeVmLayout"
      vmodl-name="upgradeVmLayout"
      privilege="Host.Config.Storage"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Iterates over all registered virtual machines. For each VM which .vmx file
  is located on the service console and all disks are available on VMFS3 or NAS,
  it will relocate the disks into directories if stored in the ROOT, and
  relocate the VMX file into the directory too. Events are logged for each
  virtual machine that is relocated.
  <p>
  On ESXi systems, this operation has no effect.]]>
      </description-html>
   </method>
   <method name="QueryUnresolvedVmfsVolume"
      vmodl-name="queryUnresolvedVmfsVolume"
      version-id-ref="vim.version.version5"
      is-array="true"
      is-optional="true"
      privilege="System.Read"
      type-id-ref="vim.host.UnresolvedVmfsVolume"
      >
      <description-html>
         <![CDATA[Get the list of unbound VMFS volumes.
  For sharing a volume across hosts, a VMFS volume is bound to its
  underlying block device storage. When a low level block copy is
  performed to copy or move the VMFS volume, the copied volume will
  be unbound.]]>
      </description-html>
      <return-value-description-html>
         <![CDATA[An array of unbound VMFS volumes.]]>
      </return-value-description-html>
   </method>
   <method name="ResolveMultipleUnresolvedVmfsVolumes"
      vmodl-name="resolveMultipleUnresolvedVmfsVolumes"
      version-id-ref="vim.version.version5"
      is-array="true"
      is-optional="true"
      privilege="Host.Config.Storage"
      type-id-ref="vim.host.UnresolvedVmfsResolutionResult"
      >
      <description-html>
         <![CDATA[Resignature or 'Force Mount' list of unbound VMFS volumes.

  To safely enable sharing of the volume across hosts, a VMFS volume
  is bound to its underlying block device storage.  When a low level
  block copy is performed to copy or move the VMFS volume, the copied
  volume will be unbound.  In order for the VMFS volume to be usable,
  a resolution operation is needed to determine whether the VMFS volume
  should be treated as a new volume or not and what extents compose
  that volume in the event there is more than one unbound volume.
  <p>
  Resignature results in a new VMFS volume on the host.
  Operations performed at the StorageSystem interface apply only to a
  specific host.  Hence, callers of this method are responsible for
  issuing rescan operations to detect the new VMFS volume on other hosts.
  Alternatively, callers that want VirtualCenter to handle rescanning
  the necessary hosts should use the DatastoreSystem interface.
  <p>
  When user wants to keep the original Vmfs Uuid and  mount it
  on the host, set the 'resolutionSpec.uuidResolution' to 'forceMounted'
  This is per-host operation.

  It will return an array of ResolutionResult describing success or failure
  associated with each specification.
  <p>]]>
      </description-html>
      <parameter name="resolutionSpec" type-id-ref="vim.host.UnresolvedVmfsResolutionSpec"
      vmodl-name="resolutionSpec"
      version-id-ref="vim.version.version5"
      is-array="true"
      privilege="resolutionSpec"
      >
      <description-html>
         <![CDATA[List of data object that describes what the disk
                        extents to be used for creating the new
                        VMFS volume.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[if batch operation fails on the host.
  Because the returned array of ResolutionResult contains the new VMFS volume
  or fault for each operation, as of vSphere API 5.x, we won't throw fault when
  batch operation fails.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[A data object that represents the VMFS file system and return status value.]]>
      </return-value-description-html>
   </method>
   <method name="ResolveMultipleUnresolvedVmfsVolumesEx"
      vmodl-name="resolveMultipleUnresolvedVmfsVolumesEx"
      version-id-ref="vim.version.version9"
      is-array="true"
      is-optional="true"
      privilege="Host.Config.Storage"
      type-id-ref="vim.host.UnresolvedVmfsResolutionResult"
      is-task="true"
      >
      <description-html>
         <![CDATA[Resignature or 'Force Mount' list of unbound VMFS volumes.
  <p>
  To safely enable sharing of the volume across hosts, a VMFS volume
  is bound to its underlying block device storage.  When a low level
  block copy is performed to copy or move the VMFS volume, the copied
  volume will be unbound.  In order for the VMFS volume to be usable,
  a resolution operation is needed to determine whether the VMFS volume
  should be treated as a new volume or not and what extents compose
  that volume in the event there is more than one unbound volume.
  <p>
  Resignature results in a new VMFS volume on the host.
  Operations performed at the <a href="vim.host.StorageSystem.html">HostStorageSystem</a> interface apply only to a
  specific host.  Hence, callers of this method are responsible for
  issuing rescan operations to detect the new VMFS volume on other hosts.
  Alternatively, callers that want VirtualCenter to handle rescanning
  the necessary hosts should use the <a href="vim.host.DatastoreSystem.html">HostDatastoreSystem</a> interface.
  <p>
  When user wants to keep the original VMFS UUID and mount it
  on the host, set the resolutionSpec.uuidResolution
  (<a href="vim.host.UnresolvedVmfsResolutionSpec.html#uuidResolution">uuidResolution</a>)
  to vim.host.UnresolvedVmfsResolutionSpec.VmfsUuidResolution#forceMount.
  This is per-host operation.
  <p>
  It will return an array of <a href="vim.host.UnresolvedVmfsResolutionResult.html">HostUnresolvedVmfsResolutionResult</a>
  describing success or failure associated with each specification.
  <p>
  This method behaves the same as <a href="vim.host.StorageSystem.html#resolveMultipleUnresolvedVmfsVolumes">ResolveMultipleUnresolvedVmfsVolumes</a>
  except that it returns a task to support monitoring the operation.
  This is important for operations with large number of
  unresolved volumes which may take potentially dozens of minutes to complete.
  <p>]]>
      </description-html>
      <parameter name="resolutionSpec" type-id-ref="vim.host.UnresolvedVmfsResolutionSpec"
      vmodl-name="resolutionSpec"
      version-id-ref="vim.version.version9"
      is-array="true"
      privilege="resolutionSpec"
      >
      <description-html>
         <![CDATA[List of data object that describes what the disk
                        extents to be used for creating the new
                        VMFS volume.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[if batch operation fails on the host.
  Because the returned array of ResolutionResult contains the new VMFS volume
  or fault for each operation, as of vSphere API 5.x, we won't throw fault when
  batch operation fails.]]>
      </fault-description-html>
      </fault>
      <task-description-html>
         <![CDATA[This method returns a <a href="vim.Task.html">Task</a> object with which to monitor the
  operation. The <a href="vim.TaskInfo.html#result">result</a> property in the
  <a href="vim.Task.html">Task</a> contains an array of <a href="vim.host.UnresolvedVmfsResolutionResult.html">HostUnresolvedVmfsResolutionResult</a>
  describing success or failure associated with each specification.]]>
      </task-description-html>
   </method>
   <method name="UnmountForceMountedVmfsVolume"
      vmodl-name="unmountForceMountedVmfsVolume"
      version-id-ref="vim.version.version5"
      privilege="Host.Config.Storage"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Unmount the 'forceMounted' Vmfs volume.

  When a low level block copy is performed to copy or move the
  VMFS volume, the copied volume is unresolved. For the VMFS
  volume to be usable, a resolution operation is applied. As
  part of resolution operation, user may decide to keep the
  original VMFS Uuid. Once the resolution is applied, the VMFS
  volume is mounted on the host for its use. User can unmount
  the VMFS volume if it is not being used by any registered
  VMs.]]>
      </description-html>
      <parameter name="vmfsUuid" type-id-ref="java.lang.String"
      vmodl-name="vmfsUuid"
      version-id-ref="vim.version.version5"
      privilege="vmfsUuid"
      >
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[if VMFS Uuid is not found on the host.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[for all other configuration failures.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="RescanHba"
      vmodl-name="rescanHba"
      privilege="Host.Config.Storage"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Issues a request to rescan a specific host bus adapter
  for new storage devices.]]>
      </description-html>
      <parameter name="hbaDevice" type-id-ref="java.lang.String"
      vmodl-name="hbaDevice"
      version-id-ref="vim.version.version1"
      privilege="hbaDevice"
      >
      <description-html>
         <![CDATA[The device of the host bus adapter.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[if the host bus adapter cannot be found.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[for all other configuration failures.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="RescanAllHba"
      vmodl-name="rescanAllHba"
      privilege="Host.Config.Storage"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Scans all host bus adapters to obtain the current list of devices and device topology.
  The <a href="vim.host.StorageSystem.html#rescanAllHba">RescanAllHba</a> method looks for new devices,
  removed devices, and path changes.
  <p>
  This method may update the following inventory elements:
  <ul>
  <li>Devices and storage topology
      (<a href="vim.HostSystem.html">HostSystem</a>.<a href="vim.HostSystem.html#config">Config</a>.<a href="vim.host.ConfigInfo.html#storageDevice">storageDevice</a>).</li>
  <li>VMFS and NFS datastores (<a href="vim.HostSystem.html">HostSystem</a>.<a href="vim.HostSystem.html#datastore">Datastore</a>).</li>
  <li>File system volumes (<a href="vim.HostSystem.html">HostSystem</a>.<a href="vim.HostSystem.html#config">Config</a>.<a href="vim.host.ConfigInfo.html#fileSystemVolume">fileSystemVolume</a>).</li>
  </ul>
  <p>
  The Server performs asynchronous updates to the inventory. Use the
  <a href="vmodl.query.PropertyCollector.html">PropertyCollector</a>.<a href="vmodl.query.PropertyCollector.html#waitForUpdatesEx">WaitForUpdatesEx</a>
  method to obtain the property changes.]]>
      </description-html>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[if rescan failed.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="UpdateSoftwareInternetScsiEnabled"
      vmodl-name="updateSoftwareInternetScsiEnabled"
      privilege="Host.Config.Storage"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Enables or disables Software iSCSI.]]>
      </description-html>
      <parameter name="enabled" type-id-ref="BOOLEAN"
      vmodl-name="enabled"
      version-id-ref="vim.version.version1"
      privilege="enabled"
      >
      <description-html>
         <![CDATA[True to enable the iSCSI; false to disable it]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[for any configuration failure.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="UpdateInternetScsiDiscoveryProperties"
      vmodl-name="updateInternetScsiDiscoveryProperties"
      privilege="Host.Config.Storage"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Updates the Discovery properties for an iSCSI host bus adapter.]]>
      </description-html>
      <parameter name="iScsiHbaDevice" type-id-ref="java.lang.String"
      vmodl-name="iScsiHbaDevice"
      version-id-ref="vim.version.version1"
      privilege="iScsiHbaDevice"
      >
      <description-html>
         <![CDATA[The device of the Internet SCSI HBA adapter.]]>
      </description-html>
      </parameter>
      <parameter name="discoveryProperties" type-id-ref="vim.host.InternetScsiHba.DiscoveryProperties"
      vmodl-name="discoveryProperties"
      version-id-ref="vim.version.version1"
      privilege="discoveryProperties"
      >
      <description-html>
         <![CDATA[The discovery settings for this host bus adapter.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[if the host bus adapter could not be found.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[for all other configuration failures.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="UpdateInternetScsiAuthenticationProperties"
      vmodl-name="updateInternetScsiAuthenticationProperties"
      privilege="Host.Config.Storage"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Updates the authentication properties for one or more targets or
  discovery addresses associated with an iSCSI host bus adapter.]]>
      </description-html>
      <parameter name="iScsiHbaDevice" type-id-ref="java.lang.String"
      vmodl-name="iScsiHbaDevice"
      version-id-ref="vim.version.version1"
      privilege="iScsiHbaDevice"
      >
      <description-html>
         <![CDATA[The device of the Internet SCSI HBA adapter.
         associated with the target.]]>
      </description-html>
      </parameter>
      <parameter name="authenticationProperties" type-id-ref="vim.host.InternetScsiHba.AuthenticationProperties"
      vmodl-name="authenticationProperties"
      version-id-ref="vim.version.version1"
      privilege="authenticationProperties"
      >
      <description-html>
         <![CDATA[The data object that represents
         the authentication settings to set.]]>
      </description-html>
      </parameter>
      <parameter name="targetSet" type-id-ref="vim.host.InternetScsiHba.TargetSet"
      vmodl-name="targetSet"
      version-id-ref="vim.version.version1"
      is-optional="true"
      privilege="targetSet"
      >
      <description-html>
         <![CDATA[The set the targets to configure. Optional,
         when obmitted will configura the authentication properties
         for the adapter instead.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[if the host bus adapter could not be found.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[for all other configuration failures.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="UpdateInternetScsiDigestProperties"
      vmodl-name="updateInternetScsiDigestProperties"
      version-id-ref="vim.version.version5"
      privilege="Host.Config.Storage"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Updates the digest properties for the iSCSI host bus adapter or the
  discovery addresses and targets associated with it.]]>
      </description-html>
      <parameter name="iScsiHbaDevice" type-id-ref="java.lang.String"
      vmodl-name="iScsiHbaDevice"
      version-id-ref="vim.version.version5"
      privilege="iScsiHbaDevice"
      >
      <description-html>
         <![CDATA[The device of the Internet SCSI HBA adapter.]]>
      </description-html>
      </parameter>
      <parameter name="targetSet" type-id-ref="vim.host.InternetScsiHba.TargetSet"
      vmodl-name="targetSet"
      version-id-ref="vim.version.version5"
      is-optional="true"
      privilege="targetSet"
      >
      <description-html>
         <![CDATA[The set the targets to configure. If not provided,
         the settings will be applied to the host bus adapter itself.]]>
      </description-html>
      </parameter>
      <parameter name="digestProperties" type-id-ref="vim.host.InternetScsiHba.DigestProperties"
      vmodl-name="digestProperties"
      version-id-ref="vim.version.version5"
      privilege="digestProperties"
      >
      <description-html>
         <![CDATA[The data object that represents the digest
         settings to set.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[if the host bus adapter could not be found.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[for all other configuration failures.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="UpdateInternetScsiAdvancedOptions"
      vmodl-name="updateInternetScsiAdvancedOptions"
      version-id-ref="vim.version.version5"
      privilege="Host.Config.Storage"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Updates the advanced options the iSCSI host bus adapter or the
  discovery addresses and targets associated with it.]]>
      </description-html>
      <parameter name="iScsiHbaDevice" type-id-ref="java.lang.String"
      vmodl-name="iScsiHbaDevice"
      version-id-ref="vim.version.version5"
      privilege="iScsiHbaDevice"
      >
      <description-html>
         <![CDATA[The device of the Internet SCSI HBA adapter.]]>
      </description-html>
      </parameter>
      <parameter name="targetSet" type-id-ref="vim.host.InternetScsiHba.TargetSet"
      vmodl-name="targetSet"
      version-id-ref="vim.version.version5"
      is-optional="true"
      privilege="targetSet"
      >
      <description-html>
         <![CDATA[The set the targets to configure. If not provided,
         the settings will be applied to the host bus adapter itself.]]>
      </description-html>
      </parameter>
      <parameter name="options" type-id-ref="vim.host.InternetScsiHba.ParamValue"
      vmodl-name="options"
      version-id-ref="vim.version.version5"
      is-array="true"
      privilege="options"
      >
      <description-html>
         <![CDATA[The list of options to set.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[if the host bus adapter could not be found.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[for all other configuration failures.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="UpdateInternetScsiIPProperties"
      vmodl-name="updateInternetScsiIPProperties"
      privilege="Host.Config.Storage"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Updates the IP properties for an iSCSI host bus adapter.]]>
      </description-html>
      <parameter name="iScsiHbaDevice" type-id-ref="java.lang.String"
      vmodl-name="iScsiHbaDevice"
      version-id-ref="vim.version.version1"
      privilege="iScsiHbaDevice"
      >
      <description-html>
         <![CDATA[The device of the Internet SCSI HBA adapter.]]>
      </description-html>
      </parameter>
      <parameter name="ipProperties" type-id-ref="vim.host.InternetScsiHba.IPProperties"
      vmodl-name="ipProperties"
      version-id-ref="vim.version.version1"
      privilege="ipProperties"
      >
      <description-html>
         <![CDATA[A data object representing the IP properties
                      for the host bus adapter]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[if the host bus adapter could not be found.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[for all other configuration failures.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="UpdateInternetScsiName"
      vmodl-name="updateInternetScsiName"
      privilege="Host.Config.Storage"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Updates the name of an iSCSI host bus adapter.]]>
      </description-html>
      <parameter name="iScsiHbaDevice" type-id-ref="java.lang.String"
      vmodl-name="iScsiHbaDevice"
      version-id-ref="vim.version.version1"
      privilege="iScsiHbaDevice"
      >
      <description-html>
         <![CDATA[The current name of the Internet SCSI HBA adapter.]]>
      </description-html>
      </parameter>
      <parameter name="iScsiName" type-id-ref="java.lang.String"
      vmodl-name="iScsiName"
      version-id-ref="vim.version.version1"
      privilege="iScsiName"
      >
      <description-html>
         <![CDATA[The new name for the Internet SCSI HBA adapter]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[if the host bus adapter could not be found.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[for all other configuration failures.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="UpdateInternetScsiAlias"
      vmodl-name="updateInternetScsiAlias"
      privilege="Host.Config.Storage"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Updates the alias of an iSCSI host bus adapter.]]>
      </description-html>
      <parameter name="iScsiHbaDevice" type-id-ref="java.lang.String"
      vmodl-name="iScsiHbaDevice"
      version-id-ref="vim.version.version1"
      privilege="iScsiHbaDevice"
      >
      <description-html>
         <![CDATA[The device of the Internet SCSI HBA adapter.]]>
      </description-html>
      </parameter>
      <parameter name="iScsiAlias" type-id-ref="java.lang.String"
      vmodl-name="iScsiAlias"
      version-id-ref="vim.version.version1"
      privilege="iScsiAlias"
      >
      <description-html>
         <![CDATA[The new value for the alias of the adapter.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[if the host bus adapter could not be found.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[for all other configuration failures.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="AddInternetScsiSendTargets"
      vmodl-name="addInternetScsiSendTargets"
      privilege="Host.Config.Storage"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Adds Send Target entries to the host bus adapter discovery list.
  The DiscoveryProperties.sendTargetsDiscoveryEnabled flag
  must be set to true.]]>
      </description-html>
      <parameter name="iScsiHbaDevice" type-id-ref="java.lang.String"
      vmodl-name="iScsiHbaDevice"
      version-id-ref="vim.version.version1"
      privilege="iScsiHbaDevice"
      >
      <description-html>
         <![CDATA[The device of the Internet SCSI HBA adapter.]]>
      </description-html>
      </parameter>
      <parameter name="targets" type-id-ref="vim.host.InternetScsiHba.SendTarget"
      vmodl-name="targets"
      version-id-ref="vim.version.version1"
      is-array="true"
      privilege="targets"
      >
      <description-html>
         <![CDATA[An array of iSCSI send targets.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[if the discovery list could not be found.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[for all other configuration failures.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="RemoveInternetScsiSendTargets"
      vmodl-name="removeInternetScsiSendTargets"
      privilege="Host.Config.Storage"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Removes Send Target entries from the host bus adapter discovery list.
  The DiscoveryProperty.sendTargetsDiscoveryEnabled must be set to true.
  If any of the targets provided as parameters are not found in
  the existing list, the other targets are removed and an exception
  is thrown.]]>
      </description-html>
      <parameter name="iScsiHbaDevice" type-id-ref="java.lang.String"
      vmodl-name="iScsiHbaDevice"
      version-id-ref="vim.version.version1"
      privilege="iScsiHbaDevice"
      >
      <description-html>
         <![CDATA[The device of the Internet SCSI HBA adapter.]]>
      </description-html>
      </parameter>
      <parameter name="targets" type-id-ref="vim.host.InternetScsiHba.SendTarget"
      vmodl-name="targets"
      version-id-ref="vim.version.version1"
      is-array="true"
      privilege="targets"
      >
      <description-html>
         <![CDATA[An array of iSCSI send targets to remove.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[if at least one target was not found.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[for all other configuration failures.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="AddInternetScsiStaticTargets"
      vmodl-name="addInternetScsiStaticTargets"
      privilege="Host.Config.Storage"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Adds Static Target entries to the host bus adapter discovery list.
  The DiscoveryProperty.staticTargetDiscoveryEnabled must be set to true.]]>
      </description-html>
      <parameter name="iScsiHbaDevice" type-id-ref="java.lang.String"
      vmodl-name="iScsiHbaDevice"
      version-id-ref="vim.version.version1"
      privilege="iScsiHbaDevice"
      >
      <description-html>
         <![CDATA[The device of the Internet SCSI HBA adapter.]]>
      </description-html>
      </parameter>
      <parameter name="targets" type-id-ref="vim.host.InternetScsiHba.StaticTarget"
      vmodl-name="targets"
      version-id-ref="vim.version.version1"
      is-array="true"
      privilege="targets"
      >
      <description-html>
         <![CDATA[An array of iSCSI static targets to add.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[if the host bus adaptor discovery list was not found.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[for all other configuration failures.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="RemoveInternetScsiStaticTargets"
      vmodl-name="removeInternetScsiStaticTargets"
      privilege="Host.Config.Storage"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Removes static target entries from the host bus adapter discovery list.
  The DiscoveryProperty.staticTargetDiscoveryEnabled must be set to true.
  If any of the targets provided as parameters are not found in
  the existing list, the other targets are removed and an exception
  is thrown.]]>
      </description-html>
      <parameter name="iScsiHbaDevice" type-id-ref="java.lang.String"
      vmodl-name="iScsiHbaDevice"
      version-id-ref="vim.version.version1"
      privilege="iScsiHbaDevice"
      >
      <description-html>
         <![CDATA[The device of the Internet SCSI HBA adapter.]]>
      </description-html>
      </parameter>
      <parameter name="targets" type-id-ref="vim.host.InternetScsiHba.StaticTarget"
      vmodl-name="targets"
      version-id-ref="vim.version.version1"
      is-array="true"
      privilege="targets"
      >
      <description-html>
         <![CDATA[An array of iSCSI static targets to remove.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[if at least one target was not found.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[for all other configuration failures.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="EnableMultipathPath"
      vmodl-name="enableMultipathPath"
      privilege="Host.Config.Storage"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Enables a disabled path for a Logical Unit.
  Use the path name from <a href="vim.host.MultipathStateInfo.Path.html">HostMultipathStateInfoPath</a>
  or <a href="vim.host.MultipathInfo.Path.html">HostMultipathInfoPath</a>.]]>
      </description-html>
      <parameter name="pathName" type-id-ref="java.lang.String"
      vmodl-name="pathName"
      version-id-ref="vim.version.version1"
      privilege="pathName"
      >
      <description-html>
         <![CDATA[The name of the path to enable.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[if the LUN could not be found.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[for all other configuration failures.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="DisableMultipathPath"
      vmodl-name="disableMultipathPath"
      privilege="Host.Config.Storage"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Disables an enabled path for a Logical Unit.
  Use the path name from <a href="vim.host.MultipathStateInfo.Path.html">HostMultipathStateInfoPath</a>
  or <a href="vim.host.MultipathInfo.Path.html">HostMultipathInfoPath</a>.]]>
      </description-html>
      <parameter name="pathName" type-id-ref="java.lang.String"
      vmodl-name="pathName"
      version-id-ref="vim.version.version1"
      privilege="pathName"
      >
      <description-html>
         <![CDATA[The name of the path to disable.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[if the LUN could not be found.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[for all other configuration failures.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="SetMultipathLunPolicy"
      vmodl-name="setMultipathLunPolicy"
      privilege="Host.Config.Storage"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Updates the path selection policy for a Logical Unit.
  Use the LUN uuid from <a href="vim.host.MultipathInfo.LogicalUnit.html">HostMultipathInfoLogicalUnit</a>.]]>
      </description-html>
      <parameter name="lunId" type-id-ref="java.lang.String"
      vmodl-name="lunId"
      version-id-ref="vim.version.version1"
      privilege="lunId"
      >
      <description-html>
         <![CDATA[The logical unit ID]]>
      </description-html>
      </parameter>
      <parameter name="policy" type-id-ref="vim.host.MultipathInfo.LogicalUnitPolicy"
      vmodl-name="policy"
      version-id-ref="vim.version.version1"
      privilege="policy"
      >
      <description-html>
         <![CDATA[A data object that describes a path selection policy for
                the logical unit.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[if the LUN could not be found.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[for all other configuration failures.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="UpdateHppMultipathLunPolicy"
      vmodl-name="updateHppMultipathLunPolicy"
      version-id-ref="vim.version.v7_0"
      privilege="Host.Config.Storage"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Updates the path selection policy for a HPP claimed Logical Unit.
 Use the LUN uuid from <a href="vim.host.MultipathInfo.LogicalUnit.html">HostMultipathInfoLogicalUnit</a>.]]>
      </description-html>
      <parameter name="lunId" type-id-ref="java.lang.String"
      vmodl-name="lunId"
      version-id-ref="vim.version.v7_0"
      privilege="lunId"
      >
      <description-html>
         <![CDATA[The logical unit ID]]>
      </description-html>
      </parameter>
      <parameter name="policy" type-id-ref="vim.host.MultipathInfo.HppLogicalUnitPolicy"
      vmodl-name="policy"
      version-id-ref="vim.version.v7_0"
      privilege="policy"
      >
      <description-html>
         <![CDATA[A data object that describes a path selection policy and
               its configuration for the logical unit.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[if the LUN could not be found.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[for all other configuration failures.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="QueryPathSelectionPolicyOptions"
      vmodl-name="queryPathSelectionPolicyOptions"
      version-id-ref="vim.version.version5"
      is-array="true"
      is-optional="true"
      privilege="System.Read"
      type-id-ref="vim.host.PathSelectionPolicyOption"
      >
      <description-html>
         <![CDATA[Queries the set of path selection policy options.  The set of policy
  options indicates what path selection policies can be used by a
  device managed by native multipathing.  Devices managed through native
  multipathing are described in the <a href="vim.host.MultipathInfo.html">HostMultipathInfo</a> data
  object.
  <p>
  Filtering capabilities are not currently present but may be added in
  the future.]]>
      </description-html>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[for system configuration failures.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[The list of path selection policy descriptions that match the
          search criteria.  Details about the policies will also be
          provided in accordance to the query specification.]]>
      </return-value-description-html>
   </method>
   <method name="QueryStorageArrayTypePolicyOptions"
      vmodl-name="queryStorageArrayTypePolicyOptions"
      version-id-ref="vim.version.version5"
      is-array="true"
      is-optional="true"
      privilege="System.Read"
      type-id-ref="vim.host.StorageArrayTypePolicyOption"
      >
      <description-html>
         <![CDATA[Queries the set of storage array type policy options.  The set of policy
  options indicates what storage array type policies can be used by a
  device managed by native multipathing.  Devices managed through native
  multipathing are described in the <a href="vim.host.MultipathInfo.html">HostMultipathInfo</a> data
  object.
  <p>
  Filtering capabilities are not currently present but may be added in
  the future.]]>
      </description-html>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[for system configuration failures.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[The list of storage array type policy descriptions.]]>
      </return-value-description-html>
   </method>
   <method name="UpdateScsiLunDisplayName"
      vmodl-name="updateScsiLunDisplayName"
      version-id-ref="vim.version.version5"
      privilege="Host.Config.Storage"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Update the mutable display name associated with a ScsiLun.  The ScsiLun
  to be updated is identified using the specified uuid.]]>
      </description-html>
      <parameter name="lunUuid" type-id-ref="java.lang.String"
      vmodl-name="lunUuid"
      version-id-ref="vim.version.version5"
      privilege="lunUuid"
      >
      <description-html>
         <![CDATA[The uuid of the ScsiLun to update.]]>
      </description-html>
      </parameter>
      <parameter name="displayName" type-id-ref="java.lang.String"
      vmodl-name="displayName"
      version-id-ref="vim.version.version5"
      privilege="displayName"
      >
      <description-html>
         <![CDATA[The new name to assign to the ScsiLun object.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[if the device could not be found.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[for all other configuration failures.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidName">
      <fault-description-html>
         <![CDATA[if the name does not meet name restrictions such
          as an 80 character limit.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.DuplicateName">
      <fault-description-html>
         <![CDATA[if the name does not name uniqueness restrictions.
          Name uniqueness restrictions will vary based on the context in
          which this method is invoked.
          <p>
          When this method is invoked on a host directly, no uniqueness
          checks will be performed on the name.
          <p>
          When this method is invoked on a VC server, uniqueness checks
          will be performed on the name.  The uniqueness check will
          ensure that the name is unique with respect to the entire
          VC instance.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="DetachScsiLun"
      vmodl-name="detachScsiLun"
      version-id-ref="vim.version.version7"
      privilege="Host.Config.Storage"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Disallow I/O issue to the specified ScsiLun. The ScsiLun is
  detached, i.e. administratively configured off until a subsequent
  attachScsiLun is performed, if the operation is successful.
  See <a href="vim.host.StorageSystem.html#attachScsiLun">AttachScsiLun</a>.
  <p>
  detachScsiLun is part of the Unmount / Detach workflow used
  when a device will be permanently removed.
  See also <a href="vim.host.StorageSystem.html#unmountVmfsVolume">UnmountVmfsVolume</a>.]]>
      </description-html>
      <parameter name="lunUuid" type-id-ref="java.lang.String"
      vmodl-name="lunUuid"
      version-id-ref="vim.version.version7"
      privilege="lunUuid"
      >
      <description-html>
         <![CDATA[The uuid of the ScsiLun device to detach.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[if the device could not be found.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[for all other configuration failures.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if
  <ul>
   <li>The device is already detached(turned 'off').
       See <a href="vim.host.ScsiLun.html#operationalState">operationalState</a>.</li>
  </ul>]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.ResourceInUse">
      <fault-description-html>
         <![CDATA[if
  <ul>
   <li>This device is backing a Vm with a Raw Device Mapped Virtual
   Disk.</li>
   <li>1 or more programs have I/O outstanding on this device.</li>
   <li>1 or more mounted vmfs volumes have extents residing on this
   device.</li>
   <li>The device is configured for use by the host e.g. diagnostic
   partition is configured on this device.</li>
  </ul>]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="DetachScsiLunEx"
      vmodl-name="detachScsiLunEx"
      version-id-ref="vim.version.version10"
      is-array="true"
      privilege="Host.Config.Storage"
      type-id-ref="vim.host.StorageSystem.ScsiLunResult"
      is-task="true"
      >
      <description-html>
         <![CDATA[Detach one or more SCSI LUNs. This is an asynchronous, batch operation of
  detachScisLun. Please see <a href="vim.host.StorageSystem.html#detachScsiLun">DetachScsiLun</a>
  for operational details.]]>
      </description-html>
      <parameter name="lunUuid" type-id-ref="java.lang.String"
      vmodl-name="lunUuid"
      version-id-ref="vim.version.version10"
      is-array="true"
      privilege="lunUuid"
      >
      <description-html>
         <![CDATA[each element specifies UUID of LUN to be detached.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[for host configuration failures.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[ScsiLunResult  each element specifies result of a detach
                         request. The faults are specified in
                         <a href="vim.host.StorageSystem.html#detachScsiLun">DetachScsiLun</a>.]]>
      </return-value-description-html>
   </method>
   <method name="DeleteScsiLunState"
      vmodl-name="deleteScsiLunState"
      version-id-ref="vim.version.version7"
      internal-before-version-id-ref="vim.version.version8"
      privilege="Host.Config.Storage"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[For previously detached SCSI Lun, remove the state information from
  host.

  Detach SCSI Lun marks the device where I/Os are not allowed.
  Host still maintains the entry of this device and its state.
  If a LUN is detached using detachScsiLun, ESX will not automatically
  attach this LUN durng a rescan or after a reboot.
  See <a href="vim.host.StorageSystem.html#detachScsiLun">DetachScsiLun</a>.

  Please note: The API takes 'canonicalName' of the ScsiLun object
  instead of the ScsiLun.uuid.<br>See <a href="vim.host.ScsiLun.html#canonicalName">canonicalName</a><br>]]>
      </description-html>
      <parameter name="lunCanonicalName" type-id-ref="java.lang.String"
      vmodl-name="lunCanonicalName"
      version-id-ref="vim.version.version7"
      privilege="lunCanonicalName"
      >
      <description-html>
         <![CDATA[The 'canonicalName' of the ScsiLun
                          whose state needs to be deleted.<br>See <a href="vim.host.ScsiLun.html#canonicalName">canonicalName</a><br>]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[for any configuration failures.<br>See <a href="vim.host.ScsiLun.html#canonicalName">canonicalName</a><br>]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="AttachScsiLun"
      vmodl-name="attachScsiLun"
      version-id-ref="vim.version.version7"
      privilege="Host.Config.Storage"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Allow I/O issue to the specified detached ScsiLun. The ScsiLun is
  administratively configured on, if the attach operation is successful.
  See <a href="vim.host.StorageSystem.html#detachScsiLun">DetachScsiLun</a>.
  <p>
  attachScsiLun is part of the Unmount, Detach workflow used
  when a device will be permanently removed.
  See also <a href="vim.host.StorageSystem.html#unmountVmfsVolume">UnmountVmfsVolume</a>.]]>
      </description-html>
      <parameter name="lunUuid" type-id-ref="java.lang.String"
      vmodl-name="lunUuid"
      version-id-ref="vim.version.version7"
      privilege="lunUuid"
      >
      <description-html>
         <![CDATA[The uuid of the ScsiLun to update.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[if the device could not be found.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[for all other configuration failures.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if
  <ul>
   <li>The device is already attached.
   i.e. Device state is not 'off' in <a href="vim.host.ScsiLun.html#operationalState">operationalState</a>.</li>
   <li>The device is unreachable. See <a href="vim.host.ScsiLun.html#operationalState">operationalState</a>.</li>
  </ul>]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="AttachScsiLunEx"
      vmodl-name="attachScsiLunEx"
      version-id-ref="vim.version.version10"
      is-array="true"
      privilege="Host.Config.Storage"
      type-id-ref="vim.host.StorageSystem.ScsiLunResult"
      is-task="true"
      >
      <description-html>
         <![CDATA[Attach one or more SCSI LUNs. This is an asynchronous, batch operation of
  attachScisLun. Please see <a href="vim.host.StorageSystem.html#attachScsiLun">AttachScsiLun</a>
  for operational details.]]>
      </description-html>
      <parameter name="lunUuid" type-id-ref="java.lang.String"
      vmodl-name="lunUuid"
      version-id-ref="vim.version.version10"
      is-array="true"
      privilege="lunUuid"
      >
      <description-html>
         <![CDATA[each element specifies UUID of LUN to be attached.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[for host configuration failures.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[ScsiLunResult  each element specifies result of an attach
                         request. The faults are specified in
                         <a href="vim.host.StorageSystem.html#attachScsiLun">AttachScsiLun</a>.]]>
      </return-value-description-html>
   </method>
   <method name="RefreshStorageSystem"
      vmodl-name="refresh"
      privilege="Host.Config.Storage"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Obtains the latest host storage information related to storage devices, topology,
  and file systems. The ESX host updates its storage information asynchronously.
  <p>
  This method may update the following inventory elements:
  <ul>
  <li>Devices and storage topology
      (<a href="vim.HostSystem.html">HostSystem</a>.<a href="vim.HostSystem.html#config">Config</a>.<a href="vim.host.ConfigInfo.html#storageDevice">storageDevice</a>).</li>
  <li>VMFS and NFS datastores (<a href="vim.HostSystem.html">HostSystem</a>.<a href="vim.HostSystem.html#datastore">Datastore</a>).</li>
  <li>File system volumes
   (<a href="vim.HostSystem.html">HostSystem</a>.<a href="vim.HostSystem.html#config">Config</a>.<a href="vim.host.ConfigInfo.html#fileSystemVolume">fileSystemVolume</a>).</li>
  </ul>
  <p>
  The Server performs asynchronous updates to the inventory. Use the
  <a href="vmodl.query.PropertyCollector.html">PropertyCollector</a>.<a href="vmodl.query.PropertyCollector.html#waitForUpdatesEx">WaitForUpdatesEx</a>
  method to obtain the property changes.]]>
      </description-html>
   </method>
   <method name="DiscoverFcoeHbas"
      vmodl-name="discoverFcoeHbas"
      version-id-ref="vim.version.version7"
      privilege="Host.Config.Storage"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Initiates FCoE discovery using the given FcoeSpecification.

 Upon success, discovered VNPorts will have registered with the
 system as FCoE HBAs.]]>
      </description-html>
      <parameter name="fcoeSpec" type-id-ref="vim.host.FcoeConfig.FcoeSpecification"
      vmodl-name="fcoeSpec"
      version-id-ref="vim.version.version7"
      privilege="fcoeSpec"
      >
      </parameter>
      <fault type-id-ref="vim.fault.FcoeFaultPnicHasNoPortSet">
      </fault>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[if the host is unable to issue FCoE discovery.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[if the given HBA could not be found.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="MarkForRemoval"
      vmodl-name="markForRemoval"
      version-id-ref="vim.version.version7"
      privilege="Host.Config.Storage"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Mark or unmark the given FCoE HBA for removal from the host system.

 Marking an FCoE HBA for removal will result in the HBA
 not being discovered upon host reboot.  Until reboot,
 the HBA remains visible in the storage topology.]]>
      </description-html>
      <parameter name="hbaName" type-id-ref="java.lang.String"
      vmodl-name="hbaName"
      version-id-ref="vim.version.version7"
      privilege="hbaName"
      >
      </parameter>
      <parameter name="remove" type-id-ref="BOOLEAN"
      vmodl-name="remove"
      version-id-ref="vim.version.version7"
      privilege="remove"
      >
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[if the given HBA could not be found.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[if the host does not support removing the given
          HBA.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="FormatVffs"
      vmodl-name="formatVffs"
      version-id-ref="vim.version.version9"
      privilege="Host.Config.Storage"
      type-id-ref="vim.host.VffsVolume"
      >
      <description-html>
         <![CDATA[Format a new VFFS on a SSD disk]]>
      </description-html>
      <parameter name="createSpec" type-id-ref="vim.host.VffsVolume.Specification"
      vmodl-name="createSpec"
      version-id-ref="vim.version.version9"
      privilege="createSpec"
      >
      <description-html>
         <![CDATA[A data object that describes the VFFS volume
                    creation specification.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.AlreadyExists">
      <fault-description-html>
         <![CDATA[if the volume name is already being used
          by another volume on the host.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[for all other configuration failures.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.ResourceInUse">
      <fault-description-html>
         <![CDATA[VFFS volume is being used.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[A data object that represents the VFFS file system.]]>
      </return-value-description-html>
   </method>
   <method name="ExtendVffs"
      vmodl-name="extendVffs"
      version-id-ref="vim.version.version9"
      privilege="Host.Config.Storage"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Extends a VFFS by attaching a SSD.<br>See <a href="vim.host.ScsiDisk.html#devicePath">devicePath</a><br>]]>
      </description-html>
      <parameter name="vffsPath" type-id-ref="java.lang.String"
      vmodl-name="vffsPath"
      version-id-ref="vim.version.version9"
      privilege="vffsPath"
      >
      <description-html>
         <![CDATA[The path of the VFFS to extend. See <a href="vim.host.FileSystemMountInfo.html">FileSystemMountInfo</a>.<br>See <a href="vim.host.ScsiDisk.html#devicePath">devicePath</a><br>]]>
      </description-html>
      </parameter>
      <parameter name="devicePath" type-id-ref="java.lang.String"
      vmodl-name="devicePath"
      version-id-ref="vim.version.version9"
      privilege="devicePath"
      >
      <description-html>
         <![CDATA[Device path of the SSD disk.<br>See <a href="vim.host.ScsiDisk.html#devicePath">devicePath</a><br>]]>
      </description-html>
      </parameter>
      <parameter name="spec" type-id-ref="vim.host.DiskPartitionInfo.Specification"
      vmodl-name="spec"
      version-id-ref="vim.version.version9"
      is-optional="true"
      privilege="spec"
      >
      <description-html>
         <![CDATA[A data object that describes the SSD disk partition
              information. If this property is not provided, partition
              information will be computed and generated.<br>See <a href="vim.host.ScsiDisk.html#devicePath">devicePath</a><br>]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[if the VFFS cannot be found or is unmounted.<br>See <a href="vim.host.ScsiDisk.html#devicePath">devicePath</a><br>]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[for all other configuration failures.<br>See <a href="vim.host.ScsiDisk.html#devicePath">devicePath</a><br>]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.ResourceInUse">
      <fault-description-html>
         <![CDATA[VFFS volume is being used.<br>See <a href="vim.host.ScsiDisk.html#devicePath">devicePath</a><br>]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="DestroyVffs"
      vmodl-name="destroyVffs"
      version-id-ref="vim.version.version9"
      privilege="Host.Config.Storage"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Destroy a VFFS volume.]]>
      </description-html>
      <parameter name="vffsPath" type-id-ref="java.lang.String"
      vmodl-name="vffsPath"
      version-id-ref="vim.version.version9"
      privilege="vffsPath"
      >
      <description-html>
         <![CDATA[The path of the VFFS to destroy. See <a href="vim.host.FileSystemMountInfo.html">FileSystemMountInfo</a>.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[if the VFFS cannot be found or is unmounted.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[for all other configuration failures.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.ResourceInUse">
      <fault-description-html>
         <![CDATA[VFFS volume is being used.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="MountVffsVolume"
      vmodl-name="mountVffsVolume"
      version-id-ref="vim.version.version9"
      privilege="Host.Config.Storage"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Mount the unmounted VFFS volume.  See <a href="vim.host.StorageSystem.html#unmountVffsVolume">UnmountVffsVolume</a>.
  <p>
  mountVffsVolume is part of the Unmount / Detach workflow used
  when a device will be permanently removed.
    See also <a href="vim.host.StorageSystem.html#detachScsiLun">DetachScsiLun</a>.]]>
      </description-html>
      <parameter name="vffsUuid" type-id-ref="java.lang.String"
      vmodl-name="vffsUuid"
      version-id-ref="vim.version.version9"
      privilege="vffsUuid"
      >
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[if VFFS uuid is not found on the host.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if
  <ul>
   <li> The volume is already mounted. </li>
   <li> The volume is inaccessible. </li>
  </ul>]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[for all other configuration failures.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.ResourceInUse">
      <fault-description-html>
         <![CDATA[VFFS volume is being used.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="UnmountVffsVolume"
      vmodl-name="unmountVffsVolume"
      version-id-ref="vim.version.version9"
      privilege="Host.Config.Storage"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Unmount the VFFS volume. An unmounted volume cannot be used for any
  filesystem operation requiring I/O. In contrast to removal, this
  operation does not destroy or alter partitions on which VFFS volumes
  reside. The mountState will be persisted across filesystem rescans and
  host reboots. See <a href="vim.host.StorageSystem.html#mountVffsVolume">MountVffsVolume</a>.
  <p>
  unmountVffsVolume is part of the Unmount / Detach workflow used
  when a device will be permanently removed.
  See also <a href="vim.host.StorageSystem.html#detachScsiLun">DetachScsiLun</a>.]]>
      </description-html>
      <parameter name="vffsUuid" type-id-ref="java.lang.String"
      vmodl-name="vffsUuid"
      version-id-ref="vim.version.version9"
      privilege="vffsUuid"
      >
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[if VFFS uuid is not found on the host.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if
  <ul>
   <li>The volume is already unmounted.</li>
   <li>The volume is inaccessible.</li>
  </ul>]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[for all other configuration failures.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.ResourceInUse">
      <fault-description-html>
         <![CDATA[if
  <ul>
   <li>1 or more programs have I/O outstanding on this volume.</li>
  </ul>]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="DeleteVffsVolumeState"
      vmodl-name="deleteVffsVolumeState"
      version-id-ref="vim.version.version9"
      privilege="Host.Config.Storage"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[For previously unmounted VFFS volume, remove the state information from
  host.

  VFFS volumes mount state is maintained by host.
  <p>
  deleteVffsVolumeState is part of the Unmount/Detach workflow used
  when the device will be permanently removed.
  See also <a href="vim.host.StorageSystem.html#unmountVffsVolume">UnmountVffsVolume</a>.

  If the VFFS volume is unmounted using unmountVffsVolume, ESX maintains
  the state of VFFS volume. This API will remove the state from the host.

  If the underlying storage device is going to be un-provisioned on the
  array side, please detach the storage device.
  See also <a href="vim.host.StorageSystem.html#detachScsiLun">DetachScsiLun</a>.]]>
      </description-html>
      <parameter name="vffsUuid" type-id-ref="java.lang.String"
      vmodl-name="vffsUuid"
      version-id-ref="vim.version.version9"
      privilege="vffsUuid"
      >
      <description-html>
         <![CDATA[The VFFS UUID.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[for any configuration failures.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="RescanVffs"
      vmodl-name="rescanVffs"
      version-id-ref="vim.version.version9"
      privilege="Host.Config.Storage"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Rescans for new VFFS.
  The <a href="vim.host.StorageSystem.html#refresh">RefreshStorageSystem</a> method also performs a VFFS rescan.
  <p>
  <a href="vim.host.StorageSystem.html#rescanVffs">RescanVffs</a> may update the
  <a href="vim.HostSystem.html">HostSystem</a>.<a href="vim.HostSystem.html#config">Config</a>.<a href="vim.host.ConfigInfo.html#fileSystemVolume">fileSystemVolume</a> property.
  The Server performs asynchronous updates to the inventory. Use the
  <a href="vmodl.query.PropertyCollector.html">PropertyCollector</a>.<a href="vmodl.query.PropertyCollector.html#waitForUpdatesEx">WaitForUpdatesEx</a>
  method to obtain the property changes.]]>
      </description-html>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[if configuration fails.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="QueryAvailableSsds"
      vmodl-name="queryAvailableSsds"
      version-id-ref="vim.version.version9"
      is-array="true"
      is-optional="true"
      privilege="Host.Config.Storage"
      type-id-ref="vim.host.ScsiDisk"
      >
      <description-html>
         <![CDATA[Query the list SSD disks that can be used to contain a VFFS volume.
  If the optional parameter name is supplied, queries for the SSD
  disks that can be used to contain extents of the specified VFFS volume. Otherwise,
  the method retrieves the SSD disks that can be used to contain the new VFFS volume.
  <p>
  This operation will filter out SSD disks that are currently in use by an existing VFFS volume.]]>
      </description-html>
      <parameter name="vffsPath" type-id-ref="java.lang.String"
      vmodl-name="vffsPath"
      version-id-ref="vim.version.version9"
      is-optional="true"
      privilege="vffsPath"
      >
      <description-html>
         <![CDATA[The path of the VFFS to extend. See <a href="vim.host.FileSystemMountInfo.html">FileSystemMountInfo</a>.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[if the named VFFS volume is not found.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[if unable to query disk information.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[An array of data objects descrbing SSD disks.]]>
      </return-value-description-html>
   </method>
   <method name="SetNFSUser"
      vmodl-name="setNFSUser"
      version-id-ref="vim.version.version10"
      privilege="Host.Config.Storage"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Set NFS username and password on the host. The specified password is
 stored encrypted at the host and overwrites any previous password
 configuration.  This information is only needed when the host has
 mounted NFS volumes with security types that require user
 credentials for accessing data. The password is used to acquire
 credentials that the NFS client needs to use in order to secure NFS
 traffic using RPCSECGSS. The client will access files on all volumes
 mounted on this host (that are mounted with the relevant security
 type) on behalf of specified user.
  <p>
  At present, this API supports only file system NFSv4.1.]]>
      </description-html>
      <parameter name="user" type-id-ref="java.lang.String"
      vmodl-name="user"
      version-id-ref="vim.version.version10"
      privilege="user"
      >
      <description-html>
         <![CDATA[User to be saved on the the esx host]]>
      </description-html>
      </parameter>
      <parameter name="password" type-id-ref="java.lang.String"
      vmodl-name="password"
      version-id-ref="vim.version.version10"
      privilege="password"
      >
      <description-html>
         <![CDATA[Password for the user.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[Unable to set user/passwords due to host configuration
                            problem.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="ChangeNFSUserPassword"
      vmodl-name="changeNFSUserPassword"
      version-id-ref="vim.version.version10"
      privilege="Host.Config.Storage"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Change password for existing NFS user. This method shall be called after
  the NFS user has been created on the host.]]>
      </description-html>
      <parameter name="password" type-id-ref="java.lang.String"
      vmodl-name="password"
      version-id-ref="vim.version.version10"
      privilege="password"
      >
      <description-html>
         <![CDATA[New password.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[NFS user is not set.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[Unable to set passwords due to host configuration
                            problem.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="QueryNFSUser"
      vmodl-name="queryNFSUser"
      version-id-ref="vim.version.version10"
      is-optional="true"
      privilege="Host.Config.Storage"
      type-id-ref="vim.host.NasVolume.UserInfo"
      >
      <description-html>
         <![CDATA[Query the NFS user configured on the esx host]]>
      </description-html>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[Unable to get NFS user due to host configuration
                            problem.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[UserInfo objects.
          See <a href="vim.host.NasVolume.UserInfo.html">HostNasVolumeUserInfo</a>]]>
      </return-value-description-html>
   </method>
   <method name="ClearNFSUser"
      vmodl-name="clearNFSUser"
      version-id-ref="vim.version.version10"
      privilege="Host.Config.Storage"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Clear the NFS user configured on the esx host]]>
      </description-html>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[Unable to clear NFS user due to host configuration
                            problem.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="TurnDiskLocatorLedOn"
      vmodl-name="turnDiskLocatorLedOn"
      version-id-ref="vim.version.version10"
      is-array="true"
      is-optional="true"
      privilege="Host.Config.Storage"
      type-id-ref="vim.host.StorageSystem.DiskLocatorLedResult"
      is-task="true"
      >
      <description-html>
         <![CDATA[Turn on one or more disk locator LEDs, duration is the maximum that
 hardware can support.
 This is a batch operation to turn on one or more disk locator LEDs,
 so that user can easily locate the ScsiDisk on physical infrastructure.]]>
      </description-html>
      <parameter name="scsiDiskUuids" type-id-ref="java.lang.String"
      vmodl-name="scsiDiskUuids"
      version-id-ref="vim.version.version10"
      is-array="true"
      privilege="scsiDiskUuids"
      >
      <description-html>
         <![CDATA[The SCSI disk UUIDs for which the disk locator LED
                      should be turned on.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[for host configuration failures.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[an array of DiskLocatorLedResult, containing only the LUNs
                 for which the operation has failed.
                 The array is empty if all LEDs were turned on successfully.]]>
      </return-value-description-html>
   </method>
   <method name="TurnDiskLocatorLedOff"
      vmodl-name="turnDiskLocatorLedOff"
      version-id-ref="vim.version.version10"
      is-array="true"
      is-optional="true"
      privilege="Host.Config.Storage"
      type-id-ref="vim.host.StorageSystem.DiskLocatorLedResult"
      is-task="true"
      >
      <description-html>
         <![CDATA[Turn off one or more disk locator LEDs.
 This is a batch operation to turn off one or more disk locator LEDs,
 which is the opposite operation of <a href="vim.host.StorageSystem.html#turnDiskLocatorLedOn">TurnDiskLocatorLedOn_Task</a>]]>
      </description-html>
      <parameter name="scsiDiskUuids" type-id-ref="java.lang.String"
      vmodl-name="scsiDiskUuids"
      version-id-ref="vim.version.version10"
      is-array="true"
      privilege="scsiDiskUuids"
      >
      <description-html>
         <![CDATA[The SCSI disk UUIDs for which the disk locator LED
                      should be turned off.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[for host configuration failures.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[an array of DiskLocatorLedResult, containing only the LUNs
                 for which the operation has failed.
                 The array is empty if all LEDs were turned off successfully.]]>
      </return-value-description-html>
   </method>
   <method name="MarkAsSsd"
      vmodl-name="markAsSsd"
      version-id-ref="vim.version.version10"
      privilege="Host.Config.Storage"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Mark a disk to SSD, due to the reason that SSDs behind some controllers
 might not be recongized as SSD correctly.
 Task failure might lose existing claim rules on the disk.]]>
      </description-html>
      <parameter name="scsiDiskUuid" type-id-ref="java.lang.String"
      vmodl-name="scsiDiskUuid"
      version-id-ref="vim.version.version10"
      privilege="scsiDiskUuid"
      >
      <description-html>
         <![CDATA[The SCSI disk UUID.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[if the device could not be found.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[for all other configuration failures.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="MarkAsNonSsd"
      vmodl-name="markAsNonSsd"
      version-id-ref="vim.version.version10"
      privilege="Host.Config.Storage"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Mark a disk to Non-SSD,  which is the opposite operation of
 <a href="vim.host.StorageSystem.html#markAsSsd">MarkAsSsd_Task</a>
 Task failure might lose existing claim rules on the disk.]]>
      </description-html>
      <parameter name="scsiDiskUuid" type-id-ref="java.lang.String"
      vmodl-name="scsiDiskUuid"
      version-id-ref="vim.version.version10"
      privilege="scsiDiskUuid"
      >
      <description-html>
         <![CDATA[The SCSI disk UUID.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[if the device could not be found.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[for all other configuration failures.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="MarkAsLocal"
      vmodl-name="markAsLocal"
      version-id-ref="vim.version.version10"
      privilege="Host.Config.Storage"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Mark a disk to local disk, due to the reason that local disks
 behind some controllers might not be recongized as local correctly.
 Task failure might lose existing claim rules on the disk.]]>
      </description-html>
      <parameter name="scsiDiskUuid" type-id-ref="java.lang.String"
      vmodl-name="scsiDiskUuid"
      version-id-ref="vim.version.version10"
      privilege="scsiDiskUuid"
      >
      <description-html>
         <![CDATA[The SCSI disk UUID.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[if the device could not be found.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[for all other configuration failures.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="MarkAsNonLocal"
      vmodl-name="markAsNonLocal"
      version-id-ref="vim.version.version10"
      privilege="Host.Config.Storage"
      type-id-ref="void"
      is-task="true"
      >
      <description-html>
         <![CDATA[Mark a disk to remote disk, which is the opposite operation of
 <a href="vim.host.StorageSystem.html#markAsLocal">MarkAsLocal_Task</a>
 Task failure might lose existing claim rules on the disk.]]>
      </description-html>
      <parameter name="scsiDiskUuid" type-id-ref="java.lang.String"
      vmodl-name="scsiDiskUuid"
      version-id-ref="vim.version.version10"
      privilege="scsiDiskUuid"
      >
      <description-html>
         <![CDATA[The SCSI disk UUID.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[if the device could not be found.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[for all other configuration failures.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="UpdateVmfsUnmapPriority"
      vmodl-name="updateVmfsUnmapPriority"
      version-id-ref="vim.version.version11"
      privilege="Host.Config.Storage"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Update VMFS unmap priority.

 This API updates the value of <a href="vim.host.VmfsVolume.html#unmapPriority">unmapPriority</a>.]]>
      </description-html>
      <parameter name="vmfsUuid" type-id-ref="java.lang.String"
      vmodl-name="vmfsUuid"
      version-id-ref="vim.version.version11"
      privilege="vmfsUuid"
      >
      <description-html>
         <![CDATA[The VMFS UUID.]]>
      </description-html>
      </parameter>
      <parameter name="unmapPriority" type-id-ref="java.lang.String"
      vmodl-name="unmapPriority"
      version-id-ref="vim.version.version11"
      privilege="unmapPriority"
      >
      <description-html>
         <![CDATA[Unmap priority. The supported values are defined in
                      <a href="vim.host.VmfsVolume.UnmapPriority.html">HostVmfsVolumeUnmapPriority</a>.]]>
      </description-html>
      </parameter>
   </method>
   <method name="UpdateVmfsUnmapBandwidth"
      vmodl-name="updateVmfsUnmapBandwidth"
      version-id-ref="vim.version.version12"
      privilege="Host.Config.Storage"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Update VMFS unmap bandwidth.

 This API updates the value of
 <a href="vim.host.VmfsVolume.UnmapBandwidthSpec.html#policy">policy</a>,
 <a href="vim.host.VmfsVolume.UnmapBandwidthSpec.html#fixedValue">fixedValue</a>,
 <a href="vim.host.VmfsVolume.UnmapBandwidthSpec.html#dynamicMin">dynamicMin</a>,
 <a href="vim.host.VmfsVolume.UnmapBandwidthSpec.html#dynamicMax">dynamicMax</a>.]]>
      </description-html>
      <parameter name="vmfsUuid" type-id-ref="java.lang.String"
      vmodl-name="vmfsUuid"
      version-id-ref="vim.version.version12"
      privilege="vmfsUuid"
      >
      <description-html>
         <![CDATA[The VMFS UUID.]]>
      </description-html>
      </parameter>
      <parameter name="unmapBandwidthSpec" type-id-ref="vim.host.VmfsVolume.UnmapBandwidthSpec"
      vmodl-name="unmapBandwidthSpec"
      version-id-ref="vim.version.version12"
      privilege="unmapBandwidthSpec"
      >
      <description-html>
         <![CDATA[Unmap bandwidth specification. See
                            <a href="vim.host.VmfsVolume.UnmapBandwidthSpec.html">VmfsUnmapBandwidthSpec</a>]]>
      </description-html>
      </parameter>
   </method>
   <method name="QueryVmfsConfigOption"
      vmodl-name="queryVmfsConfigOption"
      version-id-ref="vim.version.version11"
      is-array="true"
      is-optional="true"
      privilege="Host.Config.Storage"
      type-id-ref="vim.host.VmfsVolume.ConfigOption"
      >
      <description-html>
         <![CDATA[Get the VMFS configuration options, including block size,
 unmap granularity.]]>
      </description-html>
      <return-value-description-html>
         <![CDATA[VMFS configuration options.]]>
      </return-value-description-html>
   </method>
   <method name="MarkPerenniallyReserved"
      vmodl-name="markPerenniallyReserved"
      version-id-ref="vim.version.version14"
      privilege="Host.Config.Storage"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Marks the specified LUN as perennially reserved.]]>
      </description-html>
      <parameter name="lunUuid" type-id-ref="java.lang.String"
      vmodl-name="lunUuid"
      version-id-ref="vim.version.version14"
      privilege="lunUuid"
      >
      <description-html>
         <![CDATA[The UUID of the ScsiLun device to be marked as perennially
                reserved.]]>
      </description-html>
      </parameter>
      <parameter name="state" type-id-ref="BOOLEAN"
      vmodl-name="state"
      version-id-ref="vim.version.version14"
      privilege="state"
      >
      <description-html>
         <![CDATA[State of the ScsiLun perennially reserved flag to be set.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[if the device could not be found.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[if unable to change perennially reserved state.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="MarkPerenniallyReservedEx"
      vmodl-name="markPerenniallyReservedEx"
      version-id-ref="vim.version.version14"
      is-array="true"
      is-optional="true"
      privilege="Host.Config.Storage"
      type-id-ref="vim.host.StorageSystem.ScsiLunResult"
      is-task="true"
      >
      <description-html>
         <![CDATA[Marks the specified one or more SCSI LUN's perennially reserved based
 on the sate.]]>
      </description-html>
      <parameter name="lunUuid" type-id-ref="java.lang.String"
      vmodl-name="lunUuid"
      version-id-ref="vim.version.version14"
      is-array="true"
      is-optional="true"
      privilege="lunUuid"
      >
      <description-html>
         <![CDATA[The UUIDs of the ScsiLun devices that need a change in
                the perennially reserved flag state.]]>
      </description-html>
      </parameter>
      <parameter name="state" type-id-ref="BOOLEAN"
      vmodl-name="state"
      version-id-ref="vim.version.version14"
      privilege="state"
      >
      <description-html>
         <![CDATA[State of the ScsiLun perennially reserved flag to be set.]]>
      </description-html>
      </parameter>
      <return-value-description-html>
         <![CDATA[ScsiLunResult  each element specifies result of a flag
                         change request. The faults are specified in
                         <a href="vim.host.StorageSystem.html#markPerenniallyReserved">MarkPerenniallyReserved</a>.]]>
      </return-value-description-html>
   </method>
   <method name="CreateNvmeOverRdmaAdapter"
      vmodl-name="createNvmeOverRdmaAdapter"
      version-id-ref="vim.version.v7_0"
      privilege="Host.Config.Storage"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Creates a software NVME over RDMA adapter.]]>
      </description-html>
      <parameter name="rdmaDeviceName" type-id-ref="java.lang.String"
      vmodl-name="rdmaDeviceName"
      version-id-ref="vim.version.v7_0"
      privilege="rdmaDeviceName"
      >
      <description-html>
         <![CDATA[The device name of the RDMA device
                        to be used to create the software adapter.
                        Can be obtained from <a href="vim.host.RdmaDevice.html#device">device</a>.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.ResourceInUse">
      <fault-description-html>
         <![CDATA[if the RDMA device is already in use
                        by an NVME over RDMA adapter.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[if the given RDMA device could not be found.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[if the host is unable to create the adapter.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="RemoveNvmeOverRdmaAdapter"
      vmodl-name="removeNvmeOverRdmaAdapter"
      version-id-ref="vim.version.v7_0"
      privilege="Host.Config.Storage"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Removes a software NVME over RDMA adapter.]]>
      </description-html>
      <parameter name="hbaDeviceName" type-id-ref="java.lang.String"
      vmodl-name="hbaDeviceName"
      version-id-ref="vim.version.v7_0"
      privilege="hbaDeviceName"
      >
      <description-html>
         <![CDATA[The device name of the NVME over RDMA adapter to be removed.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[if the given HBA could not be found.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.ResourceInUse">
      <fault-description-html>
         <![CDATA[if the given HBA is in use.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[if the host is unable to remove the given HBA.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="DiscoverNvmeControllers"
      vmodl-name="discoverNvmeControllers"
      version-id-ref="vim.version.v7_0"
      privilege="Host.Config.Storage"
      type-id-ref="vim.host.NvmeDiscoveryLog"
      >
      <description-html>
         <![CDATA[Connects to a Discovery Controller and retrieves the Discovery Log
 using the provided NvmeDiscoverSpec.
 <p>
 For more details, see:
 <ul>
 <li>"NVM Express over Fabrics 1.0", Section 5, "Discovery service"</li>
 </ul>]]>
      </description-html>
      <parameter name="discoverSpec" type-id-ref="vim.host.NvmeDiscoverSpec"
      vmodl-name="discoverSpec"
      version-id-ref="vim.version.v7_0"
      privilege="discoverSpec"
      >
      <description-html>
         <![CDATA[A data object that specifies the parameters
                      necessary to retrieve the Discovery Log.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[if the given HBA or transport target could not be found.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[if the host is unable to retrieve
                          the discovery log.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[discoveryLog A data object that represents
                       the Discovery Log.]]>
      </return-value-description-html>
   </method>
   <method name="ConnectNvmeController"
      vmodl-name="connectNvmeController"
      version-id-ref="vim.version.v7_0"
      privilege="Host.Config.Storage"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Establish a connection to an NVME controller.
 <p>
 As a result, all the namespaces attached to the controller
 will be accessible through the adapter.
 For more details, see:
 <ul>
 <li>"NVM Express over Fabrics 1.0", Section 3.3,
  "Connect command and response"</li>
 </ul>]]>
      </description-html>
      <parameter name="connectSpec" type-id-ref="vim.host.NvmeConnectSpec"
      vmodl-name="connectSpec"
      version-id-ref="vim.version.v7_0"
      privilege="connectSpec"
      >
      <description-html>
         <![CDATA[A data object that specifies the parameters
                     necessary to connect to the controller.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[if the given HBA or transport target could not be found.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[if the host is unable to establish
                          the connection.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="DisconnectNvmeController"
      vmodl-name="disconnectNvmeController"
      version-id-ref="vim.version.v7_0"
      privilege="Host.Config.Storage"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Disconnect from an NVME controller.
 <p>
 As a result, all the namespaces attached to the controller
 will no longer be accessible through the adapter.]]>
      </description-html>
      <parameter name="disconnectSpec" type-id-ref="vim.host.NvmeDisconnectSpec"
      vmodl-name="disconnectSpec"
      version-id-ref="vim.version.v7_0"
      privilege="disconnectSpec"
      >
      <description-html>
         <![CDATA[A data object that specifies the parameters
                        necessary to perform the disconnection.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[if the given HBA or controller could not be found.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[if the host is unable to perform
                          the disconnect.]]>
      </fault-description-html>
      </fault>
   </method>
   </managed-object>
   <managed-object name="ScheduledTask"
      type-id="vim.scheduler.ScheduledTask"
      vmodl-name="vim.scheduler.ScheduledTask"
      version-id-ref="vim.version.version1"
      base-type-id="vim.ExtensibleManagedObject"
      >
      <description-html>
         <![CDATA[The scheduled task object.]]>
      </description-html>
            <property name="info" type-id-ref="vim.scheduler.ScheduledTaskInfo"
      vmodl-name="info"
      >
      <description-html>
         <![CDATA[Information about the current scheduled task.]]>
      </description-html>
      </property>

   <method name="RemoveScheduledTask"
      vmodl-name="remove"
      privilege="ScheduledTask.Delete"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Removes the scheduled task.]]>
      </description-html>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the scheduled task is running.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="ReconfigureScheduledTask"
      vmodl-name="reconfigure"
      privilege="ScheduledTask.Edit"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Reconfigures the scheduled task properties.]]>
      </description-html>
      <parameter name="spec" type-id-ref="vim.scheduler.ScheduledTaskSpec"
      vmodl-name="spec"
      version-id-ref="vim.version.version1"
      privilege="spec"
      >
      <description-html>
         <![CDATA[The new specification for the scheduled task.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the scheduled task is running.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidName">
      <fault-description-html>
         <![CDATA[if the scheduled task name is empty or too long.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.DuplicateName">
      <fault-description-html>
         <![CDATA[if a scheduled task with the name already exists.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="RunScheduledTask"
      vmodl-name="run"
      privilege="ScheduledTask.Run"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Runs the scheduled task immediately.
  The schedule for future runs remains in effect.]]>
      </description-html>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the scheduled task is running already.]]>
      </fault-description-html>
      </fault>
   </method>
   </managed-object>
   <managed-object name="LicenseAssignmentManager"
      type-id="vim.LicenseAssignmentManager"
      vmodl-name="vim.LicenseAssignmentManager"
      version-id-ref="vim.version.version5"
      >
      <nested-type-id-ref>vim.LicenseAssignmentManager.LicenseAssignment</nested-type-id-ref>
   <method name="UpdateAssignedLicense"
      vmodl-name="updateAssignedLicense"
      privilege="Global.Licenses"
      type-id-ref="vim.LicenseManager.LicenseInfo"
      >
      <description-html>
         <![CDATA[Update the license associated with an entity]]>
      </description-html>
      <parameter name="entity" type-id-ref="java.lang.String"
      vmodl-name="entity"
      version-id-ref="vim.version.version5"
      privilege="entity"
      >
      <description-html>
         <![CDATA[ID of the entity. E.g. HostSystem.]]>
      </description-html>
      </parameter>
      <parameter name="licenseKey" type-id-ref="java.lang.String"
      vmodl-name="licenseKey"
      version-id-ref="vim.version.version5"
      privilege="licenseKey"
      >
      <description-html>
         <![CDATA[A license.]]>
      </description-html>
      </parameter>
      <parameter name="entityDisplayName" type-id-ref="java.lang.String"
      vmodl-name="entityDisplayName"
      version-id-ref="vim.version.version5"
      is-optional="true"
      privilege="entityDisplayName"
      >
      <description-html>
         <![CDATA[Display name for the entity]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.LicenseEntityNotFound">
      </fault>
      <return-value-description-html>
         <![CDATA[Returns information about the license specified in licenseKey]]>
      </return-value-description-html>
   </method>
   <method name="RemoveAssignedLicense"
      vmodl-name="removeAssignedLicense"
      privilege="Global.Licenses"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Remove licenses associated with an entity]]>
      </description-html>
      <parameter name="entityId" type-id-ref="java.lang.String"
      vmodl-name="entityId"
      version-id-ref="vim.version.version5"
      privilege="entityId"
      >
      <description-html>
         <![CDATA[ID of the entity. E.g. HostSystem.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.LicenseEntityNotFound">
      </fault>
   </method>
   <method name="QueryAssignedLicenses"
      vmodl-name="queryAssignedLicenses"
      is-array="true"
      is-optional="true"
      privilege="System.View"
      type-id-ref="vim.LicenseAssignmentManager.LicenseAssignment"
      >
      <description-html>
         <![CDATA[Get information about all the licenses associated with an entity]]>
      </description-html>
      <parameter name="entityId" type-id-ref="java.lang.String"
      vmodl-name="entityId"
      version-id-ref="vim.version.version5"
      is-optional="true"
      privilege="entityId"
      >
      <description-html>
         <![CDATA[ID of the entity. E.g. HostSystem.]]>
      </description-html>
      </parameter>
   </method>
   </managed-object>
   <managed-object name="IpPoolManager"
      type-id="vim.IpPoolManager"
      vmodl-name="vim.IpPoolManager"
      version-id-ref="vim.version.version5"
      >
      <description-html>
         <![CDATA[Singleton Managed Object used to manage IP Pools.
 <p>
 IP Pools are used to allocate IPv4 and IPv6 addresses to vApps.]]>
      </description-html>
      <nested-type-id-ref>vim.IpPoolManager.IpAllocation</nested-type-id-ref>
   <method name="QueryIpPools"
      vmodl-name="queryIpPools"
      is-array="true"
      is-optional="true"
      type-id-ref="vim.vApp.IpPool"
      >
      <description-html>
         <![CDATA[Return the list of IP pools for a datacenter.]]>
      </description-html>
      <parameter name="dc" type-id-ref="vim.Datacenter"
      vmodl-name="dc"
      version-id-ref="vim.version.version5"
      privilege="dc"
      >
      <description-html>
         <![CDATA[The datacenter for which to look up the IP pools.]]>
      </description-html>
      </parameter>
      <return-value-description-html>
         <![CDATA[The resulting list of pools.]]>
      </return-value-description-html>
   </method>
   <method name="CreateIpPool"
      vmodl-name="createIpPool"
      type-id-ref="INT"
      >
      <description-html>
         <![CDATA[Create a new IP pool.
 <p>
 The name field must be defined, all other fields are optional. If unset,
 they will be given default values.
 <p>
 The ID for the pool is generated by the server and should not be defined on the
 pool object passed to this method.]]>
      </description-html>
      <parameter name="dc" type-id-ref="vim.Datacenter"
      vmodl-name="dc"
      version-id-ref="vim.version.version5"
      privilege="dc"
      >
      <description-html>
         <![CDATA[The datacenter on which to create the pool.]]>
      </description-html>
      </parameter>
      <parameter name="pool" type-id-ref="vim.vApp.IpPool"
      vmodl-name="pool"
      version-id-ref="vim.version.version5"
      privilege="pool"
      >
      <description-html>
         <![CDATA[The IP pool to create on the server]]>
      </description-html>
      </parameter>
      <return-value-description-html>
         <![CDATA[The generated ID for the pool]]>
      </return-value-description-html>
   </method>
   <method name="UpdateIpPool"
      vmodl-name="updateIpPool"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Update an IP pool on a datacenter.
 <p>
 The pool to update is looked up from the value of the id field.
 <p>
 All fields in the pool except the id are optional. Only defined values are stored
 on the server.]]>
      </description-html>
      <parameter name="dc" type-id-ref="vim.Datacenter"
      vmodl-name="dc"
      version-id-ref="vim.version.version5"
      privilege="dc"
      >
      <description-html>
         <![CDATA[The datacenter on which to look up the pool.]]>
      </description-html>
      </parameter>
      <parameter name="pool" type-id-ref="vim.vApp.IpPool"
      vmodl-name="pool"
      version-id-ref="vim.version.version5"
      privilege="pool"
      >
      <description-html>
         <![CDATA[The IP pool to update on the server]]>
      </description-html>
      </parameter>
   </method>
   <method name="DestroyIpPool"
      vmodl-name="destroyIpPool"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Destroys an IP pool on the given datacenter.
 <p>
 Looks up the pool on the datacenter by ID and deletes it. If the pool is in use,
 the method throws InvalidState unless the force flag is true.]]>
      </description-html>
      <parameter name="dc" type-id-ref="vim.Datacenter"
      vmodl-name="dc"
      version-id-ref="vim.version.version5"
      privilege="dc"
      >
      <description-html>
         <![CDATA[The datacenter on which to find the pool]]>
      </description-html>
      </parameter>
      <parameter name="id" type-id-ref="INT"
      vmodl-name="id"
      version-id-ref="vim.version.version5"
      privilege="id"
      >
      <description-html>
         <![CDATA[The unique ID of the pool]]>
      </description-html>
      </parameter>
      <parameter name="force" type-id-ref="BOOLEAN"
      vmodl-name="force"
      version-id-ref="vim.version.version5"
      privilege="force"
      >
      <description-html>
         <![CDATA[If true, the pool will be destroyed even if it is in use]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the pool is in use and the force flag is false]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="AllocateIpv4Address"
      vmodl-name="allocateIpv4Address"
      version-id-ref="vim.version.version8"
      type-id-ref="java.lang.String"
      >
      <description-html>
         <![CDATA[Allocates an IPv4 address from an IP pool.
 <p>
 Allocated IP addresses are reserved in the IP pool until released by
 calling <a href="vim.IpPoolManager.html#releaseIpAllocation">ReleaseIpAllocation</a>, or until the IP pool is configured to
 have an IP range that does not contain the IP address, or until the IP
 pool is destroyed.
 <p>
 The caller must be a vCenter extension. Refer to <a href="vim.ExtensionManager.html">ExtensionManager</a>
 for details on vCenter extensions.
 <p>
 The caller specifies a per extension unique allocation ID. Calling this
 function twice with the same allocation ID for the same pool yields the
 same IP address. This makes it possible to do idempotent allocations.]]>
      </description-html>
      <parameter name="dc" type-id-ref="vim.Datacenter"
      vmodl-name="dc"
      version-id-ref="vim.version.version8"
      privilege="dc"
      >
      <description-html>
         <![CDATA[The datacenter on which to find the pool]]>
      </description-html>
      </parameter>
      <parameter name="poolId" type-id-ref="INT"
      vmodl-name="poolId"
      version-id-ref="vim.version.version8"
      privilege="poolId"
      >
      <description-html>
         <![CDATA[The unique ID of the pool]]>
      </description-html>
      </parameter>
      <parameter name="allocationId" type-id-ref="java.lang.String"
      vmodl-name="allocationId"
      version-id-ref="vim.version.version8"
      privilege="allocationId"
      >
      <description-html>
         <![CDATA[The unique ID for this allocation]]>
      </description-html>
      </parameter>
      <return-value-description-html>
         <![CDATA[An IPv4 address if the pool has an available IPv4 address in its
         address ranges, otherwise the empty string.]]>
      </return-value-description-html>
   </method>
   <method name="AllocateIpv6Address"
      vmodl-name="allocateIpv6Address"
      version-id-ref="vim.version.version8"
      type-id-ref="java.lang.String"
      >
      <description-html>
         <![CDATA[Allocates an IPv6 address from an IP pool.
 <p>
 Allocated IP addresses are reserved in the IP pool until released by
 calling <a href="vim.IpPoolManager.html#releaseIpAllocation">ReleaseIpAllocation</a>, or until the IP pool is configured to
 have an IP range that does not contain the IP address, or until the IP
 pool is destroyed.
 <p>
 The caller must be a vCenter extension. Refer to <a href="vim.ExtensionManager.html">ExtensionManager</a>
 for details on vCenter extensions.
 <p>
 The caller specifies a per extension unique allocation ID. Calling this
 function twice with the same allocation ID for the same pool yields the
 same IP address. This makes it possible to do idempotent allocations.]]>
      </description-html>
      <parameter name="dc" type-id-ref="vim.Datacenter"
      vmodl-name="dc"
      version-id-ref="vim.version.version8"
      privilege="dc"
      >
      <description-html>
         <![CDATA[The datacenter on which to find the pool]]>
      </description-html>
      </parameter>
      <parameter name="poolId" type-id-ref="INT"
      vmodl-name="poolId"
      version-id-ref="vim.version.version8"
      privilege="poolId"
      >
      <description-html>
         <![CDATA[The unique ID of the pool]]>
      </description-html>
      </parameter>
      <parameter name="allocationId" type-id-ref="java.lang.String"
      vmodl-name="allocationId"
      version-id-ref="vim.version.version8"
      privilege="allocationId"
      >
      <description-html>
         <![CDATA[The unique ID for this allocation]]>
      </description-html>
      </parameter>
      <return-value-description-html>
         <![CDATA[An IPv6 address if the pool has an available IPv6 address in its
         address ranges, otherwise the empty string.]]>
      </return-value-description-html>
   </method>
   <method name="ReleaseIpAllocation"
      vmodl-name="releaseIpAllocation"
      version-id-ref="vim.version.version8"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Releases an IP allocation back to it's IP pool.
 <p>
 Attempting to release an IP allocation that is not allocated from the
 specified IP pool with the specified allocation ID silently fails. This
 makes it possible to release IP allocations idempotently.
 <p>
 All IP addresses allocated by an extension are automatically released
 if the extension is unregistered from vCenter.]]>
      </description-html>
      <parameter name="dc" type-id-ref="vim.Datacenter"
      vmodl-name="dc"
      version-id-ref="vim.version.version8"
      privilege="dc"
      >
      <description-html>
         <![CDATA[The datacenter on which to find the pool]]>
      </description-html>
      </parameter>
      <parameter name="poolId" type-id-ref="INT"
      vmodl-name="poolId"
      version-id-ref="vim.version.version8"
      privilege="poolId"
      >
      <description-html>
         <![CDATA[The unique ID of the pool]]>
      </description-html>
      </parameter>
      <parameter name="allocationId" type-id-ref="java.lang.String"
      vmodl-name="allocationId"
      version-id-ref="vim.version.version8"
      privilege="allocationId"
      >
      <description-html>
         <![CDATA[The unique ID for this allocation]]>
      </description-html>
      </parameter>
   </method>
   <method name="QueryIPAllocations"
      vmodl-name="queryIPAllocations"
      version-id-ref="vim.version.version8"
      is-array="true"
      type-id-ref="vim.IpPoolManager.IpAllocation"
      >
      <description-html>
         <![CDATA[Query IP allocations by IP pool and extension key.]]>
      </description-html>
      <parameter name="dc" type-id-ref="vim.Datacenter"
      vmodl-name="dc"
      version-id-ref="vim.version.version8"
      privilege="dc"
      >
      <description-html>
         <![CDATA[The datacenter on which to find the pool]]>
      </description-html>
      </parameter>
      <parameter name="poolId" type-id-ref="INT"
      vmodl-name="poolId"
      version-id-ref="vim.version.version8"
      privilege="poolId"
      >
      <description-html>
         <![CDATA[The unique ID of the pool]]>
      </description-html>
      </parameter>
      <parameter name="extensionKey" type-id-ref="java.lang.String"
      vmodl-name="extensionKey"
      version-id-ref="vim.version.version8"
      privilege="extensionKey"
      >
      <description-html>
         <![CDATA[The key of the extension]]>
      </description-html>
      </parameter>
      <return-value-description-html>
         <![CDATA[The resulting list of]]>
      </return-value-description-html>
   </method>
   </managed-object>
   <managed-object name="ExtensionManager"
      type-id="vim.ExtensionManager"
      vmodl-name="vim.ExtensionManager"
      version-id-ref="vim.version.version2"
      >
      <description-html>
         <![CDATA[This managed object type provides directory and basic management
  services for all registered extensions.
  <p>
  Clients use the ExtensionManager, available in
  <a href="vim.ServiceInstance.html">ServiceInstance</a>,
  to access extension objects.
  <p>
  While several authentication methods are available for extension
  servers to use (see <a href="vim.SessionManager.html">SessionManager</a>), only one
  authentication method is valid for an extension at any given
  time.]]>
      </description-html>
            <property name="extensionList" type-id-ref="vim.Extension"
      vmodl-name="extensionList"
      is-array="true"
      is-optional="true"
      privilege="System.View"
      >
      <description-html>
         <![CDATA[The list of currently registered extensions.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.ExtensionManager.IpAllocationUsage</nested-type-id-ref>
   <method name="UnregisterExtension"
      vmodl-name="unregisterExtension"
      privilege="Extension.Unregister"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Unregisters the specified extension if it exists.]]>
      </description-html>
      <parameter name="extensionKey" type-id-ref="java.lang.String"
      vmodl-name="extensionKey"
      version-id-ref="vim.version.version2"
      privilege="extensionKey"
      >
      <description-html>
         <![CDATA[Unique name of extension to unregister.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[if the specified extension
     is not registered.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="FindExtension"
      vmodl-name="findExtension"
      is-optional="true"
      privilege="System.View"
      type-id-ref="vim.Extension"
      >
      <description-html>
         <![CDATA[Returns extension with the given key, if any.]]>
      </description-html>
      <parameter name="extensionKey" type-id-ref="java.lang.String"
      vmodl-name="extensionKey"
      version-id-ref="vim.version.version2"
      privilege="extensionKey"
      >
      <description-html>
         <![CDATA[Key to search for.]]>
      </description-html>
      </parameter>
      <return-value-description-html>
         <![CDATA[Extension that matches given key, if any.]]>
      </return-value-description-html>
   </method>
   <method name="RegisterExtension"
      vmodl-name="registerExtension"
      privilege="Extension.Register"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Registers extension.]]>
      </description-html>
      <parameter name="extension" type-id-ref="vim.Extension"
      vmodl-name="extension"
      version-id-ref="vim.version.version2"
      privilege="extension"
      >
      <description-html>
         <![CDATA[Extension description to register.]]>
      </description-html>
      </parameter>
   </method>
   <method name="UpdateExtension"
      vmodl-name="updateExtension"
      privilege="Extension.Update"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[If the key specified in the extension exists,
  the existing record is updated.
  <p>
  If the &quot;subjectName&quot; property of the Extension
  object has a value, and it is different from the existing
  value, this method will unset any public key or
  certificate associated with the extension.]]>
      </description-html>
      <parameter name="extension" type-id-ref="vim.Extension"
      vmodl-name="extension"
      version-id-ref="vim.version.version2"
      privilege="extension"
      >
      <description-html>
         <![CDATA[Updated extension description.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[if the specified extension key is not registered.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="GetPublicKey"
      vmodl-name="getPublicKey"
      is-deprecated="true"
      privilege="System.View"
      type-id-ref="java.lang.String"
      >
      <description-html>
         <![CDATA[Returns VirtualCenter Server public key.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of VI 4.0, use trusted certificates and
     <a href="vim.SessionManager.html#loginExtensionBySubjectName">LoginExtensionBySubjectName</a> or
     <a href="vim.ExtensionManager.html#setCertificate">SetExtensionCertificate</a> and
     <a href="vim.SessionManager.html#loginExtensionByCertificate">LoginExtensionByCertificate</a>.]]>
      </deprecated-html>
      <return-value-description-html>
         <![CDATA[Public key of VirtualCenter Server, encoded
  in PEM (privacy-enhanced mail) format.]]>
      </return-value-description-html>
   </method>
   <method name="SetPublicKey"
      vmodl-name="setPublicKey"
      is-deprecated="true"
      privilege="Extension.Update"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Sets extension's public key.
  <p>
  This method will unset any subject name or
  certificate associated with the extension.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of VI 4.0, use trusted certificates and
     <a href="vim.SessionManager.html#loginExtensionBySubjectName">LoginExtensionBySubjectName</a> or
     <a href="vim.ExtensionManager.html#setCertificate">SetExtensionCertificate</a> and
     <a href="vim.SessionManager.html#loginExtensionByCertificate">LoginExtensionByCertificate</a>.]]>
      </deprecated-html>
      <parameter name="extensionKey" type-id-ref="java.lang.String"
      vmodl-name="extensionKey"
      version-id-ref="vim.version.version2"
      privilege="extensionKey"
      >
      <description-html>
         <![CDATA[Key of extension to update.]]>
      </description-html>
      </parameter>
      <parameter name="publicKey" type-id-ref="java.lang.String"
      vmodl-name="publicKey"
      version-id-ref="vim.version.version2"
      privilege="publicKey"
      >
      <description-html>
         <![CDATA[Public key of extension, encoded
     in PEM (privacy-enhanced mail) format.]]>
      </description-html>
      </parameter>
   </method>
   <method name="SetExtensionCertificate"
      vmodl-name="setCertificate"
      version-id-ref="vim.version.version5"
      privilege="Extension.Update"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Update the stored authentication certificate for a specified extension.

  Updates the registration of the specified extension with the
  thumbprint of the X.509 client certificate provided over SSL handshake,
  or by the &quot;certificatePem&quot;argument.  The thumbprint
  will be used to authenticate the extension during invocations of
  <a href="vim.SessionManager.html#loginExtensionByCertificate">LoginExtensionByCertificate</a>.
  <p>
  NOTE: No verification is performed on the received certificate, such as
  expiry or revocation.
  <p>
  This method will unset any public key or subject name
  associated with the extension.]]>
      </description-html>
      <parameter name="extensionKey" type-id-ref="java.lang.String"
      vmodl-name="extensionKey"
      version-id-ref="vim.version.version5"
      privilege="extensionKey"
      >
      <description-html>
         <![CDATA[Key of extension to update.]]>
      </description-html>
      </parameter>
      <parameter name="certificatePem" type-id-ref="java.lang.String"
      vmodl-name="certificatePem"
      version-id-ref="vim.version.version5"
      is-optional="true"
      privilege="certificatePem"
      >
      <description-html>
         <![CDATA[PEM encoded certificate.  If not specified, the
                        certificate passed over SSL handshake is used.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[if an extension specified by &quot;extensionKey&quot;
                   is not registered.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.NoClientCertificate">
      <fault-description-html>
         <![CDATA[if certificatePem is not specified, and
                              no certificate was passed over SSL handshake.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="QueryManagedBy"
      vmodl-name="queryManagedBy"
      version-id-ref="vim.version.version7"
      is-array="true"
      is-optional="true"
      privilege="System.View"
      type-id-ref="vim.ManagedEntity"
      >
      <description-html>
         <![CDATA[Find entities managed by an extension. These can be either virtual machines
 or vApps.]]>
      </description-html>
      <parameter name="extensionKey" type-id-ref="java.lang.String"
      vmodl-name="extensionKey"
      version-id-ref="vim.version.version7"
      privilege="extensionKey"
      >
      <description-html>
         <![CDATA[Key of the extension to find managed entities for.]]>
      </description-html>
      </parameter>
      <return-value-description-html>
         <![CDATA[List of entities managed by the extension.]]>
      </return-value-description-html>
   </method>
   <method name="QueryExtensionIpAllocationUsage"
      vmodl-name="queryExtensionIpAllocationUsage"
      version-id-ref="vim.version.version8"
      is-array="true"
      is-optional="true"
      privilege="System.View"
      type-id-ref="vim.ExtensionManager.IpAllocationUsage"
      >
      <description-html>
         <![CDATA[Query statistics about IP allocation usage, either system wide or for
 specified extensions.
 <p>
 Refer to <a href="vim.IpPoolManager.html">IpPoolManager</a> for details.]]>
      </description-html>
      <parameter name="extensionKeys" type-id-ref="java.lang.String"
      vmodl-name="extensionKeys"
      version-id-ref="vim.version.version8"
      is-array="true"
      is-optional="true"
      privilege="extensionKeys"
      >
      <description-html>
         <![CDATA[List of extensions whose IP allocation is being queried.
                      If no extension keys are specified then allocation data
                      for all registered extensions are returned.]]>
      </description-html>
      </parameter>
      <return-value-description-html>
         <![CDATA[List of IP allocation usage.]]>
      </return-value-description-html>
   </method>
   </managed-object>
   <managed-object name="SimpleCommand"
      type-id="vim.SimpleCommand"
      vmodl-name="vim.SimpleCommand"
      version-id-ref="vim.version.version2"
      internal-before-version-id-ref="vim.version.version8"
      >
      <description-html>
         <![CDATA[A managed object that wraps the execution of a single arbitrary
  command. The specific command executed is assumed to be known from
  the service name by the client invoking this command.  This object
  presents a generic interface for such services.]]>
      </description-html>
            <property name="encodingType" type-id-ref="vim.SimpleCommand.Encoding"
      vmodl-name="encodingType"
      >
      <description-html>
         <![CDATA[The encoding type used in the result.]]>
      </description-html>
      </property>

            <property name="entity" type-id-ref="vim.ServiceManager.ServiceInfo"
      vmodl-name="entity"
      >
      <description-html>
         <![CDATA[A description of the service.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.SimpleCommand.Encoding</nested-type-id-ref>
   <method name="ExecuteSimpleCommand"
      vmodl-name="Execute"
      privilege="Global.ServiceManagers"
      type-id-ref="java.lang.String"
      >
      <description-html>
         <![CDATA[The single function execution point for this simple command. The actual effects of
  this command depend upon the service handler registered for this instance.]]>
      </description-html>
      <parameter name="arguments" type-id-ref="java.lang.String"
      vmodl-name="arguments"
      version-id-ref="vim.version.version2"
      is-array="true"
      is-optional="true"
      privilege="arguments"
      >
      <description-html>
         <![CDATA[An arbitrary collection of arguments.]]>
      </description-html>
      </parameter>
   </method>
   </managed-object>
   <managed-object name="HostNetworkSystem"
      type-id="vim.host.NetworkSystem"
      vmodl-name="vim.host.NetworkSystem"
      version-id-ref="vim.version.version1"
      base-type-id="vim.ExtensibleManagedObject"
      >
      <description-html>
         <![CDATA[This managed object type describes networking host configuration and
  serves as the top level container for relevant networking
  data objects.]]>
      </description-html>
            <property name="capabilities" type-id-ref="vim.host.NetCapabilities"
      vmodl-name="capabilities"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Capability vector indicating the available product features.]]>
      </description-html>
      </property>

            <property name="networkInfo" type-id-ref="vim.host.NetworkInfo"
      vmodl-name="networkInfo"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The network configuration and runtime information.]]>
      </description-html>
      </property>

            <property name="offloadCapabilities" type-id-ref="vim.host.NetOffloadCapabilities"
      vmodl-name="offloadCapabilities"
      is-deprecated="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The offload capabilities available on this server.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of VI API 4.0, the system defaults will be used.]]>
      </deprecated-html>
      </property>

            <property name="networkConfig" type-id-ref="vim.host.NetworkConfig"
      vmodl-name="networkConfig"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Network configuration information.  This information can be applied
  using the <a href="vim.host.NetworkSystem.html#updateNetworkConfig">UpdateNetworkConfig</a> method.  The
  information is a strict subset of the information available in NetworkInfo.<br>See <a href="vim.host.NetworkInfo.html">HostNetworkInfo</a><br>]]>
      </description-html>
      </property>

            <property name="dnsConfig" type-id-ref="vim.host.DnsConfig"
      vmodl-name="dnsConfig"
      is-deprecated="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Client-side DNS configuration.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 5.5, which is moved to
  each NetStackInstance. This only works on the default NetStackInstance.]]>
      </deprecated-html>
      </property>

            <property name="ipRouteConfig" type-id-ref="vim.host.IpRouteConfig"
      vmodl-name="ipRouteConfig"
      is-deprecated="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The IP route configuration.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 5.5, which is moved to
  each NetStackInstance. This only works on the default NetStackInstance.]]>
      </deprecated-html>
      </property>

            <property name="consoleIpRouteConfig" type-id-ref="vim.host.IpRouteConfig"
      vmodl-name="consoleIpRouteConfig"
      is-optional="true"
      >
      <description-html>
         <![CDATA[IP route configuration for the service console.  The IP route
  configuration is global to the entire host.  This property is
  set only if
  IP routing can be configured for the service console.]]>
      </description-html>
      </property>

   <method name="UpdateNetworkConfig"
      vmodl-name="updateNetworkConfig"
      type-id-ref="vim.host.NetworkConfig.Result"
      >
      <description-html>
         <![CDATA[Applies the network configuration.  This method operates primarily
  in two modes: <b>replace</b> or <b>modify</b> mode.
  <p>
  <b>replace</b><br>
  When called in <b>replace</b> mode, this method applies the fully
  specified networking configuration to the networking system.
  <p>
  Upon successful completion of the call, the state of networking will
  match the configuration specified in <b>config</b>.  In general, objects
  are created or destroyed to match the elements in the array of
  configurations.  The identifier field in each element in an array of
  configurations is used to match an existing network entity.
  The state of existing network entities is patched to match that
  of the configuration.
  <p>
  An exception to this approach applies to the array of PhysicalNic.Config
  objects.  The cardinality of physical network adapters cannot be
  changed through this
  operation.  Thus, the identifier of every element in the array must match an
  existing PhysicalNic.  If there are fewer elements in the array than
  there are existing PhysicalNics, then no change is made on the
  unreferenced PhysicalNic objects.
  <p>
  If the call fails, the networking error is returned as an exception
  and the state of networking reverts to the state prior to the start
  of the call.
  <p>
  <b>modify</b>
  When called in <b>modify</b> mode, only changes that are specified are
  made.  For singleton entities like DnsConfig, the state is
  changed only if the data object is set.  For array elements, there is
  an Operation field that indicates if the element should be added,
  removed, or edited.  In the case of editing or removal, the entity
  must exist or an exception is thrown.  In the case of adding, a
  specification needs to be provided.
  <p>
  It returns device names of vmkernel and service console virtual network
  adapter added to the system.
  <p>
  Currently, the only mode that is implemented is incremental mode.
  Only add operations are supported for instances.  Singleton
  configuration is not supported.
  The dynamic privilege check will ensure that users have Host.Config.Network
  privilege on the host, and Network.Assign privilege on the connecting
  DVPortGroup, or DVS if connecting to a standalone DVPort.
  Network.Assign privilege is not required for operations on standard network
  or for operations performed directly on the host<br>See <a href="vim.host.ConfigChange.Mode.html">HostConfigChangeMode</a><br>]]>
      </description-html>
      <parameter name="config" type-id-ref="vim.host.NetworkConfig"
      vmodl-name="config"
      version-id-ref="vim.version.version1"
      privilege="config"
      >
      <description-html>
         <![CDATA[<br>See <a href="vim.host.ConfigChange.Mode.html">HostConfigChangeMode</a><br>]]>
      </description-html>
      </parameter>
      <parameter name="changeMode" type-id-ref="java.lang.String"
      vmodl-name="changeMode"
      version-id-ref="vim.version.version1"
      privilege="changeMode"
      >
      <description-html>
         <![CDATA[<br>See <a href="vim.host.ConfigChange.Mode.html">HostConfigChangeMode</a><br>]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.AlreadyExists">
      <fault-description-html>
         <![CDATA[when a network entity specified in the configuration
          already exists.<br>See <a href="vim.host.ConfigChange.Mode.html">HostConfigChangeMode</a><br>]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[when a network entity specified in the configuration
          already exists.<br>See <a href="vim.host.ConfigChange.Mode.html">HostConfigChangeMode</a><br>]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[for all other configuration failures.<br>See <a href="vim.host.ConfigChange.Mode.html">HostConfigChangeMode</a><br>]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.ResourceInUse">
      <fault-description-html>
         <![CDATA[<br>See <a href="vim.host.ConfigChange.Mode.html">HostConfigChangeMode</a><br>]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="UpdateDnsConfig"
      vmodl-name="updateDnsConfig"
      is-deprecated="true"
      privilege="Host.Config.Network"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Applies the client-side DNS configuration.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 5.5, which is moved to
  each NetStackInstance. This API only works on the default NetStackInstance.]]>
      </deprecated-html>
      <parameter name="config" type-id-ref="vim.host.DnsConfig"
      vmodl-name="config"
      version-id-ref="vim.version.version1"
      privilege="config"
      >
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[when the DHCP virtual network adapter specified does
          not exist.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[for all other configuration failures.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.HostInDomain">
      <fault-description-html>
         <![CDATA[if an attempt is made to change the host or domain name
                       while the host is part of a Windows domain.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="UpdateIpRouteConfig"
      vmodl-name="updateIpRouteConfig"
      is-deprecated="true"
      privilege="Host.Config.Network"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Applies the IP route configuration.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 5.5, which is moved to
  each NetStackInstance. This API only works on the default NetStackInstance.]]>
      </deprecated-html>
      <parameter name="config" type-id-ref="vim.host.IpRouteConfig"
      vmodl-name="config"
      version-id-ref="vim.version.version1"
      privilege="config"
      >
      </parameter>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[for all other configuration failures.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the an ipv6 address is specified in an ipv4 only
          system]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="UpdateConsoleIpRouteConfig"
      vmodl-name="updateConsoleIpRouteConfig"
      privilege="Host.Config.Network"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Applies the IP route configuration for the service console.]]>
      </description-html>
      <parameter name="config" type-id-ref="vim.host.IpRouteConfig"
      vmodl-name="config"
      version-id-ref="vim.version.version1"
      privilege="config"
      >
      </parameter>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[for all other configuration failures.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="UpdateIpRouteTableConfig"
      vmodl-name="updateIpRouteTableConfig"
      version-id-ref="vim.version.version5"
      is-deprecated="true"
      privilege="Host.Config.Network"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Applies the IP route table configuration.]]>
      </description-html>
      <deprecated-html>
         <![CDATA[As of vSphere API 5.5, which is moved to
  each NetStackInstance. This API only works on the default NetStackInstance.]]>
      </deprecated-html>
      <parameter name="config" type-id-ref="vim.host.IpRouteTableConfig"
      vmodl-name="config"
      version-id-ref="vim.version.version5"
      privilege="config"
      >
      </parameter>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[for all other configuration failures.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="AddVirtualSwitch"
      vmodl-name="addVirtualSwitch"
      privilege="Host.Config.Network"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Adds a new virtual switch to the system with the given name.  The
  name must be unique with respect to other virtual switches on the
  host and is limited to 32 characters.<br>See <a href="vim.host.NetworkSystem.html#updateVirtualSwitch">UpdateVirtualSwitch</a><br>]]>
      </description-html>
      <parameter name="vswitchName" type-id-ref="java.lang.String"
      vmodl-name="vswitchName"
      version-id-ref="vim.version.version1"
      privilege="vswitchName"
      >
      <description-html>
         <![CDATA[<br>See <a href="vim.host.NetworkSystem.html#updateVirtualSwitch">UpdateVirtualSwitch</a><br>]]>
      </description-html>
      </parameter>
      <parameter name="spec" type-id-ref="vim.host.VirtualSwitch.Specification"
      vmodl-name="spec"
      version-id-ref="vim.version.version1"
      is-optional="true"
      privilege="spec"
      >
      <description-html>
         <![CDATA[<br>See <a href="vim.host.NetworkSystem.html#updateVirtualSwitch">UpdateVirtualSwitch</a><br>]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.AlreadyExists">
      <fault-description-html>
         <![CDATA[if the virtual switch already exists.<br>See <a href="vim.host.NetworkSystem.html#updateVirtualSwitch">UpdateVirtualSwitch</a><br>]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.ResourceInUse">
      <fault-description-html>
         <![CDATA[if the physical network adapter being bridged
          is already in use.<br>See <a href="vim.host.NetworkSystem.html#updateVirtualSwitch">UpdateVirtualSwitch</a><br>]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[for all other configuration failures.<br>See <a href="vim.host.NetworkSystem.html#updateVirtualSwitch">UpdateVirtualSwitch</a><br>]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="RemoveVirtualSwitch"
      vmodl-name="removeVirtualSwitch"
      privilege="Host.Config.Network"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Removes an existing virtual switch from the system.]]>
      </description-html>
      <parameter name="vswitchName" type-id-ref="java.lang.String"
      vmodl-name="vswitchName"
      version-id-ref="vim.version.version1"
      privilege="vswitchName"
      >
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[if the virtual switch does not exist.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.ResourceInUse">
      <fault-description-html>
         <![CDATA[if there are virtual network adapters associated
          with the virtual switch.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[for all other configuration failures.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="UpdateVirtualSwitch"
      vmodl-name="updateVirtualSwitch"
      privilege="Host.Config.Network"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Updates the properties of the virtual switch.
  <p>
  If the bridge is NULL, the configuration will be unset.
  <p>
  If a network adapter is listed in the active or standby list, then
  changing the set of network adapters to which the physical network
  adapter is associated may have a side effect of changing the network
  adapter order policy.  If a network adapter is removed from
  the bridge configuration, then the network adapter is removed
  from the network
  adapter teaming order.
  <p>
  The BondBridge configuration is the only valid bridge configuration for
  an ESX Server system.<br>See <a href="vim.host.NetworkPolicy.NicOrderPolicy.html">HostNicOrderPolicy</a><br>]]>
      </description-html>
      <parameter name="vswitchName" type-id-ref="java.lang.String"
      vmodl-name="vswitchName"
      version-id-ref="vim.version.version1"
      privilege="vswitchName"
      >
      <description-html>
         <![CDATA[<br>See <a href="vim.host.NetworkPolicy.NicOrderPolicy.html">HostNicOrderPolicy</a><br>]]>
      </description-html>
      </parameter>
      <parameter name="spec" type-id-ref="vim.host.VirtualSwitch.Specification"
      vmodl-name="spec"
      version-id-ref="vim.version.version1"
      privilege="spec"
      >
      <description-html>
         <![CDATA[<br>See <a href="vim.host.NetworkPolicy.NicOrderPolicy.html">HostNicOrderPolicy</a><br>]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.ResourceInUse">
      <fault-description-html>
         <![CDATA[if the physical network adapter being bridged is
          already in use.<br>See <a href="vim.host.NetworkPolicy.NicOrderPolicy.html">HostNicOrderPolicy</a><br>]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[if the virtual switch does not exist.<br>See <a href="vim.host.NetworkPolicy.NicOrderPolicy.html">HostNicOrderPolicy</a><br>]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[for all other configuration failures.<br>See <a href="vim.host.NetworkPolicy.NicOrderPolicy.html">HostNicOrderPolicy</a><br>]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="AddPortGroup"
      vmodl-name="addPortGroup"
      privilege="Host.Config.Network"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Adds a port group to the virtual switch.]]>
      </description-html>
      <parameter name="portgrp" type-id-ref="vim.host.PortGroup.Specification"
      vmodl-name="portgrp"
      version-id-ref="vim.version.version1"
      privilege="portgrp"
      >
      </parameter>
      <fault type-id-ref="vim.fault.AlreadyExists">
      <fault-description-html>
         <![CDATA[if the port group already exists.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[if the virtual switch does not exist.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[for all other configuration failures.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="RemovePortGroup"
      vmodl-name="removePortGroup"
      privilege="Host.Config.Network"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Removes port group from the virtual switch.]]>
      </description-html>
      <parameter name="pgName" type-id-ref="java.lang.String"
      vmodl-name="pgName"
      version-id-ref="vim.version.version1"
      privilege="pgName"
      >
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[if the port group or virtual switch does not exist.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.ResourceInUse">
      <fault-description-html>
         <![CDATA[if the port group can not be removed because there
          are virtual network adapters associated with it.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[for all other configuration failures.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="UpdatePortGroup"
      vmodl-name="updatePortGroup"
      privilege="Host.Config.Network"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Reconfigures a port group on the virtual switch.]]>
      </description-html>
      <parameter name="pgName" type-id-ref="java.lang.String"
      vmodl-name="pgName"
      version-id-ref="vim.version.version1"
      privilege="pgName"
      >
      </parameter>
      <parameter name="portgrp" type-id-ref="vim.host.PortGroup.Specification"
      vmodl-name="portgrp"
      version-id-ref="vim.version.version1"
      privilege="portgrp"
      >
      </parameter>
      <fault type-id-ref="vim.fault.AlreadyExists">
      <fault-description-html>
         <![CDATA[if the update causes the port group to conflict
          with an existing port group.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[if the port group or virtual switch does not exist.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[for all other configuration failures.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="UpdatePhysicalNicLinkSpeed"
      vmodl-name="updatePhysicalNicLinkSpeed"
      privilege="Host.Config.Network"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Configures link speed and duplexity.  If linkSpeed is not specified,
  physical network adapter will be set to autonegotiate.<br>See <a href="vim.host.NetCapabilities.html#canSetPhysicalNicLinkSpeed">canSetPhysicalNicLinkSpeed</a><br>]]>
      </description-html>
      <parameter name="device" type-id-ref="java.lang.String"
      vmodl-name="device"
      version-id-ref="vim.version.version1"
      privilege="device"
      >
      <description-html>
         <![CDATA[<br>See <a href="vim.host.NetCapabilities.html#canSetPhysicalNicLinkSpeed">canSetPhysicalNicLinkSpeed</a><br>]]>
      </description-html>
      </parameter>
      <parameter name="linkSpeed" type-id-ref="vim.host.PhysicalNic.LinkSpeedDuplex"
      vmodl-name="linkSpeed"
      version-id-ref="vim.version.version1"
      is-optional="true"
      privilege="linkSpeed"
      >
      <description-html>
         <![CDATA[<br>See <a href="vim.host.NetCapabilities.html#canSetPhysicalNicLinkSpeed">canSetPhysicalNicLinkSpeed</a><br>]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[if the physical network adapter does not exist.<br>See <a href="vim.host.NetCapabilities.html#canSetPhysicalNicLinkSpeed">canSetPhysicalNicLinkSpeed</a><br>]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[for all other configuration failures.<br>See <a href="vim.host.NetCapabilities.html#canSetPhysicalNicLinkSpeed">canSetPhysicalNicLinkSpeed</a><br>]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="QueryNetworkHint"
      vmodl-name="queryNetworkHint"
      is-array="true"
      is-optional="true"
      privilege="System.Read"
      type-id-ref="vim.host.PhysicalNic.NetworkHint"
      >
      <description-html>
         <![CDATA[Requests network hint information for a physical network adapter.
  A network hint is
  some information about the network to which the physical network
  adapter is attached.  The method receives in a list of physical
  network adapter devices and returns an equal number of hints
  if some devices are provided.  If the list of devices is empty,
  then the method accesses hints for all physical
  network adapters.<br>See <a href="vim.host.NetCapabilities.html#supportsNetworkHints">supportsNetworkHints</a><br>See <a href="vim.host.PhysicalNic.html#device">device</a><br>]]>
      </description-html>
      <parameter name="device" type-id-ref="java.lang.String"
      vmodl-name="device"
      version-id-ref="vim.version.version1"
      is-array="true"
      is-optional="true"
      privilege="device"
      >
      <description-html>
         <![CDATA[<br>See <a href="vim.host.NetCapabilities.html#supportsNetworkHints">supportsNetworkHints</a><br>See <a href="vim.host.PhysicalNic.html#device">device</a><br>]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[if a specified physical network adapter does not exist.<br>See <a href="vim.host.NetCapabilities.html#supportsNetworkHints">supportsNetworkHints</a><br>See <a href="vim.host.PhysicalNic.html#device">device</a><br>]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[for all other configuration failures.<br>See <a href="vim.host.NetCapabilities.html#supportsNetworkHints">supportsNetworkHints</a><br>See <a href="vim.host.PhysicalNic.html#device">device</a><br>]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="AddVirtualNic"
      vmodl-name="addVirtualNic"
      type-id-ref="java.lang.String"
      >
      <description-html>
         <![CDATA[Adds a virtual host/VMkernel network adapter.  Returns the device of the virtual
  network adapter.
  <p>
  IP configuration is required although it does not have to be enabled
  if the host is an ESX Server system.

  The dynamic privilege check will ensure that users have Host.Config.Network
  privilege on the host, and Network.Assign privilege on the connecting
  DVPortGroup, or DVS if connecting to a standalone DVPort.
  Network.Assign privilege is not required for operations on standard network
  or for operations performed directly on the host.]]>
      </description-html>
      <parameter name="portgroup" type-id-ref="java.lang.String"
      vmodl-name="portgroup"
      version-id-ref="vim.version.version1"
      privilege="portgroup"
      >
      <description-html>
         <![CDATA[Note: Must be the empty string in case nic.distributedVirtualPort
                   is set.]]>
      </description-html>
      </parameter>
      <parameter name="nic" type-id-ref="vim.host.VirtualNic.Specification"
      vmodl-name="nic"
      version-id-ref="vim.version.version1"
      privilege="nic"
      >
      </parameter>
      <fault type-id-ref="vim.fault.AlreadyExists">
      <fault-description-html>
         <![CDATA[if the portgroup already has a virtual network
  adapter.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[for all other configuration failures.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the an ipv6 address is specified in an ipv4 only
          system]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="RemoveVirtualNic"
      vmodl-name="removeVirtualNic"
      privilege="Host.Config.Network"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Removes a virtual host/VMkernel network adapter.]]>
      </description-html>
      <parameter name="device" type-id-ref="java.lang.String"
      vmodl-name="device"
      version-id-ref="vim.version.version1"
      privilege="device"
      >
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[if the virtual network adapter cannot be found.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[for all other configuration failures.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="UpdateVirtualNic"
      vmodl-name="updateVirtualNic"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Configures virtual host/VMkernel network adapter.
  <p>
  IP configuration is required although it does not have to be enabled
  if the host is an ESX Server system.

  The dynamic privilege check will ensure that users have Host.Config.Network
  privilege on the host, and Network.Assign privilege on the connecting
  DVPortGroup, or DVS if connecting to a standalone DVPort.
  Network.Assign privilege is not required for operations on standard network
  or for operations performed directly on the host.]]>
      </description-html>
      <parameter name="device" type-id-ref="java.lang.String"
      vmodl-name="device"
      version-id-ref="vim.version.version1"
      privilege="device"
      >
      </parameter>
      <parameter name="nic" type-id-ref="vim.host.VirtualNic.Specification"
      vmodl-name="nic"
      version-id-ref="vim.version.version1"
      privilege="nic"
      >
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[if the virtual network adapter cannot be found.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[for all other configuration failures.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[if the an ipv6 address is specified in an ipv4 only
          system]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="AddServiceConsoleVirtualNic"
      vmodl-name="addServiceConsoleVirtualNic"
      type-id-ref="java.lang.String"
      >
      <description-html>
         <![CDATA[Adds a virtual service console network adapter.  Returns the device of the
  VirtualNic.
  <p>
  IP configuration is required although it does not have to be enabled
  if the host is an ESX Server system.

  The dynamic privilege check will ensure that users have Host.Config.Network
  privilege on the host, and Network.Assign privilege on the connecting
  DVPortGroup, or DVS if connecting to a standalone DVPort.
  Network.Assign privilege is not required for operations on standard network
  or for operations performed directly on the host<br>See <a href="vim.host.NetCapabilities.html#usesServiceConsoleNic">usesServiceConsoleNic</a><br>]]>
      </description-html>
      <parameter name="portgroup" type-id-ref="java.lang.String"
      vmodl-name="portgroup"
      version-id-ref="vim.version.version1"
      privilege="portgroup"
      >
      <description-html>
         <![CDATA[<br>See <a href="vim.host.NetCapabilities.html#usesServiceConsoleNic">usesServiceConsoleNic</a><br>]]>
      </description-html>
      </parameter>
      <parameter name="nic" type-id-ref="vim.host.VirtualNic.Specification"
      vmodl-name="nic"
      version-id-ref="vim.version.version1"
      privilege="nic"
      >
      <description-html>
         <![CDATA[<br>See <a href="vim.host.NetCapabilities.html#usesServiceConsoleNic">usesServiceConsoleNic</a><br>]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[for all other configuration failures.<br>See <a href="vim.host.NetCapabilities.html#usesServiceConsoleNic">usesServiceConsoleNic</a><br>]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="RemoveServiceConsoleVirtualNic"
      vmodl-name="removeServiceConsoleVirtualNic"
      privilege="Host.Config.Network"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Removes a virtual service console network adapter.<br>See <a href="vim.host.NetCapabilities.html#usesServiceConsoleNic">usesServiceConsoleNic</a><br>]]>
      </description-html>
      <parameter name="device" type-id-ref="java.lang.String"
      vmodl-name="device"
      version-id-ref="vim.version.version1"
      privilege="device"
      >
      <description-html>
         <![CDATA[<br>See <a href="vim.host.NetCapabilities.html#usesServiceConsoleNic">usesServiceConsoleNic</a><br>]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[if the virtual network adapter cannot be found.<br>See <a href="vim.host.NetCapabilities.html#usesServiceConsoleNic">usesServiceConsoleNic</a><br>]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.ResourceInUse">
      <fault-description-html>
         <![CDATA[if the network adapter is currently used
          by DHCP DNS.<br>See <a href="vim.host.NetCapabilities.html#usesServiceConsoleNic">usesServiceConsoleNic</a><br>]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[for all other configuration failures.<br>See <a href="vim.host.NetCapabilities.html#usesServiceConsoleNic">usesServiceConsoleNic</a><br>]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="UpdateServiceConsoleVirtualNic"
      vmodl-name="updateServiceConsoleVirtualNic"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Configures the IP configuration for a virtual service console network
  adapter.
  <p>
  IP configuration is required although it does not have to be enabled
  if the host is an ESX Server system.

  The dynamic privilege check will check that the users
  have Network.Assign privilege on the DVPortGroup
  or the DVS if the port resides on a DVPortGroup or is a stand-alone DVS port.<br>See <a href="vim.host.NetCapabilities.html#usesServiceConsoleNic">usesServiceConsoleNic</a><br>]]>
      </description-html>
      <parameter name="device" type-id-ref="java.lang.String"
      vmodl-name="device"
      version-id-ref="vim.version.version1"
      privilege="device"
      >
      <description-html>
         <![CDATA[<br>See <a href="vim.host.NetCapabilities.html#usesServiceConsoleNic">usesServiceConsoleNic</a><br>]]>
      </description-html>
      </parameter>
      <parameter name="nic" type-id-ref="vim.host.VirtualNic.Specification"
      vmodl-name="nic"
      version-id-ref="vim.version.version1"
      privilege="nic"
      >
      <description-html>
         <![CDATA[<br>See <a href="vim.host.NetCapabilities.html#usesServiceConsoleNic">usesServiceConsoleNic</a><br>]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[if the virtual network adapter cannot be found.<br>See <a href="vim.host.NetCapabilities.html#usesServiceConsoleNic">usesServiceConsoleNic</a><br>]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.ResourceInUse">
      <fault-description-html>
         <![CDATA[if tries to turn of DHCP while the network
          adapter is currently used by DHCP DNS.<br>See <a href="vim.host.NetCapabilities.html#usesServiceConsoleNic">usesServiceConsoleNic</a><br>]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[for all other configuration failures.<br>See <a href="vim.host.NetCapabilities.html#usesServiceConsoleNic">usesServiceConsoleNic</a><br>]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="RestartServiceConsoleVirtualNic"
      vmodl-name="restartServiceConsoleVirtualNic"
      privilege="Host.Config.Network"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Restart the service console virtual network adapter interface.
  If the service console virtual network adapter uses DHCP, restarting
  the interface may result it with a different IP configuration, or
  even fail to be brought up depending on the host system network
  configuration.<br>See <a href="vim.host.NetCapabilities.html#usesServiceConsoleNic">usesServiceConsoleNic</a><br>]]>
      </description-html>
      <parameter name="device" type-id-ref="java.lang.String"
      vmodl-name="device"
      version-id-ref="vim.version.version1"
      privilege="device"
      >
      <description-html>
         <![CDATA[<br>See <a href="vim.host.NetCapabilities.html#usesServiceConsoleNic">usesServiceConsoleNic</a><br>]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[if the virtual network adapter cannot be found.<br>See <a href="vim.host.NetCapabilities.html#usesServiceConsoleNic">usesServiceConsoleNic</a><br>]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.HostConfigFault">
      <fault-description-html>
         <![CDATA[for all other configuration failures.<br>See <a href="vim.host.NetCapabilities.html#usesServiceConsoleNic">usesServiceConsoleNic</a><br>]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="RefreshNetworkSystem"
      vmodl-name="refresh"
      privilege="Host.Config.Network"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Refresh the network information and settings to pick up any changes
  that might have occurred.]]>
      </description-html>
   </method>
   </managed-object>
   <managed-object name="GuestOperationsManager"
      type-id="vim.vm.guest.GuestOperationsManager"
      vmodl-name="vim.vm.guest.GuestOperationsManager"
      version-id-ref="vim.version.version7"
      >
      <description-html>
         <![CDATA[GuestOperationsManager is the managed object that provides APIs
 to manipulate the guest operating system files and process.

 Each class of APIs is separated into its own manager.

 Only one guest operation is allowed at a time per virtual machine.]]>
      </description-html>
            <property name="authManager" type-id-ref="vim.vm.guest.AuthManager"
      vmodl-name="authManager"
      is-optional="true"
      privilege="System.Anonymous"
      >
      <description-html>
         <![CDATA[A singleton managed object that provides methods for guest authentication
 operations.]]>
      </description-html>
      </property>

            <property name="fileManager" type-id-ref="vim.vm.guest.FileManager"
      vmodl-name="fileManager"
      is-optional="true"
      privilege="System.Anonymous"
      >
      <description-html>
         <![CDATA[A singleton managed object that provides methods for guest file
 operations.]]>
      </description-html>
      </property>

            <property name="processManager" type-id-ref="vim.vm.guest.ProcessManager"
      vmodl-name="processManager"
      is-optional="true"
      privilege="System.Anonymous"
      >
      <description-html>
         <![CDATA[A singleton managed object that provides methods for guest process
 operations.]]>
      </description-html>
      </property>

            <property name="guestWindowsRegistryManager" type-id-ref="vim.vm.guest.WindowsRegistryManager"
      vmodl-name="guestWindowsRegistryManager"
      version-id-ref="vim.version.version10"
      is-optional="true"
      privilege="System.Anonymous"
      >
      <description-html>
         <![CDATA[A singleton managed object that provides methods for guest windows registry
 operations.]]>
      </description-html>
      </property>

            <property name="aliasManager" type-id-ref="vim.vm.guest.AliasManager"
      vmodl-name="aliasManager"
      version-id-ref="vim.version.version10"
      is-optional="true"
      privilege="System.Anonymous"
      >
      <description-html>
         <![CDATA[A managed object that provides methods to support single sign-on
 in the guest operating system.]]>
      </description-html>
      </property>

   </managed-object>
   <managed-object name="OpaqueNetwork"
      type-id="vim.OpaqueNetwork"
      vmodl-name="vim.OpaqueNetwork"
      version-id-ref="vim.version.version9"
      base-type-id="vim.Network"
      >
      <description-html>
         <![CDATA[This interface defines an opaque network, in the sense that the detail and configuration
 of the network is unknown to vSphere and is managed by a management plane outside of
 vSphere. However, the identifier and name of these networks is made available to
 vSphere so that host and virtual machine virtual ethernet device can connect to them.]]>
      </description-html>
            <property name="capability" type-id-ref="vim.OpaqueNetwork.Capability"
      vmodl-name="capability"
      version-id-ref="vim.version.version11"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The capability of the Opaque Network.]]>
      </description-html>
      </property>

            <property name="extraConfig" type-id-ref="vim.option.OptionValue"
      vmodl-name="extraConfig"
      version-id-ref="vim.version.version11"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Extra NSX specific properties for opaque network.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.OpaqueNetwork.Summary</nested-type-id-ref>
      <nested-type-id-ref>vim.OpaqueNetwork.Capability</nested-type-id-ref>
   </managed-object>
   <managed-object name="SearchIndex"
      type-id="vim.SearchIndex"
      vmodl-name="vim.SearchIndex"
      version-id-ref="vim.version.version1"
      >
      <description-html>
         <![CDATA[The SearchIndex service allows a client to efficiently query the
  inventory for a specific managed entity by attributes such as UUID, IP address, DNS
  name, or datastore path. Such searches typically return a VirtualMachine or a
  HostSystem. While searching, only objects for which the user has sufficient
  privileges are considered. The findByInventoryPath and findChild operations only
  search on entities for which the user has view privileges; all other SearchIndex
  find operations only search virtual machines and hosts for which the user has
  read privileges. If the user does not have sufficient privileges for an object that
  matches the search criteria, that object is not returned.]]>
      </description-html>
   <method name="FindByUuid"
      vmodl-name="findByUuid"
      is-optional="true"
      privilege="System.View"
      type-id-ref="vim.ManagedEntity"
      >
      <description-html>
         <![CDATA[Finds a virtual machine or host by BIOS or instance UUID.]]>
      </description-html>
      <parameter name="datacenter" type-id-ref="vim.Datacenter"
      vmodl-name="datacenter"
      version-id-ref="vim.version.version1"
      is-optional="true"
      privilege="datacenter"
      >
      <description-html>
         <![CDATA[If specified, restricts the query to entities in
            a particular datacenter. If not specified, the entire inventory is
            searched.]]>
      </description-html>
      </parameter>
      <parameter name="uuid" type-id-ref="java.lang.String"
      vmodl-name="uuid"
      version-id-ref="vim.version.version1"
      privilege="uuid"
      >
      <description-html>
         <![CDATA[The UUID to find. If vmSearch is true, the uuid can be either BIOS
              or instance UUID.]]>
      </description-html>
      </parameter>
      <parameter name="vmSearch" type-id-ref="BOOLEAN"
      vmodl-name="vmSearch"
      version-id-ref="vim.version.version1"
      privilege="vmSearch"
      >
      <description-html>
         <![CDATA[If true, search for virtual machines, otherwise search for
            hosts.]]>
      </description-html>
      </parameter>
      <parameter name="instanceUuid" type-id-ref="BOOLEAN"
      vmodl-name="instanceUuid"
      version-id-ref="vim.version.version1"
      is-optional="true"
      privilege="instanceUuid"
      >
      <description-html>
         <![CDATA[Should only be set when vmSearch is true. If specified, search
            for virtual machines whose instance UUID matches the given uuid.
            Otherwise, search for virtual machines whose BIOS UUID matches the given
            uuid.]]>
      </description-html>
      </parameter>
      <return-value-description-html>
         <![CDATA[The virtual machine or host managed entity that is found. If no managed
            entities are found, null is returned. Only a single entity is
            returned, even if there are multiple matches.]]>
      </return-value-description-html>
   </method>
   <method name="FindByDatastorePath"
      vmodl-name="findByDatastorePath"
      is-optional="true"
      privilege="System.View"
      type-id-ref="vim.VirtualMachine"
      >
      <description-html>
         <![CDATA[Finds a virtual machine by its location on a datastore.]]>
      </description-html>
      <parameter name="datacenter" type-id-ref="vim.Datacenter"
      vmodl-name="datacenter"
      version-id-ref="vim.version.version1"
      privilege="datacenter"
      >
      <description-html>
         <![CDATA[Specifies the datacenter to which the datastore path belongs.]]>
      </description-html>
      </parameter>
      <parameter name="path" type-id-ref="java.lang.String"
      vmodl-name="path"
      version-id-ref="vim.version.version1"
      privilege="path"
      >
      <description-html>
         <![CDATA[A datastore path to the .vmx file for the virtual machine.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.InvalidDatastore">
      <fault-description-html>
         <![CDATA[if a datastore has not been specified in the path or if
  the specified datastore does not exist on the specified datacenter.]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[The virtual machine that is found. If no virtual machine is found, null
  is returned. Only a single entity is returned, even if there are multiple
  matches.]]>
      </return-value-description-html>
   </method>
   <method name="FindByDnsName"
      vmodl-name="findByDnsName"
      is-optional="true"
      privilege="System.View"
      type-id-ref="vim.ManagedEntity"
      >
      <description-html>
         <![CDATA[Finds a virtual machine or host by DNS name. The DNS name for a virtual
  machine is the one returned from VMware tools, <a href="vim.vm.GuestInfo.html#hostName">hostName</a>.]]>
      </description-html>
      <parameter name="datacenter" type-id-ref="vim.Datacenter"
      vmodl-name="datacenter"
      version-id-ref="vim.version.version1"
      is-optional="true"
      privilege="datacenter"
      >
      <description-html>
         <![CDATA[If specified, restricts the query to entities in
            a particular datacenter. If not specified, the entire inventory is
            searched.]]>
      </description-html>
      </parameter>
      <parameter name="dnsName" type-id-ref="java.lang.String"
      vmodl-name="dnsName"
      version-id-ref="vim.version.version1"
      privilege="dnsName"
      >
      <description-html>
         <![CDATA[The fully qualified domain name to find.]]>
      </description-html>
      </parameter>
      <parameter name="vmSearch" type-id-ref="BOOLEAN"
      vmodl-name="vmSearch"
      version-id-ref="vim.version.version1"
      privilege="vmSearch"
      >
      <description-html>
         <![CDATA[if true, search for virtual machines, otherwise search for
            hosts.]]>
      </description-html>
      </parameter>
      <return-value-description-html>
         <![CDATA[The virtual machine or host managed entity that is found. If no managed
  entities are found, null is returned. Only a single entity is returned, even if
  there are multiple matches.]]>
      </return-value-description-html>
   </method>
   <method name="FindByIp"
      vmodl-name="findByIp"
      is-optional="true"
      privilege="System.View"
      type-id-ref="vim.ManagedEntity"
      >
      <description-html>
         <![CDATA[Finds a virtual machine or host by IP address, where the IP address is in
  dot-decimal notation. For example, 10.17.12.12. The IP address for a virtual
  machine is the one returned from VMware tools, <a href="vim.vm.GuestInfo.html#ipAddress">ipAddress</a>.]]>
      </description-html>
      <parameter name="datacenter" type-id-ref="vim.Datacenter"
      vmodl-name="datacenter"
      version-id-ref="vim.version.version1"
      is-optional="true"
      privilege="datacenter"
      >
      <description-html>
         <![CDATA[If specified, restricts the query to entities in
            a particular datacenter. If not specified, the entire inventory is
            searched.]]>
      </description-html>
      </parameter>
      <parameter name="ip" type-id-ref="java.lang.String"
      vmodl-name="ip"
      version-id-ref="vim.version.version1"
      privilege="ip"
      >
      <description-html>
         <![CDATA[The dot-decimal notation formatted IP address to find.]]>
      </description-html>
      </parameter>
      <parameter name="vmSearch" type-id-ref="BOOLEAN"
      vmodl-name="vmSearch"
      version-id-ref="vim.version.version1"
      privilege="vmSearch"
      >
      <description-html>
         <![CDATA[if true, search for virtual machines, otherwise search for
            hosts.]]>
      </description-html>
      </parameter>
      <return-value-description-html>
         <![CDATA[The virtual machine or host managed entity that is found. If no managed
          entities are found, null is returned. Only a single entity is returned,
          even if there are multiple matches. If called directly on an ESX server
          with vmSearch set to false, returns the host managed entity if the address
          matches any of the Console OS IP addresses.]]>
      </return-value-description-html>
   </method>
   <method name="FindByInventoryPath"
      vmodl-name="findByInventoryPath"
      is-optional="true"
      privilege="System.View"
      type-id-ref="vim.ManagedEntity"
      >
      <description-html>
         <![CDATA[Finds a managed entity based on its location in the inventory. The path is
  separated by slashes ('/'). For example, a path should be of the form
  "My Folder/My Datacenter/vm/Discovered VM/VM1". A leading slash or trailing
  slash is ignored. Thus, the following paths all represents the same object:
  "a/b", "/a/b", "a/b/", and '/a/b/'. Slashes in names must be represented using
  %2f, following the standard URL syntax. Any object in the inventory can be
  retrieved using this method, including resource pools and hosts.]]>
      </description-html>
      <parameter name="inventoryPath" type-id-ref="java.lang.String"
      vmodl-name="inventoryPath"
      version-id-ref="vim.version.version1"
      privilege="inventoryPath"
      >
      <description-html>
         <![CDATA[The path to the entity.]]>
      </description-html>
      </parameter>
      <return-value-description-html>
         <![CDATA[The managed entity that is found. If no match is found, null is
  returned.]]>
      </return-value-description-html>
   </method>
   <method name="FindChild"
      vmodl-name="findChild"
      is-optional="true"
      privilege="System.View"
      type-id-ref="vim.ManagedEntity"
      >
      <description-html>
         <![CDATA[Finds a particular child based on a managed entity
  name. This only searches the immediate children of a managed entity.
  For a <a href="vim.Datacenter.html">Datacenter</a>, the host and vm folders are
  considered children. For a <a href="vim.ComputeResource.html">ComputeResource</a>,
  the hosts and root <a href="vim.ResourcePool.html">ResourcePool</a> are considered
  children.]]>
      </description-html>
      <parameter name="entity" type-id-ref="vim.ManagedEntity"
      vmodl-name="entity"
      version-id-ref="vim.version.version1"
      privilege="entity"
      >
      <description-html>
         <![CDATA[A reference to a managed entity.]]>
      </description-html>
      </parameter>
      <parameter name="name" type-id-ref="java.lang.String"
      vmodl-name="name"
      version-id-ref="vim.version.version1"
      privilege="name"
      >
      <description-html>
         <![CDATA[The name of the child object.]]>
      </description-html>
      </parameter>
      <return-value-description-html>
         <![CDATA[The managed entity that is found, or null if no match is found.]]>
      </return-value-description-html>
   </method>
   <method name="FindAllByUuid"
      vmodl-name="findAllByUuid"
      version-id-ref="vim.version.version5"
      is-array="true"
      privilege="System.View"
      type-id-ref="vim.ManagedEntity"
      >
      <description-html>
         <![CDATA[Finds all virtual machines or hosts by UUID.]]>
      </description-html>
      <parameter name="datacenter" type-id-ref="vim.Datacenter"
      vmodl-name="datacenter"
      version-id-ref="vim.version.version5"
      is-optional="true"
      privilege="datacenter"
      >
      <description-html>
         <![CDATA[If specified, restricts the query to entities in
            a particular datacenter. If not specified, the entire inventory is
            searched.]]>
      </description-html>
      </parameter>
      <parameter name="uuid" type-id-ref="java.lang.String"
      vmodl-name="uuid"
      version-id-ref="vim.version.version5"
      privilege="uuid"
      >
      <description-html>
         <![CDATA[The UUID to find. If vmSearch is true, the UUID can be either BIOS
            or instance UUID.]]>
      </description-html>
      </parameter>
      <parameter name="vmSearch" type-id-ref="BOOLEAN"
      vmodl-name="vmSearch"
      version-id-ref="vim.version.version5"
      privilege="vmSearch"
      >
      <description-html>
         <![CDATA[If true, search for virtual machines, otherwise search for
            hosts.]]>
      </description-html>
      </parameter>
      <parameter name="instanceUuid" type-id-ref="BOOLEAN"
      vmodl-name="instanceUuid"
      version-id-ref="vim.version.version5"
      is-optional="true"
      privilege="instanceUuid"
      >
      <description-html>
         <![CDATA[Should only be set when vmSearch is true. If specified, search
            for virtual machines whose instance UUID matches the given uuid.
            Otherwise, search for virtual machines whose BIOS UUID matches the given
            uuid.]]>
      </description-html>
      </parameter>
      <return-value-description-html>
         <![CDATA[The list of all virtual machines or hosts that are matching with
            the given UUID. If no managed entities are found, an empty list
            is returned. If there are multiple matches, all matching entities
            are returned.]]>
      </return-value-description-html>
   </method>
   <method name="FindAllByDnsName"
      vmodl-name="findAllByDnsName"
      version-id-ref="vim.version.version5"
      is-array="true"
      privilege="System.View"
      type-id-ref="vim.ManagedEntity"
      >
      <description-html>
         <![CDATA[Finds all virtual machines or hosts by DNS name. The DNS name for a virtual
  machine is the one returned from VMware tools, <a href="vim.vm.GuestInfo.html#hostName">hostName</a>.]]>
      </description-html>
      <parameter name="datacenter" type-id-ref="vim.Datacenter"
      vmodl-name="datacenter"
      version-id-ref="vim.version.version5"
      is-optional="true"
      privilege="datacenter"
      >
      <description-html>
         <![CDATA[If specified, restricts the query to entities in
            a particular datacenter. If not specified, the entire inventory is
            searched.]]>
      </description-html>
      </parameter>
      <parameter name="dnsName" type-id-ref="java.lang.String"
      vmodl-name="dnsName"
      version-id-ref="vim.version.version5"
      privilege="dnsName"
      >
      <description-html>
         <![CDATA[The fully qualified domain name to find.]]>
      </description-html>
      </parameter>
      <parameter name="vmSearch" type-id-ref="BOOLEAN"
      vmodl-name="vmSearch"
      version-id-ref="vim.version.version5"
      privilege="vmSearch"
      >
      <description-html>
         <![CDATA[If true, search for virtual machines, otherwise search for
            hosts.]]>
      </description-html>
      </parameter>
      <return-value-description-html>
         <![CDATA[The list of all virtual machines or hosts that are found. If no managed
            entities are found, an empty list is returned. If there are multiple
            matches, all matching entities are returned.]]>
      </return-value-description-html>
   </method>
   <method name="FindAllByIp"
      vmodl-name="findAllByIp"
      version-id-ref="vim.version.version5"
      is-array="true"
      privilege="System.View"
      type-id-ref="vim.ManagedEntity"
      >
      <description-html>
         <![CDATA[Finds all virtual machines or hosts by IP address, where the IP address is
  in dot-decimal notation. For example, 10.17.12.12. The IP address for a virtual
  machine is the one returned from VMware tools, <a href="vim.vm.GuestInfo.html#ipAddress">ipAddress</a>.]]>
      </description-html>
      <parameter name="datacenter" type-id-ref="vim.Datacenter"
      vmodl-name="datacenter"
      version-id-ref="vim.version.version5"
      is-optional="true"
      privilege="datacenter"
      >
      <description-html>
         <![CDATA[If specified, restricts the query to entities in
            a particular datacenter. If not specified, the entire inventory is
            searched.]]>
      </description-html>
      </parameter>
      <parameter name="ip" type-id-ref="java.lang.String"
      vmodl-name="ip"
      version-id-ref="vim.version.version5"
      privilege="ip"
      >
      <description-html>
         <![CDATA[The dot-decimal notation formatted IP address to find.]]>
      </description-html>
      </parameter>
      <parameter name="vmSearch" type-id-ref="BOOLEAN"
      vmodl-name="vmSearch"
      version-id-ref="vim.version.version5"
      privilege="vmSearch"
      >
      <description-html>
         <![CDATA[If true, search for virtual machines, otherwise search for
            hosts.]]>
      </description-html>
      </parameter>
      <return-value-description-html>
         <![CDATA[The list of all virtual machines or hosts that are found. If no
            managed entities are found, an empty list is returned. If there
            are multiple matches, all matching entities are returned.]]>
      </return-value-description-html>
   </method>
   </managed-object>
   <managed-object name="MessageBusProxy"
      type-id="vim.host.MessageBusProxy"
      vmodl-name="vim.host.MessageBusProxy"
      version-id-ref="vim.version.version10"
      >
      <description-html>
         <![CDATA[This managed object provides interfaces to configure the common message bus
  proxy service running on the ESX host.]]>
      </description-html>
   </managed-object>
   <managed-object name="ClusterProfileManager"
      type-id="vim.profile.cluster.ProfileManager"
      vmodl-name="vim.profile.cluster.ProfileManager"
      version-id-ref="vim.version.version5"
      base-type-id="vim.profile.ProfileManager"
      >
   </managed-object>
   <managed-object name="CryptoManager"
      type-id="vim.encryption.CryptoManager"
      vmodl-name="vim.encryption.CryptoManager"
      version-id-ref="vim.version.version11"
      >
      <description-html>
         <![CDATA[Singleton Managed Object used to manage cryptographic keys.]]>
      </description-html>
            <property name="enabled" type-id-ref="BOOLEAN"
      vmodl-name="enabled"
      >
      <description-html>
         <![CDATA[Indicate if the encryption feature is enabled.]]>
      </description-html>
      </property>

   <method name="AddKey"
      vmodl-name="addKey"
      privilege="Cryptographer.ManageKeys"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Add an existing key.]]>
      </description-html>
      <parameter name="key" type-id-ref="vim.encryption.CryptoKeyPlain"
      vmodl-name="key"
      version-id-ref="vim.version.version11"
      privilege="key"
      >
      <description-html>
         <![CDATA[[in] The cryptographic key to add.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.AlreadyExists">
      <fault-description-html>
         <![CDATA[in case the key is already in the key cache]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[in case the host is not Crypto Safe]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="AddKeys"
      vmodl-name="addKeys"
      is-array="true"
      is-optional="true"
      privilege="Cryptographer.ManageKeys"
      type-id-ref="vim.encryption.CryptoKeyResult"
      >
      <description-html>
         <![CDATA[Add multiple existing keys.]]>
      </description-html>
      <parameter name="keys" type-id-ref="vim.encryption.CryptoKeyPlain"
      vmodl-name="keys"
      version-id-ref="vim.version.version11"
      is-array="true"
      is-optional="true"
      privilege="keys"
      >
      <description-html>
         <![CDATA[[in] List of cryptographic keys to add.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.InvalidState">
      <fault-description-html>
         <![CDATA[in case the host is not Crypto Safe]]>
      </fault-description-html>
      </fault>
      <return-value-description-html>
         <![CDATA[the result for each key operation.]]>
      </return-value-description-html>
   </method>
   <method name="RemoveKey"
      vmodl-name="removeKey"
      privilege="Cryptographer.ManageKeys"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Remove a key (only the UUID is needed to remove).
 If "force" is set, removal will happen even if the key is in use.]]>
      </description-html>
      <parameter name="key" type-id-ref="vim.encryption.CryptoKeyId"
      vmodl-name="key"
      version-id-ref="vim.version.version11"
      privilege="key"
      >
      <description-html>
         <![CDATA[[in] The key to remove.]]>
      </description-html>
      </parameter>
      <parameter name="force" type-id-ref="BOOLEAN"
      vmodl-name="force"
      version-id-ref="vim.version.version11"
      privilege="force"
      >
      <description-html>
         <![CDATA[[in] Remove the key even if in use or not existent.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.ResourceInUse">
      <fault-description-html>
         <![CDATA[if the key is used to encrypt any object
         and "force" is false.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="RemoveKeys"
      vmodl-name="removeKeys"
      is-array="true"
      is-optional="true"
      privilege="Cryptographer.ManageKeys"
      type-id-ref="vim.encryption.CryptoKeyResult"
      >
      <description-html>
         <![CDATA[Remove multiple keys (only the UUID is needed to remove).
 If "force" is set, removal will happen even if they are in use.]]>
      </description-html>
      <parameter name="keys" type-id-ref="vim.encryption.CryptoKeyId"
      vmodl-name="keys"
      version-id-ref="vim.version.version11"
      is-array="true"
      is-optional="true"
      privilege="keys"
      >
      <description-html>
         <![CDATA[[in] List of keys to remove.]]>
      </description-html>
      </parameter>
      <parameter name="force" type-id-ref="BOOLEAN"
      vmodl-name="force"
      version-id-ref="vim.version.version11"
      privilege="force"
      >
      <description-html>
         <![CDATA[[in] Remove the key even if in use. Always successful.]]>
      </description-html>
      </parameter>
   </method>
   <method name="ListKeys"
      vmodl-name="listKeys"
      is-array="true"
      is-optional="true"
      privilege="Cryptographer.ManageKeys"
      type-id-ref="vim.encryption.CryptoKeyId"
      >
      <description-html>
         <![CDATA[List keys.
   * When executed against the host, lists all the keys
     added to the host's key cache by <a href="vim.encryption.CryptoManager.html#addKey">AddKey</a>/<a href="vim.encryption.CryptoManager.html#addKeys">AddKeys</a>.
   * When executed against the VC, lists all the keys used by
     the correctly registered VMs, and the host key.]]>
      </description-html>
      <parameter name="limit" type-id-ref="INT"
      vmodl-name="limit"
      version-id-ref="vim.version.version11"
      is-optional="true"
      privilege="limit"
      >
      <description-html>
         <![CDATA[[in] maximum keys to return.]]>
      </description-html>
      </parameter>
      <return-value-description-html>
         <![CDATA[List of known keys.]]>
      </return-value-description-html>
   </method>
   </managed-object>
   <managed-object name="ManagedObjectView"
      type-id="vim.view.ManagedObjectView"
      vmodl-name="vim.view.ManagedObjectView"
      version-id-ref="vim.version.version2"
      base-type-id="vim.view.View"
      >
      <description-html>
         <![CDATA[<a href="vim.view.ManagedObjectView.html">ManagedObjectView</a> is the base class for view objects that provide access
  to a set of <a href="vim.ManagedEntity.html">ManagedEntity</a> objects. <a href="vim.view.ManagedObjectView.html">ManagedObjectView</a> defines
  a view list; the list contains references to objects in the view.
  To create a view use the <a href="vim.view.ViewManager.html">ViewManager</a> methods.]]>
      </description-html>
            <property name="view" type-id-ref="vmodl.ManagedObject"
      vmodl-name="view"
      is-array="true"
      is-optional="true"
      >
      <description-html>
         <![CDATA[The list of references to objects mapped by this view.]]>
      </description-html>
      </property>

   </managed-object>
   <managed-object name="PropertyFilter"
      type-id="vmodl.query.PropertyCollector.Filter"
      vmodl-name="vmodl.query.PropertyCollector.Filter"
      enclosing-type-id-ref="vmodl.query.PropertyCollector"
      version-id-ref="vmodl.query.version.version1"
      >
      <description-html>
         <![CDATA[The <a href="vmodl.query.PropertyCollector.Filter.html">PropertyFilter</a> managed object type defines a filter
  that controls the properties for which a <a href="vmodl.query.PropertyCollector.html">PropertyCollector</a> detects
  incremental changes.  Filters are subordinate objects; they are part of the <a href="vmodl.query.PropertyCollector.html">PropertyCollector</a> and do not have independent lifetimes.  A Filter
  is automatically destroyed when the session on which it was created is
  closed or the <a href="vmodl.query.PropertyCollector.html">PropertyCollector</a> on which it was created is
  destroyed.]]>
      </description-html>
            <property name="spec" type-id-ref="vmodl.query.PropertyCollector.FilterSpec"
      vmodl-name="spec"
      >
      <description-html>
         <![CDATA[Specifications for this filter.]]>
      </description-html>
      </property>

            <property name="partialUpdates" type-id-ref="BOOLEAN"
      vmodl-name="partialUpdates"
      >
      <description-html>
         <![CDATA[Flag to indicate if a change to a nested property reports only the
  nested change or the entire specified property value.  If the value is
  true, a change reports only the nested property.  If the value is
  false, a change reports the enclosing property named in the filter.]]>
      </description-html>
      </property>

   <method name="DestroyPropertyFilter"
      vmodl-name="destroy"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Destroys this filter.

  <p> This operation can be called explicitly, or it can take place
  implicitly when the session that created the filter is closed.]]>
      </description-html>
   </method>
   </managed-object>
   <managed-object name="HostProfile"
      type-id="vim.profile.host.HostProfile"
      vmodl-name="vim.profile.host.HostProfile"
      version-id-ref="vim.version.version5"
      base-type-id="vim.profile.Profile"
      >
      <description-html>
         <![CDATA[A host profile describes ESX Server configuration.
  The <a href="vim.profile.host.HostProfile.html">HostProfile</a> managed object provides access to profile data and
  it defines methods to manipulate the profile.
  A host profile is a combination of subprofiles, each of which contains
  configuration data for a specific capability. Some examples of host capabilities are
  authentication, memory, networking, and security. For access to individual subprofiles,
  see the <a href="vim.profile.host.HostApplyProfile.html">HostApplyProfile</a> data object
  (<a href="vim.profile.host.HostProfile.html">HostProfile</a>.<a href="vim.profile.Profile.html#config">Config</a>.<a href="vim.profile.host.HostProfile.ConfigInfo.html#applyProfile">applyProfile</a>).
  <p>
  Host profiles are part of the stateless configuration architecture.
  In the stateless environment, a Profile Engine runs on each ESX host,
  but an ESX host does not store its own configuration state. Instead,
  host configuration data is stored on vCenter Servers. Every time a host
  boots or reboots, it obtains its profile from the vCenter Server.
  <ul>
  <li>To create a base host profile use the
  <a href="vim.profile.host.ProfileManager.html">HostProfileManager</a>.<a href="vim.profile.ProfileManager.html#createProfile">CreateProfile</a>
  method. To create a profile from an ESX host, specify a
  <a href="vim.profile.host.HostProfile.HostBasedConfigSpec.html">HostProfileHostBasedConfigSpec</a>. To create a profile from a file,
  specify a <a href="vim.profile.host.HostProfile.SerializedHostProfileSpec.html">HostProfileSerializedHostProfileSpec</a>.<br/><br/>
  </li>
  <li>To create a subprofile for a particular host capability, use the
  <a href="vim.profile.host.ProfileManager.html">HostProfileManager</a>.<a href="vim.profile.host.ProfileManager.html#createDefaultProfile">CreateDefaultProfile</a>
  method. After you create the default profile you can modify it and save it in the base profile.
  <br/><br/>
  </li>
  <li>To update an existing profile, use the
  <a href="vim.profile.host.HostProfile.html">HostProfile</a>.<a href="vim.profile.host.HostProfile.html#update">UpdateHostProfile</a> method.<br/><br/>
  </li>
  <li>
  To apply a host profile to an ESX host, use the <a href="vim.profile.host.HostProfile.html#execute">ExecuteHostProfile</a> method
  to generate configuration changes, then call the
  <a href="vim.profile.host.ProfileManager.html">HostProfileManager</a>.<a href="vim.profile.host.ProfileManager.html#applyHostConfiguration">ApplyHostConfig_Task</a>
  method to apply them.
  </li>
  </ul>
  <p>
  <u>Host-Specific Configuration</u>
  <p>
  An individual host or a set of hosts may have some configuration settings
  that are different from the settings specified in the host profile.
  For example, the IP configuration for the host's virtual network adapters
  must be unique.
  <ul>
  <li>To verify host-specific data, use the <code>deferredParam</code> parameter
  to the <a href="vim.profile.host.HostProfile.html#execute">ExecuteHostProfile</a> method.
  The Profile Engine will determine if you have specified all of the required
  parameters for the host configuration. If additional data is required,
  call the <a href="vim.profile.host.HostProfile.html#execute">ExecuteHostProfile</a> method again as many times as necessary
  to verify a complete set of parameters.
  <br/><br/>
  </li>
  <li>To apply host-specific data, use the <code>userInput</code> parameter to the
  <a href="vim.profile.host.ProfileManager.html">HostProfileManager</a>.<a href="vim.profile.host.ProfileManager.html#applyHostConfiguration">ApplyHostConfig_Task</a>
   method.
  <br/><br/>
  </li>
  </ul>
  The Profile Engine saves host-specific data in an <a href="vim.profile.host.AnswerFile.html">AnswerFile</a>
  that is stored on the vCenter Server.
  The <a href="vim.profile.host.ProfileManager.html">HostProfileManager</a> provides several methods to manipulate
  answer files.
  <p>
  <u>Profile Compliance</u>
  <p>
  You can create associations between hosts and profiles to support compliance checking.
  When you perform compliance checking, you can determine if a host configuration
  conforms to a host profile.
  <ul>
  <li>To create an association between a host and a profile, use the
  <a href="vim.profile.Profile.html#associateEntities">AssociateProfile</a> method.
  The method adds the host to the
  <a href="vim.profile.host.HostProfile.html">HostProfile</a>.<a href="vim.profile.Profile.html#entity">Entity</a>[] list.
  <br/><br/></li>
  <li>To retrieve the list of profiles associated with a host, use the
  <a href="vim.profile.host.ProfileManager.html">HostProfileManager</a>.<a href="vim.profile.ProfileManager.html#findAssociatedProfile">FindAssociatedProfile</a>
  method.
  <br/><br/></li>
  <li>To check host compliance, use the
  <a href="vim.profile.Profile.html#checkCompliance">CheckProfileCompliance_Task</a> method.
  If you do not specify any hosts, the method will check the compliance of all hosts
  that are associated with the profile.
  <br/><br/></li>
  </ul>
  You can also use the Profile Compliance Manager to check compliance by specifying
  profiles, entities (hosts), or both. See
  <a href="vim.profile.ComplianceManager.html">ProfileComplianceManager</a>.<a href="vim.profile.ComplianceManager.html#checkCompliance">CheckCompliance_Task</a>.
  <p>
  <u>Profile Plug-Ins</u>
  <p>
  The vSphere architecture uses VMware profile plug-ins to define profile extensions.
  For information about using a plug-in to extend a host profile, see the VMware Technical Note
  <i>Developing a Host Profile Extension Plug-in</i>.
  <p>
  For access to host configuration data that is defined by plug-ins, use the
  <a href="vim.profile.ApplyProfile.html">ApplyProfile</a>.<a href="vim.profile.ApplyProfile.html#policy">policy</a>[] and
  <a href="vim.profile.ApplyProfile.html">ApplyProfile</a>.<a href="vim.profile.ApplyProfile.html#property">property</a>[] lists.
  The <a href="vim.profile.host.HostApplyProfile.html">HostApplyProfile</a> and its subprofiles, which collectively
  define host configuration data, are derived from the <a href="vim.profile.ApplyProfile.html">ApplyProfile</a>.
  <ul>
  <li>Policies store ESX configuration data in <a href="vim.profile.PolicyOption.html">PolicyOption</a> objects.</li>
  <li>Profile property lists contain subprofiles defined by plug-ins. Subprofiles can be nested.
  <ul>
  <li>Subprofile lists are available as an extension to the base host profile
  (<a href="vim.profile.host.HostProfile.html">HostProfile</a>.<a href="vim.profile.Profile.html#config">Config</a>.<a href="vim.profile.host.HostProfile.ConfigInfo.html#applyProfile">applyProfile</a>.<a href="vim.profile.ApplyProfile.html#property">property</a>[]).
  </li>
  <li>Subprofile lists are available as extensions to the host subprofiles - for example,
    the network subprofile
  (<a href="vim.profile.host.HostApplyProfile.html">HostApplyProfile</a>.<a href="vim.profile.host.HostApplyProfile.html#network">network</a>.<a href="vim.profile.ApplyProfile.html#property">property</a>[]).
  </li>
  </ul>
  </li>
  </ul>
  <br/>
  If you make changes to host profile data, later versions of profile plug-ins may not support
  the host configuration implied by the changes that you make. When a subsequent vSphere
  version becomes available, you must verify that the new version supports any previous
  configuration changes that you have made.]]>
      </description-html>
            <property name="validationState" type-id-ref="java.lang.String"
      vmodl-name="validationState"
      version-id-ref="vim.version.version12"
      is-optional="true"
      >
      <description-html>
         <![CDATA[State of the host profile validation operation. The values
 of the state will be one of ValidationState enumerations.]]>
      </description-html>
      </property>

            <property name="validationStateUpdateTime" type-id-ref="vmodl.DateTime"
      vmodl-name="validationStateUpdateTime"
      version-id-ref="vim.version.version12"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Update time of the validation operation.]]>
      </description-html>
      </property>

            <property name="validationFailureInfo" type-id-ref="vim.profile.host.HostProfile.ValidationFailureInfo"
      vmodl-name="validationFailureInfo"
      version-id-ref="vim.version.version12"
      is-optional="true"
      >
      <description-html>
         <![CDATA[This object is created or updated if the ValidationState
 is Failed. This object captures the most recent validation
 result for the host profile object in case of failure.]]>
      </description-html>
      </property>

            <property name="referenceHost" type-id-ref="vim.HostSystem"
      vmodl-name="referenceHost"
      is-optional="true"
      >
      <description-html>
         <![CDATA[Reference host in use for this host profile. To set this property,
 use the <a href="vim.profile.host.HostProfile.html#updateReferenceHost">UpdateReferenceHost</a>
 method. If you do not specify a host for validation
 (<a href="vim.profile.host.HostProfile.CompleteConfigSpec.html">HostProfileCompleteConfigSpec</a>.<a href="vim.profile.host.HostProfile.CompleteConfigSpec.html#validatorHost">validatorHost</a>),
 the Profile Engine uses the reference host to validate the profile.]]>
      </description-html>
      </property>

      <nested-type-id-ref>vim.profile.host.HostProfile.ConfigInfo</nested-type-id-ref>
      <nested-type-id-ref>vim.profile.host.HostProfile.ConfigSpec</nested-type-id-ref>
      <nested-type-id-ref>vim.profile.host.HostProfile.SerializedHostProfileSpec</nested-type-id-ref>
      <nested-type-id-ref>vim.profile.host.HostProfile.CompleteConfigSpec</nested-type-id-ref>
      <nested-type-id-ref>vim.profile.host.HostProfile.HostBasedConfigSpec</nested-type-id-ref>
      <nested-type-id-ref>vim.profile.host.HostProfile.ValidationState</nested-type-id-ref>
      <nested-type-id-ref>vim.profile.host.HostProfile.ValidationFailureInfo</nested-type-id-ref>
   <method name="HostProfileResetValidationState"
      vmodl-name="ResetValidationState"
      version-id-ref="vim.version.version12"
      privilege="Profile.Edit"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[This API will update the validationState to Ready
 from Failed, invalidate the validationFailureInfo
 and reset the  validationStateUpdateTime.

 This API will return error if the validationState
 is Running.]]>
      </description-html>
   </method>
   <method name="UpdateReferenceHost"
      vmodl-name="updateReferenceHost"
      privilege="Profile.Edit"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Sets the <a href="vim.profile.host.HostProfile.html">HostProfile</a>.<a href="vim.profile.host.HostProfile.html#referenceHost">ReferenceHost</a> property.]]>
      </description-html>
      <parameter name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      version-id-ref="vim.version.version5"
      is-optional="true"
      privilege="host"
      >
      <description-html>
         <![CDATA[Reference host to use. If unset, the <a href="vim.profile.host.HostProfile.html#referenceHost">ReferenceHost</a>
 property is cleared.]]>
      </description-html>
      </parameter>
   </method>
   <method name="UpdateHostProfile"
      vmodl-name="update"
      privilege="Profile.Edit"
      type-id-ref="void"
      >
      <description-html>
         <![CDATA[Update the <code>HostProfile</code> with the specified configuration data.]]>
      </description-html>
      <parameter name="config" type-id-ref="vim.profile.host.HostProfile.ConfigSpec"
      vmodl-name="config"
      version-id-ref="vim.version.version5"
      privilege="config"
      >
      <description-html>
         <![CDATA[Specification containing the new data.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.DuplicateName">
      <fault-description-html>
         <![CDATA[If the profile with the new name already exists.]]>
      </fault-description-html>
      </fault>
      <fault type-id-ref="vim.fault.ProfileUpdateFailed">
      <fault-description-html>
         <![CDATA[if errors were encountered when updating
    the profile.]]>
      </fault-description-html>
      </fault>
   </method>
   <method name="ExecuteHostProfile"
      vmodl-name="execute"
      privilege="System.View"
      type-id-ref="vim.profile.host.ExecuteResult"
      >
      <description-html>
         <![CDATA[Run the Profile Engine to determine the list of configuration changes
 needed for the specified host. The method generates configuration changes
 based on the host profile.
 <p>
 You can also specify deferred parameters to verify additional host-specific data.
 The Profile Engine uses the policy options
 (<a href="vim.profile.host.HostProfile.html">HostProfile</a>.<a href="vim.profile.Profile.html#config">Config</a>.<a href="vim.profile.host.HostProfile.ConfigInfo.html#applyProfile">applyProfile</a>.<a href="vim.profile.ApplyProfile.html#policy">policy</a>[])
 to determine the required parameters
 (<a href="vim.profile.PolicyOption.html">PolicyOption</a>.<a href="vim.profile.PolicyOption.html#parameter">parameter</a>[])
 for host configuration. If you do not provide all of the required parameters,
 you must call the method again to provide the complete list to the Profile Engine.
 After successful profile execution, when you apply the profile,
 the Profile Engine will save the host-specific data in an <a href="vim.profile.host.AnswerFile.html">AnswerFile</a>.]]>
      </description-html>
      <parameter name="host" type-id-ref="vim.HostSystem"
      vmodl-name="host"
      version-id-ref="vim.version.version5"
      privilege="host"
      >
      <description-html>
         <![CDATA[Host on which to execute the profile.
 The host does not have to be associated with the profile.]]>
      </description-html>
      </parameter>
      <parameter name="deferredParam" type-id-ref="vim.profile.DeferredPolicyOptionParameter"
      vmodl-name="deferredParam"
      version-id-ref="vim.version.version5"
      is-array="true"
      is-optional="true"
      privilege="deferredParam"
      >
      <description-html>
         <![CDATA[Additional configuration data to be applied to the host.
 This should contain all of the host-specific data, including data from from
 previous calls to the  method.]]>
      </description-html>
      </parameter>
      <return-value-description-html>
         <![CDATA[Result of the execution. If the operation is successful
 (<a href="vim.profile.host.ExecuteResult.html">ProfileExecuteResult</a>.<a href="vim.profile.host.ExecuteResult.html#status">status</a><code>=success</code>),
 the result object includes a valid host configuration specification that you can pass to the
  <a href="vim.profile.host.ProfileManager.html">HostProfileManager</a>.<a href="vim.profile.host.ProfileManager.html#applyHostConfiguration">ApplyHostConfig_Task</a>
 method.
 <p>
 If the operation is not successful, the object contains error information
 or information about additional data required for the host configuration.
 If additional data is required, the required input list
 (<a href="vim.profile.host.ExecuteResult.html">ProfileExecuteResult</a>.<a href="vim.profile.host.ExecuteResult.html#requireInput">requireInput</a>[])
 contains both the <code>deferredParam</code> data and paths to missing parameters.
 After you fill in the missing parameters, pass the complete required input
 list via the <code>deferredParam</code> parameter in another call to the execute method
 to finish input verification. After successful profile execution, you can pass
 the verified required input list to the <a href="vim.profile.host.ProfileManager.html#applyHostConfiguration">ApplyHostConfig_Task</a>
 method.]]>
      </return-value-description-html>
   </method>
   </managed-object>
   <managed-object name="UserDirectory"
      type-id="vim.UserDirectory"
      vmodl-name="vim.UserDirectory"
      version-id-ref="vim.version.version1"
      >
      <description-html>
         <![CDATA[The <a href="vim.UserDirectory.html">UserDirectory</a> managed object provides information about users
  and groups on a vSphere server and ESX hosts. The method
  <a href="vim.UserDirectory.html#retrieveUserGroups">RetrieveUserGroups</a> returns a list
  of user account data. The method can perform a search operation based on
  specific criteria - user name, group name, sub-string or string matching,
  and, on Windows, domain. Use the results as input
  to the AuthorizationManager methods
  <a href="vim.AuthorizationManager.html#setEntityPermissions">SetEntityPermissions</a> and
  <a href="vim.AuthorizationManager.html#resetEntityPermissions">ResetEntityPermissions</a>.
  <p>
  The content of the returned results depends on the server environment:
  <ul>
     <li> On a Windows host, <a href="vim.UserDirectory.html#retrieveUserGroups">RetrieveUserGroups</a> can search
          from the set of trusted domains on the host, including the primary
          domain of the system. A special domain (specified as an
          empty string - &quot;&quot;) refers to the users and groups local
          to the host.
     <li> On an ESX Server or a Linux host, the search operates on the
          users and groups defined in the /etc/passwd file. Always specify
          an empty string (&quot;&quot;) for the domain argument.
          If the /etc/passwd file contains Sun NIS or NIS+ users and groups,
          RetrieveUserGroups returns information about these accounts as well.
  </ul>]]>
      </description-html>
            <property name="domainList" type-id-ref="java.lang.String"
      vmodl-name="domainList"
      is-array="true"
      is-optional="true"
      privilege="System.View"
      >
      <description-html>
         <![CDATA[List of Windows domains available for user searches, if the underlying
  system supports windows domain membership.]]>
      </description-html>
      </property>

   <method name="RetrieveUserGroups"
      vmodl-name="retrieveUserGroups"
      is-array="true"
      is-optional="true"
      type-id-ref="vim.UserSearchResult"
      >
      <description-html>
         <![CDATA[Returns a list of <a href="vim.UserSearchResult.html">UserSearchResult</a> objects describing the
  users and groups defined for the server.
  <ul>
     <li>On Windows, the search for users and groups is restricted to
         the given domain. If you omit the domain argument, then
         the search is performed on local users and groups.
     <li>On ESX Server (or Linux systems), the method returns the list
         of users and groups that are specified in the /etc/passwd file.
         If the password file contains Sun NIS or NIS+ users and groups,
         the returned list includes information about those as well.
  </ul>
  <p>
  You must hold the Authorization.ModifyPermissions privilege to invoke this
  method. If you hold the privilege on any ManagedEntity, you will
  have access to user and group information for the server.
  <p/>
  <ul>
  As of vSphere API 5.1:
     <li> Local user groups on ESXi are not supported and this method will
          not return information about local groups on the ESXi host.
          Information about Active Directory groups is not affected.
     <li> Some special system users on ESXi like 'nfsnobody' and 'daemon'
          will be filtered out by this method.
  </ul>]]>
      </description-html>
      <parameter name="domain" type-id-ref="java.lang.String"
      vmodl-name="domain"
      version-id-ref="vim.version.version1"
      is-optional="true"
      privilege="domain"
      >
      <description-html>
         <![CDATA[Domain to be searched. If not set, then the method searches
                    the local machine.]]>
      </description-html>
      </parameter>
      <parameter name="searchStr" type-id-ref="java.lang.String"
      vmodl-name="searchStr"
      version-id-ref="vim.version.version1"
      privilege="searchStr"
      >
      <description-html>
         <![CDATA[Case insensitive substring used to filter results;
                    the search string is compared to the login and full name for users,
                    and the name and description for groups. Leave
                    this blank to match all users.]]>
      </description-html>
      </parameter>
      <parameter name="belongsToGroup" type-id-ref="java.lang.String"
      vmodl-name="belongsToGroup"
      version-id-ref="vim.version.version1"
      is-optional="true"
      privilege="belongsToGroup"
      >
      <description-html>
         <![CDATA[If present, the returned list contains only users or groups
                    that directly belong to the specified group. Users or groups that
                    have indirect membership will not be included in the list.]]>
      </description-html>
      </parameter>
      <parameter name="belongsToUser" type-id-ref="java.lang.String"
      vmodl-name="belongsToUser"
      version-id-ref="vim.version.version1"
      is-optional="true"
      privilege="belongsToUser"
      >
      <description-html>
         <![CDATA[If present, the returned list contains only groups that directly
                    contain the specified user. Groups that indirectly contain
                    the user will not be included in the list.]]>
      </description-html>
      </parameter>
      <parameter name="exactMatch" type-id-ref="BOOLEAN"
      vmodl-name="exactMatch"
      version-id-ref="vim.version.version1"
      privilege="exactMatch"
      >
      <description-html>
         <![CDATA[Indicates the searchStr passed should match a user or
                    group name exactly.]]>
      </description-html>
      </parameter>
      <parameter name="findUsers" type-id-ref="BOOLEAN"
      vmodl-name="findUsers"
      version-id-ref="vim.version.version1"
      privilege="findUsers"
      >
      <description-html>
         <![CDATA[True, if users should be included in the result.]]>
      </description-html>
      </parameter>
      <parameter name="findGroups" type-id-ref="BOOLEAN"
      vmodl-name="findGroups"
      version-id-ref="vim.version.version1"
      privilege="findGroups"
      >
      <description-html>
         <![CDATA[True, if groups should be included in the result.]]>
      </description-html>
      </parameter>
      <fault type-id-ref="vim.fault.NotFound">
      <fault-description-html>
         <![CDATA[If any of the domain, belongsToGroup, or belongsToUser
                       arguments refer to entities that do not exist.]]>
      </fault-description-html>
      </fault>
   </method>
   </managed-object>
   </managed-objects>
</definitions>
