private void closeWhenListenerThrows(Throwable t) {
        final StatusAndMetadata statusAndMetadata = exceptionHandler.handle(ctx, t);
        closeWhenEos(statusAndMetadata.status(), statusAndMetadata.metadata());
    }
Encapsulates the state of a single client call, writing messages from the client and reading responses
from the server, passing to business logic via {@link ClientCall.Listener}.
grpc/src/main/java/com/linecorp/armeria/internal/client/grpc/ArmeriaClientCall.java