Compute V1 Client - Class LicenseCodesClient (1.22.0)

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

Service Description: The LicenseCodes 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

get

Return a specified license code. License codes are mirrored across all projects that have permissions to read the License Code. Caution This resource is intended for use only by third-party partners who are creating Cloud Marketplace images.

The async variant is LicenseCodesClient::getAsync() .

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

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\LicenseCode
Example
use Google\ApiCore\ApiException;
use Google\Cloud\Compute\V1\Client\LicenseCodesClient;
use Google\Cloud\Compute\V1\GetLicenseCodeRequest;
use Google\Cloud\Compute\V1\LicenseCode;

/**
 * @param string $licenseCode Number corresponding to the License code resource to return.
 * @param string $project     Project ID for this request.
 */
function get_sample(string $licenseCode, string $project): void
{
    // Create a client.
    $licenseCodesClient = new LicenseCodesClient();

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

    // Call the API and handle any network failures.
    try {
        /** @var LicenseCode $response */
        $response = $licenseCodesClient->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
{
    $licenseCode = '[LICENSE_CODE]';
    $project = '[PROJECT]';

    get_sample($licenseCode, $project);
}

testIamPermissions

Returns permissions that a caller has on the specified resource. Caution This resource is intended for use only by third-party partners who are creating Cloud Marketplace images.

The async variant is LicenseCodesClient::testIamPermissionsAsync() .

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

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\TestPermissionsResponse
Example
use Google\ApiCore\ApiException;
use Google\Cloud\Compute\V1\Client\LicenseCodesClient;
use Google\Cloud\Compute\V1\TestIamPermissionsLicenseCodeRequest;
use Google\Cloud\Compute\V1\TestPermissionsRequest;
use Google\Cloud\Compute\V1\TestPermissionsResponse;

/**
 * @param string $project  Project ID for this request.
 * @param string $resource Name or id of the resource for this request.
 */
function test_iam_permissions_sample(string $project, string $resource): void
{
    // Create a client.
    $licenseCodesClient = new LicenseCodesClient();

    // Prepare the request message.
    $testPermissionsRequestResource = new TestPermissionsRequest();
    $request = (new TestIamPermissionsLicenseCodeRequest())
        ->setProject($project)
        ->setResource($resource)
        ->setTestPermissionsRequestResource($testPermissionsRequestResource);

    // Call the API and handle any network failures.
    try {
        /** @var TestPermissionsResponse $response */
        $response = $licenseCodesClient->testIamPermissions($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
{
    $project = '[PROJECT]';
    $resource = '[RESOURCE]';

    test_iam_permissions_sample($project, $resource);
}

getAsync

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

testIamPermissionsAsync

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