Package com.authzed.api.materialize.v0
Class WatchPermissionsServiceGrpc.WatchPermissionsServiceStub
java.lang.Object
io.grpc.stub.AbstractStub<S>
io.grpc.stub.AbstractAsyncStub<WatchPermissionsServiceGrpc.WatchPermissionsServiceStub>
com.authzed.api.materialize.v0.WatchPermissionsServiceGrpc.WatchPermissionsServiceStub
- Enclosing class:
- WatchPermissionsServiceGrpc
public static final class WatchPermissionsServiceGrpc.WatchPermissionsServiceStub
extends io.grpc.stub.AbstractAsyncStub<WatchPermissionsServiceGrpc.WatchPermissionsServiceStub>
A stub to allow clients to do asynchronous rpc calls to service WatchPermissionsService.
-
Nested Class Summary
Nested classes/interfaces inherited from class io.grpc.stub.AbstractStub
io.grpc.stub.AbstractStub.StubFactory<T extends io.grpc.stub.AbstractStub<T>>
-
Method Summary
Modifier and TypeMethodDescriptionbuild
(io.grpc.Channel channel, io.grpc.CallOptions callOptions) void
watchPermissions
(WatchPermissionsRequest request, io.grpc.stub.StreamObserver<WatchPermissionsResponse> responseObserver) WatchPermissions returns a stream of PermissionChange events for the given permissions.Methods inherited from class io.grpc.stub.AbstractAsyncStub
newStub, newStub
Methods inherited from class io.grpc.stub.AbstractStub
getCallOptions, getChannel, withCallCredentials, withChannel, withCompression, withDeadline, withDeadlineAfter, withExecutor, withInterceptors, withMaxInboundMessageSize, withMaxOutboundMessageSize, withOnReadyThreshold, withOption, withWaitForReady
-
Method Details
-
build
protected WatchPermissionsServiceGrpc.WatchPermissionsServiceStub build(io.grpc.Channel channel, io.grpc.CallOptions callOptions) - Specified by:
build
in classio.grpc.stub.AbstractStub<WatchPermissionsServiceGrpc.WatchPermissionsServiceStub>
-
watchPermissions
public void watchPermissions(WatchPermissionsRequest request, io.grpc.stub.StreamObserver<WatchPermissionsResponse> responseObserver) WatchPermissions returns a stream of PermissionChange events for the given permissions. WatchPermissions is a long-running RPC, and will stream events until the client closes the connection or the server terminates the stream. The consumer is responsible of keeping track of the last seen revision and resuming the stream from that point in the event of disconnection or client-side restarts. The API does not offer a sharding mechanism and thus there should only be one consumer per target system. Implementing an active-active HA consumer setup over the same target system will require coordinating which revisions have been consumed in order to prevent transitioning to an inconsistent state. Usage of WatchPermissions requires to be explicitly enabled on the service, including the permissions to be watched. It requires more resources and is less performant than WatchPermissionsSets. It's usage is only recommended when performing the set intersections of WatchPermissionSets in the client side is not viable or there is a strict application requirement to use consume the computed permissions.
-