1<?php 2/* 3 * Copyright 2014 Google Inc. 4 * 5 * Licensed under the Apache License, Version 2.0 (the "License"); you may not 6 * use this file except in compliance with the License. You may obtain a copy of 7 * the License at 8 * 9 * http://www.apache.org/licenses/LICENSE-2.0 10 * 11 * Unless required by applicable law or agreed to in writing, software 12 * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT 13 * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the 14 * License for the specific language governing permissions and limitations under 15 * the License. 16 */ 17 18namespace Google\Service\Compute\Resource; 19 20use Google\Service\Compute\AcceleratorType; 21use Google\Service\Compute\AcceleratorTypeAggregatedList; 22use Google\Service\Compute\AcceleratorTypeList; 23 24/** 25 * The "acceleratorTypes" collection of methods. 26 * Typical usage is: 27 * <code> 28 * $computeService = new Google\Service\Compute(...); 29 * $acceleratorTypes = $computeService->acceleratorTypes; 30 * </code> 31 */ 32class AcceleratorTypes extends \Google\Service\Resource 33{ 34 /** 35 * Retrieves an aggregated list of accelerator types. 36 * (acceleratorTypes.aggregatedList) 37 * 38 * @param string $project Project ID for this request. 39 * @param array $optParams Optional parameters. 40 * 41 * @opt_param string filter A filter expression that filters resources listed in 42 * the response. The expression must specify the field name, an operator, and 43 * the value that you want to use for filtering. The value must be a string, a 44 * number, or a boolean. The operator must be either `=`, `!=`, `>`, `<`, `<=`, 45 * `>=` or `:`. For example, if you are filtering Compute Engine instances, you 46 * can exclude instances named `example-instance` by specifying `name != 47 * example-instance`. The `:` operator can be used with string fields to match 48 * substrings. For non-string fields it is equivalent to the `=` operator. The 49 * `:*` comparison can be used to test whether a key has been defined. For 50 * example, to find all objects with `owner` label use: ``` labels.owner:* ``` 51 * You can also filter nested fields. For example, you could specify 52 * `scheduling.automaticRestart = false` to include instances only if they are 53 * not scheduled for automatic restarts. You can use filtering on nested fields 54 * to filter based on resource labels. To filter on multiple expressions, 55 * provide each separate expression within parentheses. For example: ``` 56 * (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By 57 * default, each expression is an `AND` expression. However, you can include 58 * `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel 59 * Skylake") OR (cpuPlatform = "Intel Broadwell") AND 60 * (scheduling.automaticRestart = true) ``` 61 * @opt_param bool includeAllScopes Indicates whether every visible scope for 62 * each scope type (zone, region, global) should be included in the response. 63 * For new resource types added after this field, the flag has no effect as new 64 * resource types will always include every visible scope for each scope type in 65 * response. For resource types which predate this field, if this flag is 66 * omitted or false, only scopes of the scope types where the resource type is 67 * expected to be found will be included. 68 * @opt_param string maxResults The maximum number of results per page that 69 * should be returned. If the number of available results is larger than 70 * `maxResults`, Compute Engine returns a `nextPageToken` that can be used to 71 * get the next page of results in subsequent list requests. Acceptable values 72 * are `0` to `500`, inclusive. (Default: `500`) 73 * @opt_param string orderBy Sorts list results by a certain order. By default, 74 * results are returned in alphanumerical order based on the resource name. You 75 * can also sort results in descending order based on the creation timestamp 76 * using `orderBy="creationTimestamp desc"`. This sorts results based on the 77 * `creationTimestamp` field in reverse chronological order (newest result 78 * first). Use this to sort resources like operations so that the newest 79 * operation is returned first. Currently, only sorting by `name` or 80 * `creationTimestamp desc` is supported. 81 * @opt_param string pageToken Specifies a page token to use. Set `pageToken` to 82 * the `nextPageToken` returned by a previous list request to get the next page 83 * of results. 84 * @opt_param bool returnPartialSuccess Opt-in for partial success behavior 85 * which provides partial results in case of failure. The default value is 86 * false. 87 * @return AcceleratorTypeAggregatedList 88 */ 89 public function aggregatedList($project, $optParams = []) 90 { 91 $params = ['project' => $project]; 92 $params = array_merge($params, $optParams); 93 return $this->call('aggregatedList', [$params], AcceleratorTypeAggregatedList::class); 94 } 95 /** 96 * Returns the specified accelerator type. (acceleratorTypes.get) 97 * 98 * @param string $project Project ID for this request. 99 * @param string $zone The name of the zone for this request. 100 * @param string $acceleratorType Name of the accelerator type to return. 101 * @param array $optParams Optional parameters. 102 * @return AcceleratorType 103 */ 104 public function get($project, $zone, $acceleratorType, $optParams = []) 105 { 106 $params = ['project' => $project, 'zone' => $zone, 'acceleratorType' => $acceleratorType]; 107 $params = array_merge($params, $optParams); 108 return $this->call('get', [$params], AcceleratorType::class); 109 } 110 /** 111 * Retrieves a list of accelerator types that are available to the specified 112 * project. (acceleratorTypes.listAcceleratorTypes) 113 * 114 * @param string $project Project ID for this request. 115 * @param string $zone The name of the zone for this request. 116 * @param array $optParams Optional parameters. 117 * 118 * @opt_param string filter A filter expression that filters resources listed in 119 * the response. The expression must specify the field name, an operator, and 120 * the value that you want to use for filtering. The value must be a string, a 121 * number, or a boolean. The operator must be either `=`, `!=`, `>`, `<`, `<=`, 122 * `>=` or `:`. For example, if you are filtering Compute Engine instances, you 123 * can exclude instances named `example-instance` by specifying `name != 124 * example-instance`. The `:` operator can be used with string fields to match 125 * substrings. For non-string fields it is equivalent to the `=` operator. The 126 * `:*` comparison can be used to test whether a key has been defined. For 127 * example, to find all objects with `owner` label use: ``` labels.owner:* ``` 128 * You can also filter nested fields. For example, you could specify 129 * `scheduling.automaticRestart = false` to include instances only if they are 130 * not scheduled for automatic restarts. You can use filtering on nested fields 131 * to filter based on resource labels. To filter on multiple expressions, 132 * provide each separate expression within parentheses. For example: ``` 133 * (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By 134 * default, each expression is an `AND` expression. However, you can include 135 * `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel 136 * Skylake") OR (cpuPlatform = "Intel Broadwell") AND 137 * (scheduling.automaticRestart = true) ``` 138 * @opt_param string maxResults The maximum number of results per page that 139 * should be returned. If the number of available results is larger than 140 * `maxResults`, Compute Engine returns a `nextPageToken` that can be used to 141 * get the next page of results in subsequent list requests. Acceptable values 142 * are `0` to `500`, inclusive. (Default: `500`) 143 * @opt_param string orderBy Sorts list results by a certain order. By default, 144 * results are returned in alphanumerical order based on the resource name. You 145 * can also sort results in descending order based on the creation timestamp 146 * using `orderBy="creationTimestamp desc"`. This sorts results based on the 147 * `creationTimestamp` field in reverse chronological order (newest result 148 * first). Use this to sort resources like operations so that the newest 149 * operation is returned first. Currently, only sorting by `name` or 150 * `creationTimestamp desc` is supported. 151 * @opt_param string pageToken Specifies a page token to use. Set `pageToken` to 152 * the `nextPageToken` returned by a previous list request to get the next page 153 * of results. 154 * @opt_param bool returnPartialSuccess Opt-in for partial success behavior 155 * which provides partial results in case of failure. The default value is 156 * false. 157 * @return AcceleratorTypeList 158 */ 159 public function listAcceleratorTypes($project, $zone, $optParams = []) 160 { 161 $params = ['project' => $project, 'zone' => $zone]; 162 $params = array_merge($params, $optParams); 163 return $this->call('list', [$params], AcceleratorTypeList::class); 164 } 165} 166 167// Adding a class alias for backwards compatibility with the previous class name. 168class_alias(AcceleratorTypes::class, 'Google_Service_Compute_Resource_AcceleratorTypes'); 169