IDEMPIERE-3329 Issue with cached translations / integrate from Nicolas Micoud
This commit is contained in:
parent
28505bf01b
commit
19847dc4ce
|
@ -1909,7 +1909,7 @@ public abstract class PO
|
||||||
+ ", ID=" + m_IDs[0]);
|
+ ", ID=" + m_IDs[0]);
|
||||||
}
|
}
|
||||||
|
|
||||||
String key = get_TableName() + "." + columnName + "|" + get_ID() + "|" + AD_Language;
|
String key = getTrlCacheKey(columnName, AD_Language);
|
||||||
String retValue = null;
|
String retValue = null;
|
||||||
if (! reload && trl_cache.containsKey(key)) {
|
if (! reload && trl_cache.containsKey(key)) {
|
||||||
retValue = trl_cache.get(key);
|
retValue = trl_cache.get(key);
|
||||||
|
@ -1942,6 +1942,11 @@ public abstract class PO
|
||||||
return retValue;
|
return retValue;
|
||||||
} // get_Translation
|
} // get_Translation
|
||||||
|
|
||||||
|
/** Return the key used in the translation cache */
|
||||||
|
private String getTrlCacheKey(String columnName, String AD_Language) {
|
||||||
|
return get_TableName() + "." + columnName + "|" + get_ID() + "|" + AD_Language;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Get Translation of column
|
* Get Translation of column
|
||||||
* @param ctx context
|
* @param ctx context
|
||||||
|
@ -3645,6 +3650,14 @@ public abstract class PO
|
||||||
else
|
else
|
||||||
sqlcols.append(value.toString());
|
sqlcols.append(value.toString());
|
||||||
sqlcols.append(",");
|
sqlcols.append(",");
|
||||||
|
|
||||||
|
// Reset of related translation cache entries
|
||||||
|
String[] availableLanguages = Language.getNames();
|
||||||
|
for (String langName : availableLanguages) {
|
||||||
|
Language language = Language.getLanguage(langName);
|
||||||
|
String key = getTrlCacheKey(columnName, language.getAD_Language());
|
||||||
|
trl_cache.remove(key);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
StringBuilder whereid = new StringBuilder(" WHERE ").append(keyColumn).append("=").append(get_ID());
|
StringBuilder whereid = new StringBuilder(" WHERE ").append(keyColumn).append("=").append(get_ID());
|
||||||
|
|
Loading…
Reference in New Issue