Compute V1 Client - Class MachineTypesClient (1.22.0)

Reference documentation and code samples for the Compute V1 Client class MachineTypesClient.

Service Description: The MachineTypes API.

This class provides the ability to make remote calls to the backing service through method calls that map to API methods.

Namespace

Google \ Cloud \ Compute \ V1 \ Client

Methods

__construct

Constructor.

Parameters
Name Description
options array

Optional. Options for configuring the service API wrapper.

↳ apiEndpoint string

The address of the API remote host. May optionally include the port, formatted as "

↳ credentials string|array|FetchAuthTokenInterface|CredentialsWrapper

The credentials to be used by the client to authorize API calls. This option accepts either a path to a credentials file, or a decoded credentials file as a PHP array. Advanced usage: In addition, this option can also accept a pre-constructed Google\Auth\FetchAuthTokenInterface object or Google\ApiCore\CredentialsWrapper object. Note that when one of these objects are provided, any settings in $credentialsConfig will be ignored.

↳ credentialsConfig array

Options used to configure credentials, including auth token caching, for the client. For a full list of supporting configuration options, see Google\ApiCore\CredentialsWrapper::build() .

↳ disableRetries bool

Determines whether or not retries defined by the client configuration should be disabled. Defaults to false.

↳ clientConfig string|array

Client method configuration, including retry settings. This option can be either a path to a JSON file, or a PHP array containing the decoded JSON data. By default this settings points to the default client config file, which is provided in the resources folder.

↳ transport string|TransportInterface

The transport used for executing network requests. At the moment, supports only rest. Advanced usage: Additionally, it is possible to pass in an already instantiated Google\ApiCore\Transport\TransportInterface object. Note that when this object is provided, any settings in $transportConfig, and any $apiEndpoint setting, will be ignored.

↳ transportConfig array

Configuration options that will be used to construct the transport. Options for each supported transport type should be passed in a key for that transport. For example: $transportConfig = [ 'rest' => [...], ]; See the Google\ApiCore\Transport\RestTransport::build() method for the supported options.

↳ clientCertSource callable

A callable which returns the client cert as a string. This can be used to provide a certificate and private key to the transport layer for mTLS.

↳ logger false|LoggerInterface

A PSR-3 compliant logger. If set to false, logging is disabled, ignoring the 'GOOGLE_SDK_PHP_LOGGING' environment flag

aggregatedList

Retrieves an aggregated list of machine types. To prevent failure, Google recommends that you set the returnPartialSuccess parameter to true.

The async variant is MachineTypesClient::aggregatedListAsync() .

Parameters
Name Description
request Google\Cloud\Compute\V1\AggregatedListMachineTypesRequest

A request to house fields associated with the call.

callOptions array

Optional.

↳ retrySettings RetrySettings|array

Retry settings to use for this call. Can be a Google\ApiCore\RetrySettings object, or an associative array of retry settings parameters. See the documentation on Google\ApiCore\RetrySettings for example usage.

Returns
Type Description
Google\ApiCore\PagedListResponse
Example
use Google\ApiCore\ApiException;
use Google\ApiCore\PagedListResponse;
use Google\Cloud\Compute\V1\AggregatedListMachineTypesRequest;
use Google\Cloud\Compute\V1\Client\MachineTypesClient;

/**
 * @param string $project Project ID for this request.
 */
function aggregated_list_sample(string $project): void
{
    // Create a client.
    $machineTypesClient = new MachineTypesClient();

    // Prepare the request message.
    $request = (new AggregatedListMachineTypesRequest())
        ->setProject($project);

    // Call the API and handle any network failures.
    try {
        /** @var PagedListResponse $response */
        $response = $machineTypesClient->aggregatedList($request);

        foreach ($response as $element) {
            printf('Element data: %s' . PHP_EOL, $element->serializeToJsonString());
        }
    } catch (ApiException $ex) {
        printf('Call failed with message: %s' . PHP_EOL, $ex->getMessage());
    }
}

/**
 * Helper to execute the sample.
 *
 * This sample has been automatically generated and should be regarded as a code
 * template only. It will require modifications to work:
 *  - It may require correct/in-range values for request initialization.
 *  - It may require specifying regional endpoints when creating the service client,
 *    please see the apiEndpoint client configuration option for more details.
 */
function callSample(): void
{
    $project = '[PROJECT]';

    aggregated_list_sample($project);
}

get

Returns the specified machine type.

The async variant is MachineTypesClient::getAsync() .

Parameters
Name Description
request Google\Cloud\Compute\V1\GetMachineTypeRequest

A request to house fields associated with the call.

callOptions array

Optional.

