code: public void registerInterceptors(ServerBuilder<?> builder) {
          try {
              if (serverConfig.isAuthorizationEnabled()) {
                  ServiceLoader<AuthHandler> loader = ServiceLoader.load(AuthHandler.class);
                  for (AuthHandler handler : loader) {
                      try {
                          handler.initialize(serverConfig);
                          synchronized (this) {
                              if (handlerMap.putIfAbsent(handler.getHandlerName(), handler) != null) {
                                  log.warn("Handler with name {} already exists. Not replacing it with the latest handler");
                                  continue;
                              }
                          }
                          builder.intercept(new PravegaInterceptor(handler));
                      } catch (Exception e) {
                          log.warn("Exception while initializing auth handler {}", handler, e);
                      }
                  }
              }
          } catch (Throwable e) {
              log.warn("Exception while loading the auth handlers", e);
          }
      }
docs: Loads the custom implementations of the AuthHandler interface dynamically. Registers the interceptors with grpc.
  Stores the implementation in a local map for routing the REST auth request.
  @param builder The grpc service builder to register the interceptors.