+++ /dev/null
-package com.indexdata.pz2utils4jsf.config;\r
-\r
-import java.io.IOException;\r
-import java.io.Serializable;\r
-import java.util.HashMap;\r
-import java.util.Map;\r
-\r
-import javax.enterprise.context.SessionScoped;\r
-import javax.inject.Named;\r
-\r
-import org.apache.log4j.Logger;\r
-\r
-import com.indexdata.masterkey.config.MissingMandatoryParameterException;\r
-import com.indexdata.masterkey.config.ModuleConfiguration;\r
-import com.indexdata.masterkey.config.ModuleConfigurationGetter;\r
-import com.indexdata.pz2utils4jsf.errors.ConfigurationException;\r
-import com.indexdata.pz2utils4jsf.utils.Utils;\r
-\r
-@Named @SessionScoped\r
-public class Pz2Config implements ModuleConfigurationGetter, Serializable {\r
-\r
- private static final long serialVersionUID = -6801241975338182197L;\r
- private static Logger logger = Logger.getLogger(Pz2Config.class);\r
- Map<String,String> properties = new HashMap<String,String>();\r
- ModuleConfiguration moduleConfig = null;\r
- \r
- public Pz2Config () {\r
- logger.debug(Utils.objectId(this) + " being constructed with no argument");\r
- setDefaults();\r
- }\r
- \r
- public Pz2Config (Map<String,String> parameters) {\r
- //logger.debug(Utils.objectId(this) + " being constructed with parameter map argument");\r
- setDefaults();\r
- for (String key : parameters.keySet()) {\r
- properties.put(key, parameters.get(key));\r
- }\r
- }\r
- \r
- public Pz2Config (ModuleConfiguration moduleConfig) throws ConfigurationException {\r
- logger.debug(Utils.objectId(this) + " being constructed with moduleConfig argument.");\r
- this.moduleConfig = moduleConfig;\r
- try {\r
- for (String key : moduleConfig.getConfigMap().keySet()) {\r
- properties.put(key, moduleConfig.getConfigParameter(key));\r
- }\r
- } catch (IOException e) {\r
- throw new ConfigurationException("Could not instantiate Pazpar2 configuration: "+e.getMessage(),e);\r
- }\r
- }\r
- \r
- private void setDefaults () {\r
- properties.put("PROXY_MODE","1");\r
- properties.put("SERIALIZE_REQUESTS", "false");\r
- properties.put("STREAMBUFF_SIZE", "4096");\r
- properties.put("PARSE_RESPONSES", "true"); \r
- }\r
- \r
- @Override\r
- public String get(String key) {\r
- return properties.get(key); \r
- }\r
- \r
- public void set(String key, String value) {\r
- properties.put(key, value);\r
- }\r
- \r
- public void setPazpar2Url (String value) {\r
- properties.put("PAZPAR2_URL", value);\r
- }\r
- \r
- public void setPazpar2ServiceId (String value) {\r
- properties.put("PAZPAR2_SERVICE_ID",value);\r
- }\r
-\r
- @Override\r
- public String get(String key, String defaultValue) {\r
- if (properties.containsKey(key)) {\r
- return properties.get(key);\r
- } else {\r
- return defaultValue;\r
- }\r
- }\r
-\r
- @Override\r
- public String getMandatory(String key) throws MissingMandatoryParameterException {\r
- if (properties.containsKey(key)) {\r
- return properties.get(key);\r
- } \r
- throw new MissingMandatoryParameterException("Missing mandatory parameter: " + key); \r
- }\r
-\r
- @Override\r
- public String getConfigFilePath() {
- return (moduleConfig != null ? moduleConfig.getConfigFilePath() : "nopath");\r
- }\r
- \r
- \r
-\r
-}\r