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 CloudProfiler (v2).
20 *
21 * <p>
22 * Manages continuous profiling information.</p>
23 *
24 * <p>
25 * For more information about this service, see the API
26 * <a href="https://cloud.google.com/profiler/" target="_blank">Documentation</a>
27 * </p>
28 *
29 * @author Google, Inc.
30 */
31class Google_Service_CloudProfiler extends Google_Service
32{
33  /** View and manage your data across Google Cloud Platform services. */
34  const CLOUD_PLATFORM =
35      "https://www.googleapis.com/auth/cloud-platform";
36  /** View and write monitoring data for all of your Google and third-party Cloud and API projects. */
37  const MONITORING =
38      "https://www.googleapis.com/auth/monitoring";
39  /** Publish metric data to your Google Cloud projects. */
40  const MONITORING_WRITE =
41      "https://www.googleapis.com/auth/monitoring.write";
42
43  public $projects_profiles;
44
45  /**
46   * Constructs the internal representation of the CloudProfiler service.
47   *
48   * @param Google_Client $client
49   */
50  public function __construct(Google_Client $client)
51  {
52    parent::__construct($client);
53    $this->rootUrl = 'https://cloudprofiler.googleapis.com/';
54    $this->servicePath = '';
55    $this->batchPath = 'batch';
56    $this->version = 'v2';
57    $this->serviceName = 'cloudprofiler';
58
59    $this->projects_profiles = new Google_Service_CloudProfiler_Resource_ProjectsProfiles(
60        $this,
61        $this->serviceName,
62        'profiles',
63        array(
64          'methods' => array(
65            'create' => array(
66              'path' => 'v2/{+parent}/profiles',
67              'httpMethod' => 'POST',
68              'parameters' => array(
69                'parent' => array(
70                  'location' => 'path',
71                  'type' => 'string',
72                  'required' => true,
73                ),
74              ),
75            ),'createOffline' => array(
76              'path' => 'v2/{+parent}/profiles:createOffline',
77              'httpMethod' => 'POST',
78              'parameters' => array(
79                'parent' => array(
80                  'location' => 'path',
81                  'type' => 'string',
82                  'required' => true,
83                ),
84              ),
85            ),'patch' => array(
86              'path' => 'v2/{+name}',
87              'httpMethod' => 'PATCH',
88              'parameters' => array(
89                'name' => array(
90                  'location' => 'path',
91                  'type' => 'string',
92                  'required' => true,
93                ),
94                'updateMask' => array(
95                  'location' => 'query',
96                  'type' => 'string',
97                ),
98              ),
99            ),
100          )
101        )
102    );
103  }
104}
105