package ro.nextreports.designer.i18n.action;
import java.util.ArrayList;
import java.util.List;
import ro.nextreports.engine.i18n.I18nLanguage;
public class I18nManager {
private static I18nManager instance = new I18nManager();
private List<String> keys = new ArrayList<String>();
private List<I18nLanguage> languages = new ArrayList<I18nLanguage>();
private I18nLanguage currentLanguage;
private I18nManager() {
}
public static I18nManager getInstance() {
return instance;
}
public List<String> getKeys() {
return keys;
}
public void setKeys(List<String> keys) {
this.keys = keys;
}
public void addKeys(List<String> keys) {
for (String key : keys) {
if (!this.keys.contains(key)) {
this.keys.add(key);
}
}
}
public List<I18nLanguage> getLanguages() {
return languages;
}
public void setLanguages(List<I18nLanguage> languages) {
this.languages = languages;
}
public void addLanguage(I18nLanguage language) {
languages.add(language);
}
public I18nLanguage getCurrentLanguage() {
return currentLanguage;
}
public void setCurrentLanguage(I18nLanguage currentLanguage) {
this.currentLanguage = currentLanguage;
}
public void clear() {
currentLanguage = null;
keys.clear();
if (languages != null) {
languages.clear();
}
}
}