Class VcLicenseManager

Extends com.vmware.vmo.plugin.vi4.model.VimContentManagedObject
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.

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.

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.

To specify the edition type and any optional functions, use updateLicense for ESX Server and addLicense follow by LicenseAssingmentManager.updateAssignedLicense for VirtualCenter.

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.

Here is a diagram of the unit costs supported by this API and their relationships.

   +------------------------------+   +--------+      +-------+
   | +-----------+ +-----------+  |   | Server |      |  Host |
   | |           | |           |  |   +--------+      +-------+
   | |  cpuCore  | |   cpuCore |  |                   +-------+
   | +-----------+ +-----------+  |   +--------+      |  Host |
   |                  cpuPackage  |   |  VM    |      +-------+
   +------------------------------+   +--------+


Name Type Description
diagnostics VcLicenseDiagnostics Return current diagnostic information. <br/><i>As of vSphere API 4.0, this property is not used by the system.</i>
evaluation VcLicenseManagerEvaluationInfo Deprecated as of vSphere API 6.0 for vCenter Impl use For ESX it is still supported.
featureInfo VcLicenseFeatureInfo[] The list of features that can be licensed. <br/><i>As of VI API 2.5, use <a target="_blank" href="">VcLicenseManager</a> instead.</i>
id String returns the id of this ManagedObject
licenseAssignmentManager VcLicenseAssignmentManager License Assignment Manager <br/><i>As of vSphere API 6.0 use</i>
licensedEdition String 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 target="_blank" href="">VcLicenseManager</a>. <br/><i>As of vSphere API 4.0, use <a target="_blank" href="">VcLicenseAssignmentManager</a> instead.</i>
licenses VcLicenseManagerLicenseInfo[] Get information about all the licenses avaiable. Deprecated as of vSphere API 6.0 for vCenter Impl use For ESX it is still supported.
reference VcManagedObjectReference returns the ManagedObjectReference of this ManagedObject
sdkConnection VcSdkConnection returns the parent SdkConnection
source VcLicenseSource Set or return a data object type of LocalLicense or LicenseServer. <br/><i>As of vSphere API 4.0, use <a target="_blank" href="">VcLicenseAssignmentManager</a> to get evaluation information.</i>
sourceAvailable boolean Current state of the license source. License sources that are LocalSource are always available. <br/><i>As of vSphere API 4.0, this property is not used.</i>
vimHost VcSdkConnection returns the parent SdkConnection (deprecated)
vimType String returns the type of this ManagedObject


Name Returns
addLicense(String licenseKey, VcKeyValue[] labels) VcLicenseManagerLicenseInfo
checkLicenseFeature(VcHostSystem host, String featureKey) boolean
configureLicenseSource(VcHostSystem host, VcLicenseSource licenseSource) void
createTrigger(Number timeout, String filter, String condition, String filterToSync) Trigger
decodeLicense(String licenseKey) VcLicenseManagerLicenseInfo
disableFeature(VcHostSystem host, String featureKey) boolean
enableFeature(VcHostSystem host, String featureKey) boolean
queryLicenseSourceAvailability(VcHostSystem host) VcLicenseAvailabilityInfo[]
queryLicenseUsage(VcHostSystem host) VcLicenseUsageInfo
querySupportedFeatures(VcHostSystem host) VcLicenseFeatureInfo[]
removeLicense(String licenseKey) void
removeLicenseLabel(String licenseKey, String labelKey) void
setLicenseEdition(VcHostSystem host, String featureKey) void
updateLicense(String licenseKey, VcKeyValue[] labels) VcLicenseManagerLicenseInfo
updateLicenseLabel(String licenseKey, String labelKey, String labelValue) void

Returned by


Referenced in