Skip to content

Commit 6bd483d

Browse files
committed
Fixed some bugs for language resources load
1 parent d3b01b9 commit 6bd483d

2 files changed

Lines changed: 10 additions & 34 deletions

File tree

app/src/main/java/nie/translator/rtranslator/voice_translation/neural_networks/translation/LanguageResourcesIndicator.java

Lines changed: 0 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -157,27 +157,6 @@ public boolean isResourcePairContainedInOtherPeers(CustomLocale srcLang, CustomL
157157
return false;
158158
}
159159

160-
public boolean isResourceTypeLoaded(Global.RTranslatorMode rtranslatorMode, ResourceType resourceType){
161-
switch (rtranslatorMode){
162-
case TEXT_TRANSLATION_MODE:
163-
if(textTranslationResourcesLoaded.contains(resourceType)){
164-
return true;
165-
}
166-
break;
167-
case WALKIE_TALKIE_MODE:
168-
if(walkieTalkieResourcesLoaded.contains(resourceType)){
169-
return true;
170-
}
171-
break;
172-
case CONVERSATION_MODE:
173-
if(conversationResourcesLoaded.contains(resourceType)){
174-
return true;
175-
}
176-
break;
177-
}
178-
return false;
179-
}
180-
181160
public boolean isResourceTypeLoaded(ResourceType resourceType){
182161
return textTranslationResourcesLoaded.contains(resourceType) || walkieTalkieResourcesLoaded.contains(resourceType) || conversationResourcesLoaded.contains(resourceType);
183162
}

app/src/main/java/nie/translator/rtranslator/voice_translation/neural_networks/translation/LanguageResourcesManager.java

Lines changed: 10 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -125,14 +125,17 @@ public void loadLanguageResources(@NonNull CustomLocale srcLang, @NonNull Custom
125125
//we load all the resources of the new languages that are not already loaded
126126
performLoadLanguageResources(srcLang, tgtLang, rtranslatorMode);
127127
//we update the indicator to reflect the new resources status
128-
currentModeResources[0] = !srcLang.getLanguage().equals("en") ? srcLang : null;
129-
currentModeResources[1] = !tgtLang.getLanguage().equals("en") ? tgtLang : null;
128+
currentModeResources[0] = srcLang;
129+
currentModeResources[1] = tgtLang;
130130
if(modelMode == MOZILLA) {
131131
languageResourcesIndicator.setResourceTypeLoadStatus(rtranslatorMode, LanguageResourcesIndicator.ResourceType.MOZILLA, true);
132132
}
133133
if(global.isUseTatoeba()){
134134
languageResourcesIndicator.setResourceTypeLoadStatus(rtranslatorMode, LanguageResourcesIndicator.ResourceType.TATOEBA, true);
135135
}
136+
if(global.isUseTranslationDictionaries()){
137+
languageResourcesIndicator.setResourceTypeLoadStatus(rtranslatorMode, LanguageResourcesIndicator.ResourceType.TRANSLATION_DICTIONARY, true);
138+
}
136139
}
137140

138141
public boolean isPeerLoaded(@Nullable Peer peer){
@@ -325,30 +328,24 @@ private void performLoadLanguageResources(@NonNull CustomLocale srcLang, @NonNul
325328
Log.d("language_resources", "Language loaded: "+srcLang.getLanguage());
326329
long time = System.currentTimeMillis();
327330
if(modelMode == MOZILLA){
328-
ArrayList<CustomLocale> allUniqueResources = languageResourcesIndicator.getAllUniqueResources();
329-
boolean initialLoad = languageResourcesIndicator.isResourceTypeLoaded(rtranslatorMode, LanguageResourcesIndicator.ResourceType.MOZILLA);
330-
if (!srcLang.getLanguage().equals("en") && (initialLoad || !allUniqueResources.contains(srcLang))) {
331+
if (!srcLang.getLanguage().equals("en")) {
331332
BergamotTranslator.loadModelIntoCache(global, srcLang);
332333
}
333-
if (!tgtLang.getLanguage().equals("en") && (initialLoad || !allUniqueResources.contains(tgtLang))) {
334+
if (!tgtLang.getLanguage().equals("en")) {
334335
BergamotTranslator.loadModelIntoCache(global, tgtLang);
335336
}
336337
}
337338
if(global.isUseTranslationDictionaries() || rtranslatorMode == Global.RTranslatorMode.WALKIE_TALKIE_MODE){ // WalkieTalkie mode must always have dicts loaded for LID
338-
ArrayList<CustomLocale> allUniqueResources = languageResourcesIndicator.getAllUniqueResources();
339-
boolean initialLoad = languageResourcesIndicator.isResourceTypeLoaded(rtranslatorMode, LanguageResourcesIndicator.ResourceType.TRANSLATION_DICTIONARY);
340-
if (!srcLang.getISO3Language().equals("eng") && (initialLoad || !allUniqueResources.contains(srcLang))) {
339+
if (!srcLang.getISO3Language().equals("eng")) {
341340
DictionaryTranslator.loadDictionary(srcLang);
342341
}
343-
if (!tgtLang.getISO3Language().equals("eng") && (initialLoad || !allUniqueResources.contains(tgtLang))) {
342+
if (!tgtLang.getISO3Language().equals("eng")) {
344343
DictionaryTranslator.loadDictionary(tgtLang);
345344
}
346345
}
347346
if(global.isUseTatoeba()){
348-
ArrayList<String> allUniqueResourcePais = languageResourcesIndicator.getAllUniqueResourcePairs();
349-
boolean initialLoad = languageResourcesIndicator.isResourceTypeLoaded(rtranslatorMode, LanguageResourcesIndicator.ResourceType.TATOEBA);
350347
String langPairCode = srcLang.getISO3Language() + "-" + tgtLang.getISO3Language();
351-
if(initialLoad || !allUniqueResourcePais.contains(langPairCode)){
348+
if(!tatoebaLinks.containsKey(langPairCode)){
352349
LinksData.DataMap links = tatoebaDb.getLinkData(srcLang.getISO3Language(), tgtLang.getISO3Language());
353350
tatoebaLinks.put(
354351
langPairCode,

0 commit comments

Comments
 (0)