List of usage examples for org.apache.commons.configuration Configuration getList
List getList(String key);
From source file:org.ambraproject.configuration.ConfigurationTest.java
public void testSubsetDefaults2() { Configuration conf = this.conf.subset("exptest"); checkExpTest(conf.getList("local.item")); }
From source file:org.ambraproject.configuration.ConfigurationTest.java
public void testSubsetDefaultsOverride1() { Configuration conf = this.conf.subset("exptest.overrides"); checkExpTest(conf.getList("item")); }
From source file:org.ambraproject.configuration.ConfigurationTest.java
public void testSubsetDefaultsOverride2() { Configuration conf = this.conf.subset("exptest"); checkExpTest(conf.getList("overrides.item")); }
From source file:org.ambraproject.freemarker.AmbraFreemarkerConfig.java
private void loadConfig2(Configuration configuration) { int numJournals = configuration.getList("ambra.freemarker.journal.name").size(); for (int k = 0; k < numJournals; k++) { final String journal = "ambra.freemarker.journal(" + k + ")"; final String journalName = configuration.getString(journal + ".name"); if (log.isDebugEnabled()) { log.debug("reading journal name: " + journalName); }//from ww w . j a v a 2 s . c om JournalConfig jc = journals.get(journalName); if (jc == null) { if (log.isDebugEnabled()) { log.debug("journal Not found, creating: " + journalName); } jc = new JournalConfig(); journals.put(journalName, jc); } if (jc.getDefaultTitle() == null) { final String title = configuration.getString(journal + ".default.title"); if (title != null) { jc.setDefaultTitle(title); } } if (jc.getMetaDescription() == null) { final String metaDescription = configuration.getString(journal + ".metaDescription"); if (metaDescription != null) { jc.setMetaDescription(metaDescription); } } if (jc.getMetaKeywords() == null) { final String metaKeywords = configuration.getString(journal + ".metaKeywords"); if (metaKeywords != null) { jc.setMetaKeywords(metaKeywords); } } if (jc.getHashTag() == null) { final String hashtag = configuration.getString(journal + ".hashTag"); if (hashtag != null) { jc.setHashTag(hashtag); } } if (jc.getDisplayName() == null) { final String displayName = configuration.getString(journal + ".displayName"); if (displayName != null) { jc.setDisplayName(displayName); } } if (jc.getArticleTitlePrefix() == null) { final String articleTitlePrefix = configuration.getString(journal + ".articleTitlePrefix"); if (articleTitlePrefix != null) { jc.setArticleTitlePrefix(articleTitlePrefix); } } if (jc.getDefaultCss() == null) { final List fileList = configuration.getList(journal + ".default.css.file"); String[] defaultCss; if (fileList.size() > 0) { defaultCss = new String[fileList.size()]; Iterator iter = fileList.iterator(); for (int i = 0; i < fileList.size(); i++) { defaultCss[i] = dirPrefix + subdirPrefix + iter.next(); } jc.setDefaultCss(defaultCss); } } if (jc.getDefaultJavaScript() == null) { final List fileList = configuration.getList(journal + ".default.javascript.file"); String javascriptFile; String[] defaultJavaScript; if (fileList.size() > 0) { defaultJavaScript = new String[fileList.size()]; Iterator iter = fileList.iterator(); for (int i = 0; i < fileList.size(); i++) { javascriptFile = (String) iter.next(); if (javascriptFile.endsWith(".ftl")) { defaultJavaScript[i] = subdirPrefix + javascriptFile; } else { defaultJavaScript[i] = dirPrefix + subdirPrefix + javascriptFile; } } jc.setDefaultJavaScript(defaultJavaScript); } } final int numPages = configuration.getList(journal + ".page.name").size(); for (int i = 0; i < numPages; i++) { String page = journal + ".page(" + i + ")"; String pageName = configuration.getString(page + ".name"); if (log.isDebugEnabled()) log.debug("Reading config for page name: " + pageName); if (!jc.getTitles().containsKey(pageName)) { final String title = configuration.getString(page + ".title"); if (title != null) { jc.getTitles().put(pageName, title); } } if (!jc.getCssFiles().containsKey(pageName)) { List<String> list = configuration.getList(page + ".css.file"); String[] cssArray = new String[list.size()]; int j = 0; for (String fileName : list) { cssArray[j++] = dirPrefix + subdirPrefix + fileName; } if (cssArray.length > 0 || cssArray.length == 0 && configuration.getProperty(page + ".css") != null) { jc.getCssFiles().put(pageName, cssArray); } } if (!jc.getJavaScriptFiles().containsKey(pageName)) { List<String> list = configuration.getList(page + ".javascript.file"); String[] javaScriptArray = new String[list.size()]; int j = 0; for (String fileName : list) { if (fileName.endsWith(".ftl")) { javaScriptArray[j++] = subdirPrefix + fileName; } else { javaScriptArray[j++] = dirPrefix + subdirPrefix + fileName; } } if (javaScriptArray.length > 0 || javaScriptArray.length == 0 && configuration.getProperty(page + ".javascript") != null) { jc.getJavaScriptFiles().put(pageName, javaScriptArray); } } } } }
From source file:org.ambraproject.freemarker.AmbraFreemarkerConfig.java
private void processVirtualJournalConfig(Configuration configuration) { final Collection<String> virtualJournals = configuration .getList(VirtualJournalContextFilter.CONF_VIRTUALJOURNALS_JOURNALS); String defaultVirtualJournal = configuration .getString(VirtualJournalContextFilter.CONF_VIRTUALJOURNALS_DEFAULT + ".journal"); JournalConfig jour;/*ww w. j a v a2s . c o m*/ if ((defaultVirtualJournal != null) && (!"".equals(defaultVirtualJournal))) { jour = journals.get(defaultVirtualJournal); if (jour != null) { jour.setUrl( configuration.getString(VirtualJournalContextFilter.CONF_VIRTUALJOURNALS_DEFAULT + ".url")); jour.setIssn(configuration .getString(VirtualJournalContextFilter.CONF_VIRTUALJOURNALS_DEFAULT + ".eIssn")); } } for (final String journalName : virtualJournals) { jour = journals.get(journalName); if (jour != null) { jour.setUrl(configuration .getString(VirtualJournalContextFilter.CONF_VIRTUALJOURNALS + "." + journalName + ".url")); jour.setIssn(configuration.getString( VirtualJournalContextFilter.CONF_VIRTUALJOURNALS + "." + journalName + ".eIssn")); } } }
From source file:org.ambraproject.search.service.SolrSearchService.java
public void setConfiguration(Configuration config) throws ApplicationException { StringBuilder hightlightFieldBuilder = new StringBuilder(); queryTimeout = config.getInt("ambra.services.search.timeout", 60000); // default to 1 min List sizes = config.getList("ambra.services.search.pageSizes.size"); if (sizes == null) { throw new ApplicationException("ambra.services.search.pageSizes not defined " + "in configuration."); }//www. ja va 2s . c om pageSizes = sizes; if (config.containsKey("ambra.services.search.sortOptions.option")) { validSorts = new HashMap(); displaySorts = new ArrayList(); HierarchicalConfiguration hc = (HierarchicalConfiguration) config; List<HierarchicalConfiguration> sorts = hc.configurationsAt("ambra.services.search.sortOptions.option"); for (HierarchicalConfiguration s : sorts) { String key = s.getString("[@displayName]"); String value = s.getString(""); validSorts.put(key, value); displaySorts.add(key); } ((HierarchicalConfiguration) config).setExpressionEngine(null); } else { throw new ApplicationException( "ambra.services.search.sortOptions.option not defined " + "in configuration."); } List hFields = config.getList("ambra.services.search.highlightFields.field"); if (hFields == null) { throw new ApplicationException( "ambra.services.search.highlightFields.field not defined " + "in configuration."); } for (Object field : hFields) { if (hightlightFieldBuilder.length() > 0) { hightlightFieldBuilder.append(","); } hightlightFieldBuilder.append(field.toString()); } if (config.containsKey("ambra.services.search.keywordFields.field")) { validKeywords = new HashMap(); HierarchicalConfiguration hc = (HierarchicalConfiguration) config; List<HierarchicalConfiguration> sorts = hc .configurationsAt("ambra.services.search.keywordFields.field"); for (HierarchicalConfiguration s : sorts) { String key = s.getString("[@displayName]"); String value = s.getString(""); validKeywords.put(key, value); //These fields can be highlighted too! if (hightlightFieldBuilder.length() > 0) { hightlightFieldBuilder.append(","); } hightlightFieldBuilder.append(value); } } else { throw new ApplicationException( "ambra.services.search.keywordFields.field not defined " + "in configuration."); } this.highlightFields = hightlightFieldBuilder.toString(); }
From source file:org.ambraproject.service.search.SolrSearchService.java
public void setConfiguration(Configuration config) throws ApplicationException { queryTimeout = config.getInt("ambra.services.search.timeout", 60000); // default to 1 min List sizes = config.getList("ambra.services.search.pageSizes.size"); if (sizes == null) { throw new ApplicationException("ambra.services.search.pageSizes not defined " + "in configuration."); }//w ww. j a v a 2 s . c om pageSizes = sizes; if (config.containsKey("ambra.services.search.sortOptions.option")) { validSorts = new HashMap(); displaySorts = new ArrayList(); HierarchicalConfiguration hc = (HierarchicalConfiguration) config; List<HierarchicalConfiguration> sorts = hc.configurationsAt("ambra.services.search.sortOptions.option"); for (HierarchicalConfiguration s : sorts) { String key = s.getString("[@displayName]"); String value = s.getString(""); validSorts.put(key, value); displaySorts.add(key); } ((HierarchicalConfiguration) config).setExpressionEngine(null); } else { throw new ApplicationException( "ambra.services.search.sortOptions.option not defined " + "in configuration."); } if (config.containsKey("ambra.services.search.keywordFields.field")) { validKeywords = new HashMap(); HierarchicalConfiguration hc = (HierarchicalConfiguration) config; List<HierarchicalConfiguration> sorts = hc .configurationsAt("ambra.services.search.keywordFields.field"); for (HierarchicalConfiguration s : sorts) { String key = s.getString("[@displayName]"); String value = s.getString(""); validKeywords.put(key, value); } } else { throw new ApplicationException( "ambra.services.search.keywordFields.field not defined " + "in configuration."); } }
From source file:org.ambraproject.struts2.AmbraFreemarkerConfig.java
private void loadConfig2(Configuration configuration) { int numJournals = configuration.getList("ambra.freemarker.journal.name").size(); for (int k = 0; k < numJournals; k++) { final String journal = "ambra.freemarker.journal(" + k + ")"; final String journalName = configuration.getString(journal + ".name"); if (log.isDebugEnabled()) { log.debug("reading journal name: " + journalName); }/*from ww w. j av a 2 s . c o m*/ JournalConfig jc = journals.get(journalName); if (jc == null) { if (log.isDebugEnabled()) { log.debug("journal Not found, creating: " + journalName); } jc = new JournalConfig(); journals.put(journalName, jc); } if (jc.getDefaultTitle() == null) { final String title = configuration.getString(journal + ".default.title"); if (title != null) { jc.setDefaultTitle(title); } } if (jc.getMetaDescription() == null) { final String metaDescription = configuration.getString(journal + ".metaDescription"); if (metaDescription != null) { jc.setMetaDescription(metaDescription); } } if (jc.getMetaKeywords() == null) { final String metaKeywords = configuration.getString(journal + ".metaKeywords"); if (metaKeywords != null) { jc.setMetaKeywords(metaKeywords); } } if (jc.getDisplayName() == null) { final String displayName = configuration.getString(journal + ".displayName"); if (displayName != null) { jc.setDisplayName(displayName); } } if (jc.getArticleTitlePrefix() == null) { final String articleTitlePrefix = configuration.getString(journal + ".articleTitlePrefix"); if (articleTitlePrefix != null) { jc.setArticleTitlePrefix(articleTitlePrefix); } } if (jc.getDefaultCss() == null) { final List fileList = configuration.getList(journal + ".default.css.file"); String[] defaultCss; if (fileList.size() > 0) { defaultCss = new String[fileList.size()]; Iterator iter = fileList.iterator(); for (int i = 0; i < fileList.size(); i++) { defaultCss[i] = dirPrefix + subdirPrefix + iter.next(); } jc.setDefaultCss(defaultCss); } } if (jc.getDefaultJavaScript() == null) { final List fileList = configuration.getList(journal + ".default.javascript.file"); String javascriptFile; String[] defaultJavaScript; if (fileList.size() > 0) { defaultJavaScript = new String[fileList.size()]; Iterator iter = fileList.iterator(); for (int i = 0; i < fileList.size(); i++) { javascriptFile = (String) iter.next(); if (javascriptFile.endsWith(".ftl")) { defaultJavaScript[i] = subdirPrefix + javascriptFile; } else { defaultJavaScript[i] = dirPrefix + subdirPrefix + javascriptFile; } } jc.setDefaultJavaScript(defaultJavaScript); } } final int numPages = configuration.getList(journal + ".page.name").size(); for (int i = 0; i < numPages; i++) { String page = journal + ".page(" + i + ")"; String pageName = configuration.getString(page + ".name"); if (log.isDebugEnabled()) log.debug("Reading config for page name: " + pageName); if (!jc.getTitles().containsKey(pageName)) { final String title = configuration.getString(page + ".title"); if (title != null) { jc.getTitles().put(pageName, title); } } if (!jc.getCssFiles().containsKey(pageName)) { List<String> list = configuration.getList(page + ".css.file"); String[] cssArray = new String[list.size()]; int j = 0; for (String fileName : list) { cssArray[j++] = dirPrefix + subdirPrefix + fileName; } if (cssArray.length > 0 || cssArray.length == 0 && configuration.getProperty(page + ".css") != null) { jc.getCssFiles().put(pageName, cssArray); } } if (!jc.getJavaScriptFiles().containsKey(pageName)) { List<String> list = configuration.getList(page + ".javascript.file"); String[] javaScriptArray = new String[list.size()]; int j = 0; for (String fileName : list) { if (fileName.endsWith(".ftl")) { javaScriptArray[j++] = subdirPrefix + fileName; } else { javaScriptArray[j++] = dirPrefix + subdirPrefix + fileName; } } if (javaScriptArray.length > 0 || javaScriptArray.length == 0 && configuration.getProperty(page + ".javascript") != null) { jc.getJavaScriptFiles().put(pageName, javaScriptArray); } } } } }
From source file:org.ambraproject.web.VirtualJournalContextFilter.java
/** * Process all <${journal-name}><rules><${http-header-name}>s looking for a match. * This method is only used to fetch rules from configuration and find matching journal based on request. * * @param configuration <code>Configuration</code> that contains the rules. * @param request <code>HttpServletRequest</code> to apply the rules against. * @return VirtualJournalContext. May be <code>null</code>. *//*from w w w .j a v a 2 s . co m*/ private String findMatchingVirtualJournal(Configuration configuration, HttpServletRequest request) { String virtualJournal = null; // process all <virtualjournal><journals> entries looking for a match final List<String> journals = configuration.getList(CONF_VIRTUALJOURNALS_JOURNALS); final Iterator<String> onJournal = journals.iterator(); while (onJournal.hasNext() && virtualJournal == null) { final String journal = onJournal.next(); if (log.isTraceEnabled()) { log.trace("processing virtual journal: " + journal); } // get the <rules> for this journal final String rulesPrefix = CONF_VIRTUALJOURNALS + "." + journal + ".rules"; final Iterator rules = configuration.getKeys(rulesPrefix); while (rules.hasNext()) { final String rule = (String) rules.next(); final String httpHeader = rule.substring(rulesPrefix.length() + 1); final String httpValue = configuration.getString(rule); if (log.isTraceEnabled()) { log.trace("processing rule: " + httpHeader + " = " + httpValue); } // test Request HTTP header value against match final String reqHttpValue = request.getHeader(httpHeader); if (log.isTraceEnabled()) { log.trace("testing Request: " + httpHeader + "=" + reqHttpValue); } if (reqHttpValue == null) { if (httpValue == null) { virtualJournal = journal; break; } continue; } if (reqHttpValue.matches(httpValue)) { virtualJournal = journal; break; } } } // return match or null return virtualJournal; }
From source file:org.apache.james.postage.configuration.ConfigurationLoader.java
public Map<String, PostageConfiguration> create(Configuration configuration) { log.debug("reading configuration."); Map<String, PostageConfiguration> postageConfigurations = new LinkedHashMap<String, PostageConfiguration>(); List<String> scenariosIds = configuration.getList("scenario[@id]"); log.debug("scenarios contained in configuration: " + scenariosIds.size()); Iterator<String> scenarioIter = scenariosIds.iterator(); int scenarioCount = 0; while (scenarioIter.hasNext()) { String scenarioId = scenarioIter.next(); if (postageConfigurations.containsKey(scenarioId)) { log.error("found in configuration more than one scenario which is named: " + scenarioId); continue; }/*from w ww . ja va 2s . co m*/ PostageConfiguration postageConfiguration = new PostageConfiguration(scenarioId); String scenario = getIndexedPropertyName("scenario", scenarioCount); postageConfiguration.setDurationMinutes( configuration.getInt(getAttributedPropertyName(scenario, "runtimeMinutes"))); addDescription(postageConfiguration, configuration.subset(scenario + ".description")); String scenarioInternalUsers = scenario + ".users.internal"; UserList internals = new UserList( configuration.getInt(getAttributedPropertyName(scenarioInternalUsers, "count")), configuration.getString(getAttributedPropertyName(scenarioInternalUsers, "username-prefix")), configuration.getString(getAttributedPropertyName(scenarioInternalUsers, "domain")), configuration.getString(getAttributedPropertyName(scenarioInternalUsers, "password"))); postageConfiguration.setInternalUsers(internals); postageConfiguration.setInternalReuseExisting( configuration.getBoolean(getAttributedPropertyName(scenarioInternalUsers, "reuseExisting"))); String scenarioExternalUsers = scenario + ".users.external"; UserList externals = new UserList( configuration.getInt(getAttributedPropertyName(scenarioExternalUsers, "count")), configuration.getString(getAttributedPropertyName(scenarioExternalUsers, "username-prefix")), configuration.getString(getAttributedPropertyName(scenarioExternalUsers, "domain"))); postageConfiguration.setExternalUsers(externals); String scenarioTestserver = scenario + ".testserver"; postageConfiguration.setTestserverHost( configuration.getString(getAttributedPropertyName(scenarioTestserver, "host"))); postageConfiguration.setTestserverPortPOP3( configuration.getInt(getAttributedPropertyName(scenarioTestserver + ".pop3", "port"))); postageConfiguration.setTestserverPOP3FetchesPerMinute( configuration.getInt(getAttributedPropertyName(scenarioTestserver + ".pop3", "count-per-min"))); postageConfiguration.setTestserverPortSMTPInbound( configuration.getInt(getAttributedPropertyName(scenarioTestserver + ".smtp-inbound", "port"))); postageConfiguration.setTestserverPortSMTPForwarding(configuration .getInt(getAttributedPropertyName(scenarioTestserver + ".smtp-forwarding", "port"))); postageConfiguration.setTestserverSMTPForwardingWaitSeconds(configuration.getInt( getAttributedPropertyName(scenarioTestserver + ".smtp-forwarding", "latecomer-wait-seconds"))); postageConfiguration.setTestserverRemoteManagerPort( configuration.getInt(getAttributedPropertyName(scenarioTestserver + ".remotemanager", "port"))); postageConfiguration.setTestserverRemoteManagerUsername(configuration .getString(getAttributedPropertyName(scenarioTestserver + ".remotemanager", "name"))); postageConfiguration.setTestserverRemoteManagerPassword(configuration .getString(getAttributedPropertyName(scenarioTestserver + ".remotemanager", "password"))); postageConfiguration.setTestserverSpamAccountUsername(configuration .getString(getAttributedPropertyName(scenarioTestserver + ".spam-account", "name"))); postageConfiguration.setTestserverSpamAccountPassword(configuration .getString(getAttributedPropertyName(scenarioTestserver + ".spam-account", "password"))); postageConfiguration.setTestserverPortJMXRemoting(configuration .getInt(getAttributedPropertyName(scenarioTestserver + ".jvm-resources", "jmx-remoting-port"))); addSendProfiles(postageConfiguration, configuration, scenario); postageConfigurations.put(postageConfiguration.getId(), postageConfiguration); scenarioCount++; } return postageConfigurations; }