google-ads-api-client
Version:
A friendly and exhaustive client to the google-ads-api, code generated directly from google's published protobuf schema.
71 lines • 3.62 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.ServiceControllerClient = void 0;
const service_controller_1 = require("./service_controller");
const runtime_rpc_1 = require("@protobuf-ts/runtime-rpc");
/**
* [Google Service Control API](/service-control/overview)
*
* Lets clients check and report operations against a [managed
* service](https://cloud.google.com/service-management/reference/rpc/google.api/servicemanagement.v1#google.api.servicemanagement.v1.ManagedService).
*
* @generated from protobuf service google.api.servicecontrol.v1.ServiceController
*/
class ServiceControllerClient {
constructor(_transport) {
this._transport = _transport;
this.typeName = service_controller_1.ServiceController.typeName;
this.methods = service_controller_1.ServiceController.methods;
this.options = service_controller_1.ServiceController.options;
}
/**
* Checks whether an operation on a service should be allowed to proceed
* based on the configuration of the service and related policies. It must be
* called before the operation is executed.
*
* If feasible, the client should cache the check results and reuse them for
* 60 seconds. In case of any server errors, the client should rely on the
* cached results for much longer time to avoid outage.
* WARNING: There is general 60s delay for the configuration and policy
* propagation, therefore callers MUST NOT depend on the `Check` method having
* the latest policy information.
*
* NOTE: the [CheckRequest][google.api.servicecontrol.v1.CheckRequest] has
* the size limit (wire-format byte size) of 1MB.
*
* This method requires the `servicemanagement.services.check` permission
* on the specified service. For more information, see
* [Cloud IAM](https://cloud.google.com/iam).
*
* @generated from protobuf rpc: Check(google.api.servicecontrol.v1.CheckRequest) returns (google.api.servicecontrol.v1.CheckResponse);
*/
check(input, options) {
const method = this.methods[0], opt = this._transport.mergeOptions(options);
return (0, runtime_rpc_1.stackIntercept)("unary", this._transport, method, opt, input);
}
/**
* Reports operation results to Google Service Control, such as logs and
* metrics. It should be called after an operation is completed.
*
* If feasible, the client should aggregate reporting data for up to 5
* seconds to reduce API traffic. Limiting aggregation to 5 seconds is to
* reduce data loss during client crashes. Clients should carefully choose
* the aggregation time window to avoid data loss risk more than 0.01%
* for business and compliance reasons.
*
* NOTE: the [ReportRequest][google.api.servicecontrol.v1.ReportRequest] has
* the size limit (wire-format byte size) of 1MB.
*
* This method requires the `servicemanagement.services.report` permission
* on the specified service. For more information, see
* [Google Cloud IAM](https://cloud.google.com/iam).
*
* @generated from protobuf rpc: Report(google.api.servicecontrol.v1.ReportRequest) returns (google.api.servicecontrol.v1.ReportResponse);
*/
report(input, options) {
const method = this.methods[1], opt = this._transport.mergeOptions(options);
return (0, runtime_rpc_1.stackIntercept)("unary", this._transport, method, opt, input);
}
}
exports.ServiceControllerClient = ServiceControllerClient;
//# sourceMappingURL=service_controller.client.js.map