Example usage for org.apache.commons.configuration2 PropertiesConfiguration getKeys

List of usage examples for org.apache.commons.configuration2 PropertiesConfiguration getKeys

Introduction

In this page you can find the example usage for org.apache.commons.configuration2 PropertiesConfiguration getKeys.

Prototype

@Override
public final Iterator<String> getKeys(final String prefix) 

Source Link

Document

This implementation returns keys that either match the prefix or start with the prefix followed by a dot ('.').

Usage

From source file:com.smartmarmot.dbforbix.config.Config.java

/**
 * Reads the configuration from a properties file
 * /*w w w .  j a  va  2 s .  c om*/
 * @throws IOException
 */
public void readFileConfig() throws IOException, NullPointerException {
    LOG.debug("Parsing config file: " + configFile);
    calculateFileConfigHash();
    try (FileReader reader = new FileReader(configFile)) {
        PropertiesConfiguration pcfg = new PropertiesConfiguration();
        pcfg.read(reader);
        if (pcfg.containsKey(SET_PERSISTENCETYPE))
            persistenceType = pcfg.getString(SET_PERSISTENCETYPE);
        if (pcfg.containsKey(SET_PERSISTENCEDIR))
            persistenceDir = pcfg.getString(SET_PERSISTENCEDIR);
        if (pcfg.containsKey(SET_UPDATECONFIG))
            setUpdateConfigTimeout(pcfg.getInt(SET_UPDATECONFIG));
        if (pcfg.containsKey(SET_POOL_MAXACTIVE))
            maxActive = pcfg.getInt(SET_POOL_MAXACTIVE);
        if (pcfg.containsKey(SET_POOL_MAXIDLE))
            maxIdle = pcfg.getInt(SET_POOL_MAXIDLE);
        if (pcfg.containsKey(SET_LOGIN_TIMEOUT))
            loginTimeout = Integer.parseInt(pcfg.getString(SET_LOGIN_TIMEOUT));
        Iterator<?> it;
        it = pcfg.getKeys(GLOBAL_ZBXSRV);
        while (it.hasNext()) {
            String key = it.next().toString();
            String[] keyparts = key.split("\\.");
            if (keyparts.length == 3)
                readConfigZSRV(keyparts[0], keyparts[1], keyparts[2], pcfg.getString(key));
        }
        it = pcfg.getKeys(GLOBAL_DB);
        while (it.hasNext()) {
            String key = it.next().toString();
            String[] keyparts = key.split("\\.");
            if (keyparts.length == 3)
                readConfigDB(keyparts[0], keyparts[1], keyparts[2], pcfg.getString(key));
        }

    } catch (ConfigurationException e) {
        throw new IOException("Error in configuration: " + e.getLocalizedMessage(), e);
    }
}