Class SharedFilterConfigurationMapper.ConfigBuilder

  • Enclosing class:
    SharedFilterConfigurationMapper

    public static class SharedFilterConfigurationMapper.ConfigBuilder
    extends Object
    Builder for creating and configuring SharedFilterConfigurationMapper instances.

    This builder allows for easy configuration of filter configurations before creating the mapper.

    Usage Example:

     SharedFilterConfigurationMapper mapper = new SharedFilterConfigurationMapper.ConfigBuilder()
         .addConfigurations(XMLFilter.class)
         .addConfigurations(PlainTextFilter.class)
         .updateConfiguration("okf_xml@custom", "customParams")
         .buildMapper();
     
    • Constructor Detail

      • ConfigBuilder

        public ConfigBuilder()
    • Method Detail

      • addConfigurations

        public SharedFilterConfigurationMapper.ConfigBuilder addConfigurations​(Class<? extends net.sf.okapi.common.filters.IFilter> filterClass)
        Adds all configurations from a filter class to the builder.
        Parameters:
        filterClass - the filter class to add configurations from
        Returns:
        this builder for method chaining
        Throws:
        IllegalArgumentException - if the filter cannot be instantiated or configurations loaded
      • updateConfigurations

        public SharedFilterConfigurationMapper.ConfigBuilder updateConfigurations​(Function<net.sf.okapi.common.IParameters,​net.sf.okapi.common.IParameters> function)
        Applies a transformation function to all configurations' parameters.
        Parameters:
        function - the function to apply to each configuration's parameters
        Returns:
        this builder for method chaining
      • build

        public Map<String,​net.sf.okapi.common.filters.FilterConfiguration> build()
        Builds the configuration map.
        Returns:
        an immutable map of filter configurations
      • buildMapper

        public SharedFilterConfigurationMapper buildMapper()
        Builds a SharedFilterConfigurationMapper with the configured settings.
        Returns:
        a new SharedFilterConfigurationMapper instance