Class: Geoblacklight::Configuration::SettingsBuilder

Inherits:
Object
  • Object
show all
Defined in:
lib/geoblacklight/configuration/settings_builder.rb

Overview

Builds a configuration from legacy (uppercase) settings

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(settings: Settings) ⇒ SettingsBuilder

Returns a new instance of SettingsBuilder.



9
10
11
12
# File 'lib/geoblacklight/configuration/settings_builder.rb', line 9

def initialize(settings: Settings)
  @configuration = Configuration.new
  @settings = CaseInsensitiveSettings.new(settings, deprecation: Geoblacklight::Deprecation)
end

Class Method Details

.buildObject



5
6
7
# File 'lib/geoblacklight/configuration/settings_builder.rb', line 5

def self.build
  new.build
end

Instance Method Details

#buildObject



14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
# File 'lib/geoblacklight/configuration/settings_builder.rb', line 14

def build
  @configuration.tap do |config|
    assign(config, :arcgis_base_url, settings.ARCGIS_BASE_URL)
    assign(config, :bbox_within_boost, settings.BBOX_WITHIN_BOOST)
    assign(config, :overlap_ratio_boost, settings.OVERLAP_RATIO_BOOST)
    assign(config, :display_notes_shown, build_display_notes)
    assign(config, :institution, settings.INSTITUTION)
    assign(config, :help_text, settings.HELP_TEXT&.to_h)
    assign(config, :sidebar_static_map, settings.SIDEBAR_STATIC_MAP)
    assign(config, :iiif_drag_drop_link, settings.IIIF_DRAG_DROP_LINK)
    assign(config, :homepage_map_geom, settings.HOMEPAGE_MAP_GEOM)
    assign(config, :vector_download_formats, settings.DOWNLOAD_FORMATS&.VECTOR)
    assign(config, :metadata_shown, settings.METADATA_SHOWN)
    assign(config, :webservices_shown, settings.WEBSERVICES_SHOWN)
    assign(config, :relationships_shown, build_relationships)
    assign(config, :timeout_download, settings.TIMEOUT_DOWNLOAD)
    assign(config, :download_path, settings.DOWNLOAD_PATH)
    assign(config, :gbl_params, settings.GBL_PARAMS)
    assign(config, :wms_params, settings.WMS_PARAMS&.to_h)
    assign(config, :timeout_wms, settings.TIMEOUT_WMS)

    build_fields(config)
    build_leaflet_options(config)
  end
end