VirtualBox Main API

Public Member Functions | Public Attributes | List of all members
ICloudClient Interface Reference
Inheritance diagram for ICloudClient:

## Public Member Functions
void | getExportDescriptionForm (in IVirtualSystemDescription description, out IVirtualSystemDescriptionForm form, [retval] out IProgress progress)
| Returns a form for editing the virtual system description for exporting a local VM into a cloud custom image.
void | exportVM (in IVirtualSystemDescription description, in IProgress progress)
| Export local VM into the cloud, creating a custom image.
void | getLaunchDescriptionForm (in IVirtualSystemDescription description, out IVirtualSystemDescriptionForm form, [retval] out IProgress progress)
void | launchVM (in IVirtualSystemDescription description, [retval] out IProgress progress)
void | getImportDescriptionForm (in IVirtualSystemDescription description, out IVirtualSystemDescriptionForm form, [retval] out IProgress progress)
| Returns a form for editing the virtual system description for import from cloud.
void | importInstance (in IVirtualSystemDescription description, in IProgress progress)
| Import an existing cloud instance to the local host.
void | getCloudMachine (in wstringUUID id, [retval] out ICloudMachine machine)
| Create an object that represents a cloud machine with the specified UUID.
void | readCloudMachineList ([retval] out IProgress progress)
| Make the list of cloud machines available via cloudMachineList attribute.
void | readCloudMachineStubList ([retval] out IProgress progress)
| Make the list of cloud machine stubs available via cloudMachineStubList attribute.
void | addCloudMachine (in wstring instanceId, out ICloudMachine machine, [retval] out IProgress progress)
| Adopt a running instance and register it as cloud machine.
void | createCloudMachine (in IVirtualSystemDescription description, out ICloudMachine machine, [retval] out IProgress progress)
| This is transitional method that combines launchVM and addCloudMachine.
void | listInstances (in CloudMachineState[] machineState, out IStringArray returnNames, out IStringArray returnIds, [retval] out IProgress progress)
| Returns the list of the instances in the Cloud.
void | listSourceInstances (out IStringArray returnNames, out IStringArray returnIds, [retval] out IProgress progress)
| Returns the list of instances in the cloud that can be added/adopted as VirtualBox cloud machines.
void | listImages (in CloudImageState[] imageState, out IStringArray returnNames, out IStringArray returnIds, [retval] out IProgress progress)
| Returns the list of the images in the Cloud.
void | listBootVolumes (out IStringArray returnNames, out IStringArray returnIds, [retval] out IProgress progress)
| Returns the list of boot volumes in the Cloud.
void | listSourceBootVolumes (out IStringArray returnNames, out IStringArray returnIds, [retval] out IProgress progress)
| Returns the list of boot volumes in the cloud that can be added/adopted as VirtualBox cloud machines.
void | listVnicAttachments (in wstring[] parameters, out IStringArray returnVnicAttachmentIds, out IStringArray returnVnicIds, [retval] out IProgress progress)
| Returns the list of the Vnic attachements in the Cloud.
void | getInstanceInfo (in wstring uid, in IVirtualSystemDescription description, [retval] out IProgress progress)
| Returns the information about an instance in the Cloud.
void | startInstance (in wstring uid, [retval] out IProgress progress)
| Start an existing instance with passed id.
void | pauseInstance (in wstring uid, [retval] out IProgress progress)
| Pause an existing instance with passed id.
void | terminateInstance (in wstring uid, [retval] out IProgress progress)
| Terminate an existing instance with passed id.
void | resetInstance (in wstring uid, [retval] out IProgress progress)
| Reset an existing instance with passed id.
void | cloneInstance (in wstring uid, in wstring newName, out ICloudMachine clone, [retval] out IProgress progress)
| Clone cloud virtual machine.
void | createImage (in wstring[] parameters, [retval] out IProgress progress)
| Create an image in the Cloud.
void | exportImage (in IMedium image, in wstring[] parameters, [retval] out IProgress progress)
| Export an existing VBox image in the Cloud.
void | importImage (in wstring uid, in wstring[] parameters, [retval] out IProgress progress)
| Import an existing image in the Cloud to the local host.
void | deleteImage (in wstring uid, [retval] out IProgress progress)
| Delete an existing image with passed id from the Cloud.
void | getImageInfo (in wstring uid, out IStringArray infoArray, [retval] out IProgress progress)
| Returns the information about an image in the Cloud.
void | startCloudNetworkGateway (in ICloudNetwork network, in wstring sshPublicKey, out ICloudNetworkGatewayInfo gatewayInfo, [retval] out IProgress progress)
void | setupCloudNetworkEnvironment (in wstring tunnelNetworkName, in wstring tunnelNetworkRange, in wstring gatewayOsName, in wstring gatewayOsVersion, in wstring gatewayShape, out ICloudNetworkEnvironmentInfo networkEnvironmentInfo, [retval] out IProgress progress)
void | getVnicInfo (in wstring uid, out IStringArray infoArray, [retval] out IProgress progress)
| Returns the information about Vnic in the Cloud.
void | getSubnetSelectionForm (in IVirtualSystemDescription description, out IVirtualSystemDescriptionForm form, [retval] out IProgress progress)
void | getMetricTypeByName (in wstring metricName, [retval] out MetricType metricType)
| Tries to find an appropriate metric type for the passed metric name.

