* Use the Migrate for Compute Engine API to programmatically migrate workloads.

* *

* For more information about this service, see the API * Documentation *

* * @author Google, Inc. */ class VMMigrationService extends \Google\Service { /** See, edit, configure, and delete your Google Cloud data and see the email address for your Google Account.. */ const CLOUD_PLATFORM = "https://www.googleapis.com/auth/cloud-platform"; public $projects_locations; public $projects_locations_groups; public $projects_locations_operations; public $projects_locations_sources; public $projects_locations_sources_datacenterConnectors; public $projects_locations_sources_migratingVms; public $projects_locations_sources_migratingVms_cloneJobs; public $projects_locations_sources_migratingVms_cutoverJobs; public $projects_locations_sources_utilizationReports; public $projects_locations_targetProjects; /** * Constructs the internal representation of the VMMigrationService service. * * @param Client|array $clientOrConfig The client used to deliver requests, or a * config array to pass to a new Client instance. * @param string $rootUrl The root URL used for requests to the service. */ public function __construct($clientOrConfig = [], $rootUrl = null) { parent::__construct($clientOrConfig); $this->rootUrl = $rootUrl ?: 'https://vmmigration.googleapis.com/'; $this->servicePath = ''; $this->batchPath = 'batch'; $this->version = 'v1'; $this->serviceName = 'vmmigration'; $this->projects_locations = new VMMigrationService\Resource\ProjectsLocations( $this, $this->serviceName, 'locations', [ 'methods' => [ 'get' => [ 'path' => 'v1/{+name}', 'httpMethod' => 'GET', 'parameters' => [ 'name' => [ 'location' => 'path', 'type' => 'string', 'required' => true, ], ], ],'list' => [ 'path' => 'v1/{+name}/locations', 'httpMethod' => 'GET', 'parameters' => [ 'name' => [ 'location' => 'path', 'type' => 'string', 'required' => true, ], 'filter' => [ 'location' => 'query', 'type' => 'string', ], 'pageSize' => [ 'location' => 'query', 'type' => 'integer', ], 'pageToken' => [ 'location' => 'query', 'type' => 'string', ], ], ], ] ] ); $this->projects_locations_groups = new VMMigrationService\Resource\ProjectsLocationsGroups( $this, $this->serviceName, 'groups', [ 'methods' => [ 'addGroupMigration' => [ 'path' => 'v1/{+group}:addGroupMigration', 'httpMethod' => 'POST', 'parameters' => [ 'group' => [ 'location' => 'path', 'type' => 'string', 'required' => true, ], ], ],'create' => [ 'path' => 'v1/{+parent}/groups', 'httpMethod' => 'POST', 'parameters' => [ 'parent' => [ 'location' => 'path', 'type' => 'string', 'required' => true, ], 'groupId' => [ 'location' => 'query', 'type' => 'string', ], 'requestId' => [ 'location' => 'query', 'type' => 'string', ], ], ],'delete' => [ 'path' => 'v1/{+name}', 'httpMethod' => 'DELETE', 'parameters' => [ 'name' => [ 'location' => 'path', 'type' => 'string', 'required' => true, ], 'requestId' => [ 'location' => 'query', 'type' => 'string', ], ], ],'get' => [ 'path' => 'v1/{+name}', 'httpMethod' => 'GET', 'parameters' => [ 'name' => [ 'location' => 'path', 'type' => 'string', 'required' => true, ], ], ],'list' => [ 'path' => 'v1/{+parent}/groups', 'httpMethod' => 'GET', 'parameters' => [ 'parent' => [ 'location' => 'path', 'type' => 'string', 'required' => true, ], 'filter' => [ 'location' => 'query', 'type' => 'string', ], 'orderBy' => [ 'location' => 'query', 'type' => 'string', ], 'pageSize' => [ 'location' => 'query', 'type' => 'integer', ], 'pageToken' => [ 'location' => 'query', 'type' => 'string', ], ], ],'patch' => [ 'path' => 'v1/{+name}', 'httpMethod' => 'PATCH', 'parameters' => [ 'name' => [ 'location' => 'path', 'type' => 'string', 'required' => true, ], 'requestId' => [ 'location' => 'query', 'type' => 'string', ], 'updateMask' => [ 'location' => 'query', 'type' => 'string', ], ], ],'removeGroupMigration' => [ 'path' => 'v1/{+group}:removeGroupMigration', 'httpMethod' => 'POST', 'parameters' => [ 'group' => [ 'location' => 'path', 'type' => 'string', 'required' => true, ], ], ], ] ] ); $this->projects_locations_operations = new VMMigrationService\Resource\ProjectsLocationsOperations( $this, $this->serviceName, 'operations', [ 'methods' => [ 'cancel' => [ 'path' => 'v1/{+name}:cancel', 'httpMethod' => 'POST', 'parameters' => [ 'name' => [ 'location' => 'path', 'type' => 'string', 'required' => true, ], ], ],'delete' => [ 'path' => 'v1/{+name}', 'httpMethod' => 'DELETE', 'parameters' => [ 'name' => [ 'location' => 'path', 'type' => 'string', 'required' => true, ], ], ],'get' => [ 'path' => 'v1/{+name}', 'httpMethod' => 'GET', 'parameters' => [ 'name' => [ 'location' => 'path', 'type' => 'string', 'required' => true, ], ], ],'list' => [ 'path' => 'v1/{+name}/operations', 'httpMethod' => 'GET', 'parameters' => [ 'name' => [ 'location' => 'path', 'type' => 'string', 'required' => true, ], 'filter' => [ 'location' => 'query', 'type' => 'string', ], 'pageSize' => [ 'location' => 'query', 'type' => 'integer', ], 'pageToken' => [ 'location' => 'query', 'type' => 'string', ], ], ], ] ] ); $this->projects_locations_sources = new VMMigrationService\Resource\ProjectsLocationsSources( $this, $this->serviceName, 'sources', [ 'methods' => [ 'create' => [ 'path' => 'v1/{+parent}/sources', 'httpMethod' => 'POST', 'parameters' => [ 'parent' => [ 'location' => 'path', 'type' => 'string', 'required' => true, ], 'requestId' => [ 'location' => 'query', 'type' => 'string', ], 'sourceId' => [ 'location' => 'query', 'type' => 'string', ], ], ],'delete' => [ 'path' => 'v1/{+name}', 'httpMethod' => 'DELETE', 'parameters' => [ 'name' => [ 'location' => 'path', 'type' => 'string', 'required' => true, ], 'requestId' => [ 'location' => 'query', 'type' => 'string', ], ], ],'fetchInventory' => [ 'path' => 'v1/{+source}:fetchInventory', 'httpMethod' => 'GET', 'parameters' => [ 'source' => [ 'location' => 'path', 'type' => 'string', 'required' => true, ], 'forceRefresh' => [ 'location' => 'query', 'type' => 'boolean', ], ], ],'get' => [ 'path' => 'v1/{+name}', 'httpMethod' => 'GET', 'parameters' => [ 'name' => [ 'location' => 'path', 'type' => 'string', 'required' => true, ], ], ],'list' => [ 'path' => 'v1/{+parent}/sources', 'httpMethod' => 'GET', 'parameters' => [ 'parent' => [ 'location' => 'path', 'type' => 'string', 'required' => true, ], 'filter' => [ 'location' => 'query', 'type' => 'string', ], 'orderBy' => [ 'location' => 'query', 'type' => 'string', ], 'pageSize' => [ 'location' => 'query', 'type' => 'integer', ], 'pageToken' => [ 'location' => 'query', 'type' => 'string', ], ], ],'patch' => [ 'path' => 'v1/{+name}', 'httpMethod' => 'PATCH', 'parameters' => [ 'name' => [ 'location' => 'path', 'type' => 'string', 'required' => true, ], 'requestId' => [ 'location' => 'query', 'type' => 'string', ], 'updateMask' => [ 'location' => 'query', 'type' => 'string', ], ], ], ] ] ); $this->projects_locations_sources_datacenterConnectors = new VMMigrationService\Resource\ProjectsLocationsSourcesDatacenterConnectors( $this, $this->serviceName, 'datacenterConnectors', [ 'methods' => [ 'create' => [ 'path' => 'v1/{+parent}/datacenterConnectors', 'httpMethod' => 'POST', 'parameters' => [ 'parent' => [ 'location' => 'path', 'type' => 'string', 'required' => true, ], 'datacenterConnectorId' => [ 'location' => 'query', 'type' => 'string', ], 'requestId' => [ 'location' => 'query', 'type' => 'string', ], ], ],'delete' => [ 'path' => 'v1/{+name}', 'httpMethod' => 'DELETE', 'parameters' => [ 'name' => [ 'location' => 'path', 'type' => 'string', 'required' => true, ], 'requestId' => [ 'location' => 'query', 'type' => 'string', ], ], ],'get' => [ 'path' => 'v1/{+name}', 'httpMethod' => 'GET', 'parameters' => [ 'name' => [ 'location' => 'path', 'type' => 'string', 'required' => true, ], ], ],'list' => [ 'path' => 'v1/{+parent}/datacenterConnectors', 'httpMethod' => 'GET', 'parameters' => [ 'parent' => [ 'location' => 'path', 'type' => 'string', 'required' => true, ], 'filter' => [ 'location' => 'query', 'type' => 'string', ], 'orderBy' => [ 'location' => 'query', 'type' => 'string', ], 'pageSize' => [ 'location' => 'query', 'type' => 'integer', ], 'pageToken' => [ 'location' => 'query', 'type' => 'string', ], ], ],'upgradeAppliance' => [ 'path' => 'v1/{+datacenterConnector}:upgradeAppliance', 'httpMethod' => 'POST', 'parameters' => [ 'datacenterConnector' => [ 'location' => 'path', 'type' => 'string', 'required' => true, ], ], ], ] ] ); $this->projects_locations_sources_migratingVms = new VMMigrationService\Resource\ProjectsLocationsSourcesMigratingVms( $this, $this->serviceName, 'migratingVms', [ 'methods' => [ 'create' => [ 'path' => 'v1/{+parent}/migratingVms', 'httpMethod' => 'POST', 'parameters' => [ 'parent' => [ 'location' => 'path', 'type' => 'string', 'required' => true, ], 'migratingVmId' => [ 'location' => 'query', 'type' => 'string', ], 'requestId' => [ 'location' => 'query', 'type' => 'string', ], ], ],'delete' => [ 'path' => 'v1/{+name}', 'httpMethod' => 'DELETE', 'parameters' => [ 'name' => [ 'location' => 'path', 'type' => 'string', 'required' => true, ], ], ],'finalizeMigration' => [ 'path' => 'v1/{+migratingVm}:finalizeMigration', 'httpMethod' => 'POST', 'parameters' => [ 'migratingVm' => [ 'location' => 'path', 'type' => 'string', 'required' => true, ], ], ],'get' => [ 'path' => 'v1/{+name}', 'httpMethod' => 'GET', 'parameters' => [ 'name' => [ 'location' => 'path', 'type' => 'string', 'required' => true, ], 'view' => [ 'location' => 'query', 'type' => 'string', ], ], ],'list' => [ 'path' => 'v1/{+parent}/migratingVms', 'httpMethod' => 'GET', 'parameters' => [ 'parent' => [ 'location' => 'path', 'type' => 'string', 'required' => true, ], 'filter' => [ 'location' => 'query', 'type' => 'string', ], 'orderBy' => [ 'location' => 'query', 'type' => 'string', ], 'pageSize' => [ 'location' => 'query', 'type' => 'integer', ], 'pageToken' => [ 'location' => 'query', 'type' => 'string', ], 'view' => [ 'location' => 'query', 'type' => 'string', ], ], ],'patch' => [ 'path' => 'v1/{+name}', 'httpMethod' => 'PATCH', 'parameters' => [ 'name' => [ 'location' => 'path', 'type' => 'string', 'required' => true, ], 'requestId' => [ 'location' => 'query', 'type' => 'string', ], 'updateMask' => [ 'location' => 'query', 'type' => 'string', ], ], ],'pauseMigration' => [ 'path' => 'v1/{+migratingVm}:pauseMigration', 'httpMethod' => 'POST', 'parameters' => [ 'migratingVm' => [ 'location' => 'path', 'type' => 'string', 'required' => true, ], ], ],'resumeMigration' => [ 'path' => 'v1/{+migratingVm}:resumeMigration', 'httpMethod' => 'POST', 'parameters' => [ 'migratingVm' => [ 'location' => 'path', 'type' => 'string', 'required' => true, ], ], ],'startMigration' => [ 'path' => 'v1/{+migratingVm}:startMigration', 'httpMethod' => 'POST', 'parameters' => [ 'migratingVm' => [ 'location' => 'path', 'type' => 'string', 'required' => true, ], ], ], ] ] ); $this->projects_locations_sources_migratingVms_cloneJobs = new VMMigrationService\Resource\ProjectsLocationsSourcesMigratingVmsCloneJobs( $this, $this->serviceName, 'cloneJobs', [ 'methods' => [ 'cancel' => [ 'path' => 'v1/{+name}:cancel', 'httpMethod' => 'POST', 'parameters' => [ 'name' => [ 'location' => 'path', 'type' => 'string', 'required' => true, ], ], ],'create' => [ 'path' => 'v1/{+parent}/cloneJobs', 'httpMethod' => 'POST', 'parameters' => [ 'parent' => [ 'location' => 'path', 'type' => 'string', 'required' => true, ], 'cloneJobId' => [ 'location' => 'query', 'type' => 'string', ], 'requestId' => [ 'location' => 'query', 'type' => 'string', ], ], ],'get' => [ 'path' => 'v1/{+name}', 'httpMethod' => 'GET', 'parameters' => [ 'name' => [ 'location' => 'path', 'type' => 'string', 'required' => true, ], ], ],'list' => [ 'path' => 'v1/{+parent}/cloneJobs', 'httpMethod' => 'GET', 'parameters' => [ 'parent' => [ 'location' => 'path', 'type' => 'string', 'required' => true, ], 'filter' => [ 'location' => 'query', 'type' => 'string', ], 'orderBy' => [ 'location' => 'query', 'type' => 'string', ], 'pageSize' => [ 'location' => 'query', 'type' => 'integer', ], 'pageToken' => [ 'location' => 'query', 'type' => 'string', ], ], ], ] ] ); $this->projects_locations_sources_migratingVms_cutoverJobs = new VMMigrationService\Resource\ProjectsLocationsSourcesMigratingVmsCutoverJobs( $this, $this->serviceName, 'cutoverJobs', [ 'methods' => [ 'cancel' => [ 'path' => 'v1/{+name}:cancel', 'httpMethod' => 'POST', 'parameters' => [ 'name' => [ 'location' => 'path', 'type' => 'string', 'required' => true, ], ], ],'create' => [ 'path' => 'v1/{+parent}/cutoverJobs', 'httpMethod' => 'POST', 'parameters' => [ 'parent' => [ 'location' => 'path', 'type' => 'string', 'required' => true, ], 'cutoverJobId' => [ 'location' => 'query', 'type' => 'string', ], 'requestId' => [ 'location' => 'query', 'type' => 'string', ], ], ],'get' => [ 'path' => 'v1/{+name}', 'httpMethod' => 'GET', 'parameters' => [ 'name' => [ 'location' => 'path', 'type' => 'string', 'required' => true, ], ], ],'list' => [ 'path' => 'v1/{+parent}/cutoverJobs', 'httpMethod' => 'GET', 'parameters' => [ 'parent' => [ 'location' => 'path', 'type' => 'string', 'required' => true, ], 'filter' => [ 'location' => 'query', 'type' => 'string', ], 'orderBy' => [ 'location' => 'query', 'type' => 'string', ], 'pageSize' => [ 'location' => 'query', 'type' => 'integer', ], 'pageToken' => [ 'location' => 'query', 'type' => 'string', ], ], ], ] ] ); $this->projects_locations_sources_utilizationReports = new VMMigrationService\Resource\ProjectsLocationsSourcesUtilizationReports( $this, $this->serviceName, 'utilizationReports', [ 'methods' => [ 'create' => [ 'path' => 'v1/{+parent}/utilizationReports', 'httpMethod' => 'POST', 'parameters' => [ 'parent' => [ 'location' => 'path', 'type' => 'string', 'required' => true, ], 'requestId' => [ 'location' => 'query', 'type' => 'string', ], 'utilizationReportId' => [ 'location' => 'query', 'type' => 'string', ], ], ],'delete' => [ 'path' => 'v1/{+name}', 'httpMethod' => 'DELETE', 'parameters' => [ 'name' => [ 'location' => 'path', 'type' => 'string', 'required' => true, ], 'requestId' => [ 'location' => 'query', 'type' => 'string', ], ], ],'get' => [ 'path' => 'v1/{+name}', 'httpMethod' => 'GET', 'parameters' => [ 'name' => [ 'location' => 'path', 'type' => 'string', 'required' => true, ], 'view' => [ 'location' => 'query', 'type' => 'string', ], ], ],'list' => [ 'path' => 'v1/{+parent}/utilizationReports', 'httpMethod' => 'GET', 'parameters' => [ 'parent' => [ 'location' => 'path', 'type' => 'string', 'required' => true, ], 'filter' => [ 'location' => 'query', 'type' => 'string', ], 'orderBy' => [ 'location' => 'query', 'type' => 'string', ], 'pageSize' => [ 'location' => 'query', 'type' => 'integer', ], 'pageToken' => [ 'location' => 'query', 'type' => 'string', ], 'view' => [ 'location' => 'query', 'type' => 'string', ], ], ], ] ] ); $this->projects_locations_targetProjects = new VMMigrationService\Resource\ProjectsLocationsTargetProjects( $this, $this->serviceName, 'targetProjects', [ 'methods' => [ 'create' => [ 'path' => 'v1/{+parent}/targetProjects', 'httpMethod' => 'POST', 'parameters' => [ 'parent' => [ 'location' => 'path', 'type' => 'string', 'required' => true, ], 'requestId' => [ 'location' => 'query', 'type' => 'string', ], 'targetProjectId' => [ 'location' => 'query', 'type' => 'string', ], ], ],'delete' => [ 'path' => 'v1/{+name}', 'httpMethod' => 'DELETE', 'parameters' => [ 'name' => [ 'location' => 'path', 'type' => 'string', 'required' => true, ], 'requestId' => [ 'location' => 'query', 'type' => 'string', ], ], ],'get' => [ 'path' => 'v1/{+name}', 'httpMethod' => 'GET', 'parameters' => [ 'name' => [ 'location' => 'path', 'type' => 'string', 'required' => true, ], ], ],'list' => [ 'path' => 'v1/{+parent}/targetProjects', 'httpMethod' => 'GET', 'parameters' => [ 'parent' => [ 'location' => 'path', 'type' => 'string', 'required' => true, ], 'filter' => [ 'location' => 'query', 'type' => 'string', ], 'orderBy' => [ 'location' => 'query', 'type' => 'string', ], 'pageSize' => [ 'location' => 'query', 'type' => 'integer', ], 'pageToken' => [ 'location' => 'query', 'type' => 'string', ], ], ],'patch' => [ 'path' => 'v1/{+name}', 'httpMethod' => 'PATCH', 'parameters' => [ 'name' => [ 'location' => 'path', 'type' => 'string', 'required' => true, ], 'requestId' => [ 'location' => 'query', 'type' => 'string', ], 'updateMask' => [ 'location' => 'query', 'type' => 'string', ], ], ], ] ] ); } } // Adding a class alias for backwards compatibility with the previous class name. class_alias(VMMigrationService::class, 'Google_Service_VMMigrationService');