docs: @SuppressWarnings("rawtypes")
      public List<String> discoverAndAddMappers(ClassLoader cl) {
          List<String> added = new ArrayList<String>();
          ServiceLoader<QueryResultMapper> availableProviders = ServiceLoader.load(QueryResultMapper.class, cl);
          for (QueryResultMapper<?> mapper : availableProviders) {
              QueryResultMapper<?> existed = knownMappers.putIfAbsent(mapper.getName(), mapper);
              if (existed == null) {
                  added.add(mapper.getName());
                  logger.debug("Added mapper {} to the registry", mapper.getName());
              } else {
                  logger.debug("Mapper {} already existing in the registry", mapper.getName());
              }
          }
          
          return added;
      }