Initial commit

This commit is contained in:
Local Administrator
2025-04-18 10:32:42 +02:00
commit b83134aca3
29643 changed files with 3045897 additions and 0 deletions
@@ -0,0 +1,163 @@
<?php
/*
* Copyright 2014 Google Inc.
*
* Licensed under the Apache License, Version 2.0 (the "License"); you may not
* use this file except in compliance with the License. You may obtain a copy of
* the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
* WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
* License for the specific language governing permissions and limitations under
* the License.
*/
namespace Google\Service\CloudBillingBudget;
class GoogleCloudBillingBudgetsV1Budget extends \Google\Collection
{
protected $collection_key = 'thresholdRules';
protected $amountType = GoogleCloudBillingBudgetsV1BudgetAmount::class;
protected $amountDataType = '';
protected $budgetFilterType = GoogleCloudBillingBudgetsV1Filter::class;
protected $budgetFilterDataType = '';
/**
* @var string
*/
public $displayName;
/**
* @var string
*/
public $etag;
/**
* @var string
*/
public $name;
protected $notificationsRuleType = GoogleCloudBillingBudgetsV1NotificationsRule::class;
protected $notificationsRuleDataType = '';
/**
* @var string
*/
public $ownershipScope;
protected $thresholdRulesType = GoogleCloudBillingBudgetsV1ThresholdRule::class;
protected $thresholdRulesDataType = 'array';
/**
* @param GoogleCloudBillingBudgetsV1BudgetAmount
*/
public function setAmount(GoogleCloudBillingBudgetsV1BudgetAmount $amount)
{
$this->amount = $amount;
}
/**
* @return GoogleCloudBillingBudgetsV1BudgetAmount
*/
public function getAmount()
{
return $this->amount;
}
/**
* @param GoogleCloudBillingBudgetsV1Filter
*/
public function setBudgetFilter(GoogleCloudBillingBudgetsV1Filter $budgetFilter)
{
$this->budgetFilter = $budgetFilter;
}
/**
* @return GoogleCloudBillingBudgetsV1Filter
*/
public function getBudgetFilter()
{
return $this->budgetFilter;
}
/**
* @param string
*/
public function setDisplayName($displayName)
{
$this->displayName = $displayName;
}
/**
* @return string
*/
public function getDisplayName()
{
return $this->displayName;
}
/**
* @param string
*/
public function setEtag($etag)
{
$this->etag = $etag;
}
/**
* @return string
*/
public function getEtag()
{
return $this->etag;
}
/**
* @param string
*/
public function setName($name)
{
$this->name = $name;
}
/**
* @return string
*/
public function getName()
{
return $this->name;
}
/**
* @param GoogleCloudBillingBudgetsV1NotificationsRule
*/
public function setNotificationsRule(GoogleCloudBillingBudgetsV1NotificationsRule $notificationsRule)
{
$this->notificationsRule = $notificationsRule;
}
/**
* @return GoogleCloudBillingBudgetsV1NotificationsRule
*/
public function getNotificationsRule()
{
return $this->notificationsRule;
}
/**
* @param string
*/
public function setOwnershipScope($ownershipScope)
{
$this->ownershipScope = $ownershipScope;
}
/**
* @return string
*/
public function getOwnershipScope()
{
return $this->ownershipScope;
}
/**
* @param GoogleCloudBillingBudgetsV1ThresholdRule[]
*/
public function setThresholdRules($thresholdRules)
{
$this->thresholdRules = $thresholdRules;
}
/**
* @return GoogleCloudBillingBudgetsV1ThresholdRule[]
*/
public function getThresholdRules()
{
return $this->thresholdRules;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(GoogleCloudBillingBudgetsV1Budget::class, 'Google_Service_CloudBillingBudget_GoogleCloudBillingBudgetsV1Budget');
@@ -0,0 +1,58 @@
<?php
/*
* Copyright 2014 Google Inc.
*
* Licensed under the Apache License, Version 2.0 (the "License"); you may not
* use this file except in compliance with the License. You may obtain a copy of
* the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
* WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
* License for the specific language governing permissions and limitations under
* the License.
*/
namespace Google\Service\CloudBillingBudget;
class GoogleCloudBillingBudgetsV1BudgetAmount extends \Google\Model
{
protected $lastPeriodAmountType = GoogleCloudBillingBudgetsV1LastPeriodAmount::class;
protected $lastPeriodAmountDataType = '';
protected $specifiedAmountType = GoogleTypeMoney::class;
protected $specifiedAmountDataType = '';
/**
* @param GoogleCloudBillingBudgetsV1LastPeriodAmount
*/
public function setLastPeriodAmount(GoogleCloudBillingBudgetsV1LastPeriodAmount $lastPeriodAmount)
{
$this->lastPeriodAmount = $lastPeriodAmount;
}
/**
* @return GoogleCloudBillingBudgetsV1LastPeriodAmount
*/
public function getLastPeriodAmount()
{
return $this->lastPeriodAmount;
}
/**
* @param GoogleTypeMoney
*/
public function setSpecifiedAmount(GoogleTypeMoney $specifiedAmount)
{
$this->specifiedAmount = $specifiedAmount;
}
/**
* @return GoogleTypeMoney
*/
public function getSpecifiedAmount()
{
return $this->specifiedAmount;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(GoogleCloudBillingBudgetsV1BudgetAmount::class, 'Google_Service_CloudBillingBudget_GoogleCloudBillingBudgetsV1BudgetAmount');
@@ -0,0 +1,58 @@
<?php
/*
* Copyright 2014 Google Inc.
*
* Licensed under the Apache License, Version 2.0 (the "License"); you may not
* use this file except in compliance with the License. You may obtain a copy of
* the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
* WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
* License for the specific language governing permissions and limitations under
* the License.
*/
namespace Google\Service\CloudBillingBudget;
class GoogleCloudBillingBudgetsV1CustomPeriod extends \Google\Model
{
protected $endDateType = GoogleTypeDate::class;
protected $endDateDataType = '';
protected $startDateType = GoogleTypeDate::class;
protected $startDateDataType = '';
/**
* @param GoogleTypeDate
*/
public function setEndDate(GoogleTypeDate $endDate)
{
$this->endDate = $endDate;
}
/**
* @return GoogleTypeDate
*/
public function getEndDate()
{
return $this->endDate;
}
/**
* @param GoogleTypeDate
*/
public function setStartDate(GoogleTypeDate $startDate)
{
$this->startDate = $startDate;
}
/**
* @return GoogleTypeDate
*/
public function getStartDate()
{
return $this->startDate;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(GoogleCloudBillingBudgetsV1CustomPeriod::class, 'Google_Service_CloudBillingBudget_GoogleCloudBillingBudgetsV1CustomPeriod');
@@ -0,0 +1,187 @@
<?php
/*
* Copyright 2014 Google Inc.
*
* Licensed under the Apache License, Version 2.0 (the "License"); you may not
* use this file except in compliance with the License. You may obtain a copy of
* the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
* WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
* License for the specific language governing permissions and limitations under
* the License.
*/
namespace Google\Service\CloudBillingBudget;
class GoogleCloudBillingBudgetsV1Filter extends \Google\Collection
{
protected $collection_key = 'subaccounts';
/**
* @var string
*/
public $calendarPeriod;
/**
* @var string[]
*/
public $creditTypes;
/**
* @var string
*/
public $creditTypesTreatment;
protected $customPeriodType = GoogleCloudBillingBudgetsV1CustomPeriod::class;
protected $customPeriodDataType = '';
/**
* @var array[]
*/
public $labels;
/**
* @var string[]
*/
public $projects;
/**
* @var string[]
*/
public $resourceAncestors;
/**
* @var string[]
*/
public $services;
/**
* @var string[]
*/
public $subaccounts;
/**
* @param string
*/
public function setCalendarPeriod($calendarPeriod)
{
$this->calendarPeriod = $calendarPeriod;
}
/**
* @return string
*/
public function getCalendarPeriod()
{
return $this->calendarPeriod;
}
/**
* @param string[]
*/
public function setCreditTypes($creditTypes)
{
$this->creditTypes = $creditTypes;
}
/**
* @return string[]
*/
public function getCreditTypes()
{
return $this->creditTypes;
}
/**
* @param string
*/
public function setCreditTypesTreatment($creditTypesTreatment)
{
$this->creditTypesTreatment = $creditTypesTreatment;
}
/**
* @return string
*/
public function getCreditTypesTreatment()
{
return $this->creditTypesTreatment;
}
/**
* @param GoogleCloudBillingBudgetsV1CustomPeriod
*/
public function setCustomPeriod(GoogleCloudBillingBudgetsV1CustomPeriod $customPeriod)
{
$this->customPeriod = $customPeriod;
}
/**
* @return GoogleCloudBillingBudgetsV1CustomPeriod
*/
public function getCustomPeriod()
{
return $this->customPeriod;
}
/**
* @param array[]
*/
public function setLabels($labels)
{
$this->labels = $labels;
}
/**
* @return array[]
*/
public function getLabels()
{
return $this->labels;
}
/**
* @param string[]
*/
public function setProjects($projects)
{
$this->projects = $projects;
}
/**
* @return string[]
*/
public function getProjects()
{
return $this->projects;
}
/**
* @param string[]
*/
public function setResourceAncestors($resourceAncestors)
{
$this->resourceAncestors = $resourceAncestors;
}
/**
* @return string[]
*/
public function getResourceAncestors()
{
return $this->resourceAncestors;
}
/**
* @param string[]
*/
public function setServices($services)
{
$this->services = $services;
}
/**
* @return string[]
*/
public function getServices()
{
return $this->services;
}
/**
* @param string[]
*/
public function setSubaccounts($subaccounts)
{
$this->subaccounts = $subaccounts;
}
/**
* @return string[]
*/
public function getSubaccounts()
{
return $this->subaccounts;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(GoogleCloudBillingBudgetsV1Filter::class, 'Google_Service_CloudBillingBudget_GoogleCloudBillingBudgetsV1Filter');
@@ -0,0 +1,25 @@
<?php
/*
* Copyright 2014 Google Inc.
*
* Licensed under the Apache License, Version 2.0 (the "License"); you may not
* use this file except in compliance with the License. You may obtain a copy of
* the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
* WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
* License for the specific language governing permissions and limitations under
* the License.
*/
namespace Google\Service\CloudBillingBudget;
class GoogleCloudBillingBudgetsV1LastPeriodAmount extends \Google\Model
{
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(GoogleCloudBillingBudgetsV1LastPeriodAmount::class, 'Google_Service_CloudBillingBudget_GoogleCloudBillingBudgetsV1LastPeriodAmount');
@@ -0,0 +1,61 @@
<?php
/*
* Copyright 2014 Google Inc.
*
* Licensed under the Apache License, Version 2.0 (the "License"); you may not
* use this file except in compliance with the License. You may obtain a copy of
* the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
* WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
* License for the specific language governing permissions and limitations under
* the License.
*/
namespace Google\Service\CloudBillingBudget;
class GoogleCloudBillingBudgetsV1ListBudgetsResponse extends \Google\Collection
{
protected $collection_key = 'budgets';
protected $budgetsType = GoogleCloudBillingBudgetsV1Budget::class;
protected $budgetsDataType = 'array';
/**
* @var string
*/
public $nextPageToken;
/**
* @param GoogleCloudBillingBudgetsV1Budget[]
*/
public function setBudgets($budgets)
{
$this->budgets = $budgets;
}
/**
* @return GoogleCloudBillingBudgetsV1Budget[]
*/
public function getBudgets()
{
return $this->budgets;
}
/**
* @param string
*/
public function setNextPageToken($nextPageToken)
{
$this->nextPageToken = $nextPageToken;
}
/**
* @return string
*/
public function getNextPageToken()
{
return $this->nextPageToken;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(GoogleCloudBillingBudgetsV1ListBudgetsResponse::class, 'Google_Service_CloudBillingBudget_GoogleCloudBillingBudgetsV1ListBudgetsResponse');
@@ -0,0 +1,117 @@
<?php
/*
* Copyright 2014 Google Inc.
*
* Licensed under the Apache License, Version 2.0 (the "License"); you may not
* use this file except in compliance with the License. You may obtain a copy of
* the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
* WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
* License for the specific language governing permissions and limitations under
* the License.
*/
namespace Google\Service\CloudBillingBudget;
class GoogleCloudBillingBudgetsV1NotificationsRule extends \Google\Collection
{
protected $collection_key = 'monitoringNotificationChannels';
/**
* @var bool
*/
public $disableDefaultIamRecipients;
/**
* @var bool
*/
public $enableProjectLevelRecipients;
/**
* @var string[]
*/
public $monitoringNotificationChannels;
/**
* @var string
*/
public $pubsubTopic;
/**
* @var string
*/
public $schemaVersion;
/**
* @param bool
*/
public function setDisableDefaultIamRecipients($disableDefaultIamRecipients)
{
$this->disableDefaultIamRecipients = $disableDefaultIamRecipients;
}
/**
* @return bool
*/
public function getDisableDefaultIamRecipients()
{
return $this->disableDefaultIamRecipients;
}
/**
* @param bool
*/
public function setEnableProjectLevelRecipients($enableProjectLevelRecipients)
{
$this->enableProjectLevelRecipients = $enableProjectLevelRecipients;
}
/**
* @return bool
*/
public function getEnableProjectLevelRecipients()
{
return $this->enableProjectLevelRecipients;
}
/**
* @param string[]
*/
public function setMonitoringNotificationChannels($monitoringNotificationChannels)
{
$this->monitoringNotificationChannels = $monitoringNotificationChannels;
}
/**
* @return string[]
*/
public function getMonitoringNotificationChannels()
{
return $this->monitoringNotificationChannels;
}
/**
* @param string
*/
public function setPubsubTopic($pubsubTopic)
{
$this->pubsubTopic = $pubsubTopic;
}
/**
* @return string
*/
public function getPubsubTopic()
{
return $this->pubsubTopic;
}
/**
* @param string
*/
public function setSchemaVersion($schemaVersion)
{
$this->schemaVersion = $schemaVersion;
}
/**
* @return string
*/
public function getSchemaVersion()
{
return $this->schemaVersion;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(GoogleCloudBillingBudgetsV1NotificationsRule::class, 'Google_Service_CloudBillingBudget_GoogleCloudBillingBudgetsV1NotificationsRule');
@@ -0,0 +1,53 @@
<?php
/*
* Copyright 2014 Google Inc.
*
* Licensed under the Apache License, Version 2.0 (the "License"); you may not
* use this file except in compliance with the License. You may obtain a copy of
* the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
* WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
* License for the specific language governing permissions and limitations under
* the License.
*/
namespace Google\Service\CloudBillingBudget;
class GoogleCloudBillingBudgetsV1ThresholdRule extends \Google\Model
{
/**
* @var string
*/
public $spendBasis;
public $thresholdPercent;
/**
* @param string
*/
public function setSpendBasis($spendBasis)
{
$this->spendBasis = $spendBasis;
}
/**
* @return string
*/
public function getSpendBasis()
{
return $this->spendBasis;
}
public function setThresholdPercent($thresholdPercent)
{
$this->thresholdPercent = $thresholdPercent;
}
public function getThresholdPercent()
{
return $this->thresholdPercent;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(GoogleCloudBillingBudgetsV1ThresholdRule::class, 'Google_Service_CloudBillingBudget_GoogleCloudBillingBudgetsV1ThresholdRule');
@@ -0,0 +1,25 @@
<?php
/*
* Copyright 2014 Google Inc.
*
* Licensed under the Apache License, Version 2.0 (the "License"); you may not
* use this file except in compliance with the License. You may obtain a copy of
* the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
* WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
* License for the specific language governing permissions and limitations under
* the License.
*/
namespace Google\Service\CloudBillingBudget;
class GoogleProtobufEmpty extends \Google\Model
{
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(GoogleProtobufEmpty::class, 'Google_Service_CloudBillingBudget_GoogleProtobufEmpty');
@@ -0,0 +1,80 @@
<?php
/*
* Copyright 2014 Google Inc.
*
* Licensed under the Apache License, Version 2.0 (the "License"); you may not
* use this file except in compliance with the License. You may obtain a copy of
* the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
* WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
* License for the specific language governing permissions and limitations under
* the License.
*/
namespace Google\Service\CloudBillingBudget;
class GoogleTypeDate extends \Google\Model
{
/**
* @var int
*/
public $day;
/**
* @var int
*/
public $month;
/**
* @var int
*/
public $year;
/**
* @param int
*/
public function setDay($day)
{
$this->day = $day;
}
/**
* @return int
*/
public function getDay()
{
return $this->day;
}
/**
* @param int
*/
public function setMonth($month)
{
$this->month = $month;
}
/**
* @return int
*/
public function getMonth()
{
return $this->month;
}
/**
* @param int
*/
public function setYear($year)
{
$this->year = $year;
}
/**
* @return int
*/
public function getYear()
{
return $this->year;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(GoogleTypeDate::class, 'Google_Service_CloudBillingBudget_GoogleTypeDate');
@@ -0,0 +1,80 @@
<?php
/*
* Copyright 2014 Google Inc.
*
* Licensed under the Apache License, Version 2.0 (the "License"); you may not
* use this file except in compliance with the License. You may obtain a copy of
* the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
* WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
* License for the specific language governing permissions and limitations under
* the License.
*/
namespace Google\Service\CloudBillingBudget;
class GoogleTypeMoney extends \Google\Model
{
/**
* @var string
*/
public $currencyCode;
/**
* @var int
*/
public $nanos;
/**
* @var string
*/
public $units;
/**
* @param string
*/
public function setCurrencyCode($currencyCode)
{
$this->currencyCode = $currencyCode;
}
/**
* @return string
*/
public function getCurrencyCode()
{
return $this->currencyCode;
}
/**
* @param int
*/
public function setNanos($nanos)
{
$this->nanos = $nanos;
}
/**
* @return int
*/
public function getNanos()
{
return $this->nanos;
}
/**
* @param string
*/
public function setUnits($units)
{
$this->units = $units;
}
/**
* @return string
*/
public function getUnits()
{
return $this->units;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(GoogleTypeMoney::class, 'Google_Service_CloudBillingBudget_GoogleTypeMoney');
@@ -0,0 +1,33 @@
<?php
/*
* Copyright 2014 Google Inc.
*
* Licensed under the Apache License, Version 2.0 (the "License"); you may not
* use this file except in compliance with the License. You may obtain a copy of
* the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
* WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
* License for the specific language governing permissions and limitations under
* the License.
*/
namespace Google\Service\CloudBillingBudget\Resource;
/**
* The "billingAccounts" collection of methods.
* Typical usage is:
* <code>
* $billingbudgetsService = new Google\Service\CloudBillingBudget(...);
* $billingAccounts = $billingbudgetsService->billingAccounts;
* </code>
*/
class BillingAccounts extends \Google\Service\Resource
{
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(BillingAccounts::class, 'Google_Service_CloudBillingBudget_Resource_BillingAccounts');
@@ -0,0 +1,146 @@
<?php
/*
* Copyright 2014 Google Inc.
*
* Licensed under the Apache License, Version 2.0 (the "License"); you may not
* use this file except in compliance with the License. You may obtain a copy of
* the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
* WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
* License for the specific language governing permissions and limitations under
* the License.
*/
namespace Google\Service\CloudBillingBudget\Resource;
use Google\Service\CloudBillingBudget\GoogleCloudBillingBudgetsV1Budget;
use Google\Service\CloudBillingBudget\GoogleCloudBillingBudgetsV1ListBudgetsResponse;
use Google\Service\CloudBillingBudget\GoogleProtobufEmpty;
/**
* The "budgets" collection of methods.
* Typical usage is:
* <code>
* $billingbudgetsService = new Google\Service\CloudBillingBudget(...);
* $budgets = $billingbudgetsService->billingAccounts_budgets;
* </code>
*/
class BillingAccountsBudgets extends \Google\Service\Resource
{
/**
* Creates a new budget. See [Quotas and
* limits](https://cloud.google.com/billing/quotas) for more information on the
* limits of the number of budgets you can create. (budgets.create)
*
* @param string $parent Required. The name of the billing account to create the
* budget in. Values are of the form `billingAccounts/{billingAccountId}`.
* @param GoogleCloudBillingBudgetsV1Budget $postBody
* @param array $optParams Optional parameters.
* @return GoogleCloudBillingBudgetsV1Budget
* @throws \Google\Service\Exception
*/
public function create($parent, GoogleCloudBillingBudgetsV1Budget $postBody, $optParams = [])
{
$params = ['parent' => $parent, 'postBody' => $postBody];
$params = array_merge($params, $optParams);
return $this->call('create', [$params], GoogleCloudBillingBudgetsV1Budget::class);
}
/**
* Deletes a budget. Returns successfully if already deleted. (budgets.delete)
*
* @param string $name Required. Name of the budget to delete. Values are of the
* form `billingAccounts/{billingAccountId}/budgets/{budgetId}`.
* @param array $optParams Optional parameters.
* @return GoogleProtobufEmpty
* @throws \Google\Service\Exception
*/
public function delete($name, $optParams = [])
{
$params = ['name' => $name];
$params = array_merge($params, $optParams);
return $this->call('delete', [$params], GoogleProtobufEmpty::class);
}
/**
* Returns a budget. WARNING: There are some fields exposed on the Google Cloud
* Console that aren't available on this API. When reading from the API, you
* will not see these fields in the return value, though they may have been set
* in the Cloud Console. (budgets.get)
*
* @param string $name Required. Name of budget to get. Values are of the form
* `billingAccounts/{billingAccountId}/budgets/{budgetId}`.
* @param array $optParams Optional parameters.
* @return GoogleCloudBillingBudgetsV1Budget
* @throws \Google\Service\Exception
*/
public function get($name, $optParams = [])
{
$params = ['name' => $name];
$params = array_merge($params, $optParams);
return $this->call('get', [$params], GoogleCloudBillingBudgetsV1Budget::class);
}
/**
* Returns a list of budgets for a billing account. WARNING: There are some
* fields exposed on the Google Cloud Console that aren't available on this API.
* When reading from the API, you will not see these fields in the return value,
* though they may have been set in the Cloud Console.
* (budgets.listBillingAccountsBudgets)
*
* @param string $parent Required. Name of billing account to list budgets
* under. Values are of the form `billingAccounts/{billingAccountId}`.
* @param array $optParams Optional parameters.
*
* @opt_param int pageSize Optional. The maximum number of budgets to return per
* page. The default and maximum value are 100.
* @opt_param string pageToken Optional. The value returned by the last
* `ListBudgetsResponse` which indicates that this is a continuation of a prior
* `ListBudgets` call, and that the system should return the next page of data.
* @opt_param string scope Optional. Set the scope of the budgets to be
* returned, in the format of the resource name. The scope of a budget is the
* cost that it tracks, such as costs for a single project, or the costs for all
* projects in a folder. Only project scope (in the format of "projects/project-
* id" or "projects/123") is supported in this field. When this field is set to
* a project's resource name, the budgets returned are tracking the costs for
* that project.
* @return GoogleCloudBillingBudgetsV1ListBudgetsResponse
* @throws \Google\Service\Exception
*/
public function listBillingAccountsBudgets($parent, $optParams = [])
{
$params = ['parent' => $parent];
$params = array_merge($params, $optParams);
return $this->call('list', [$params], GoogleCloudBillingBudgetsV1ListBudgetsResponse::class);
}
/**
* Updates a budget and returns the updated budget. WARNING: There are some
* fields exposed on the Google Cloud Console that aren't available on this API.
* Budget fields that are not exposed in this API will not be changed by this
* method. (budgets.patch)
*
* @param string $name Output only. Resource name of the budget. The resource
* name implies the scope of a budget. Values are of the form
* `billingAccounts/{billingAccountId}/budgets/{budgetId}`.
* @param GoogleCloudBillingBudgetsV1Budget $postBody
* @param array $optParams Optional parameters.
*
* @opt_param string updateMask Optional. Indicates which fields in the provided
* budget to update. Read-only fields (such as `name`) cannot be changed. If
* this is not provided, then only fields with non-default values from the
* request are updated. See https://developers.google.com/protocol-
* buffers/docs/proto3#default for more details about default values.
* @return GoogleCloudBillingBudgetsV1Budget
* @throws \Google\Service\Exception
*/
public function patch($name, GoogleCloudBillingBudgetsV1Budget $postBody, $optParams = [])
{
$params = ['name' => $name, 'postBody' => $postBody];
$params = array_merge($params, $optParams);
return $this->call('patch', [$params], GoogleCloudBillingBudgetsV1Budget::class);
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(BillingAccountsBudgets::class, 'Google_Service_CloudBillingBudget_Resource_BillingAccountsBudgets');