List of usage examples for org.apache.commons.configuration Configuration getKeys
Iterator getKeys(String prefix);
From source file:org.seedstack.seed.core.utils.SeedConfigurationUtils.java
/** * Creates a Properties object from a commons configuration object using a specified property prefix. * @param configuration the commons configuration object * @param propertyPrefix the property prefix to search from. * @return the properties object containing the configuration subset derived from propertyPrefix. *//*from w w w .j a v a 2 s . c o m*/ public static Properties buildPropertiesFromConfiguration(Configuration configuration, final String propertyPrefix) { Properties properties = new Properties(); Iterator<String> it = configuration.getKeys(propertyPrefix); while (it.hasNext()) { String name = it.next(); properties.put(name.substring(propertyPrefix.length() + 1), configuration.getString(name)); } return properties; }
From source file:org.seedstack.seed.crypto.internal.KeyStoreConfigFactory.java
private void addAlias(KeyStoreConfig keyStoreConfig, Configuration ksConfiguration) { Iterator<String> aliasIterator = ksConfiguration.getKeys(ALIAS_PREFIX); while (aliasIterator.hasNext()) { String aliasKey = aliasIterator.next(); String alias = getAliasName(aliasKey); String password = getPassword(ksConfiguration, aliasKey); if (alias != null && password != null) { keyStoreConfig.addAliasPassword(alias, password); }//from w ww. ja v a 2s .co m } }
From source file:org.seedstack.seed.persistence.elasticsearch.internal.ElasticSearchPlugin.java
@Override public InitState init(InitContext initContext) { ApplicationPlugin applicationPlugin = (ApplicationPlugin) initContext.pluginsRequired().iterator().next(); Configuration elasticSearchConfiguration = applicationPlugin.getApplication().getConfiguration() .subset(ELASTIC_SEARCH_PLUGIN_CONFIGURATION_PREFIX); String[] elasticSearchClientNames = elasticSearchConfiguration.getStringArray("clients"); if (elasticSearchClientNames != null && elasticSearchClientNames.length > 0) { for (String elasticSearchClientName : elasticSearchClientNames) { Configuration elasticSearchClientConfiguration = elasticSearchConfiguration .subset("client." + elasticSearchClientName); Iterator<String> it = elasticSearchClientConfiguration.getKeys("property"); Map<String, String> propertiesMap = new HashMap<String, String>(); while (it.hasNext()) { String name = it.next(); propertiesMap.put(name.substring(9), elasticSearchClientConfiguration.getString(name)); }//ww w.j a va2 s . co m if (!propertiesMap.containsKey("path.home")) { try { propertiesMap.put("path.home", applicationPlugin.getApplication().getStorageLocation( ElasticSearchPlugin.ELASTIC_SEARCH_STORAGE_ROOT + elasticSearchClientName) .getAbsolutePath()); } catch (IOException e) { throw new PluginException("Unable to create ElasticSearch home directory", e); } } String[] hosts = elasticSearchClientConfiguration.getStringArray("hosts"); if (hosts == null || hosts.length == 0) { LOGGER.info("Creating ElasticSearch client {} on its local node", elasticSearchClientName); Node node = buildLocalNode(buildSettings(propertiesMap)); elasticSearchLocalNodes.put(elasticSearchClientName, node); elasticSearchClients.put(elasticSearchClientName, node.client()); } else { LOGGER.info("Creating ElasticSearch client {} for remote instance at {}", elasticSearchClientName, Arrays.toString(hosts)); elasticSearchClients.put(elasticSearchClientName, buildRemoteClient(buildSettings(propertiesMap), hosts)); } } } else { LOGGER.info("No ElasticSearch client configured, ElasticSearch support disabled"); } return InitState.INITIALIZED; }
From source file:org.seedstack.seed.persistence.jdbc.internal.DataSourceDefinitionFactory.java
private DataSourceDefinition createDataSource(MetricsPlugin metricsPlugin, Map<String, Class<? extends DataSourceProvider>> dataSourceProviderClasses, String datasourceName, Configuration dataSourceConfig) { DataSourceDefinition dataSourceDefinition = new DataSourceDefinition(datasourceName); String dataSourceProviderName = dataSourceConfig.getString("provider", PlainDataSourceProvider.class.getSimpleName()); Class<? extends DataSourceProvider> providerClass = dataSourceProviderClasses.get(dataSourceProviderName); if (providerClass == null) { throw new PluginException( "Could not find a matching DataSourceProvider for configured value: " + dataSourceProviderName); }/*from ww w .ja v a2 s . c om*/ DataSourceProvider provider; try { provider = providerClass.newInstance(); } catch (Exception e) { throw new PluginException("Unable to load class " + dataSourceProviderName, e); } if (metricsPlugin != null) { provider.setHealthCheckRegistry(metricsPlugin.getHealthCheckRegistry()); provider.setMetricRegistry(metricsPlugin.getMetricRegistry()); } Iterator<String> it = dataSourceConfig.getKeys("property"); Properties otherProperties = new Properties(); while (it.hasNext()) { String name = it.next(); otherProperties.put(name.substring(9), dataSourceConfig.getString(name)); } dataSourceDefinition.setDataSource(provider.provide(dataSourceConfig.getString("driver"), dataSourceConfig.getString("url"), dataSourceConfig.getString("user"), dataSourceConfig.getString("password"), otherProperties)); dataSourceDefinition.setDataSourceProvider(provider); return dataSourceDefinition; }
From source file:org.seedstack.seed.persistence.jpa.internal.JpaPlugin.java
@Override @SuppressWarnings("unchecked") public InitState init(InitContext initContext) { Configuration jpaConfiguration = null; TransactionPlugin transactionPlugin = null; JdbcRegistry jdbcRegistry = null;/*from w ww . j a va2 s . co m*/ Application application = null; for (Plugin plugin : initContext.pluginsRequired()) { if (plugin instanceof ApplicationPlugin) { application = ((ApplicationPlugin) plugin).getApplication(); jpaConfiguration = application.getConfiguration().subset(JpaPlugin.JPA_PLUGIN_CONFIGURATION_PREFIX); } else if (plugin instanceof TransactionPlugin) { transactionPlugin = (TransactionPlugin) plugin; } else if (plugin instanceof JdbcPlugin) { jdbcRegistry = (JdbcRegistry) plugin; } } if (jpaConfiguration == null) { throw new PluginException("Unable to find application plugin"); } if (transactionPlugin == null) { throw new PluginException("Unable to find transaction plugin"); } if (jdbcRegistry == null) { throw new PluginException("Unable to find jdbc plugin"); } String[] persistenceUnitNames = jpaConfiguration.getStringArray("units"); if (persistenceUnitNames == null || persistenceUnitNames.length == 0) { LOGGER.info("No JPA persistence unit configured, JPA support disabled"); return InitState.INITIALIZED; } for (String persistenceUnit : persistenceUnitNames) { Configuration persistenceUnitConfiguration = jpaConfiguration.subset("unit." + persistenceUnit); Iterator<String> it = persistenceUnitConfiguration.getKeys("property"); Properties properties = new Properties(); while (it.hasNext()) { String name = it.next(); properties.put(name.substring(9), persistenceUnitConfiguration.getString(name)); } EntityManagerFactory emf; if (persistenceUnitConfiguration.containsKey("datasource")) { Collection<Class<?>> scannedClasses = new ArrayList<Class<?>>(); if (initContext.scannedClassesByAnnotationClass().get(Entity.class) != null) { scannedClasses.addAll(initContext.scannedClassesByAnnotationClass().get(Entity.class)); } if (initContext.scannedClassesByAnnotationClass().get(Embeddable.class) != null) { scannedClasses.addAll(initContext.scannedClassesByAnnotationClass().get(Embeddable.class)); } emf = confResolver.createEntityManagerFactory(persistenceUnit, properties, persistenceUnitConfiguration, application, jdbcRegistry, scannedClasses); } else { emf = confResolver.createEntityManagerFactory(persistenceUnit, properties); } entityManagerFactories.put(persistenceUnit, emf); String exceptionHandler = persistenceUnitConfiguration.getString("exception-handler"); if (exceptionHandler != null && !exceptionHandler.isEmpty()) { try { exceptionHandlerClasses.put(persistenceUnit, (Class<? extends JpaExceptionHandler>) Class.forName(exceptionHandler)); } catch (Exception e) { throw new PluginException("Unable to load class " + exceptionHandler, e); } } } if (persistenceUnitNames.length == 1) { JpaTransactionMetadataResolver.defaultJpaUnit = persistenceUnitNames[0]; } transactionPlugin.registerTransactionHandler(JpaTransactionHandler.class); return InitState.INITIALIZED; }
From source file:pl.edu.icm.coansys.commons.reparser.RegexpParser.java
@SuppressWarnings("unchecked") private void loadConfiguration(String resource, String mainNode) { Iterator<String> iter = null; URL url = this.getClass().getClassLoader().getResource(resource); Configuration cfg; try {//from w w w. ja v a 2 s .co m cfg = new PropertiesConfiguration(url); } catch (ConfigurationException e) { throw new RuntimeException(e); } /* Collect all nodes */ Map<String, NodeCategory> nodes = new HashMap<String, NodeCategory>(); iter = (Iterator<String>) cfg.getKeys(NODE); while (iter.hasNext()) { String nodeId = iter.next(); nodeId = nodeId.replaceFirst("^" + NODE + "\\.", "").replaceFirst("\\..*$", ""); if (!nodes.containsKey(nodeId)) { nodes.put(nodeId, new NodeCategory()); } } log.debug("Found nodes: " + nodes.keySet()); if (!nodes.containsKey(mainNode)) { throw new IllegalArgumentException( "Main node not found in the configuration file. The required node is: " + mainNode); } for (Map.Entry<String, NodeCategory> entry : nodes.entrySet()) { NodeCategory node = entry.getValue(); String id = entry.getKey(); node.setId(id); String regexp = cfg.getString(NODE + "." + id + "." + REGEXP); if (regexp != null) { node.setRegexp(regexp); } String name = cfg.getString(NODE + "." + id + "." + NAME); if (name != null) { node.setName(name); } iter = (Iterator<String>) cfg.getKeys(NODE + "." + id + "." + TEMPLATE); while (iter.hasNext()) { String type = iter.next(); type = type.replaceFirst("^" + NODE + "\\." + id + "\\." + TEMPLATE + "\\.?+", ""); List<String> templates = (List<String>) cfg.getList(NODE + "." + id + "." + TEMPLATE + "." + type); for (String template : templates) { Template t = new Template(); t.setType(type); String[] fields = template.split("\\s+"); for (String field : fields) { NodeCategory n = nodes.get(field); if (n == null) { log.warn("Node '" + field + "' does not exist. Referenced in template: " + template); } t.addField(n); } node.addTemplate(t); } } } mainNodeCategory = nodes.get(mainNode); }
From source file:uk.org.openeyes.oink.facade.FacadeRoutingServiceFactory.java
private int getNumberOfMappingsGiven(Configuration facadeConfig) { if (facadeConfig.isEmpty()) { log.error("No mapping entries are in the program's config file. The facade will not map any requests!"); return 0; }/*from ww w. j av a 2s . co m*/ int numOfMappings = 0; while (facadeConfig.getKeys(++numOfMappings + ".").hasNext()) { numOfMappings++; } log.info("Found " + numOfMappings + " mapping entries"); return numOfMappings; }