## Public Attributes
readonly attribute ICloudMachine[] | cloudMachineList
| See readCloudMachineList.
readonly attribute ICloudMachine[] | cloudMachineStubList
| See readCloudMachineStubList.

## Member Function Documentation

## ◆ getExportDescriptionForm()

void ICloudClient::getExportDescriptionForm | ( | in IVirtualSystemDescription | description,
|  | out IVirtualSystemDescriptionForm | form,
|  | [retval] out IProgress | progress
| ) |  |

Returns a form for editing the virtual system description for exporting a local VM into a cloud custom image.

Parameters

  description | Virtual system description to be edited.
  form | An IForm instance for editing the virtual system description.
  progress | Progress object to track the operation completion.

## ◆ exportVM()

void ICloudClient::exportVM | ( | in IVirtualSystemDescription | description,
|  | in IProgress | progress
| ) |  |

Export local VM into the cloud, creating a custom image.

Parameters

  description | Virtual system description object which describes the machine and all required parameters.
  progress | Progress object to track the operation completion.

## ◆ getLaunchDescriptionForm()

void ICloudClient::getLaunchDescriptionForm | ( | in IVirtualSystemDescription | description,
|  | out IVirtualSystemDescriptionForm | form,
|  | [retval] out IProgress | progress
| ) |  |

## ◆ launchVM()

void ICloudClient::launchVM | ( | in IVirtualSystemDescription | description,
|  | [retval] out IProgress | progress
| ) |  |

## ◆ getImportDescriptionForm()

void ICloudClient::getImportDescriptionForm | ( | in IVirtualSystemDescription | description,
|  | out IVirtualSystemDescriptionForm | form,
|  | [retval] out IProgress | progress
| ) |  |

Returns a form for editing the virtual system description for import from cloud.

Parameters

  description | Virtual system description to be edited.
  form | An IForm instance for editing the virtual system description.
  progress | Progress object to track the operation completion.

## ◆ importInstance()

void ICloudClient::importInstance | ( | in IVirtualSystemDescription | description,
|  | in IProgress | progress
| ) |  |

Import an existing cloud instance to the local host.

All needed parameters are passed in the description (VSD).

Parameters

  description | VirtualSystemDescription object which is describing a machine and all required parameters.
  progress | Progress object to track the operation completion.

## ◆ getCloudMachine()

void ICloudClient::getCloudMachine | ( | in wstringUUID | id,
|  | [retval] out ICloudMachine | machine
| ) |  |

Create an object that represents a cloud machine with the specified UUID.

Note that the operation is synchronous. The returned machine is initiatally in inaccessible state and requires a refresh to get its data from the cloud.

Parameters

  id | UUID of a cloud machine.
  machine | Object that represents the cloud machine with the specified UUID.

## ◆ readCloudMachineList()

void ICloudClient::readCloudMachineList | ( | [retval] out IProgress | progress | ) |

Make the list of cloud machines available via cloudMachineList attribute.

Parameters

  progress | Progress object to track the operation completion.

## ◆ readCloudMachineStubList()

void ICloudClient::readCloudMachineStubList | ( | [retval] out IProgress | progress | ) |

Make the list of cloud machine stubs available via cloudMachineStubList attribute.

Like with getCloudMachine, the returned machines are initiatally inaccessible and require a refresh to get their data from the cloud.

Parameters

  progress | Progress object to track the operation completion.

## ◆ addCloudMachine()

void ICloudClient::addCloudMachine | ( | in wstring | instanceId,
|  | out ICloudMachine | machine,
|  | [retval] out IProgress | progress
| ) |  |

Adopt a running instance and register it as cloud machine.

This is kinda like adding a local .vbox file as a local VM.

Parameters

  instanceId | ID of an instance to be added as a cloud machine.
  machine | Object that represents the newly registered cloud machine.
  progress | Progress object to track the operation completion.

