Line data Source code
1 : // Package i18n は i18n(多言語化)関連のユースケースを提供します。
2 : package i18n
3 :
4 : // Interactor は i18n ユースケースの実行体です。
5 : // Translator, DictionaryRepository, CacheStore を協調させて翻訳やリロードを行います。
6 : type Interactor struct {
7 : tr Translator
8 : repo DicRepo
9 : cache CacheStore
10 : }
11 :
12 : // New は i18nユースケースの実装(Interactor)を生成します。
13 : func New(
14 : tr Translator,
15 : repo DicRepo,
16 : cache CacheStore,
17 0 : ) Usecase {
18 0 : return &Interactor{
19 0 : tr: tr,
20 0 : repo: repo,
21 0 : cache: cache,
22 0 : }
23 0 : }
|