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 StreetViewPublish (v1).
20 *
21 * <p>
22 * Publishes 360 photos to Google Maps, along with position, orientation, and
23 * connectivity metadata. Apps can offer an interface for positioning,
24 * connecting, and uploading user-generated Street View images.</p>
25 *
26 * <p>
27 * For more information about this service, see the API
28 * <a href="https://developers.google.com/streetview/publish/" target="_blank">Documentation</a>
29 * </p>
30 *
31 * @author Google, Inc.
32 */
33class Google_Service_StreetViewPublish extends Google_Service
34{
35  /** Publish and manage your 360 photos on Google Street View. */
36  const STREETVIEWPUBLISH =
37      "https://www.googleapis.com/auth/streetviewpublish";
38
39  public $photo;
40  public $photos;
41
42  /**
43   * Constructs the internal representation of the StreetViewPublish service.
44   *
45   * @param Google_Client $client
46   */
47  public function __construct(Google_Client $client)
48  {
49    parent::__construct($client);
50    $this->rootUrl = 'https://streetviewpublish.googleapis.com/';
51    $this->servicePath = '';
52    $this->batchPath = 'batch';
53    $this->version = 'v1';
54    $this->serviceName = 'streetviewpublish';
55
56    $this->photo = new Google_Service_StreetViewPublish_Resource_Photo(
57        $this,
58        $this->serviceName,
59        'photo',
60        array(
61          'methods' => array(
62            'create' => array(
63              'path' => 'v1/photo',
64              'httpMethod' => 'POST',
65              'parameters' => array(),
66            ),'delete' => array(
67              'path' => 'v1/photo/{photoId}',
68              'httpMethod' => 'DELETE',
69              'parameters' => array(
70                'photoId' => array(
71                  'location' => 'path',
72                  'type' => 'string',
73                  'required' => true,
74                ),
75              ),
76            ),'get' => array(
77              'path' => 'v1/photo/{photoId}',
78              'httpMethod' => 'GET',
79              'parameters' => array(
80                'photoId' => array(
81                  'location' => 'path',
82                  'type' => 'string',
83                  'required' => true,
84                ),
85                'view' => array(
86                  'location' => 'query',
87                  'type' => 'string',
88                ),
89                'languageCode' => array(
90                  'location' => 'query',
91                  'type' => 'string',
92                ),
93              ),
94            ),'startUpload' => array(
95              'path' => 'v1/photo:startUpload',
96              'httpMethod' => 'POST',
97              'parameters' => array(),
98            ),'update' => array(
99              'path' => 'v1/photo/{id}',
100              'httpMethod' => 'PUT',
101              'parameters' => array(
102                'id' => array(
103                  'location' => 'path',
104                  'type' => 'string',
105                  'required' => true,
106                ),
107                'updateMask' => array(
108                  'location' => 'query',
109                  'type' => 'string',
110                ),
111              ),
112            ),
113          )
114        )
115    );
116    $this->photos = new Google_Service_StreetViewPublish_Resource_Photos(
117        $this,
118        $this->serviceName,
119        'photos',
120        array(
121          'methods' => array(
122            'batchDelete' => array(
123              'path' => 'v1/photos:batchDelete',
124              'httpMethod' => 'POST',
125              'parameters' => array(),
126            ),'batchGet' => array(
127              'path' => 'v1/photos:batchGet',
128              'httpMethod' => 'GET',
129              'parameters' => array(
130                'languageCode' => array(
131                  'location' => 'query',
132                  'type' => 'string',
133                ),
134                'photoIds' => array(
135                  'location' => 'query',
136                  'type' => 'string',
137                  'repeated' => true,
138                ),
139                'view' => array(
140                  'location' => 'query',
141                  'type' => 'string',
142                ),
143              ),
144            ),'batchUpdate' => array(
145              'path' => 'v1/photos:batchUpdate',
146              'httpMethod' => 'POST',
147              'parameters' => array(),
148            ),'list' => array(
149              'path' => 'v1/photos',
150              'httpMethod' => 'GET',
151              'parameters' => array(
152                'filter' => array(
153                  'location' => 'query',
154                  'type' => 'string',
155                ),
156                'languageCode' => array(
157                  'location' => 'query',
158                  'type' => 'string',
159                ),
160                'pageToken' => array(
161                  'location' => 'query',
162                  'type' => 'string',
163                ),
164                'pageSize' => array(
165                  'location' => 'query',
166                  'type' => 'integer',
167                ),
168                'view' => array(
169                  'location' => 'query',
170                  'type' => 'string',
171                ),
172              ),
173            ),
174          )
175        )
176    );
177  }
178}
179