VirtualBox Main API

Public Member Functions | Public Attributes | List of all members
IUpdateAgent Interface Reference

Abstract parent interface for handling updatable software components. More...

Inheritance diagram for IUpdateAgent:

## Public Member Functions
void | checkFor ([retval] out IProgress progress)
| Checks for an update.
void | download ([retval] out IProgress progress)
| Downloads the update.
void | install ([retval] out IProgress progress)
| Installs the update.
void | rollback ()
| Rolls back installing the update.

## Public Attributes
readonly attribute wstring | name
| Name of the update component.
readonly attribute IEventSource | eventSource
| Event source for update agent events.
readonly attribute unsigned long | order
| Order hint the update component needs to run at, in conjunction with other update components.
readonly attribute wstring[] | dependsOn
| Array of other update component names this component depends on before being able to get installed.
readonly attribute wstring | version
| Version the update contains.
readonly attribute wstring | downloadUrl
| Download URL of the update.
readonly attribute wstring | webUrl
| Web URL of the update.
readonly attribute wstring | releaseNotes
| Release notes of the update.
attribute boolean | enabled
| Enables or disables the update component.
readonly attribute boolean | hidden
| Whether the update component shall be hidden from the user or not.
readonly attribute UpdateState | state
| Returns the current update state.
attribute unsigned long | checkFrequency
| The update check frequency (in seconds).
attribute UpdateChannel | channel
| Update channel to use for checking for updates.
attribute wstring | repositoryURL
| Update repository URL to use for retrieving the update.
readonly attribute wstring | lastCheckDate
| Date of last update check.
readonly attribute unsigned long | checkCount
| How many times the update check has happened already.
readonly attribute boolean | isCheckNeeded
| Returns `TRUE` if an update check is needed, or `FALSE` if not.
readonly attribute UpdateChannel[] | supportedChannels
| Returns a safe array of all supported update channels this agents offers.

## Detailed Description

Abstract parent interface for handling updatable software components.

Interface ID:
  `{C4B1B5F4-8CDF-4923-9EF6-B92476A84109}`

## Member Function Documentation

## ◆ checkFor()

void IUpdateAgent::checkFor | ( | [retval] out IProgress | progress | ) |

Checks for an update.

Parameters

  progress | Progress object to track operation completion.

## ◆ download()

void IUpdateAgent::download | ( | [retval] out IProgress | progress | ) |

Downloads the update.

Parameters

  progress | Progress object to track operation completion.

Expected result codes:

  VBOX_E_NOT_SUPPORTED | Downloading update not supported.

## ◆ install()

void IUpdateAgent::install | ( | [retval] out IProgress | progress | ) |

Installs the update.

Parameters

  progress | Progress object to track operation completion.

Expected result codes:

  VBOX_E_NOT_SUPPORTED | Installing update not supported.

## ◆ rollback()

void IUpdateAgent::rollback | ( |  | ) |

Rolls back installing the update.

## Member Data Documentation

## ◆ name

readonly attribute wstring IUpdateAgent::name

Name of the update component.

## ◆ eventSource

readonly attribute IEventSource IUpdateAgent::eventSource

Event source for update agent events.

## ◆ order

readonly attribute unsigned long IUpdateAgent::order

Order hint the update component needs to run at, in conjunction with other update components.

Expected result codes:

  0 | No order preferred / disabled.

Note
  Lower numbers mean higher priority. 0 means no order or disabled.

## ◆ dependsOn

readonly attribute wstring [] IUpdateAgent::dependsOn

Array of other update component names this component depends on before being able to get installed.

Note
  Ordered entries, highest priority first. No dependencies when array is empty. Dependency entries also can contain a minimum version number after the update component name, separated by an "@", e.g. "Guest Additions@7.1.0_BETA2".

## ◆ version

readonly attribute wstring IUpdateAgent::version

Version the update contains.

Expected result codes:

  VBOX_E_INVALID_OBJECT_STATE | Result not available yet.

## ◆ downloadUrl

readonly attribute wstring IUpdateAgent::downloadUrl

Download URL of the update.

Expected result codes:

  VBOX_E_INVALID_OBJECT_STATE | Result not available yet.

## ◆ webUrl

readonly attribute wstring IUpdateAgent::webUrl

Web URL of the update.

Expected result codes:

  VBOX_E_INVALID_OBJECT_STATE | Result not available yet.

## ◆ releaseNotes

readonly attribute wstring IUpdateAgent::releaseNotes

Release notes of the update.

Expected result codes:

  VBOX_E_INVALID_OBJECT_STATE | Result not available yet.

## ◆ enabled

attribute boolean IUpdateAgent::enabled

Enables or disables the update component.

## ◆ hidden

readonly attribute boolean IUpdateAgent::hidden

Whether the update component shall be hidden from the user or not.

## ◆ state

readonly attribute UpdateState IUpdateAgent::state

Returns the current update state.

## ◆ checkFrequency

attribute unsigned long IUpdateAgent::checkFrequency

The update check frequency (in seconds).

## ◆ channel

attribute UpdateChannel IUpdateAgent::channel

Update channel to use for checking for updates.

## ◆ repositoryURL

attribute wstring IUpdateAgent::repositoryURL

Update repository URL to use for retrieving the update.

Note
  Only repositories with the https:// URL scheme are allowed.

## ◆ lastCheckDate

readonly attribute wstring IUpdateAgent::lastCheckDate

Date of last update check.

Note
  In ISO 8601 format (e.g. 2020-05-11T21:13:39.348416000Z).

## ◆ checkCount

readonly attribute unsigned long IUpdateAgent::checkCount

How many times the update check has happened already.

## ◆ isCheckNeeded

readonly attribute boolean IUpdateAgent::isCheckNeeded

Returns `TRUE` if an update check is needed, or `FALSE` if not.

Note
  Compares the system's current date with the last update check date and currently set check frequency.

## ◆ supportedChannels

readonly attribute UpdateChannel [] IUpdateAgent::supportedChannels

Returns a safe array of all supported update channels this agents offers.