## ◆ createCloudMachine()

void ICloudClient::createCloudMachine | ( | in IVirtualSystemDescription | description,
|  | out ICloudMachine | machine,
|  | [retval] out IProgress | progress
| ) |  |

This is transitional method that combines launchVM and addCloudMachine.

Parameters

  description | Virtual system description object which describes the machine and all required parameters.
  machine | Object that represents the newly created cloud machine.
  progress | Progress object to track the operation completion.

## ◆ listInstances()

void ICloudClient::listInstances | ( | in CloudMachineState[] | machineState,
|  | out IStringArray | returnNames,
|  | out IStringArray | returnIds,
|  | [retval] out IProgress | progress
| ) |  |

Returns the list of the instances in the Cloud.

Parameters

  machineState | State of each VM.
  returnNames | VM names.
  returnIds | VM ids.
  progress | Progress object to track the operation completion.

## ◆ listSourceInstances()

void ICloudClient::listSourceInstances | ( | out IStringArray | returnNames,
|  | out IStringArray | returnIds,
|  | [retval] out IProgress | progress
| ) |  |

Returns the list of instances in the cloud that can be added/adopted as VirtualBox cloud machines.

Parameters

  returnNames | Instance names.
  returnIds | Instance idss.
  progress | Progress object to track the operation completion.

## ◆ listImages()

void ICloudClient::listImages | ( | in CloudImageState[] | imageState,
|  | out IStringArray | returnNames,
|  | out IStringArray | returnIds,
|  | [retval] out IProgress | progress
| ) |  |

Returns the list of the images in the Cloud.

Parameters

  imageState | State of each image.
  returnNames | Images names.
  returnIds | Images ids.
  progress | Progress object to track the operation completion.

## ◆ listBootVolumes()

void ICloudClient::listBootVolumes | ( | out IStringArray | returnNames,
|  | out IStringArray | returnIds,
|  | [retval] out IProgress | progress
| ) |  |

Returns the list of boot volumes in the Cloud.

Parameters

  returnNames | Boot volume names.
  returnIds | Boot volume ids.
  progress | Progress object to track the operation completion.

## ◆ listSourceBootVolumes()

void ICloudClient::listSourceBootVolumes | ( | out IStringArray | returnNames,
|  | out IStringArray | returnIds,
|  | [retval] out IProgress | progress
| ) |  |

Returns the list of boot volumes in the cloud that can be added/adopted as VirtualBox cloud machines.

Parameters

  returnNames | Boot volume names.
  returnIds | Boot volume ids.
  progress | Progress object to track the operation completion.

## ◆ listVnicAttachments()

void ICloudClient::listVnicAttachments | ( | in wstring[] | parameters,
|  | out IStringArray | returnVnicAttachmentIds,
|  | out IStringArray | returnVnicIds,
|  | [retval] out IProgress | progress
| ) |  |

Returns the list of the Vnic attachements in the Cloud.

Parameters

  parameters | Each parameter in the array must be in the form "name=value".
  returnVnicAttachmentIds | VM ids.
  returnVnicIds | VM ids.
  progress | Progress object to track the operation completion.

## ◆ getInstanceInfo()

void ICloudClient::getInstanceInfo | ( | in wstring | uid,
|  | in IVirtualSystemDescription | description,
|  | [retval] out IProgress | progress
| ) |  |

Returns the information about an instance in the Cloud.

Parameters

  uid | The id of instance in the Cloud.
  description | VirtualSystemDescription object which is describing a machine
  progress | Progress object to track the operation completion.

## ◆ startInstance()

void ICloudClient::startInstance | ( | in wstring | uid,
|  | [retval] out IProgress | progress
| ) |  |

Start an existing instance with passed id.

Parameters

  uid | The id of instance in the Cloud.
  progress | Progress object to track the operation completion.

## ◆ pauseInstance()

void ICloudClient::pauseInstance | ( | in wstring | uid,
|  | [retval] out IProgress | progress
| ) |  |

Pause an existing instance with passed id.

Parameters

  uid | The id of instance in the Cloud.
  progress | Progress object to track the operation completion.

## ◆ terminateInstance()

void ICloudClient::terminateInstance | ( | in wstring | uid,
|  | [retval] out IProgress | progress
| ) |  |

Terminate an existing instance with passed id.

Parameters

  uid | the id of instance in the Cloud.
  progress | Progress object to track the operation completion.

## ◆ resetInstance()

void ICloudClient::resetInstance | ( | in wstring | uid,
|  | [retval] out IProgress | progress
| ) |  |

Reset an existing instance with passed id.

