package art.servers.configuration; import art.library.model.devices.application.ApplicationInformation; import art.library.persistence.PersistenceDatabaseParameters; import art.library.utils.mail.SMTPConfiguration; import com.fasterxml.jackson.annotation.JsonIgnore; import com.fasterxml.jackson.annotation.JsonProperty; import com.fasterxml.jackson.annotation.JsonRootName; import java.util.List; import java.util.Locale; import java.util.Map; @JsonRootName(value = "Configuration") public class Configuration { @JsonProperty("General") public ConfigurationGeneral general = null; @JsonProperty("Application") public ApplicationInformation application = null; @JsonProperty("Listener") public ConfigurationListener listener = null; @JsonProperty("Listener http") public ConfigurationListenerHttp listenerHttp = null; @JsonProperty("Listener https") public ConfigurationListenerHttp listenerHttps = null; @JsonProperty("Listener web") public ConfigurationListenerHttp listenerWeb = null; @JsonProperty("NTP HTTP") public ConfigurationNtpHttp controllerNTPHTTP = null; @JsonProperty("Database") public List database = null; @JsonProperty("SMTP") public List lsmtp = null; @JsonProperty("Symbols") public List symbols = null; @JsonProperty("Messages") public Map lmessage = null; @JsonProperty("Transactions") public ConfigurationTransactions transactions = null; @JsonProperty("Listener debug") public ConfigurationListenerDEBUG debug = null; @JsonIgnore public String getMessage(String identifier) { try { ConfigurationMessages configurationMessages = (ConfigurationMessages)this.lmessage.get(general.language); return configurationMessages.getMessage(identifier); } catch (Exception e) { } return identifier; } @JsonIgnore public String getMessage(String language, String identifier) { try { ConfigurationMessages configurationMessages = (ConfigurationMessages)this.lmessage.get(language); return configurationMessages.getMessage(identifier); } catch (Exception e) { } return identifier; } @JsonIgnore public void setLanguage(String language) throws Exception { try { ConfigurationMessages configurationMessages = (ConfigurationMessages)this.lmessage.get(this.general.language); if (configurationMessages != null) { this.general.language = language; return; } } catch (Exception e) { } throw new Exception(); } @JsonIgnore public Locale getLocale() { try { String language = this.general.language.substring(0, 2); String country = this.general.language.substring(3, 5); return new Locale(language, country); } catch (Exception e) { } return Locale.getDefault(); } @JsonIgnore public void sortMessages() { for (String key : lmessage.keySet()) { ConfigurationMessages configurationMessages = (ConfigurationMessages)this.lmessage.get(key); configurationMessages.sort(); } } @JsonIgnore public PersistenceDatabaseParameters getDatabaseParameters(String area) { try { for (PersistenceDatabaseParameters parameters : database) { if (parameters.area.equalsIgnoreCase(area) == true) return(parameters); } } catch (Exception e) { } return null; } }