public synchronized void saveOrUpdateI18nItem(I18nItem i18nItem, String value) {
Properties properties = getPropertiesWithoutResolvingRecursively(i18nItem.getLocale(), i18nItem.getBundleName());
// Add logging block to find bogus save issues
if (isLogDebugEnabled()) {
String itemIdent = i18nItem.getLocale() + ":" + buildI18nItemIdentifyer(i18nItem.getBundleName(), i18nItem.getKey());
if (properties.containsKey(i18nItem.getKey())) {
if (StringHelper.containsNonWhitespace(value)) {
logDebug("Updating i18n item::" + itemIdent + " with new value::" + value, null);
} else {
logDebug("Deleting i18n item::" + itemIdent + " because new value is emty", null);
}