gestione documentale avanzata 1 parte

This commit is contained in:
2026-05-28 09:34:28 +02:00
parent 3471befb1a
commit f2b0833b90
34482 changed files with 4312269 additions and 546 deletions
@@ -0,0 +1,71 @@
<?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\CloudAsset;
class AccessSelector extends \Google\Collection
{
protected $collection_key = 'roles';
/**
* Optional. The permissions to appear in result.
*
* @var string[]
*/
public $permissions;
/**
* Optional. The roles to appear in result.
*
* @var string[]
*/
public $roles;
/**
* Optional. The permissions to appear in result.
*
* @param string[] $permissions
*/
public function setPermissions($permissions)
{
$this->permissions = $permissions;
}
/**
* @return string[]
*/
public function getPermissions()
{
return $this->permissions;
}
/**
* Optional. The roles to appear in result.
*
* @param string[] $roles
*/
public function setRoles($roles)
{
$this->roles = $roles;
}
/**
* @return string[]
*/
public function getRoles()
{
return $this->roles;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(AccessSelector::class, 'Google_Service_CloudAsset_AccessSelector');
@@ -0,0 +1,48 @@
<?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\CloudAsset;
class AnalyzeIamPolicyLongrunningMetadata extends \Google\Model
{
/**
* Output only. The time the operation was created.
*
* @var string
*/
public $createTime;
/**
* Output only. The time the operation was created.
*
* @param string $createTime
*/
public function setCreateTime($createTime)
{
$this->createTime = $createTime;
}
/**
* @return string
*/
public function getCreateTime()
{
return $this->createTime;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(AnalyzeIamPolicyLongrunningMetadata::class, 'Google_Service_CloudAsset_AnalyzeIamPolicyLongrunningMetadata');
@@ -0,0 +1,107 @@
<?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\CloudAsset;
class AnalyzeIamPolicyLongrunningRequest extends \Google\Model
{
protected $analysisQueryType = IamPolicyAnalysisQuery::class;
protected $analysisQueryDataType = '';
protected $outputConfigType = IamPolicyAnalysisOutputConfig::class;
protected $outputConfigDataType = '';
/**
* Optional. The name of a saved query, which must be in the format of: *
* projects/project_number/savedQueries/saved_query_id *
* folders/folder_number/savedQueries/saved_query_id *
* organizations/organization_number/savedQueries/saved_query_id If both
* `analysis_query` and `saved_analysis_query` are provided, they will be
* merged together with the `saved_analysis_query` as base and the
* `analysis_query` as overrides. For more details of the merge behavior,
* refer to the [MergeFrom](https://developers.google.com/protocol-buffers/doc
* s/reference/cpp/google.protobuf.message#Message.MergeFrom.details) doc.
* Note that you cannot override primitive fields with default value, such as
* 0 or empty string, etc., because we use proto3, which doesn't support field
* presence yet.
*
* @var string
*/
public $savedAnalysisQuery;
/**
* Required. The request query.
*
* @param IamPolicyAnalysisQuery $analysisQuery
*/
public function setAnalysisQuery(IamPolicyAnalysisQuery $analysisQuery)
{
$this->analysisQuery = $analysisQuery;
}
/**
* @return IamPolicyAnalysisQuery
*/
public function getAnalysisQuery()
{
return $this->analysisQuery;
}
/**
* Required. Output configuration indicating where the results will be output
* to.
*
* @param IamPolicyAnalysisOutputConfig $outputConfig
*/
public function setOutputConfig(IamPolicyAnalysisOutputConfig $outputConfig)
{
$this->outputConfig = $outputConfig;
}
/**
* @return IamPolicyAnalysisOutputConfig
*/
public function getOutputConfig()
{
return $this->outputConfig;
}
/**
* Optional. The name of a saved query, which must be in the format of: *
* projects/project_number/savedQueries/saved_query_id *
* folders/folder_number/savedQueries/saved_query_id *
* organizations/organization_number/savedQueries/saved_query_id If both
* `analysis_query` and `saved_analysis_query` are provided, they will be
* merged together with the `saved_analysis_query` as base and the
* `analysis_query` as overrides. For more details of the merge behavior,
* refer to the [MergeFrom](https://developers.google.com/protocol-buffers/doc
* s/reference/cpp/google.protobuf.message#Message.MergeFrom.details) doc.
* Note that you cannot override primitive fields with default value, such as
* 0 or empty string, etc., because we use proto3, which doesn't support field
* presence yet.
*
* @param string $savedAnalysisQuery
*/
public function setSavedAnalysisQuery($savedAnalysisQuery)
{
$this->savedAnalysisQuery = $savedAnalysisQuery;
}
/**
* @return string
*/
public function getSavedAnalysisQuery()
{
return $this->savedAnalysisQuery;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(AnalyzeIamPolicyLongrunningRequest::class, 'Google_Service_CloudAsset_AnalyzeIamPolicyLongrunningRequest');
@@ -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\CloudAsset;
class AnalyzeIamPolicyLongrunningResponse extends \Google\Model
{
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(AnalyzeIamPolicyLongrunningResponse::class, 'Google_Service_CloudAsset_AnalyzeIamPolicyLongrunningResponse');
@@ -0,0 +1,91 @@
<?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\CloudAsset;
class AnalyzeIamPolicyResponse extends \Google\Collection
{
protected $collection_key = 'serviceAccountImpersonationAnalysis';
/**
* Represents whether all entries in the main_analysis and
* service_account_impersonation_analysis have been fully explored to answer
* the query in the request.
*
* @var bool
*/
public $fullyExplored;
protected $mainAnalysisType = IamPolicyAnalysis::class;
protected $mainAnalysisDataType = '';
protected $serviceAccountImpersonationAnalysisType = IamPolicyAnalysis::class;
protected $serviceAccountImpersonationAnalysisDataType = 'array';
/**
* Represents whether all entries in the main_analysis and
* service_account_impersonation_analysis have been fully explored to answer
* the query in the request.
*
* @param bool $fullyExplored
*/
public function setFullyExplored($fullyExplored)
{
$this->fullyExplored = $fullyExplored;
}
/**
* @return bool
*/
public function getFullyExplored()
{
return $this->fullyExplored;
}
/**
* The main analysis that matches the original request.
*
* @param IamPolicyAnalysis $mainAnalysis
*/
public function setMainAnalysis(IamPolicyAnalysis $mainAnalysis)
{
$this->mainAnalysis = $mainAnalysis;
}
/**
* @return IamPolicyAnalysis
*/
public function getMainAnalysis()
{
return $this->mainAnalysis;
}
/**
* The service account impersonation analysis if
* IamPolicyAnalysisQuery.Options.analyze_service_account_impersonation is
* enabled.
*
* @param IamPolicyAnalysis[] $serviceAccountImpersonationAnalysis
*/
public function setServiceAccountImpersonationAnalysis($serviceAccountImpersonationAnalysis)
{
$this->serviceAccountImpersonationAnalysis = $serviceAccountImpersonationAnalysis;
}
/**
* @return IamPolicyAnalysis[]
*/
public function getServiceAccountImpersonationAnalysis()
{
return $this->serviceAccountImpersonationAnalysis;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(AnalyzeIamPolicyResponse::class, 'Google_Service_CloudAsset_AnalyzeIamPolicyResponse');
@@ -0,0 +1,46 @@
<?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\CloudAsset;
class AnalyzeMoveResponse extends \Google\Collection
{
protected $collection_key = 'moveAnalysis';
protected $moveAnalysisType = MoveAnalysis::class;
protected $moveAnalysisDataType = 'array';
/**
* The list of analyses returned from performing the intended resource move
* analysis. The analysis is grouped by different Google Cloud services.
*
* @param MoveAnalysis[] $moveAnalysis
*/
public function setMoveAnalysis($moveAnalysis)
{
$this->moveAnalysis = $moveAnalysis;
}
/**
* @return MoveAnalysis[]
*/
public function getMoveAnalysis()
{
return $this->moveAnalysis;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(AnalyzeMoveResponse::class, 'Google_Service_CloudAsset_AnalyzeMoveResponse');
@@ -0,0 +1,88 @@
<?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\CloudAsset;
class AnalyzeOrgPoliciesResponse extends \Google\Collection
{
protected $collection_key = 'orgPolicyResults';
protected $constraintType = AnalyzerOrgPolicyConstraint::class;
protected $constraintDataType = '';
/**
* The page token to fetch the next page for
* AnalyzeOrgPoliciesResponse.org_policy_results.
*
* @var string
*/
public $nextPageToken;
protected $orgPolicyResultsType = OrgPolicyResult::class;
protected $orgPolicyResultsDataType = 'array';
/**
* The definition of the constraint in the request.
*
* @param AnalyzerOrgPolicyConstraint $constraint
*/
public function setConstraint(AnalyzerOrgPolicyConstraint $constraint)
{
$this->constraint = $constraint;
}
/**
* @return AnalyzerOrgPolicyConstraint
*/
public function getConstraint()
{
return $this->constraint;
}
/**
* The page token to fetch the next page for
* AnalyzeOrgPoliciesResponse.org_policy_results.
*
* @param string $nextPageToken
*/
public function setNextPageToken($nextPageToken)
{
$this->nextPageToken = $nextPageToken;
}
/**
* @return string
*/
public function getNextPageToken()
{
return $this->nextPageToken;
}
/**
* The organization policies under the AnalyzeOrgPoliciesRequest.scope with
* the AnalyzeOrgPoliciesRequest.constraint.
*
* @param OrgPolicyResult[] $orgPolicyResults
*/
public function setOrgPolicyResults($orgPolicyResults)
{
$this->orgPolicyResults = $orgPolicyResults;
}
/**
* @return OrgPolicyResult[]
*/
public function getOrgPolicyResults()
{
return $this->orgPolicyResults;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(AnalyzeOrgPoliciesResponse::class, 'Google_Service_CloudAsset_AnalyzeOrgPoliciesResponse');
@@ -0,0 +1,87 @@
<?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\CloudAsset;
class AnalyzeOrgPolicyGovernedAssetsResponse extends \Google\Collection
{
protected $collection_key = 'governedAssets';
protected $constraintType = AnalyzerOrgPolicyConstraint::class;
protected $constraintDataType = '';
protected $governedAssetsType = GoogleCloudAssetV1AnalyzeOrgPolicyGovernedAssetsResponseGovernedAsset::class;
protected $governedAssetsDataType = 'array';
/**
* The page token to fetch the next page for
* AnalyzeOrgPolicyGovernedAssetsResponse.governed_assets.
*
* @var string
*/
public $nextPageToken;
/**
* The definition of the constraint in the request.
*
* @param AnalyzerOrgPolicyConstraint $constraint
*/
public function setConstraint(AnalyzerOrgPolicyConstraint $constraint)
{
$this->constraint = $constraint;
}
/**
* @return AnalyzerOrgPolicyConstraint
*/
public function getConstraint()
{
return $this->constraint;
}
/**
* The list of the analyzed governed assets.
*
* @param GoogleCloudAssetV1AnalyzeOrgPolicyGovernedAssetsResponseGovernedAsset[] $governedAssets
*/
public function setGovernedAssets($governedAssets)
{
$this->governedAssets = $governedAssets;
}
/**
* @return GoogleCloudAssetV1AnalyzeOrgPolicyGovernedAssetsResponseGovernedAsset[]
*/
public function getGovernedAssets()
{
return $this->governedAssets;
}
/**
* The page token to fetch the next page for
* AnalyzeOrgPolicyGovernedAssetsResponse.governed_assets.
*
* @param string $nextPageToken
*/
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(AnalyzeOrgPolicyGovernedAssetsResponse::class, 'Google_Service_CloudAsset_AnalyzeOrgPolicyGovernedAssetsResponse');
@@ -0,0 +1,87 @@
<?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\CloudAsset;
class AnalyzeOrgPolicyGovernedContainersResponse extends \Google\Collection
{
protected $collection_key = 'governedContainers';
protected $constraintType = AnalyzerOrgPolicyConstraint::class;
protected $constraintDataType = '';
protected $governedContainersType = GoogleCloudAssetV1GovernedContainer::class;
protected $governedContainersDataType = 'array';
/**
* The page token to fetch the next page for
* AnalyzeOrgPolicyGovernedContainersResponse.governed_containers.
*
* @var string
*/
public $nextPageToken;
/**
* The definition of the constraint in the request.
*
* @param AnalyzerOrgPolicyConstraint $constraint
*/
public function setConstraint(AnalyzerOrgPolicyConstraint $constraint)
{
$this->constraint = $constraint;
}
/**
* @return AnalyzerOrgPolicyConstraint
*/
public function getConstraint()
{
return $this->constraint;
}
/**
* The list of the analyzed governed containers.
*
* @param GoogleCloudAssetV1GovernedContainer[] $governedContainers
*/
public function setGovernedContainers($governedContainers)
{
$this->governedContainers = $governedContainers;
}
/**
* @return GoogleCloudAssetV1GovernedContainer[]
*/
public function getGovernedContainers()
{
return $this->governedContainers;
}
/**
* The page token to fetch the next page for
* AnalyzeOrgPolicyGovernedContainersResponse.governed_containers.
*
* @param string $nextPageToken
*/
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(AnalyzeOrgPolicyGovernedContainersResponse::class, 'Google_Service_CloudAsset_AnalyzeOrgPolicyGovernedContainersResponse');
@@ -0,0 +1,161 @@
<?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\CloudAsset;
class AnalyzerOrgPolicy extends \Google\Collection
{
protected $collection_key = 'rules';
/**
* The [full resource name] (https://cloud.google.com/asset-
* inventory/docs/resource-name-format) of an organization/folder/project
* resource where this organization policy applies to. For any user defined
* org policies, this field has the same value as the [attached_resource]
* field. Only for default policy, this field has the different value.
*
* @var string
*/
public $appliedResource;
/**
* The [full resource name] (https://cloud.google.com/asset-
* inventory/docs/resource-name-format) of an organization/folder/project
* resource where this organization policy is set. Notice that some type of
* constraints are defined with default policy. This field will be empty for
* them.
*
* @var string
*/
public $attachedResource;
/**
* If `inherit_from_parent` is true, Rules set higher up in the hierarchy (up
* to the closest root) are inherited and present in the effective policy. If
* it is false, then no rules are inherited, and this policy becomes the
* effective root for evaluation.
*
* @var bool
*/
public $inheritFromParent;
/**
* Ignores policies set above this resource and restores the default behavior
* of the constraint at this resource. This field can be set in policies for
* either list or boolean constraints. If set, `rules` must be empty and
* `inherit_from_parent` must be set to false.
*
* @var bool
*/
public $reset;
protected $rulesType = GoogleCloudAssetV1Rule::class;
protected $rulesDataType = 'array';
/**
* The [full resource name] (https://cloud.google.com/asset-
* inventory/docs/resource-name-format) of an organization/folder/project
* resource where this organization policy applies to. For any user defined
* org policies, this field has the same value as the [attached_resource]
* field. Only for default policy, this field has the different value.
*
* @param string $appliedResource
*/
public function setAppliedResource($appliedResource)
{
$this->appliedResource = $appliedResource;
}
/**
* @return string
*/
public function getAppliedResource()
{
return $this->appliedResource;
}
/**
* The [full resource name] (https://cloud.google.com/asset-
* inventory/docs/resource-name-format) of an organization/folder/project
* resource where this organization policy is set. Notice that some type of
* constraints are defined with default policy. This field will be empty for
* them.
*
* @param string $attachedResource
*/
public function setAttachedResource($attachedResource)
{
$this->attachedResource = $attachedResource;
}
/**
* @return string
*/
public function getAttachedResource()
{
return $this->attachedResource;
}
/**
* If `inherit_from_parent` is true, Rules set higher up in the hierarchy (up
* to the closest root) are inherited and present in the effective policy. If
* it is false, then no rules are inherited, and this policy becomes the
* effective root for evaluation.
*
* @param bool $inheritFromParent
*/
public function setInheritFromParent($inheritFromParent)
{
$this->inheritFromParent = $inheritFromParent;
}
/**
* @return bool
*/
public function getInheritFromParent()
{
return $this->inheritFromParent;
}
/**
* Ignores policies set above this resource and restores the default behavior
* of the constraint at this resource. This field can be set in policies for
* either list or boolean constraints. If set, `rules` must be empty and
* `inherit_from_parent` must be set to false.
*
* @param bool $reset
*/
public function setReset($reset)
{
$this->reset = $reset;
}
/**
* @return bool
*/
public function getReset()
{
return $this->reset;
}
/**
* List of rules for this organization policy.
*
* @param GoogleCloudAssetV1Rule[] $rules
*/
public function setRules($rules)
{
$this->rules = $rules;
}
/**
* @return GoogleCloudAssetV1Rule[]
*/
public function getRules()
{
return $this->rules;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(AnalyzerOrgPolicy::class, 'Google_Service_CloudAsset_AnalyzerOrgPolicy');
@@ -0,0 +1,62 @@
<?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\CloudAsset;
class AnalyzerOrgPolicyConstraint extends \Google\Model
{
protected $customConstraintType = GoogleCloudAssetV1CustomConstraint::class;
protected $customConstraintDataType = '';
protected $googleDefinedConstraintType = GoogleCloudAssetV1Constraint::class;
protected $googleDefinedConstraintDataType = '';
/**
* The definition of the custom constraint.
*
* @param GoogleCloudAssetV1CustomConstraint $customConstraint
*/
public function setCustomConstraint(GoogleCloudAssetV1CustomConstraint $customConstraint)
{
$this->customConstraint = $customConstraint;
}
/**
* @return GoogleCloudAssetV1CustomConstraint
*/
public function getCustomConstraint()
{
return $this->customConstraint;
}
/**
* The definition of the canned constraint defined by Google.
*
* @param GoogleCloudAssetV1Constraint $googleDefinedConstraint
*/
public function setGoogleDefinedConstraint(GoogleCloudAssetV1Constraint $googleDefinedConstraint)
{
$this->googleDefinedConstraint = $googleDefinedConstraint;
}
/**
* @return GoogleCloudAssetV1Constraint
*/
public function getGoogleDefinedConstraint()
{
return $this->googleDefinedConstraint;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(AnalyzerOrgPolicyConstraint::class, 'Google_Service_CloudAsset_AnalyzerOrgPolicyConstraint');
@@ -0,0 +1,341 @@
<?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\CloudAsset;
class Asset extends \Google\Collection
{
protected $collection_key = 'orgPolicy';
protected $accessLevelType = GoogleIdentityAccesscontextmanagerV1AccessLevel::class;
protected $accessLevelDataType = '';
protected $accessPolicyType = GoogleIdentityAccesscontextmanagerV1AccessPolicy::class;
protected $accessPolicyDataType = '';
/**
* The ancestry path of an asset in Google Cloud [resource
* hierarchy](https://cloud.google.com/resource-manager/docs/cloud-platform-
* resource-hierarchy), represented as a list of relative resource names. An
* ancestry path starts with the closest ancestor in the hierarchy and ends at
* root. If the asset is a project, folder, or organization, the ancestry path
* starts from the asset itself. Example: `["projects/123456789",
* "folders/5432", "organizations/1234"]`
*
* @var string[]
*/
public $ancestors;
protected $assetExceptionsType = AssetException::class;
protected $assetExceptionsDataType = 'array';
/**
* The type of the asset. Example: `compute.googleapis.com/Disk` See
* [Supported asset types](https://cloud.google.com/asset-
* inventory/docs/supported-asset-types) for more information.
*
* @var string
*/
public $assetType;
protected $iamPolicyType = Policy::class;
protected $iamPolicyDataType = '';
/**
* The full name of the asset. Example: `//compute.googleapis.com/projects/my_
* project_123/zones/zone1/instances/instance1` See [Resource names](https://c
* loud.google.com/apis/design/resource_names#full_resource_name) for more
* information.
*
* @var string
*/
public $name;
protected $orgPolicyType = GoogleCloudOrgpolicyV1Policy::class;
protected $orgPolicyDataType = 'array';
protected $osInventoryType = Inventory::class;
protected $osInventoryDataType = '';
protected $relatedAssetType = RelatedAsset::class;
protected $relatedAssetDataType = '';
protected $relatedAssetsType = RelatedAssets::class;
protected $relatedAssetsDataType = '';
protected $resourceType = CloudassetResource::class;
protected $resourceDataType = '';
protected $servicePerimeterType = GoogleIdentityAccesscontextmanagerV1ServicePerimeter::class;
protected $servicePerimeterDataType = '';
/**
* The last update timestamp of an asset. update_time is updated when
* create/update/delete operation is performed.
*
* @var string
*/
public $updateTime;
/**
* Also refer to the [access level user
* guide](https://cloud.google.com/access-context-
* manager/docs/overview#access-levels).
*
* @param GoogleIdentityAccesscontextmanagerV1AccessLevel $accessLevel
*/
public function setAccessLevel(GoogleIdentityAccesscontextmanagerV1AccessLevel $accessLevel)
{
$this->accessLevel = $accessLevel;
}
/**
* @return GoogleIdentityAccesscontextmanagerV1AccessLevel
*/
public function getAccessLevel()
{
return $this->accessLevel;
}
/**
* Also refer to the [access policy user
* guide](https://cloud.google.com/access-context-
* manager/docs/overview#access-policies).
*
* @param GoogleIdentityAccesscontextmanagerV1AccessPolicy $accessPolicy
*/
public function setAccessPolicy(GoogleIdentityAccesscontextmanagerV1AccessPolicy $accessPolicy)
{
$this->accessPolicy = $accessPolicy;
}
/**
* @return GoogleIdentityAccesscontextmanagerV1AccessPolicy
*/
public function getAccessPolicy()
{
return $this->accessPolicy;
}
/**
* The ancestry path of an asset in Google Cloud [resource
* hierarchy](https://cloud.google.com/resource-manager/docs/cloud-platform-
* resource-hierarchy), represented as a list of relative resource names. An
* ancestry path starts with the closest ancestor in the hierarchy and ends at
* root. If the asset is a project, folder, or organization, the ancestry path
* starts from the asset itself. Example: `["projects/123456789",
* "folders/5432", "organizations/1234"]`
*
* @param string[] $ancestors
*/
public function setAncestors($ancestors)
{
$this->ancestors = $ancestors;
}
/**
* @return string[]
*/
public function getAncestors()
{
return $this->ancestors;
}
/**
* The exceptions of a resource.
*
* @param AssetException[] $assetExceptions
*/
public function setAssetExceptions($assetExceptions)
{
$this->assetExceptions = $assetExceptions;
}
/**
* @return AssetException[]
*/
public function getAssetExceptions()
{
return $this->assetExceptions;
}
/**
* The type of the asset. Example: `compute.googleapis.com/Disk` See
* [Supported asset types](https://cloud.google.com/asset-
* inventory/docs/supported-asset-types) for more information.
*
* @param string $assetType
*/
public function setAssetType($assetType)
{
$this->assetType = $assetType;
}
/**
* @return string
*/
public function getAssetType()
{
return $this->assetType;
}
/**
* A representation of the IAM policy set on a Google Cloud resource. There
* can be a maximum of one IAM policy set on any given resource. In addition,
* IAM policies inherit their granted access scope from any policies set on
* parent resources in the resource hierarchy. Therefore, the effectively
* policy is the union of both the policy set on this resource and each policy
* set on all of the resource's ancestry resource levels in the hierarchy. See
* [this topic](https://cloud.google.com/iam/help/allow-policies/inheritance)
* for more information.
*
* @param Policy $iamPolicy
*/
public function setIamPolicy(Policy $iamPolicy)
{
$this->iamPolicy = $iamPolicy;
}
/**
* @return Policy
*/
public function getIamPolicy()
{
return $this->iamPolicy;
}
/**
* The full name of the asset. Example: `//compute.googleapis.com/projects/my_
* project_123/zones/zone1/instances/instance1` See [Resource names](https://c
* loud.google.com/apis/design/resource_names#full_resource_name) for more
* information.
*
* @param string $name
*/
public function setName($name)
{
$this->name = $name;
}
/**
* @return string
*/
public function getName()
{
return $this->name;
}
/**
* A representation of an [organization
* policy](https://cloud.google.com/resource-manager/docs/organization-
* policy/overview#organization_policy). There can be more than one
* organization policy with different constraints set on a given resource.
*
* @param GoogleCloudOrgpolicyV1Policy[] $orgPolicy
*/
public function setOrgPolicy($orgPolicy)
{
$this->orgPolicy = $orgPolicy;
}
/**
* @return GoogleCloudOrgpolicyV1Policy[]
*/
public function getOrgPolicy()
{
return $this->orgPolicy;
}
/**
* A representation of runtime OS Inventory information. See [this
* topic](https://cloud.google.com/compute/docs/instances/os-inventory-
* management) for more information.
*
* @param Inventory $osInventory
*/
public function setOsInventory(Inventory $osInventory)
{
$this->osInventory = $osInventory;
}
/**
* @return Inventory
*/
public function getOsInventory()
{
return $this->osInventory;
}
/**
* One related asset of the current asset.
*
* @param RelatedAsset $relatedAsset
*/
public function setRelatedAsset(RelatedAsset $relatedAsset)
{
$this->relatedAsset = $relatedAsset;
}
/**
* @return RelatedAsset
*/
public function getRelatedAsset()
{
return $this->relatedAsset;
}
/**
* DEPRECATED. This field only presents for the purpose of backward-
* compatibility. The server will never generate responses with this field.
* The related assets of the asset of one relationship type. One asset only
* represents one type of relationship.
*
* @deprecated
* @param RelatedAssets $relatedAssets
*/
public function setRelatedAssets(RelatedAssets $relatedAssets)
{
$this->relatedAssets = $relatedAssets;
}
/**
* @deprecated
* @return RelatedAssets
*/
public function getRelatedAssets()
{
return $this->relatedAssets;
}
/**
* A representation of the resource.
*
* @param CloudassetResource $resource
*/
public function setResource(CloudassetResource $resource)
{
$this->resource = $resource;
}
/**
* @return CloudassetResource
*/
public function getResource()
{
return $this->resource;
}
/**
* Also refer to the [service perimeter user
* guide](https://cloud.google.com/vpc-service-controls/docs/overview).
*
* @param GoogleIdentityAccesscontextmanagerV1ServicePerimeter $servicePerimeter
*/
public function setServicePerimeter(GoogleIdentityAccesscontextmanagerV1ServicePerimeter $servicePerimeter)
{
$this->servicePerimeter = $servicePerimeter;
}
/**
* @return GoogleIdentityAccesscontextmanagerV1ServicePerimeter
*/
public function getServicePerimeter()
{
return $this->servicePerimeter;
}
/**
* The last update timestamp of an asset. update_time is updated when
* create/update/delete operation is performed.
*
* @param string $updateTime
*/
public function setUpdateTime($updateTime)
{
$this->updateTime = $updateTime;
}
/**
* @return string
*/
public function getUpdateTime()
{
return $this->updateTime;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(Asset::class, 'Google_Service_CloudAsset_Asset');
@@ -0,0 +1,45 @@
<?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\CloudAsset;
class AssetEnrichment extends \Google\Model
{
protected $resourceOwnersType = ResourceOwners::class;
protected $resourceOwnersDataType = '';
/**
* The resource owners for a resource. Note that this field only contains the
* members that have "roles/owner" role in the resource's IAM Policy.
*
* @param ResourceOwners $resourceOwners
*/
public function setResourceOwners(ResourceOwners $resourceOwners)
{
$this->resourceOwners = $resourceOwners;
}
/**
* @return ResourceOwners
*/
public function getResourceOwners()
{
return $this->resourceOwners;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(AssetEnrichment::class, 'Google_Service_CloudAsset_AssetEnrichment');
@@ -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\CloudAsset;
class AssetException extends \Google\Model
{
/**
* exception_type is not applicable for the current asset.
*/
public const EXCEPTION_TYPE_EXCEPTION_TYPE_UNSPECIFIED = 'EXCEPTION_TYPE_UNSPECIFIED';
/**
* The asset content is truncated.
*/
public const EXCEPTION_TYPE_TRUNCATION = 'TRUNCATION';
/**
* The details of the exception.
*
* @var string
*/
public $details;
/**
* The type of exception.
*
* @var string
*/
public $exceptionType;
/**
* The details of the exception.
*
* @param string $details
*/
public function setDetails($details)
{
$this->details = $details;
}
/**
* @return string
*/
public function getDetails()
{
return $this->details;
}
/**
* The type of exception.
*
* Accepted values: EXCEPTION_TYPE_UNSPECIFIED, TRUNCATION
*
* @param self::EXCEPTION_TYPE_* $exceptionType
*/
public function setExceptionType($exceptionType)
{
$this->exceptionType = $exceptionType;
}
/**
* @return self::EXCEPTION_TYPE_*
*/
public function getExceptionType()
{
return $this->exceptionType;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(AssetException::class, 'Google_Service_CloudAsset_AssetException');
@@ -0,0 +1,75 @@
<?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\CloudAsset;
class AttachedResource extends \Google\Collection
{
protected $collection_key = 'versionedResources';
/**
* The type of this attached resource. Example:
* `osconfig.googleapis.com/Inventory` You can find the supported attached
* asset types of each resource in this table:
* `https://cloud.google.com/asset-inventory/docs/supported-asset-types`
*
* @var string
*/
public $assetType;
protected $versionedResourcesType = VersionedResource::class;
protected $versionedResourcesDataType = 'array';
/**
* The type of this attached resource. Example:
* `osconfig.googleapis.com/Inventory` You can find the supported attached
* asset types of each resource in this table:
* `https://cloud.google.com/asset-inventory/docs/supported-asset-types`
*
* @param string $assetType
*/
public function setAssetType($assetType)
{
$this->assetType = $assetType;
}
/**
* @return string
*/
public function getAssetType()
{
return $this->assetType;
}
/**
* Versioned resource representations of this attached resource. This is
* repeated because there could be multiple versions of the attached resource
* representations during version migration.
*
* @param VersionedResource[] $versionedResources
*/
public function setVersionedResources($versionedResources)
{
$this->versionedResources = $versionedResources;
}
/**
* @return VersionedResource[]
*/
public function getVersionedResources()
{
return $this->versionedResources;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(AttachedResource::class, 'Google_Service_CloudAsset_AttachedResource');
@@ -0,0 +1,71 @@
<?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\CloudAsset;
class AuditConfig extends \Google\Collection
{
protected $collection_key = 'auditLogConfigs';
protected $auditLogConfigsType = AuditLogConfig::class;
protected $auditLogConfigsDataType = 'array';
/**
* Specifies a service that will be enabled for audit logging. For example,
* `storage.googleapis.com`, `cloudsql.googleapis.com`. `allServices` is a
* special value that covers all services.
*
* @var string
*/
public $service;
/**
* The configuration for logging of each type of permission.
*
* @param AuditLogConfig[] $auditLogConfigs
*/
public function setAuditLogConfigs($auditLogConfigs)
{
$this->auditLogConfigs = $auditLogConfigs;
}
/**
* @return AuditLogConfig[]
*/
public function getAuditLogConfigs()
{
return $this->auditLogConfigs;
}
/**
* Specifies a service that will be enabled for audit logging. For example,
* `storage.googleapis.com`, `cloudsql.googleapis.com`. `allServices` is a
* special value that covers all services.
*
* @param string $service
*/
public function setService($service)
{
$this->service = $service;
}
/**
* @return string
*/
public function getService()
{
return $this->service;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(AuditConfig::class, 'Google_Service_CloudAsset_AuditConfig');
@@ -0,0 +1,91 @@
<?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\CloudAsset;
class AuditLogConfig extends \Google\Collection
{
/**
* Default case. Should never be this.
*/
public const LOG_TYPE_LOG_TYPE_UNSPECIFIED = 'LOG_TYPE_UNSPECIFIED';
/**
* Admin reads. Example: CloudIAM getIamPolicy
*/
public const LOG_TYPE_ADMIN_READ = 'ADMIN_READ';
/**
* Data writes. Example: CloudSQL Users create
*/
public const LOG_TYPE_DATA_WRITE = 'DATA_WRITE';
/**
* Data reads. Example: CloudSQL Users list
*/
public const LOG_TYPE_DATA_READ = 'DATA_READ';
protected $collection_key = 'exemptedMembers';
/**
* Specifies the identities that do not cause logging for this type of
* permission. Follows the same format of Binding.members.
*
* @var string[]
*/
public $exemptedMembers;
/**
* The log type that this config enables.
*
* @var string
*/
public $logType;
/**
* Specifies the identities that do not cause logging for this type of
* permission. Follows the same format of Binding.members.
*
* @param string[] $exemptedMembers
*/
public function setExemptedMembers($exemptedMembers)
{
$this->exemptedMembers = $exemptedMembers;
}
/**
* @return string[]
*/
public function getExemptedMembers()
{
return $this->exemptedMembers;
}
/**
* The log type that this config enables.
*
* Accepted values: LOG_TYPE_UNSPECIFIED, ADMIN_READ, DATA_WRITE, DATA_READ
*
* @param self::LOG_TYPE_* $logType
*/
public function setLogType($logType)
{
$this->logType = $logType;
}
/**
* @return self::LOG_TYPE_*
*/
public function getLogType()
{
return $this->logType;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(AuditLogConfig::class, 'Google_Service_CloudAsset_AuditLogConfig');
@@ -0,0 +1,45 @@
<?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\CloudAsset;
class BatchGetAssetsHistoryResponse extends \Google\Collection
{
protected $collection_key = 'assets';
protected $assetsType = TemporalAsset::class;
protected $assetsDataType = 'array';
/**
* A list of assets with valid time windows.
*
* @param TemporalAsset[] $assets
*/
public function setAssets($assets)
{
$this->assets = $assets;
}
/**
* @return TemporalAsset[]
*/
public function getAssets()
{
return $this->assets;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(BatchGetAssetsHistoryResponse::class, 'Google_Service_CloudAsset_BatchGetAssetsHistoryResponse');
@@ -0,0 +1,49 @@
<?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\CloudAsset;
class BatchGetEffectiveIamPoliciesResponse extends \Google\Collection
{
protected $collection_key = 'policyResults';
protected $policyResultsType = EffectiveIamPolicy::class;
protected $policyResultsDataType = 'array';
/**
* The effective policies for a batch of resources. Note that the results
* order is the same as the order of
* BatchGetEffectiveIamPoliciesRequest.names. When a resource does not have
* any effective IAM policies, its corresponding policy_result will contain
* empty EffectiveIamPolicy.policies.
*
* @param EffectiveIamPolicy[] $policyResults
*/
public function setPolicyResults($policyResults)
{
$this->policyResults = $policyResults;
}
/**
* @return EffectiveIamPolicy[]
*/
public function getPolicyResults()
{
return $this->policyResults;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(BatchGetEffectiveIamPoliciesResponse::class, 'Google_Service_CloudAsset_BatchGetEffectiveIamPoliciesResponse');
@@ -0,0 +1,209 @@
<?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\CloudAsset;
class BigQueryDestination extends \Google\Model
{
/**
* Required. The BigQuery dataset in format
* "projects/projectId/datasets/datasetId", to which the snapshot result
* should be exported. If this dataset does not exist, the export call returns
* an INVALID_ARGUMENT error. Setting the `contentType` for `exportAssets`
* determines the [schema](/asset-inventory/docs/exporting-to-
* bigquery#bigquery-schema) of the BigQuery table. Setting
* `separateTablesPerAssetType` to `TRUE` also influences the schema.
*
* @var string
*/
public $dataset;
/**
* If the destination table already exists and this flag is `TRUE`, the table
* will be overwritten by the contents of assets snapshot. If the flag is
* `FALSE` or unset and the destination table already exists, the export call
* returns an INVALID_ARGUMENT error.
*
* @var bool
*/
public $force;
protected $partitionSpecType = PartitionSpec::class;
protected $partitionSpecDataType = '';
/**
* If this flag is `TRUE`, the snapshot results will be written to one or
* multiple tables, each of which contains results of one asset type. The
* [force] and [partition_spec] fields will apply to each of them. Field
* [table] will be concatenated with "_" and the asset type names (see
* https://cloud.google.com/asset-inventory/docs/supported-asset-types for
* supported asset types) to construct per-asset-type table names, in which
* all non-alphanumeric characters like "." and "/" will be substituted by
* "_". Example: if field [table] is "mytable" and snapshot results contain
* "storage.googleapis.com/Bucket" assets, the corresponding table name will
* be "mytable_storage_googleapis_com_Bucket". If any of these tables does not
* exist, a new table with the concatenated name will be created. When
* [content_type] in the ExportAssetsRequest is `RESOURCE`, the schema of each
* table will include RECORD-type columns mapped to the nested fields in the
* Asset.resource.data field of that asset type (up to the 15 nested level
* BigQuery supports (https://cloud.google.com/bigquery/docs/nested-
* repeated#limitations)). The fields in >15 nested levels will be stored in
* JSON format string as a child column of its parent RECORD column. If error
* occurs when exporting to any table, the whole export call will return an
* error but the export results that already succeed will persist. Example: if
* exporting to table_type_A succeeds when exporting to table_type_B fails
* during one export call, the results in table_type_A will persist and there
* will not be partial results persisting in a table.
*
* @var bool
*/
public $separateTablesPerAssetType;
/**
* Required. The BigQuery table to which the snapshot result should be
* written. If this table does not exist, a new table with the given name will
* be created.
*
* @var string
*/
public $table;
/**
* Required. The BigQuery dataset in format
* "projects/projectId/datasets/datasetId", to which the snapshot result
* should be exported. If this dataset does not exist, the export call returns
* an INVALID_ARGUMENT error. Setting the `contentType` for `exportAssets`
* determines the [schema](/asset-inventory/docs/exporting-to-
* bigquery#bigquery-schema) of the BigQuery table. Setting
* `separateTablesPerAssetType` to `TRUE` also influences the schema.
*
* @param string $dataset
*/
public function setDataset($dataset)
{
$this->dataset = $dataset;
}
/**
* @return string
*/
public function getDataset()
{
return $this->dataset;
}
/**
* If the destination table already exists and this flag is `TRUE`, the table
* will be overwritten by the contents of assets snapshot. If the flag is
* `FALSE` or unset and the destination table already exists, the export call
* returns an INVALID_ARGUMENT error.
*
* @param bool $force
*/
public function setForce($force)
{
$this->force = $force;
}
/**
* @return bool
*/
public function getForce()
{
return $this->force;
}
/**
* [partition_spec] determines whether to export to partitioned table(s) and
* how to partition the data. If [partition_spec] is unset or
* [partition_spec.partition_key] is unset or `PARTITION_KEY_UNSPECIFIED`, the
* snapshot results will be exported to non-partitioned table(s). [force] will
* decide whether to overwrite existing table(s). If [partition_spec] is
* specified. First, the snapshot results will be written to partitioned
* table(s) with two additional timestamp columns, readTime and requestTime,
* one of which will be the partition key. Secondly, in the case when any
* destination table already exists, it will first try to update existing
* table's schema as necessary by appending additional columns. Then, if
* [force] is `TRUE`, the corresponding partition will be overwritten by the
* snapshot results (data in different partitions will remain intact); if
* [force] is unset or `FALSE`, it will append the data. An error will be
* returned if the schema update or data appension fails.
*
* @param PartitionSpec $partitionSpec
*/
public function setPartitionSpec(PartitionSpec $partitionSpec)
{
$this->partitionSpec = $partitionSpec;
}
/**
* @return PartitionSpec
*/
public function getPartitionSpec()
{
return $this->partitionSpec;
}
/**
* If this flag is `TRUE`, the snapshot results will be written to one or
* multiple tables, each of which contains results of one asset type. The
* [force] and [partition_spec] fields will apply to each of them. Field
* [table] will be concatenated with "_" and the asset type names (see
* https://cloud.google.com/asset-inventory/docs/supported-asset-types for
* supported asset types) to construct per-asset-type table names, in which
* all non-alphanumeric characters like "." and "/" will be substituted by
* "_". Example: if field [table] is "mytable" and snapshot results contain
* "storage.googleapis.com/Bucket" assets, the corresponding table name will
* be "mytable_storage_googleapis_com_Bucket". If any of these tables does not
* exist, a new table with the concatenated name will be created. When
* [content_type] in the ExportAssetsRequest is `RESOURCE`, the schema of each
* table will include RECORD-type columns mapped to the nested fields in the
* Asset.resource.data field of that asset type (up to the 15 nested level
* BigQuery supports (https://cloud.google.com/bigquery/docs/nested-
* repeated#limitations)). The fields in >15 nested levels will be stored in
* JSON format string as a child column of its parent RECORD column. If error
* occurs when exporting to any table, the whole export call will return an
* error but the export results that already succeed will persist. Example: if
* exporting to table_type_A succeeds when exporting to table_type_B fails
* during one export call, the results in table_type_A will persist and there
* will not be partial results persisting in a table.
*
* @param bool $separateTablesPerAssetType
*/
public function setSeparateTablesPerAssetType($separateTablesPerAssetType)
{
$this->separateTablesPerAssetType = $separateTablesPerAssetType;
}
/**
* @return bool
*/
public function getSeparateTablesPerAssetType()
{
return $this->separateTablesPerAssetType;
}
/**
* Required. The BigQuery table to which the snapshot result should be
* written. If this table does not exist, a new table with the given name will
* be created.
*
* @param string $table
*/
public function setTable($table)
{
$this->table = $table;
}
/**
* @return string
*/
public function getTable()
{
return $this->table;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(BigQueryDestination::class, 'Google_Service_CloudAsset_BigQueryDestination');
@@ -0,0 +1,216 @@
<?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\CloudAsset;
class Binding extends \Google\Collection
{
protected $collection_key = 'members';
protected $conditionType = Expr::class;
protected $conditionDataType = '';
/**
* Specifies the principals requesting access for a Google Cloud resource.
* `members` can have the following values: * `allUsers`: A special identifier
* that represents anyone who is on the internet; with or without a Google
* account. * `allAuthenticatedUsers`: A special identifier that represents
* anyone who is authenticated with a Google account or a service account.
* Does not include identities that come from external identity providers
* (IdPs) through identity federation. * `user:{emailid}`: An email address
* that represents a specific Google account. For example, `alice@example.com`
* . * `serviceAccount:{emailid}`: An email address that represents a Google
* service account. For example, `my-other-app@appspot.gserviceaccount.com`. *
* `serviceAccount:{projectid}.svc.id.goog[{namespace}/{kubernetes-sa}]`: An
* identifier for a [Kubernetes service
* account](https://cloud.google.com/kubernetes-engine/docs/how-to/kubernetes-
* service-accounts). For example, `my-project.svc.id.goog[my-namespace/my-
* kubernetes-sa]`. * `group:{emailid}`: An email address that represents a
* Google group. For example, `admins@example.com`. * `domain:{domain}`: The G
* Suite domain (primary) that represents all the users of that domain. For
* example, `google.com` or `example.com`. * `principal://iam.googleapis.com/l
* ocations/global/workforcePools/{pool_id}/subject/{subject_attribute_value}`
* : A single identity in a workforce identity pool. * `principalSet://iam.goo
* gleapis.com/locations/global/workforcePools/{pool_id}/group/{group_id}`:
* All workforce identities in a group. * `principalSet://iam.googleapis.com/l
* ocations/global/workforcePools/{pool_id}/attribute.{attribute_name}/{attrib
* ute_value}`: All workforce identities with a specific attribute value. * `p
* rincipalSet://iam.googleapis.com/locations/global/workforcePools/{pool_id}`
* : All identities in a workforce identity pool. * `principal://iam.googleapi
* s.com/projects/{project_number}/locations/global/workloadIdentityPools/{poo
* l_id}/subject/{subject_attribute_value}`: A single identity in a workload
* identity pool. * `principalSet://iam.googleapis.com/projects/{project_numbe
* r}/locations/global/workloadIdentityPools/{pool_id}/group/{group_id}`: A
* workload identity pool group. * `principalSet://iam.googleapis.com/projects
* /{project_number}/locations/global/workloadIdentityPools/{pool_id}/attribut
* e.{attribute_name}/{attribute_value}`: All identities in a workload
* identity pool with a certain attribute. * `principalSet://iam.googleapis.co
* m/projects/{project_number}/locations/global/workloadIdentityPools/{pool_id
* }`: All identities in a workload identity pool. *
* `deleted:user:{emailid}?uid={uniqueid}`: An email address (plus unique
* identifier) representing a user that has been recently deleted. For
* example, `alice@example.com?uid=123456789012345678901`. If the user is
* recovered, this value reverts to `user:{emailid}` and the recovered user
* retains the role in the binding. *
* `deleted:serviceAccount:{emailid}?uid={uniqueid}`: An email address (plus
* unique identifier) representing a service account that has been recently
* deleted. For example, `my-other-
* app@appspot.gserviceaccount.com?uid=123456789012345678901`. If the service
* account is undeleted, this value reverts to `serviceAccount:{emailid}` and
* the undeleted service account retains the role in the binding. *
* `deleted:group:{emailid}?uid={uniqueid}`: An email address (plus unique
* identifier) representing a Google group that has been recently deleted. For
* example, `admins@example.com?uid=123456789012345678901`. If the group is
* recovered, this value reverts to `group:{emailid}` and the recovered group
* retains the role in the binding. * `deleted:principal://iam.googleapis.com/
* locations/global/workforcePools/{pool_id}/subject/{subject_attribute_value}
* `: Deleted single identity in a workforce identity pool. For example,
* `deleted:principal://iam.googleapis.com/locations/global/workforcePools/my-
* pool-id/subject/my-subject-attribute-value`.
*
* @var string[]
*/
public $members;
/**
* Role that is assigned to the list of `members`, or principals. For example,
* `roles/viewer`, `roles/editor`, or `roles/owner`. For an overview of the
* IAM roles and permissions, see the [IAM
* documentation](https://cloud.google.com/iam/docs/roles-overview). For a
* list of the available pre-defined roles, see
* [here](https://cloud.google.com/iam/docs/understanding-roles).
*
* @var string
*/
public $role;
/**
* The condition that is associated with this binding. If the condition
* evaluates to `true`, then this binding applies to the current request. If
* the condition evaluates to `false`, then this binding does not apply to the
* current request. However, a different role binding might grant the same
* role to one or more of the principals in this binding. To learn which
* resources support conditions in their IAM policies, see the [IAM
* documentation](https://cloud.google.com/iam/help/conditions/resource-
* policies).
*
* @param Expr $condition
*/
public function setCondition(Expr $condition)
{
$this->condition = $condition;
}
/**
* @return Expr
*/
public function getCondition()
{
return $this->condition;
}
/**
* Specifies the principals requesting access for a Google Cloud resource.
* `members` can have the following values: * `allUsers`: A special identifier
* that represents anyone who is on the internet; with or without a Google
* account. * `allAuthenticatedUsers`: A special identifier that represents
* anyone who is authenticated with a Google account or a service account.
* Does not include identities that come from external identity providers
* (IdPs) through identity federation. * `user:{emailid}`: An email address
* that represents a specific Google account. For example, `alice@example.com`
* . * `serviceAccount:{emailid}`: An email address that represents a Google
* service account. For example, `my-other-app@appspot.gserviceaccount.com`. *
* `serviceAccount:{projectid}.svc.id.goog[{namespace}/{kubernetes-sa}]`: An
* identifier for a [Kubernetes service
* account](https://cloud.google.com/kubernetes-engine/docs/how-to/kubernetes-
* service-accounts). For example, `my-project.svc.id.goog[my-namespace/my-
* kubernetes-sa]`. * `group:{emailid}`: An email address that represents a
* Google group. For example, `admins@example.com`. * `domain:{domain}`: The G
* Suite domain (primary) that represents all the users of that domain. For
* example, `google.com` or `example.com`. * `principal://iam.googleapis.com/l
* ocations/global/workforcePools/{pool_id}/subject/{subject_attribute_value}`
* : A single identity in a workforce identity pool. * `principalSet://iam.goo
* gleapis.com/locations/global/workforcePools/{pool_id}/group/{group_id}`:
* All workforce identities in a group. * `principalSet://iam.googleapis.com/l
* ocations/global/workforcePools/{pool_id}/attribute.{attribute_name}/{attrib
* ute_value}`: All workforce identities with a specific attribute value. * `p
* rincipalSet://iam.googleapis.com/locations/global/workforcePools/{pool_id}`
* : All identities in a workforce identity pool. * `principal://iam.googleapi
* s.com/projects/{project_number}/locations/global/workloadIdentityPools/{poo
* l_id}/subject/{subject_attribute_value}`: A single identity in a workload
* identity pool. * `principalSet://iam.googleapis.com/projects/{project_numbe
* r}/locations/global/workloadIdentityPools/{pool_id}/group/{group_id}`: A
* workload identity pool group. * `principalSet://iam.googleapis.com/projects
* /{project_number}/locations/global/workloadIdentityPools/{pool_id}/attribut
* e.{attribute_name}/{attribute_value}`: All identities in a workload
* identity pool with a certain attribute. * `principalSet://iam.googleapis.co
* m/projects/{project_number}/locations/global/workloadIdentityPools/{pool_id
* }`: All identities in a workload identity pool. *
* `deleted:user:{emailid}?uid={uniqueid}`: An email address (plus unique
* identifier) representing a user that has been recently deleted. For
* example, `alice@example.com?uid=123456789012345678901`. If the user is
* recovered, this value reverts to `user:{emailid}` and the recovered user
* retains the role in the binding. *
* `deleted:serviceAccount:{emailid}?uid={uniqueid}`: An email address (plus
* unique identifier) representing a service account that has been recently
* deleted. For example, `my-other-
* app@appspot.gserviceaccount.com?uid=123456789012345678901`. If the service
* account is undeleted, this value reverts to `serviceAccount:{emailid}` and
* the undeleted service account retains the role in the binding. *
* `deleted:group:{emailid}?uid={uniqueid}`: An email address (plus unique
* identifier) representing a Google group that has been recently deleted. For
* example, `admins@example.com?uid=123456789012345678901`. If the group is
* recovered, this value reverts to `group:{emailid}` and the recovered group
* retains the role in the binding. * `deleted:principal://iam.googleapis.com/
* locations/global/workforcePools/{pool_id}/subject/{subject_attribute_value}
* `: Deleted single identity in a workforce identity pool. For example,
* `deleted:principal://iam.googleapis.com/locations/global/workforcePools/my-
* pool-id/subject/my-subject-attribute-value`.
*
* @param string[] $members
*/
public function setMembers($members)
{
$this->members = $members;
}
/**
* @return string[]
*/
public function getMembers()
{
return $this->members;
}
/**
* Role that is assigned to the list of `members`, or principals. For example,
* `roles/viewer`, `roles/editor`, or `roles/owner`. For an overview of the
* IAM roles and permissions, see the [IAM
* documentation](https://cloud.google.com/iam/docs/roles-overview). For a
* list of the available pre-defined roles, see
* [here](https://cloud.google.com/iam/docs/understanding-roles).
*
* @param string $role
*/
public function setRole($role)
{
$this->role = $role;
}
/**
* @return string
*/
public function getRole()
{
return $this->role;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(Binding::class, 'Google_Service_CloudAsset_Binding');
@@ -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\CloudAsset;
class CancelOperationRequest extends \Google\Model
{
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(CancelOperationRequest::class, 'Google_Service_CloudAsset_CancelOperationRequest');
@@ -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\CloudAsset;
class CloudassetEmpty extends \Google\Model
{
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(CloudassetEmpty::class, 'Google_Service_CloudAsset_CloudassetEmpty');
@@ -0,0 +1,210 @@
<?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\CloudAsset;
class CloudassetResource extends \Google\Model
{
/**
* The content of the resource, in which some sensitive fields are removed and
* may not be present.
*
* @var array[]
*/
public $data;
/**
* The URL of the discovery document containing the resource's JSON schema.
* Example: `https://www.googleapis.com/discovery/v1/apis/compute/v1/rest`
* This value is unspecified for resources that do not have an API based on a
* discovery document, such as Cloud Bigtable.
*
* @var string
*/
public $discoveryDocumentUri;
/**
* The JSON schema name listed in the discovery document. Example: `Project`
* This value is unspecified for resources that do not have an API based on a
* discovery document, such as Cloud Bigtable.
*
* @var string
*/
public $discoveryName;
/**
* The location of the resource in Google Cloud, such as its zone and region.
* For more information, see https://cloud.google.com/about/locations/.
*
* @var string
*/
public $location;
/**
* The full name of the immediate parent of this resource. See [Resource Names
* ](https://cloud.google.com/apis/design/resource_names#full_resource_name)
* for more information. For Google Cloud assets, this value is the parent
* resource defined in the [IAM policy
* hierarchy](https://cloud.google.com/iam/docs/overview#policy_hierarchy).
* Example: `//cloudresourcemanager.googleapis.com/projects/my_project_123`
*
* @var string
*/
public $parent;
/**
* The REST URL for accessing the resource. An HTTP `GET` request using this
* URL returns the resource itself. Example:
* `https://cloudresourcemanager.googleapis.com/v1/projects/my-project-123`
* This value is unspecified for resources without a REST API.
*
* @var string
*/
public $resourceUrl;
/**
* The API version. Example: `v1`
*
* @var string
*/
public $version;
/**
* The content of the resource, in which some sensitive fields are removed and
* may not be present.
*
* @param array[] $data
*/
public function setData($data)
{
$this->data = $data;
}
/**
* @return array[]
*/
public function getData()
{
return $this->data;
}
/**
* The URL of the discovery document containing the resource's JSON schema.
* Example: `https://www.googleapis.com/discovery/v1/apis/compute/v1/rest`
* This value is unspecified for resources that do not have an API based on a
* discovery document, such as Cloud Bigtable.
*
* @param string $discoveryDocumentUri
*/
public function setDiscoveryDocumentUri($discoveryDocumentUri)
{
$this->discoveryDocumentUri = $discoveryDocumentUri;
}
/**
* @return string
*/
public function getDiscoveryDocumentUri()
{
return $this->discoveryDocumentUri;
}
/**
* The JSON schema name listed in the discovery document. Example: `Project`
* This value is unspecified for resources that do not have an API based on a
* discovery document, such as Cloud Bigtable.
*
* @param string $discoveryName
*/
public function setDiscoveryName($discoveryName)
{
$this->discoveryName = $discoveryName;
}
/**
* @return string
*/
public function getDiscoveryName()
{
return $this->discoveryName;
}
/**
* The location of the resource in Google Cloud, such as its zone and region.
* For more information, see https://cloud.google.com/about/locations/.
*
* @param string $location
*/
public function setLocation($location)
{
$this->location = $location;
}
/**
* @return string
*/
public function getLocation()
{
return $this->location;
}
/**
* The full name of the immediate parent of this resource. See [Resource Names
* ](https://cloud.google.com/apis/design/resource_names#full_resource_name)
* for more information. For Google Cloud assets, this value is the parent
* resource defined in the [IAM policy
* hierarchy](https://cloud.google.com/iam/docs/overview#policy_hierarchy).
* Example: `//cloudresourcemanager.googleapis.com/projects/my_project_123`
*
* @param string $parent
*/
public function setParent($parent)
{
$this->parent = $parent;
}
/**
* @return string
*/
public function getParent()
{
return $this->parent;
}
/**
* The REST URL for accessing the resource. An HTTP `GET` request using this
* URL returns the resource itself. Example:
* `https://cloudresourcemanager.googleapis.com/v1/projects/my-project-123`
* This value is unspecified for resources without a REST API.
*
* @param string $resourceUrl
*/
public function setResourceUrl($resourceUrl)
{
$this->resourceUrl = $resourceUrl;
}
/**
* @return string
*/
public function getResourceUrl()
{
return $this->resourceUrl;
}
/**
* The API version. Example: `v1`
*
* @param string $version
*/
public function setVersion($version)
{
$this->version = $version;
}
/**
* @return string
*/
public function getVersion()
{
return $this->version;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(CloudassetResource::class, 'Google_Service_CloudAsset_CloudassetResource');
@@ -0,0 +1,52 @@
<?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\CloudAsset;
class ConditionContext extends \Google\Model
{
/**
* The hypothetical access timestamp to evaluate IAM conditions. Note that
* this value must not be earlier than the current time; otherwise, an
* INVALID_ARGUMENT error will be returned.
*
* @var string
*/
public $accessTime;
/**
* The hypothetical access timestamp to evaluate IAM conditions. Note that
* this value must not be earlier than the current time; otherwise, an
* INVALID_ARGUMENT error will be returned.
*
* @param string $accessTime
*/
public function setAccessTime($accessTime)
{
$this->accessTime = $accessTime;
}
/**
* @return string
*/
public function getAccessTime()
{
return $this->accessTime;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(ConditionContext::class, 'Google_Service_CloudAsset_ConditionContext');
@@ -0,0 +1,68 @@
<?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\CloudAsset;
class ConditionEvaluation extends \Google\Model
{
/**
* Reserved for future use.
*/
public const EVALUATION_VALUE_EVALUATION_VALUE_UNSPECIFIED = 'EVALUATION_VALUE_UNSPECIFIED';
/**
* The evaluation result is `true`.
*/
public const EVALUATION_VALUE_TRUE = 'TRUE';
/**
* The evaluation result is `false`.
*/
public const EVALUATION_VALUE_FALSE = 'FALSE';
/**
* The evaluation result is `conditional` when the condition expression
* contains variables that are either missing input values or have not been
* supported by Policy Analyzer yet.
*/
public const EVALUATION_VALUE_CONDITIONAL = 'CONDITIONAL';
/**
* The evaluation result.
*
* @var string
*/
public $evaluationValue;
/**
* The evaluation result.
*
* Accepted values: EVALUATION_VALUE_UNSPECIFIED, TRUE, FALSE, CONDITIONAL
*
* @param self::EVALUATION_VALUE_* $evaluationValue
*/
public function setEvaluationValue($evaluationValue)
{
$this->evaluationValue = $evaluationValue;
}
/**
* @return self::EVALUATION_VALUE_*
*/
public function getEvaluationValue()
{
return $this->evaluationValue;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(ConditionEvaluation::class, 'Google_Service_CloudAsset_ConditionEvaluation');
@@ -0,0 +1,71 @@
<?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\CloudAsset;
class CreateFeedRequest extends \Google\Model
{
protected $feedType = Feed::class;
protected $feedDataType = '';
/**
* Required. This is the client-assigned asset feed identifier and it needs to
* be unique under a specific parent project/folder/organization.
*
* @var string
*/
public $feedId;
/**
* Required. The feed details. The field `name` must be empty and it will be
* generated in the format of: projects/project_number/feeds/feed_id
* folders/folder_number/feeds/feed_id
* organizations/organization_number/feeds/feed_id
*
* @param Feed $feed
*/
public function setFeed(Feed $feed)
{
$this->feed = $feed;
}
/**
* @return Feed
*/
public function getFeed()
{
return $this->feed;
}
/**
* Required. This is the client-assigned asset feed identifier and it needs to
* be unique under a specific parent project/folder/organization.
*
* @param string $feedId
*/
public function setFeedId($feedId)
{
$this->feedId = $feedId;
}
/**
* @return string
*/
public function getFeedId()
{
return $this->feedId;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(CreateFeedRequest::class, 'Google_Service_CloudAsset_CreateFeedRequest');
+100
View File
@@ -0,0 +1,100 @@
<?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\CloudAsset;
class Date extends \Google\Model
{
/**
* Day of a month. Must be from 1 to 31 and valid for the year and month, or 0
* to specify a year by itself or a year and month where the day isn't
* significant.
*
* @var int
*/
public $day;
/**
* Month of a year. Must be from 1 to 12, or 0 to specify a year without a
* month and day.
*
* @var int
*/
public $month;
/**
* Year of the date. Must be from 1 to 9999, or 0 to specify a date without a
* year.
*
* @var int
*/
public $year;
/**
* Day of a month. Must be from 1 to 31 and valid for the year and month, or 0
* to specify a year by itself or a year and month where the day isn't
* significant.
*
* @param int $day
*/
public function setDay($day)
{
$this->day = $day;
}
/**
* @return int
*/
public function getDay()
{
return $this->day;
}
/**
* Month of a year. Must be from 1 to 12, or 0 to specify a year without a
* month and day.
*
* @param int $month
*/
public function setMonth($month)
{
$this->month = $month;
}
/**
* @return int
*/
public function getMonth()
{
return $this->month;
}
/**
* Year of the date. Must be from 1 to 9999, or 0 to specify a date without a
* year.
*
* @param int $year
*/
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(Date::class, 'Google_Service_CloudAsset_Date');
@@ -0,0 +1,59 @@
<?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\CloudAsset;
class DeniedAccess extends \Google\Collection
{
protected $collection_key = 'denyDetails';
protected $deniedAccessTupleType = GoogleCloudAssetV1DeniedAccessAccessTuple::class;
protected $deniedAccessTupleDataType = '';
protected $denyDetailsType = GoogleCloudAssetV1DeniedAccessDenyDetail::class;
protected $denyDetailsDataType = 'array';
/**
* @param GoogleCloudAssetV1DeniedAccessAccessTuple
*/
public function setDeniedAccessTuple(GoogleCloudAssetV1DeniedAccessAccessTuple $deniedAccessTuple)
{
$this->deniedAccessTuple = $deniedAccessTuple;
}
/**
* @return GoogleCloudAssetV1DeniedAccessAccessTuple
*/
public function getDeniedAccessTuple()
{
return $this->deniedAccessTuple;
}
/**
* @param GoogleCloudAssetV1DeniedAccessDenyDetail[]
*/
public function setDenyDetails($denyDetails)
{
$this->denyDetails = $denyDetails;
}
/**
* @return GoogleCloudAssetV1DeniedAccessDenyDetail[]
*/
public function getDenyDetails()
{
return $this->denyDetails;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(DeniedAccess::class, 'Google_Service_CloudAsset_DeniedAccess');
@@ -0,0 +1,81 @@
<?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\CloudAsset;
class EffectiveIamPolicy extends \Google\Collection
{
protected $collection_key = 'policies';
/**
* The [full_resource_name] (https://cloud.google.com/asset-
* inventory/docs/resource-name-format) for which the policies are computed.
* This is one of the BatchGetEffectiveIamPoliciesRequest.names the caller
* provides in the request.
*
* @var string
*/
public $fullResourceName;
protected $policiesType = PolicyInfo::class;
protected $policiesDataType = 'array';
/**
* The [full_resource_name] (https://cloud.google.com/asset-
* inventory/docs/resource-name-format) for which the policies are computed.
* This is one of the BatchGetEffectiveIamPoliciesRequest.names the caller
* provides in the request.
*
* @param string $fullResourceName
*/
public function setFullResourceName($fullResourceName)
{
$this->fullResourceName = $fullResourceName;
}
/**
* @return string
*/
public function getFullResourceName()
{
return $this->fullResourceName;
}
/**
* The effective policies for the full_resource_name. These policies include
* the policy set on the full_resource_name and those set on its parents and
* ancestors up to the BatchGetEffectiveIamPoliciesRequest.scope. Note that
* these policies are not filtered according to the resource type of the
* full_resource_name. These policies are hierarchically ordered by
* PolicyInfo.attached_resource starting from full_resource_name itself to its
* parents and ancestors, such that policies[i]'s PolicyInfo.attached_resource
* is the child of policies[i+1]'s PolicyInfo.attached_resource, if
* policies[i+1] exists.
*
* @param PolicyInfo[] $policies
*/
public function setPolicies($policies)
{
$this->policies = $policies;
}
/**
* @return PolicyInfo[]
*/
public function getPolicies()
{
return $this->policies;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(EffectiveIamPolicy::class, 'Google_Service_CloudAsset_EffectiveIamPolicy');
@@ -0,0 +1,81 @@
<?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\CloudAsset;
class EffectiveTagDetails extends \Google\Collection
{
protected $collection_key = 'effectiveTags';
/**
* The [full resource name](https://cloud.google.com/asset-
* inventory/docs/resource-name-format) of the ancestor from which
* effective_tags are inherited, according to [tag
* inheritance](https://cloud.google.com/resource-manager/docs/tags/tags-
* overview#inheritance).
*
* @var string
*/
public $attachedResource;
protected $effectiveTagsType = Tag::class;
protected $effectiveTagsDataType = 'array';
/**
* The [full resource name](https://cloud.google.com/asset-
* inventory/docs/resource-name-format) of the ancestor from which
* effective_tags are inherited, according to [tag
* inheritance](https://cloud.google.com/resource-manager/docs/tags/tags-
* overview#inheritance).
*
* @param string $attachedResource
*/
public function setAttachedResource($attachedResource)
{
$this->attachedResource = $attachedResource;
}
/**
* @return string
*/
public function getAttachedResource()
{
return $this->attachedResource;
}
/**
* The effective tags inherited from the attached_resource. Note that tags
* with the same key but different values may attach to resources at a
* different hierarchy levels. The lower hierarchy tag value will overwrite
* the higher hierarchy tag value of the same tag key. In this case, the tag
* value at the higher hierarchy level will be removed. For more information,
* see [tag inheritance](https://cloud.google.com/resource-
* manager/docs/tags/tags-overview#inheritance).
*
* @param Tag[] $effectiveTags
*/
public function setEffectiveTags($effectiveTags)
{
$this->effectiveTags = $effectiveTags;
}
/**
* @return Tag[]
*/
public function getEffectiveTags()
{
return $this->effectiveTags;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(EffectiveTagDetails::class, 'Google_Service_CloudAsset_EffectiveTagDetails');
@@ -0,0 +1,50 @@
<?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\CloudAsset;
class Explanation extends \Google\Model
{
protected $matchedPermissionsType = Permissions::class;
protected $matchedPermissionsDataType = 'map';
/**
* The map from roles to their included permissions that match the permission
* query (i.e., a query containing `policy.role.permissions:`). Example: if
* query `policy.role.permissions:compute.disk.get` matches a policy binding
* that contains owner role, the matched_permissions will be `{"roles/owner":
* ["compute.disk.get"]}`. The roles can also be found in the returned
* `policy` bindings. Note that the map is populated only for requests with
* permission queries.
*
* @param Permissions[] $matchedPermissions
*/
public function setMatchedPermissions($matchedPermissions)
{
$this->matchedPermissions = $matchedPermissions;
}
/**
* @return Permissions[]
*/
public function getMatchedPermissions()
{
return $this->matchedPermissions;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(Explanation::class, 'Google_Service_CloudAsset_Explanation');
@@ -0,0 +1,221 @@
<?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\CloudAsset;
class ExportAssetsRequest extends \Google\Collection
{
/**
* Unspecified content type.
*/
public const CONTENT_TYPE_CONTENT_TYPE_UNSPECIFIED = 'CONTENT_TYPE_UNSPECIFIED';
/**
* Resource metadata.
*/
public const CONTENT_TYPE_RESOURCE = 'RESOURCE';
/**
* The actual IAM policy set on a resource.
*/
public const CONTENT_TYPE_IAM_POLICY = 'IAM_POLICY';
/**
* The organization policy set on an asset.
*/
public const CONTENT_TYPE_ORG_POLICY = 'ORG_POLICY';
/**
* The Access Context Manager policy set on an asset.
*/
public const CONTENT_TYPE_ACCESS_POLICY = 'ACCESS_POLICY';
/**
* The runtime OS Inventory information.
*/
public const CONTENT_TYPE_OS_INVENTORY = 'OS_INVENTORY';
/**
* The related resources.
*/
public const CONTENT_TYPE_RELATIONSHIP = 'RELATIONSHIP';
protected $collection_key = 'relationshipTypes';
/**
* A list of asset types to take a snapshot for. For example:
* "compute.googleapis.com/Disk". Regular expressions are also supported. For
* example: * "compute.googleapis.com.*" snapshots resources whose asset type
* starts with "compute.googleapis.com". * ".*Instance" snapshots resources
* whose asset type ends with "Instance". * ".*Instance.*" snapshots resources
* whose asset type contains "Instance". See
* [RE2](https://github.com/google/re2/wiki/Syntax) for all supported regular
* expression syntax. If the regular expression does not match any supported
* asset type, an INVALID_ARGUMENT error will be returned. If specified, only
* matching assets will be returned, otherwise, it will snapshot all asset
* types. See [Introduction to Cloud Asset
* Inventory](https://cloud.google.com/asset-inventory/docs/overview) for all
* supported asset types.
*
* @var string[]
*/
public $assetTypes;
/**
* Asset content type. If not specified, no content but the asset name will be
* returned.
*
* @var string
*/
public $contentType;
protected $outputConfigType = OutputConfig::class;
protected $outputConfigDataType = '';
/**
* Timestamp to take an asset snapshot. This can only be set to a timestamp
* between the current time and the current time minus 35 days (inclusive). If
* not specified, the current time will be used. Due to delays in resource
* data collection and indexing, there is a volatile window during which
* running the same query may get different results.
*
* @var string
*/
public $readTime;
/**
* A list of relationship types to export, for example:
* `INSTANCE_TO_INSTANCEGROUP`. This field should only be specified if
* content_type=RELATIONSHIP. * If specified: it snapshots specified
* relationships. It returns an error if any of the [relationship_types]
* doesn't belong to the supported relationship types of the [asset_types] or
* if any of the [asset_types] doesn't belong to the source types of the
* [relationship_types]. * Otherwise: it snapshots the supported relationships
* for all [asset_types] or returns an error if any of the [asset_types] has
* no relationship support. An unspecified asset types field means all
* supported asset_types. See [Introduction to Cloud Asset
* Inventory](https://cloud.google.com/asset-inventory/docs/overview) for all
* supported asset types and relationship types.
*
* @var string[]
*/
public $relationshipTypes;
/**
* A list of asset types to take a snapshot for. For example:
* "compute.googleapis.com/Disk". Regular expressions are also supported. For
* example: * "compute.googleapis.com.*" snapshots resources whose asset type
* starts with "compute.googleapis.com". * ".*Instance" snapshots resources
* whose asset type ends with "Instance". * ".*Instance.*" snapshots resources
* whose asset type contains "Instance". See
* [RE2](https://github.com/google/re2/wiki/Syntax) for all supported regular
* expression syntax. If the regular expression does not match any supported
* asset type, an INVALID_ARGUMENT error will be returned. If specified, only
* matching assets will be returned, otherwise, it will snapshot all asset
* types. See [Introduction to Cloud Asset
* Inventory](https://cloud.google.com/asset-inventory/docs/overview) for all
* supported asset types.
*
* @param string[] $assetTypes
*/
public function setAssetTypes($assetTypes)
{
$this->assetTypes = $assetTypes;
}
/**
* @return string[]
*/
public function getAssetTypes()
{
return $this->assetTypes;
}
/**
* Asset content type. If not specified, no content but the asset name will be
* returned.
*
* Accepted values: CONTENT_TYPE_UNSPECIFIED, RESOURCE, IAM_POLICY,
* ORG_POLICY, ACCESS_POLICY, OS_INVENTORY, RELATIONSHIP
*
* @param self::CONTENT_TYPE_* $contentType
*/
public function setContentType($contentType)
{
$this->contentType = $contentType;
}
/**
* @return self::CONTENT_TYPE_*
*/
public function getContentType()
{
return $this->contentType;
}
/**
* Required. Output configuration indicating where the results will be output
* to.
*
* @param OutputConfig $outputConfig
*/
public function setOutputConfig(OutputConfig $outputConfig)
{
$this->outputConfig = $outputConfig;
}
/**
* @return OutputConfig
*/
public function getOutputConfig()
{
return $this->outputConfig;
}
/**
* Timestamp to take an asset snapshot. This can only be set to a timestamp
* between the current time and the current time minus 35 days (inclusive). If
* not specified, the current time will be used. Due to delays in resource
* data collection and indexing, there is a volatile window during which
* running the same query may get different results.
*
* @param string $readTime
*/
public function setReadTime($readTime)
{
$this->readTime = $readTime;
}
/**
* @return string
*/
public function getReadTime()
{
return $this->readTime;
}
/**
* A list of relationship types to export, for example:
* `INSTANCE_TO_INSTANCEGROUP`. This field should only be specified if
* content_type=RELATIONSHIP. * If specified: it snapshots specified
* relationships. It returns an error if any of the [relationship_types]
* doesn't belong to the supported relationship types of the [asset_types] or
* if any of the [asset_types] doesn't belong to the source types of the
* [relationship_types]. * Otherwise: it snapshots the supported relationships
* for all [asset_types] or returns an error if any of the [asset_types] has
* no relationship support. An unspecified asset types field means all
* supported asset_types. See [Introduction to Cloud Asset
* Inventory](https://cloud.google.com/asset-inventory/docs/overview) for all
* supported asset types and relationship types.
*
* @param string[] $relationshipTypes
*/
public function setRelationshipTypes($relationshipTypes)
{
$this->relationshipTypes = $relationshipTypes;
}
/**
* @return string[]
*/
public function getRelationshipTypes()
{
return $this->relationshipTypes;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(ExportAssetsRequest::class, 'Google_Service_CloudAsset_ExportAssetsRequest');
+122
View File
@@ -0,0 +1,122 @@
<?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\CloudAsset;
class Expr extends \Google\Model
{
/**
* Optional. Description of the expression. This is a longer text which
* describes the expression, e.g. when hovered over it in a UI.
*
* @var string
*/
public $description;
/**
* Textual representation of an expression in Common Expression Language
* syntax.
*
* @var string
*/
public $expression;
/**
* Optional. String indicating the location of the expression for error
* reporting, e.g. a file name and a position in the file.
*
* @var string
*/
public $location;
/**
* Optional. Title for the expression, i.e. a short string describing its
* purpose. This can be used e.g. in UIs which allow to enter the expression.
*
* @var string
*/
public $title;
/**
* Optional. Description of the expression. This is a longer text which
* describes the expression, e.g. when hovered over it in a UI.
*
* @param string $description
*/
public function setDescription($description)
{
$this->description = $description;
}
/**
* @return string
*/
public function getDescription()
{
return $this->description;
}
/**
* Textual representation of an expression in Common Expression Language
* syntax.
*
* @param string $expression
*/
public function setExpression($expression)
{
$this->expression = $expression;
}
/**
* @return string
*/
public function getExpression()
{
return $this->expression;
}
/**
* Optional. String indicating the location of the expression for error
* reporting, e.g. a file name and a position in the file.
*
* @param string $location
*/
public function setLocation($location)
{
$this->location = $location;
}
/**
* @return string
*/
public function getLocation()
{
return $this->location;
}
/**
* Optional. Title for the expression, i.e. a short string describing its
* purpose. This can be used e.g. in UIs which allow to enter the expression.
*
* @param string $title
*/
public function setTitle($title)
{
$this->title = $title;
}
/**
* @return string
*/
public function getTitle()
{
return $this->title;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(Expr::class, 'Google_Service_CloudAsset_Expr');
+267
View File
@@ -0,0 +1,267 @@
<?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\CloudAsset;
class Feed extends \Google\Collection
{
/**
* Unspecified content type.
*/
public const CONTENT_TYPE_CONTENT_TYPE_UNSPECIFIED = 'CONTENT_TYPE_UNSPECIFIED';
/**
* Resource metadata.
*/
public const CONTENT_TYPE_RESOURCE = 'RESOURCE';
/**
* The actual IAM policy set on a resource.
*/
public const CONTENT_TYPE_IAM_POLICY = 'IAM_POLICY';
/**
* The organization policy set on an asset.
*/
public const CONTENT_TYPE_ORG_POLICY = 'ORG_POLICY';
/**
* The Access Context Manager policy set on an asset.
*/
public const CONTENT_TYPE_ACCESS_POLICY = 'ACCESS_POLICY';
/**
* The runtime OS Inventory information.
*/
public const CONTENT_TYPE_OS_INVENTORY = 'OS_INVENTORY';
/**
* The related resources.
*/
public const CONTENT_TYPE_RELATIONSHIP = 'RELATIONSHIP';
protected $collection_key = 'relationshipTypes';
/**
* A list of the full names of the assets to receive updates. You must specify
* either or both of asset_names and asset_types. Only asset updates matching
* specified asset_names or asset_types are exported to the feed. Example: `//
* compute.googleapis.com/projects/my_project_123/zones/zone1/instances/instan
* ce1`. For a list of the full names for supported asset types, see [Resource
* name format](/asset-inventory/docs/resource-name-format).
*
* @var string[]
*/
public $assetNames;
/**
* A list of types of the assets to receive updates. You must specify either
* or both of asset_names and asset_types. Only asset updates matching
* specified asset_names or asset_types are exported to the feed. Example:
* `"compute.googleapis.com/Disk"` For a list of all supported asset types,
* see [Supported asset types](/asset-inventory/docs/supported-asset-types).
*
* @var string[]
*/
public $assetTypes;
protected $conditionType = Expr::class;
protected $conditionDataType = '';
/**
* Asset content type. If not specified, no content but the asset name and
* type will be returned.
*
* @var string
*/
public $contentType;
protected $feedOutputConfigType = FeedOutputConfig::class;
protected $feedOutputConfigDataType = '';
/**
* Required. The format will be projects/{project_number}/feeds/{client-
* assigned_feed_identifier} or folders/{folder_number}/feeds/{client-
* assigned_feed_identifier} or
* organizations/{organization_number}/feeds/{client-assigned_feed_identifier}
* The client-assigned feed identifier must be unique within the parent
* project/folder/organization.
*
* @var string
*/
public $name;
/**
* A list of relationship types to output, for example:
* `INSTANCE_TO_INSTANCEGROUP`. This field should only be specified if
* content_type=RELATIONSHIP. * If specified: it outputs specified
* relationship updates on the [asset_names] or the [asset_types]. It returns
* an error if any of the [relationship_types] doesn't belong to the supported
* relationship types of the [asset_names] or [asset_types], or any of the
* [asset_names] or the [asset_types] doesn't belong to the source types of
* the [relationship_types]. * Otherwise: it outputs the supported
* relationships of the types of [asset_names] and [asset_types] or returns an
* error if any of the [asset_names] or the [asset_types] has no replationship
* support. See [Introduction to Cloud Asset
* Inventory](https://cloud.google.com/asset-inventory/docs/overview) for all
* supported asset types and relationship types.
*
* @var string[]
*/
public $relationshipTypes;
/**
* A list of the full names of the assets to receive updates. You must specify
* either or both of asset_names and asset_types. Only asset updates matching
* specified asset_names or asset_types are exported to the feed. Example: `//
* compute.googleapis.com/projects/my_project_123/zones/zone1/instances/instan
* ce1`. For a list of the full names for supported asset types, see [Resource
* name format](/asset-inventory/docs/resource-name-format).
*
* @param string[] $assetNames
*/
public function setAssetNames($assetNames)
{
$this->assetNames = $assetNames;
}
/**
* @return string[]
*/
public function getAssetNames()
{
return $this->assetNames;
}
/**
* A list of types of the assets to receive updates. You must specify either
* or both of asset_names and asset_types. Only asset updates matching
* specified asset_names or asset_types are exported to the feed. Example:
* `"compute.googleapis.com/Disk"` For a list of all supported asset types,
* see [Supported asset types](/asset-inventory/docs/supported-asset-types).
*
* @param string[] $assetTypes
*/
public function setAssetTypes($assetTypes)
{
$this->assetTypes = $assetTypes;
}
/**
* @return string[]
*/
public function getAssetTypes()
{
return $this->assetTypes;
}
/**
* A condition which determines whether an asset update should be published.
* If specified, an asset will be returned only when the expression evaluates
* to true. When set, `expression` field in the `Expr` must be a valid [CEL
* expression] (https://github.com/google/cel-spec) on a TemporalAsset with
* name `temporal_asset`. Example: a Feed with expression
* ("temporal_asset.deleted == true") will only publish Asset deletions. Other
* fields of `Expr` are optional. See our [user
* guide](https://cloud.google.com/asset-inventory/docs/monitoring-asset-
* changes-with-condition) for detailed instructions.
*
* @param Expr $condition
*/
public function setCondition(Expr $condition)
{
$this->condition = $condition;
}
/**
* @return Expr
*/
public function getCondition()
{
return $this->condition;
}
/**
* Asset content type. If not specified, no content but the asset name and
* type will be returned.
*
* Accepted values: CONTENT_TYPE_UNSPECIFIED, RESOURCE, IAM_POLICY,
* ORG_POLICY, ACCESS_POLICY, OS_INVENTORY, RELATIONSHIP
*
* @param self::CONTENT_TYPE_* $contentType
*/
public function setContentType($contentType)
{
$this->contentType = $contentType;
}
/**
* @return self::CONTENT_TYPE_*
*/
public function getContentType()
{
return $this->contentType;
}
/**
* Required. Feed output configuration defining where the asset updates are
* published to.
*
* @param FeedOutputConfig $feedOutputConfig
*/
public function setFeedOutputConfig(FeedOutputConfig $feedOutputConfig)
{
$this->feedOutputConfig = $feedOutputConfig;
}
/**
* @return FeedOutputConfig
*/
public function getFeedOutputConfig()
{
return $this->feedOutputConfig;
}
/**
* Required. The format will be projects/{project_number}/feeds/{client-
* assigned_feed_identifier} or folders/{folder_number}/feeds/{client-
* assigned_feed_identifier} or
* organizations/{organization_number}/feeds/{client-assigned_feed_identifier}
* The client-assigned feed identifier must be unique within the parent
* project/folder/organization.
*
* @param string $name
*/
public function setName($name)
{
$this->name = $name;
}
/**
* @return string
*/
public function getName()
{
return $this->name;
}
/**
* A list of relationship types to output, for example:
* `INSTANCE_TO_INSTANCEGROUP`. This field should only be specified if
* content_type=RELATIONSHIP. * If specified: it outputs specified
* relationship updates on the [asset_names] or the [asset_types]. It returns
* an error if any of the [relationship_types] doesn't belong to the supported
* relationship types of the [asset_names] or [asset_types], or any of the
* [asset_names] or the [asset_types] doesn't belong to the source types of
* the [relationship_types]. * Otherwise: it outputs the supported
* relationships of the types of [asset_names] and [asset_types] or returns an
* error if any of the [asset_names] or the [asset_types] has no replationship
* support. See [Introduction to Cloud Asset
* Inventory](https://cloud.google.com/asset-inventory/docs/overview) for all
* supported asset types and relationship types.
*
* @param string[] $relationshipTypes
*/
public function setRelationshipTypes($relationshipTypes)
{
$this->relationshipTypes = $relationshipTypes;
}
/**
* @return string[]
*/
public function getRelationshipTypes()
{
return $this->relationshipTypes;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(Feed::class, 'Google_Service_CloudAsset_Feed');
@@ -0,0 +1,44 @@
<?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\CloudAsset;
class FeedOutputConfig extends \Google\Model
{
protected $pubsubDestinationType = PubsubDestination::class;
protected $pubsubDestinationDataType = '';
/**
* Destination on Pub/Sub.
*
* @param PubsubDestination $pubsubDestination
*/
public function setPubsubDestination(PubsubDestination $pubsubDestination)
{
$this->pubsubDestination = $pubsubDestination;
}
/**
* @return PubsubDestination
*/
public function getPubsubDestination()
{
return $this->pubsubDestination;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(FeedOutputConfig::class, 'Google_Service_CloudAsset_FeedOutputConfig');
@@ -0,0 +1,96 @@
<?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\CloudAsset;
class GcsDestination extends \Google\Model
{
/**
* The URI of the Cloud Storage object. It's the same URI that is used by
* gcloud storage. Example: "gs://bucket_name/object_name". See [Viewing and
* Editing Object Metadata](https://cloud.google.com/storage/docs/viewing-
* editing-metadata) for more information. If the specified Cloud Storage
* object already exists and there is no
* [hold](https://cloud.google.com/storage/docs/object-holds), it will be
* overwritten with the exported result.
*
* @var string
*/
public $uri;
/**
* The URI prefix of all generated Cloud Storage objects. Example:
* "gs://bucket_name/object_name_prefix". Each object URI is in format:
* "gs://bucket_name/object_name_prefix// and only contains assets for that
* type. starts from 0. Example:
* "gs://bucket_name/object_name_prefix/compute.googleapis.com/Disk/0" is the
* first shard of output objects containing all compute.googleapis.com/Disk
* assets. An INVALID_ARGUMENT error will be returned if file with the same
* name "gs://bucket_name/object_name_prefix" already exists.
*
* @var string
*/
public $uriPrefix;
/**
* The URI of the Cloud Storage object. It's the same URI that is used by
* gcloud storage. Example: "gs://bucket_name/object_name". See [Viewing and
* Editing Object Metadata](https://cloud.google.com/storage/docs/viewing-
* editing-metadata) for more information. If the specified Cloud Storage
* object already exists and there is no
* [hold](https://cloud.google.com/storage/docs/object-holds), it will be
* overwritten with the exported result.
*
* @param string $uri
*/
public function setUri($uri)
{
$this->uri = $uri;
}
/**
* @return string
*/
public function getUri()
{
return $this->uri;
}
/**
* The URI prefix of all generated Cloud Storage objects. Example:
* "gs://bucket_name/object_name_prefix". Each object URI is in format:
* "gs://bucket_name/object_name_prefix// and only contains assets for that
* type. starts from 0. Example:
* "gs://bucket_name/object_name_prefix/compute.googleapis.com/Disk/0" is the
* first shard of output objects containing all compute.googleapis.com/Disk
* assets. An INVALID_ARGUMENT error will be returned if file with the same
* name "gs://bucket_name/object_name_prefix" already exists.
*
* @param string $uriPrefix
*/
public function setUriPrefix($uriPrefix)
{
$this->uriPrefix = $uriPrefix;
}
/**
* @return string
*/
public function getUriPrefix()
{
return $this->uriPrefix;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(GcsDestination::class, 'Google_Service_CloudAsset_GcsDestination');
@@ -0,0 +1,88 @@
<?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\CloudAsset;
class GoogleCloudAssetV1Access extends \Google\Model
{
protected $analysisStateType = IamPolicyAnalysisState::class;
protected $analysisStateDataType = '';
/**
* The permission.
*
* @var string
*/
public $permission;
/**
* The role.
*
* @var string
*/
public $role;
/**
* The analysis state of this access.
*
* @param IamPolicyAnalysisState $analysisState
*/
public function setAnalysisState(IamPolicyAnalysisState $analysisState)
{
$this->analysisState = $analysisState;
}
/**
* @return IamPolicyAnalysisState
*/
public function getAnalysisState()
{
return $this->analysisState;
}
/**
* The permission.
*
* @param string $permission
*/
public function setPermission($permission)
{
$this->permission = $permission;
}
/**
* @return string
*/
public function getPermission()
{
return $this->permission;
}
/**
* The role.
*
* @param string $role
*/
public function setRole($role)
{
$this->role = $role;
}
/**
* @return string
*/
public function getRole()
{
return $this->role;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(GoogleCloudAssetV1Access::class, 'Google_Service_CloudAsset_GoogleCloudAssetV1Access');
@@ -0,0 +1,108 @@
<?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\CloudAsset;
class GoogleCloudAssetV1AccessControlList extends \Google\Collection
{
protected $collection_key = 'resources';
protected $accessesType = GoogleCloudAssetV1Access::class;
protected $accessesDataType = 'array';
protected $conditionEvaluationType = ConditionEvaluation::class;
protected $conditionEvaluationDataType = '';
protected $resourceEdgesType = GoogleCloudAssetV1Edge::class;
protected $resourceEdgesDataType = 'array';
protected $resourcesType = GoogleCloudAssetV1Resource::class;
protected $resourcesDataType = 'array';
/**
* The accesses that match one of the following conditions: - The
* access_selector, if it is specified in request; - Otherwise, access
* specifiers reachable from the policy binding's role.
*
* @param GoogleCloudAssetV1Access[] $accesses
*/
public function setAccesses($accesses)
{
$this->accesses = $accesses;
}
/**
* @return GoogleCloudAssetV1Access[]
*/
public function getAccesses()
{
return $this->accesses;
}
/**
* Condition evaluation for this AccessControlList, if there is a condition
* defined in the above IAM policy binding.
*
* @param ConditionEvaluation $conditionEvaluation
*/
public function setConditionEvaluation(ConditionEvaluation $conditionEvaluation)
{
$this->conditionEvaluation = $conditionEvaluation;
}
/**
* @return ConditionEvaluation
*/
public function getConditionEvaluation()
{
return $this->conditionEvaluation;
}
/**
* Resource edges of the graph starting from the policy attached resource to
* any descendant resources. The Edge.source_node contains the full resource
* name of a parent resource and Edge.target_node contains the full resource
* name of a child resource. This field is present only if the
* output_resource_edges option is enabled in request.
*
* @param GoogleCloudAssetV1Edge[] $resourceEdges
*/
public function setResourceEdges($resourceEdges)
{
$this->resourceEdges = $resourceEdges;
}
/**
* @return GoogleCloudAssetV1Edge[]
*/
public function getResourceEdges()
{
return $this->resourceEdges;
}
/**
* The resources that match one of the following conditions: - The
* resource_selector, if it is specified in request; - Otherwise, resources
* reachable from the policy attached resource.
*
* @param GoogleCloudAssetV1Resource[] $resources
*/
public function setResources($resources)
{
$this->resources = $resources;
}
/**
* @return GoogleCloudAssetV1Resource[]
*/
public function getResources()
{
return $this->resources;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(GoogleCloudAssetV1AccessControlList::class, 'Google_Service_CloudAsset_GoogleCloudAssetV1AccessControlList');
@@ -0,0 +1,109 @@
<?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\CloudAsset;
class GoogleCloudAssetV1AnalyzeOrgPolicyGovernedAssetsResponseGovernedAsset extends \Google\Collection
{
protected $collection_key = 'policyBundle';
protected $consolidatedPolicyType = AnalyzerOrgPolicy::class;
protected $consolidatedPolicyDataType = '';
protected $governedIamPolicyType = GoogleCloudAssetV1AnalyzeOrgPolicyGovernedAssetsResponseGovernedIamPolicy::class;
protected $governedIamPolicyDataType = '';
protected $governedResourceType = GoogleCloudAssetV1AnalyzeOrgPolicyGovernedAssetsResponseGovernedResource::class;
protected $governedResourceDataType = '';
protected $policyBundleType = AnalyzerOrgPolicy::class;
protected $policyBundleDataType = 'array';
/**
* The consolidated policy for the analyzed asset. The consolidated policy is
* computed by merging and evaluating
* AnalyzeOrgPolicyGovernedAssetsResponse.GovernedAsset.policy_bundle. The
* evaluation will respect the organization policy [hierarchy
* rules](https://cloud.google.com/resource-manager/docs/organization-
* policy/understanding-hierarchy).
*
* @param AnalyzerOrgPolicy $consolidatedPolicy
*/
public function setConsolidatedPolicy(AnalyzerOrgPolicy $consolidatedPolicy)
{
$this->consolidatedPolicy = $consolidatedPolicy;
}
/**
* @return AnalyzerOrgPolicy
*/
public function getConsolidatedPolicy()
{
return $this->consolidatedPolicy;
}
/**
* An IAM policy governed by the organization policies of the
* AnalyzeOrgPolicyGovernedAssetsRequest.constraint.
*
* @param GoogleCloudAssetV1AnalyzeOrgPolicyGovernedAssetsResponseGovernedIamPolicy $governedIamPolicy
*/
public function setGovernedIamPolicy(GoogleCloudAssetV1AnalyzeOrgPolicyGovernedAssetsResponseGovernedIamPolicy $governedIamPolicy)
{
$this->governedIamPolicy = $governedIamPolicy;
}
/**
* @return GoogleCloudAssetV1AnalyzeOrgPolicyGovernedAssetsResponseGovernedIamPolicy
*/
public function getGovernedIamPolicy()
{
return $this->governedIamPolicy;
}
/**
* A Google Cloud resource governed by the organization policies of the
* AnalyzeOrgPolicyGovernedAssetsRequest.constraint.
*
* @param GoogleCloudAssetV1AnalyzeOrgPolicyGovernedAssetsResponseGovernedResource $governedResource
*/
public function setGovernedResource(GoogleCloudAssetV1AnalyzeOrgPolicyGovernedAssetsResponseGovernedResource $governedResource)
{
$this->governedResource = $governedResource;
}
/**
* @return GoogleCloudAssetV1AnalyzeOrgPolicyGovernedAssetsResponseGovernedResource
*/
public function getGovernedResource()
{
return $this->governedResource;
}
/**
* The ordered list of all organization policies from the
* consolidated_policy.attached_resource to the scope specified in the
* request. If the constraint is defined with default policy, it will also
* appear in the list.
*
* @param AnalyzerOrgPolicy[] $policyBundle
*/
public function setPolicyBundle($policyBundle)
{
$this->policyBundle = $policyBundle;
}
/**
* @return AnalyzerOrgPolicy[]
*/
public function getPolicyBundle()
{
return $this->policyBundle;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(GoogleCloudAssetV1AnalyzeOrgPolicyGovernedAssetsResponseGovernedAsset::class, 'Google_Service_CloudAsset_GoogleCloudAssetV1AnalyzeOrgPolicyGovernedAssetsResponseGovernedAsset');
@@ -0,0 +1,183 @@
<?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\CloudAsset;
class GoogleCloudAssetV1AnalyzeOrgPolicyGovernedAssetsResponseGovernedIamPolicy extends \Google\Collection
{
protected $collection_key = 'folders';
/**
* The asset type of the
* AnalyzeOrgPolicyGovernedAssetsResponse.GovernedIamPolicy.attached_resource.
* Example: `cloudresourcemanager.googleapis.com/Project` See [Cloud Asset
* Inventory Supported Asset Types](https://cloud.google.com/asset-
* inventory/docs/supported-asset-types) for all supported asset types.
*
* @var string
*/
public $assetType;
/**
* The full resource name of the resource on which this IAM policy is set.
* Example: `//compute.googleapis.com/projects/my_project_123/zones/zone1/inst
* ances/instance1`. See [Cloud Asset Inventory Resource Name
* Format](https://cloud.google.com/asset-inventory/docs/resource-name-format)
* for more information.
*
* @var string
*/
public $attachedResource;
/**
* The folder(s) that this IAM policy belongs to, in the format of
* folders/{FOLDER_NUMBER}. This field is available when the IAM policy
* belongs (directly or cascadingly) to one or more folders.
*
* @var string[]
*/
public $folders;
/**
* The organization that this IAM policy belongs to, in the format of
* organizations/{ORGANIZATION_NUMBER}. This field is available when the IAM
* policy belongs (directly or cascadingly) to an organization.
*
* @var string
*/
public $organization;
protected $policyType = Policy::class;
protected $policyDataType = '';
/**
* The project that this IAM policy belongs to, in the format of
* projects/{PROJECT_NUMBER}. This field is available when the IAM policy
* belongs to a project.
*
* @var string
*/
public $project;
/**
* The asset type of the
* AnalyzeOrgPolicyGovernedAssetsResponse.GovernedIamPolicy.attached_resource.
* Example: `cloudresourcemanager.googleapis.com/Project` See [Cloud Asset
* Inventory Supported Asset Types](https://cloud.google.com/asset-
* inventory/docs/supported-asset-types) for all supported asset types.
*
* @param string $assetType
*/
public function setAssetType($assetType)
{
$this->assetType = $assetType;
}
/**
* @return string
*/
public function getAssetType()
{
return $this->assetType;
}
/**
* The full resource name of the resource on which this IAM policy is set.
* Example: `//compute.googleapis.com/projects/my_project_123/zones/zone1/inst
* ances/instance1`. See [Cloud Asset Inventory Resource Name
* Format](https://cloud.google.com/asset-inventory/docs/resource-name-format)
* for more information.
*
* @param string $attachedResource
*/
public function setAttachedResource($attachedResource)
{
$this->attachedResource = $attachedResource;
}
/**
* @return string
*/
public function getAttachedResource()
{
return $this->attachedResource;
}
/**
* The folder(s) that this IAM policy belongs to, in the format of
* folders/{FOLDER_NUMBER}. This field is available when the IAM policy
* belongs (directly or cascadingly) to one or more folders.
*
* @param string[] $folders
*/
public function setFolders($folders)
{
$this->folders = $folders;
}
/**
* @return string[]
*/
public function getFolders()
{
return $this->folders;
}
/**
* The organization that this IAM policy belongs to, in the format of
* organizations/{ORGANIZATION_NUMBER}. This field is available when the IAM
* policy belongs (directly or cascadingly) to an organization.
*
* @param string $organization
*/
public function setOrganization($organization)
{
$this->organization = $organization;
}
/**
* @return string
*/
public function getOrganization()
{
return $this->organization;
}
/**
* The IAM policy directly set on the given resource.
*
* @param Policy $policy
*/
public function setPolicy(Policy $policy)
{
$this->policy = $policy;
}
/**
* @return Policy
*/
public function getPolicy()
{
return $this->policy;
}
/**
* The project that this IAM policy belongs to, in the format of
* projects/{PROJECT_NUMBER}. This field is available when the IAM policy
* belongs to a project.
*
* @param string $project
*/
public function setProject($project)
{
$this->project = $project;
}
/**
* @return string
*/
public function getProject()
{
return $this->project;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(GoogleCloudAssetV1AnalyzeOrgPolicyGovernedAssetsResponseGovernedIamPolicy::class, 'Google_Service_CloudAsset_GoogleCloudAssetV1AnalyzeOrgPolicyGovernedAssetsResponseGovernedIamPolicy');
@@ -0,0 +1,203 @@
<?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\CloudAsset;
class GoogleCloudAssetV1AnalyzeOrgPolicyGovernedAssetsResponseGovernedResource extends \Google\Collection
{
protected $collection_key = 'folders';
/**
* The asset type of the
* AnalyzeOrgPolicyGovernedAssetsResponse.GovernedResource.full_resource_name
* Example: `cloudresourcemanager.googleapis.com/Project` See [Cloud Asset
* Inventory Supported Asset Types](https://cloud.google.com/asset-
* inventory/docs/supported-asset-types) for all supported asset types.
*
* @var string
*/
public $assetType;
protected $effectiveTagsType = EffectiveTagDetails::class;
protected $effectiveTagsDataType = 'array';
/**
* The folder(s) that this resource belongs to, in the format of
* folders/{FOLDER_NUMBER}. This field is available when the resource belongs
* (directly or cascadingly) to one or more folders.
*
* @var string[]
*/
public $folders;
/**
* The [full resource name] (https://cloud.google.com/asset-
* inventory/docs/resource-name-format) of the Google Cloud resource.
*
* @var string
*/
public $fullResourceName;
/**
* The organization that this resource belongs to, in the format of
* organizations/{ORGANIZATION_NUMBER}. This field is available when the
* resource belongs (directly or cascadingly) to an organization.
*
* @var string
*/
public $organization;
/**
* The [full resource name] (https://cloud.google.com/asset-
* inventory/docs/resource-name-format) of the parent of
* AnalyzeOrgPolicyGovernedAssetsResponse.GovernedResource.full_resource_name.
*
* @var string
*/
public $parent;
/**
* The project that this resource belongs to, in the format of
* projects/{PROJECT_NUMBER}. This field is available when the resource
* belongs to a project.
*
* @var string
*/
public $project;
/**
* The asset type of the
* AnalyzeOrgPolicyGovernedAssetsResponse.GovernedResource.full_resource_name
* Example: `cloudresourcemanager.googleapis.com/Project` See [Cloud Asset
* Inventory Supported Asset Types](https://cloud.google.com/asset-
* inventory/docs/supported-asset-types) for all supported asset types.
*
* @param string $assetType
*/
public function setAssetType($assetType)
{
$this->assetType = $assetType;
}
/**
* @return string
*/
public function getAssetType()
{
return $this->assetType;
}
/**
* The effective tags on this resource.
*
* @param EffectiveTagDetails[] $effectiveTags
*/
public function setEffectiveTags($effectiveTags)
{
$this->effectiveTags = $effectiveTags;
}
/**
* @return EffectiveTagDetails[]
*/
public function getEffectiveTags()
{
return $this->effectiveTags;
}
/**
* The folder(s) that this resource belongs to, in the format of
* folders/{FOLDER_NUMBER}. This field is available when the resource belongs
* (directly or cascadingly) to one or more folders.
*
* @param string[] $folders
*/
public function setFolders($folders)
{
$this->folders = $folders;
}
/**
* @return string[]
*/
public function getFolders()
{
return $this->folders;
}
/**
* The [full resource name] (https://cloud.google.com/asset-
* inventory/docs/resource-name-format) of the Google Cloud resource.
*
* @param string $fullResourceName
*/
public function setFullResourceName($fullResourceName)
{
$this->fullResourceName = $fullResourceName;
}
/**
* @return string
*/
public function getFullResourceName()
{
return $this->fullResourceName;
}
/**
* The organization that this resource belongs to, in the format of
* organizations/{ORGANIZATION_NUMBER}. This field is available when the
* resource belongs (directly or cascadingly) to an organization.
*
* @param string $organization
*/
public function setOrganization($organization)
{
$this->organization = $organization;
}
/**
* @return string
*/
public function getOrganization()
{
return $this->organization;
}
/**
* The [full resource name] (https://cloud.google.com/asset-
* inventory/docs/resource-name-format) of the parent of
* AnalyzeOrgPolicyGovernedAssetsResponse.GovernedResource.full_resource_name.
*
* @param string $parent
*/
public function setParent($parent)
{
$this->parent = $parent;
}
/**
* @return string
*/
public function getParent()
{
return $this->parent;
}
/**
* The project that this resource belongs to, in the format of
* projects/{PROJECT_NUMBER}. This field is available when the resource
* belongs to a project.
*
* @param string $project
*/
public function setProject($project)
{
$this->project = $project;
}
/**
* @return string
*/
public function getProject()
{
return $this->project;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(GoogleCloudAssetV1AnalyzeOrgPolicyGovernedAssetsResponseGovernedResource::class, 'Google_Service_CloudAsset_GoogleCloudAssetV1AnalyzeOrgPolicyGovernedAssetsResponseGovernedResource');
@@ -0,0 +1,162 @@
<?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\CloudAsset;
class GoogleCloudAssetV1BigQueryDestination extends \Google\Model
{
/**
* Unspecified partition key. Tables won't be partitioned using this option.
*/
public const PARTITION_KEY_PARTITION_KEY_UNSPECIFIED = 'PARTITION_KEY_UNSPECIFIED';
/**
* The time when the request is received. If specified as partition key, the
* result table(s) is partitioned by the RequestTime column, an additional
* timestamp column representing when the request was received.
*/
public const PARTITION_KEY_REQUEST_TIME = 'REQUEST_TIME';
/**
* Required. The BigQuery dataset in format
* "projects/projectId/datasets/datasetId", to which the analysis results
* should be exported. If this dataset does not exist, the export call will
* return an INVALID_ARGUMENT error.
*
* @var string
*/
public $dataset;
/**
* The partition key for BigQuery partitioned table.
*
* @var string
*/
public $partitionKey;
/**
* Required. The prefix of the BigQuery tables to which the analysis results
* will be written. Tables will be created based on this table_prefix if not
* exist: * _analysis table will contain export operation's metadata. *
* _analysis_result will contain all the IamPolicyAnalysisResult. When
* [partition_key] is specified, both tables will be partitioned based on the
* [partition_key].
*
* @var string
*/
public $tablePrefix;
/**
* Optional. Specifies the action that occurs if the destination table or
* partition already exists. The following values are supported: *
* WRITE_TRUNCATE: If the table or partition already exists, BigQuery
* overwrites the entire table or all the partitions data. * WRITE_APPEND: If
* the table or partition already exists, BigQuery appends the data to the
* table or the latest partition. * WRITE_EMPTY: If the table already exists
* and contains data, an error is returned. The default value is WRITE_APPEND.
* Each action is atomic and only occurs if BigQuery is able to complete the
* job successfully. Details are at
* https://cloud.google.com/bigquery/docs/loading-data-
* local#appending_to_or_overwriting_a_table_using_a_local_file.
*
* @var string
*/
public $writeDisposition;
/**
* Required. The BigQuery dataset in format
* "projects/projectId/datasets/datasetId", to which the analysis results
* should be exported. If this dataset does not exist, the export call will
* return an INVALID_ARGUMENT error.
*
* @param string $dataset
*/
public function setDataset($dataset)
{
$this->dataset = $dataset;
}
/**
* @return string
*/
public function getDataset()
{
return $this->dataset;
}
/**
* The partition key for BigQuery partitioned table.
*
* Accepted values: PARTITION_KEY_UNSPECIFIED, REQUEST_TIME
*
* @param self::PARTITION_KEY_* $partitionKey
*/
public function setPartitionKey($partitionKey)
{
$this->partitionKey = $partitionKey;
}
/**
* @return self::PARTITION_KEY_*
*/
public function getPartitionKey()
{
return $this->partitionKey;
}
/**
* Required. The prefix of the BigQuery tables to which the analysis results
* will be written. Tables will be created based on this table_prefix if not
* exist: * _analysis table will contain export operation's metadata. *
* _analysis_result will contain all the IamPolicyAnalysisResult. When
* [partition_key] is specified, both tables will be partitioned based on the
* [partition_key].
*
* @param string $tablePrefix
*/
public function setTablePrefix($tablePrefix)
{
$this->tablePrefix = $tablePrefix;
}
/**
* @return string
*/
public function getTablePrefix()
{
return $this->tablePrefix;
}
/**
* Optional. Specifies the action that occurs if the destination table or
* partition already exists. The following values are supported: *
* WRITE_TRUNCATE: If the table or partition already exists, BigQuery
* overwrites the entire table or all the partitions data. * WRITE_APPEND: If
* the table or partition already exists, BigQuery appends the data to the
* table or the latest partition. * WRITE_EMPTY: If the table already exists
* and contains data, an error is returned. The default value is WRITE_APPEND.
* Each action is atomic and only occurs if BigQuery is able to complete the
* job successfully. Details are at
* https://cloud.google.com/bigquery/docs/loading-data-
* local#appending_to_or_overwriting_a_table_using_a_local_file.
*
* @param string $writeDisposition
*/
public function setWriteDisposition($writeDisposition)
{
$this->writeDisposition = $writeDisposition;
}
/**
* @return string
*/
public function getWriteDisposition()
{
return $this->writeDisposition;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(GoogleCloudAssetV1BigQueryDestination::class, 'Google_Service_CloudAsset_GoogleCloudAssetV1BigQueryDestination');
@@ -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\CloudAsset;
class GoogleCloudAssetV1BooleanConstraint extends \Google\Model
{
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(GoogleCloudAssetV1BooleanConstraint::class, 'Google_Service_CloudAsset_GoogleCloudAssetV1BooleanConstraint');
@@ -0,0 +1,172 @@
<?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\CloudAsset;
class GoogleCloudAssetV1Constraint extends \Google\Model
{
/**
* This is only used for distinguishing unset values and should never be used.
*/
public const CONSTRAINT_DEFAULT_CONSTRAINT_DEFAULT_UNSPECIFIED = 'CONSTRAINT_DEFAULT_UNSPECIFIED';
/**
* Indicates that all values are allowed for list constraints. Indicates that
* enforcement is off for boolean constraints.
*/
public const CONSTRAINT_DEFAULT_ALLOW = 'ALLOW';
/**
* Indicates that all values are denied for list constraints. Indicates that
* enforcement is on for boolean constraints.
*/
public const CONSTRAINT_DEFAULT_DENY = 'DENY';
protected $booleanConstraintType = GoogleCloudAssetV1BooleanConstraint::class;
protected $booleanConstraintDataType = '';
/**
* The evaluation behavior of this constraint in the absence of 'Policy'.
*
* @var string
*/
public $constraintDefault;
/**
* Detailed description of what this `Constraint` controls as well as how and
* where it is enforced.
*
* @var string
*/
public $description;
/**
* The human readable name of the constraint.
*
* @var string
*/
public $displayName;
protected $listConstraintType = GoogleCloudAssetV1ListConstraint::class;
protected $listConstraintDataType = '';
/**
* The unique name of the constraint. Format of the name should be *
* `constraints/{constraint_name}` For example,
* `constraints/compute.disableSerialPortAccess`.
*
* @var string
*/
public $name;
/**
* Defines this constraint as being a BooleanConstraint.
*
* @param GoogleCloudAssetV1BooleanConstraint $booleanConstraint
*/
public function setBooleanConstraint(GoogleCloudAssetV1BooleanConstraint $booleanConstraint)
{
$this->booleanConstraint = $booleanConstraint;
}
/**
* @return GoogleCloudAssetV1BooleanConstraint
*/
public function getBooleanConstraint()
{
return $this->booleanConstraint;
}
/**
* The evaluation behavior of this constraint in the absence of 'Policy'.
*
* Accepted values: CONSTRAINT_DEFAULT_UNSPECIFIED, ALLOW, DENY
*
* @param self::CONSTRAINT_DEFAULT_* $constraintDefault
*/
public function setConstraintDefault($constraintDefault)
{
$this->constraintDefault = $constraintDefault;
}
/**
* @return self::CONSTRAINT_DEFAULT_*
*/
public function getConstraintDefault()
{
return $this->constraintDefault;
}
/**
* Detailed description of what this `Constraint` controls as well as how and
* where it is enforced.
*
* @param string $description
*/
public function setDescription($description)
{
$this->description = $description;
}
/**
* @return string
*/
public function getDescription()
{
return $this->description;
}
/**
* The human readable name of the constraint.
*
* @param string $displayName
*/
public function setDisplayName($displayName)
{
$this->displayName = $displayName;
}
/**
* @return string
*/
public function getDisplayName()
{
return $this->displayName;
}
/**
* Defines this constraint as being a ListConstraint.
*
* @param GoogleCloudAssetV1ListConstraint $listConstraint
*/
public function setListConstraint(GoogleCloudAssetV1ListConstraint $listConstraint)
{
$this->listConstraint = $listConstraint;
}
/**
* @return GoogleCloudAssetV1ListConstraint
*/
public function getListConstraint()
{
return $this->listConstraint;
}
/**
* The unique name of the constraint. Format of the name should be *
* `constraints/{constraint_name}` For example,
* `constraints/compute.disableSerialPortAccess`.
*
* @param string $name
*/
public function setName($name)
{
$this->name = $name;
}
/**
* @return string
*/
public function getName()
{
return $this->name;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(GoogleCloudAssetV1Constraint::class, 'Google_Service_CloudAsset_GoogleCloudAssetV1Constraint');
@@ -0,0 +1,207 @@
<?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\CloudAsset;
class GoogleCloudAssetV1CustomConstraint extends \Google\Collection
{
/**
* Unspecified. Will results in user error.
*/
public const ACTION_TYPE_ACTION_TYPE_UNSPECIFIED = 'ACTION_TYPE_UNSPECIFIED';
/**
* Allowed action type.
*/
public const ACTION_TYPE_ALLOW = 'ALLOW';
/**
* Deny action type.
*/
public const ACTION_TYPE_DENY = 'DENY';
protected $collection_key = 'resourceTypes';
/**
* Allow or deny type.
*
* @var string
*/
public $actionType;
/**
* Organization Policy condition/expression. For example:
* `resource.instanceName.matches("(production|test)_(.+_)?[\d]+")'` or,
* `resource.management.auto_upgrade == true`
*
* @var string
*/
public $condition;
/**
* Detailed information about this custom policy constraint.
*
* @var string
*/
public $description;
/**
* One line display name for the UI.
*
* @var string
*/
public $displayName;
/**
* All the operations being applied for this constraint.
*
* @var string[]
*/
public $methodTypes;
/**
* Name of the constraint. This is unique within the organization. Format of
* the name should be *
* `organizations/{organization_id}/customConstraints/{custom_constraint_id}`
* Example : "organizations/123/customConstraints/custom.createOnlyE2TypeVms"
*
* @var string
*/
public $name;
/**
* The Resource Instance type on which this policy applies to. Format will be
* of the form : "/" Example: * `compute.googleapis.com/Instance`.
*
* @var string[]
*/
public $resourceTypes;
/**
* Allow or deny type.
*
* Accepted values: ACTION_TYPE_UNSPECIFIED, ALLOW, DENY
*
* @param self::ACTION_TYPE_* $actionType
*/
public function setActionType($actionType)
{
$this->actionType = $actionType;
}
/**
* @return self::ACTION_TYPE_*
*/
public function getActionType()
{
return $this->actionType;
}
/**
* Organization Policy condition/expression. For example:
* `resource.instanceName.matches("(production|test)_(.+_)?[\d]+")'` or,
* `resource.management.auto_upgrade == true`
*
* @param string $condition
*/
public function setCondition($condition)
{
$this->condition = $condition;
}
/**
* @return string
*/
public function getCondition()
{
return $this->condition;
}
/**
* Detailed information about this custom policy constraint.
*
* @param string $description
*/
public function setDescription($description)
{
$this->description = $description;
}
/**
* @return string
*/
public function getDescription()
{
return $this->description;
}
/**
* One line display name for the UI.
*
* @param string $displayName
*/
public function setDisplayName($displayName)
{
$this->displayName = $displayName;
}
/**
* @return string
*/
public function getDisplayName()
{
return $this->displayName;
}
/**
* All the operations being applied for this constraint.
*
* @param string[] $methodTypes
*/
public function setMethodTypes($methodTypes)
{
$this->methodTypes = $methodTypes;
}
/**
* @return string[]
*/
public function getMethodTypes()
{
return $this->methodTypes;
}
/**
* Name of the constraint. This is unique within the organization. Format of
* the name should be *
* `organizations/{organization_id}/customConstraints/{custom_constraint_id}`
* Example : "organizations/123/customConstraints/custom.createOnlyE2TypeVms"
*
* @param string $name
*/
public function setName($name)
{
$this->name = $name;
}
/**
* @return string
*/
public function getName()
{
return $this->name;
}
/**
* The Resource Instance type on which this policy applies to. Format will be
* of the form : "/" Example: * `compute.googleapis.com/Instance`.
*
* @param string[] $resourceTypes
*/
public function setResourceTypes($resourceTypes)
{
$this->resourceTypes = $resourceTypes;
}
/**
* @return string[]
*/
public function getResourceTypes()
{
return $this->resourceTypes;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(GoogleCloudAssetV1CustomConstraint::class, 'Google_Service_CloudAsset_GoogleCloudAssetV1CustomConstraint');
@@ -0,0 +1,62 @@
<?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\CloudAsset;
class GoogleCloudAssetV1DeniedAccessAccess extends \Google\Model
{
/**
* @var string
*/
public $permission;
/**
* @var string
*/
public $role;
/**
* @param string
*/
public function setPermission($permission)
{
$this->permission = $permission;
}
/**
* @return string
*/
public function getPermission()
{
return $this->permission;
}
/**
* @param string
*/
public function setRole($role)
{
$this->role = $role;
}
/**
* @return string
*/
public function getRole()
{
return $this->role;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(GoogleCloudAssetV1DeniedAccessAccess::class, 'Google_Service_CloudAsset_GoogleCloudAssetV1DeniedAccessAccess');
@@ -0,0 +1,74 @@
<?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\CloudAsset;
class GoogleCloudAssetV1DeniedAccessAccessTuple extends \Google\Model
{
protected $accessType = GoogleCloudAssetV1DeniedAccessAccess::class;
protected $accessDataType = '';
protected $identityType = GoogleCloudAssetV1DeniedAccessIdentity::class;
protected $identityDataType = '';
protected $resourceType = GoogleCloudAssetV1DeniedAccessResource::class;
protected $resourceDataType = '';
/**
* @param GoogleCloudAssetV1DeniedAccessAccess
*/
public function setAccess(GoogleCloudAssetV1DeniedAccessAccess $access)
{
$this->access = $access;
}
/**
* @return GoogleCloudAssetV1DeniedAccessAccess
*/
public function getAccess()
{
return $this->access;
}
/**
* @param GoogleCloudAssetV1DeniedAccessIdentity
*/
public function setIdentity(GoogleCloudAssetV1DeniedAccessIdentity $identity)
{
$this->identity = $identity;
}
/**
* @return GoogleCloudAssetV1DeniedAccessIdentity
*/
public function getIdentity()
{
return $this->identity;
}
/**
* @param GoogleCloudAssetV1DeniedAccessResource
*/
public function setResource(GoogleCloudAssetV1DeniedAccessResource $resource)
{
$this->resource = $resource;
}
/**
* @return GoogleCloudAssetV1DeniedAccessResource
*/
public function getResource()
{
return $this->resource;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(GoogleCloudAssetV1DeniedAccessAccessTuple::class, 'Google_Service_CloudAsset_GoogleCloudAssetV1DeniedAccessAccessTuple');
@@ -0,0 +1,109 @@
<?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\CloudAsset;
class GoogleCloudAssetV1DeniedAccessDenyDetail extends \Google\Collection
{
protected $collection_key = 'resources';
protected $accessesType = GoogleCloudAssetV1DeniedAccessAccess::class;
protected $accessesDataType = 'array';
protected $denyRuleType = GoogleIamV2DenyRule::class;
protected $denyRuleDataType = '';
/**
* @var bool
*/
public $fullyDenied;
protected $identitiesType = GoogleCloudAssetV1DeniedAccessIdentity::class;
protected $identitiesDataType = 'array';
protected $resourcesType = GoogleCloudAssetV1DeniedAccessResource::class;
protected $resourcesDataType = 'array';
/**
* @param GoogleCloudAssetV1DeniedAccessAccess[]
*/
public function setAccesses($accesses)
{
$this->accesses = $accesses;
}
/**
* @return GoogleCloudAssetV1DeniedAccessAccess[]
*/
public function getAccesses()
{
return $this->accesses;
}
/**
* @param GoogleIamV2DenyRule
*/
public function setDenyRule(GoogleIamV2DenyRule $denyRule)
{
$this->denyRule = $denyRule;
}
/**
* @return GoogleIamV2DenyRule
*/
public function getDenyRule()
{
return $this->denyRule;
}
/**
* @param bool
*/
public function setFullyDenied($fullyDenied)
{
$this->fullyDenied = $fullyDenied;
}
/**
* @return bool
*/
public function getFullyDenied()
{
return $this->fullyDenied;
}
/**
* @param GoogleCloudAssetV1DeniedAccessIdentity[]
*/
public function setIdentities($identities)
{
$this->identities = $identities;
}
/**
* @return GoogleCloudAssetV1DeniedAccessIdentity[]
*/
public function getIdentities()
{
return $this->identities;
}
/**
* @param GoogleCloudAssetV1DeniedAccessResource[]
*/
public function setResources($resources)
{
$this->resources = $resources;
}
/**
* @return GoogleCloudAssetV1DeniedAccessResource[]
*/
public function getResources()
{
return $this->resources;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(GoogleCloudAssetV1DeniedAccessDenyDetail::class, 'Google_Service_CloudAsset_GoogleCloudAssetV1DeniedAccessDenyDetail');
@@ -0,0 +1,44 @@
<?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\CloudAsset;
class GoogleCloudAssetV1DeniedAccessIdentity extends \Google\Model
{
/**
* @var string
*/
public $name;
/**
* @param string
*/
public function setName($name)
{
$this->name = $name;
}
/**
* @return string
*/
public function getName()
{
return $this->name;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(GoogleCloudAssetV1DeniedAccessIdentity::class, 'Google_Service_CloudAsset_GoogleCloudAssetV1DeniedAccessIdentity');
@@ -0,0 +1,44 @@
<?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\CloudAsset;
class GoogleCloudAssetV1DeniedAccessResource extends \Google\Model
{
/**
* @var string
*/
public $fullResourceName;
/**
* @param string
*/
public function setFullResourceName($fullResourceName)
{
$this->fullResourceName = $fullResourceName;
}
/**
* @return string
*/
public function getFullResourceName()
{
return $this->fullResourceName;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(GoogleCloudAssetV1DeniedAccessResource::class, 'Google_Service_CloudAsset_GoogleCloudAssetV1DeniedAccessResource');
@@ -0,0 +1,74 @@
<?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\CloudAsset;
class GoogleCloudAssetV1Edge extends \Google\Model
{
/**
* The source node of the edge. For example, it could be a full resource name
* for a resource node or an email of an identity.
*
* @var string
*/
public $sourceNode;
/**
* The target node of the edge. For example, it could be a full resource name
* for a resource node or an email of an identity.
*
* @var string
*/
public $targetNode;
/**
* The source node of the edge. For example, it could be a full resource name
* for a resource node or an email of an identity.
*
* @param string $sourceNode
*/
public function setSourceNode($sourceNode)
{
$this->sourceNode = $sourceNode;
}
/**
* @return string
*/
public function getSourceNode()
{
return $this->sourceNode;
}
/**
* The target node of the edge. For example, it could be a full resource name
* for a resource node or an email of an identity.
*
* @param string $targetNode
*/
public function setTargetNode($targetNode)
{
$this->targetNode = $targetNode;
}
/**
* @return string
*/
public function getTargetNode()
{
return $this->targetNode;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(GoogleCloudAssetV1Edge::class, 'Google_Service_CloudAsset_GoogleCloudAssetV1Edge');
@@ -0,0 +1,60 @@
<?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\CloudAsset;
class GoogleCloudAssetV1GcsDestination extends \Google\Model
{
/**
* Required. The URI of the Cloud Storage object. It's the same URI that is
* used by gcloud storage. Example: "gs://bucket_name/object_name". See
* [Viewing and Editing Object
* Metadata](https://cloud.google.com/storage/docs/viewing-editing-metadata)
* for more information. If the specified Cloud Storage object already exists
* and there is no [hold](https://cloud.google.com/storage/docs/object-holds),
* it will be overwritten with the analysis result.
*
* @var string
*/
public $uri;
/**
* Required. The URI of the Cloud Storage object. It's the same URI that is
* used by gcloud storage. Example: "gs://bucket_name/object_name". See
* [Viewing and Editing Object
* Metadata](https://cloud.google.com/storage/docs/viewing-editing-metadata)
* for more information. If the specified Cloud Storage object already exists
* and there is no [hold](https://cloud.google.com/storage/docs/object-holds),
* it will be overwritten with the analysis result.
*
* @param string $uri
*/
public function setUri($uri)
{
$this->uri = $uri;
}
/**
* @return string
*/
public function getUri()
{
return $this->uri;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(GoogleCloudAssetV1GcsDestination::class, 'Google_Service_CloudAsset_GoogleCloudAssetV1GcsDestination');
@@ -0,0 +1,219 @@
<?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\CloudAsset;
class GoogleCloudAssetV1GovernedContainer extends \Google\Collection
{
protected $collection_key = 'policyBundle';
protected $consolidatedPolicyType = AnalyzerOrgPolicy::class;
protected $consolidatedPolicyDataType = '';
protected $effectiveTagsType = EffectiveTagDetails::class;
protected $effectiveTagsDataType = 'array';
/**
* The folder(s) that this resource belongs to, in the format of
* folders/{FOLDER_NUMBER}. This field is available when the resource belongs
* (directly or cascadingly) to one or more folders.
*
* @var string[]
*/
public $folders;
/**
* The [full resource name] (https://cloud.google.com/asset-
* inventory/docs/resource-name-format) of an organization/folder/project
* resource.
*
* @var string
*/
public $fullResourceName;
/**
* The organization that this resource belongs to, in the format of
* organizations/{ORGANIZATION_NUMBER}. This field is available when the
* resource belongs (directly or cascadingly) to an organization.
*
* @var string
*/
public $organization;
/**
* The [full resource name] (https://cloud.google.com/asset-
* inventory/docs/resource-name-format) of the parent of AnalyzeOrgPolicyGover
* nedContainersResponse.GovernedContainer.full_resource_name.
*
* @var string
*/
public $parent;
protected $policyBundleType = AnalyzerOrgPolicy::class;
protected $policyBundleDataType = 'array';
/**
* The project that this resource belongs to, in the format of
* projects/{PROJECT_NUMBER}. This field is available when the resource
* belongs to a project.
*
* @var string
*/
public $project;
/**
* The consolidated organization policy for the analyzed resource. The
* consolidated organization policy is computed by merging and evaluating
* AnalyzeOrgPolicyGovernedContainersResponse.GovernedContainer.policy_bundle.
* The evaluation will respect the organization policy [hierarchy
* rules](https://cloud.google.com/resource-manager/docs/organization-
* policy/understanding-hierarchy).
*
* @param AnalyzerOrgPolicy $consolidatedPolicy
*/
public function setConsolidatedPolicy(AnalyzerOrgPolicy $consolidatedPolicy)
{
$this->consolidatedPolicy = $consolidatedPolicy;
}
/**
* @return AnalyzerOrgPolicy
*/
public function getConsolidatedPolicy()
{
return $this->consolidatedPolicy;
}
/**
* The effective tags on this resource.
*
* @param EffectiveTagDetails[] $effectiveTags
*/
public function setEffectiveTags($effectiveTags)
{
$this->effectiveTags = $effectiveTags;
}
/**
* @return EffectiveTagDetails[]
*/
public function getEffectiveTags()
{
return $this->effectiveTags;
}
/**
* The folder(s) that this resource belongs to, in the format of
* folders/{FOLDER_NUMBER}. This field is available when the resource belongs
* (directly or cascadingly) to one or more folders.
*
* @param string[] $folders
*/
public function setFolders($folders)
{
$this->folders = $folders;
}
/**
* @return string[]
*/
public function getFolders()
{
return $this->folders;
}
/**
* The [full resource name] (https://cloud.google.com/asset-
* inventory/docs/resource-name-format) of an organization/folder/project
* resource.
*
* @param string $fullResourceName
*/
public function setFullResourceName($fullResourceName)
{
$this->fullResourceName = $fullResourceName;
}
/**
* @return string
*/
public function getFullResourceName()
{
return $this->fullResourceName;
}
/**
* The organization that this resource belongs to, in the format of
* organizations/{ORGANIZATION_NUMBER}. This field is available when the
* resource belongs (directly or cascadingly) to an organization.
*
* @param string $organization
*/
public function setOrganization($organization)
{
$this->organization = $organization;
}
/**
* @return string
*/
public function getOrganization()
{
return $this->organization;
}
/**
* The [full resource name] (https://cloud.google.com/asset-
* inventory/docs/resource-name-format) of the parent of AnalyzeOrgPolicyGover
* nedContainersResponse.GovernedContainer.full_resource_name.
*
* @param string $parent
*/
public function setParent($parent)
{
$this->parent = $parent;
}
/**
* @return string
*/
public function getParent()
{
return $this->parent;
}
/**
* The ordered list of all organization policies from the
* consolidated_policy.attached_resource. to the scope specified in the
* request. If the constraint is defined with default policy, it will also
* appear in the list.
*
* @param AnalyzerOrgPolicy[] $policyBundle
*/
public function setPolicyBundle($policyBundle)
{
$this->policyBundle = $policyBundle;
}
/**
* @return AnalyzerOrgPolicy[]
*/
public function getPolicyBundle()
{
return $this->policyBundle;
}
/**
* The project that this resource belongs to, in the format of
* projects/{PROJECT_NUMBER}. This field is available when the resource
* belongs to a project.
*
* @param string $project
*/
public function setProject($project)
{
$this->project = $project;
}
/**
* @return string
*/
public function getProject()
{
return $this->project;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(GoogleCloudAssetV1GovernedContainer::class, 'Google_Service_CloudAsset_GoogleCloudAssetV1GovernedContainer');
@@ -0,0 +1,74 @@
<?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\CloudAsset;
class GoogleCloudAssetV1Identity extends \Google\Model
{
protected $analysisStateType = IamPolicyAnalysisState::class;
protected $analysisStateDataType = '';
/**
* The identity of members, formatted as appear in an [IAM policy
* binding](https://cloud.google.com/iam/reference/rest/v1/Binding). For
* example, they might be formatted like the following: - user:foo@google.com
* - group:group1@google.com - serviceAccount:s1@prj1.iam.gserviceaccount.com
* - projectOwner:some_project_id - domain:google.com - allUsers
*
* @var string
*/
public $name;
/**
* The analysis state of this identity.
*
* @param IamPolicyAnalysisState $analysisState
*/
public function setAnalysisState(IamPolicyAnalysisState $analysisState)
{
$this->analysisState = $analysisState;
}
/**
* @return IamPolicyAnalysisState
*/
public function getAnalysisState()
{
return $this->analysisState;
}
/**
* The identity of members, formatted as appear in an [IAM policy
* binding](https://cloud.google.com/iam/reference/rest/v1/Binding). For
* example, they might be formatted like the following: - user:foo@google.com
* - group:group1@google.com - serviceAccount:s1@prj1.iam.gserviceaccount.com
* - projectOwner:some_project_id - domain:google.com - allUsers
*
* @param string $name
*/
public function setName($name)
{
$this->name = $name;
}
/**
* @return string
*/
public function getName()
{
return $this->name;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(GoogleCloudAssetV1Identity::class, 'Google_Service_CloudAsset_GoogleCloudAssetV1Identity');
@@ -0,0 +1,70 @@
<?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\CloudAsset;
class GoogleCloudAssetV1IdentityList extends \Google\Collection
{
protected $collection_key = 'identities';
protected $groupEdgesType = GoogleCloudAssetV1Edge::class;
protected $groupEdgesDataType = 'array';
protected $identitiesType = GoogleCloudAssetV1Identity::class;
protected $identitiesDataType = 'array';
/**
* Group identity edges of the graph starting from the binding's group members
* to any node of the identities. The Edge.source_node contains a group, such
* as `group:parent@google.com`. The Edge.target_node contains a member of the
* group, such as `group:child@google.com` or `user:foo@google.com`. This
* field is present only if the output_group_edges option is enabled in
* request.
*
* @param GoogleCloudAssetV1Edge[] $groupEdges
*/
public function setGroupEdges($groupEdges)
{
$this->groupEdges = $groupEdges;
}
/**
* @return GoogleCloudAssetV1Edge[]
*/
public function getGroupEdges()
{
return $this->groupEdges;
}
/**
* Only the identities that match one of the following conditions will be
* presented: - The identity_selector, if it is specified in request; -
* Otherwise, identities reachable from the policy binding's members.
*
* @param GoogleCloudAssetV1Identity[] $identities
*/
public function setIdentities($identities)
{
$this->identities = $identities;
}
/**
* @return GoogleCloudAssetV1Identity[]
*/
public function getIdentities()
{
return $this->identities;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(GoogleCloudAssetV1IdentityList::class, 'Google_Service_CloudAsset_GoogleCloudAssetV1IdentityList');
@@ -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\CloudAsset;
class GoogleCloudAssetV1ListConstraint extends \Google\Model
{
/**
* Indicates whether values grouped into categories can be used in
* `Policy.allowed_values` and `Policy.denied_values`. For example,
* `"in:Python"` would match any value in the 'Python' group.
*
* @var bool
*/
public $supportsIn;
/**
* Indicates whether subtrees of Cloud Resource Manager resource hierarchy can
* be used in `Policy.allowed_values` and `Policy.denied_values`. For example,
* `"under:folders/123"` would match any resource under the 'folders/123'
* folder.
*
* @var bool
*/
public $supportsUnder;
/**
* Indicates whether values grouped into categories can be used in
* `Policy.allowed_values` and `Policy.denied_values`. For example,
* `"in:Python"` would match any value in the 'Python' group.
*
* @param bool $supportsIn
*/
public function setSupportsIn($supportsIn)
{
$this->supportsIn = $supportsIn;
}
/**
* @return bool
*/
public function getSupportsIn()
{
return $this->supportsIn;
}
/**
* Indicates whether subtrees of Cloud Resource Manager resource hierarchy can
* be used in `Policy.allowed_values` and `Policy.denied_values`. For example,
* `"under:folders/123"` would match any resource under the 'folders/123'
* folder.
*
* @param bool $supportsUnder
*/
public function setSupportsUnder($supportsUnder)
{
$this->supportsUnder = $supportsUnder;
}
/**
* @return bool
*/
public function getSupportsUnder()
{
return $this->supportsUnder;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(GoogleCloudAssetV1ListConstraint::class, 'Google_Service_CloudAsset_GoogleCloudAssetV1ListConstraint');
@@ -0,0 +1,110 @@
<?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\CloudAsset;
class GoogleCloudAssetV1QueryAssetsOutputConfigBigQueryDestination extends \Google\Model
{
/**
* Required. The BigQuery dataset where the query results will be saved. It
* has the format of "projects/{projectId}/datasets/{datasetId}".
*
* @var string
*/
public $dataset;
/**
* Required. The BigQuery table where the query results will be saved. If this
* table does not exist, a new table with the given name will be created.
*
* @var string
*/
public $table;
/**
* Specifies the action that occurs if the destination table or partition
* already exists. The following values are supported: * WRITE_TRUNCATE: If
* the table or partition already exists, BigQuery overwrites the entire table
* or all the partitions data. * WRITE_APPEND: If the table or partition
* already exists, BigQuery appends the data to the table or the latest
* partition. * WRITE_EMPTY: If the table already exists and contains data, a
* 'duplicate' error is returned in the job result. The default value is
* WRITE_EMPTY.
*
* @var string
*/
public $writeDisposition;
/**
* Required. The BigQuery dataset where the query results will be saved. It
* has the format of "projects/{projectId}/datasets/{datasetId}".
*
* @param string $dataset
*/
public function setDataset($dataset)
{
$this->dataset = $dataset;
}
/**
* @return string
*/
public function getDataset()
{
return $this->dataset;
}
/**
* Required. The BigQuery table where the query results will be saved. If this
* table does not exist, a new table with the given name will be created.
*
* @param string $table
*/
public function setTable($table)
{
$this->table = $table;
}
/**
* @return string
*/
public function getTable()
{
return $this->table;
}
/**
* Specifies the action that occurs if the destination table or partition
* already exists. The following values are supported: * WRITE_TRUNCATE: If
* the table or partition already exists, BigQuery overwrites the entire table
* or all the partitions data. * WRITE_APPEND: If the table or partition
* already exists, BigQuery appends the data to the table or the latest
* partition. * WRITE_EMPTY: If the table already exists and contains data, a
* 'duplicate' error is returned in the job result. The default value is
* WRITE_EMPTY.
*
* @param string $writeDisposition
*/
public function setWriteDisposition($writeDisposition)
{
$this->writeDisposition = $writeDisposition;
}
/**
* @return string
*/
public function getWriteDisposition()
{
return $this->writeDisposition;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(GoogleCloudAssetV1QueryAssetsOutputConfigBigQueryDestination::class, 'Google_Service_CloudAsset_GoogleCloudAssetV1QueryAssetsOutputConfigBigQueryDestination');
@@ -0,0 +1,68 @@
<?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\CloudAsset;
class GoogleCloudAssetV1Resource extends \Google\Model
{
protected $analysisStateType = IamPolicyAnalysisState::class;
protected $analysisStateDataType = '';
/**
* The [full resource name](https://cloud.google.com/asset-
* inventory/docs/resource-name-format)
*
* @var string
*/
public $fullResourceName;
/**
* The analysis state of this resource.
*
* @param IamPolicyAnalysisState $analysisState
*/
public function setAnalysisState(IamPolicyAnalysisState $analysisState)
{
$this->analysisState = $analysisState;
}
/**
* @return IamPolicyAnalysisState
*/
public function getAnalysisState()
{
return $this->analysisState;
}
/**
* The [full resource name](https://cloud.google.com/asset-
* inventory/docs/resource-name-format)
*
* @param string $fullResourceName
*/
public function setFullResourceName($fullResourceName)
{
$this->fullResourceName = $fullResourceName;
}
/**
* @return string
*/
public function getFullResourceName()
{
return $this->fullResourceName;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(GoogleCloudAssetV1Resource::class, 'Google_Service_CloudAsset_GoogleCloudAssetV1Resource');
@@ -0,0 +1,161 @@
<?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\CloudAsset;
class GoogleCloudAssetV1Rule extends \Google\Model
{
/**
* Setting this to true means that all values are allowed. This field can be
* set only in Policies for list constraints.
*
* @var bool
*/
public $allowAll;
protected $conditionType = Expr::class;
protected $conditionDataType = '';
protected $conditionEvaluationType = ConditionEvaluation::class;
protected $conditionEvaluationDataType = '';
/**
* Setting this to true means that all values are denied. This field can be
* set only in Policies for list constraints.
*
* @var bool
*/
public $denyAll;
/**
* If `true`, then the `Policy` is enforced. If `false`, then any
* configuration is acceptable. This field can be set only in Policies for
* boolean constraints.
*
* @var bool
*/
public $enforce;
protected $valuesType = GoogleCloudAssetV1StringValues::class;
protected $valuesDataType = '';
/**
* Setting this to true means that all values are allowed. This field can be
* set only in Policies for list constraints.
*
* @param bool $allowAll
*/
public function setAllowAll($allowAll)
{
$this->allowAll = $allowAll;
}
/**
* @return bool
*/
public function getAllowAll()
{
return $this->allowAll;
}
/**
* The evaluating condition for this rule.
*
* @param Expr $condition
*/
public function setCondition(Expr $condition)
{
$this->condition = $condition;
}
/**
* @return Expr
*/
public function getCondition()
{
return $this->condition;
}
/**
* The condition evaluation result for this rule. Only populated if it meets
* all the following criteria: * There is a condition defined for this rule. *
* This rule is within AnalyzeOrgPolicyGovernedContainersResponse.GovernedCont
* ainer.consolidated_policy, or
* AnalyzeOrgPolicyGovernedAssetsResponse.GovernedAsset.consolidated_policy
* when the AnalyzeOrgPolicyGovernedAssetsResponse.GovernedAsset has
* AnalyzeOrgPolicyGovernedAssetsResponse.GovernedAsset.governed_resource.
*
* @param ConditionEvaluation $conditionEvaluation
*/
public function setConditionEvaluation(ConditionEvaluation $conditionEvaluation)
{
$this->conditionEvaluation = $conditionEvaluation;
}
/**
* @return ConditionEvaluation
*/
public function getConditionEvaluation()
{
return $this->conditionEvaluation;
}
/**
* Setting this to true means that all values are denied. This field can be
* set only in Policies for list constraints.
*
* @param bool $denyAll
*/
public function setDenyAll($denyAll)
{
$this->denyAll = $denyAll;
}
/**
* @return bool
*/
public function getDenyAll()
{
return $this->denyAll;
}
/**
* If `true`, then the `Policy` is enforced. If `false`, then any
* configuration is acceptable. This field can be set only in Policies for
* boolean constraints.
*
* @param bool $enforce
*/
public function setEnforce($enforce)
{
$this->enforce = $enforce;
}
/**
* @return bool
*/
public function getEnforce()
{
return $this->enforce;
}
/**
* List of values to be used for this policy rule. This field can be set only
* in policies for list constraints.
*
* @param GoogleCloudAssetV1StringValues $values
*/
public function setValues(GoogleCloudAssetV1StringValues $values)
{
$this->values = $values;
}
/**
* @return GoogleCloudAssetV1StringValues
*/
public function getValues()
{
return $this->values;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(GoogleCloudAssetV1Rule::class, 'Google_Service_CloudAsset_GoogleCloudAssetV1Rule');
@@ -0,0 +1,71 @@
<?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\CloudAsset;
class GoogleCloudAssetV1StringValues extends \Google\Collection
{
protected $collection_key = 'deniedValues';
/**
* List of values allowed at this resource.
*
* @var string[]
*/
public $allowedValues;
/**
* List of values denied at this resource.
*
* @var string[]
*/
public $deniedValues;
/**
* List of values allowed at this resource.
*
* @param string[] $allowedValues
*/
public function setAllowedValues($allowedValues)
{
$this->allowedValues = $allowedValues;
}
/**
* @return string[]
*/
public function getAllowedValues()
{
return $this->allowedValues;
}
/**
* List of values denied at this resource.
*
* @param string[] $deniedValues
*/
public function setDeniedValues($deniedValues)
{
$this->deniedValues = $deniedValues;
}
/**
* @return string[]
*/
public function getDeniedValues()
{
return $this->deniedValues;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(GoogleCloudAssetV1StringValues::class, 'Google_Service_CloudAsset_GoogleCloudAssetV1StringValues');
@@ -0,0 +1,281 @@
<?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\CloudAsset;
class GoogleCloudAssetV1p7beta1Asset extends \Google\Collection
{
protected $collection_key = 'orgPolicy';
protected $accessLevelType = GoogleIdentityAccesscontextmanagerV1AccessLevel::class;
protected $accessLevelDataType = '';
protected $accessPolicyType = GoogleIdentityAccesscontextmanagerV1AccessPolicy::class;
protected $accessPolicyDataType = '';
/**
* The ancestry path of an asset in Google Cloud [resource
* hierarchy](https://cloud.google.com/resource-manager/docs/cloud-platform-
* resource-hierarchy), represented as a list of relative resource names. An
* ancestry path starts with the closest ancestor in the hierarchy and ends at
* root. If the asset is a project, folder, or organization, the ancestry path
* starts from the asset itself. Example: `["projects/123456789",
* "folders/5432", "organizations/1234"]`
*
* @var string[]
*/
public $ancestors;
/**
* The type of the asset. Example: `compute.googleapis.com/Disk` See
* [Supported asset types](https://cloud.google.com/asset-
* inventory/docs/supported-asset-types) for more information.
*
* @var string
*/
public $assetType;
protected $iamPolicyType = Policy::class;
protected $iamPolicyDataType = '';
/**
* The full name of the asset. Example: `//compute.googleapis.com/projects/my_
* project_123/zones/zone1/instances/instance1` See [Resource names](https://c
* loud.google.com/apis/design/resource_names#full_resource_name) for more
* information.
*
* @var string
*/
public $name;
protected $orgPolicyType = GoogleCloudOrgpolicyV1Policy::class;
protected $orgPolicyDataType = 'array';
protected $relatedAssetsType = GoogleCloudAssetV1p7beta1RelatedAssets::class;
protected $relatedAssetsDataType = '';
protected $resourceType = GoogleCloudAssetV1p7beta1Resource::class;
protected $resourceDataType = '';
protected $servicePerimeterType = GoogleIdentityAccesscontextmanagerV1ServicePerimeter::class;
protected $servicePerimeterDataType = '';
/**
* The last update timestamp of an asset. update_time is updated when
* create/update/delete operation is performed.
*
* @var string
*/
public $updateTime;
/**
* Please also refer to the [access level user
* guide](https://cloud.google.com/access-context-
* manager/docs/overview#access-levels).
*
* @param GoogleIdentityAccesscontextmanagerV1AccessLevel $accessLevel
*/
public function setAccessLevel(GoogleIdentityAccesscontextmanagerV1AccessLevel $accessLevel)
{
$this->accessLevel = $accessLevel;
}
/**
* @return GoogleIdentityAccesscontextmanagerV1AccessLevel
*/
public function getAccessLevel()
{
return $this->accessLevel;
}
/**
* Please also refer to the [access policy user
* guide](https://cloud.google.com/access-context-
* manager/docs/overview#access-policies).
*
* @param GoogleIdentityAccesscontextmanagerV1AccessPolicy $accessPolicy
*/
public function setAccessPolicy(GoogleIdentityAccesscontextmanagerV1AccessPolicy $accessPolicy)
{
$this->accessPolicy = $accessPolicy;
}
/**
* @return GoogleIdentityAccesscontextmanagerV1AccessPolicy
*/
public function getAccessPolicy()
{
return $this->accessPolicy;
}
/**
* The ancestry path of an asset in Google Cloud [resource
* hierarchy](https://cloud.google.com/resource-manager/docs/cloud-platform-
* resource-hierarchy), represented as a list of relative resource names. An
* ancestry path starts with the closest ancestor in the hierarchy and ends at
* root. If the asset is a project, folder, or organization, the ancestry path
* starts from the asset itself. Example: `["projects/123456789",
* "folders/5432", "organizations/1234"]`
*
* @param string[] $ancestors
*/
public function setAncestors($ancestors)
{
$this->ancestors = $ancestors;
}
/**
* @return string[]
*/
public function getAncestors()
{
return $this->ancestors;
}
/**
* The type of the asset. Example: `compute.googleapis.com/Disk` See
* [Supported asset types](https://cloud.google.com/asset-
* inventory/docs/supported-asset-types) for more information.
*
* @param string $assetType
*/
public function setAssetType($assetType)
{
$this->assetType = $assetType;
}
/**
* @return string
*/
public function getAssetType()
{
return $this->assetType;
}
/**
* A representation of the IAM policy set on a Google Cloud resource. There
* can be a maximum of one IAM policy set on any given resource. In addition,
* IAM policies inherit their granted access scope from any policies set on
* parent resources in the resource hierarchy. Therefore, the effectively
* policy is the union of both the policy set on this resource and each policy
* set on all of the resource's ancestry resource levels in the hierarchy. See
* [this topic](https://cloud.google.com/iam/help/allow-policies/inheritance)
* for more information.
*
* @param Policy $iamPolicy
*/
public function setIamPolicy(Policy $iamPolicy)
{
$this->iamPolicy = $iamPolicy;
}
/**
* @return Policy
*/
public function getIamPolicy()
{
return $this->iamPolicy;
}
/**
* The full name of the asset. Example: `//compute.googleapis.com/projects/my_
* project_123/zones/zone1/instances/instance1` See [Resource names](https://c
* loud.google.com/apis/design/resource_names#full_resource_name) for more
* information.
*
* @param string $name
*/
public function setName($name)
{
$this->name = $name;
}
/**
* @return string
*/
public function getName()
{
return $this->name;
}
/**
* A representation of an [organization
* policy](https://cloud.google.com/resource-manager/docs/organization-
* policy/overview#organization_policy). There can be more than one
* organization policy with different constraints set on a given resource.
*
* @param GoogleCloudOrgpolicyV1Policy[] $orgPolicy
*/
public function setOrgPolicy($orgPolicy)
{
$this->orgPolicy = $orgPolicy;
}
/**
* @return GoogleCloudOrgpolicyV1Policy[]
*/
public function getOrgPolicy()
{
return $this->orgPolicy;
}
/**
* The related assets of the asset of one relationship type. One asset only
* represents one type of relationship.
*
* @param GoogleCloudAssetV1p7beta1RelatedAssets $relatedAssets
*/
public function setRelatedAssets(GoogleCloudAssetV1p7beta1RelatedAssets $relatedAssets)
{
$this->relatedAssets = $relatedAssets;
}
/**
* @return GoogleCloudAssetV1p7beta1RelatedAssets
*/
public function getRelatedAssets()
{
return $this->relatedAssets;
}
/**
* A representation of the resource.
*
* @param GoogleCloudAssetV1p7beta1Resource $resource
*/
public function setResource(GoogleCloudAssetV1p7beta1Resource $resource)
{
$this->resource = $resource;
}
/**
* @return GoogleCloudAssetV1p7beta1Resource
*/
public function getResource()
{
return $this->resource;
}
/**
* Please also refer to the [service perimeter user
* guide](https://cloud.google.com/vpc-service-controls/docs/overview).
*
* @param GoogleIdentityAccesscontextmanagerV1ServicePerimeter $servicePerimeter
*/
public function setServicePerimeter(GoogleIdentityAccesscontextmanagerV1ServicePerimeter $servicePerimeter)
{
$this->servicePerimeter = $servicePerimeter;
}
/**
* @return GoogleIdentityAccesscontextmanagerV1ServicePerimeter
*/
public function getServicePerimeter()
{
return $this->servicePerimeter;
}
/**
* The last update timestamp of an asset. update_time is updated when
* create/update/delete operation is performed.
*
* @param string $updateTime
*/
public function setUpdateTime($updateTime)
{
$this->updateTime = $updateTime;
}
/**
* @return string
*/
public function getUpdateTime()
{
return $this->updateTime;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(GoogleCloudAssetV1p7beta1Asset::class, 'Google_Service_CloudAsset_GoogleCloudAssetV1p7beta1Asset');
@@ -0,0 +1,113 @@
<?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\CloudAsset;
class GoogleCloudAssetV1p7beta1RelatedAsset extends \Google\Collection
{
protected $collection_key = 'ancestors';
/**
* The ancestors of an asset in Google Cloud [resource
* hierarchy](https://cloud.google.com/resource-manager/docs/cloud-platform-
* resource-hierarchy), represented as a list of relative resource names. An
* ancestry path starts with the closest ancestor in the hierarchy and ends at
* root. Example: `["projects/123456789", "folders/5432",
* "organizations/1234"]`
*
* @var string[]
*/
public $ancestors;
/**
* The full name of the asset. Example: `//compute.googleapis.com/projects/my_
* project_123/zones/zone1/instances/instance1` See [Resource names](https://c
* loud.google.com/apis/design/resource_names#full_resource_name) for more
* information.
*
* @var string
*/
public $asset;
/**
* The type of the asset. Example: `compute.googleapis.com/Disk` See
* [Supported asset types](https://cloud.google.com/asset-
* inventory/docs/supported-asset-types) for more information.
*
* @var string
*/
public $assetType;
/**
* The ancestors of an asset in Google Cloud [resource
* hierarchy](https://cloud.google.com/resource-manager/docs/cloud-platform-
* resource-hierarchy), represented as a list of relative resource names. An
* ancestry path starts with the closest ancestor in the hierarchy and ends at
* root. Example: `["projects/123456789", "folders/5432",
* "organizations/1234"]`
*
* @param string[] $ancestors
*/
public function setAncestors($ancestors)
{
$this->ancestors = $ancestors;
}
/**
* @return string[]
*/
public function getAncestors()
{
return $this->ancestors;
}
/**
* The full name of the asset. Example: `//compute.googleapis.com/projects/my_
* project_123/zones/zone1/instances/instance1` See [Resource names](https://c
* loud.google.com/apis/design/resource_names#full_resource_name) for more
* information.
*
* @param string $asset
*/
public function setAsset($asset)
{
$this->asset = $asset;
}
/**
* @return string
*/
public function getAsset()
{
return $this->asset;
}
/**
* The type of the asset. Example: `compute.googleapis.com/Disk` See
* [Supported asset types](https://cloud.google.com/asset-
* inventory/docs/supported-asset-types) for more information.
*
* @param string $assetType
*/
public function setAssetType($assetType)
{
$this->assetType = $assetType;
}
/**
* @return string
*/
public function getAssetType()
{
return $this->assetType;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(GoogleCloudAssetV1p7beta1RelatedAsset::class, 'Google_Service_CloudAsset_GoogleCloudAssetV1p7beta1RelatedAsset');
@@ -0,0 +1,63 @@
<?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\CloudAsset;
class GoogleCloudAssetV1p7beta1RelatedAssets extends \Google\Collection
{
protected $collection_key = 'assets';
protected $assetsType = GoogleCloudAssetV1p7beta1RelatedAsset::class;
protected $assetsDataType = 'array';
protected $relationshipAttributesType = GoogleCloudAssetV1p7beta1RelationshipAttributes::class;
protected $relationshipAttributesDataType = '';
/**
* The peer resources of the relationship.
*
* @param GoogleCloudAssetV1p7beta1RelatedAsset[] $assets
*/
public function setAssets($assets)
{
$this->assets = $assets;
}
/**
* @return GoogleCloudAssetV1p7beta1RelatedAsset[]
*/
public function getAssets()
{
return $this->assets;
}
/**
* The detailed relation attributes.
*
* @param GoogleCloudAssetV1p7beta1RelationshipAttributes $relationshipAttributes
*/
public function setRelationshipAttributes(GoogleCloudAssetV1p7beta1RelationshipAttributes $relationshipAttributes)
{
$this->relationshipAttributes = $relationshipAttributes;
}
/**
* @return GoogleCloudAssetV1p7beta1RelationshipAttributes
*/
public function getRelationshipAttributes()
{
return $this->relationshipAttributes;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(GoogleCloudAssetV1p7beta1RelatedAssets::class, 'Google_Service_CloudAsset_GoogleCloudAssetV1p7beta1RelatedAssets');
@@ -0,0 +1,116 @@
<?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\CloudAsset;
class GoogleCloudAssetV1p7beta1RelationshipAttributes extends \Google\Model
{
/**
* The detail of the relationship, e.g. `contains`, `attaches`
*
* @var string
*/
public $action;
/**
* The source asset type. Example: `compute.googleapis.com/Instance`
*
* @var string
*/
public $sourceResourceType;
/**
* The target asset type. Example: `compute.googleapis.com/Disk`
*
* @var string
*/
public $targetResourceType;
/**
* The unique identifier of the relationship type. Example:
* `INSTANCE_TO_INSTANCEGROUP`
*
* @var string
*/
public $type;
/**
* The detail of the relationship, e.g. `contains`, `attaches`
*
* @param string $action
*/
public function setAction($action)
{
$this->action = $action;
}
/**
* @return string
*/
public function getAction()
{
return $this->action;
}
/**
* The source asset type. Example: `compute.googleapis.com/Instance`
*
* @param string $sourceResourceType
*/
public function setSourceResourceType($sourceResourceType)
{
$this->sourceResourceType = $sourceResourceType;
}
/**
* @return string
*/
public function getSourceResourceType()
{
return $this->sourceResourceType;
}
/**
* The target asset type. Example: `compute.googleapis.com/Disk`
*
* @param string $targetResourceType
*/
public function setTargetResourceType($targetResourceType)
{
$this->targetResourceType = $targetResourceType;
}
/**
* @return string
*/
public function getTargetResourceType()
{
return $this->targetResourceType;
}
/**
* The unique identifier of the relationship type. Example:
* `INSTANCE_TO_INSTANCEGROUP`
*
* @param string $type
*/
public function setType($type)
{
$this->type = $type;
}
/**
* @return string
*/
public function getType()
{
return $this->type;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(GoogleCloudAssetV1p7beta1RelationshipAttributes::class, 'Google_Service_CloudAsset_GoogleCloudAssetV1p7beta1RelationshipAttributes');
@@ -0,0 +1,212 @@
<?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\CloudAsset;
class GoogleCloudAssetV1p7beta1Resource extends \Google\Model
{
/**
* The content of the resource, in which some sensitive fields are removed and
* may not be present.
*
* @var array[]
*/
public $data;
/**
* The URL of the discovery document containing the resource's JSON schema.
* Example: `https://www.googleapis.com/discovery/v1/apis/compute/v1/rest`
* This value is unspecified for resources that do not have an API based on a
* discovery document, such as Cloud Bigtable.
*
* @var string
*/
public $discoveryDocumentUri;
/**
* The JSON schema name listed in the discovery document. Example: `Project`
* This value is unspecified for resources that do not have an API based on a
* discovery document, such as Cloud Bigtable.
*
* @var string
*/
public $discoveryName;
/**
* The location of the resource in Google Cloud, such as its zone and region.
* For more information, see https://cloud.google.com/about/locations/.
*
* @var string
*/
public $location;
/**
* The full name of the immediate parent of this resource. See [Resource Names
* ](https://cloud.google.com/apis/design/resource_names#full_resource_name)
* for more information. For Google Cloud assets, this value is the parent
* resource defined in the [IAM policy
* hierarchy](https://cloud.google.com/iam/docs/overview#policy_hierarchy).
* Example: `//cloudresourcemanager.googleapis.com/projects/my_project_123`
* For third-party assets, this field may be set differently.
*
* @var string
*/
public $parent;
/**
* The REST URL for accessing the resource. An HTTP `GET` request using this
* URL returns the resource itself. Example:
* `https://cloudresourcemanager.googleapis.com/v1/projects/my-project-123`
* This value is unspecified for resources without a REST API.
*
* @var string
*/
public $resourceUrl;
/**
* The API version. Example: `v1`
*
* @var string
*/
public $version;
/**
* The content of the resource, in which some sensitive fields are removed and
* may not be present.
*
* @param array[] $data
*/
public function setData($data)
{
$this->data = $data;
}
/**
* @return array[]
*/
public function getData()
{
return $this->data;
}
/**
* The URL of the discovery document containing the resource's JSON schema.
* Example: `https://www.googleapis.com/discovery/v1/apis/compute/v1/rest`
* This value is unspecified for resources that do not have an API based on a
* discovery document, such as Cloud Bigtable.
*
* @param string $discoveryDocumentUri
*/
public function setDiscoveryDocumentUri($discoveryDocumentUri)
{
$this->discoveryDocumentUri = $discoveryDocumentUri;
}
/**
* @return string
*/
public function getDiscoveryDocumentUri()
{
return $this->discoveryDocumentUri;
}
/**
* The JSON schema name listed in the discovery document. Example: `Project`
* This value is unspecified for resources that do not have an API based on a
* discovery document, such as Cloud Bigtable.
*
* @param string $discoveryName
*/
public function setDiscoveryName($discoveryName)
{
$this->discoveryName = $discoveryName;
}
/**
* @return string
*/
public function getDiscoveryName()
{
return $this->discoveryName;
}
/**
* The location of the resource in Google Cloud, such as its zone and region.
* For more information, see https://cloud.google.com/about/locations/.
*
* @param string $location
*/
public function setLocation($location)
{
$this->location = $location;
}
/**
* @return string
*/
public function getLocation()
{
return $this->location;
}
/**
* The full name of the immediate parent of this resource. See [Resource Names
* ](https://cloud.google.com/apis/design/resource_names#full_resource_name)
* for more information. For Google Cloud assets, this value is the parent
* resource defined in the [IAM policy
* hierarchy](https://cloud.google.com/iam/docs/overview#policy_hierarchy).
* Example: `//cloudresourcemanager.googleapis.com/projects/my_project_123`
* For third-party assets, this field may be set differently.
*
* @param string $parent
*/
public function setParent($parent)
{
$this->parent = $parent;
}
/**
* @return string
*/
public function getParent()
{
return $this->parent;
}
/**
* The REST URL for accessing the resource. An HTTP `GET` request using this
* URL returns the resource itself. Example:
* `https://cloudresourcemanager.googleapis.com/v1/projects/my-project-123`
* This value is unspecified for resources without a REST API.
*
* @param string $resourceUrl
*/
public function setResourceUrl($resourceUrl)
{
$this->resourceUrl = $resourceUrl;
}
/**
* @return string
*/
public function getResourceUrl()
{
return $this->resourceUrl;
}
/**
* The API version. Example: `v1`
*
* @param string $version
*/
public function setVersion($version)
{
$this->version = $version;
}
/**
* @return string
*/
public function getVersion()
{
return $this->version;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(GoogleCloudAssetV1p7beta1Resource::class, 'Google_Service_CloudAsset_GoogleCloudAssetV1p7beta1Resource');
@@ -0,0 +1,96 @@
<?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\CloudAsset;
class GoogleCloudOrgpolicyV1BooleanPolicy extends \Google\Model
{
/**
* If `true`, then the `Policy` is enforced. If `false`, then any
* configuration is acceptable. Suppose you have a `Constraint`
* `constraints/compute.disableSerialPortAccess` with `constraint_default` set
* to `ALLOW`. A `Policy` for that `Constraint` exhibits the following
* behavior: - If the `Policy` at this resource has enforced set to `false`,
* serial port connection attempts will be allowed. - If the `Policy` at this
* resource has enforced set to `true`, serial port connection attempts will
* be refused. - If the `Policy` at this resource is `RestoreDefault`, serial
* port connection attempts will be allowed. - If no `Policy` is set at this
* resource or anywhere higher in the resource hierarchy, serial port
* connection attempts will be allowed. - If no `Policy` is set at this
* resource, but one exists higher in the resource hierarchy, the behavior is
* as if the`Policy` were set at this resource. The following examples
* demonstrate the different possible layerings: Example 1 (nearest
* `Constraint` wins): `organizations/foo` has a `Policy` with: {enforced:
* false} `projects/bar` has no `Policy` set. The constraint at `projects/bar`
* and `organizations/foo` will not be enforced. Example 2 (enforcement gets
* replaced): `organizations/foo` has a `Policy` with: {enforced: false}
* `projects/bar` has a `Policy` with: {enforced: true} The constraint at
* `organizations/foo` is not enforced. The constraint at `projects/bar` is
* enforced. Example 3 (RestoreDefault): `organizations/foo` has a `Policy`
* with: {enforced: true} `projects/bar` has a `Policy` with: {RestoreDefault:
* {}} The constraint at `organizations/foo` is enforced. The constraint at
* `projects/bar` is not enforced, because `constraint_default` for the
* `Constraint` is `ALLOW`.
*
* @var bool
*/
public $enforced;
/**
* If `true`, then the `Policy` is enforced. If `false`, then any
* configuration is acceptable. Suppose you have a `Constraint`
* `constraints/compute.disableSerialPortAccess` with `constraint_default` set
* to `ALLOW`. A `Policy` for that `Constraint` exhibits the following
* behavior: - If the `Policy` at this resource has enforced set to `false`,
* serial port connection attempts will be allowed. - If the `Policy` at this
* resource has enforced set to `true`, serial port connection attempts will
* be refused. - If the `Policy` at this resource is `RestoreDefault`, serial
* port connection attempts will be allowed. - If no `Policy` is set at this
* resource or anywhere higher in the resource hierarchy, serial port
* connection attempts will be allowed. - If no `Policy` is set at this
* resource, but one exists higher in the resource hierarchy, the behavior is
* as if the`Policy` were set at this resource. The following examples
* demonstrate the different possible layerings: Example 1 (nearest
* `Constraint` wins): `organizations/foo` has a `Policy` with: {enforced:
* false} `projects/bar` has no `Policy` set. The constraint at `projects/bar`
* and `organizations/foo` will not be enforced. Example 2 (enforcement gets
* replaced): `organizations/foo` has a `Policy` with: {enforced: false}
* `projects/bar` has a `Policy` with: {enforced: true} The constraint at
* `organizations/foo` is not enforced. The constraint at `projects/bar` is
* enforced. Example 3 (RestoreDefault): `organizations/foo` has a `Policy`
* with: {enforced: true} `projects/bar` has a `Policy` with: {RestoreDefault:
* {}} The constraint at `organizations/foo` is enforced. The constraint at
* `projects/bar` is not enforced, because `constraint_default` for the
* `Constraint` is `ALLOW`.
*
* @param bool $enforced
*/
public function setEnforced($enforced)
{
$this->enforced = $enforced;
}
/**
* @return bool
*/
public function getEnforced()
{
return $this->enforced;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(GoogleCloudOrgpolicyV1BooleanPolicy::class, 'Google_Service_CloudAsset_GoogleCloudOrgpolicyV1BooleanPolicy');
@@ -0,0 +1,279 @@
<?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\CloudAsset;
class GoogleCloudOrgpolicyV1ListPolicy extends \Google\Collection
{
/**
* Indicates that allowed_values or denied_values must be set.
*/
public const ALL_VALUES_ALL_VALUES_UNSPECIFIED = 'ALL_VALUES_UNSPECIFIED';
/**
* A policy with this set allows all values.
*/
public const ALL_VALUES_ALLOW = 'ALLOW';
/**
* A policy with this set denies all values.
*/
public const ALL_VALUES_DENY = 'DENY';
protected $collection_key = 'deniedValues';
/**
* The policy all_values state.
*
* @var string
*/
public $allValues;
/**
* List of values allowed at this resource. Can only be set if `all_values` is
* set to `ALL_VALUES_UNSPECIFIED`.
*
* @var string[]
*/
public $allowedValues;
/**
* List of values denied at this resource. Can only be set if `all_values` is
* set to `ALL_VALUES_UNSPECIFIED`.
*
* @var string[]
*/
public $deniedValues;
/**
* Determines the inheritance behavior for this `Policy`. By default, a
* `ListPolicy` set at a resource supersedes any `Policy` set anywhere up the
* resource hierarchy. However, if `inherit_from_parent` is set to `true`,
* then the values from the effective `Policy` of the parent resource are
* inherited, meaning the values set in this `Policy` are added to the values
* inherited up the hierarchy. Setting `Policy` hierarchies that inherit both
* allowed values and denied values isn't recommended in most circumstances to
* keep the configuration simple and understandable. However, it is possible
* to set a `Policy` with `allowed_values` set that inherits a `Policy` with
* `denied_values` set. In this case, the values that are allowed must be in
* `allowed_values` and not present in `denied_values`. For example, suppose
* you have a `Constraint` `constraints/serviceuser.services`, which has a
* `constraint_type` of `list_constraint`, and with `constraint_default` set
* to `ALLOW`. Suppose that at the Organization level, a `Policy` is applied
* that restricts the allowed API activations to {`E1`, `E2`}. Then, if a
* `Policy` is applied to a project below the Organization that has
* `inherit_from_parent` set to `false` and field all_values set to DENY, then
* an attempt to activate any API will be denied. The following examples
* demonstrate different possible layerings for `projects/bar` parented by
* `organizations/foo`: Example 1 (no inherited values): `organizations/foo`
* has a `Policy` with values: {allowed_values: "E1" allowed_values:"E2"}
* `projects/bar` has `inherit_from_parent` `false` and values:
* {allowed_values: "E3" allowed_values: "E4"} The accepted values at
* `organizations/foo` are `E1`, `E2`. The accepted values at `projects/bar`
* are `E3`, and `E4`. Example 2 (inherited values): `organizations/foo` has a
* `Policy` with values: {allowed_values: "E1" allowed_values:"E2"}
* `projects/bar` has a `Policy` with values: {value: "E3" value: "E4"
* inherit_from_parent: true} The accepted values at `organizations/foo` are
* `E1`, `E2`. The accepted values at `projects/bar` are `E1`, `E2`, `E3`, and
* `E4`. Example 3 (inheriting both allowed and denied values):
* `organizations/foo` has a `Policy` with values: {allowed_values: "E1"
* allowed_values: "E2"} `projects/bar` has a `Policy` with: {denied_values:
* "E1"} The accepted values at `organizations/foo` are `E1`, `E2`. The value
* accepted at `projects/bar` is `E2`. Example 4 (RestoreDefault):
* `organizations/foo` has a `Policy` with values: {allowed_values: "E1"
* allowed_values:"E2"} `projects/bar` has a `Policy` with values:
* {RestoreDefault: {}} The accepted values at `organizations/foo` are `E1`,
* `E2`. The accepted values at `projects/bar` are either all or none
* depending on the value of `constraint_default` (if `ALLOW`, all; if `DENY`,
* none). Example 5 (no policy inherits parent policy): `organizations/foo`
* has no `Policy` set. `projects/bar` has no `Policy` set. The accepted
* values at both levels are either all or none depending on the value of
* `constraint_default` (if `ALLOW`, all; if `DENY`, none). Example 6
* (ListConstraint allowing all): `organizations/foo` has a `Policy` with
* values: {allowed_values: "E1" allowed_values: "E2"} `projects/bar` has a
* `Policy` with: {all: ALLOW} The accepted values at `organizations/foo` are
* `E1`, E2`. Any value is accepted at `projects/bar`. Example 7
* (ListConstraint allowing none): `organizations/foo` has a `Policy` with
* values: {allowed_values: "E1" allowed_values: "E2"} `projects/bar` has a
* `Policy` with: {all: DENY} The accepted values at `organizations/foo` are
* `E1`, E2`. No value is accepted at `projects/bar`. Example 10 (allowed and
* denied subtrees of Resource Manager hierarchy): Given the following
* resource hierarchy O1->{F1, F2}; F1->{P1}; F2->{P2, P3},
* `organizations/foo` has a `Policy` with values: {allowed_values:
* "under:organizations/O1"} `projects/bar` has a `Policy` with:
* {allowed_values: "under:projects/P3"} {denied_values: "under:folders/F2"}
* The accepted values at `organizations/foo` are `organizations/O1`,
* `folders/F1`, `folders/F2`, `projects/P1`, `projects/P2`, `projects/P3`.
* The accepted values at `projects/bar` are `organizations/O1`, `folders/F1`,
* `projects/P1`.
*
* @var bool
*/
public $inheritFromParent;
/**
* Optional. The Google Cloud Console will try to default to a configuration
* that matches the value specified in this `Policy`. If `suggested_value` is
* not set, it will inherit the value specified higher in the hierarchy,
* unless `inherit_from_parent` is `false`.
*
* @var string
*/
public $suggestedValue;
/**
* The policy all_values state.
*
* Accepted values: ALL_VALUES_UNSPECIFIED, ALLOW, DENY
*
* @param self::ALL_VALUES_* $allValues
*/
public function setAllValues($allValues)
{
$this->allValues = $allValues;
}
/**
* @return self::ALL_VALUES_*
*/
public function getAllValues()
{
return $this->allValues;
}
/**
* List of values allowed at this resource. Can only be set if `all_values` is
* set to `ALL_VALUES_UNSPECIFIED`.
*
* @param string[] $allowedValues
*/
public function setAllowedValues($allowedValues)
{
$this->allowedValues = $allowedValues;
}
/**
* @return string[]
*/
public function getAllowedValues()
{
return $this->allowedValues;
}
/**
* List of values denied at this resource. Can only be set if `all_values` is
* set to `ALL_VALUES_UNSPECIFIED`.
*
* @param string[] $deniedValues
*/
public function setDeniedValues($deniedValues)
{
$this->deniedValues = $deniedValues;
}
/**
* @return string[]
*/
public function getDeniedValues()
{
return $this->deniedValues;
}
/**
* Determines the inheritance behavior for this `Policy`. By default, a
* `ListPolicy` set at a resource supersedes any `Policy` set anywhere up the
* resource hierarchy. However, if `inherit_from_parent` is set to `true`,
* then the values from the effective `Policy` of the parent resource are
* inherited, meaning the values set in this `Policy` are added to the values
* inherited up the hierarchy. Setting `Policy` hierarchies that inherit both
* allowed values and denied values isn't recommended in most circumstances to
* keep the configuration simple and understandable. However, it is possible
* to set a `Policy` with `allowed_values` set that inherits a `Policy` with
* `denied_values` set. In this case, the values that are allowed must be in
* `allowed_values` and not present in `denied_values`. For example, suppose
* you have a `Constraint` `constraints/serviceuser.services`, which has a
* `constraint_type` of `list_constraint`, and with `constraint_default` set
* to `ALLOW`. Suppose that at the Organization level, a `Policy` is applied
* that restricts the allowed API activations to {`E1`, `E2`}. Then, if a
* `Policy` is applied to a project below the Organization that has
* `inherit_from_parent` set to `false` and field all_values set to DENY, then
* an attempt to activate any API will be denied. The following examples
* demonstrate different possible layerings for `projects/bar` parented by
* `organizations/foo`: Example 1 (no inherited values): `organizations/foo`
* has a `Policy` with values: {allowed_values: "E1" allowed_values:"E2"}
* `projects/bar` has `inherit_from_parent` `false` and values:
* {allowed_values: "E3" allowed_values: "E4"} The accepted values at
* `organizations/foo` are `E1`, `E2`. The accepted values at `projects/bar`
* are `E3`, and `E4`. Example 2 (inherited values): `organizations/foo` has a
* `Policy` with values: {allowed_values: "E1" allowed_values:"E2"}
* `projects/bar` has a `Policy` with values: {value: "E3" value: "E4"
* inherit_from_parent: true} The accepted values at `organizations/foo` are
* `E1`, `E2`. The accepted values at `projects/bar` are `E1`, `E2`, `E3`, and
* `E4`. Example 3 (inheriting both allowed and denied values):
* `organizations/foo` has a `Policy` with values: {allowed_values: "E1"
* allowed_values: "E2"} `projects/bar` has a `Policy` with: {denied_values:
* "E1"} The accepted values at `organizations/foo` are `E1`, `E2`. The value
* accepted at `projects/bar` is `E2`. Example 4 (RestoreDefault):
* `organizations/foo` has a `Policy` with values: {allowed_values: "E1"
* allowed_values:"E2"} `projects/bar` has a `Policy` with values:
* {RestoreDefault: {}} The accepted values at `organizations/foo` are `E1`,
* `E2`. The accepted values at `projects/bar` are either all or none
* depending on the value of `constraint_default` (if `ALLOW`, all; if `DENY`,
* none). Example 5 (no policy inherits parent policy): `organizations/foo`
* has no `Policy` set. `projects/bar` has no `Policy` set. The accepted
* values at both levels are either all or none depending on the value of
* `constraint_default` (if `ALLOW`, all; if `DENY`, none). Example 6
* (ListConstraint allowing all): `organizations/foo` has a `Policy` with
* values: {allowed_values: "E1" allowed_values: "E2"} `projects/bar` has a
* `Policy` with: {all: ALLOW} The accepted values at `organizations/foo` are
* `E1`, E2`. Any value is accepted at `projects/bar`. Example 7
* (ListConstraint allowing none): `organizations/foo` has a `Policy` with
* values: {allowed_values: "E1" allowed_values: "E2"} `projects/bar` has a
* `Policy` with: {all: DENY} The accepted values at `organizations/foo` are
* `E1`, E2`. No value is accepted at `projects/bar`. Example 10 (allowed and
* denied subtrees of Resource Manager hierarchy): Given the following
* resource hierarchy O1->{F1, F2}; F1->{P1}; F2->{P2, P3},
* `organizations/foo` has a `Policy` with values: {allowed_values:
* "under:organizations/O1"} `projects/bar` has a `Policy` with:
* {allowed_values: "under:projects/P3"} {denied_values: "under:folders/F2"}
* The accepted values at `organizations/foo` are `organizations/O1`,
* `folders/F1`, `folders/F2`, `projects/P1`, `projects/P2`, `projects/P3`.
* The accepted values at `projects/bar` are `organizations/O1`, `folders/F1`,
* `projects/P1`.
*
* @param bool $inheritFromParent
*/
public function setInheritFromParent($inheritFromParent)
{
$this->inheritFromParent = $inheritFromParent;
}
/**
* @return bool
*/
public function getInheritFromParent()
{
return $this->inheritFromParent;
}
/**
* Optional. The Google Cloud Console will try to default to a configuration
* that matches the value specified in this `Policy`. If `suggested_value` is
* not set, it will inherit the value specified higher in the hierarchy,
* unless `inherit_from_parent` is `false`.
*
* @param string $suggestedValue
*/
public function setSuggestedValue($suggestedValue)
{
$this->suggestedValue = $suggestedValue;
}
/**
* @return string
*/
public function getSuggestedValue()
{
return $this->suggestedValue;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(GoogleCloudOrgpolicyV1ListPolicy::class, 'Google_Service_CloudAsset_GoogleCloudOrgpolicyV1ListPolicy');
@@ -0,0 +1,199 @@
<?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\CloudAsset;
class GoogleCloudOrgpolicyV1Policy extends \Google\Model
{
protected $booleanPolicyType = GoogleCloudOrgpolicyV1BooleanPolicy::class;
protected $booleanPolicyDataType = '';
/**
* The name of the `Constraint` the `Policy` is configuring, for example,
* `constraints/serviceuser.services`. A [list of available
* constraints](/resource-manager/docs/organization-policy/org-policy-
* constraints) is available. Immutable after creation.
*
* @var string
*/
public $constraint;
/**
* An opaque tag indicating the current version of the `Policy`, used for
* concurrency control. When the `Policy` is returned from either a
* `GetPolicy` or a `ListOrgPolicy` request, this `etag` indicates the version
* of the current `Policy` to use when executing a read-modify-write loop.
* When the `Policy` is returned from a `GetEffectivePolicy` request, the
* `etag` will be unset. When the `Policy` is used in a `SetOrgPolicy` method,
* use the `etag` value that was returned from a `GetOrgPolicy` request as
* part of a read-modify-write loop for concurrency control. Not setting the
* `etag`in a `SetOrgPolicy` request will result in an unconditional write of
* the `Policy`.
*
* @var string
*/
public $etag;
protected $listPolicyType = GoogleCloudOrgpolicyV1ListPolicy::class;
protected $listPolicyDataType = '';
protected $restoreDefaultType = GoogleCloudOrgpolicyV1RestoreDefault::class;
protected $restoreDefaultDataType = '';
/**
* The time stamp the `Policy` was previously updated. This is set by the
* server, not specified by the caller, and represents the last time a call to
* `SetOrgPolicy` was made for that `Policy`. Any value set by the client will
* be ignored.
*
* @var string
*/
public $updateTime;
/**
* Version of the `Policy`. Default version is 0;
*
* @var int
*/
public $version;
/**
* For boolean `Constraints`, whether to enforce the `Constraint` or not.
*
* @param GoogleCloudOrgpolicyV1BooleanPolicy $booleanPolicy
*/
public function setBooleanPolicy(GoogleCloudOrgpolicyV1BooleanPolicy $booleanPolicy)
{
$this->booleanPolicy = $booleanPolicy;
}
/**
* @return GoogleCloudOrgpolicyV1BooleanPolicy
*/
public function getBooleanPolicy()
{
return $this->booleanPolicy;
}
/**
* The name of the `Constraint` the `Policy` is configuring, for example,
* `constraints/serviceuser.services`. A [list of available
* constraints](/resource-manager/docs/organization-policy/org-policy-
* constraints) is available. Immutable after creation.
*
* @param string $constraint
*/
public function setConstraint($constraint)
{
$this->constraint = $constraint;
}
/**
* @return string
*/
public function getConstraint()
{
return $this->constraint;
}
/**
* An opaque tag indicating the current version of the `Policy`, used for
* concurrency control. When the `Policy` is returned from either a
* `GetPolicy` or a `ListOrgPolicy` request, this `etag` indicates the version
* of the current `Policy` to use when executing a read-modify-write loop.
* When the `Policy` is returned from a `GetEffectivePolicy` request, the
* `etag` will be unset. When the `Policy` is used in a `SetOrgPolicy` method,
* use the `etag` value that was returned from a `GetOrgPolicy` request as
* part of a read-modify-write loop for concurrency control. Not setting the
* `etag`in a `SetOrgPolicy` request will result in an unconditional write of
* the `Policy`.
*
* @param string $etag
*/
public function setEtag($etag)
{
$this->etag = $etag;
}
/**
* @return string
*/
public function getEtag()
{
return $this->etag;
}
/**
* List of values either allowed or disallowed.
*
* @param GoogleCloudOrgpolicyV1ListPolicy $listPolicy
*/
public function setListPolicy(GoogleCloudOrgpolicyV1ListPolicy $listPolicy)
{
$this->listPolicy = $listPolicy;
}
/**
* @return GoogleCloudOrgpolicyV1ListPolicy
*/
public function getListPolicy()
{
return $this->listPolicy;
}
/**
* Restores the default behavior of the constraint; independent of
* `Constraint` type.
*
* @param GoogleCloudOrgpolicyV1RestoreDefault $restoreDefault
*/
public function setRestoreDefault(GoogleCloudOrgpolicyV1RestoreDefault $restoreDefault)
{
$this->restoreDefault = $restoreDefault;
}
/**
* @return GoogleCloudOrgpolicyV1RestoreDefault
*/
public function getRestoreDefault()
{
return $this->restoreDefault;
}
/**
* The time stamp the `Policy` was previously updated. This is set by the
* server, not specified by the caller, and represents the last time a call to
* `SetOrgPolicy` was made for that `Policy`. Any value set by the client will
* be ignored.
*
* @param string $updateTime
*/
public function setUpdateTime($updateTime)
{
$this->updateTime = $updateTime;
}
/**
* @return string
*/
public function getUpdateTime()
{
return $this->updateTime;
}
/**
* Version of the `Policy`. Default version is 0;
*
* @param int $version
*/
public function setVersion($version)
{
$this->version = $version;
}
/**
* @return int
*/
public function getVersion()
{
return $this->version;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(GoogleCloudOrgpolicyV1Policy::class, 'Google_Service_CloudAsset_GoogleCloudOrgpolicyV1Policy');
@@ -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\CloudAsset;
class GoogleCloudOrgpolicyV1RestoreDefault extends \Google\Model
{
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(GoogleCloudOrgpolicyV1RestoreDefault::class, 'Google_Service_CloudAsset_GoogleCloudOrgpolicyV1RestoreDefault');
@@ -0,0 +1,115 @@
<?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\CloudAsset;
class GoogleIamV2DenyRule extends \Google\Collection
{
protected $collection_key = 'exceptionPrincipals';
protected $denialConditionType = Expr::class;
protected $denialConditionDataType = '';
/**
* @var string[]
*/
public $deniedPermissions;
/**
* @var string[]
*/
public $deniedPrincipals;
/**
* @var string[]
*/
public $exceptionPermissions;
/**
* @var string[]
*/
public $exceptionPrincipals;
/**
* @param Expr
*/
public function setDenialCondition(Expr $denialCondition)
{
$this->denialCondition = $denialCondition;
}
/**
* @return Expr
*/
public function getDenialCondition()
{
return $this->denialCondition;
}
/**
* @param string[]
*/
public function setDeniedPermissions($deniedPermissions)
{
$this->deniedPermissions = $deniedPermissions;
}
/**
* @return string[]
*/
public function getDeniedPermissions()
{
return $this->deniedPermissions;
}
/**
* @param string[]
*/
public function setDeniedPrincipals($deniedPrincipals)
{
$this->deniedPrincipals = $deniedPrincipals;
}
/**
* @return string[]
*/
public function getDeniedPrincipals()
{
return $this->deniedPrincipals;
}
/**
* @param string[]
*/
public function setExceptionPermissions($exceptionPermissions)
{
$this->exceptionPermissions = $exceptionPermissions;
}
/**
* @return string[]
*/
public function getExceptionPermissions()
{
return $this->exceptionPermissions;
}
/**
* @param string[]
*/
public function setExceptionPrincipals($exceptionPrincipals)
{
$this->exceptionPrincipals = $exceptionPrincipals;
}
/**
* @return string[]
*/
public function getExceptionPrincipals()
{
return $this->exceptionPrincipals;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(GoogleIamV2DenyRule::class, 'Google_Service_CloudAsset_GoogleIamV2DenyRule');
@@ -0,0 +1,136 @@
<?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\CloudAsset;
class GoogleIdentityAccesscontextmanagerV1AccessLevel extends \Google\Model
{
protected $basicType = GoogleIdentityAccesscontextmanagerV1BasicLevel::class;
protected $basicDataType = '';
protected $customType = GoogleIdentityAccesscontextmanagerV1CustomLevel::class;
protected $customDataType = '';
/**
* Description of the `AccessLevel` and its use. Does not affect behavior.
*
* @var string
*/
public $description;
/**
* Identifier. Resource name for the `AccessLevel`. Format:
* `accessPolicies/{access_policy}/accessLevels/{access_level}`. The
* `access_level` component must begin with a letter, followed by alphanumeric
* characters or `_`. Its maximum length is 50 characters. After you create an
* `AccessLevel`, you cannot change its `name`.
*
* @var string
*/
public $name;
/**
* Human readable title. Must be unique within the Policy.
*
* @var string
*/
public $title;
/**
* A `BasicLevel` composed of `Conditions`.
*
* @param GoogleIdentityAccesscontextmanagerV1BasicLevel $basic
*/
public function setBasic(GoogleIdentityAccesscontextmanagerV1BasicLevel $basic)
{
$this->basic = $basic;
}
/**
* @return GoogleIdentityAccesscontextmanagerV1BasicLevel
*/
public function getBasic()
{
return $this->basic;
}
/**
* A `CustomLevel` written in the Common Expression Language.
*
* @param GoogleIdentityAccesscontextmanagerV1CustomLevel $custom
*/
public function setCustom(GoogleIdentityAccesscontextmanagerV1CustomLevel $custom)
{
$this->custom = $custom;
}
/**
* @return GoogleIdentityAccesscontextmanagerV1CustomLevel
*/
public function getCustom()
{
return $this->custom;
}
/**
* Description of the `AccessLevel` and its use. Does not affect behavior.
*
* @param string $description
*/
public function setDescription($description)
{
$this->description = $description;
}
/**
* @return string
*/
public function getDescription()
{
return $this->description;
}
/**
* Identifier. Resource name for the `AccessLevel`. Format:
* `accessPolicies/{access_policy}/accessLevels/{access_level}`. The
* `access_level` component must begin with a letter, followed by alphanumeric
* characters or `_`. Its maximum length is 50 characters. After you create an
* `AccessLevel`, you cannot change its `name`.
*
* @param string $name
*/
public function setName($name)
{
$this->name = $name;
}
/**
* @return string
*/
public function getName()
{
return $this->name;
}
/**
* Human readable title. Must be unique within the Policy.
*
* @param string $title
*/
public function setTitle($title)
{
$this->title = $title;
}
/**
* @return string
*/
public function getTitle()
{
return $this->title;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(GoogleIdentityAccesscontextmanagerV1AccessLevel::class, 'Google_Service_CloudAsset_GoogleIdentityAccesscontextmanagerV1AccessLevel');
@@ -0,0 +1,169 @@
<?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\CloudAsset;
class GoogleIdentityAccesscontextmanagerV1AccessPolicy extends \Google\Collection
{
protected $collection_key = 'scopes';
/**
* Output only. An opaque identifier for the current version of the
* `AccessPolicy`. This will always be a strongly validated etag, meaning that
* two Access Policies will be identical if and only if their etags are
* identical. Clients should not expect this to be in any specific format.
*
* @var string
*/
public $etag;
/**
* Output only. Identifier. Resource name of the `AccessPolicy`. Format:
* `accessPolicies/{access_policy}`
*
* @var string
*/
public $name;
/**
* Required. The parent of this `AccessPolicy` in the Cloud Resource
* Hierarchy. Currently immutable once created. Format:
* `organizations/{organization_id}`
*
* @var string
*/
public $parent;
/**
* The scopes of the AccessPolicy. Scopes define which resources a policy can
* restrict and where its resources can be referenced. For example, policy A
* with `scopes=["folders/123"]` has the following behavior: -
* ServicePerimeter can only restrict projects within `folders/123`. -
* ServicePerimeter within policy A can only reference access levels defined
* within policy A. - Only one policy can include a given scope; thus,
* attempting to create a second policy which includes `folders/123` will
* result in an error. If no scopes are provided, then any resource within the
* organization can be restricted. Scopes cannot be modified after a policy is
* created. Policies can only have a single scope. Format: list of
* `folders/{folder_number}` or `projects/{project_number}`
*
* @var string[]
*/
public $scopes;
/**
* Required. Human readable title. Does not affect behavior.
*
* @var string
*/
public $title;
/**
* Output only. An opaque identifier for the current version of the
* `AccessPolicy`. This will always be a strongly validated etag, meaning that
* two Access Policies will be identical if and only if their etags are
* identical. Clients should not expect this to be in any specific format.
*
* @param string $etag
*/
public function setEtag($etag)
{
$this->etag = $etag;
}
/**
* @return string
*/
public function getEtag()
{
return $this->etag;
}
/**
* Output only. Identifier. Resource name of the `AccessPolicy`. Format:
* `accessPolicies/{access_policy}`
*
* @param string $name
*/
public function setName($name)
{
$this->name = $name;
}
/**
* @return string
*/
public function getName()
{
return $this->name;
}
/**
* Required. The parent of this `AccessPolicy` in the Cloud Resource
* Hierarchy. Currently immutable once created. Format:
* `organizations/{organization_id}`
*
* @param string $parent
*/
public function setParent($parent)
{
$this->parent = $parent;
}
/**
* @return string
*/
public function getParent()
{
return $this->parent;
}
/**
* The scopes of the AccessPolicy. Scopes define which resources a policy can
* restrict and where its resources can be referenced. For example, policy A
* with `scopes=["folders/123"]` has the following behavior: -
* ServicePerimeter can only restrict projects within `folders/123`. -
* ServicePerimeter within policy A can only reference access levels defined
* within policy A. - Only one policy can include a given scope; thus,
* attempting to create a second policy which includes `folders/123` will
* result in an error. If no scopes are provided, then any resource within the
* organization can be restricted. Scopes cannot be modified after a policy is
* created. Policies can only have a single scope. Format: list of
* `folders/{folder_number}` or `projects/{project_number}`
*
* @param string[] $scopes
*/
public function setScopes($scopes)
{
$this->scopes = $scopes;
}
/**
* @return string[]
*/
public function getScopes()
{
return $this->scopes;
}
/**
* Required. Human readable title. Does not affect behavior.
*
* @param string $title
*/
public function setTitle($title)
{
$this->title = $title;
}
/**
* @return string
*/
public function getTitle()
{
return $this->title;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(GoogleIdentityAccesscontextmanagerV1AccessPolicy::class, 'Google_Service_CloudAsset_GoogleIdentityAccesscontextmanagerV1AccessPolicy');
@@ -0,0 +1,74 @@
<?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\CloudAsset;
class GoogleIdentityAccesscontextmanagerV1ApiOperation extends \Google\Collection
{
protected $collection_key = 'methodSelectors';
protected $methodSelectorsType = GoogleIdentityAccesscontextmanagerV1MethodSelector::class;
protected $methodSelectorsDataType = 'array';
/**
* The name of the API whose methods or permissions the IngressPolicy or
* EgressPolicy want to allow. A single ApiOperation with `service_name` field
* set to `*` will allow all methods AND permissions for all services.
*
* @var string
*/
public $serviceName;
/**
* API methods or permissions to allow. Method or permission must belong to
* the service specified by `service_name` field. A single MethodSelector
* entry with `*` specified for the `method` field will allow all methods AND
* permissions for the service specified in `service_name`.
*
* @param GoogleIdentityAccesscontextmanagerV1MethodSelector[] $methodSelectors
*/
public function setMethodSelectors($methodSelectors)
{
$this->methodSelectors = $methodSelectors;
}
/**
* @return GoogleIdentityAccesscontextmanagerV1MethodSelector[]
*/
public function getMethodSelectors()
{
return $this->methodSelectors;
}
/**
* The name of the API whose methods or permissions the IngressPolicy or
* EgressPolicy want to allow. A single ApiOperation with `service_name` field
* set to `*` will allow all methods AND permissions for all services.
*
* @param string $serviceName
*/
public function setServiceName($serviceName)
{
$this->serviceName = $serviceName;
}
/**
* @return string
*/
public function getServiceName()
{
return $this->serviceName;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(GoogleIdentityAccesscontextmanagerV1ApiOperation::class, 'Google_Service_CloudAsset_GoogleIdentityAccesscontextmanagerV1ApiOperation');
@@ -0,0 +1,85 @@
<?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\CloudAsset;
class GoogleIdentityAccesscontextmanagerV1BasicLevel extends \Google\Collection
{
/**
* All `Conditions` must be true for the `BasicLevel` to be true.
*/
public const COMBINING_FUNCTION_AND = 'AND';
/**
* If at least one `Condition` is true, then the `BasicLevel` is true.
*/
public const COMBINING_FUNCTION_OR = 'OR';
protected $collection_key = 'conditions';
/**
* How the `conditions` list should be combined to determine if a request is
* granted this `AccessLevel`. If AND is used, each `Condition` in
* `conditions` must be satisfied for the `AccessLevel` to be applied. If OR
* is used, at least one `Condition` in `conditions` must be satisfied for the
* `AccessLevel` to be applied. Default behavior is AND.
*
* @var string
*/
public $combiningFunction;
protected $conditionsType = GoogleIdentityAccesscontextmanagerV1Condition::class;
protected $conditionsDataType = 'array';
/**
* How the `conditions` list should be combined to determine if a request is
* granted this `AccessLevel`. If AND is used, each `Condition` in
* `conditions` must be satisfied for the `AccessLevel` to be applied. If OR
* is used, at least one `Condition` in `conditions` must be satisfied for the
* `AccessLevel` to be applied. Default behavior is AND.
*
* Accepted values: AND, OR
*
* @param self::COMBINING_FUNCTION_* $combiningFunction
*/
public function setCombiningFunction($combiningFunction)
{
$this->combiningFunction = $combiningFunction;
}
/**
* @return self::COMBINING_FUNCTION_*
*/
public function getCombiningFunction()
{
return $this->combiningFunction;
}
/**
* Required. A list of requirements for the `AccessLevel` to be granted.
*
* @param GoogleIdentityAccesscontextmanagerV1Condition[] $conditions
*/
public function setConditions($conditions)
{
$this->conditions = $conditions;
}
/**
* @return GoogleIdentityAccesscontextmanagerV1Condition[]
*/
public function getConditions()
{
return $this->conditions;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(GoogleIdentityAccesscontextmanagerV1BasicLevel::class, 'Google_Service_CloudAsset_GoogleIdentityAccesscontextmanagerV1BasicLevel');
@@ -0,0 +1,207 @@
<?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\CloudAsset;
class GoogleIdentityAccesscontextmanagerV1Condition extends \Google\Collection
{
protected $collection_key = 'vpcNetworkSources';
protected $devicePolicyType = GoogleIdentityAccesscontextmanagerV1DevicePolicy::class;
protected $devicePolicyDataType = '';
/**
* CIDR block IP subnetwork specification. May be IPv4 or IPv6. Note that for
* a CIDR IP address block, the specified IP address portion must be properly
* truncated (i.e. all the host bits must be zero) or the input is considered
* malformed. For example, "192.0.2.0/24" is accepted but "192.0.2.1/24" is
* not. Similarly, for IPv6, "2001:db8::/32" is accepted whereas
* "2001:db8::1/32" is not. The originating IP of a request must be in one of
* the listed subnets in order for this Condition to be true. If empty, all IP
* addresses are allowed.
*
* @var string[]
*/
public $ipSubnetworks;
/**
* The request must be made by one of the provided user or service accounts.
* Groups are not supported. Syntax: `user:{emailid}`
* `serviceAccount:{emailid}` If not specified, a request may come from any
* user.
*
* @var string[]
*/
public $members;
/**
* Whether to negate the Condition. If true, the Condition becomes a NAND over
* its non-empty fields. Any non-empty field criteria evaluating to false will
* result in the Condition to be satisfied. Defaults to false.
*
* @var bool
*/
public $negate;
/**
* The request must originate from one of the provided countries/regions. Must
* be valid ISO 3166-1 alpha-2 codes.
*
* @var string[]
*/
public $regions;
/**
* A list of other access levels defined in the same `Policy`, referenced by
* resource name. Referencing an `AccessLevel` which does not exist is an
* error. All access levels listed must be granted for the Condition to be
* true. Example: "`accessPolicies/MY_POLICY/accessLevels/LEVEL_NAME"`
*
* @var string[]
*/
public $requiredAccessLevels;
protected $vpcNetworkSourcesType = GoogleIdentityAccesscontextmanagerV1VpcNetworkSource::class;
protected $vpcNetworkSourcesDataType = 'array';
/**
* Device specific restrictions, all restrictions must hold for the Condition
* to be true. If not specified, all devices are allowed.
*
* @param GoogleIdentityAccesscontextmanagerV1DevicePolicy $devicePolicy
*/
public function setDevicePolicy(GoogleIdentityAccesscontextmanagerV1DevicePolicy $devicePolicy)
{
$this->devicePolicy = $devicePolicy;
}
/**
* @return GoogleIdentityAccesscontextmanagerV1DevicePolicy
*/
public function getDevicePolicy()
{
return $this->devicePolicy;
}
/**
* CIDR block IP subnetwork specification. May be IPv4 or IPv6. Note that for
* a CIDR IP address block, the specified IP address portion must be properly
* truncated (i.e. all the host bits must be zero) or the input is considered
* malformed. For example, "192.0.2.0/24" is accepted but "192.0.2.1/24" is
* not. Similarly, for IPv6, "2001:db8::/32" is accepted whereas
* "2001:db8::1/32" is not. The originating IP of a request must be in one of
* the listed subnets in order for this Condition to be true. If empty, all IP
* addresses are allowed.
*
* @param string[] $ipSubnetworks
*/
public function setIpSubnetworks($ipSubnetworks)
{
$this->ipSubnetworks = $ipSubnetworks;
}
/**
* @return string[]
*/
public function getIpSubnetworks()
{
return $this->ipSubnetworks;
}
/**
* The request must be made by one of the provided user or service accounts.
* Groups are not supported. Syntax: `user:{emailid}`
* `serviceAccount:{emailid}` If not specified, a request may come from any
* user.
*
* @param string[] $members
*/
public function setMembers($members)
{
$this->members = $members;
}
/**
* @return string[]
*/
public function getMembers()
{
return $this->members;
}
/**
* Whether to negate the Condition. If true, the Condition becomes a NAND over
* its non-empty fields. Any non-empty field criteria evaluating to false will
* result in the Condition to be satisfied. Defaults to false.
*
* @param bool $negate
*/
public function setNegate($negate)
{
$this->negate = $negate;
}
/**
* @return bool
*/
public function getNegate()
{
return $this->negate;
}
/**
* The request must originate from one of the provided countries/regions. Must
* be valid ISO 3166-1 alpha-2 codes.
*
* @param string[] $regions
*/
public function setRegions($regions)
{
$this->regions = $regions;
}
/**
* @return string[]
*/
public function getRegions()
{
return $this->regions;
}
/**
* A list of other access levels defined in the same `Policy`, referenced by
* resource name. Referencing an `AccessLevel` which does not exist is an
* error. All access levels listed must be granted for the Condition to be
* true. Example: "`accessPolicies/MY_POLICY/accessLevels/LEVEL_NAME"`
*
* @param string[] $requiredAccessLevels
*/
public function setRequiredAccessLevels($requiredAccessLevels)
{
$this->requiredAccessLevels = $requiredAccessLevels;
}
/**
* @return string[]
*/
public function getRequiredAccessLevels()
{
return $this->requiredAccessLevels;
}
/**
* The request must originate from one of the provided VPC networks in Google
* Cloud. Cannot specify this field together with `ip_subnetworks`.
*
* @param GoogleIdentityAccesscontextmanagerV1VpcNetworkSource[] $vpcNetworkSources
*/
public function setVpcNetworkSources($vpcNetworkSources)
{
$this->vpcNetworkSources = $vpcNetworkSources;
}
/**
* @return GoogleIdentityAccesscontextmanagerV1VpcNetworkSource[]
*/
public function getVpcNetworkSources()
{
return $this->vpcNetworkSources;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(GoogleIdentityAccesscontextmanagerV1Condition::class, 'Google_Service_CloudAsset_GoogleIdentityAccesscontextmanagerV1Condition');
@@ -0,0 +1,44 @@
<?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\CloudAsset;
class GoogleIdentityAccesscontextmanagerV1CustomLevel extends \Google\Model
{
protected $exprType = Expr::class;
protected $exprDataType = '';
/**
* Required. A Cloud CEL expression evaluating to a boolean.
*
* @param Expr $expr
*/
public function setExpr(Expr $expr)
{
$this->expr = $expr;
}
/**
* @return Expr
*/
public function getExpr()
{
return $this->expr;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(GoogleIdentityAccesscontextmanagerV1CustomLevel::class, 'Google_Service_CloudAsset_GoogleIdentityAccesscontextmanagerV1CustomLevel');
@@ -0,0 +1,159 @@
<?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\CloudAsset;
class GoogleIdentityAccesscontextmanagerV1DevicePolicy extends \Google\Collection
{
protected $collection_key = 'osConstraints';
/**
* Allowed device management levels, an empty list allows all management
* levels.
*
* @var string[]
*/
public $allowedDeviceManagementLevels;
/**
* Allowed encryptions statuses, an empty list allows all statuses.
*
* @var string[]
*/
public $allowedEncryptionStatuses;
protected $osConstraintsType = GoogleIdentityAccesscontextmanagerV1OsConstraint::class;
protected $osConstraintsDataType = 'array';
/**
* Whether the device needs to be approved by the customer admin.
*
* @var bool
*/
public $requireAdminApproval;
/**
* Whether the device needs to be corp owned.
*
* @var bool
*/
public $requireCorpOwned;
/**
* Whether or not screenlock is required for the DevicePolicy to be true.
* Defaults to `false`.
*
* @var bool
*/
public $requireScreenlock;
/**
* Allowed device management levels, an empty list allows all management
* levels.
*
* @param string[] $allowedDeviceManagementLevels
*/
public function setAllowedDeviceManagementLevels($allowedDeviceManagementLevels)
{
$this->allowedDeviceManagementLevels = $allowedDeviceManagementLevels;
}
/**
* @return string[]
*/
public function getAllowedDeviceManagementLevels()
{
return $this->allowedDeviceManagementLevels;
}
/**
* Allowed encryptions statuses, an empty list allows all statuses.
*
* @param string[] $allowedEncryptionStatuses
*/
public function setAllowedEncryptionStatuses($allowedEncryptionStatuses)
{
$this->allowedEncryptionStatuses = $allowedEncryptionStatuses;
}
/**
* @return string[]
*/
public function getAllowedEncryptionStatuses()
{
return $this->allowedEncryptionStatuses;
}
/**
* Allowed OS versions, an empty list allows all types and all versions.
*
* @param GoogleIdentityAccesscontextmanagerV1OsConstraint[] $osConstraints
*/
public function setOsConstraints($osConstraints)
{
$this->osConstraints = $osConstraints;
}
/**
* @return GoogleIdentityAccesscontextmanagerV1OsConstraint[]
*/
public function getOsConstraints()
{
return $this->osConstraints;
}
/**
* Whether the device needs to be approved by the customer admin.
*
* @param bool $requireAdminApproval
*/
public function setRequireAdminApproval($requireAdminApproval)
{
$this->requireAdminApproval = $requireAdminApproval;
}
/**
* @return bool
*/
public function getRequireAdminApproval()
{
return $this->requireAdminApproval;
}
/**
* Whether the device needs to be corp owned.
*
* @param bool $requireCorpOwned
*/
public function setRequireCorpOwned($requireCorpOwned)
{
$this->requireCorpOwned = $requireCorpOwned;
}
/**
* @return bool
*/
public function getRequireCorpOwned()
{
return $this->requireCorpOwned;
}
/**
* Whether or not screenlock is required for the DevicePolicy to be true.
* Defaults to `false`.
*
* @param bool $requireScreenlock
*/
public function setRequireScreenlock($requireScreenlock)
{
$this->requireScreenlock = $requireScreenlock;
}
/**
* @return bool
*/
public function getRequireScreenlock()
{
return $this->requireScreenlock;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(GoogleIdentityAccesscontextmanagerV1DevicePolicy::class, 'Google_Service_CloudAsset_GoogleIdentityAccesscontextmanagerV1DevicePolicy');
@@ -0,0 +1,166 @@
<?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\CloudAsset;
class GoogleIdentityAccesscontextmanagerV1EgressFrom extends \Google\Collection
{
/**
* No blanket identity group specified.
*/
public const IDENTITY_TYPE_IDENTITY_TYPE_UNSPECIFIED = 'IDENTITY_TYPE_UNSPECIFIED';
/**
* Authorize access from all identities outside the perimeter.
*/
public const IDENTITY_TYPE_ANY_IDENTITY = 'ANY_IDENTITY';
/**
* Authorize access from all human users outside the perimeter.
*/
public const IDENTITY_TYPE_ANY_USER_ACCOUNT = 'ANY_USER_ACCOUNT';
/**
* Authorize access from all service accounts outside the perimeter.
*/
public const IDENTITY_TYPE_ANY_SERVICE_ACCOUNT = 'ANY_SERVICE_ACCOUNT';
/**
* Enforcement preference unspecified, will not enforce traffic restrictions
* based on `sources` in EgressFrom.
*/
public const SOURCE_RESTRICTION_SOURCE_RESTRICTION_UNSPECIFIED = 'SOURCE_RESTRICTION_UNSPECIFIED';
/**
* Enforcement preference enabled, traffic restrictions will be enforced based
* on `sources` in EgressFrom.
*/
public const SOURCE_RESTRICTION_SOURCE_RESTRICTION_ENABLED = 'SOURCE_RESTRICTION_ENABLED';
/**
* Enforcement preference disabled, will not enforce traffic restrictions
* based on `sources` in EgressFrom.
*/
public const SOURCE_RESTRICTION_SOURCE_RESTRICTION_DISABLED = 'SOURCE_RESTRICTION_DISABLED';
protected $collection_key = 'sources';
/**
* A list of identities that are allowed access through [EgressPolicy].
* Identities can be an individual user, service account, Google group, third-
* party identity, or agent identity. For the list of supported identity
* types, see https://docs.cloud.google.com/vpc-service-
* controls/docs/supported-identities.
*
* @var string[]
*/
public $identities;
/**
* Specifies the type of identities that are allowed access to outside the
* perimeter. If left unspecified, then members of `identities` field will be
* allowed access.
*
* @var string
*/
public $identityType;
/**
* Whether to enforce traffic restrictions based on `sources` field. If the
* `sources` fields is non-empty, then this field must be set to
* `SOURCE_RESTRICTION_ENABLED`.
*
* @var string
*/
public $sourceRestriction;
protected $sourcesType = GoogleIdentityAccesscontextmanagerV1EgressSource::class;
protected $sourcesDataType = 'array';
/**
* A list of identities that are allowed access through [EgressPolicy].
* Identities can be an individual user, service account, Google group, third-
* party identity, or agent identity. For the list of supported identity
* types, see https://docs.cloud.google.com/vpc-service-
* controls/docs/supported-identities.
*
* @param string[] $identities
*/
public function setIdentities($identities)
{
$this->identities = $identities;
}
/**
* @return string[]
*/
public function getIdentities()
{
return $this->identities;
}
/**
* Specifies the type of identities that are allowed access to outside the
* perimeter. If left unspecified, then members of `identities` field will be
* allowed access.
*
* Accepted values: IDENTITY_TYPE_UNSPECIFIED, ANY_IDENTITY, ANY_USER_ACCOUNT,
* ANY_SERVICE_ACCOUNT
*
* @param self::IDENTITY_TYPE_* $identityType
*/
public function setIdentityType($identityType)
{
$this->identityType = $identityType;
}
/**
* @return self::IDENTITY_TYPE_*
*/
public function getIdentityType()
{
return $this->identityType;
}
/**
* Whether to enforce traffic restrictions based on `sources` field. If the
* `sources` fields is non-empty, then this field must be set to
* `SOURCE_RESTRICTION_ENABLED`.
*
* Accepted values: SOURCE_RESTRICTION_UNSPECIFIED,
* SOURCE_RESTRICTION_ENABLED, SOURCE_RESTRICTION_DISABLED
*
* @param self::SOURCE_RESTRICTION_* $sourceRestriction
*/
public function setSourceRestriction($sourceRestriction)
{
$this->sourceRestriction = $sourceRestriction;
}
/**
* @return self::SOURCE_RESTRICTION_*
*/
public function getSourceRestriction()
{
return $this->sourceRestriction;
}
/**
* Sources that this EgressPolicy authorizes access from. If this field is not
* empty, then `source_restriction` must be set to
* `SOURCE_RESTRICTION_ENABLED`.
*
* @param GoogleIdentityAccesscontextmanagerV1EgressSource[] $sources
*/
public function setSources($sources)
{
$this->sources = $sources;
}
/**
* @return GoogleIdentityAccesscontextmanagerV1EgressSource[]
*/
public function getSources()
{
return $this->sources;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(GoogleIdentityAccesscontextmanagerV1EgressFrom::class, 'Google_Service_CloudAsset_GoogleIdentityAccesscontextmanagerV1EgressFrom');
@@ -0,0 +1,92 @@
<?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\CloudAsset;
class GoogleIdentityAccesscontextmanagerV1EgressPolicy extends \Google\Model
{
protected $egressFromType = GoogleIdentityAccesscontextmanagerV1EgressFrom::class;
protected $egressFromDataType = '';
protected $egressToType = GoogleIdentityAccesscontextmanagerV1EgressTo::class;
protected $egressToDataType = '';
/**
* Optional. Human-readable title for the egress rule. The title must be
* unique within the perimeter and can not exceed 100 characters. Within the
* access policy, the combined length of all rule titles must not exceed
* 240,000 characters.
*
* @var string
*/
public $title;
/**
* Defines conditions on the source of a request causing this EgressPolicy to
* apply.
*
* @param GoogleIdentityAccesscontextmanagerV1EgressFrom $egressFrom
*/
public function setEgressFrom(GoogleIdentityAccesscontextmanagerV1EgressFrom $egressFrom)
{
$this->egressFrom = $egressFrom;
}
/**
* @return GoogleIdentityAccesscontextmanagerV1EgressFrom
*/
public function getEgressFrom()
{
return $this->egressFrom;
}
/**
* Defines the conditions on the ApiOperation and destination resources that
* cause this EgressPolicy to apply.
*
* @param GoogleIdentityAccesscontextmanagerV1EgressTo $egressTo
*/
public function setEgressTo(GoogleIdentityAccesscontextmanagerV1EgressTo $egressTo)
{
$this->egressTo = $egressTo;
}
/**
* @return GoogleIdentityAccesscontextmanagerV1EgressTo
*/
public function getEgressTo()
{
return $this->egressTo;
}
/**
* Optional. Human-readable title for the egress rule. The title must be
* unique within the perimeter and can not exceed 100 characters. Within the
* access policy, the combined length of all rule titles must not exceed
* 240,000 characters.
*
* @param string $title
*/
public function setTitle($title)
{
$this->title = $title;
}
/**
* @return string
*/
public function getTitle()
{
return $this->title;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(GoogleIdentityAccesscontextmanagerV1EgressPolicy::class, 'Google_Service_CloudAsset_GoogleIdentityAccesscontextmanagerV1EgressPolicy');
@@ -0,0 +1,92 @@
<?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\CloudAsset;
class GoogleIdentityAccesscontextmanagerV1EgressSource extends \Google\Model
{
/**
* An AccessLevel resource name that allows protected resources inside the
* ServicePerimeters to access outside the ServicePerimeter boundaries.
* AccessLevels listed must be in the same policy as this ServicePerimeter.
* Referencing a nonexistent AccessLevel will cause an error. If an
* AccessLevel name is not specified, only resources within the perimeter can
* be accessed through Google Cloud calls with request origins within the
* perimeter. Example: `accessPolicies/MY_POLICY/accessLevels/MY_LEVEL`. If a
* single `*` is specified for `access_level`, then all EgressSources will be
* allowed.
*
* @var string
*/
public $accessLevel;
/**
* A Google Cloud resource from the service perimeter that you want to allow
* to access data outside the perimeter. This field supports only projects.
* The project format is `projects/{project_number}`. You can't use `*` in
* this field to allow all Google Cloud resources.
*
* @var string
*/
public $resource;
/**
* An AccessLevel resource name that allows protected resources inside the
* ServicePerimeters to access outside the ServicePerimeter boundaries.
* AccessLevels listed must be in the same policy as this ServicePerimeter.
* Referencing a nonexistent AccessLevel will cause an error. If an
* AccessLevel name is not specified, only resources within the perimeter can
* be accessed through Google Cloud calls with request origins within the
* perimeter. Example: `accessPolicies/MY_POLICY/accessLevels/MY_LEVEL`. If a
* single `*` is specified for `access_level`, then all EgressSources will be
* allowed.
*
* @param string $accessLevel
*/
public function setAccessLevel($accessLevel)
{
$this->accessLevel = $accessLevel;
}
/**
* @return string
*/
public function getAccessLevel()
{
return $this->accessLevel;
}
/**
* A Google Cloud resource from the service perimeter that you want to allow
* to access data outside the perimeter. This field supports only projects.
* The project format is `projects/{project_number}`. You can't use `*` in
* this field to allow all Google Cloud resources.
*
* @param string $resource
*/
public function setResource($resource)
{
$this->resource = $resource;
}
/**
* @return string
*/
public function getResource()
{
return $this->resource;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(GoogleIdentityAccesscontextmanagerV1EgressSource::class, 'Google_Service_CloudAsset_GoogleIdentityAccesscontextmanagerV1EgressSource');
@@ -0,0 +1,137 @@
<?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\CloudAsset;
class GoogleIdentityAccesscontextmanagerV1EgressTo extends \Google\Collection
{
protected $collection_key = 'roles';
/**
* A list of external resources that are allowed to be accessed. Only AWS and
* Azure resources are supported. For Amazon S3, the supported formats are
* s3://BUCKET_NAME, s3a://BUCKET_NAME, and s3n://BUCKET_NAME. For Azure
* Storage, the supported format is
* azure://myaccount.blob.core.windows.net/CONTAINER_NAME. A request matches
* if it contains an external resource in this list (Example:
* s3://bucket/path). Currently '*' is not allowed.
*
* @var string[]
*/
public $externalResources;
protected $operationsType = GoogleIdentityAccesscontextmanagerV1ApiOperation::class;
protected $operationsDataType = 'array';
/**
* A list of resources, currently only projects in the form `projects/`, that
* are allowed to be accessed by sources defined in the corresponding
* EgressFrom. A request matches if it contains a resource in this list. If
* `*` is specified for `resources`, then this EgressTo rule will authorize
* access to all resources outside the perimeter.
*
* @var string[]
*/
public $resources;
/**
* IAM roles that represent the set of operations that the sources specified
* in the corresponding EgressFrom. are allowed to perform in this
* ServicePerimeter.
*
* @var string[]
*/
public $roles;
/**
* A list of external resources that are allowed to be accessed. Only AWS and
* Azure resources are supported. For Amazon S3, the supported formats are
* s3://BUCKET_NAME, s3a://BUCKET_NAME, and s3n://BUCKET_NAME. For Azure
* Storage, the supported format is
* azure://myaccount.blob.core.windows.net/CONTAINER_NAME. A request matches
* if it contains an external resource in this list (Example:
* s3://bucket/path). Currently '*' is not allowed.
*
* @param string[] $externalResources
*/
public function setExternalResources($externalResources)
{
$this->externalResources = $externalResources;
}
/**
* @return string[]
*/
public function getExternalResources()
{
return $this->externalResources;
}
/**
* A list of ApiOperations allowed to be performed by the sources specified in
* the corresponding EgressFrom. A request matches if it uses an
* operation/service in this list.
*
* @param GoogleIdentityAccesscontextmanagerV1ApiOperation[] $operations
*/
public function setOperations($operations)
{
$this->operations = $operations;
}
/**
* @return GoogleIdentityAccesscontextmanagerV1ApiOperation[]
*/
public function getOperations()
{
return $this->operations;
}
/**
* A list of resources, currently only projects in the form `projects/`, that
* are allowed to be accessed by sources defined in the corresponding
* EgressFrom. A request matches if it contains a resource in this list. If
* `*` is specified for `resources`, then this EgressTo rule will authorize
* access to all resources outside the perimeter.
*
* @param string[] $resources
*/
public function setResources($resources)
{
$this->resources = $resources;
}
/**
* @return string[]
*/
public function getResources()
{
return $this->resources;
}
/**
* IAM roles that represent the set of operations that the sources specified
* in the corresponding EgressFrom. are allowed to perform in this
* ServicePerimeter.
*
* @param string[] $roles
*/
public function setRoles($roles)
{
$this->roles = $roles;
}
/**
* @return string[]
*/
public function getRoles()
{
return $this->roles;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(GoogleIdentityAccesscontextmanagerV1EgressTo::class, 'Google_Service_CloudAsset_GoogleIdentityAccesscontextmanagerV1EgressTo');
@@ -0,0 +1,120 @@
<?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\CloudAsset;
class GoogleIdentityAccesscontextmanagerV1IngressFrom extends \Google\Collection
{
/**
* No blanket identity group specified.
*/
public const IDENTITY_TYPE_IDENTITY_TYPE_UNSPECIFIED = 'IDENTITY_TYPE_UNSPECIFIED';
/**
* Authorize access from all identities outside the perimeter.
*/
public const IDENTITY_TYPE_ANY_IDENTITY = 'ANY_IDENTITY';
/**
* Authorize access from all human users outside the perimeter.
*/
public const IDENTITY_TYPE_ANY_USER_ACCOUNT = 'ANY_USER_ACCOUNT';
/**
* Authorize access from all service accounts outside the perimeter.
*/
public const IDENTITY_TYPE_ANY_SERVICE_ACCOUNT = 'ANY_SERVICE_ACCOUNT';
protected $collection_key = 'sources';
/**
* A list of identities that are allowed access through [IngressPolicy].
* Identities can be an individual user, service account, Google group, third-
* party identity, or agent identity. For the list of supported identity
* types, see https://docs.cloud.google.com/vpc-service-
* controls/docs/supported-identities.
*
* @var string[]
*/
public $identities;
/**
* Specifies the type of identities that are allowed access from outside the
* perimeter. If left unspecified, then members of `identities` field will be
* allowed access.
*
* @var string
*/
public $identityType;
protected $sourcesType = GoogleIdentityAccesscontextmanagerV1IngressSource::class;
protected $sourcesDataType = 'array';
/**
* A list of identities that are allowed access through [IngressPolicy].
* Identities can be an individual user, service account, Google group, third-
* party identity, or agent identity. For the list of supported identity
* types, see https://docs.cloud.google.com/vpc-service-
* controls/docs/supported-identities.
*
* @param string[] $identities
*/
public function setIdentities($identities)
{
$this->identities = $identities;
}
/**
* @return string[]
*/
public function getIdentities()
{
return $this->identities;
}
/**
* Specifies the type of identities that are allowed access from outside the
* perimeter. If left unspecified, then members of `identities` field will be
* allowed access.
*
* Accepted values: IDENTITY_TYPE_UNSPECIFIED, ANY_IDENTITY, ANY_USER_ACCOUNT,
* ANY_SERVICE_ACCOUNT
*
* @param self::IDENTITY_TYPE_* $identityType
*/
public function setIdentityType($identityType)
{
$this->identityType = $identityType;
}
/**
* @return self::IDENTITY_TYPE_*
*/
public function getIdentityType()
{
return $this->identityType;
}
/**
* Sources that this IngressPolicy authorizes access from.
*
* @param GoogleIdentityAccesscontextmanagerV1IngressSource[] $sources
*/
public function setSources($sources)
{
$this->sources = $sources;
}
/**
* @return GoogleIdentityAccesscontextmanagerV1IngressSource[]
*/
public function getSources()
{
return $this->sources;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(GoogleIdentityAccesscontextmanagerV1IngressFrom::class, 'Google_Service_CloudAsset_GoogleIdentityAccesscontextmanagerV1IngressFrom');
@@ -0,0 +1,92 @@
<?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\CloudAsset;
class GoogleIdentityAccesscontextmanagerV1IngressPolicy extends \Google\Model
{
protected $ingressFromType = GoogleIdentityAccesscontextmanagerV1IngressFrom::class;
protected $ingressFromDataType = '';
protected $ingressToType = GoogleIdentityAccesscontextmanagerV1IngressTo::class;
protected $ingressToDataType = '';
/**
* Optional. Human-readable title for the ingress rule. The title must be
* unique within the perimeter and can not exceed 100 characters. Within the
* access policy, the combined length of all rule titles must not exceed
* 240,000 characters.
*
* @var string
*/
public $title;
/**
* Defines the conditions on the source of a request causing this
* IngressPolicy to apply.
*
* @param GoogleIdentityAccesscontextmanagerV1IngressFrom $ingressFrom
*/
public function setIngressFrom(GoogleIdentityAccesscontextmanagerV1IngressFrom $ingressFrom)
{
$this->ingressFrom = $ingressFrom;
}
/**
* @return GoogleIdentityAccesscontextmanagerV1IngressFrom
*/
public function getIngressFrom()
{
return $this->ingressFrom;
}
/**
* Defines the conditions on the ApiOperation and request destination that
* cause this IngressPolicy to apply.
*
* @param GoogleIdentityAccesscontextmanagerV1IngressTo $ingressTo
*/
public function setIngressTo(GoogleIdentityAccesscontextmanagerV1IngressTo $ingressTo)
{
$this->ingressTo = $ingressTo;
}
/**
* @return GoogleIdentityAccesscontextmanagerV1IngressTo
*/
public function getIngressTo()
{
return $this->ingressTo;
}
/**
* Optional. Human-readable title for the ingress rule. The title must be
* unique within the perimeter and can not exceed 100 characters. Within the
* access policy, the combined length of all rule titles must not exceed
* 240,000 characters.
*
* @param string $title
*/
public function setTitle($title)
{
$this->title = $title;
}
/**
* @return string
*/
public function getTitle()
{
return $this->title;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(GoogleIdentityAccesscontextmanagerV1IngressPolicy::class, 'Google_Service_CloudAsset_GoogleIdentityAccesscontextmanagerV1IngressPolicy');
@@ -0,0 +1,98 @@
<?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\CloudAsset;
class GoogleIdentityAccesscontextmanagerV1IngressSource extends \Google\Model
{
/**
* An AccessLevel resource name that allow resources within the
* ServicePerimeters to be accessed from the internet. AccessLevels listed
* must be in the same policy as this ServicePerimeter. Referencing a
* nonexistent AccessLevel will cause an error. If no AccessLevel names are
* listed, resources within the perimeter can only be accessed via Google
* Cloud calls with request origins within the perimeter. Example:
* `accessPolicies/MY_POLICY/accessLevels/MY_LEVEL`. If a single `*` is
* specified for `access_level`, then all IngressSources will be allowed.
*
* @var string
*/
public $accessLevel;
/**
* A Google Cloud resource that is allowed to ingress the perimeter. Requests
* from these resources will be allowed to access perimeter data. Currently
* only projects and VPCs are allowed. Project format:
* `projects/{project_number}` VPC network format:
* `//compute.googleapis.com/projects/{PROJECT_ID}/global/networks/{NAME}`.
* The project may be in any Google Cloud organization, not just the
* organization that the perimeter is defined in. `*` is not allowed, the case
* of allowing all Google Cloud resources only is not supported.
*
* @var string
*/
public $resource;
/**
* An AccessLevel resource name that allow resources within the
* ServicePerimeters to be accessed from the internet. AccessLevels listed
* must be in the same policy as this ServicePerimeter. Referencing a
* nonexistent AccessLevel will cause an error. If no AccessLevel names are
* listed, resources within the perimeter can only be accessed via Google
* Cloud calls with request origins within the perimeter. Example:
* `accessPolicies/MY_POLICY/accessLevels/MY_LEVEL`. If a single `*` is
* specified for `access_level`, then all IngressSources will be allowed.
*
* @param string $accessLevel
*/
public function setAccessLevel($accessLevel)
{
$this->accessLevel = $accessLevel;
}
/**
* @return string
*/
public function getAccessLevel()
{
return $this->accessLevel;
}
/**
* A Google Cloud resource that is allowed to ingress the perimeter. Requests
* from these resources will be allowed to access perimeter data. Currently
* only projects and VPCs are allowed. Project format:
* `projects/{project_number}` VPC network format:
* `//compute.googleapis.com/projects/{PROJECT_ID}/global/networks/{NAME}`.
* The project may be in any Google Cloud organization, not just the
* organization that the perimeter is defined in. `*` is not allowed, the case
* of allowing all Google Cloud resources only is not supported.
*
* @param string $resource
*/
public function setResource($resource)
{
$this->resource = $resource;
}
/**
* @return string
*/
public function getResource()
{
return $this->resource;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(GoogleIdentityAccesscontextmanagerV1IngressSource::class, 'Google_Service_CloudAsset_GoogleIdentityAccesscontextmanagerV1IngressSource');
@@ -0,0 +1,100 @@
<?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\CloudAsset;
class GoogleIdentityAccesscontextmanagerV1IngressTo extends \Google\Collection
{
protected $collection_key = 'roles';
protected $operationsType = GoogleIdentityAccesscontextmanagerV1ApiOperation::class;
protected $operationsDataType = 'array';
/**
* A list of resources, currently only projects in the form `projects/`,
* protected by this ServicePerimeter that are allowed to be accessed by
* sources defined in the corresponding IngressFrom. If a single `*` is
* specified, then access to all resources inside the perimeter are allowed.
*
* @var string[]
*/
public $resources;
/**
* IAM roles that represent the set of operations that the sources specified
* in the corresponding IngressFrom are allowed to perform in this
* ServicePerimeter.
*
* @var string[]
*/
public $roles;
/**
* A list of ApiOperations allowed to be performed by the sources specified in
* corresponding IngressFrom in this ServicePerimeter.
*
* @param GoogleIdentityAccesscontextmanagerV1ApiOperation[] $operations
*/
public function setOperations($operations)
{
$this->operations = $operations;
}
/**
* @return GoogleIdentityAccesscontextmanagerV1ApiOperation[]
*/
public function getOperations()
{
return $this->operations;
}
/**
* A list of resources, currently only projects in the form `projects/`,
* protected by this ServicePerimeter that are allowed to be accessed by
* sources defined in the corresponding IngressFrom. If a single `*` is
* specified, then access to all resources inside the perimeter are allowed.
*
* @param string[] $resources
*/
public function setResources($resources)
{
$this->resources = $resources;
}
/**
* @return string[]
*/
public function getResources()
{
return $this->resources;
}
/**
* IAM roles that represent the set of operations that the sources specified
* in the corresponding IngressFrom are allowed to perform in this
* ServicePerimeter.
*
* @param string[] $roles
*/
public function setRoles($roles)
{
$this->roles = $roles;
}
/**
* @return string[]
*/
public function getRoles()
{
return $this->roles;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(GoogleIdentityAccesscontextmanagerV1IngressTo::class, 'Google_Service_CloudAsset_GoogleIdentityAccesscontextmanagerV1IngressTo');
@@ -0,0 +1,76 @@
<?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\CloudAsset;
class GoogleIdentityAccesscontextmanagerV1MethodSelector extends \Google\Model
{
/**
* A valid method name for the corresponding `service_name` in ApiOperation.
* If `*` is used as the value for the `method`, then ALL methods and
* permissions are allowed.
*
* @var string
*/
public $method;
/**
* A valid Cloud IAM permission for the corresponding `service_name` in
* ApiOperation.
*
* @var string
*/
public $permission;
/**
* A valid method name for the corresponding `service_name` in ApiOperation.
* If `*` is used as the value for the `method`, then ALL methods and
* permissions are allowed.
*
* @param string $method
*/
public function setMethod($method)
{
$this->method = $method;
}
/**
* @return string
*/
public function getMethod()
{
return $this->method;
}
/**
* A valid Cloud IAM permission for the corresponding `service_name` in
* ApiOperation.
*
* @param string $permission
*/
public function setPermission($permission)
{
$this->permission = $permission;
}
/**
* @return string
*/
public function getPermission()
{
return $this->permission;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(GoogleIdentityAccesscontextmanagerV1MethodSelector::class, 'Google_Service_CloudAsset_GoogleIdentityAccesscontextmanagerV1MethodSelector');
@@ -0,0 +1,133 @@
<?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\CloudAsset;
class GoogleIdentityAccesscontextmanagerV1OsConstraint extends \Google\Model
{
/**
* The operating system of the device is not specified or not known.
*/
public const OS_TYPE_OS_UNSPECIFIED = 'OS_UNSPECIFIED';
/**
* A desktop Mac operating system.
*/
public const OS_TYPE_DESKTOP_MAC = 'DESKTOP_MAC';
/**
* A desktop Windows operating system.
*/
public const OS_TYPE_DESKTOP_WINDOWS = 'DESKTOP_WINDOWS';
/**
* A desktop Linux operating system.
*/
public const OS_TYPE_DESKTOP_LINUX = 'DESKTOP_LINUX';
/**
* A desktop ChromeOS operating system.
*/
public const OS_TYPE_DESKTOP_CHROME_OS = 'DESKTOP_CHROME_OS';
/**
* An Android operating system.
*/
public const OS_TYPE_ANDROID = 'ANDROID';
/**
* An iOS operating system.
*/
public const OS_TYPE_IOS = 'IOS';
/**
* The minimum allowed OS version. If not set, any version of this OS
* satisfies the constraint. Format: `"major.minor.patch"`. Examples:
* `"10.5.301"`, `"9.2.1"`.
*
* @var string
*/
public $minimumVersion;
/**
* Required. The allowed OS type.
*
* @var string
*/
public $osType;
/**
* Only allows requests from devices with a verified Chrome OS. Verifications
* includes requirements that the device is enterprise-managed, conformant to
* domain policies, and the caller has permission to call the API targeted by
* the request.
*
* @var bool
*/
public $requireVerifiedChromeOs;
/**
* The minimum allowed OS version. If not set, any version of this OS
* satisfies the constraint. Format: `"major.minor.patch"`. Examples:
* `"10.5.301"`, `"9.2.1"`.
*
* @param string $minimumVersion
*/
public function setMinimumVersion($minimumVersion)
{
$this->minimumVersion = $minimumVersion;
}
/**
* @return string
*/
public function getMinimumVersion()
{
return $this->minimumVersion;
}
/**
* Required. The allowed OS type.
*
* Accepted values: OS_UNSPECIFIED, DESKTOP_MAC, DESKTOP_WINDOWS,
* DESKTOP_LINUX, DESKTOP_CHROME_OS, ANDROID, IOS
*
* @param self::OS_TYPE_* $osType
*/
public function setOsType($osType)
{
$this->osType = $osType;
}
/**
* @return self::OS_TYPE_*
*/
public function getOsType()
{
return $this->osType;
}
/**
* Only allows requests from devices with a verified Chrome OS. Verifications
* includes requirements that the device is enterprise-managed, conformant to
* domain policies, and the caller has permission to call the API targeted by
* the request.
*
* @param bool $requireVerifiedChromeOs
*/
public function setRequireVerifiedChromeOs($requireVerifiedChromeOs)
{
$this->requireVerifiedChromeOs = $requireVerifiedChromeOs;
}
/**
* @return bool
*/
public function getRequireVerifiedChromeOs()
{
return $this->requireVerifiedChromeOs;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(GoogleIdentityAccesscontextmanagerV1OsConstraint::class, 'Google_Service_CloudAsset_GoogleIdentityAccesscontextmanagerV1OsConstraint');
@@ -0,0 +1,252 @@
<?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\CloudAsset;
class GoogleIdentityAccesscontextmanagerV1ServicePerimeter extends \Google\Model
{
/**
* Regular Perimeter. When no value is specified, the perimeter uses this
* type.
*/
public const PERIMETER_TYPE_PERIMETER_TYPE_REGULAR = 'PERIMETER_TYPE_REGULAR';
/**
* Perimeter Bridge.
*/
public const PERIMETER_TYPE_PERIMETER_TYPE_BRIDGE = 'PERIMETER_TYPE_BRIDGE';
/**
* Description of the `ServicePerimeter` and its use. Does not affect
* behavior.
*
* @var string
*/
public $description;
/**
* Optional. An opaque identifier for the current version of the
* `ServicePerimeter`. This identifier does not follow any specific format. If
* an etag is not provided, the operation will be performed as if a valid etag
* is provided.
*
* @var string
*/
public $etag;
/**
* Identifier. Resource name for the `ServicePerimeter`. Format:
* `accessPolicies/{access_policy}/servicePerimeters/{service_perimeter}`. The
* `service_perimeter` component must begin with a letter, followed by
* alphanumeric characters or `_`. After you create a `ServicePerimeter`, you
* cannot change its `name`.
*
* @var string
*/
public $name;
/**
* Perimeter type indicator. A single project or VPC network is allowed to be
* a member of single regular perimeter, but multiple service perimeter
* bridges. A project cannot be a included in a perimeter bridge without being
* included in regular perimeter. For perimeter bridges, the restricted
* service list as well as access level lists must be empty.
*
* @var string
*/
public $perimeterType;
protected $specType = GoogleIdentityAccesscontextmanagerV1ServicePerimeterConfig::class;
protected $specDataType = '';
protected $statusType = GoogleIdentityAccesscontextmanagerV1ServicePerimeterConfig::class;
protected $statusDataType = '';
/**
* Human readable title. Must be unique within the Policy.
*
* @var string
*/
public $title;
/**
* Use explicit dry run spec flag. Ordinarily, a dry-run spec implicitly
* exists for all Service Perimeters, and that spec is identical to the status
* for those Service Perimeters. When this flag is set, it inhibits the
* generation of the implicit spec, thereby allowing the user to explicitly
* provide a configuration ("spec") to use in a dry-run version of the Service
* Perimeter. This allows the user to test changes to the enforced config
* ("status") without actually enforcing them. This testing is done through
* analyzing the differences between currently enforced and suggested
* restrictions. use_explicit_dry_run_spec must bet set to True if any of the
* fields in the spec are set to non-default values.
*
* @var bool
*/
public $useExplicitDryRunSpec;
/**
* Description of the `ServicePerimeter` and its use. Does not affect
* behavior.
*
* @param string $description
*/
public function setDescription($description)
{
$this->description = $description;
}
/**
* @return string
*/
public function getDescription()
{
return $this->description;
}
/**
* Optional. An opaque identifier for the current version of the
* `ServicePerimeter`. This identifier does not follow any specific format. If
* an etag is not provided, the operation will be performed as if a valid etag
* is provided.
*
* @param string $etag
*/
public function setEtag($etag)
{
$this->etag = $etag;
}
/**
* @return string
*/
public function getEtag()
{
return $this->etag;
}
/**
* Identifier. Resource name for the `ServicePerimeter`. Format:
* `accessPolicies/{access_policy}/servicePerimeters/{service_perimeter}`. The
* `service_perimeter` component must begin with a letter, followed by
* alphanumeric characters or `_`. After you create a `ServicePerimeter`, you
* cannot change its `name`.
*
* @param string $name
*/
public function setName($name)
{
$this->name = $name;
}
/**
* @return string
*/
public function getName()
{
return $this->name;
}
/**
* Perimeter type indicator. A single project or VPC network is allowed to be
* a member of single regular perimeter, but multiple service perimeter
* bridges. A project cannot be a included in a perimeter bridge without being
* included in regular perimeter. For perimeter bridges, the restricted
* service list as well as access level lists must be empty.
*
* Accepted values: PERIMETER_TYPE_REGULAR, PERIMETER_TYPE_BRIDGE
*
* @param self::PERIMETER_TYPE_* $perimeterType
*/
public function setPerimeterType($perimeterType)
{
$this->perimeterType = $perimeterType;
}
/**
* @return self::PERIMETER_TYPE_*
*/
public function getPerimeterType()
{
return $this->perimeterType;
}
/**
* Proposed (or dry run) ServicePerimeter configuration. This configuration
* allows to specify and test ServicePerimeter configuration without enforcing
* actual access restrictions. Only allowed to be set when the
* "use_explicit_dry_run_spec" flag is set.
*
* @param GoogleIdentityAccesscontextmanagerV1ServicePerimeterConfig $spec
*/
public function setSpec(GoogleIdentityAccesscontextmanagerV1ServicePerimeterConfig $spec)
{
$this->spec = $spec;
}
/**
* @return GoogleIdentityAccesscontextmanagerV1ServicePerimeterConfig
*/
public function getSpec()
{
return $this->spec;
}
/**
* Current ServicePerimeter configuration. Specifies sets of resources,
* restricted services and access levels that determine perimeter content and
* boundaries.
*
* @param GoogleIdentityAccesscontextmanagerV1ServicePerimeterConfig $status
*/
public function setStatus(GoogleIdentityAccesscontextmanagerV1ServicePerimeterConfig $status)
{
$this->status = $status;
}
/**
* @return GoogleIdentityAccesscontextmanagerV1ServicePerimeterConfig
*/
public function getStatus()
{
return $this->status;
}
/**
* Human readable title. Must be unique within the Policy.
*
* @param string $title
*/
public function setTitle($title)
{
$this->title = $title;
}
/**
* @return string
*/
public function getTitle()
{
return $this->title;
}
/**
* Use explicit dry run spec flag. Ordinarily, a dry-run spec implicitly
* exists for all Service Perimeters, and that spec is identical to the status
* for those Service Perimeters. When this flag is set, it inhibits the
* generation of the implicit spec, thereby allowing the user to explicitly
* provide a configuration ("spec") to use in a dry-run version of the Service
* Perimeter. This allows the user to test changes to the enforced config
* ("status") without actually enforcing them. This testing is done through
* analyzing the differences between currently enforced and suggested
* restrictions. use_explicit_dry_run_spec must bet set to True if any of the
* fields in the spec are set to non-default values.
*
* @param bool $useExplicitDryRunSpec
*/
public function setUseExplicitDryRunSpec($useExplicitDryRunSpec)
{
$this->useExplicitDryRunSpec = $useExplicitDryRunSpec;
}
/**
* @return bool
*/
public function getUseExplicitDryRunSpec()
{
return $this->useExplicitDryRunSpec;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(GoogleIdentityAccesscontextmanagerV1ServicePerimeter::class, 'Google_Service_CloudAsset_GoogleIdentityAccesscontextmanagerV1ServicePerimeter');
@@ -0,0 +1,179 @@
<?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\CloudAsset;
class GoogleIdentityAccesscontextmanagerV1ServicePerimeterConfig extends \Google\Collection
{
protected $collection_key = 'restrictedServices';
/**
* A list of `AccessLevel` resource names that allow resources within the
* `ServicePerimeter` to be accessed from the internet. `AccessLevels` listed
* must be in the same policy as this `ServicePerimeter`. Referencing a
* nonexistent `AccessLevel` is a syntax error. If no `AccessLevel` names are
* listed, resources within the perimeter can only be accessed via Google
* Cloud calls with request origins within the perimeter. Example:
* `"accessPolicies/MY_POLICY/accessLevels/MY_LEVEL"`. For Service Perimeter
* Bridge, must be empty.
*
* @var string[]
*/
public $accessLevels;
protected $egressPoliciesType = GoogleIdentityAccesscontextmanagerV1EgressPolicy::class;
protected $egressPoliciesDataType = 'array';
protected $ingressPoliciesType = GoogleIdentityAccesscontextmanagerV1IngressPolicy::class;
protected $ingressPoliciesDataType = 'array';
/**
* A list of Google Cloud resources that are inside of the service perimeter.
* Currently only projects and VPCs are allowed. Project format:
* `projects/{project_number}` VPC network format:
* `//compute.googleapis.com/projects/{PROJECT_ID}/global/networks/{NAME}`.
*
* @var string[]
*/
public $resources;
/**
* Google Cloud services that are subject to the Service Perimeter
* restrictions. For example, if `storage.googleapis.com` is specified, access
* to the storage buckets inside the perimeter must meet the perimeter's
* access restrictions.
*
* @var string[]
*/
public $restrictedServices;
protected $vpcAccessibleServicesType = GoogleIdentityAccesscontextmanagerV1VpcAccessibleServices::class;
protected $vpcAccessibleServicesDataType = '';
/**
* A list of `AccessLevel` resource names that allow resources within the
* `ServicePerimeter` to be accessed from the internet. `AccessLevels` listed
* must be in the same policy as this `ServicePerimeter`. Referencing a
* nonexistent `AccessLevel` is a syntax error. If no `AccessLevel` names are
* listed, resources within the perimeter can only be accessed via Google
* Cloud calls with request origins within the perimeter. Example:
* `"accessPolicies/MY_POLICY/accessLevels/MY_LEVEL"`. For Service Perimeter
* Bridge, must be empty.
*
* @param string[] $accessLevels
*/
public function setAccessLevels($accessLevels)
{
$this->accessLevels = $accessLevels;
}
/**
* @return string[]
*/
public function getAccessLevels()
{
return $this->accessLevels;
}
/**
* List of EgressPolicies to apply to the perimeter. A perimeter may have
* multiple EgressPolicies, each of which is evaluated separately. Access is
* granted if any EgressPolicy grants it. Must be empty for a perimeter
* bridge.
*
* @param GoogleIdentityAccesscontextmanagerV1EgressPolicy[] $egressPolicies
*/
public function setEgressPolicies($egressPolicies)
{
$this->egressPolicies = $egressPolicies;
}
/**
* @return GoogleIdentityAccesscontextmanagerV1EgressPolicy[]
*/
public function getEgressPolicies()
{
return $this->egressPolicies;
}
/**
* List of IngressPolicies to apply to the perimeter. A perimeter may have
* multiple IngressPolicies, each of which is evaluated separately. Access is
* granted if any Ingress Policy grants it. Must be empty for a perimeter
* bridge.
*
* @param GoogleIdentityAccesscontextmanagerV1IngressPolicy[] $ingressPolicies
*/
public function setIngressPolicies($ingressPolicies)
{
$this->ingressPolicies = $ingressPolicies;
}
/**
* @return GoogleIdentityAccesscontextmanagerV1IngressPolicy[]
*/
public function getIngressPolicies()
{
return $this->ingressPolicies;
}
/**
* A list of Google Cloud resources that are inside of the service perimeter.
* Currently only projects and VPCs are allowed. Project format:
* `projects/{project_number}` VPC network format:
* `//compute.googleapis.com/projects/{PROJECT_ID}/global/networks/{NAME}`.
*
* @param string[] $resources
*/
public function setResources($resources)
{
$this->resources = $resources;
}
/**
* @return string[]
*/
public function getResources()
{
return $this->resources;
}
/**
* Google Cloud services that are subject to the Service Perimeter
* restrictions. For example, if `storage.googleapis.com` is specified, access
* to the storage buckets inside the perimeter must meet the perimeter's
* access restrictions.
*
* @param string[] $restrictedServices
*/
public function setRestrictedServices($restrictedServices)
{
$this->restrictedServices = $restrictedServices;
}
/**
* @return string[]
*/
public function getRestrictedServices()
{
return $this->restrictedServices;
}
/**
* Configuration for APIs allowed within Perimeter.
*
* @param GoogleIdentityAccesscontextmanagerV1VpcAccessibleServices $vpcAccessibleServices
*/
public function setVpcAccessibleServices(GoogleIdentityAccesscontextmanagerV1VpcAccessibleServices $vpcAccessibleServices)
{
$this->vpcAccessibleServices = $vpcAccessibleServices;
}
/**
* @return GoogleIdentityAccesscontextmanagerV1VpcAccessibleServices
*/
public function getVpcAccessibleServices()
{
return $this->vpcAccessibleServices;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(GoogleIdentityAccesscontextmanagerV1ServicePerimeterConfig::class, 'Google_Service_CloudAsset_GoogleIdentityAccesscontextmanagerV1ServicePerimeterConfig');
@@ -0,0 +1,79 @@
<?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\CloudAsset;
class GoogleIdentityAccesscontextmanagerV1VpcAccessibleServices extends \Google\Collection
{
protected $collection_key = 'allowedServices';
/**
* The list of APIs usable within the Service Perimeter. Must be empty unless
* 'enable_restriction' is True. You can specify a list of individual
* services, as well as include the 'RESTRICTED-SERVICES' value, which
* automatically includes all of the services protected by the perimeter.
*
* @var string[]
*/
public $allowedServices;
/**
* Whether to restrict API calls within the Service Perimeter to the list of
* APIs specified in 'allowed_services'.
*
* @var bool
*/
public $enableRestriction;
/**
* The list of APIs usable within the Service Perimeter. Must be empty unless
* 'enable_restriction' is True. You can specify a list of individual
* services, as well as include the 'RESTRICTED-SERVICES' value, which
* automatically includes all of the services protected by the perimeter.
*
* @param string[] $allowedServices
*/
public function setAllowedServices($allowedServices)
{
$this->allowedServices = $allowedServices;
}
/**
* @return string[]
*/
public function getAllowedServices()
{
return $this->allowedServices;
}
/**
* Whether to restrict API calls within the Service Perimeter to the list of
* APIs specified in 'allowed_services'.
*
* @param bool $enableRestriction
*/
public function setEnableRestriction($enableRestriction)
{
$this->enableRestriction = $enableRestriction;
}
/**
* @return bool
*/
public function getEnableRestriction()
{
return $this->enableRestriction;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(GoogleIdentityAccesscontextmanagerV1VpcAccessibleServices::class, 'Google_Service_CloudAsset_GoogleIdentityAccesscontextmanagerV1VpcAccessibleServices');
@@ -0,0 +1,44 @@
<?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\CloudAsset;
class GoogleIdentityAccesscontextmanagerV1VpcNetworkSource extends \Google\Model
{
protected $vpcSubnetworkType = GoogleIdentityAccesscontextmanagerV1VpcSubNetwork::class;
protected $vpcSubnetworkDataType = '';
/**
* Sub-segment ranges of a VPC network.
*
* @param GoogleIdentityAccesscontextmanagerV1VpcSubNetwork $vpcSubnetwork
*/
public function setVpcSubnetwork(GoogleIdentityAccesscontextmanagerV1VpcSubNetwork $vpcSubnetwork)
{
$this->vpcSubnetwork = $vpcSubnetwork;
}
/**
* @return GoogleIdentityAccesscontextmanagerV1VpcSubNetwork
*/
public function getVpcSubnetwork()
{
return $this->vpcSubnetwork;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(GoogleIdentityAccesscontextmanagerV1VpcNetworkSource::class, 'Google_Service_CloudAsset_GoogleIdentityAccesscontextmanagerV1VpcNetworkSource');
@@ -0,0 +1,89 @@
<?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\CloudAsset;
class GoogleIdentityAccesscontextmanagerV1VpcSubNetwork extends \Google\Collection
{
protected $collection_key = 'vpcIpSubnetworks';
/**
* Required. Network name. If the network is not part of the organization, the
* `compute.network.get` permission must be granted to the caller. Format: `//
* compute.googleapis.com/projects/{PROJECT_ID}/global/networks/{NETWORK_NAME}
* ` Example: `//compute.googleapis.com/projects/my-
* project/global/networks/network-1`
*
* @var string
*/
public $network;
/**
* CIDR block IP subnetwork specification. The IP address must be an IPv4
* address and can be a public or private IP address. Note that for a CIDR IP
* address block, the specified IP address portion must be properly truncated
* (i.e. all the host bits must be zero) or the input is considered malformed.
* For example, "192.0.2.0/24" is accepted but "192.0.2.1/24" is not. If
* empty, all IP addresses are allowed.
*
* @var string[]
*/
public $vpcIpSubnetworks;
/**
* Required. Network name. If the network is not part of the organization, the
* `compute.network.get` permission must be granted to the caller. Format: `//
* compute.googleapis.com/projects/{PROJECT_ID}/global/networks/{NETWORK_NAME}
* ` Example: `//compute.googleapis.com/projects/my-
* project/global/networks/network-1`
*
* @param string $network
*/
public function setNetwork($network)
{
$this->network = $network;
}
/**
* @return string
*/
public function getNetwork()
{
return $this->network;
}
/**
* CIDR block IP subnetwork specification. The IP address must be an IPv4
* address and can be a public or private IP address. Note that for a CIDR IP
* address block, the specified IP address portion must be properly truncated
* (i.e. all the host bits must be zero) or the input is considered malformed.
* For example, "192.0.2.0/24" is accepted but "192.0.2.1/24" is not. If
* empty, all IP addresses are allowed.
*
* @param string[] $vpcIpSubnetworks
*/
public function setVpcIpSubnetworks($vpcIpSubnetworks)
{
$this->vpcIpSubnetworks = $vpcIpSubnetworks;
}
/**
* @return string[]
*/
public function getVpcIpSubnetworks()
{
return $this->vpcIpSubnetworks;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(GoogleIdentityAccesscontextmanagerV1VpcSubNetwork::class, 'Google_Service_CloudAsset_GoogleIdentityAccesscontextmanagerV1VpcSubNetwork');
@@ -0,0 +1,106 @@
<?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\CloudAsset;
class IamPolicyAnalysis extends \Google\Collection
{
protected $collection_key = 'nonCriticalErrors';
protected $analysisQueryType = IamPolicyAnalysisQuery::class;
protected $analysisQueryDataType = '';
protected $analysisResultsType = IamPolicyAnalysisResult::class;
protected $analysisResultsDataType = 'array';
/**
* Represents whether all entries in the analysis_results have been fully
* explored to answer the query.
*
* @var bool
*/
public $fullyExplored;
protected $nonCriticalErrorsType = IamPolicyAnalysisState::class;
protected $nonCriticalErrorsDataType = 'array';
/**
* The analysis query.
*
* @param IamPolicyAnalysisQuery $analysisQuery
*/
public function setAnalysisQuery(IamPolicyAnalysisQuery $analysisQuery)
{
$this->analysisQuery = $analysisQuery;
}
/**
* @return IamPolicyAnalysisQuery
*/
public function getAnalysisQuery()
{
return $this->analysisQuery;
}
/**
* A list of IamPolicyAnalysisResult that matches the analysis query, or empty
* if no result is found.
*
* @param IamPolicyAnalysisResult[] $analysisResults
*/
public function setAnalysisResults($analysisResults)
{
$this->analysisResults = $analysisResults;
}
/**
* @return IamPolicyAnalysisResult[]
*/
public function getAnalysisResults()
{
return $this->analysisResults;
}
/**
* Represents whether all entries in the analysis_results have been fully
* explored to answer the query.
*
* @param bool $fullyExplored
*/
public function setFullyExplored($fullyExplored)
{
$this->fullyExplored = $fullyExplored;
}
/**
* @return bool
*/
public function getFullyExplored()
{
return $this->fullyExplored;
}
/**
* A list of non-critical errors happened during the query handling.
*
* @param IamPolicyAnalysisState[] $nonCriticalErrors
*/
public function setNonCriticalErrors($nonCriticalErrors)
{
$this->nonCriticalErrors = $nonCriticalErrors;
}
/**
* @return IamPolicyAnalysisState[]
*/
public function getNonCriticalErrors()
{
return $this->nonCriticalErrors;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(IamPolicyAnalysis::class, 'Google_Service_CloudAsset_IamPolicyAnalysis');
@@ -0,0 +1,62 @@
<?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\CloudAsset;
class IamPolicyAnalysisOutputConfig extends \Google\Model
{
protected $bigqueryDestinationType = GoogleCloudAssetV1BigQueryDestination::class;
protected $bigqueryDestinationDataType = '';
protected $gcsDestinationType = GoogleCloudAssetV1GcsDestination::class;
protected $gcsDestinationDataType = '';
/**
* Destination on BigQuery.
*
* @param GoogleCloudAssetV1BigQueryDestination $bigqueryDestination
*/
public function setBigqueryDestination(GoogleCloudAssetV1BigQueryDestination $bigqueryDestination)
{
$this->bigqueryDestination = $bigqueryDestination;
}
/**
* @return GoogleCloudAssetV1BigQueryDestination
*/
public function getBigqueryDestination()
{
return $this->bigqueryDestination;
}
/**
* Destination on Cloud Storage.
*
* @param GoogleCloudAssetV1GcsDestination $gcsDestination
*/
public function setGcsDestination(GoogleCloudAssetV1GcsDestination $gcsDestination)
{
$this->gcsDestination = $gcsDestination;
}
/**
* @return GoogleCloudAssetV1GcsDestination
*/
public function getGcsDestination()
{
return $this->gcsDestination;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(IamPolicyAnalysisOutputConfig::class, 'Google_Service_CloudAsset_IamPolicyAnalysisOutputConfig');
@@ -0,0 +1,156 @@
<?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\CloudAsset;
class IamPolicyAnalysisQuery extends \Google\Model
{
protected $accessSelectorType = AccessSelector::class;
protected $accessSelectorDataType = '';
protected $conditionContextType = ConditionContext::class;
protected $conditionContextDataType = '';
protected $identitySelectorType = IdentitySelector::class;
protected $identitySelectorDataType = '';
protected $optionsType = Options::class;
protected $optionsDataType = '';
protected $resourceSelectorType = ResourceSelector::class;
protected $resourceSelectorDataType = '';
/**
* Required. The relative name of the root asset. Only resources and IAM
* policies within the scope will be analyzed. This can only be an
* organization number (such as "organizations/123"), a folder number (such as
* "folders/123"), a project ID (such as "projects/my-project-id"), or a
* project number (such as "projects/12345"). To know how to get organization
* ID, visit [here ](https://cloud.google.com/resource-manager/docs/creating-
* managing-organization#retrieving_your_organization_id). To know how to get
* folder or project ID, visit [here ](https://cloud.google.com/resource-
* manager/docs/creating-managing-
* folders#viewing_or_listing_folders_and_projects).
*
* @var string
*/
public $scope;
/**
* Optional. Specifies roles or permissions for analysis. This is optional.
*
* @param AccessSelector $accessSelector
*/
public function setAccessSelector(AccessSelector $accessSelector)
{
$this->accessSelector = $accessSelector;
}
/**
* @return AccessSelector
*/
public function getAccessSelector()
{
return $this->accessSelector;
}
/**
* Optional. The hypothetical context for IAM conditions evaluation.
*
* @param ConditionContext $conditionContext
*/
public function setConditionContext(ConditionContext $conditionContext)
{
$this->conditionContext = $conditionContext;
}
/**
* @return ConditionContext
*/
public function getConditionContext()
{
return $this->conditionContext;
}
/**
* Optional. Specifies an identity for analysis.
*
* @param IdentitySelector $identitySelector
*/
public function setIdentitySelector(IdentitySelector $identitySelector)
{
$this->identitySelector = $identitySelector;
}
/**
* @return IdentitySelector
*/
public function getIdentitySelector()
{
return $this->identitySelector;
}
/**
* Optional. The query options.
*
* @param Options $options
*/
public function setOptions(Options $options)
{
$this->options = $options;
}
/**
* @return Options
*/
public function getOptions()
{
return $this->options;
}
/**
* Optional. Specifies a resource for analysis.
*
* @param ResourceSelector $resourceSelector
*/
public function setResourceSelector(ResourceSelector $resourceSelector)
{
$this->resourceSelector = $resourceSelector;
}
/**
* @return ResourceSelector
*/
public function getResourceSelector()
{
return $this->resourceSelector;
}
/**
* Required. The relative name of the root asset. Only resources and IAM
* policies within the scope will be analyzed. This can only be an
* organization number (such as "organizations/123"), a folder number (such as
* "folders/123"), a project ID (such as "projects/my-project-id"), or a
* project number (such as "projects/12345"). To know how to get organization
* ID, visit [here ](https://cloud.google.com/resource-manager/docs/creating-
* managing-organization#retrieving_your_organization_id). To know how to get
* folder or project ID, visit [here ](https://cloud.google.com/resource-
* manager/docs/creating-managing-
* folders#viewing_or_listing_folders_and_projects).
*
* @param string $scope
*/
public function setScope($scope)
{
$this->scope = $scope;
}
/**
* @return string
*/
public function getScope()
{
return $this->scope;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(IamPolicyAnalysisQuery::class, 'Google_Service_CloudAsset_IamPolicyAnalysisQuery');
@@ -0,0 +1,133 @@
<?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\CloudAsset;
class IamPolicyAnalysisResult extends \Google\Collection
{
protected $collection_key = 'accessControlLists';
protected $accessControlListsType = GoogleCloudAssetV1AccessControlList::class;
protected $accessControlListsDataType = 'array';
/**
* The [full resource name](https://cloud.google.com/asset-
* inventory/docs/resource-name-format) of the resource to which the
* iam_binding policy attaches.
*
* @var string
*/
public $attachedResourceFullName;
/**
* Represents whether all analyses on the iam_binding have successfully
* finished.
*
* @var bool
*/
public $fullyExplored;
protected $iamBindingType = Binding::class;
protected $iamBindingDataType = '';
protected $identityListType = GoogleCloudAssetV1IdentityList::class;
protected $identityListDataType = '';
/**
* The access control lists derived from the iam_binding that match or
* potentially match resource and access selectors specified in the request.
*
* @param GoogleCloudAssetV1AccessControlList[] $accessControlLists
*/
public function setAccessControlLists($accessControlLists)
{
$this->accessControlLists = $accessControlLists;
}
/**
* @return GoogleCloudAssetV1AccessControlList[]
*/
public function getAccessControlLists()
{
return $this->accessControlLists;
}
/**
* The [full resource name](https://cloud.google.com/asset-
* inventory/docs/resource-name-format) of the resource to which the
* iam_binding policy attaches.
*
* @param string $attachedResourceFullName
*/
public function setAttachedResourceFullName($attachedResourceFullName)
{
$this->attachedResourceFullName = $attachedResourceFullName;
}
/**
* @return string
*/
public function getAttachedResourceFullName()
{
return $this->attachedResourceFullName;
}
/**
* Represents whether all analyses on the iam_binding have successfully
* finished.
*
* @param bool $fullyExplored
*/
public function setFullyExplored($fullyExplored)
{
$this->fullyExplored = $fullyExplored;
}
/**
* @return bool
*/
public function getFullyExplored()
{
return $this->fullyExplored;
}
/**
* The IAM policy binding under analysis.
*
* @param Binding $iamBinding
*/
public function setIamBinding(Binding $iamBinding)
{
$this->iamBinding = $iamBinding;
}
/**
* @return Binding
*/
public function getIamBinding()
{
return $this->iamBinding;
}
/**
* The identity list derived from members of the iam_binding that match or
* potentially match identity selector specified in the request.
*
* @param GoogleCloudAssetV1IdentityList $identityList
*/
public function setIdentityList(GoogleCloudAssetV1IdentityList $identityList)
{
$this->identityList = $identityList;
}
/**
* @return GoogleCloudAssetV1IdentityList
*/
public function getIdentityList()
{
return $this->identityList;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(IamPolicyAnalysisResult::class, 'Google_Service_CloudAsset_IamPolicyAnalysisResult');
@@ -0,0 +1,210 @@
<?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\CloudAsset;
class IamPolicyAnalysisState extends \Google\Model
{
/**
* Not an error; returned on success. HTTP Mapping: 200 OK
*/
public const CODE_OK = 'OK';
/**
* The operation was cancelled, typically by the caller. HTTP Mapping: 499
* Client Closed Request
*/
public const CODE_CANCELLED = 'CANCELLED';
/**
* Unknown error. For example, this error may be returned when a `Status`
* value received from another address space belongs to an error space that is
* not known in this address space. Also errors raised by APIs that do not
* return enough error information may be converted to this error. HTTP
* Mapping: 500 Internal Server Error
*/
public const CODE_UNKNOWN = 'UNKNOWN';
/**
* The client specified an invalid argument. Note that this differs from
* `FAILED_PRECONDITION`. `INVALID_ARGUMENT` indicates arguments that are
* problematic regardless of the state of the system (e.g., a malformed file
* name). HTTP Mapping: 400 Bad Request
*/
public const CODE_INVALID_ARGUMENT = 'INVALID_ARGUMENT';
/**
* The deadline expired before the operation could complete. For operations
* that change the state of the system, this error may be returned even if the
* operation has completed successfully. For example, a successful response
* from a server could have been delayed long enough for the deadline to
* expire. HTTP Mapping: 504 Gateway Timeout
*/
public const CODE_DEADLINE_EXCEEDED = 'DEADLINE_EXCEEDED';
/**
* Some requested entity (e.g., file or directory) was not found. Note to
* server developers: if a request is denied for an entire class of users,
* such as gradual feature rollout or undocumented allowlist, `NOT_FOUND` may
* be used. If a request is denied for some users within a class of users,
* such as user-based access control, `PERMISSION_DENIED` must be used. HTTP
* Mapping: 404 Not Found
*/
public const CODE_NOT_FOUND = 'NOT_FOUND';
/**
* The entity that a client attempted to create (e.g., file or directory)
* already exists. HTTP Mapping: 409 Conflict
*/
public const CODE_ALREADY_EXISTS = 'ALREADY_EXISTS';
/**
* The caller does not have permission to execute the specified operation.
* `PERMISSION_DENIED` must not be used for rejections caused by exhausting
* some resource (use `RESOURCE_EXHAUSTED` instead for those errors).
* `PERMISSION_DENIED` must not be used if the caller can not be identified
* (use `UNAUTHENTICATED` instead for those errors). This error code does not
* imply the request is valid or the requested entity exists or satisfies
* other pre-conditions. HTTP Mapping: 403 Forbidden
*/
public const CODE_PERMISSION_DENIED = 'PERMISSION_DENIED';
/**
* The request does not have valid authentication credentials for the
* operation. HTTP Mapping: 401 Unauthorized
*/
public const CODE_UNAUTHENTICATED = 'UNAUTHENTICATED';
/**
* Some resource has been exhausted, perhaps a per-user quota, or perhaps the
* entire file system is out of space. HTTP Mapping: 429 Too Many Requests
*/
public const CODE_RESOURCE_EXHAUSTED = 'RESOURCE_EXHAUSTED';
/**
* The operation was rejected because the system is not in a state required
* for the operation's execution. For example, the directory to be deleted is
* non-empty, an rmdir operation is applied to a non-directory, etc. Service
* implementors can use the following guidelines to decide between
* `FAILED_PRECONDITION`, `ABORTED`, and `UNAVAILABLE`: (a) Use `UNAVAILABLE`
* if the client can retry just the failing call. (b) Use `ABORTED` if the
* client should retry at a higher level. For example, when a client-specified
* test-and-set fails, indicating the client should restart a read-modify-
* write sequence. (c) Use `FAILED_PRECONDITION` if the client should not
* retry until the system state has been explicitly fixed. For example, if an
* "rmdir" fails because the directory is non-empty, `FAILED_PRECONDITION`
* should be returned since the client should not retry unless the files are
* deleted from the directory. HTTP Mapping: 400 Bad Request
*/
public const CODE_FAILED_PRECONDITION = 'FAILED_PRECONDITION';
/**
* The operation was aborted, typically due to a concurrency issue such as a
* sequencer check failure or transaction abort. See the guidelines above for
* deciding between `FAILED_PRECONDITION`, `ABORTED`, and `UNAVAILABLE`. HTTP
* Mapping: 409 Conflict
*/
public const CODE_ABORTED = 'ABORTED';
/**
* The operation was attempted past the valid range. E.g., seeking or reading
* past end-of-file. Unlike `INVALID_ARGUMENT`, this error indicates a problem
* that may be fixed if the system state changes. For example, a 32-bit file
* system will generate `INVALID_ARGUMENT` if asked to read at an offset that
* is not in the range [0,2^32-1], but it will generate `OUT_OF_RANGE` if
* asked to read from an offset past the current file size. There is a fair
* bit of overlap between `FAILED_PRECONDITION` and `OUT_OF_RANGE`. We
* recommend using `OUT_OF_RANGE` (the more specific error) when it applies so
* that callers who are iterating through a space can easily look for an
* `OUT_OF_RANGE` error to detect when they are done. HTTP Mapping: 400 Bad
* Request
*/
public const CODE_OUT_OF_RANGE = 'OUT_OF_RANGE';
/**
* The operation is not implemented or is not supported/enabled in this
* service. HTTP Mapping: 501 Not Implemented
*/
public const CODE_UNIMPLEMENTED = 'UNIMPLEMENTED';
/**
* Internal errors. This means that some invariants expected by the underlying
* system have been broken. This error code is reserved for serious errors.
* HTTP Mapping: 500 Internal Server Error
*/
public const CODE_INTERNAL = 'INTERNAL';
/**
* The service is currently unavailable. This is most likely a transient
* condition, which can be corrected by retrying with a backoff. Note that it
* is not always safe to retry non-idempotent operations. See the guidelines
* above for deciding between `FAILED_PRECONDITION`, `ABORTED`, and
* `UNAVAILABLE`. HTTP Mapping: 503 Service Unavailable
*/
public const CODE_UNAVAILABLE = 'UNAVAILABLE';
/**
* Unrecoverable data loss or corruption. HTTP Mapping: 500 Internal Server
* Error
*/
public const CODE_DATA_LOSS = 'DATA_LOSS';
/**
* The human-readable description of the cause of failure.
*
* @var string
*/
public $cause;
/**
* The Google standard error code that best describes the state. For example:
* - OK means the analysis on this entity has been successfully finished; -
* PERMISSION_DENIED means an access denied error is encountered; -
* DEADLINE_EXCEEDED means the analysis on this entity hasn't been started in
* time;
*
* @var string
*/
public $code;
/**
* The human-readable description of the cause of failure.
*
* @param string $cause
*/
public function setCause($cause)
{
$this->cause = $cause;
}
/**
* @return string
*/
public function getCause()
{
return $this->cause;
}
/**
* The Google standard error code that best describes the state. For example:
* - OK means the analysis on this entity has been successfully finished; -
* PERMISSION_DENIED means an access denied error is encountered; -
* DEADLINE_EXCEEDED means the analysis on this entity hasn't been started in
* time;
*
* Accepted values: OK, CANCELLED, UNKNOWN, INVALID_ARGUMENT,
* DEADLINE_EXCEEDED, NOT_FOUND, ALREADY_EXISTS, PERMISSION_DENIED,
* UNAUTHENTICATED, RESOURCE_EXHAUSTED, FAILED_PRECONDITION, ABORTED,
* OUT_OF_RANGE, UNIMPLEMENTED, INTERNAL, UNAVAILABLE, DATA_LOSS
*
* @param self::CODE_* $code
*/
public function setCode($code)
{
$this->code = $code;
}
/**
* @return self::CODE_*
*/
public function getCode()
{
return $this->code;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(IamPolicyAnalysisState::class, 'Google_Service_CloudAsset_IamPolicyAnalysisState');
@@ -0,0 +1,224 @@
<?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\CloudAsset;
class IamPolicySearchResult extends \Google\Collection
{
protected $collection_key = 'folders';
/**
* The type of the resource associated with this IAM policy. Example:
* `compute.googleapis.com/Disk`. To search against the `asset_type`: *
* specify the `asset_types` field in your search request.
*
* @var string
*/
public $assetType;
protected $explanationType = Explanation::class;
protected $explanationDataType = '';
/**
* The folder(s) that the IAM policy belongs to, in the form of
* folders/{FOLDER_NUMBER}. This field is available when the IAM policy
* belongs to one or more folders. To search against `folders`: * use a field
* query. Example: `folders:(123 OR 456)` * use a free text query. Example:
* `123` * specify the `scope` field as this folder in your search request.
*
* @var string[]
*/
public $folders;
/**
* The organization that the IAM policy belongs to, in the form of
* organizations/{ORGANIZATION_NUMBER}. This field is available when the IAM
* policy belongs to an organization. To search against `organization`: * use
* a field query. Example: `organization:123` * use a free text query.
* Example: `123` * specify the `scope` field as this organization in your
* search request.
*
* @var string
*/
public $organization;
protected $policyType = Policy::class;
protected $policyDataType = '';
/**
* The project that the associated Google Cloud resource belongs to, in the
* form of projects/{PROJECT_NUMBER}. If an IAM policy is set on a resource
* (like VM instance, Cloud Storage bucket), the project field will indicate
* the project that contains the resource. If an IAM policy is set on a folder
* or organization, this field will be empty. To search against the `project`:
* * specify the `scope` field as this project in your search request.
*
* @var string
*/
public $project;
/**
* The full resource name of the resource associated with this IAM policy.
* Example: `//compute.googleapis.com/projects/my_project_123/zones/zone1/inst
* ances/instance1`. See [Cloud Asset Inventory Resource Name
* Format](https://cloud.google.com/asset-inventory/docs/resource-name-format)
* for more information. To search against the `resource`: * use a field
* query. Example: `resource:organizations/123`
*
* @var string
*/
public $resource;
/**
* The type of the resource associated with this IAM policy. Example:
* `compute.googleapis.com/Disk`. To search against the `asset_type`: *
* specify the `asset_types` field in your search request.
*
* @param string $assetType
*/
public function setAssetType($assetType)
{
$this->assetType = $assetType;
}
/**
* @return string
*/
public function getAssetType()
{
return $this->assetType;
}
/**
* Explanation about the IAM policy search result. It contains additional
* information to explain why the search result matches the query.
*
* @param Explanation $explanation
*/
public function setExplanation(Explanation $explanation)
{
$this->explanation = $explanation;
}
/**
* @return Explanation
*/
public function getExplanation()
{
return $this->explanation;
}
/**
* The folder(s) that the IAM policy belongs to, in the form of
* folders/{FOLDER_NUMBER}. This field is available when the IAM policy
* belongs to one or more folders. To search against `folders`: * use a field
* query. Example: `folders:(123 OR 456)` * use a free text query. Example:
* `123` * specify the `scope` field as this folder in your search request.
*
* @param string[] $folders
*/
public function setFolders($folders)
{
$this->folders = $folders;
}
/**
* @return string[]
*/
public function getFolders()
{
return $this->folders;
}
/**
* The organization that the IAM policy belongs to, in the form of
* organizations/{ORGANIZATION_NUMBER}. This field is available when the IAM
* policy belongs to an organization. To search against `organization`: * use
* a field query. Example: `organization:123` * use a free text query.
* Example: `123` * specify the `scope` field as this organization in your
* search request.
*
* @param string $organization
*/
public function setOrganization($organization)
{
$this->organization = $organization;
}
/**
* @return string
*/
public function getOrganization()
{
return $this->organization;
}
/**
* The IAM policy directly set on the given resource. Note that the original
* IAM policy can contain multiple bindings. This only contains the bindings
* that match the given query. For queries that don't contain a constrain on
* policies (e.g., an empty query), this contains all the bindings. To search
* against the `policy` bindings: * use a field query: - query by the policy
* contained members. Example: `policy:amy@gmail.com` - query by the policy
* contained roles. Example: `policy:roles/compute.admin` - query by the
* policy contained roles' included permissions. Example:
* `policy.role.permissions:compute.instances.create`
*
* @param Policy $policy
*/
public function setPolicy(Policy $policy)
{
$this->policy = $policy;
}
/**
* @return Policy
*/
public function getPolicy()
{
return $this->policy;
}
/**
* The project that the associated Google Cloud resource belongs to, in the
* form of projects/{PROJECT_NUMBER}. If an IAM policy is set on a resource
* (like VM instance, Cloud Storage bucket), the project field will indicate
* the project that contains the resource. If an IAM policy is set on a folder
* or organization, this field will be empty. To search against the `project`:
* * specify the `scope` field as this project in your search request.
*
* @param string $project
*/
public function setProject($project)
{
$this->project = $project;
}
/**
* @return string
*/
public function getProject()
{
return $this->project;
}
/**
* The full resource name of the resource associated with this IAM policy.
* Example: `//compute.googleapis.com/projects/my_project_123/zones/zone1/inst
* ances/instance1`. See [Cloud Asset Inventory Resource Name
* Format](https://cloud.google.com/asset-inventory/docs/resource-name-format)
* for more information. To search against the `resource`: * use a field
* query. Example: `resource:organizations/123`
*
* @param string $resource
*/
public function setResource($resource)
{
$this->resource = $resource;
}
/**
* @return string
*/
public function getResource()
{
return $this->resource;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(IamPolicySearchResult::class, 'Google_Service_CloudAsset_IamPolicySearchResult');
@@ -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\CloudAsset;
class IdentitySelector extends \Google\Model
{
/**
* Required. The identity appear in the form of principals in [IAM policy
* binding](https://cloud.google.com/iam/reference/rest/v1/Binding). The
* examples of supported forms are: "user:mike@example.com",
* "group:admins@example.com", "domain:google.com", "serviceAccount:my-
* project-id@appspot.gserviceaccount.com". Notice that wildcard characters
* (such as * and ?) are not supported. You must give a specific identity.
*
* @var string
*/
public $identity;
/**
* Required. The identity appear in the form of principals in [IAM policy
* binding](https://cloud.google.com/iam/reference/rest/v1/Binding). The
* examples of supported forms are: "user:mike@example.com",
* "group:admins@example.com", "domain:google.com", "serviceAccount:my-
* project-id@appspot.gserviceaccount.com". Notice that wildcard characters
* (such as * and ?) are not supported. You must give a specific identity.
*
* @param string $identity
*/
public function setIdentity($identity)
{
$this->identity = $identity;
}
/**
* @return string
*/
public function getIdentity()
{
return $this->identity;
}
}
// Adding a class alias for backwards compatibility with the previous class name.
class_alias(IdentitySelector::class, 'Google_Service_CloudAsset_IdentitySelector');

Some files were not shown because too many files have changed in this diff Show More