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
18/**
19 * Service definition for Resourceviews (v1beta2).
20 *
21 * <p>
22 * The Resource View API allows users to create and manage logical sets of
23 * Google Compute Engine instances.</p>
24 *
25 * <p>
26 * For more information about this service, see the API
27 * <a href="https://developers.google.com/compute/" target="_blank">Documentation</a>
28 * </p>
29 *
30 * @author Google, Inc.
31 */
32class Google_Service_Resourceviews extends Google_Service
33{
34  /** View and manage your data across Google Cloud Platform services. */
35  const CLOUD_PLATFORM =
36      "https://www.googleapis.com/auth/cloud-platform";
37  /** View your data across Google Cloud Platform services. */
38  const CLOUD_PLATFORM_READ_ONLY =
39      "https://www.googleapis.com/auth/cloud-platform.read-only";
40  /** View and manage your Google Compute Engine resources. */
41  const COMPUTE =
42      "https://www.googleapis.com/auth/compute";
43  /** View your Google Compute Engine resources. */
44  const COMPUTE_READONLY =
45      "https://www.googleapis.com/auth/compute.readonly";
46  /** View and manage your Google Cloud Platform management resources and deployment status information. */
47  const NDEV_CLOUDMAN =
48      "https://www.googleapis.com/auth/ndev.cloudman";
49  /** View your Google Cloud Platform management resources and deployment status information. */
50  const NDEV_CLOUDMAN_READONLY =
51      "https://www.googleapis.com/auth/ndev.cloudman.readonly";
52
53  public $zoneOperations;
54  public $zoneViews;
55
56  /**
57   * Constructs the internal representation of the Resourceviews service.
58   *
59   * @param Google_Client $client
60   */
61  public function __construct(Google_Client $client)
62  {
63    parent::__construct($client);
64    $this->rootUrl = 'https://www.googleapis.com/';
65    $this->servicePath = 'resourceviews/v1beta2/projects/';
66    $this->version = 'v1beta2';
67    $this->serviceName = 'resourceviews';
68
69    $this->zoneOperations = new Google_Service_Resourceviews_Resource_ZoneOperations(
70        $this,
71        $this->serviceName,
72        'zoneOperations',
73        array(
74          'methods' => array(
75            'get' => array(
76              'path' => '{project}/zones/{zone}/operations/{operation}',
77              'httpMethod' => 'GET',
78              'parameters' => array(
79                'project' => array(
80                  'location' => 'path',
81                  'type' => 'string',
82                  'required' => true,
83                ),
84                'zone' => array(
85                  'location' => 'path',
86                  'type' => 'string',
87                  'required' => true,
88                ),
89                'operation' => array(
90                  'location' => 'path',
91                  'type' => 'string',
92                  'required' => true,
93                ),
94              ),
95            ),'list' => array(
96              'path' => '{project}/zones/{zone}/operations',
97              'httpMethod' => 'GET',
98              'parameters' => array(
99                'project' => array(
100                  'location' => 'path',
101                  'type' => 'string',
102                  'required' => true,
103                ),
104                'zone' => array(
105                  'location' => 'path',
106                  'type' => 'string',
107                  'required' => true,
108                ),
109                'filter' => array(
110                  'location' => 'query',
111                  'type' => 'string',
112                ),
113                'maxResults' => array(
114                  'location' => 'query',
115                  'type' => 'integer',
116                ),
117                'pageToken' => array(
118                  'location' => 'query',
119                  'type' => 'string',
120                ),
121              ),
122            ),
123          )
124        )
125    );
126    $this->zoneViews = new Google_Service_Resourceviews_Resource_ZoneViews(
127        $this,
128        $this->serviceName,
129        'zoneViews',
130        array(
131          'methods' => array(
132            'addResources' => array(
133              'path' => '{project}/zones/{zone}/resourceViews/{resourceView}/addResources',
134              'httpMethod' => 'POST',
135              'parameters' => array(
136                'project' => array(
137                  'location' => 'path',
138                  'type' => 'string',
139                  'required' => true,
140                ),
141                'zone' => array(
142                  'location' => 'path',
143                  'type' => 'string',
144                  'required' => true,
145                ),
146                'resourceView' => array(
147                  'location' => 'path',
148                  'type' => 'string',
149                  'required' => true,
150                ),
151              ),
152            ),'delete' => array(
153              'path' => '{project}/zones/{zone}/resourceViews/{resourceView}',
154              'httpMethod' => 'DELETE',
155              'parameters' => array(
156                'project' => array(
157                  'location' => 'path',
158                  'type' => 'string',
159                  'required' => true,
160                ),
161                'zone' => array(
162                  'location' => 'path',
163                  'type' => 'string',
164                  'required' => true,
165                ),
166                'resourceView' => array(
167                  'location' => 'path',
168                  'type' => 'string',
169                  'required' => true,
170                ),
171              ),
172            ),'get' => array(
173              'path' => '{project}/zones/{zone}/resourceViews/{resourceView}',
174              'httpMethod' => 'GET',
175              'parameters' => array(
176                'project' => array(
177                  'location' => 'path',
178                  'type' => 'string',
179                  'required' => true,
180                ),
181                'zone' => array(
182                  'location' => 'path',
183                  'type' => 'string',
184                  'required' => true,
185                ),
186                'resourceView' => array(
187                  'location' => 'path',
188                  'type' => 'string',
189                  'required' => true,
190                ),
191              ),
192            ),'getService' => array(
193              'path' => '{project}/zones/{zone}/resourceViews/{resourceView}/getService',
194              'httpMethod' => 'POST',
195              'parameters' => array(
196                'project' => array(
197                  'location' => 'path',
198                  'type' => 'string',
199                  'required' => true,
200                ),
201                'zone' => array(
202                  'location' => 'path',
203                  'type' => 'string',
204                  'required' => true,
205                ),
206                'resourceView' => array(
207                  'location' => 'path',
208                  'type' => 'string',
209                  'required' => true,
210                ),
211                'resourceName' => array(
212                  'location' => 'query',
213                  'type' => 'string',
214                ),
215              ),
216            ),'insert' => array(
217              'path' => '{project}/zones/{zone}/resourceViews',
218              'httpMethod' => 'POST',
219              'parameters' => array(
220                'project' => array(
221                  'location' => 'path',
222                  'type' => 'string',
223                  'required' => true,
224                ),
225                'zone' => array(
226                  'location' => 'path',
227                  'type' => 'string',
228                  'required' => true,
229                ),
230              ),
231            ),'list' => array(
232              'path' => '{project}/zones/{zone}/resourceViews',
233              'httpMethod' => 'GET',
234              'parameters' => array(
235                'project' => array(
236                  'location' => 'path',
237                  'type' => 'string',
238                  'required' => true,
239                ),
240                'zone' => array(
241                  'location' => 'path',
242                  'type' => 'string',
243                  'required' => true,
244                ),
245                'maxResults' => array(
246                  'location' => 'query',
247                  'type' => 'integer',
248                ),
249                'pageToken' => array(
250                  'location' => 'query',
251                  'type' => 'string',
252                ),
253              ),
254            ),'listResources' => array(
255              'path' => '{project}/zones/{zone}/resourceViews/{resourceView}/resources',
256              'httpMethod' => 'GET',
257              'parameters' => array(
258                'project' => array(
259                  'location' => 'path',
260                  'type' => 'string',
261                  'required' => true,
262                ),
263                'zone' => array(
264                  'location' => 'path',
265                  'type' => 'string',
266                  'required' => true,
267                ),
268                'resourceView' => array(
269                  'location' => 'path',
270                  'type' => 'string',
271                  'required' => true,
272                ),
273                'format' => array(
274                  'location' => 'query',
275                  'type' => 'string',
276                ),
277                'listState' => array(
278                  'location' => 'query',
279                  'type' => 'string',
280                ),
281                'maxResults' => array(
282                  'location' => 'query',
283                  'type' => 'integer',
284                ),
285                'pageToken' => array(
286                  'location' => 'query',
287                  'type' => 'string',
288                ),
289                'serviceName' => array(
290                  'location' => 'query',
291                  'type' => 'string',
292                ),
293              ),
294            ),'removeResources' => array(
295              'path' => '{project}/zones/{zone}/resourceViews/{resourceView}/removeResources',
296              'httpMethod' => 'POST',
297              'parameters' => array(
298                'project' => array(
299                  'location' => 'path',
300                  'type' => 'string',
301                  'required' => true,
302                ),
303                'zone' => array(
304                  'location' => 'path',
305                  'type' => 'string',
306                  'required' => true,
307                ),
308                'resourceView' => array(
309                  'location' => 'path',
310                  'type' => 'string',
311                  'required' => true,
312                ),
313              ),
314            ),'setService' => array(
315              'path' => '{project}/zones/{zone}/resourceViews/{resourceView}/setService',
316              'httpMethod' => 'POST',
317              'parameters' => array(
318                'project' => array(
319                  'location' => 'path',
320                  'type' => 'string',
321                  'required' => true,
322                ),
323                'zone' => array(
324                  'location' => 'path',
325                  'type' => 'string',
326                  'required' => true,
327                ),
328                'resourceView' => array(
329                  'location' => 'path',
330                  'type' => 'string',
331                  'required' => true,
332                ),
333              ),
334            ),
335          )
336        )
337    );
338  }
339}
340