Package io.grpc.protobuf.services
Class HealthServiceImpl
java.lang.Object
io.grpc.health.v1.HealthGrpc.HealthImplBase
io.grpc.protobuf.services.HealthServiceImpl
- All Implemented Interfaces:
BindableService
,HealthGrpc.AsyncService
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate static final Logger
private final Map
<String, HealthCheckResponse.ServingStatus> private boolean
private final HashMap
<String, IdentityHashMap<StreamObserver<HealthCheckResponse>, Boolean>> private final Object
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoid
check
(HealthCheckRequest request, StreamObserver<HealthCheckResponse> responseObserver) If the requested service is unknown, the call will fail with status NOT_FOUND.(package private) void
clearStatus
(String service) (package private) void
private static HealthCheckResponse
getResponseForWatch
(HealthCheckResponse.ServingStatus recordedStatus) private void
notifyWatchers
(String service, HealthCheckResponse.ServingStatus status) (package private) int
numWatchersForTest
(String service) (package private) void
setStatus
(String service, HealthCheckResponse.ServingStatus status) private void
setStatusInternal
(String service, HealthCheckResponse.ServingStatus status) void
watch
(HealthCheckRequest request, StreamObserver<HealthCheckResponse> responseObserver) Performs a watch for the serving status of the requested service.Methods inherited from class io.grpc.health.v1.HealthGrpc.HealthImplBase
bindService
-
Field Details
-
logger
-
statusMap
-
watchLock
-
terminal
private boolean terminal -
watchers
-
-
Constructor Details
-
HealthServiceImpl
HealthServiceImpl()
-
-
Method Details
-
check
Description copied from interface:HealthGrpc.AsyncService
If the requested service is unknown, the call will fail with status NOT_FOUND.
-
watch
Description copied from interface:HealthGrpc.AsyncService
Performs a watch for the serving status of the requested service. The server will immediately send back a message indicating the current serving status. It will then subsequently send a new message whenever the service's serving status changes. If the requested service is unknown when the call is received, the server will send a message setting the serving status to SERVICE_UNKNOWN but will *not* terminate the call. If at some future point, the serving status of the service becomes known, the server will send a new message with the service's serving status. If the call terminates with status UNIMPLEMENTED, then clients should assume this method is not supported and should not retry the call. If the call terminates with any other status (including OK), clients should retry the call with appropriate exponential backoff.
-
setStatus
-
setStatusInternal
-
clearStatus
-
enterTerminalState
void enterTerminalState() -
numWatchersForTest
-
notifyWatchers
-
getResponseForWatch
private static HealthCheckResponse getResponseForWatch(@Nullable HealthCheckResponse.ServingStatus recordedStatus)
-