Class: Giblish::DocIdConfigBuilder

Inherits:
Object
  • Object
show all
Defined in:
lib/giblish/config_builders/docid_config_builder.rb

Overview

AIDEV-NOTE: Builder for DocId configuration following established provider pattern

Class Method Summary collapse

Class Method Details

.build(config_opts) ⇒ DocIdConfig

Builds complete DocId configuration based on user options. Returns a null configuration if DocId resolution is disabled.

Parameters:

Returns:

  • (DocIdConfig)

    Configuration with pre-builders, preprocessors, and post-builders



36
37
38
39
40
41
42
43
44
45
46
47
48
49
# File 'lib/giblish/config_builders/docid_config_builder.rb', line 36

def self.build(config_opts)
  return null_config unless config_opts.resolve_docid

  docid_prebuilder = DocIdExtension::DocidPreBuilder.new
  docid_processor = DocIdExtension::DocidProcessor.new({id_2_node: docid_prebuilder.id_2_node})

  post_builders = build_post_builders(config_opts, docid_processor)

  DocIdConfig.new(
    pre_builders: [docid_prebuilder],
    preprocessors: [docid_processor],
    post_builders: post_builders
  )
end