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 Proximitybeacon (v1beta1).
20 *
21 * <p>
22 * Registers, manages, indexes, and searches beacons.</p>
23 *
24 * <p>
25 * For more information about this service, see the API
26 * <a href="https://developers.google.com/beacons/proximity/" target="_blank">Documentation</a>
27 * </p>
28 *
29 * @author Google, Inc.
30 */
31class Google_Service_Proximitybeacon extends Google_Service
32{
33  /** View and modify your beacons. */
34  const USERLOCATION_BEACON_REGISTRY =
35      "https://www.googleapis.com/auth/userlocation.beacon.registry";
36
37  public $beaconinfo;
38  public $beacons;
39  public $beacons_attachments;
40  public $beacons_diagnostics;
41  public $namespaces;
42  public $v1beta1;
43
44  /**
45   * Constructs the internal representation of the Proximitybeacon service.
46   *
47   * @param Google_Client $client
48   */
49  public function __construct(Google_Client $client)
50  {
51    parent::__construct($client);
52    $this->rootUrl = 'https://proximitybeacon.googleapis.com/';
53    $this->servicePath = '';
54    $this->batchPath = 'batch';
55    $this->version = 'v1beta1';
56    $this->serviceName = 'proximitybeacon';
57
58    $this->beaconinfo = new Google_Service_Proximitybeacon_Resource_Beaconinfo(
59        $this,
60        $this->serviceName,
61        'beaconinfo',
62        array(
63          'methods' => array(
64            'getforobserved' => array(
65              'path' => 'v1beta1/beaconinfo:getforobserved',
66              'httpMethod' => 'POST',
67              'parameters' => array(),
68            ),
69          )
70        )
71    );
72    $this->beacons = new Google_Service_Proximitybeacon_Resource_Beacons(
73        $this,
74        $this->serviceName,
75        'beacons',
76        array(
77          'methods' => array(
78            'activate' => array(
79              'path' => 'v1beta1/{+beaconName}:activate',
80              'httpMethod' => 'POST',
81              'parameters' => array(
82                'beaconName' => array(
83                  'location' => 'path',
84                  'type' => 'string',
85                  'required' => true,
86                ),
87                'projectId' => array(
88                  'location' => 'query',
89                  'type' => 'string',
90                ),
91              ),
92            ),'deactivate' => array(
93              'path' => 'v1beta1/{+beaconName}:deactivate',
94              'httpMethod' => 'POST',
95              'parameters' => array(
96                'beaconName' => array(
97                  'location' => 'path',
98                  'type' => 'string',
99                  'required' => true,
100                ),
101                'projectId' => array(
102                  'location' => 'query',
103                  'type' => 'string',
104                ),
105              ),
106            ),'decommission' => array(
107              'path' => 'v1beta1/{+beaconName}:decommission',
108              'httpMethod' => 'POST',
109              'parameters' => array(
110                'beaconName' => array(
111                  'location' => 'path',
112                  'type' => 'string',
113                  'required' => true,
114                ),
115                'projectId' => array(
116                  'location' => 'query',
117                  'type' => 'string',
118                ),
119              ),
120            ),'delete' => array(
121              'path' => 'v1beta1/{+beaconName}',
122              'httpMethod' => 'DELETE',
123              'parameters' => array(
124                'beaconName' => array(
125                  'location' => 'path',
126                  'type' => 'string',
127                  'required' => true,
128                ),
129                'projectId' => array(
130                  'location' => 'query',
131                  'type' => 'string',
132                ),
133              ),
134            ),'get' => array(
135              'path' => 'v1beta1/{+beaconName}',
136              'httpMethod' => 'GET',
137              'parameters' => array(
138                'beaconName' => array(
139                  'location' => 'path',
140                  'type' => 'string',
141                  'required' => true,
142                ),
143                'projectId' => array(
144                  'location' => 'query',
145                  'type' => 'string',
146                ),
147              ),
148            ),'list' => array(
149              'path' => 'v1beta1/beacons',
150              'httpMethod' => 'GET',
151              'parameters' => array(
152                'pageToken' => array(
153                  'location' => 'query',
154                  'type' => 'string',
155                ),
156                'q' => array(
157                  'location' => 'query',
158                  'type' => 'string',
159                ),
160                'pageSize' => array(
161                  'location' => 'query',
162                  'type' => 'integer',
163                ),
164                'projectId' => array(
165                  'location' => 'query',
166                  'type' => 'string',
167                ),
168              ),
169            ),'register' => array(
170              'path' => 'v1beta1/beacons:register',
171              'httpMethod' => 'POST',
172              'parameters' => array(
173                'projectId' => array(
174                  'location' => 'query',
175                  'type' => 'string',
176                ),
177              ),
178            ),'update' => array(
179              'path' => 'v1beta1/{+beaconName}',
180              'httpMethod' => 'PUT',
181              'parameters' => array(
182                'beaconName' => array(
183                  'location' => 'path',
184                  'type' => 'string',
185                  'required' => true,
186                ),
187                'projectId' => array(
188                  'location' => 'query',
189                  'type' => 'string',
190                ),
191              ),
192            ),
193          )
194        )
195    );
196    $this->beacons_attachments = new Google_Service_Proximitybeacon_Resource_BeaconsAttachments(
197        $this,
198        $this->serviceName,
199        'attachments',
200        array(
201          'methods' => array(
202            'batchDelete' => array(
203              'path' => 'v1beta1/{+beaconName}/attachments:batchDelete',
204              'httpMethod' => 'POST',
205              'parameters' => array(
206                'beaconName' => array(
207                  'location' => 'path',
208                  'type' => 'string',
209                  'required' => true,
210                ),
211                'namespacedType' => array(
212                  'location' => 'query',
213                  'type' => 'string',
214                ),
215                'projectId' => array(
216                  'location' => 'query',
217                  'type' => 'string',
218                ),
219              ),
220            ),'create' => array(
221              'path' => 'v1beta1/{+beaconName}/attachments',
222              'httpMethod' => 'POST',
223              'parameters' => array(
224                'beaconName' => array(
225                  'location' => 'path',
226                  'type' => 'string',
227                  'required' => true,
228                ),
229                'projectId' => array(
230                  'location' => 'query',
231                  'type' => 'string',
232                ),
233              ),
234            ),'delete' => array(
235              'path' => 'v1beta1/{+attachmentName}',
236              'httpMethod' => 'DELETE',
237              'parameters' => array(
238                'attachmentName' => array(
239                  'location' => 'path',
240                  'type' => 'string',
241                  'required' => true,
242                ),
243                'projectId' => array(
244                  'location' => 'query',
245                  'type' => 'string',
246                ),
247              ),
248            ),'list' => array(
249              'path' => 'v1beta1/{+beaconName}/attachments',
250              'httpMethod' => 'GET',
251              'parameters' => array(
252                'beaconName' => array(
253                  'location' => 'path',
254                  'type' => 'string',
255                  'required' => true,
256                ),
257                'projectId' => array(
258                  'location' => 'query',
259                  'type' => 'string',
260                ),
261                'namespacedType' => array(
262                  'location' => 'query',
263                  'type' => 'string',
264                ),
265              ),
266            ),
267          )
268        )
269    );
270    $this->beacons_diagnostics = new Google_Service_Proximitybeacon_Resource_BeaconsDiagnostics(
271        $this,
272        $this->serviceName,
273        'diagnostics',
274        array(
275          'methods' => array(
276            'list' => array(
277              'path' => 'v1beta1/{+beaconName}/diagnostics',
278              'httpMethod' => 'GET',
279              'parameters' => array(
280                'beaconName' => array(
281                  'location' => 'path',
282                  'type' => 'string',
283                  'required' => true,
284                ),
285                'pageToken' => array(
286                  'location' => 'query',
287                  'type' => 'string',
288                ),
289                'pageSize' => array(
290                  'location' => 'query',
291                  'type' => 'integer',
292                ),
293                'alertFilter' => array(
294                  'location' => 'query',
295                  'type' => 'string',
296                ),
297                'projectId' => array(
298                  'location' => 'query',
299                  'type' => 'string',
300                ),
301              ),
302            ),
303          )
304        )
305    );
306    $this->namespaces = new Google_Service_Proximitybeacon_Resource_Namespaces(
307        $this,
308        $this->serviceName,
309        'namespaces',
310        array(
311          'methods' => array(
312            'list' => array(
313              'path' => 'v1beta1/namespaces',
314              'httpMethod' => 'GET',
315              'parameters' => array(
316                'projectId' => array(
317                  'location' => 'query',
318                  'type' => 'string',
319                ),
320              ),
321            ),'update' => array(
322              'path' => 'v1beta1/{+namespaceName}',
323              'httpMethod' => 'PUT',
324              'parameters' => array(
325                'namespaceName' => array(
326                  'location' => 'path',
327                  'type' => 'string',
328                  'required' => true,
329                ),
330                'projectId' => array(
331                  'location' => 'query',
332                  'type' => 'string',
333                ),
334              ),
335            ),
336          )
337        )
338    );
339    $this->v1beta1 = new Google_Service_Proximitybeacon_Resource_V1beta1(
340        $this,
341        $this->serviceName,
342        'v1beta1',
343        array(
344          'methods' => array(
345            'getEidparams' => array(
346              'path' => 'v1beta1/eidparams',
347              'httpMethod' => 'GET',
348              'parameters' => array(),
349            ),
350          )
351        )
352    );
353  }
354}
355