HAVWPOXJXKLKF6P4ATMK52LEVARG4UURFFGCFN5EA4ZMF4JZGARAC
let reflection_service_svc = InterceptedService::new(reflection_service, check_auth);
let reflection_service_auth = Arc::clone(&authenticator);
let reflection_service_svc = InterceptedService::new(reflection_service, move |r| check_auth(r, reflection_service_auth.clone()));
fn check_auth(req: Request<()>) -> Result<Request<()>, Status> {
let token: MetadataValue<_> = "Bearer test-token".parse().unwrap();
fn check_auth(req: Request<()>, authenticator: Arc<Mutex<Authenticator>>) -> Result<Request<()>, Status> {
let token: MetadataValue<_> = authenticator.lock().unwrap().get_token().parse().unwrap();