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 FirebaseHosting (v1beta1).
20 *
21 * <p>
22 * The Firebase Hosting REST API enables programmatic and customizable
23 * deployments to your Firebase-hosted sites. Use this REST API to deploy new or
24 * updated hosting configurations and content files.</p>
25 *
26 * <p>
27 * For more information about this service, see the API
28 * <a href="https://firebase.google.com/docs/hosting/" target="_blank">Documentation</a>
29 * </p>
30 *
31 * @author Google, Inc.
32 */
33class Google_Service_FirebaseHosting extends Google_Service
34{
35  /** View and manage your data across Google Cloud Platform services. */
36  const CLOUD_PLATFORM =
37      "https://www.googleapis.com/auth/cloud-platform";
38  /** View your data across Google Cloud Platform services. */
39  const CLOUD_PLATFORM_READ_ONLY =
40      "https://www.googleapis.com/auth/cloud-platform.read-only";
41  /** View and administer all your Firebase data and settings. */
42  const FIREBASE =
43      "https://www.googleapis.com/auth/firebase";
44  /** View all your Firebase data and settings. */
45  const FIREBASE_READONLY =
46      "https://www.googleapis.com/auth/firebase.readonly";
47
48  public $sites;
49  public $sites_domains;
50  public $sites_releases;
51  public $sites_versions;
52  public $sites_versions_files;
53
54  /**
55   * Constructs the internal representation of the FirebaseHosting service.
56   *
57   * @param Google_Client $client
58   */
59  public function __construct(Google_Client $client)
60  {
61    parent::__construct($client);
62    $this->rootUrl = 'https://firebasehosting.googleapis.com/';
63    $this->servicePath = '';
64    $this->batchPath = 'batch';
65    $this->version = 'v1beta1';
66    $this->serviceName = 'firebasehosting';
67
68    $this->sites = new Google_Service_FirebaseHosting_Resource_Sites(
69        $this,
70        $this->serviceName,
71        'sites',
72        array(
73          'methods' => array(
74            'getConfig' => array(
75              'path' => 'v1beta1/{+name}',
76              'httpMethod' => 'GET',
77              'parameters' => array(
78                'name' => array(
79                  'location' => 'path',
80                  'type' => 'string',
81                  'required' => true,
82                ),
83              ),
84            ),'updateConfig' => array(
85              'path' => 'v1beta1/{+name}',
86              'httpMethod' => 'PATCH',
87              'parameters' => array(
88                'name' => array(
89                  'location' => 'path',
90                  'type' => 'string',
91                  'required' => true,
92                ),
93                'updateMask' => array(
94                  'location' => 'query',
95                  'type' => 'string',
96                ),
97              ),
98            ),
99          )
100        )
101    );
102    $this->sites_domains = new Google_Service_FirebaseHosting_Resource_SitesDomains(
103        $this,
104        $this->serviceName,
105        'domains',
106        array(
107          'methods' => array(
108            'create' => array(
109              'path' => 'v1beta1/{+parent}/domains',
110              'httpMethod' => 'POST',
111              'parameters' => array(
112                'parent' => array(
113                  'location' => 'path',
114                  'type' => 'string',
115                  'required' => true,
116                ),
117              ),
118            ),'delete' => array(
119              'path' => 'v1beta1/{+name}',
120              'httpMethod' => 'DELETE',
121              'parameters' => array(
122                'name' => array(
123                  'location' => 'path',
124                  'type' => 'string',
125                  'required' => true,
126                ),
127              ),
128            ),'get' => array(
129              'path' => 'v1beta1/{+name}',
130              'httpMethod' => 'GET',
131              'parameters' => array(
132                'name' => array(
133                  'location' => 'path',
134                  'type' => 'string',
135                  'required' => true,
136                ),
137              ),
138            ),'list' => array(
139              'path' => 'v1beta1/{+parent}/domains',
140              'httpMethod' => 'GET',
141              'parameters' => array(
142                'parent' => array(
143                  'location' => 'path',
144                  'type' => 'string',
145                  'required' => true,
146                ),
147                'pageToken' => array(
148                  'location' => 'query',
149                  'type' => 'string',
150                ),
151                'pageSize' => array(
152                  'location' => 'query',
153                  'type' => 'integer',
154                ),
155              ),
156            ),'update' => array(
157              'path' => 'v1beta1/{+name}',
158              'httpMethod' => 'PUT',
159              'parameters' => array(
160                'name' => array(
161                  'location' => 'path',
162                  'type' => 'string',
163                  'required' => true,
164                ),
165              ),
166            ),
167          )
168        )
169    );
170    $this->sites_releases = new Google_Service_FirebaseHosting_Resource_SitesReleases(
171        $this,
172        $this->serviceName,
173        'releases',
174        array(
175          'methods' => array(
176            'create' => array(
177              'path' => 'v1beta1/{+parent}/releases',
178              'httpMethod' => 'POST',
179              'parameters' => array(
180                'parent' => array(
181                  'location' => 'path',
182                  'type' => 'string',
183                  'required' => true,
184                ),
185                'versionName' => array(
186                  'location' => 'query',
187                  'type' => 'string',
188                ),
189              ),
190            ),'list' => array(
191              'path' => 'v1beta1/{+parent}/releases',
192              'httpMethod' => 'GET',
193              'parameters' => array(
194                'parent' => array(
195                  'location' => 'path',
196                  'type' => 'string',
197                  'required' => true,
198                ),
199                'pageToken' => array(
200                  'location' => 'query',
201                  'type' => 'string',
202                ),
203                'pageSize' => array(
204                  'location' => 'query',
205                  'type' => 'integer',
206                ),
207              ),
208            ),
209          )
210        )
211    );
212    $this->sites_versions = new Google_Service_FirebaseHosting_Resource_SitesVersions(
213        $this,
214        $this->serviceName,
215        'versions',
216        array(
217          'methods' => array(
218            'create' => array(
219              'path' => 'v1beta1/{+parent}/versions',
220              'httpMethod' => 'POST',
221              'parameters' => array(
222                'parent' => array(
223                  'location' => 'path',
224                  'type' => 'string',
225                  'required' => true,
226                ),
227                'versionId' => array(
228                  'location' => 'query',
229                  'type' => 'string',
230                ),
231                'sizeBytes' => array(
232                  'location' => 'query',
233                  'type' => 'string',
234                ),
235              ),
236            ),'delete' => array(
237              'path' => 'v1beta1/{+name}',
238              'httpMethod' => 'DELETE',
239              'parameters' => array(
240                'name' => array(
241                  'location' => 'path',
242                  'type' => 'string',
243                  'required' => true,
244                ),
245              ),
246            ),'patch' => array(
247              'path' => 'v1beta1/{+name}',
248              'httpMethod' => 'PATCH',
249              'parameters' => array(
250                'name' => array(
251                  'location' => 'path',
252                  'type' => 'string',
253                  'required' => true,
254                ),
255                'updateMask' => array(
256                  'location' => 'query',
257                  'type' => 'string',
258                ),
259              ),
260            ),'populateFiles' => array(
261              'path' => 'v1beta1/{+parent}:populateFiles',
262              'httpMethod' => 'POST',
263              'parameters' => array(
264                'parent' => array(
265                  'location' => 'path',
266                  'type' => 'string',
267                  'required' => true,
268                ),
269              ),
270            ),
271          )
272        )
273    );
274    $this->sites_versions_files = new Google_Service_FirebaseHosting_Resource_SitesVersionsFiles(
275        $this,
276        $this->serviceName,
277        'files',
278        array(
279          'methods' => array(
280            'list' => array(
281              'path' => 'v1beta1/{+parent}/files',
282              'httpMethod' => 'GET',
283              'parameters' => array(
284                'parent' => array(
285                  'location' => 'path',
286                  'type' => 'string',
287                  'required' => true,
288                ),
289                'pageSize' => array(
290                  'location' => 'query',
291                  'type' => 'integer',
292                ),
293                'status' => array(
294                  'location' => 'query',
295                  'type' => 'string',
296                ),
297                'pageToken' => array(
298                  'location' => 'query',
299                  'type' => 'string',
300                ),
301              ),
302            ),
303          )
304        )
305    );
306  }
307}
308