Module: SgtnClient::TranslationLoader::SingleLoader

Defined in:
lib/sgtn-client/loader/single_loader.rb

Instance Method Summary collapse

Instance Method Details

#available_bundlesObject



23
24
25
26
27
28
29
30
# File 'lib/sgtn-client/loader/single_loader.rb', line 23

def available_bundles
  SgtnClient.logger.debug "[#{__FILE__}][#{__callee__}]"

  @single_available_bundles_loader ||= single_loader { super }
  @single_available_bundles_loader.operate(CONSTS::AVAILABLE_BUNDLES_KEY)&.value
ensure
  @single_available_bundles_loader.remove_object(CONSTS::AVAILABLE_BUNDLES_KEY)
end

#load_bundle(component, locale) ⇒ Object



12
13
14
15
16
17
18
19
20
21
# File 'lib/sgtn-client/loader/single_loader.rb', line 12

def load_bundle(component, locale)
  SgtnClient.logger.debug "[#{__FILE__}][#{__callee__}] component=#{component}, locale=#{locale}"

  @single_bundle_loader ||= single_loader { |c,l| super(c,l) }
  id = CacheUtil.get_cachekey(component, locale)
  @single_bundle_loader.operate(id, component, locale)&.value
ensure
  # delete thread from hash after finish
  @single_bundle_loader.remove_object(id)
end