code: public static <S> S loadOptionalService(Class<S> serviceInterface)
    {
      S service = null;
      ClassLoader classLoader = Thread.currentThread().getContextClassLoader();
      if(classLoader != null) {
        service = loadService(serviceInterface, classLoader);
      }
      if(service == null) {
        service = loadService(serviceInterface, Classes.class.getClassLoader());
      }
      return service;
    }
docs: Load service of requested interface returning null if service provider not found. Caller should test returned value
  and take appropriate actions.
  
  @param serviceInterface service interface.
  @param <S> service type.
  @return service instance or null.