Index: generated/googleapis/lib/cloudresourcemanager/v1.dart |
diff --git a/generated/googleapis/lib/cloudresourcemanager/v1.dart b/generated/googleapis/lib/cloudresourcemanager/v1.dart |
index 98f9fbdafd056f548d979c93e153c6b62ca9506e..3fb17ca9086b11e3f6755976b4878a9466cab8f0 100644 |
--- a/generated/googleapis/lib/cloudresourcemanager/v1.dart |
+++ b/generated/googleapis/lib/cloudresourcemanager/v1.dart |
@@ -28,6 +28,7 @@ class CloudresourcemanagerApi { |
final commons.ApiRequester _requester; |
+ FoldersResourceApi get folders => new FoldersResourceApi(_requester); |
LiensResourceApi get liens => new LiensResourceApi(_requester); |
OperationsResourceApi get operations => new OperationsResourceApi(_requester); |
OrganizationsResourceApi get organizations => new OrganizationsResourceApi(_requester); |
@@ -38,26 +39,23 @@ class CloudresourcemanagerApi { |
} |
-class LiensResourceApi { |
+class FoldersResourceApi { |
final commons.ApiRequester _requester; |
- LiensResourceApi(commons.ApiRequester client) : |
+ FoldersResourceApi(commons.ApiRequester client) : |
_requester = client; |
/** |
- * Create a Lien which applies to the resource denoted by the `parent` field. |
- * |
- * Callers of this method will require permission on the `parent` resource. |
- * For example, applying to `projects/1234` requires permission |
- * `resourcemanager.projects.updateLiens`. |
- * |
- * NOTE: Some resources may limit the number of Liens which may be applied. |
+ * Clears a `Policy` from a resource. |
* |
* [request] - The metadata request object. |
* |
* Request parameters: |
* |
- * Completes with a [Lien]. |
+ * [resource] - Name of the resource for the `Policy` to clear. |
+ * Value must have pattern "^folders/[^/]+$". |
+ * |
+ * Completes with a [Empty]. |
* |
* Completes with a [commons.ApiRequestError] if the API endpoint returned an |
* error. |
@@ -65,7 +63,7 @@ class LiensResourceApi { |
* If the used [http.Client] completes with an error when making a REST call, |
* this method will complete with the same error. |
*/ |
- async.Future<Lien> create(Lien request) { |
+ async.Future<Empty> clearOrgPolicy(ClearOrgPolicyRequest request, core.String resource) { |
var _url = null; |
var _queryParams = new core.Map(); |
var _uploadMedia = null; |
@@ -76,8 +74,11 @@ class LiensResourceApi { |
if (request != null) { |
_body = convert.JSON.encode((request).toJson()); |
} |
+ if (resource == null) { |
+ throw new core.ArgumentError("Parameter resource is required."); |
+ } |
- _url = 'v1/liens'; |
+ _url = 'v1/' + commons.Escaper.ecapeVariableReserved('$resource') + ':clearOrgPolicy'; |
var _response = _requester.request(_url, |
"POST", |
@@ -86,20 +87,18 @@ class LiensResourceApi { |
uploadOptions: _uploadOptions, |
uploadMedia: _uploadMedia, |
downloadOptions: _downloadOptions); |
- return _response.then((data) => new Lien.fromJson(data)); |
+ return _response.then((data) => new Empty.fromJson(data)); |
} |
/** |
- * Delete a Lien by `name`. |
+ * Clears a `Policy` from a resource. |
* |
- * Callers of this method will require permission on the `parent` resource. |
- * For example, a Lien with a `parent` of `projects/1234` requires permission |
- * `resourcemanager.projects.updateLiens`. |
+ * [request] - The metadata request object. |
* |
* Request parameters: |
* |
- * [name] - The name/identifier of the Lien to delete. |
- * Value must have pattern "^liens/.+$". |
+ * [resource] - Name of the resource for the `Policy` to clear. |
+ * Value must have pattern "^folders/[^/]+$". |
* |
* Completes with a [Empty]. |
* |
@@ -109,7 +108,7 @@ class LiensResourceApi { |
* If the used [http.Client] completes with an error when making a REST call, |
* this method will complete with the same error. |
*/ |
- async.Future<Empty> delete(core.String name) { |
+ async.Future<Empty> clearOrgPolicyV1(ClearOrgPolicyRequest request, core.String resource) { |
var _url = null; |
var _queryParams = new core.Map(); |
var _uploadMedia = null; |
@@ -117,14 +116,17 @@ class LiensResourceApi { |
var _downloadOptions = commons.DownloadOptions.Metadata; |
var _body = null; |
- if (name == null) { |
- throw new core.ArgumentError("Parameter name is required."); |
+ if (request != null) { |
+ _body = convert.JSON.encode((request).toJson()); |
+ } |
+ if (resource == null) { |
+ throw new core.ArgumentError("Parameter resource is required."); |
} |
- _url = 'v1/' + commons.Escaper.ecapeVariableReserved('$name'); |
+ _url = 'v1/' + commons.Escaper.ecapeVariableReserved('$resource') + ':clearOrgPolicyV1'; |
var _response = _requester.request(_url, |
- "DELETE", |
+ "POST", |
body: _body, |
queryParams: _queryParams, |
uploadOptions: _uploadOptions, |
@@ -134,24 +136,19 @@ class LiensResourceApi { |
} |
/** |
- * List all Liens applied to the `parent` resource. |
+ * Gets the effective `Policy` on a resource. This is the result of merging |
+ * `Policies` in the resource hierarchy. The returned `Policy` will not have |
+ * an `etag`set because it is a computed `Policy` across multiple resources. |
* |
- * Callers of this method will require permission on the `parent` resource. |
- * For example, a Lien with a `parent` of `projects/1234` requires permission |
- * `resourcemanager.projects.get`. |
+ * [request] - The metadata request object. |
* |
* Request parameters: |
* |
- * [parent] - The name of the resource to list all attached Liens. |
- * For example, `projects/1234`. |
- * |
- * [pageToken] - The `next_page_token` value returned from a previous List |
- * request, if any. |
- * |
- * [pageSize] - The maximum number of items to return. This is a suggestion |
- * for the server. |
+ * [resource] - The name of the resource to start computing the effective |
+ * `Policy`. |
+ * Value must have pattern "^folders/[^/]+$". |
* |
- * Completes with a [ListLiensResponse]. |
+ * Completes with a [OrgPolicy]. |
* |
* Completes with a [commons.ApiRequestError] if the API endpoint returned an |
* error. |
@@ -159,7 +156,7 @@ class LiensResourceApi { |
* If the used [http.Client] completes with an error when making a REST call, |
* this method will complete with the same error. |
*/ |
- async.Future<ListLiensResponse> list({core.String parent, core.String pageToken, core.int pageSize}) { |
+ async.Future<OrgPolicy> getEffectiveOrgPolicy(GetEffectiveOrgPolicyRequest request, core.String resource) { |
var _url = null; |
var _queryParams = new core.Map(); |
var _uploadMedia = null; |
@@ -167,48 +164,39 @@ class LiensResourceApi { |
var _downloadOptions = commons.DownloadOptions.Metadata; |
var _body = null; |
- if (parent != null) { |
- _queryParams["parent"] = [parent]; |
- } |
- if (pageToken != null) { |
- _queryParams["pageToken"] = [pageToken]; |
+ if (request != null) { |
+ _body = convert.JSON.encode((request).toJson()); |
} |
- if (pageSize != null) { |
- _queryParams["pageSize"] = ["${pageSize}"]; |
+ if (resource == null) { |
+ throw new core.ArgumentError("Parameter resource is required."); |
} |
- _url = 'v1/liens'; |
+ _url = 'v1/' + commons.Escaper.ecapeVariableReserved('$resource') + ':getEffectiveOrgPolicy'; |
var _response = _requester.request(_url, |
- "GET", |
+ "POST", |
body: _body, |
queryParams: _queryParams, |
uploadOptions: _uploadOptions, |
uploadMedia: _uploadMedia, |
downloadOptions: _downloadOptions); |
- return _response.then((data) => new ListLiensResponse.fromJson(data)); |
+ return _response.then((data) => new OrgPolicy.fromJson(data)); |
} |
-} |
- |
- |
-class OperationsResourceApi { |
- final commons.ApiRequester _requester; |
- |
- OperationsResourceApi(commons.ApiRequester client) : |
- _requester = client; |
- |
/** |
- * Gets the latest state of a long-running operation. Clients can use this |
- * method to poll the operation result at intervals as recommended by the API |
- * service. |
+ * Gets the effective `Policy` on a resource. This is the result of merging |
+ * `Policies` in the resource hierarchy. The returned `Policy` will not have |
+ * an `etag`set because it is a computed `Policy` across multiple resources. |
+ * |
+ * [request] - The metadata request object. |
* |
* Request parameters: |
* |
- * [name] - The name of the operation resource. |
- * Value must have pattern "^operations/.+$". |
+ * [resource] - The name of the resource to start computing the effective |
+ * `Policy`. |
+ * Value must have pattern "^folders/[^/]+$". |
* |
- * Completes with a [Operation]. |
+ * Completes with a [OrgPolicy]. |
* |
* Completes with a [commons.ApiRequestError] if the API endpoint returned an |
* error. |
@@ -216,7 +204,7 @@ class OperationsResourceApi { |
* If the used [http.Client] completes with an error when making a REST call, |
* this method will complete with the same error. |
*/ |
- async.Future<Operation> get(core.String name) { |
+ async.Future<OrgPolicy> getEffectiveOrgPolicyV1(GetEffectiveOrgPolicyRequest request, core.String resource) { |
var _url = null; |
var _queryParams = new core.Map(); |
var _uploadMedia = null; |
@@ -224,41 +212,41 @@ class OperationsResourceApi { |
var _downloadOptions = commons.DownloadOptions.Metadata; |
var _body = null; |
- if (name == null) { |
- throw new core.ArgumentError("Parameter name is required."); |
+ if (request != null) { |
+ _body = convert.JSON.encode((request).toJson()); |
+ } |
+ if (resource == null) { |
+ throw new core.ArgumentError("Parameter resource is required."); |
} |
- _url = 'v1/' + commons.Escaper.ecapeVariableReserved('$name'); |
+ _url = 'v1/' + commons.Escaper.ecapeVariableReserved('$resource') + ':getEffectiveOrgPolicyV1'; |
var _response = _requester.request(_url, |
- "GET", |
+ "POST", |
body: _body, |
queryParams: _queryParams, |
uploadOptions: _uploadOptions, |
uploadMedia: _uploadMedia, |
downloadOptions: _downloadOptions); |
- return _response.then((data) => new Operation.fromJson(data)); |
+ return _response.then((data) => new OrgPolicy.fromJson(data)); |
} |
-} |
- |
- |
-class OrganizationsResourceApi { |
- final commons.ApiRequester _requester; |
- |
- OrganizationsResourceApi(commons.ApiRequester client) : |
- _requester = client; |
- |
/** |
- * Fetches an Organization resource identified by the specified resource name. |
+ * Gets a `Policy` on a resource. |
+ * |
+ * If no `Policy` is set on the resource, a `Policy` is returned with default |
+ * values including `POLICY_TYPE_NOT_SET` for the `policy_type oneof`. The |
+ * `etag` value can be used with `SetOrgPolicy()` to create or update a |
+ * `Policy` during read-modify-write. |
+ * |
+ * [request] - The metadata request object. |
* |
* Request parameters: |
* |
- * [name] - The resource name of the Organization to fetch, e.g. |
- * "organizations/1234". |
- * Value must have pattern "^organizations/[^/]+$". |
+ * [resource] - Name of the resource the `Policy` is set on. |
+ * Value must have pattern "^folders/[^/]+$". |
* |
- * Completes with a [Organization]. |
+ * Completes with a [OrgPolicy]. |
* |
* Completes with a [commons.ApiRequestError] if the API endpoint returned an |
* error. |
@@ -266,7 +254,7 @@ class OrganizationsResourceApi { |
* If the used [http.Client] completes with an error when making a REST call, |
* this method will complete with the same error. |
*/ |
- async.Future<Organization> get(core.String name) { |
+ async.Future<OrgPolicy> getOrgPolicy(GetOrgPolicyRequest request, core.String resource) { |
var _url = null; |
var _queryParams = new core.Map(); |
var _uploadMedia = null; |
@@ -274,37 +262,41 @@ class OrganizationsResourceApi { |
var _downloadOptions = commons.DownloadOptions.Metadata; |
var _body = null; |
- if (name == null) { |
- throw new core.ArgumentError("Parameter name is required."); |
+ if (request != null) { |
+ _body = convert.JSON.encode((request).toJson()); |
+ } |
+ if (resource == null) { |
+ throw new core.ArgumentError("Parameter resource is required."); |
} |
- _url = 'v1/' + commons.Escaper.ecapeVariableReserved('$name'); |
+ _url = 'v1/' + commons.Escaper.ecapeVariableReserved('$resource') + ':getOrgPolicy'; |
var _response = _requester.request(_url, |
- "GET", |
+ "POST", |
body: _body, |
queryParams: _queryParams, |
uploadOptions: _uploadOptions, |
uploadMedia: _uploadMedia, |
downloadOptions: _downloadOptions); |
- return _response.then((data) => new Organization.fromJson(data)); |
+ return _response.then((data) => new OrgPolicy.fromJson(data)); |
} |
/** |
- * Gets the access control policy for an Organization resource. May be empty |
- * if no such policy or resource exists. The `resource` field should be the |
- * organization's resource name, e.g. "organizations/123". |
+ * Gets a `Policy` on a resource. |
+ * |
+ * If no `Policy` is set on the resource, a `Policy` is returned with default |
+ * values including `POLICY_TYPE_NOT_SET` for the `policy_type oneof`. The |
+ * `etag` value can be used with `SetOrgPolicy()` to create or update a |
+ * `Policy` during read-modify-write. |
* |
* [request] - The metadata request object. |
* |
* Request parameters: |
* |
- * [resource] - REQUIRED: The resource for which the policy is being |
- * requested. |
- * See the operation documentation for the appropriate value for this field. |
- * Value must have pattern "^organizations/[^/]+$". |
+ * [resource] - Name of the resource the `Policy` is set on. |
+ * Value must have pattern "^folders/[^/]+$". |
* |
- * Completes with a [Policy]. |
+ * Completes with a [OrgPolicy]. |
* |
* Completes with a [commons.ApiRequestError] if the API endpoint returned an |
* error. |
@@ -312,7 +304,7 @@ class OrganizationsResourceApi { |
* If the used [http.Client] completes with an error when making a REST call, |
* this method will complete with the same error. |
*/ |
- async.Future<Policy> getIamPolicy(GetIamPolicyRequest request, core.String resource) { |
+ async.Future<OrgPolicy> getOrgPolicyV1(GetOrgPolicyRequest request, core.String resource) { |
var _url = null; |
var _queryParams = new core.Map(); |
var _uploadMedia = null; |
@@ -327,7 +319,7 @@ class OrganizationsResourceApi { |
throw new core.ArgumentError("Parameter resource is required."); |
} |
- _url = 'v1/' + commons.Escaper.ecapeVariableReserved('$resource') + ':getIamPolicy'; |
+ _url = 'v1/' + commons.Escaper.ecapeVariableReserved('$resource') + ':getOrgPolicyV1'; |
var _response = _requester.request(_url, |
"POST", |
@@ -336,20 +328,20 @@ class OrganizationsResourceApi { |
uploadOptions: _uploadOptions, |
uploadMedia: _uploadMedia, |
downloadOptions: _downloadOptions); |
- return _response.then((data) => new Policy.fromJson(data)); |
+ return _response.then((data) => new OrgPolicy.fromJson(data)); |
} |
/** |
- * Searches Organization resources that are visible to the user and satisfy |
- * the specified filter. This method returns Organizations in an unspecified |
- * order. New Organizations do not necessarily appear at the end of the |
- * results. |
+ * Lists `Constraints` that could be applied on the specified resource. |
* |
* [request] - The metadata request object. |
* |
* Request parameters: |
* |
- * Completes with a [SearchOrganizationsResponse]. |
+ * [resource] - Name of the resource to list `Constraints` for. |
+ * Value must have pattern "^folders/[^/]+$". |
+ * |
+ * Completes with a [ListAvailableOrgPolicyConstraintsResponse]. |
* |
* Completes with a [commons.ApiRequestError] if the API endpoint returned an |
* error. |
@@ -357,7 +349,7 @@ class OrganizationsResourceApi { |
* If the used [http.Client] completes with an error when making a REST call, |
* this method will complete with the same error. |
*/ |
- async.Future<SearchOrganizationsResponse> search(SearchOrganizationsRequest request) { |
+ async.Future<ListAvailableOrgPolicyConstraintsResponse> listAvailableOrgPolicyConstraints(ListAvailableOrgPolicyConstraintsRequest request, core.String resource) { |
var _url = null; |
var _queryParams = new core.Map(); |
var _uploadMedia = null; |
@@ -368,8 +360,11 @@ class OrganizationsResourceApi { |
if (request != null) { |
_body = convert.JSON.encode((request).toJson()); |
} |
+ if (resource == null) { |
+ throw new core.ArgumentError("Parameter resource is required."); |
+ } |
- _url = 'v1/organizations:search'; |
+ _url = 'v1/' + commons.Escaper.ecapeVariableReserved('$resource') + ':listAvailableOrgPolicyConstraints'; |
var _response = _requester.request(_url, |
"POST", |
@@ -378,24 +373,20 @@ class OrganizationsResourceApi { |
uploadOptions: _uploadOptions, |
uploadMedia: _uploadMedia, |
downloadOptions: _downloadOptions); |
- return _response.then((data) => new SearchOrganizationsResponse.fromJson(data)); |
+ return _response.then((data) => new ListAvailableOrgPolicyConstraintsResponse.fromJson(data)); |
} |
/** |
- * Sets the access control policy on an Organization resource. Replaces any |
- * existing policy. The `resource` field should be the organization's resource |
- * name, e.g. "organizations/123". |
+ * Lists all the `Policies` set for a particular resource. |
* |
* [request] - The metadata request object. |
* |
* Request parameters: |
* |
- * [resource] - REQUIRED: The resource for which the policy is being |
- * specified. |
- * See the operation documentation for the appropriate value for this field. |
- * Value must have pattern "^organizations/[^/]+$". |
+ * [resource] - Name of the resource to list Policies for. |
+ * Value must have pattern "^folders/[^/]+$". |
* |
- * Completes with a [Policy]. |
+ * Completes with a [ListOrgPoliciesResponse]. |
* |
* Completes with a [commons.ApiRequestError] if the API endpoint returned an |
* error. |
@@ -403,7 +394,7 @@ class OrganizationsResourceApi { |
* If the used [http.Client] completes with an error when making a REST call, |
* this method will complete with the same error. |
*/ |
- async.Future<Policy> setIamPolicy(SetIamPolicyRequest request, core.String resource) { |
+ async.Future<ListOrgPoliciesResponse> listOrgPolicies(ListOrgPoliciesRequest request, core.String resource) { |
var _url = null; |
var _queryParams = new core.Map(); |
var _uploadMedia = null; |
@@ -418,7 +409,7 @@ class OrganizationsResourceApi { |
throw new core.ArgumentError("Parameter resource is required."); |
} |
- _url = 'v1/' + commons.Escaper.ecapeVariableReserved('$resource') + ':setIamPolicy'; |
+ _url = 'v1/' + commons.Escaper.ecapeVariableReserved('$resource') + ':listOrgPolicies'; |
var _response = _requester.request(_url, |
"POST", |
@@ -427,24 +418,24 @@ class OrganizationsResourceApi { |
uploadOptions: _uploadOptions, |
uploadMedia: _uploadMedia, |
downloadOptions: _downloadOptions); |
- return _response.then((data) => new Policy.fromJson(data)); |
+ return _response.then((data) => new ListOrgPoliciesResponse.fromJson(data)); |
} |
/** |
- * Returns permissions that a caller has on the specified Organization. |
- * The `resource` field should be the organization's resource name, |
- * e.g. "organizations/123". |
+ * Updates the specified `Policy` on the resource. Creates a new `Policy` for |
+ * that `Constraint` on the resource if one does not exist. |
+ * |
+ * Not supplying an `etag` on the request `Policy` results in an unconditional |
+ * write of the `Policy`. |
* |
* [request] - The metadata request object. |
* |
* Request parameters: |
* |
- * [resource] - REQUIRED: The resource for which the policy detail is being |
- * requested. |
- * See the operation documentation for the appropriate value for this field. |
- * Value must have pattern "^organizations/[^/]+$". |
+ * [resource] - Resource name of the resource to attach the `Policy`. |
+ * Value must have pattern "^folders/[^/]+$". |
* |
- * Completes with a [TestIamPermissionsResponse]. |
+ * Completes with a [OrgPolicy]. |
* |
* Completes with a [commons.ApiRequestError] if the API endpoint returned an |
* error. |
@@ -452,7 +443,7 @@ class OrganizationsResourceApi { |
* If the used [http.Client] completes with an error when making a REST call, |
* this method will complete with the same error. |
*/ |
- async.Future<TestIamPermissionsResponse> testIamPermissions(TestIamPermissionsRequest request, core.String resource) { |
+ async.Future<OrgPolicy> setOrgPolicy(SetOrgPolicyRequest request, core.String resource) { |
var _url = null; |
var _queryParams = new core.Map(); |
var _uploadMedia = null; |
@@ -467,7 +458,7 @@ class OrganizationsResourceApi { |
throw new core.ArgumentError("Parameter resource is required."); |
} |
- _url = 'v1/' + commons.Escaper.ecapeVariableReserved('$resource') + ':testIamPermissions'; |
+ _url = 'v1/' + commons.Escaper.ecapeVariableReserved('$resource') + ':setOrgPolicy'; |
var _response = _requester.request(_url, |
"POST", |
@@ -476,33 +467,24 @@ class OrganizationsResourceApi { |
uploadOptions: _uploadOptions, |
uploadMedia: _uploadMedia, |
downloadOptions: _downloadOptions); |
- return _response.then((data) => new TestIamPermissionsResponse.fromJson(data)); |
+ return _response.then((data) => new OrgPolicy.fromJson(data)); |
} |
-} |
- |
- |
-class ProjectsResourceApi { |
- final commons.ApiRequester _requester; |
- |
- ProjectsResourceApi(commons.ApiRequester client) : |
- _requester = client; |
- |
/** |
- * Request that a new Project be created. The result is an Operation which |
- * can be used to track the creation process. It is automatically deleted |
- * after a few hours, so there is no need to call DeleteOperation. |
+ * Updates the specified `Policy` on the resource. Creates a new `Policy` for |
+ * that `Constraint` on the resource if one does not exist. |
* |
- * Our SLO permits Project creation to take up to 30 seconds at the 90th |
- * percentile. As of 2016-08-29, we are observing 6 seconds 50th percentile |
- * latency. 95th percentile latency is around 11 seconds. We recommend |
- * polling at the 5th second with an exponential backoff. |
+ * Not supplying an `etag` on the request `Policy` results in an unconditional |
+ * write of the `Policy`. |
* |
* [request] - The metadata request object. |
* |
* Request parameters: |
* |
- * Completes with a [Operation]. |
+ * [resource] - Resource name of the resource to attach the `Policy`. |
+ * Value must have pattern "^folders/[^/]+$". |
+ * |
+ * Completes with a [OrgPolicy]. |
* |
* Completes with a [commons.ApiRequestError] if the API endpoint returned an |
* error. |
@@ -510,7 +492,7 @@ class ProjectsResourceApi { |
* If the used [http.Client] completes with an error when making a REST call, |
* this method will complete with the same error. |
*/ |
- async.Future<Operation> create(Project request) { |
+ async.Future<OrgPolicy> setOrgPolicyV1(SetOrgPolicyRequest request, core.String resource) { |
var _url = null; |
var _queryParams = new core.Map(); |
var _uploadMedia = null; |
@@ -521,8 +503,11 @@ class ProjectsResourceApi { |
if (request != null) { |
_body = convert.JSON.encode((request).toJson()); |
} |
+ if (resource == null) { |
+ throw new core.ArgumentError("Parameter resource is required."); |
+ } |
- _url = 'v1/projects'; |
+ _url = 'v1/' + commons.Escaper.ecapeVariableReserved('$resource') + ':setOrgPolicyV1'; |
var _response = _requester.request(_url, |
"POST", |
@@ -531,42 +516,32 @@ class ProjectsResourceApi { |
uploadOptions: _uploadOptions, |
uploadMedia: _uploadMedia, |
downloadOptions: _downloadOptions); |
- return _response.then((data) => new Operation.fromJson(data)); |
+ return _response.then((data) => new OrgPolicy.fromJson(data)); |
} |
+} |
+ |
+ |
+class LiensResourceApi { |
+ final commons.ApiRequester _requester; |
+ |
+ LiensResourceApi(commons.ApiRequester client) : |
+ _requester = client; |
+ |
/** |
- * Marks the Project identified by the specified |
- * `project_id` (for example, `my-project-123`) for deletion. |
- * This method will only affect the Project if the following criteria are met: |
- * |
- * + The Project does not have a billing account associated with it. |
- * + The Project has a lifecycle state of |
- * ACTIVE. |
- * |
- * This method changes the Project's lifecycle state from |
- * ACTIVE |
- * to DELETE_REQUESTED. |
- * The deletion starts at an unspecified time, |
- * at which point the Project is no longer accessible. |
+ * Create a Lien which applies to the resource denoted by the `parent` field. |
* |
- * Until the deletion completes, you can check the lifecycle state |
- * checked by retrieving the Project with GetProject, |
- * and the Project remains visible to ListProjects. |
- * However, you cannot update the project. |
+ * Callers of this method will require permission on the `parent` resource. |
+ * For example, applying to `projects/1234` requires permission |
+ * `resourcemanager.projects.updateLiens`. |
* |
- * After the deletion completes, the Project is not retrievable by |
- * the GetProject and |
- * ListProjects methods. |
+ * NOTE: Some resources may limit the number of Liens which may be applied. |
* |
- * The caller must have modify permissions for this Project. |
+ * [request] - The metadata request object. |
* |
* Request parameters: |
* |
- * [projectId] - The Project ID (for example, `foo-bar-123`). |
- * |
- * Required. |
- * |
- * Completes with a [Empty]. |
+ * Completes with a [Lien]. |
* |
* Completes with a [commons.ApiRequestError] if the API endpoint returned an |
* error. |
@@ -574,7 +549,7 @@ class ProjectsResourceApi { |
* If the used [http.Client] completes with an error when making a REST call, |
* this method will complete with the same error. |
*/ |
- async.Future<Empty> delete(core.String projectId) { |
+ async.Future<Lien> create(Lien request) { |
var _url = null; |
var _queryParams = new core.Map(); |
var _uploadMedia = null; |
@@ -582,35 +557,1297 @@ class ProjectsResourceApi { |
var _downloadOptions = commons.DownloadOptions.Metadata; |
var _body = null; |
- if (projectId == null) { |
- throw new core.ArgumentError("Parameter projectId is required."); |
+ if (request != null) { |
+ _body = convert.JSON.encode((request).toJson()); |
} |
- _url = 'v1/projects/' + commons.Escaper.ecapeVariable('$projectId'); |
+ _url = 'v1/liens'; |
var _response = _requester.request(_url, |
- "DELETE", |
+ "POST", |
body: _body, |
queryParams: _queryParams, |
uploadOptions: _uploadOptions, |
uploadMedia: _uploadMedia, |
downloadOptions: _downloadOptions); |
- return _response.then((data) => new Empty.fromJson(data)); |
+ return _response.then((data) => new Lien.fromJson(data)); |
} |
/** |
- * Retrieves the Project identified by the specified |
- * `project_id` (for example, `my-project-123`). |
- * |
- * The caller must have read permissions for this Project. |
+ * Delete a Lien by `name`. |
* |
- * Request parameters: |
+ * Callers of this method will require permission on the `parent` resource. |
+ * For example, a Lien with a `parent` of `projects/1234` requires permission |
+ * `resourcemanager.projects.updateLiens`. |
+ * |
+ * Request parameters: |
+ * |
+ * [name] - The name/identifier of the Lien to delete. |
+ * Value must have pattern "^liens/.+$". |
+ * |
+ * Completes with a [Empty]. |
+ * |
+ * Completes with a [commons.ApiRequestError] if the API endpoint returned an |
+ * error. |
+ * |
+ * If the used [http.Client] completes with an error when making a REST call, |
+ * this method will complete with the same error. |
+ */ |
+ async.Future<Empty> delete(core.String name) { |
+ var _url = null; |
+ var _queryParams = new core.Map(); |
+ var _uploadMedia = null; |
+ var _uploadOptions = null; |
+ var _downloadOptions = commons.DownloadOptions.Metadata; |
+ var _body = null; |
+ |
+ if (name == null) { |
+ throw new core.ArgumentError("Parameter name is required."); |
+ } |
+ |
+ _url = 'v1/' + commons.Escaper.ecapeVariableReserved('$name'); |
+ |
+ var _response = _requester.request(_url, |
+ "DELETE", |
+ body: _body, |
+ queryParams: _queryParams, |
+ uploadOptions: _uploadOptions, |
+ uploadMedia: _uploadMedia, |
+ downloadOptions: _downloadOptions); |
+ return _response.then((data) => new Empty.fromJson(data)); |
+ } |
+ |
+ /** |
+ * List all Liens applied to the `parent` resource. |
+ * |
+ * Callers of this method will require permission on the `parent` resource. |
+ * For example, a Lien with a `parent` of `projects/1234` requires permission |
+ * `resourcemanager.projects.get`. |
+ * |
+ * Request parameters: |
+ * |
+ * [parent] - The name of the resource to list all attached Liens. |
+ * For example, `projects/1234`. |
+ * |
+ * [pageToken] - The `next_page_token` value returned from a previous List |
+ * request, if any. |
+ * |
+ * [pageSize] - The maximum number of items to return. This is a suggestion |
+ * for the server. |
+ * |
+ * Completes with a [ListLiensResponse]. |
+ * |
+ * Completes with a [commons.ApiRequestError] if the API endpoint returned an |
+ * error. |
+ * |
+ * If the used [http.Client] completes with an error when making a REST call, |
+ * this method will complete with the same error. |
+ */ |
+ async.Future<ListLiensResponse> list({core.String parent, core.String pageToken, core.int pageSize}) { |
+ var _url = null; |
+ var _queryParams = new core.Map(); |
+ var _uploadMedia = null; |
+ var _uploadOptions = null; |
+ var _downloadOptions = commons.DownloadOptions.Metadata; |
+ var _body = null; |
+ |
+ if (parent != null) { |
+ _queryParams["parent"] = [parent]; |
+ } |
+ if (pageToken != null) { |
+ _queryParams["pageToken"] = [pageToken]; |
+ } |
+ if (pageSize != null) { |
+ _queryParams["pageSize"] = ["${pageSize}"]; |
+ } |
+ |
+ _url = 'v1/liens'; |
+ |
+ var _response = _requester.request(_url, |
+ "GET", |
+ body: _body, |
+ queryParams: _queryParams, |
+ uploadOptions: _uploadOptions, |
+ uploadMedia: _uploadMedia, |
+ downloadOptions: _downloadOptions); |
+ return _response.then((data) => new ListLiensResponse.fromJson(data)); |
+ } |
+ |
+} |
+ |
+ |
+class OperationsResourceApi { |
+ final commons.ApiRequester _requester; |
+ |
+ OperationsResourceApi(commons.ApiRequester client) : |
+ _requester = client; |
+ |
+ /** |
+ * Gets the latest state of a long-running operation. Clients can use this |
+ * method to poll the operation result at intervals as recommended by the API |
+ * service. |
+ * |
+ * Request parameters: |
+ * |
+ * [name] - The name of the operation resource. |
+ * Value must have pattern "^operations/.+$". |
+ * |
+ * Completes with a [Operation]. |
+ * |
+ * Completes with a [commons.ApiRequestError] if the API endpoint returned an |
+ * error. |
+ * |
+ * If the used [http.Client] completes with an error when making a REST call, |
+ * this method will complete with the same error. |
+ */ |
+ async.Future<Operation> get(core.String name) { |
+ var _url = null; |
+ var _queryParams = new core.Map(); |
+ var _uploadMedia = null; |
+ var _uploadOptions = null; |
+ var _downloadOptions = commons.DownloadOptions.Metadata; |
+ var _body = null; |
+ |
+ if (name == null) { |
+ throw new core.ArgumentError("Parameter name is required."); |
+ } |
+ |
+ _url = 'v1/' + commons.Escaper.ecapeVariableReserved('$name'); |
+ |
+ var _response = _requester.request(_url, |
+ "GET", |
+ body: _body, |
+ queryParams: _queryParams, |
+ uploadOptions: _uploadOptions, |
+ uploadMedia: _uploadMedia, |
+ downloadOptions: _downloadOptions); |
+ return _response.then((data) => new Operation.fromJson(data)); |
+ } |
+ |
+} |
+ |
+ |
+class OrganizationsResourceApi { |
+ final commons.ApiRequester _requester; |
+ |
+ OrganizationsResourceApi(commons.ApiRequester client) : |
+ _requester = client; |
+ |
+ /** |
+ * Clears a `Policy` from a resource. |
+ * |
+ * [request] - The metadata request object. |
+ * |
+ * Request parameters: |
+ * |
+ * [resource] - Name of the resource for the `Policy` to clear. |
+ * Value must have pattern "^organizations/[^/]+$". |
+ * |
+ * Completes with a [Empty]. |
+ * |
+ * Completes with a [commons.ApiRequestError] if the API endpoint returned an |
+ * error. |
+ * |
+ * If the used [http.Client] completes with an error when making a REST call, |
+ * this method will complete with the same error. |
+ */ |
+ async.Future<Empty> clearOrgPolicy(ClearOrgPolicyRequest request, core.String resource) { |
+ var _url = null; |
+ var _queryParams = new core.Map(); |
+ var _uploadMedia = null; |
+ var _uploadOptions = null; |
+ var _downloadOptions = commons.DownloadOptions.Metadata; |
+ var _body = null; |
+ |
+ if (request != null) { |
+ _body = convert.JSON.encode((request).toJson()); |
+ } |
+ if (resource == null) { |
+ throw new core.ArgumentError("Parameter resource is required."); |
+ } |
+ |
+ _url = 'v1/' + commons.Escaper.ecapeVariableReserved('$resource') + ':clearOrgPolicy'; |
+ |
+ var _response = _requester.request(_url, |
+ "POST", |
+ body: _body, |
+ queryParams: _queryParams, |
+ uploadOptions: _uploadOptions, |
+ uploadMedia: _uploadMedia, |
+ downloadOptions: _downloadOptions); |
+ return _response.then((data) => new Empty.fromJson(data)); |
+ } |
+ |
+ /** |
+ * Clears a `Policy` from a resource. |
+ * |
+ * [request] - The metadata request object. |
+ * |
+ * Request parameters: |
+ * |
+ * [resource] - Name of the resource for the `Policy` to clear. |
+ * Value must have pattern "^organizations/[^/]+$". |
+ * |
+ * Completes with a [Empty]. |
+ * |
+ * Completes with a [commons.ApiRequestError] if the API endpoint returned an |
+ * error. |
+ * |
+ * If the used [http.Client] completes with an error when making a REST call, |
+ * this method will complete with the same error. |
+ */ |
+ async.Future<Empty> clearOrgPolicyV1(ClearOrgPolicyRequest request, core.String resource) { |
+ var _url = null; |
+ var _queryParams = new core.Map(); |
+ var _uploadMedia = null; |
+ var _uploadOptions = null; |
+ var _downloadOptions = commons.DownloadOptions.Metadata; |
+ var _body = null; |
+ |
+ if (request != null) { |
+ _body = convert.JSON.encode((request).toJson()); |
+ } |
+ if (resource == null) { |
+ throw new core.ArgumentError("Parameter resource is required."); |
+ } |
+ |
+ _url = 'v1/' + commons.Escaper.ecapeVariableReserved('$resource') + ':clearOrgPolicyV1'; |
+ |
+ var _response = _requester.request(_url, |
+ "POST", |
+ body: _body, |
+ queryParams: _queryParams, |
+ uploadOptions: _uploadOptions, |
+ uploadMedia: _uploadMedia, |
+ downloadOptions: _downloadOptions); |
+ return _response.then((data) => new Empty.fromJson(data)); |
+ } |
+ |
+ /** |
+ * Fetches an Organization resource identified by the specified resource name. |
+ * |
+ * Request parameters: |
+ * |
+ * [name] - The resource name of the Organization to fetch, e.g. |
+ * "organizations/1234". |
+ * Value must have pattern "^organizations/[^/]+$". |
+ * |
+ * Completes with a [Organization]. |
+ * |
+ * Completes with a [commons.ApiRequestError] if the API endpoint returned an |
+ * error. |
+ * |
+ * If the used [http.Client] completes with an error when making a REST call, |
+ * this method will complete with the same error. |
+ */ |
+ async.Future<Organization> get(core.String name) { |
+ var _url = null; |
+ var _queryParams = new core.Map(); |
+ var _uploadMedia = null; |
+ var _uploadOptions = null; |
+ var _downloadOptions = commons.DownloadOptions.Metadata; |
+ var _body = null; |
+ |
+ if (name == null) { |
+ throw new core.ArgumentError("Parameter name is required."); |
+ } |
+ |
+ _url = 'v1/' + commons.Escaper.ecapeVariableReserved('$name'); |
+ |
+ var _response = _requester.request(_url, |
+ "GET", |
+ body: _body, |
+ queryParams: _queryParams, |
+ uploadOptions: _uploadOptions, |
+ uploadMedia: _uploadMedia, |
+ downloadOptions: _downloadOptions); |
+ return _response.then((data) => new Organization.fromJson(data)); |
+ } |
+ |
+ /** |
+ * Gets the effective `Policy` on a resource. This is the result of merging |
+ * `Policies` in the resource hierarchy. The returned `Policy` will not have |
+ * an `etag`set because it is a computed `Policy` across multiple resources. |
+ * |
+ * [request] - The metadata request object. |
+ * |
+ * Request parameters: |
+ * |
+ * [resource] - The name of the resource to start computing the effective |
+ * `Policy`. |
+ * Value must have pattern "^organizations/[^/]+$". |
+ * |
+ * Completes with a [OrgPolicy]. |
+ * |
+ * Completes with a [commons.ApiRequestError] if the API endpoint returned an |
+ * error. |
+ * |
+ * If the used [http.Client] completes with an error when making a REST call, |
+ * this method will complete with the same error. |
+ */ |
+ async.Future<OrgPolicy> getEffectiveOrgPolicy(GetEffectiveOrgPolicyRequest request, core.String resource) { |
+ var _url = null; |
+ var _queryParams = new core.Map(); |
+ var _uploadMedia = null; |
+ var _uploadOptions = null; |
+ var _downloadOptions = commons.DownloadOptions.Metadata; |
+ var _body = null; |
+ |
+ if (request != null) { |
+ _body = convert.JSON.encode((request).toJson()); |
+ } |
+ if (resource == null) { |
+ throw new core.ArgumentError("Parameter resource is required."); |
+ } |
+ |
+ _url = 'v1/' + commons.Escaper.ecapeVariableReserved('$resource') + ':getEffectiveOrgPolicy'; |
+ |
+ var _response = _requester.request(_url, |
+ "POST", |
+ body: _body, |
+ queryParams: _queryParams, |
+ uploadOptions: _uploadOptions, |
+ uploadMedia: _uploadMedia, |
+ downloadOptions: _downloadOptions); |
+ return _response.then((data) => new OrgPolicy.fromJson(data)); |
+ } |
+ |
+ /** |
+ * Gets the effective `Policy` on a resource. This is the result of merging |
+ * `Policies` in the resource hierarchy. The returned `Policy` will not have |
+ * an `etag`set because it is a computed `Policy` across multiple resources. |
+ * |
+ * [request] - The metadata request object. |
+ * |
+ * Request parameters: |
+ * |
+ * [resource] - The name of the resource to start computing the effective |
+ * `Policy`. |
+ * Value must have pattern "^organizations/[^/]+$". |
+ * |
+ * Completes with a [OrgPolicy]. |
+ * |
+ * Completes with a [commons.ApiRequestError] if the API endpoint returned an |
+ * error. |
+ * |
+ * If the used [http.Client] completes with an error when making a REST call, |
+ * this method will complete with the same error. |
+ */ |
+ async.Future<OrgPolicy> getEffectiveOrgPolicyV1(GetEffectiveOrgPolicyRequest request, core.String resource) { |
+ var _url = null; |
+ var _queryParams = new core.Map(); |
+ var _uploadMedia = null; |
+ var _uploadOptions = null; |
+ var _downloadOptions = commons.DownloadOptions.Metadata; |
+ var _body = null; |
+ |
+ if (request != null) { |
+ _body = convert.JSON.encode((request).toJson()); |
+ } |
+ if (resource == null) { |
+ throw new core.ArgumentError("Parameter resource is required."); |
+ } |
+ |
+ _url = 'v1/' + commons.Escaper.ecapeVariableReserved('$resource') + ':getEffectiveOrgPolicyV1'; |
+ |
+ var _response = _requester.request(_url, |
+ "POST", |
+ body: _body, |
+ queryParams: _queryParams, |
+ uploadOptions: _uploadOptions, |
+ uploadMedia: _uploadMedia, |
+ downloadOptions: _downloadOptions); |
+ return _response.then((data) => new OrgPolicy.fromJson(data)); |
+ } |
+ |
+ /** |
+ * Gets the access control policy for an Organization resource. May be empty |
+ * if no such policy or resource exists. The `resource` field should be the |
+ * organization's resource name, e.g. "organizations/123". |
+ * |
+ * [request] - The metadata request object. |
+ * |
+ * Request parameters: |
+ * |
+ * [resource] - REQUIRED: The resource for which the policy is being |
+ * requested. |
+ * See the operation documentation for the appropriate value for this field. |
+ * Value must have pattern "^organizations/[^/]+$". |
+ * |
+ * Completes with a [Policy]. |
+ * |
+ * Completes with a [commons.ApiRequestError] if the API endpoint returned an |
+ * error. |
+ * |
+ * If the used [http.Client] completes with an error when making a REST call, |
+ * this method will complete with the same error. |
+ */ |
+ async.Future<Policy> getIamPolicy(GetIamPolicyRequest request, core.String resource) { |
+ var _url = null; |
+ var _queryParams = new core.Map(); |
+ var _uploadMedia = null; |
+ var _uploadOptions = null; |
+ var _downloadOptions = commons.DownloadOptions.Metadata; |
+ var _body = null; |
+ |
+ if (request != null) { |
+ _body = convert.JSON.encode((request).toJson()); |
+ } |
+ if (resource == null) { |
+ throw new core.ArgumentError("Parameter resource is required."); |
+ } |
+ |
+ _url = 'v1/' + commons.Escaper.ecapeVariableReserved('$resource') + ':getIamPolicy'; |
+ |
+ var _response = _requester.request(_url, |
+ "POST", |
+ body: _body, |
+ queryParams: _queryParams, |
+ uploadOptions: _uploadOptions, |
+ uploadMedia: _uploadMedia, |
+ downloadOptions: _downloadOptions); |
+ return _response.then((data) => new Policy.fromJson(data)); |
+ } |
+ |
+ /** |
+ * Gets a `Policy` on a resource. |
+ * |
+ * If no `Policy` is set on the resource, a `Policy` is returned with default |
+ * values including `POLICY_TYPE_NOT_SET` for the `policy_type oneof`. The |
+ * `etag` value can be used with `SetOrgPolicy()` to create or update a |
+ * `Policy` during read-modify-write. |
+ * |
+ * [request] - The metadata request object. |
+ * |
+ * Request parameters: |
+ * |
+ * [resource] - Name of the resource the `Policy` is set on. |
+ * Value must have pattern "^organizations/[^/]+$". |
+ * |
+ * Completes with a [OrgPolicy]. |
+ * |
+ * Completes with a [commons.ApiRequestError] if the API endpoint returned an |
+ * error. |
+ * |
+ * If the used [http.Client] completes with an error when making a REST call, |
+ * this method will complete with the same error. |
+ */ |
+ async.Future<OrgPolicy> getOrgPolicy(GetOrgPolicyRequest request, core.String resource) { |
+ var _url = null; |
+ var _queryParams = new core.Map(); |
+ var _uploadMedia = null; |
+ var _uploadOptions = null; |
+ var _downloadOptions = commons.DownloadOptions.Metadata; |
+ var _body = null; |
+ |
+ if (request != null) { |
+ _body = convert.JSON.encode((request).toJson()); |
+ } |
+ if (resource == null) { |
+ throw new core.ArgumentError("Parameter resource is required."); |
+ } |
+ |
+ _url = 'v1/' + commons.Escaper.ecapeVariableReserved('$resource') + ':getOrgPolicy'; |
+ |
+ var _response = _requester.request(_url, |
+ "POST", |
+ body: _body, |
+ queryParams: _queryParams, |
+ uploadOptions: _uploadOptions, |
+ uploadMedia: _uploadMedia, |
+ downloadOptions: _downloadOptions); |
+ return _response.then((data) => new OrgPolicy.fromJson(data)); |
+ } |
+ |
+ /** |
+ * Gets a `Policy` on a resource. |
+ * |
+ * If no `Policy` is set on the resource, a `Policy` is returned with default |
+ * values including `POLICY_TYPE_NOT_SET` for the `policy_type oneof`. The |
+ * `etag` value can be used with `SetOrgPolicy()` to create or update a |
+ * `Policy` during read-modify-write. |
+ * |
+ * [request] - The metadata request object. |
+ * |
+ * Request parameters: |
+ * |
+ * [resource] - Name of the resource the `Policy` is set on. |
+ * Value must have pattern "^organizations/[^/]+$". |
+ * |
+ * Completes with a [OrgPolicy]. |
+ * |
+ * Completes with a [commons.ApiRequestError] if the API endpoint returned an |
+ * error. |
+ * |
+ * If the used [http.Client] completes with an error when making a REST call, |
+ * this method will complete with the same error. |
+ */ |
+ async.Future<OrgPolicy> getOrgPolicyV1(GetOrgPolicyRequest request, core.String resource) { |
+ var _url = null; |
+ var _queryParams = new core.Map(); |
+ var _uploadMedia = null; |
+ var _uploadOptions = null; |
+ var _downloadOptions = commons.DownloadOptions.Metadata; |
+ var _body = null; |
+ |
+ if (request != null) { |
+ _body = convert.JSON.encode((request).toJson()); |
+ } |
+ if (resource == null) { |
+ throw new core.ArgumentError("Parameter resource is required."); |
+ } |
+ |
+ _url = 'v1/' + commons.Escaper.ecapeVariableReserved('$resource') + ':getOrgPolicyV1'; |
+ |
+ var _response = _requester.request(_url, |
+ "POST", |
+ body: _body, |
+ queryParams: _queryParams, |
+ uploadOptions: _uploadOptions, |
+ uploadMedia: _uploadMedia, |
+ downloadOptions: _downloadOptions); |
+ return _response.then((data) => new OrgPolicy.fromJson(data)); |
+ } |
+ |
+ /** |
+ * Lists `Constraints` that could be applied on the specified resource. |
+ * |
+ * [request] - The metadata request object. |
+ * |
+ * Request parameters: |
+ * |
+ * [resource] - Name of the resource to list `Constraints` for. |
+ * Value must have pattern "^organizations/[^/]+$". |
+ * |
+ * Completes with a [ListAvailableOrgPolicyConstraintsResponse]. |
+ * |
+ * Completes with a [commons.ApiRequestError] if the API endpoint returned an |
+ * error. |
+ * |
+ * If the used [http.Client] completes with an error when making a REST call, |
+ * this method will complete with the same error. |
+ */ |
+ async.Future<ListAvailableOrgPolicyConstraintsResponse> listAvailableOrgPolicyConstraints(ListAvailableOrgPolicyConstraintsRequest request, core.String resource) { |
+ var _url = null; |
+ var _queryParams = new core.Map(); |
+ var _uploadMedia = null; |
+ var _uploadOptions = null; |
+ var _downloadOptions = commons.DownloadOptions.Metadata; |
+ var _body = null; |
+ |
+ if (request != null) { |
+ _body = convert.JSON.encode((request).toJson()); |
+ } |
+ if (resource == null) { |
+ throw new core.ArgumentError("Parameter resource is required."); |
+ } |
+ |
+ _url = 'v1/' + commons.Escaper.ecapeVariableReserved('$resource') + ':listAvailableOrgPolicyConstraints'; |
+ |
+ var _response = _requester.request(_url, |
+ "POST", |
+ body: _body, |
+ queryParams: _queryParams, |
+ uploadOptions: _uploadOptions, |
+ uploadMedia: _uploadMedia, |
+ downloadOptions: _downloadOptions); |
+ return _response.then((data) => new ListAvailableOrgPolicyConstraintsResponse.fromJson(data)); |
+ } |
+ |
+ /** |
+ * Lists all the `Policies` set for a particular resource. |
+ * |
+ * [request] - The metadata request object. |
+ * |
+ * Request parameters: |
+ * |
+ * [resource] - Name of the resource to list Policies for. |
+ * Value must have pattern "^organizations/[^/]+$". |
+ * |
+ * Completes with a [ListOrgPoliciesResponse]. |
+ * |
+ * Completes with a [commons.ApiRequestError] if the API endpoint returned an |
+ * error. |
+ * |
+ * If the used [http.Client] completes with an error when making a REST call, |
+ * this method will complete with the same error. |
+ */ |
+ async.Future<ListOrgPoliciesResponse> listOrgPolicies(ListOrgPoliciesRequest request, core.String resource) { |
+ var _url = null; |
+ var _queryParams = new core.Map(); |
+ var _uploadMedia = null; |
+ var _uploadOptions = null; |
+ var _downloadOptions = commons.DownloadOptions.Metadata; |
+ var _body = null; |
+ |
+ if (request != null) { |
+ _body = convert.JSON.encode((request).toJson()); |
+ } |
+ if (resource == null) { |
+ throw new core.ArgumentError("Parameter resource is required."); |
+ } |
+ |
+ _url = 'v1/' + commons.Escaper.ecapeVariableReserved('$resource') + ':listOrgPolicies'; |
+ |
+ var _response = _requester.request(_url, |
+ "POST", |
+ body: _body, |
+ queryParams: _queryParams, |
+ uploadOptions: _uploadOptions, |
+ uploadMedia: _uploadMedia, |
+ downloadOptions: _downloadOptions); |
+ return _response.then((data) => new ListOrgPoliciesResponse.fromJson(data)); |
+ } |
+ |
+ /** |
+ * Searches Organization resources that are visible to the user and satisfy |
+ * the specified filter. This method returns Organizations in an unspecified |
+ * order. New Organizations do not necessarily appear at the end of the |
+ * results. |
+ * |
+ * [request] - The metadata request object. |
+ * |
+ * Request parameters: |
+ * |
+ * Completes with a [SearchOrganizationsResponse]. |
+ * |
+ * Completes with a [commons.ApiRequestError] if the API endpoint returned an |
+ * error. |
+ * |
+ * If the used [http.Client] completes with an error when making a REST call, |
+ * this method will complete with the same error. |
+ */ |
+ async.Future<SearchOrganizationsResponse> search(SearchOrganizationsRequest request) { |
+ var _url = null; |
+ var _queryParams = new core.Map(); |
+ var _uploadMedia = null; |
+ var _uploadOptions = null; |
+ var _downloadOptions = commons.DownloadOptions.Metadata; |
+ var _body = null; |
+ |
+ if (request != null) { |
+ _body = convert.JSON.encode((request).toJson()); |
+ } |
+ |
+ _url = 'v1/organizations:search'; |
+ |
+ var _response = _requester.request(_url, |
+ "POST", |
+ body: _body, |
+ queryParams: _queryParams, |
+ uploadOptions: _uploadOptions, |
+ uploadMedia: _uploadMedia, |
+ downloadOptions: _downloadOptions); |
+ return _response.then((data) => new SearchOrganizationsResponse.fromJson(data)); |
+ } |
+ |
+ /** |
+ * Sets the access control policy on an Organization resource. Replaces any |
+ * existing policy. The `resource` field should be the organization's resource |
+ * name, e.g. "organizations/123". |
+ * |
+ * [request] - The metadata request object. |
+ * |
+ * Request parameters: |
+ * |
+ * [resource] - REQUIRED: The resource for which the policy is being |
+ * specified. |
+ * See the operation documentation for the appropriate value for this field. |
+ * Value must have pattern "^organizations/[^/]+$". |
+ * |
+ * Completes with a [Policy]. |
+ * |
+ * Completes with a [commons.ApiRequestError] if the API endpoint returned an |
+ * error. |
+ * |
+ * If the used [http.Client] completes with an error when making a REST call, |
+ * this method will complete with the same error. |
+ */ |
+ async.Future<Policy> setIamPolicy(SetIamPolicyRequest request, core.String resource) { |
+ var _url = null; |
+ var _queryParams = new core.Map(); |
+ var _uploadMedia = null; |
+ var _uploadOptions = null; |
+ var _downloadOptions = commons.DownloadOptions.Metadata; |
+ var _body = null; |
+ |
+ if (request != null) { |
+ _body = convert.JSON.encode((request).toJson()); |
+ } |
+ if (resource == null) { |
+ throw new core.ArgumentError("Parameter resource is required."); |
+ } |
+ |
+ _url = 'v1/' + commons.Escaper.ecapeVariableReserved('$resource') + ':setIamPolicy'; |
+ |
+ var _response = _requester.request(_url, |
+ "POST", |
+ body: _body, |
+ queryParams: _queryParams, |
+ uploadOptions: _uploadOptions, |
+ uploadMedia: _uploadMedia, |
+ downloadOptions: _downloadOptions); |
+ return _response.then((data) => new Policy.fromJson(data)); |
+ } |
+ |
+ /** |
+ * Updates the specified `Policy` on the resource. Creates a new `Policy` for |
+ * that `Constraint` on the resource if one does not exist. |
+ * |
+ * Not supplying an `etag` on the request `Policy` results in an unconditional |
+ * write of the `Policy`. |
+ * |
+ * [request] - The metadata request object. |
+ * |
+ * Request parameters: |
+ * |
+ * [resource] - Resource name of the resource to attach the `Policy`. |
+ * Value must have pattern "^organizations/[^/]+$". |
+ * |
+ * Completes with a [OrgPolicy]. |
+ * |
+ * Completes with a [commons.ApiRequestError] if the API endpoint returned an |
+ * error. |
+ * |
+ * If the used [http.Client] completes with an error when making a REST call, |
+ * this method will complete with the same error. |
+ */ |
+ async.Future<OrgPolicy> setOrgPolicy(SetOrgPolicyRequest request, core.String resource) { |
+ var _url = null; |
+ var _queryParams = new core.Map(); |
+ var _uploadMedia = null; |
+ var _uploadOptions = null; |
+ var _downloadOptions = commons.DownloadOptions.Metadata; |
+ var _body = null; |
+ |
+ if (request != null) { |
+ _body = convert.JSON.encode((request).toJson()); |
+ } |
+ if (resource == null) { |
+ throw new core.ArgumentError("Parameter resource is required."); |
+ } |
+ |
+ _url = 'v1/' + commons.Escaper.ecapeVariableReserved('$resource') + ':setOrgPolicy'; |
+ |
+ var _response = _requester.request(_url, |
+ "POST", |
+ body: _body, |
+ queryParams: _queryParams, |
+ uploadOptions: _uploadOptions, |
+ uploadMedia: _uploadMedia, |
+ downloadOptions: _downloadOptions); |
+ return _response.then((data) => new OrgPolicy.fromJson(data)); |
+ } |
+ |
+ /** |
+ * Updates the specified `Policy` on the resource. Creates a new `Policy` for |
+ * that `Constraint` on the resource if one does not exist. |
+ * |
+ * Not supplying an `etag` on the request `Policy` results in an unconditional |
+ * write of the `Policy`. |
+ * |
+ * [request] - The metadata request object. |
+ * |
+ * Request parameters: |
+ * |
+ * [resource] - Resource name of the resource to attach the `Policy`. |
+ * Value must have pattern "^organizations/[^/]+$". |
+ * |
+ * Completes with a [OrgPolicy]. |
+ * |
+ * Completes with a [commons.ApiRequestError] if the API endpoint returned an |
+ * error. |
+ * |
+ * If the used [http.Client] completes with an error when making a REST call, |
+ * this method will complete with the same error. |
+ */ |
+ async.Future<OrgPolicy> setOrgPolicyV1(SetOrgPolicyRequest request, core.String resource) { |
+ var _url = null; |
+ var _queryParams = new core.Map(); |
+ var _uploadMedia = null; |
+ var _uploadOptions = null; |
+ var _downloadOptions = commons.DownloadOptions.Metadata; |
+ var _body = null; |
+ |
+ if (request != null) { |
+ _body = convert.JSON.encode((request).toJson()); |
+ } |
+ if (resource == null) { |
+ throw new core.ArgumentError("Parameter resource is required."); |
+ } |
+ |
+ _url = 'v1/' + commons.Escaper.ecapeVariableReserved('$resource') + ':setOrgPolicyV1'; |
+ |
+ var _response = _requester.request(_url, |
+ "POST", |
+ body: _body, |
+ queryParams: _queryParams, |
+ uploadOptions: _uploadOptions, |
+ uploadMedia: _uploadMedia, |
+ downloadOptions: _downloadOptions); |
+ return _response.then((data) => new OrgPolicy.fromJson(data)); |
+ } |
+ |
+ /** |
+ * Returns permissions that a caller has on the specified Organization. |
+ * The `resource` field should be the organization's resource name, |
+ * e.g. "organizations/123". |
+ * |
+ * [request] - The metadata request object. |
+ * |
+ * Request parameters: |
+ * |
+ * [resource] - REQUIRED: The resource for which the policy detail is being |
+ * requested. |
+ * See the operation documentation for the appropriate value for this field. |
+ * Value must have pattern "^organizations/[^/]+$". |
+ * |
+ * Completes with a [TestIamPermissionsResponse]. |
+ * |
+ * Completes with a [commons.ApiRequestError] if the API endpoint returned an |
+ * error. |
+ * |
+ * If the used [http.Client] completes with an error when making a REST call, |
+ * this method will complete with the same error. |
+ */ |
+ async.Future<TestIamPermissionsResponse> testIamPermissions(TestIamPermissionsRequest request, core.String resource) { |
+ var _url = null; |
+ var _queryParams = new core.Map(); |
+ var _uploadMedia = null; |
+ var _uploadOptions = null; |
+ var _downloadOptions = commons.DownloadOptions.Metadata; |
+ var _body = null; |
+ |
+ if (request != null) { |
+ _body = convert.JSON.encode((request).toJson()); |
+ } |
+ if (resource == null) { |
+ throw new core.ArgumentError("Parameter resource is required."); |
+ } |
+ |
+ _url = 'v1/' + commons.Escaper.ecapeVariableReserved('$resource') + ':testIamPermissions'; |
+ |
+ var _response = _requester.request(_url, |
+ "POST", |
+ body: _body, |
+ queryParams: _queryParams, |
+ uploadOptions: _uploadOptions, |
+ uploadMedia: _uploadMedia, |
+ downloadOptions: _downloadOptions); |
+ return _response.then((data) => new TestIamPermissionsResponse.fromJson(data)); |
+ } |
+ |
+} |
+ |
+ |
+class ProjectsResourceApi { |
+ final commons.ApiRequester _requester; |
+ |
+ ProjectsResourceApi(commons.ApiRequester client) : |
+ _requester = client; |
+ |
+ /** |
+ * Clears a `Policy` from a resource. |
+ * |
+ * [request] - The metadata request object. |
+ * |
+ * Request parameters: |
+ * |
+ * [resource] - Name of the resource for the `Policy` to clear. |
+ * Value must have pattern "^projects/[^/]+$". |
+ * |
+ * Completes with a [Empty]. |
+ * |
+ * Completes with a [commons.ApiRequestError] if the API endpoint returned an |
+ * error. |
+ * |
+ * If the used [http.Client] completes with an error when making a REST call, |
+ * this method will complete with the same error. |
+ */ |
+ async.Future<Empty> clearOrgPolicy(ClearOrgPolicyRequest request, core.String resource) { |
+ var _url = null; |
+ var _queryParams = new core.Map(); |
+ var _uploadMedia = null; |
+ var _uploadOptions = null; |
+ var _downloadOptions = commons.DownloadOptions.Metadata; |
+ var _body = null; |
+ |
+ if (request != null) { |
+ _body = convert.JSON.encode((request).toJson()); |
+ } |
+ if (resource == null) { |
+ throw new core.ArgumentError("Parameter resource is required."); |
+ } |
+ |
+ _url = 'v1/' + commons.Escaper.ecapeVariableReserved('$resource') + ':clearOrgPolicy'; |
+ |
+ var _response = _requester.request(_url, |
+ "POST", |
+ body: _body, |
+ queryParams: _queryParams, |
+ uploadOptions: _uploadOptions, |
+ uploadMedia: _uploadMedia, |
+ downloadOptions: _downloadOptions); |
+ return _response.then((data) => new Empty.fromJson(data)); |
+ } |
+ |
+ /** |
+ * Clears a `Policy` from a resource. |
+ * |
+ * [request] - The metadata request object. |
+ * |
+ * Request parameters: |
+ * |
+ * [resource] - Name of the resource for the `Policy` to clear. |
+ * Value must have pattern "^projects/[^/]+$". |
+ * |
+ * Completes with a [Empty]. |
+ * |
+ * Completes with a [commons.ApiRequestError] if the API endpoint returned an |
+ * error. |
+ * |
+ * If the used [http.Client] completes with an error when making a REST call, |
+ * this method will complete with the same error. |
+ */ |
+ async.Future<Empty> clearOrgPolicyV1(ClearOrgPolicyRequest request, core.String resource) { |
+ var _url = null; |
+ var _queryParams = new core.Map(); |
+ var _uploadMedia = null; |
+ var _uploadOptions = null; |
+ var _downloadOptions = commons.DownloadOptions.Metadata; |
+ var _body = null; |
+ |
+ if (request != null) { |
+ _body = convert.JSON.encode((request).toJson()); |
+ } |
+ if (resource == null) { |
+ throw new core.ArgumentError("Parameter resource is required."); |
+ } |
+ |
+ _url = 'v1/' + commons.Escaper.ecapeVariableReserved('$resource') + ':clearOrgPolicyV1'; |
+ |
+ var _response = _requester.request(_url, |
+ "POST", |
+ body: _body, |
+ queryParams: _queryParams, |
+ uploadOptions: _uploadOptions, |
+ uploadMedia: _uploadMedia, |
+ downloadOptions: _downloadOptions); |
+ return _response.then((data) => new Empty.fromJson(data)); |
+ } |
+ |
+ /** |
+ * Request that a new Project be created. The result is an Operation which |
+ * can be used to track the creation process. It is automatically deleted |
+ * after a few hours, so there is no need to call DeleteOperation. |
+ * |
+ * Our SLO permits Project creation to take up to 30 seconds at the 90th |
+ * percentile. As of 2016-08-29, we are observing 6 seconds 50th percentile |
+ * latency. 95th percentile latency is around 11 seconds. We recommend |
+ * polling at the 5th second with an exponential backoff. |
+ * |
+ * [request] - The metadata request object. |
+ * |
+ * Request parameters: |
+ * |
+ * Completes with a [Operation]. |
+ * |
+ * Completes with a [commons.ApiRequestError] if the API endpoint returned an |
+ * error. |
+ * |
+ * If the used [http.Client] completes with an error when making a REST call, |
+ * this method will complete with the same error. |
+ */ |
+ async.Future<Operation> create(Project request) { |
+ var _url = null; |
+ var _queryParams = new core.Map(); |
+ var _uploadMedia = null; |
+ var _uploadOptions = null; |
+ var _downloadOptions = commons.DownloadOptions.Metadata; |
+ var _body = null; |
+ |
+ if (request != null) { |
+ _body = convert.JSON.encode((request).toJson()); |
+ } |
+ |
+ _url = 'v1/projects'; |
+ |
+ var _response = _requester.request(_url, |
+ "POST", |
+ body: _body, |
+ queryParams: _queryParams, |
+ uploadOptions: _uploadOptions, |
+ uploadMedia: _uploadMedia, |
+ downloadOptions: _downloadOptions); |
+ return _response.then((data) => new Operation.fromJson(data)); |
+ } |
+ |
+ /** |
+ * Marks the Project identified by the specified |
+ * `project_id` (for example, `my-project-123`) for deletion. |
+ * This method will only affect the Project if the following criteria are met: |
+ * |
+ * + The Project does not have a billing account associated with it. |
+ * + The Project has a lifecycle state of |
+ * ACTIVE. |
+ * |
+ * This method changes the Project's lifecycle state from |
+ * ACTIVE |
+ * to DELETE_REQUESTED. |
+ * The deletion starts at an unspecified time, |
+ * at which point the Project is no longer accessible. |
+ * |
+ * Until the deletion completes, you can check the lifecycle state |
+ * checked by retrieving the Project with GetProject, |
+ * and the Project remains visible to ListProjects. |
+ * However, you cannot update the project. |
+ * |
+ * After the deletion completes, the Project is not retrievable by |
+ * the GetProject and |
+ * ListProjects methods. |
+ * |
+ * The caller must have modify permissions for this Project. |
+ * |
+ * Request parameters: |
+ * |
+ * [projectId] - The Project ID (for example, `foo-bar-123`). |
+ * |
+ * Required. |
+ * |
+ * Completes with a [Empty]. |
+ * |
+ * Completes with a [commons.ApiRequestError] if the API endpoint returned an |
+ * error. |
+ * |
+ * If the used [http.Client] completes with an error when making a REST call, |
+ * this method will complete with the same error. |
+ */ |
+ async.Future<Empty> delete(core.String projectId) { |
+ var _url = null; |
+ var _queryParams = new core.Map(); |
+ var _uploadMedia = null; |
+ var _uploadOptions = null; |
+ var _downloadOptions = commons.DownloadOptions.Metadata; |
+ var _body = null; |
+ |
+ if (projectId == null) { |
+ throw new core.ArgumentError("Parameter projectId is required."); |
+ } |
+ |
+ _url = 'v1/projects/' + commons.Escaper.ecapeVariable('$projectId'); |
+ |
+ var _response = _requester.request(_url, |
+ "DELETE", |
+ body: _body, |
+ queryParams: _queryParams, |
+ uploadOptions: _uploadOptions, |
+ uploadMedia: _uploadMedia, |
+ downloadOptions: _downloadOptions); |
+ return _response.then((data) => new Empty.fromJson(data)); |
+ } |
+ |
+ /** |
+ * Retrieves the Project identified by the specified |
+ * `project_id` (for example, `my-project-123`). |
+ * |
+ * The caller must have read permissions for this Project. |
+ * |
+ * Request parameters: |
+ * |
+ * [projectId] - The Project ID (for example, `my-project-123`). |
+ * |
+ * Required. |
+ * |
+ * Completes with a [Project]. |
+ * |
+ * Completes with a [commons.ApiRequestError] if the API endpoint returned an |
+ * error. |
+ * |
+ * If the used [http.Client] completes with an error when making a REST call, |
+ * this method will complete with the same error. |
+ */ |
+ async.Future<Project> get(core.String projectId) { |
+ var _url = null; |
+ var _queryParams = new core.Map(); |
+ var _uploadMedia = null; |
+ var _uploadOptions = null; |
+ var _downloadOptions = commons.DownloadOptions.Metadata; |
+ var _body = null; |
+ |
+ if (projectId == null) { |
+ throw new core.ArgumentError("Parameter projectId is required."); |
+ } |
+ |
+ _url = 'v1/projects/' + commons.Escaper.ecapeVariable('$projectId'); |
+ |
+ var _response = _requester.request(_url, |
+ "GET", |
+ body: _body, |
+ queryParams: _queryParams, |
+ uploadOptions: _uploadOptions, |
+ uploadMedia: _uploadMedia, |
+ downloadOptions: _downloadOptions); |
+ return _response.then((data) => new Project.fromJson(data)); |
+ } |
+ |
+ /** |
+ * Gets a list of ancestors in the resource hierarchy for the Project |
+ * identified by the specified `project_id` (for example, `my-project-123`). |
+ * |
+ * The caller must have read permissions for this Project. |
+ * |
+ * [request] - The metadata request object. |
+ * |
+ * Request parameters: |
+ * |
+ * [projectId] - The Project ID (for example, `my-project-123`). |
+ * |
+ * Required. |
+ * |
+ * Completes with a [GetAncestryResponse]. |
+ * |
+ * Completes with a [commons.ApiRequestError] if the API endpoint returned an |
+ * error. |
+ * |
+ * If the used [http.Client] completes with an error when making a REST call, |
+ * this method will complete with the same error. |
+ */ |
+ async.Future<GetAncestryResponse> getAncestry(GetAncestryRequest request, core.String projectId) { |
+ var _url = null; |
+ var _queryParams = new core.Map(); |
+ var _uploadMedia = null; |
+ var _uploadOptions = null; |
+ var _downloadOptions = commons.DownloadOptions.Metadata; |
+ var _body = null; |
+ |
+ if (request != null) { |
+ _body = convert.JSON.encode((request).toJson()); |
+ } |
+ if (projectId == null) { |
+ throw new core.ArgumentError("Parameter projectId is required."); |
+ } |
+ |
+ _url = 'v1/projects/' + commons.Escaper.ecapeVariable('$projectId') + ':getAncestry'; |
+ |
+ var _response = _requester.request(_url, |
+ "POST", |
+ body: _body, |
+ queryParams: _queryParams, |
+ uploadOptions: _uploadOptions, |
+ uploadMedia: _uploadMedia, |
+ downloadOptions: _downloadOptions); |
+ return _response.then((data) => new GetAncestryResponse.fromJson(data)); |
+ } |
+ |
+ /** |
+ * Gets the effective `Policy` on a resource. This is the result of merging |
+ * `Policies` in the resource hierarchy. The returned `Policy` will not have |
+ * an `etag`set because it is a computed `Policy` across multiple resources. |
+ * |
+ * [request] - The metadata request object. |
+ * |
+ * Request parameters: |
+ * |
+ * [resource] - The name of the resource to start computing the effective |
+ * `Policy`. |
+ * Value must have pattern "^projects/[^/]+$". |
+ * |
+ * Completes with a [OrgPolicy]. |
+ * |
+ * Completes with a [commons.ApiRequestError] if the API endpoint returned an |
+ * error. |
+ * |
+ * If the used [http.Client] completes with an error when making a REST call, |
+ * this method will complete with the same error. |
+ */ |
+ async.Future<OrgPolicy> getEffectiveOrgPolicy(GetEffectiveOrgPolicyRequest request, core.String resource) { |
+ var _url = null; |
+ var _queryParams = new core.Map(); |
+ var _uploadMedia = null; |
+ var _uploadOptions = null; |
+ var _downloadOptions = commons.DownloadOptions.Metadata; |
+ var _body = null; |
+ |
+ if (request != null) { |
+ _body = convert.JSON.encode((request).toJson()); |
+ } |
+ if (resource == null) { |
+ throw new core.ArgumentError("Parameter resource is required."); |
+ } |
+ |
+ _url = 'v1/' + commons.Escaper.ecapeVariableReserved('$resource') + ':getEffectiveOrgPolicy'; |
+ |
+ var _response = _requester.request(_url, |
+ "POST", |
+ body: _body, |
+ queryParams: _queryParams, |
+ uploadOptions: _uploadOptions, |
+ uploadMedia: _uploadMedia, |
+ downloadOptions: _downloadOptions); |
+ return _response.then((data) => new OrgPolicy.fromJson(data)); |
+ } |
+ |
+ /** |
+ * Gets the effective `Policy` on a resource. This is the result of merging |
+ * `Policies` in the resource hierarchy. The returned `Policy` will not have |
+ * an `etag`set because it is a computed `Policy` across multiple resources. |
+ * |
+ * [request] - The metadata request object. |
+ * |
+ * Request parameters: |
+ * |
+ * [resource] - The name of the resource to start computing the effective |
+ * `Policy`. |
+ * Value must have pattern "^projects/[^/]+$". |
+ * |
+ * Completes with a [OrgPolicy]. |
+ * |
+ * Completes with a [commons.ApiRequestError] if the API endpoint returned an |
+ * error. |
+ * |
+ * If the used [http.Client] completes with an error when making a REST call, |
+ * this method will complete with the same error. |
+ */ |
+ async.Future<OrgPolicy> getEffectiveOrgPolicyV1(GetEffectiveOrgPolicyRequest request, core.String resource) { |
+ var _url = null; |
+ var _queryParams = new core.Map(); |
+ var _uploadMedia = null; |
+ var _uploadOptions = null; |
+ var _downloadOptions = commons.DownloadOptions.Metadata; |
+ var _body = null; |
+ |
+ if (request != null) { |
+ _body = convert.JSON.encode((request).toJson()); |
+ } |
+ if (resource == null) { |
+ throw new core.ArgumentError("Parameter resource is required."); |
+ } |
+ |
+ _url = 'v1/' + commons.Escaper.ecapeVariableReserved('$resource') + ':getEffectiveOrgPolicyV1'; |
+ |
+ var _response = _requester.request(_url, |
+ "POST", |
+ body: _body, |
+ queryParams: _queryParams, |
+ uploadOptions: _uploadOptions, |
+ uploadMedia: _uploadMedia, |
+ downloadOptions: _downloadOptions); |
+ return _response.then((data) => new OrgPolicy.fromJson(data)); |
+ } |
+ |
+ /** |
+ * Returns the IAM access control policy for the specified Project. |
+ * Permission is denied if the policy or the resource does not exist. |
* |
- * [projectId] - The Project ID (for example, `my-project-123`). |
+ * [request] - The metadata request object. |
* |
- * Required. |
+ * Request parameters: |
* |
- * Completes with a [Project]. |
+ * [resource] - REQUIRED: The resource for which the policy is being |
+ * requested. |
+ * See the operation documentation for the appropriate value for this field. |
+ * |
+ * Completes with a [Policy]. |
* |
* Completes with a [commons.ApiRequestError] if the API endpoint returned an |
* error. |
@@ -618,7 +1855,7 @@ class ProjectsResourceApi { |
* If the used [http.Client] completes with an error when making a REST call, |
* this method will complete with the same error. |
*/ |
- async.Future<Project> get(core.String projectId) { |
+ async.Future<Policy> getIamPolicy(GetIamPolicyRequest request, core.String resource) { |
var _url = null; |
var _queryParams = new core.Map(); |
var _uploadMedia = null; |
@@ -626,37 +1863,41 @@ class ProjectsResourceApi { |
var _downloadOptions = commons.DownloadOptions.Metadata; |
var _body = null; |
- if (projectId == null) { |
- throw new core.ArgumentError("Parameter projectId is required."); |
+ if (request != null) { |
+ _body = convert.JSON.encode((request).toJson()); |
+ } |
+ if (resource == null) { |
+ throw new core.ArgumentError("Parameter resource is required."); |
} |
- _url = 'v1/projects/' + commons.Escaper.ecapeVariable('$projectId'); |
+ _url = 'v1/projects/' + commons.Escaper.ecapeVariable('$resource') + ':getIamPolicy'; |
var _response = _requester.request(_url, |
- "GET", |
+ "POST", |
body: _body, |
queryParams: _queryParams, |
uploadOptions: _uploadOptions, |
uploadMedia: _uploadMedia, |
downloadOptions: _downloadOptions); |
- return _response.then((data) => new Project.fromJson(data)); |
+ return _response.then((data) => new Policy.fromJson(data)); |
} |
/** |
- * Gets a list of ancestors in the resource hierarchy for the Project |
- * identified by the specified `project_id` (for example, `my-project-123`). |
+ * Gets a `Policy` on a resource. |
* |
- * The caller must have read permissions for this Project. |
+ * If no `Policy` is set on the resource, a `Policy` is returned with default |
+ * values including `POLICY_TYPE_NOT_SET` for the `policy_type oneof`. The |
+ * `etag` value can be used with `SetOrgPolicy()` to create or update a |
+ * `Policy` during read-modify-write. |
* |
* [request] - The metadata request object. |
* |
* Request parameters: |
* |
- * [projectId] - The Project ID (for example, `my-project-123`). |
- * |
- * Required. |
+ * [resource] - Name of the resource the `Policy` is set on. |
+ * Value must have pattern "^projects/[^/]+$". |
* |
- * Completes with a [GetAncestryResponse]. |
+ * Completes with a [OrgPolicy]. |
* |
* Completes with a [commons.ApiRequestError] if the API endpoint returned an |
* error. |
@@ -664,7 +1905,7 @@ class ProjectsResourceApi { |
* If the used [http.Client] completes with an error when making a REST call, |
* this method will complete with the same error. |
*/ |
- async.Future<GetAncestryResponse> getAncestry(GetAncestryRequest request, core.String projectId) { |
+ async.Future<OrgPolicy> getOrgPolicy(GetOrgPolicyRequest request, core.String resource) { |
var _url = null; |
var _queryParams = new core.Map(); |
var _uploadMedia = null; |
@@ -675,11 +1916,11 @@ class ProjectsResourceApi { |
if (request != null) { |
_body = convert.JSON.encode((request).toJson()); |
} |
- if (projectId == null) { |
- throw new core.ArgumentError("Parameter projectId is required."); |
+ if (resource == null) { |
+ throw new core.ArgumentError("Parameter resource is required."); |
} |
- _url = 'v1/projects/' + commons.Escaper.ecapeVariable('$projectId') + ':getAncestry'; |
+ _url = 'v1/' + commons.Escaper.ecapeVariableReserved('$resource') + ':getOrgPolicy'; |
var _response = _requester.request(_url, |
"POST", |
@@ -688,22 +1929,25 @@ class ProjectsResourceApi { |
uploadOptions: _uploadOptions, |
uploadMedia: _uploadMedia, |
downloadOptions: _downloadOptions); |
- return _response.then((data) => new GetAncestryResponse.fromJson(data)); |
+ return _response.then((data) => new OrgPolicy.fromJson(data)); |
} |
/** |
- * Returns the IAM access control policy for the specified Project. |
- * Permission is denied if the policy or the resource does not exist. |
+ * Gets a `Policy` on a resource. |
+ * |
+ * If no `Policy` is set on the resource, a `Policy` is returned with default |
+ * values including `POLICY_TYPE_NOT_SET` for the `policy_type oneof`. The |
+ * `etag` value can be used with `SetOrgPolicy()` to create or update a |
+ * `Policy` during read-modify-write. |
* |
* [request] - The metadata request object. |
* |
* Request parameters: |
* |
- * [resource] - REQUIRED: The resource for which the policy is being |
- * requested. |
- * See the operation documentation for the appropriate value for this field. |
+ * [resource] - Name of the resource the `Policy` is set on. |
+ * Value must have pattern "^projects/[^/]+$". |
* |
- * Completes with a [Policy]. |
+ * Completes with a [OrgPolicy]. |
* |
* Completes with a [commons.ApiRequestError] if the API endpoint returned an |
* error. |
@@ -711,7 +1955,7 @@ class ProjectsResourceApi { |
* If the used [http.Client] completes with an error when making a REST call, |
* this method will complete with the same error. |
*/ |
- async.Future<Policy> getIamPolicy(GetIamPolicyRequest request, core.String resource) { |
+ async.Future<OrgPolicy> getOrgPolicyV1(GetOrgPolicyRequest request, core.String resource) { |
var _url = null; |
var _queryParams = new core.Map(); |
var _uploadMedia = null; |
@@ -726,7 +1970,7 @@ class ProjectsResourceApi { |
throw new core.ArgumentError("Parameter resource is required."); |
} |
- _url = 'v1/projects/' + commons.Escaper.ecapeVariable('$resource') + ':getIamPolicy'; |
+ _url = 'v1/' + commons.Escaper.ecapeVariableReserved('$resource') + ':getOrgPolicyV1'; |
var _response = _requester.request(_url, |
"POST", |
@@ -735,7 +1979,7 @@ class ProjectsResourceApi { |
uploadOptions: _uploadOptions, |
uploadMedia: _uploadMedia, |
downloadOptions: _downloadOptions); |
- return _response.then((data) => new Policy.fromJson(data)); |
+ return _response.then((data) => new OrgPolicy.fromJson(data)); |
} |
/** |
@@ -763,7 +2007,7 @@ class ProjectsResourceApi { |
* |NAME:howl|Equivalent to above.| |
* |labels.color:*|The project has the label `color`.| |
* |labels.color:red|The project's label `color` has the value `red`.| |
- * |labels.color:red label.size:big|The project's label `color` has the |
+ * |labels.color:red labels.size:big|The project's label `color` has the |
* value `red` and its label `size` has the value `big`. |
* |
* Optional. |
@@ -806,67 +2050,255 @@ class ProjectsResourceApi { |
_queryParams["pageSize"] = ["${pageSize}"]; |
} |
- _url = 'v1/projects'; |
+ _url = 'v1/projects'; |
+ |
+ var _response = _requester.request(_url, |
+ "GET", |
+ body: _body, |
+ queryParams: _queryParams, |
+ uploadOptions: _uploadOptions, |
+ uploadMedia: _uploadMedia, |
+ downloadOptions: _downloadOptions); |
+ return _response.then((data) => new ListProjectsResponse.fromJson(data)); |
+ } |
+ |
+ /** |
+ * Lists `Constraints` that could be applied on the specified resource. |
+ * |
+ * [request] - The metadata request object. |
+ * |
+ * Request parameters: |
+ * |
+ * [resource] - Name of the resource to list `Constraints` for. |
+ * Value must have pattern "^projects/[^/]+$". |
+ * |
+ * Completes with a [ListAvailableOrgPolicyConstraintsResponse]. |
+ * |
+ * Completes with a [commons.ApiRequestError] if the API endpoint returned an |
+ * error. |
+ * |
+ * If the used [http.Client] completes with an error when making a REST call, |
+ * this method will complete with the same error. |
+ */ |
+ async.Future<ListAvailableOrgPolicyConstraintsResponse> listAvailableOrgPolicyConstraints(ListAvailableOrgPolicyConstraintsRequest request, core.String resource) { |
+ var _url = null; |
+ var _queryParams = new core.Map(); |
+ var _uploadMedia = null; |
+ var _uploadOptions = null; |
+ var _downloadOptions = commons.DownloadOptions.Metadata; |
+ var _body = null; |
+ |
+ if (request != null) { |
+ _body = convert.JSON.encode((request).toJson()); |
+ } |
+ if (resource == null) { |
+ throw new core.ArgumentError("Parameter resource is required."); |
+ } |
+ |
+ _url = 'v1/' + commons.Escaper.ecapeVariableReserved('$resource') + ':listAvailableOrgPolicyConstraints'; |
+ |
+ var _response = _requester.request(_url, |
+ "POST", |
+ body: _body, |
+ queryParams: _queryParams, |
+ uploadOptions: _uploadOptions, |
+ uploadMedia: _uploadMedia, |
+ downloadOptions: _downloadOptions); |
+ return _response.then((data) => new ListAvailableOrgPolicyConstraintsResponse.fromJson(data)); |
+ } |
+ |
+ /** |
+ * Lists all the `Policies` set for a particular resource. |
+ * |
+ * [request] - The metadata request object. |
+ * |
+ * Request parameters: |
+ * |
+ * [resource] - Name of the resource to list Policies for. |
+ * Value must have pattern "^projects/[^/]+$". |
+ * |
+ * Completes with a [ListOrgPoliciesResponse]. |
+ * |
+ * Completes with a [commons.ApiRequestError] if the API endpoint returned an |
+ * error. |
+ * |
+ * If the used [http.Client] completes with an error when making a REST call, |
+ * this method will complete with the same error. |
+ */ |
+ async.Future<ListOrgPoliciesResponse> listOrgPolicies(ListOrgPoliciesRequest request, core.String resource) { |
+ var _url = null; |
+ var _queryParams = new core.Map(); |
+ var _uploadMedia = null; |
+ var _uploadOptions = null; |
+ var _downloadOptions = commons.DownloadOptions.Metadata; |
+ var _body = null; |
+ |
+ if (request != null) { |
+ _body = convert.JSON.encode((request).toJson()); |
+ } |
+ if (resource == null) { |
+ throw new core.ArgumentError("Parameter resource is required."); |
+ } |
+ |
+ _url = 'v1/' + commons.Escaper.ecapeVariableReserved('$resource') + ':listOrgPolicies'; |
+ |
+ var _response = _requester.request(_url, |
+ "POST", |
+ body: _body, |
+ queryParams: _queryParams, |
+ uploadOptions: _uploadOptions, |
+ uploadMedia: _uploadMedia, |
+ downloadOptions: _downloadOptions); |
+ return _response.then((data) => new ListOrgPoliciesResponse.fromJson(data)); |
+ } |
+ |
+ /** |
+ * Sets the IAM access control policy for the specified Project. Replaces |
+ * any existing policy. |
+ * |
+ * The following constraints apply when using `setIamPolicy()`: |
+ * |
+ * + Project does not support `allUsers` and `allAuthenticatedUsers` as |
+ * `members` in a `Binding` of a `Policy`. |
+ * |
+ * + The owner role can be granted only to `user` and `serviceAccount`. |
+ * |
+ * + Service accounts can be made owners of a project directly |
+ * without any restrictions. However, to be added as an owner, a user must be |
+ * invited via Cloud Platform console and must accept the invitation. |
+ * |
+ * + A user cannot be granted the owner role using `setIamPolicy()`. The user |
+ * must be granted the owner role using the Cloud Platform Console and must |
+ * explicitly accept the invitation. |
+ * |
+ * + Invitations to grant the owner role cannot be sent using |
+ * `setIamPolicy()`; |
+ * they must be sent only using the Cloud Platform Console. |
+ * |
+ * + Membership changes that leave the project without any owners that have |
+ * accepted the Terms of Service (ToS) will be rejected. |
+ * |
+ * + There must be at least one owner who has accepted the Terms of |
+ * Service (ToS) agreement in the policy. Calling `setIamPolicy()` to |
+ * remove the last ToS-accepted owner from the policy will fail. This |
+ * restriction also applies to legacy projects that no longer have owners |
+ * who have accepted the ToS. Edits to IAM policies will be rejected until |
+ * the lack of a ToS-accepting owner is rectified. |
+ * |
+ * + Calling this method requires enabling the App Engine Admin API. |
+ * |
+ * Note: Removing service accounts from policies or changing their roles |
+ * can render services completely inoperable. It is important to understand |
+ * how the service account is being used before removing or updating its |
+ * roles. |
+ * |
+ * [request] - The metadata request object. |
+ * |
+ * Request parameters: |
+ * |
+ * [resource] - REQUIRED: The resource for which the policy is being |
+ * specified. |
+ * See the operation documentation for the appropriate value for this field. |
+ * |
+ * Completes with a [Policy]. |
+ * |
+ * Completes with a [commons.ApiRequestError] if the API endpoint returned an |
+ * error. |
+ * |
+ * If the used [http.Client] completes with an error when making a REST call, |
+ * this method will complete with the same error. |
+ */ |
+ async.Future<Policy> setIamPolicy(SetIamPolicyRequest request, core.String resource) { |
+ var _url = null; |
+ var _queryParams = new core.Map(); |
+ var _uploadMedia = null; |
+ var _uploadOptions = null; |
+ var _downloadOptions = commons.DownloadOptions.Metadata; |
+ var _body = null; |
+ |
+ if (request != null) { |
+ _body = convert.JSON.encode((request).toJson()); |
+ } |
+ if (resource == null) { |
+ throw new core.ArgumentError("Parameter resource is required."); |
+ } |
+ |
+ _url = 'v1/projects/' + commons.Escaper.ecapeVariable('$resource') + ':setIamPolicy'; |
+ |
+ var _response = _requester.request(_url, |
+ "POST", |
+ body: _body, |
+ queryParams: _queryParams, |
+ uploadOptions: _uploadOptions, |
+ uploadMedia: _uploadMedia, |
+ downloadOptions: _downloadOptions); |
+ return _response.then((data) => new Policy.fromJson(data)); |
+ } |
+ |
+ /** |
+ * Updates the specified `Policy` on the resource. Creates a new `Policy` for |
+ * that `Constraint` on the resource if one does not exist. |
+ * |
+ * Not supplying an `etag` on the request `Policy` results in an unconditional |
+ * write of the `Policy`. |
+ * |
+ * [request] - The metadata request object. |
+ * |
+ * Request parameters: |
+ * |
+ * [resource] - Resource name of the resource to attach the `Policy`. |
+ * Value must have pattern "^projects/[^/]+$". |
+ * |
+ * Completes with a [OrgPolicy]. |
+ * |
+ * Completes with a [commons.ApiRequestError] if the API endpoint returned an |
+ * error. |
+ * |
+ * If the used [http.Client] completes with an error when making a REST call, |
+ * this method will complete with the same error. |
+ */ |
+ async.Future<OrgPolicy> setOrgPolicy(SetOrgPolicyRequest request, core.String resource) { |
+ var _url = null; |
+ var _queryParams = new core.Map(); |
+ var _uploadMedia = null; |
+ var _uploadOptions = null; |
+ var _downloadOptions = commons.DownloadOptions.Metadata; |
+ var _body = null; |
+ |
+ if (request != null) { |
+ _body = convert.JSON.encode((request).toJson()); |
+ } |
+ if (resource == null) { |
+ throw new core.ArgumentError("Parameter resource is required."); |
+ } |
+ |
+ _url = 'v1/' + commons.Escaper.ecapeVariableReserved('$resource') + ':setOrgPolicy'; |
var _response = _requester.request(_url, |
- "GET", |
+ "POST", |
body: _body, |
queryParams: _queryParams, |
uploadOptions: _uploadOptions, |
uploadMedia: _uploadMedia, |
downloadOptions: _downloadOptions); |
- return _response.then((data) => new ListProjectsResponse.fromJson(data)); |
+ return _response.then((data) => new OrgPolicy.fromJson(data)); |
} |
/** |
- * Sets the IAM access control policy for the specified Project. Replaces |
- * any existing policy. |
- * |
- * The following constraints apply when using `setIamPolicy()`: |
- * |
- * + Project does not support `allUsers` and `allAuthenticatedUsers` as |
- * `members` in a `Binding` of a `Policy`. |
- * |
- * + The owner role can be granted only to `user` and `serviceAccount`. |
- * |
- * + Service accounts can be made owners of a project directly |
- * without any restrictions. However, to be added as an owner, a user must be |
- * invited via Cloud Platform console and must accept the invitation. |
- * |
- * + A user cannot be granted the owner role using `setIamPolicy()`. The user |
- * must be granted the owner role using the Cloud Platform Console and must |
- * explicitly accept the invitation. |
- * |
- * + Invitations to grant the owner role cannot be sent using |
- * `setIamPolicy()`; |
- * they must be sent only using the Cloud Platform Console. |
- * |
- * + Membership changes that leave the project without any owners that have |
- * accepted the Terms of Service (ToS) will be rejected. |
- * |
- * + There must be at least one owner who has accepted the Terms of |
- * Service (ToS) agreement in the policy. Calling `setIamPolicy()` to |
- * to remove the last ToS-accepted owner from the policy will fail. This |
- * restriction also applies to legacy projects that no longer have owners |
- * who have accepted the ToS. Edits to IAM policies will be rejected until |
- * the lack of a ToS-accepting owner is rectified. |
- * |
- * + Calling this method requires enabling the App Engine Admin API. |
+ * Updates the specified `Policy` on the resource. Creates a new `Policy` for |
+ * that `Constraint` on the resource if one does not exist. |
* |
- * Note: Removing service accounts from policies or changing their roles |
- * can render services completely inoperable. It is important to understand |
- * how the service account is being used before removing or updating its |
- * roles. |
+ * Not supplying an `etag` on the request `Policy` results in an unconditional |
+ * write of the `Policy`. |
* |
* [request] - The metadata request object. |
* |
* Request parameters: |
* |
- * [resource] - REQUIRED: The resource for which the policy is being |
- * specified. |
- * See the operation documentation for the appropriate value for this field. |
+ * [resource] - Resource name of the resource to attach the `Policy`. |
+ * Value must have pattern "^projects/[^/]+$". |
* |
- * Completes with a [Policy]. |
+ * Completes with a [OrgPolicy]. |
* |
* Completes with a [commons.ApiRequestError] if the API endpoint returned an |
* error. |
@@ -874,7 +2306,7 @@ class ProjectsResourceApi { |
* If the used [http.Client] completes with an error when making a REST call, |
* this method will complete with the same error. |
*/ |
- async.Future<Policy> setIamPolicy(SetIamPolicyRequest request, core.String resource) { |
+ async.Future<OrgPolicy> setOrgPolicyV1(SetOrgPolicyRequest request, core.String resource) { |
var _url = null; |
var _queryParams = new core.Map(); |
var _uploadMedia = null; |
@@ -889,7 +2321,7 @@ class ProjectsResourceApi { |
throw new core.ArgumentError("Parameter resource is required."); |
} |
- _url = 'v1/projects/' + commons.Escaper.ecapeVariable('$resource') + ':setIamPolicy'; |
+ _url = 'v1/' + commons.Escaper.ecapeVariableReserved('$resource') + ':setOrgPolicyV1'; |
var _response = _requester.request(_url, |
"POST", |
@@ -898,7 +2330,7 @@ class ProjectsResourceApi { |
uploadOptions: _uploadOptions, |
uploadMedia: _uploadMedia, |
downloadOptions: _downloadOptions); |
- return _response.then((data) => new Policy.fromJson(data)); |
+ return _response.then((data) => new OrgPolicy.fromJson(data)); |
} |
/** |
@@ -1074,6 +2506,153 @@ class Ancestor { |
} |
} |
+/** |
+ * Specifies the audit configuration for a service. |
+ * The configuration determines which permission types are logged, and what |
+ * identities, if any, are exempted from logging. |
+ * An AuditConifg must have one or more AuditLogConfigs. |
+ * |
+ * If there are AuditConfigs for both `allServices` and a specific service, |
+ * the union of the two AuditConfigs is used for that service: the log_types |
+ * specified in each AuditConfig are enabled, and the exempted_members in each |
+ * AuditConfig are exempted. |
+ * Example Policy with multiple AuditConfigs: |
+ * { |
+ * "audit_configs": [ |
+ * { |
+ * "service": "allServices" |
+ * "audit_log_configs": [ |
+ * { |
+ * "log_type": "DATA_READ", |
+ * "exempted_members": [ |
+ * "user:foo@gmail.com" |
+ * ] |
+ * }, |
+ * { |
+ * "log_type": "DATA_WRITE", |
+ * }, |
+ * { |
+ * "log_type": "ADMIN_READ", |
+ * } |
+ * ] |
+ * }, |
+ * { |
+ * "service": "fooservice@googleapis.com" |
+ * "audit_log_configs": [ |
+ * { |
+ * "log_type": "DATA_READ", |
+ * }, |
+ * { |
+ * "log_type": "DATA_WRITE", |
+ * "exempted_members": [ |
+ * "user:bar@gmail.com" |
+ * ] |
+ * } |
+ * ] |
+ * } |
+ * ] |
+ * } |
+ * For fooservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ |
+ * logging. It also exempts foo@gmail.com from DATA_READ logging, and |
+ * bar@gmail.com from DATA_WRITE logging. |
+ */ |
+class AuditConfig { |
+ /** |
+ * The configuration for logging of each type of permission. |
+ * Next ID: 4 |
+ */ |
+ core.List<AuditLogConfig> 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. |
+ */ |
+ core.String service; |
+ |
+ AuditConfig(); |
+ |
+ AuditConfig.fromJson(core.Map _json) { |
+ if (_json.containsKey("auditLogConfigs")) { |
+ auditLogConfigs = _json["auditLogConfigs"].map((value) => new AuditLogConfig.fromJson(value)).toList(); |
+ } |
+ if (_json.containsKey("service")) { |
+ service = _json["service"]; |
+ } |
+ } |
+ |
+ core.Map toJson() { |
+ var _json = new core.Map(); |
+ if (auditLogConfigs != null) { |
+ _json["auditLogConfigs"] = auditLogConfigs.map((value) => (value).toJson()).toList(); |
+ } |
+ if (service != null) { |
+ _json["service"] = service; |
+ } |
+ return _json; |
+ } |
+} |
+ |
+/** |
+ * Provides the configuration for logging a type of permissions. |
+ * Example: |
+ * |
+ * { |
+ * "audit_log_configs": [ |
+ * { |
+ * "log_type": "DATA_READ", |
+ * "exempted_members": [ |
+ * "user:foo@gmail.com" |
+ * ] |
+ * }, |
+ * { |
+ * "log_type": "DATA_WRITE", |
+ * } |
+ * ] |
+ * } |
+ * |
+ * This enables 'DATA_READ' and 'DATA_WRITE' logging, while exempting |
+ * foo@gmail.com from DATA_READ logging. |
+ */ |
+class AuditLogConfig { |
+ /** |
+ * Specifies the identities that do not cause logging for this type of |
+ * permission. |
+ * Follows the same format of Binding.members. |
+ */ |
+ core.List<core.String> exemptedMembers; |
+ /** |
+ * The log type that this config enables. |
+ * Possible string values are: |
+ * - "LOG_TYPE_UNSPECIFIED" : Default case. Should never be this. |
+ * - "ADMIN_READ" : Admin reads. Example: CloudIAM getIamPolicy |
+ * - "DATA_WRITE" : Data writes. Example: CloudSQL Users create |
+ * - "DATA_READ" : Data reads. Example: CloudSQL Users list |
+ */ |
+ core.String logType; |
+ |
+ AuditLogConfig(); |
+ |
+ AuditLogConfig.fromJson(core.Map _json) { |
+ if (_json.containsKey("exemptedMembers")) { |
+ exemptedMembers = _json["exemptedMembers"]; |
+ } |
+ if (_json.containsKey("logType")) { |
+ logType = _json["logType"]; |
+ } |
+ } |
+ |
+ core.Map toJson() { |
+ var _json = new core.Map(); |
+ if (exemptedMembers != null) { |
+ _json["exemptedMembers"] = exemptedMembers; |
+ } |
+ if (logType != null) { |
+ _json["logType"] = logType; |
+ } |
+ return _json; |
+ } |
+} |
+ |
/** Associates `members` with a `role`. */ |
class Binding { |
/** |
@@ -1131,6 +2710,243 @@ class Binding { |
} |
/** |
+ * A `Constraint` that is either enforced or not. |
+ * |
+ * For example a constraint `constraints/compute.disableSerialPortAccess`. |
+ * If it is enforced on a VM instance, serial port connections will not be |
+ * opened to that instance. |
+ */ |
+class BooleanConstraint { |
+ |
+ BooleanConstraint(); |
+ |
+ BooleanConstraint.fromJson(core.Map _json) { |
+ } |
+ |
+ core.Map toJson() { |
+ var _json = new core.Map(); |
+ return _json; |
+ } |
+} |
+ |
+/** |
+ * Used in `policy_type` to specify how `boolean_policy` will behave at this |
+ * resource. |
+ */ |
+class BooleanPolicy { |
+ /** |
+ * 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`. |
+ */ |
+ core.bool enforced; |
+ |
+ BooleanPolicy(); |
+ |
+ BooleanPolicy.fromJson(core.Map _json) { |
+ if (_json.containsKey("enforced")) { |
+ enforced = _json["enforced"]; |
+ } |
+ } |
+ |
+ core.Map toJson() { |
+ var _json = new core.Map(); |
+ if (enforced != null) { |
+ _json["enforced"] = enforced; |
+ } |
+ return _json; |
+ } |
+} |
+ |
+/** The request sent to the ClearOrgPolicy method. */ |
+class ClearOrgPolicyRequest { |
+ /** Name of the `Constraint` of the `Policy` to clear. */ |
+ core.String constraint; |
+ /** |
+ * The current version, for concurrency control. Not sending an `etag` |
+ * will cause the `Policy` to be cleared blindly. |
+ */ |
+ core.String etag; |
+ core.List<core.int> get etagAsBytes { |
+ return convert.BASE64.decode(etag); |
+ } |
+ |
+ void set etagAsBytes(core.List<core.int> _bytes) { |
+ etag = convert.BASE64.encode(_bytes).replaceAll("/", "_").replaceAll("+", "-"); |
+ } |
+ |
+ ClearOrgPolicyRequest(); |
+ |
+ ClearOrgPolicyRequest.fromJson(core.Map _json) { |
+ if (_json.containsKey("constraint")) { |
+ constraint = _json["constraint"]; |
+ } |
+ if (_json.containsKey("etag")) { |
+ etag = _json["etag"]; |
+ } |
+ } |
+ |
+ core.Map toJson() { |
+ var _json = new core.Map(); |
+ if (constraint != null) { |
+ _json["constraint"] = constraint; |
+ } |
+ if (etag != null) { |
+ _json["etag"] = etag; |
+ } |
+ return _json; |
+ } |
+} |
+ |
+/** |
+ * A `Constraint` describes a way in which a resource's configuration can be |
+ * restricted. For example, it controls which cloud services can be activated |
+ * across an organization, or whether a Compute Engine instance can have |
+ * serial port connections established. `Constraints` can be configured by the |
+ * organization's policy adminstrator to fit the needs of the organzation by |
+ * setting Policies for `Constraints` at different locations in the |
+ * organization's resource hierarchy. Policies are inherited down the resource |
+ * hierarchy from higher levels, but can also be overridden. For details about |
+ * the inheritance rules please read about |
+ * Policies. |
+ * |
+ * `Constraints` have a default behavior determined by the `constraint_default` |
+ * field, which is the enforcement behavior that is used in the absence of a |
+ * `Policy` being defined or inherited for the resource in question. |
+ */ |
+class Constraint { |
+ /** Defines this constraint as being a BooleanConstraint. */ |
+ BooleanConstraint booleanConstraint; |
+ /** |
+ * The evaluation behavior of this constraint in the absense of 'Policy'. |
+ * Possible string values are: |
+ * - "CONSTRAINT_DEFAULT_UNSPECIFIED" : This is only used for distinguishing |
+ * unset values and should never be |
+ * used. |
+ * - "ALLOW" : Indicate that all values are allowed for list constraints. |
+ * Indicate that enforcement is off for boolean constraints. |
+ * - "DENY" : Indicate that all values are denied for list constraints. |
+ * Indicate that enforcement is on for boolean constraints. |
+ */ |
+ core.String constraintDefault; |
+ /** |
+ * Detailed description of what this `Constraint` controls as well as how and |
+ * where it is enforced. |
+ * |
+ * Mutable. |
+ */ |
+ core.String description; |
+ /** |
+ * The human readable name. |
+ * |
+ * Mutable. |
+ */ |
+ core.String displayName; |
+ /** Defines this constraint as being a ListConstraint. */ |
+ ListConstraint listConstraint; |
+ /** |
+ * Immutable value, required to globally be unique. For example, |
+ * `constraints/serviceuser.services` |
+ */ |
+ core.String name; |
+ /** Version of the `Constraint`. Default version is 0; */ |
+ core.int version; |
+ |
+ Constraint(); |
+ |
+ Constraint.fromJson(core.Map _json) { |
+ if (_json.containsKey("booleanConstraint")) { |
+ booleanConstraint = new BooleanConstraint.fromJson(_json["booleanConstraint"]); |
+ } |
+ if (_json.containsKey("constraintDefault")) { |
+ constraintDefault = _json["constraintDefault"]; |
+ } |
+ if (_json.containsKey("description")) { |
+ description = _json["description"]; |
+ } |
+ if (_json.containsKey("displayName")) { |
+ displayName = _json["displayName"]; |
+ } |
+ if (_json.containsKey("listConstraint")) { |
+ listConstraint = new ListConstraint.fromJson(_json["listConstraint"]); |
+ } |
+ if (_json.containsKey("name")) { |
+ name = _json["name"]; |
+ } |
+ if (_json.containsKey("version")) { |
+ version = _json["version"]; |
+ } |
+ } |
+ |
+ core.Map toJson() { |
+ var _json = new core.Map(); |
+ if (booleanConstraint != null) { |
+ _json["booleanConstraint"] = (booleanConstraint).toJson(); |
+ } |
+ if (constraintDefault != null) { |
+ _json["constraintDefault"] = constraintDefault; |
+ } |
+ if (description != null) { |
+ _json["description"] = description; |
+ } |
+ if (displayName != null) { |
+ _json["displayName"] = displayName; |
+ } |
+ if (listConstraint != null) { |
+ _json["listConstraint"] = (listConstraint).toJson(); |
+ } |
+ if (name != null) { |
+ _json["name"] = name; |
+ } |
+ if (version != null) { |
+ _json["version"] = version; |
+ } |
+ return _json; |
+ } |
+} |
+ |
+/** |
* A generic empty message that you can re-use to avoid defining duplicated |
* empty messages in your APIs. A typical example is to use it as the request |
* or the response type of an API method. For instance: |
@@ -1231,8 +3047,8 @@ class FolderOperationError { |
* deleted. |
* - "CYCLE_INTRODUCED_ERROR" : The attempted action would introduce cycle in |
* resource path. |
- * - "FOLDER_ALREADY_BEING_MOVED" : The attempted action would move a folder |
- * that is already being moved. |
+ * - "FOLDER_BEING_MOVED" : The attempted action would move a folder that is |
+ * already being moved. |
* - "FOLDER_TO_DELETE_NON_EMPTY" : The folder the caller is trying to delete |
* contains active resources. |
*/ |
@@ -1292,23 +3108,67 @@ class GetAncestryResponse { |
core.Map toJson() { |
var _json = new core.Map(); |
- if (ancestor != null) { |
- _json["ancestor"] = ancestor.map((value) => (value).toJson()).toList(); |
- } |
+ if (ancestor != null) { |
+ _json["ancestor"] = ancestor.map((value) => (value).toJson()).toList(); |
+ } |
+ return _json; |
+ } |
+} |
+ |
+/** The request sent to the GetEffectiveOrgPolicy method. */ |
+class GetEffectiveOrgPolicyRequest { |
+ /** The name of the `Constraint` to compute the effective `Policy`. */ |
+ core.String constraint; |
+ |
+ GetEffectiveOrgPolicyRequest(); |
+ |
+ GetEffectiveOrgPolicyRequest.fromJson(core.Map _json) { |
+ if (_json.containsKey("constraint")) { |
+ constraint = _json["constraint"]; |
+ } |
+ } |
+ |
+ core.Map toJson() { |
+ var _json = new core.Map(); |
+ if (constraint != null) { |
+ _json["constraint"] = constraint; |
+ } |
+ return _json; |
+ } |
+} |
+ |
+/** Request message for `GetIamPolicy` method. */ |
+class GetIamPolicyRequest { |
+ |
+ GetIamPolicyRequest(); |
+ |
+ GetIamPolicyRequest.fromJson(core.Map _json) { |
+ } |
+ |
+ core.Map toJson() { |
+ var _json = new core.Map(); |
return _json; |
} |
} |
-/** Request message for `GetIamPolicy` method. */ |
-class GetIamPolicyRequest { |
+/** The request sent to the GetOrgPolicy method. */ |
+class GetOrgPolicyRequest { |
+ /** Name of the `Constraint` to get the `Policy`. */ |
+ core.String constraint; |
- GetIamPolicyRequest(); |
+ GetOrgPolicyRequest(); |
- GetIamPolicyRequest.fromJson(core.Map _json) { |
+ GetOrgPolicyRequest.fromJson(core.Map _json) { |
+ if (_json.containsKey("constraint")) { |
+ constraint = _json["constraint"]; |
+ } |
} |
core.Map toJson() { |
var _json = new core.Map(); |
+ if (constraint != null) { |
+ _json["constraint"] = constraint; |
+ } |
return _json; |
} |
} |
@@ -1406,6 +3266,111 @@ class Lien { |
} |
} |
+/** |
+ * The request sent to the [ListAvailableOrgPolicyConstraints] |
+ * google.cloud.OrgPolicy.v1.ListAvailableOrgPolicyConstraints] method. |
+ */ |
+class ListAvailableOrgPolicyConstraintsRequest { |
+ /** |
+ * Size of the pages to be returned. This is currently unsupported and will |
+ * be ignored. The server may at any point start using this field to limit |
+ * page size. |
+ */ |
+ core.int pageSize; |
+ /** |
+ * Page token used to retrieve the next page. This is currently unsupported |
+ * and will be ignored. The server may at any point start using this field. |
+ */ |
+ core.String pageToken; |
+ |
+ ListAvailableOrgPolicyConstraintsRequest(); |
+ |
+ ListAvailableOrgPolicyConstraintsRequest.fromJson(core.Map _json) { |
+ if (_json.containsKey("pageSize")) { |
+ pageSize = _json["pageSize"]; |
+ } |
+ if (_json.containsKey("pageToken")) { |
+ pageToken = _json["pageToken"]; |
+ } |
+ } |
+ |
+ core.Map toJson() { |
+ var _json = new core.Map(); |
+ if (pageSize != null) { |
+ _json["pageSize"] = pageSize; |
+ } |
+ if (pageToken != null) { |
+ _json["pageToken"] = pageToken; |
+ } |
+ return _json; |
+ } |
+} |
+ |
+/** |
+ * The response returned from the ListAvailableOrgPolicyConstraints method. |
+ * Returns all `Constraints` that could be set at this level of the hierarchy |
+ * (contrast with the response from `ListPolicies`, which returns all policies |
+ * which are set). |
+ */ |
+class ListAvailableOrgPolicyConstraintsResponse { |
+ /** |
+ * The collection of constraints that are settable on the request resource. |
+ */ |
+ core.List<Constraint> constraints; |
+ /** Page token used to retrieve the next page. This is currently not used. */ |
+ core.String nextPageToken; |
+ |
+ ListAvailableOrgPolicyConstraintsResponse(); |
+ |
+ ListAvailableOrgPolicyConstraintsResponse.fromJson(core.Map _json) { |
+ if (_json.containsKey("constraints")) { |
+ constraints = _json["constraints"].map((value) => new Constraint.fromJson(value)).toList(); |
+ } |
+ if (_json.containsKey("nextPageToken")) { |
+ nextPageToken = _json["nextPageToken"]; |
+ } |
+ } |
+ |
+ core.Map toJson() { |
+ var _json = new core.Map(); |
+ if (constraints != null) { |
+ _json["constraints"] = constraints.map((value) => (value).toJson()).toList(); |
+ } |
+ if (nextPageToken != null) { |
+ _json["nextPageToken"] = nextPageToken; |
+ } |
+ return _json; |
+ } |
+} |
+ |
+/** |
+ * A `Constraint` that allows or disallows a list of string values, which are |
+ * configured by an Organization's policy administrator with a `Policy`. |
+ */ |
+class ListConstraint { |
+ /** |
+ * Optional. The Google Cloud Console will try to default to a configuration |
+ * that matches the value specified in this `Constraint`. |
+ */ |
+ core.String suggestedValue; |
+ |
+ ListConstraint(); |
+ |
+ ListConstraint.fromJson(core.Map _json) { |
+ if (_json.containsKey("suggestedValue")) { |
+ suggestedValue = _json["suggestedValue"]; |
+ } |
+ } |
+ |
+ core.Map toJson() { |
+ var _json = new core.Map(); |
+ if (suggestedValue != null) { |
+ _json["suggestedValue"] = suggestedValue; |
+ } |
+ return _json; |
+ } |
+} |
+ |
/** The response message for Liens.ListLiens. */ |
class ListLiensResponse { |
/** A list of Liens. */ |
@@ -1439,6 +3404,250 @@ class ListLiensResponse { |
} |
} |
+/** The request sent to the ListOrgPolicies method. */ |
+class ListOrgPoliciesRequest { |
+ /** |
+ * Size of the pages to be returned. This is currently unsupported and will |
+ * be ignored. The server may at any point start using this field to limit |
+ * page size. |
+ */ |
+ core.int pageSize; |
+ /** |
+ * Page token used to retrieve the next page. This is currently unsupported |
+ * and will be ignored. The server may at any point start using this field. |
+ */ |
+ core.String pageToken; |
+ |
+ ListOrgPoliciesRequest(); |
+ |
+ ListOrgPoliciesRequest.fromJson(core.Map _json) { |
+ if (_json.containsKey("pageSize")) { |
+ pageSize = _json["pageSize"]; |
+ } |
+ if (_json.containsKey("pageToken")) { |
+ pageToken = _json["pageToken"]; |
+ } |
+ } |
+ |
+ core.Map toJson() { |
+ var _json = new core.Map(); |
+ if (pageSize != null) { |
+ _json["pageSize"] = pageSize; |
+ } |
+ if (pageToken != null) { |
+ _json["pageToken"] = pageToken; |
+ } |
+ return _json; |
+ } |
+} |
+ |
+/** |
+ * The response returned from the ListOrgPolicies method. It will be empty |
+ * if no `Policies` are set on the resource. |
+ */ |
+class ListOrgPoliciesResponse { |
+ /** |
+ * Page token used to retrieve the next page. This is currently not used, but |
+ * the server may at any point start supplying a valid token. |
+ */ |
+ core.String nextPageToken; |
+ /** |
+ * The `Policies` that are set on the resource. It will be empty if no |
+ * `Policies` are set. |
+ */ |
+ core.List<OrgPolicy> policies; |
+ |
+ ListOrgPoliciesResponse(); |
+ |
+ ListOrgPoliciesResponse.fromJson(core.Map _json) { |
+ if (_json.containsKey("nextPageToken")) { |
+ nextPageToken = _json["nextPageToken"]; |
+ } |
+ if (_json.containsKey("policies")) { |
+ policies = _json["policies"].map((value) => new OrgPolicy.fromJson(value)).toList(); |
+ } |
+ } |
+ |
+ core.Map toJson() { |
+ var _json = new core.Map(); |
+ if (nextPageToken != null) { |
+ _json["nextPageToken"] = nextPageToken; |
+ } |
+ if (policies != null) { |
+ _json["policies"] = policies.map((value) => (value).toJson()).toList(); |
+ } |
+ return _json; |
+ } |
+} |
+ |
+/** |
+ * Used in `policy_type` to specify how `list_policy` behaves at this |
+ * resource. |
+ * |
+ * A `ListPolicy` can define specific values that are allowed or denied by |
+ * setting either the `allowed_values` or `denied_values` fields. It can also |
+ * be used to allow or deny all values, by setting the `all_values` field. If |
+ * `all_values` is `ALL_VALUES_UNSPECIFIED`, exactly one of `allowed_values` |
+ * or `denied_values` must be set (attempting to set both or neither will |
+ * result in a failed request). If `all_values` is set to either `ALLOW` or |
+ * `DENY`, `allowed_values` and `denied_values` must be unset. |
+ */ |
+class ListPolicy { |
+ /** |
+ * The policy all_values state. |
+ * Possible string values are: |
+ * - "ALL_VALUES_UNSPECIFIED" : Indicates that either allowed_values or |
+ * denied_values must be set. |
+ * - "ALLOW" : A policy with this set allows all values. |
+ * - "DENY" : A policy with this set denies all values. |
+ */ |
+ core.String allValues; |
+ /** |
+ * List of values allowed at this resource. an only be set if no values are |
+ * set for `denied_values` and `all_values` is set to |
+ * `ALL_VALUES_UNSPECIFIED`. |
+ */ |
+ core.List<core.String> allowedValues; |
+ /** |
+ * List of values denied at this resource. Can only be set if no values are |
+ * set for `allowed_values` and `all_values` is set to |
+ * `ALL_VALUES_UNSPECIFIED`. |
+ */ |
+ core.List<core.String> deniedValues; |
+ /** |
+ * Determines the inheritance behavior for this `Policy`. |
+ * |
+ * By default, a `ListPolicy` set at a resource supercedes 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: |
+ * |
+ * 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`. |
+ */ |
+ core.bool 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`. |
+ */ |
+ core.String suggestedValue; |
+ |
+ ListPolicy(); |
+ |
+ ListPolicy.fromJson(core.Map _json) { |
+ if (_json.containsKey("allValues")) { |
+ allValues = _json["allValues"]; |
+ } |
+ if (_json.containsKey("allowedValues")) { |
+ allowedValues = _json["allowedValues"]; |
+ } |
+ if (_json.containsKey("deniedValues")) { |
+ deniedValues = _json["deniedValues"]; |
+ } |
+ if (_json.containsKey("inheritFromParent")) { |
+ inheritFromParent = _json["inheritFromParent"]; |
+ } |
+ if (_json.containsKey("suggestedValue")) { |
+ suggestedValue = _json["suggestedValue"]; |
+ } |
+ } |
+ |
+ core.Map toJson() { |
+ var _json = new core.Map(); |
+ if (allValues != null) { |
+ _json["allValues"] = allValues; |
+ } |
+ if (allowedValues != null) { |
+ _json["allowedValues"] = allowedValues; |
+ } |
+ if (deniedValues != null) { |
+ _json["deniedValues"] = deniedValues; |
+ } |
+ if (inheritFromParent != null) { |
+ _json["inheritFromParent"] = inheritFromParent; |
+ } |
+ if (suggestedValue != null) { |
+ _json["suggestedValue"] = suggestedValue; |
+ } |
+ return _json; |
+ } |
+} |
+ |
/** |
* A page of the response received from the |
* ListProjects |
@@ -1578,6 +3787,115 @@ class Operation { |
} |
/** |
+ * Defines a Cloud Organization `Policy` which is used to specify `Constraints` |
+ * for configurations of Cloud Platform resources. |
+ */ |
+class OrgPolicy { |
+ /** For boolean `Constraints`, whether to enforce the `Constraint` or not. */ |
+ BooleanPolicy booleanPolicy; |
+ /** |
+ * The name of the `Constraint` the `Policy` is configuring, for example, |
+ * `constraints/serviceuser.services`. |
+ * |
+ * Immutable after creation. |
+ */ |
+ core.String 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`. |
+ */ |
+ core.String etag; |
+ core.List<core.int> get etagAsBytes { |
+ return convert.BASE64.decode(etag); |
+ } |
+ |
+ void set etagAsBytes(core.List<core.int> _bytes) { |
+ etag = convert.BASE64.encode(_bytes).replaceAll("/", "_").replaceAll("+", "-"); |
+ } |
+ /** List of values either allowed or disallowed. */ |
+ ListPolicy listPolicy; |
+ /** |
+ * Restores the default behavior of the constraint; independent of |
+ * `Constraint` type. |
+ */ |
+ RestoreDefault 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. |
+ */ |
+ core.String updateTime; |
+ /** Version of the `Policy`. Default version is 0; */ |
+ core.int version; |
+ |
+ OrgPolicy(); |
+ |
+ OrgPolicy.fromJson(core.Map _json) { |
+ if (_json.containsKey("booleanPolicy")) { |
+ booleanPolicy = new BooleanPolicy.fromJson(_json["booleanPolicy"]); |
+ } |
+ if (_json.containsKey("constraint")) { |
+ constraint = _json["constraint"]; |
+ } |
+ if (_json.containsKey("etag")) { |
+ etag = _json["etag"]; |
+ } |
+ if (_json.containsKey("listPolicy")) { |
+ listPolicy = new ListPolicy.fromJson(_json["listPolicy"]); |
+ } |
+ if (_json.containsKey("restoreDefault")) { |
+ restoreDefault = new RestoreDefault.fromJson(_json["restoreDefault"]); |
+ } |
+ if (_json.containsKey("updateTime")) { |
+ updateTime = _json["updateTime"]; |
+ } |
+ if (_json.containsKey("version")) { |
+ version = _json["version"]; |
+ } |
+ } |
+ |
+ core.Map toJson() { |
+ var _json = new core.Map(); |
+ if (booleanPolicy != null) { |
+ _json["booleanPolicy"] = (booleanPolicy).toJson(); |
+ } |
+ if (constraint != null) { |
+ _json["constraint"] = constraint; |
+ } |
+ if (etag != null) { |
+ _json["etag"] = etag; |
+ } |
+ if (listPolicy != null) { |
+ _json["listPolicy"] = (listPolicy).toJson(); |
+ } |
+ if (restoreDefault != null) { |
+ _json["restoreDefault"] = (restoreDefault).toJson(); |
+ } |
+ if (updateTime != null) { |
+ _json["updateTime"] = updateTime; |
+ } |
+ if (version != null) { |
+ _json["version"] = version; |
+ } |
+ return _json; |
+ } |
+} |
+ |
+/** |
* The root node in the resource hierarchy to which a particular entity's |
* (e.g., company) resources belong. |
*/ |
@@ -1720,6 +4038,8 @@ class OrganizationOwner { |
* [IAM developer's guide](https://cloud.google.com/iam). |
*/ |
class Policy { |
+ /** Specifies cloud audit logging configuration for this policy. */ |
+ core.List<AuditConfig> auditConfigs; |
/** |
* Associates a list of `members` to a `role`. |
* Multiple `bindings` must not be specified for the same `role`. |
@@ -1752,6 +4072,9 @@ class Policy { |
Policy(); |
Policy.fromJson(core.Map _json) { |
+ if (_json.containsKey("auditConfigs")) { |
+ auditConfigs = _json["auditConfigs"].map((value) => new AuditConfig.fromJson(value)).toList(); |
+ } |
if (_json.containsKey("bindings")) { |
bindings = _json["bindings"].map((value) => new Binding.fromJson(value)).toList(); |
} |
@@ -1765,6 +4088,9 @@ class Policy { |
core.Map toJson() { |
var _json = new core.Map(); |
+ if (auditConfigs != null) { |
+ _json["auditConfigs"] = auditConfigs.map((value) => (value).toJson()).toList(); |
+ } |
if (bindings != null) { |
_json["bindings"] = bindings.map((value) => (value).toJson()).toList(); |
} |
@@ -2005,6 +4331,33 @@ class ResourceId { |
} |
} |
+/** |
+ * Ignores policies set above this resource and restores the |
+ * `constraint_default` enforcement behavior of the specific `Constraint` at |
+ * this resource. |
+ * |
+ * Suppose that `constraint_default` is set to `ALLOW` for the |
+ * `Constraint` `constraints/serviceuser.services`. Suppose that organization |
+ * foo.com sets a `Policy` at their Organization resource node that restricts |
+ * the allowed service activations to deny all service activations. They |
+ * could then set a `Policy` with the `policy_type` `restore_default` on |
+ * several experimental projects, restoring the `constraint_default` |
+ * enforcement of the `Constraint` for only those projects, allowing those |
+ * projects to have all services activated. |
+ */ |
+class RestoreDefault { |
+ |
+ RestoreDefault(); |
+ |
+ RestoreDefault.fromJson(core.Map _json) { |
+ } |
+ |
+ core.Map toJson() { |
+ var _json = new core.Map(); |
+ return _json; |
+ } |
+} |
+ |
/** The request sent to the `SearchOrganizations` method. */ |
class SearchOrganizationsRequest { |
/** |
@@ -2113,6 +4466,14 @@ class SetIamPolicyRequest { |
* might reject them. |
*/ |
Policy policy; |
+ /** |
+ * OPTIONAL: A FieldMask specifying which fields of the policy to modify. Only |
+ * the fields in the mask will be modified. If no mask is provided, the |
+ * following default mask is used: |
+ * paths: "bindings, etag" |
+ * This field is only used by Cloud IAM. |
+ */ |
+ core.String updateMask; |
SetIamPolicyRequest(); |
@@ -2120,6 +4481,34 @@ class SetIamPolicyRequest { |
if (_json.containsKey("policy")) { |
policy = new Policy.fromJson(_json["policy"]); |
} |
+ if (_json.containsKey("updateMask")) { |
+ updateMask = _json["updateMask"]; |
+ } |
+ } |
+ |
+ core.Map toJson() { |
+ var _json = new core.Map(); |
+ if (policy != null) { |
+ _json["policy"] = (policy).toJson(); |
+ } |
+ if (updateMask != null) { |
+ _json["updateMask"] = updateMask; |
+ } |
+ return _json; |
+ } |
+} |
+ |
+/** The request sent to the SetOrgPolicyRequest method. */ |
+class SetOrgPolicyRequest { |
+ /** `Policy` to set on the resource. */ |
+ OrgPolicy policy; |
+ |
+ SetOrgPolicyRequest(); |
+ |
+ SetOrgPolicyRequest.fromJson(core.Map _json) { |
+ if (_json.containsKey("policy")) { |
+ policy = new OrgPolicy.fromJson(_json["policy"]); |
+ } |
} |
core.Map toJson() { |