code: private ExtensionLoader locateExtensionLoader() {
          Collection<ExtensionLoader> loaders = Collections.emptyList();
          if (SecurityActions.getThreadContextClassLoader() != null) {
              loaders = serviceLoader.all(SecurityActions.getThreadContextClassLoader(), ExtensionLoader.class);
          }
          if (loaders.size() == 0) {
              loaders = serviceLoader.all(LoadableExtensionLoader.class.getClassLoader(), ExtensionLoader.class);
          }
          if (loaders.size() > 1) {
              throw new RuntimeException("Multiple ExtensionLoader's found on classpath: " + toString(loaders));
          }
          if (loaders.size() == 1) {
              return loaders.iterator().next();
          }
          return serviceLoader;
      }
docs: Some environments need to handle their own ExtensionLoading and can't rely on Java's META-INF/services approach.
  
  @return configured ExtensionLoader if found or defaults to JavaSPIServiceLoader