Class: SgtnClient::TranslationLoader::SgtnServer
- Inherits:
-
Object
- Object
- SgtnClient::TranslationLoader::SgtnServer
- Defined in:
- lib/sgtn-client/loader/server.rb
Constant Summary collapse
- ERROR_ILLEGAL_DATA =
'server returned illegal data.'
- ERROR_BUSINESS_ERROR =
'server returned business error.'
- REQUEST_ARGUMENTS =
{ timeout: 10 }.freeze
Instance Method Summary collapse
- #available_bundles ⇒ Object
-
#initialize(config) ⇒ SgtnServer
constructor
A new instance of SgtnServer.
- #load_bundle(component, locale) ⇒ Object
Constructor Details
#initialize(config) ⇒ SgtnServer
Returns a new instance of SgtnServer.
18 19 20 21 22 23 24 25 26 |
# File 'lib/sgtn-client/loader/server.rb', line 18 def initialize(config) @server_url = config['vip_server'] product_root = format('i18n/api/v2/translation/products/%s/versions/%s', config['product_name'], config['version']) @bundle_url = "#{product_root}/locales/%s/components/%s" @locales_url = "#{product_root}/localelist" @components_url = "#{product_root}/componentlist" end |
Instance Method Details
#available_bundles ⇒ Object
35 36 37 38 39 40 41 42 43 44 |
# File 'lib/sgtn-client/loader/server.rb', line 35 def available_bundles SgtnClient.logger.debug "[#{method(__callee__).owner}.#{__callee__}]" components_thread = Thread.new { available_components } available_locales.reduce(Set.new) do |bundles, locale| components_thread.value.reduce(bundles) do |inner_bundles, component| inner_bundles << Common::BundleID.new(component, locale) end end end |
#load_bundle(component, locale) ⇒ Object
28 29 30 31 32 33 |
# File 'lib/sgtn-client/loader/server.rb', line 28 def load_bundle(component, locale) SgtnClient.logger.debug "[#{method(__callee__).owner}.#{__callee__}] component=#{component}, locale=#{locale}" = query_server(format(@bundle_url, locale, component), ['messages']) end |