docs: protected final StyleSupplier<FeatureSource> createStyleFunction(
              final Template template,
              final String styleString) {
          return new StyleSupplier<FeatureSource>() {
              @Override
              public Style load(
                      final MfClientHttpRequestFactory requestFactory,
                      final FeatureSource featureSource) {
                  if (featureSource == null) {
                      throw new IllegalArgumentException("Feature source cannot be null");
                  }
  
                  final String geomType = featureSource.getSchema() == null ?
                          Geometry.class.getSimpleName().toLowerCase() :
                          featureSource.getSchema().getGeometryDescriptor().getType().getBinding()
                              .getSimpleName();
                  final String styleRef = styleString != null ? styleString : geomType;
  
                  final StyleParser styleParser = AbstractFeatureSourceLayerPlugin.this.parser;
                  return OptionalUtils.or(
                          () -> template.getStyle(styleRef),
                          () -> styleParser.loadStyle(template.getConfiguration(), requestFactory, styleRef))
                          .orElseGet(() -> template.getConfiguration().getDefaultStyle(geomType));
              }
          };
      }