Class: WebIde::Settings::SettingsInitializer
- Inherits:
-
Object
- Object
- WebIde::Settings::SettingsInitializer
- Defined in:
- lib/web_ide/settings/settings_initializer.rb
Constant Summary collapse
- SETTINGS_DEPENDENCIES =
{ vscode_extension_marketplace_view_model: [ :vscode_extension_marketplace_metadata, :vscode_extension_marketplace ], vscode_extension_marketplace_metadata: [ :vscode_extension_marketplace_home_url ], vscode_extension_marketplace_home_url: [ :vscode_extension_marketplace ] }.freeze
Class Method Summary collapse
Class Method Details
.init(context) ⇒ Hash
22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 |
# File 'lib/web_ide/settings/settings_initializer.rb', line 22 def self.init(context) context => { requested_setting_names: Array => requested_setting_names } # NOTE: We override the requested_setting_names to include *all* nested setting dependencies. requested_setting_names = Gitlab::Fp::Settings::SettingsDependencyResolver.resolve( requested_setting_names, SETTINGS_DEPENDENCIES ) context[:requested_setting_names] = requested_setting_names context[:settings], context[:setting_types] = Gitlab::Fp::Settings::DefaultSettingsParser.parse( module_name: "Web IDE", requested_setting_names: requested_setting_names, default_settings: DefaultSettings.default_settings ) # NOTE: This is context which is required by shared Gitlab::Fp::Settings::EnvVarOverrideProcessor class context[:env_var_prefix] = "GITLAB_WEB_IDE" context[:env_var_failed_message_class] = WebIde::Settings::Messages::SettingsEnvironmentVariableOverrideFailed context end |