↳ retrySettings RetrySettings|array

Retry settings to use for this call. Can be a Google\ApiCore\RetrySettings object, or an associative array of retry settings parameters. See the documentation on Google\ApiCore\RetrySettings for example usage.

Returns
Type Description
Google\Cloud\Compute\V1\MachineType
Example
use Google\ApiCore\ApiException;
use Google\Cloud\Compute\V1\Client\MachineTypesClient;
use Google\Cloud\Compute\V1\GetMachineTypeRequest;
use Google\Cloud\Compute\V1\MachineType;

/**
 * @param string $machineType Name of the machine type to return.
 * @param string $project     Project ID for this request.
 * @param string $zone        The name of the zone for this request.
 */
function get_sample(string $machineType, string $project, string $zone): void
{
    // Create a client.
    $machineTypesClient = new MachineTypesClient();

    // Prepare the request message.
    $request = (new GetMachineTypeRequest())
        ->setMachineType($machineType)
        ->setProject($project)
        ->setZone($zone);

    // Call the API and handle any network failures.
    try {
        /** @var MachineType $response */
        $response = $machineTypesClient->get($request);
        printf('Response data: %s' . PHP_EOL, $response->serializeToJsonString());
    } catch (ApiException $ex) {
        printf('Call failed with message: %s' . PHP_EOL, $ex->getMessage());
    }
}

/**
 * Helper to execute the sample.
 *
 * This sample has been automatically generated and should be regarded as a code
 * template only. It will require modifications to work:
 *  - It may require correct/in-range values for request initialization.
 *  - It may require specifying regional endpoints when creating the service client,
 *    please see the apiEndpoint client configuration option for more details.
 */
function callSample(): void
{
    $machineType = '[MACHINE_TYPE]';
    $project = '[PROJECT]';
    $zone = '[ZONE]';

    get_sample($machineType, $project, $zone);
}

list

Retrieves a list of machine types available to the specified project.

The async variant is MachineTypesClient::listAsync() .

Parameters
Name Description
request Google\Cloud\Compute\V1\ListMachineTypesRequest

A request to house fields associated with the call.

callOptions array

Optional.

↳ retrySettings RetrySettings|array

Retry settings to use for this call. Can be a Google\ApiCore\RetrySettings object, or an associative array of retry settings parameters. See the documentation on Google\ApiCore\RetrySettings for example usage.

Returns
Type Description
Google\ApiCore\PagedListResponse
Example
use Google\ApiCore\ApiException;
use Google\ApiCore\PagedListResponse;
use Google\Cloud\Compute\V1\Client\MachineTypesClient;
use Google\Cloud\Compute\V1\ListMachineTypesRequest;

/**
 * @param string $project Project ID for this request.
 * @param string $zone    The name of the zone for this request.
 */
function list_sample(string $project, string $zone): void
{
    // Create a client.
    $machineTypesClient = new MachineTypesClient();

    // Prepare the request message.
    $request = (new ListMachineTypesRequest())
        ->setProject($project)
        ->setZone($zone);

    // Call the API and handle any network failures.
    try {
        /** @var PagedListResponse $response */
        $response = $machineTypesClient->list($request);

        foreach ($response as $element) {
            printf('Element data: %s' . PHP_EOL, $element->serializeToJsonString());
        }
    } catch (ApiException $ex) {
        printf('Call failed with message: %s' . PHP_EOL, $ex->getMessage());
    }
}

/**
 * Helper to execute the sample.
 *
 * This sample has been automatically generated and should be regarded as a code
 * template only. It will require modifications to work:
 *  - It may require correct/in-range values for request initialization.
 *  - It may require specifying regional endpoints when creating the service client,
 *    please see the apiEndpoint client configuration option for more details.
 */
function callSample(): void
{
    $project = '[PROJECT]';
    $zone = '[ZONE]';

    list_sample($project, $zone);
}

aggregatedListAsync

Parameters
Name Description
request Google\Cloud\Compute\V1\AggregatedListMachineTypesRequest
optionalArgs array
Returns
Type Description
GuzzleHttp\Promise\PromiseInterface<Google\ApiCore\PagedListResponse>

getAsync

Parameters
Name Description
request Google\Cloud\Compute\V1\GetMachineTypeRequest
optionalArgs array
Returns
Type Description
GuzzleHttp\Promise\PromiseInterface<Google\Cloud\Compute\V1\MachineType>

listAsync

Parameters
Name Description
request Google\Cloud\Compute\V1\ListMachineTypesRequest
optionalArgs array
Returns
Type Description
GuzzleHttp\Promise\PromiseInterface<Google\ApiCore\PagedListResponse>