Parameters

  uid | The id of instance in the Cloud.
  progress | Progress object to track the operation completion.

## ◆ cloneInstance()

void ICloudClient::cloneInstance | ( | in wstring | uid,
|  | in wstring | newName,
|  | out ICloudMachine | clone,
|  | [retval] out IProgress | progress
| ) |  |

Clone cloud virtual machine.

Parameters

  uid | The id of instance in the Cloud that should be cloned. Prerequisities: The instance must be in the list of VirtualBox cloud machines. VirtualBox operates only with those machines which are already known.
  newName | Name for a cloud machine.
  clone | Object that represents a cloned cloud machine.
  progress | Progress object to track the operation completion.

## ◆ createImage()

void ICloudClient::createImage | ( | in wstring[] | parameters,
|  | [retval] out IProgress | progress
| ) |  |

Create an image in the Cloud.

Parameters

  parameters | Each parameter in the array must be in the form "name=value".
  progress | Progress object to track the operation completion.

## ◆ exportImage()

void ICloudClient::exportImage | ( | in IMedium | image,
|  | in wstring[] | parameters,
|  | [retval] out IProgress | progress
| ) |  |

Export an existing VBox image in the Cloud.

Parameters

  image | Reference to the existing VBox image.
  parameters | Each parameter in the array must be in the form "name=value".
  progress | Progress object to track the operation completion.

## ◆ importImage()

void ICloudClient::importImage | ( | in wstring | uid,
|  | in wstring[] | parameters,
|  | [retval] out IProgress | progress
| ) |  |

Import an existing image in the Cloud to the local host.

Parameters

  uid | the id of image in the Cloud.
  parameters | Each parameter in the array must be in the form "name=value".
  progress | Progress object to track the operation completion.

## ◆ deleteImage()

void ICloudClient::deleteImage | ( | in wstring | uid,
|  | [retval] out IProgress | progress
| ) |  |

Delete an existing image with passed id from the Cloud.

Parameters

  uid | The id of image in the Cloud.
  progress | Progress object to track the operation completion.

## ◆ getImageInfo()

void ICloudClient::getImageInfo | ( | in wstring | uid,
|  | out IStringArray | infoArray,
|  | [retval] out IProgress | progress
| ) |  |

Returns the information about an image in the Cloud.

Parameters

  uid | The id of image in the Cloud.
  infoArray | An array where the image settings or properties is returned. Each parameter in the array must be in the form "name=value".
  progress | Progress object to track the operation completion.

## ◆ startCloudNetworkGateway()

void ICloudClient::startCloudNetworkGateway | ( | in ICloudNetwork | network,
|  | in wstring | sshPublicKey,
|  | out ICloudNetworkGatewayInfo | gatewayInfo,
|  | [retval] out IProgress | progress
| ) |  |

## ◆ setupCloudNetworkEnvironment()

void ICloudClient::setupCloudNetworkEnvironment | ( | in wstring | tunnelNetworkName,
|  | in wstring | tunnelNetworkRange,
|  | in wstring | gatewayOsName,
|  | in wstring | gatewayOsVersion,
|  | in wstring | gatewayShape,
|  | out ICloudNetworkEnvironmentInfo | networkEnvironmentInfo,
|  | [retval] out IProgress | progress
| ) |  |

## ◆ getVnicInfo()

void ICloudClient::getVnicInfo | ( | in wstring | uid,
|  | out IStringArray | infoArray,
|  | [retval] out IProgress | progress
| ) |  |

Returns the information about Vnic in the Cloud.

Parameters

  uid | The id of vnic in the Cloud.
  infoArray | An array where the Vnic settings/properties is returned. Each parameter in the array must be in the form "name=value".
  progress | Progress object to track the operation completion.

## ◆ getSubnetSelectionForm()

void ICloudClient::getSubnetSelectionForm | ( | in IVirtualSystemDescription | description,
|  | out IVirtualSystemDescriptionForm | form,
|  | [retval] out IProgress | progress
| ) |  |

## ◆ getMetricTypeByName()

void ICloudClient::getMetricTypeByName | ( | in wstring | metricName,
|  | [retval] out MetricType | metricType
| ) |  |

Tries to find an appropriate metric type for the passed metric name.

Parameters

  metricName | Metric name (see ICloudMachine::listMetricNames)
  metricType | Found metric type.

## Member Data Documentation

## ◆ cloudMachineList

readonly attribute ICloudMachine [] ICloudClient::cloudMachineList

See readCloudMachineList.

## ◆ cloudMachineStubList

readonly attribute ICloudMachine [] ICloudClient::cloudMachineStubList

See readCloudMachineStubList.