initLanguageModels static method
Future<bool>
initLanguageModels(
- TranslationLanguage sourceLanguage,
- TranslationLanguage targetLanguage
Implementation
static Future<bool> initLanguageModels(
TranslationLanguage sourceLanguage,
TranslationLanguage targetLanguage,
) async {
final shouldInitSource =
_sourceLanguage == null || _sourceLanguage != sourceLanguage;
if (shouldInitSource) {
final isInitialized = await _initSourceLanguage(sourceLanguage);
if (!isInitialized) {
_sourceLanguage == null;
return false;
}
_sourceLanguage = sourceLanguage;
}
final shouldInitTarget =
_targetLanguage == null || _targetLanguage != targetLanguage;
if (shouldInitTarget) {
await deleteLanguage(_targetLanguage);
final isInitialized = await _initTargetLanguage(targetLanguage);
if (!isInitialized) {
_targetLanguage == null;
return false;
}
_targetLanguage = targetLanguage;
}
if (_translator == null || shouldInitTarget || shouldInitSource) {
_translator = OnDeviceTranslator(
sourceLanguage: toTranslateLanguage(sourceLanguage),
targetLanguage: toTranslateLanguage(targetLanguage),
);
}
return true;
}