Example usage for org.apache.commons.configuration Configuration subset

List of usage examples for org.apache.commons.configuration Configuration subset

Introduction

In this page you can find the example usage for org.apache.commons.configuration Configuration subset.

Prototype

Configuration subset(String prefix);

Source Link

Document

Return a decorator Configuration containing every key from the current Configuration that starts with the specified prefix.

Usage

From source file:org.ambraproject.freemarker.AmbraFreemarkerConfig.java

/**
 * Constructor that loads the list of css and javascript files and page titles for pages which follow the standard
 * templates.  Creates its own composite configuration by iterating over each of the configs in the config to assemble
 * a union of pages defined.//  w  w w.java 2  s.c  om
 *
 * @param configuration Ambra configuration
 * @throws Exception Exception
 */
public AmbraFreemarkerConfig(Configuration configuration) throws Exception {
    if (log.isDebugEnabled()) {
        log.debug("Creating FreeMarker configuration");
    }
    debug = configuration.getBoolean("struts.devMode");
    dirPrefix = configuration.getString("ambra.platform.appContext");
    subdirPrefix = configuration.getString("ambra.platform.resourceSubDir");
    host = configuration.getString("ambra.platform.host");
    casLoginURL = configuration.getString("ambra.services.cas.url.login");
    casLogoutURL = configuration.getString("ambra.services.cas.url.logout");
    registrationURL = configuration.getString("ambra.services.registration.url.registration");
    changePasswordURL = configuration.getString("ambra.services.registration.url.change-password");
    changeEmailURL = configuration.getString("ambra.services.registration.url.change-email");
    doiResolverURL = configuration.getString("ambra.services.crossref.plos.doiurl");
    defaultJournalName = configuration.getString(DEFAULT_JOURNAL_NAME_CONFIG_KEY);
    journals = new HashMap<String, JournalConfig>();
    journalsByIssn = new HashMap<String, JournalConfig>();
    orgName = configuration.getString("ambra.platform.name");
    feedbackEmail = configuration.getString("ambra.platform.email.feedback");
    cache_storage_strong = configuration.getInt("ambra.platform.template_cache.strong",
            DEFAULT_TEMPLATE_CACHE_STRONG);
    cache_storage_soft = configuration.getInt("ambra.platform.template_cache.soft",
            DEFAULT_TEMPLATE_CACHE_SOFT);
    templateUpdateDelay = configuration.getInt("ambra.platform.template_cache.update_delay",
            DEFAULT_TEMPLATE_UPDATE_DELAY);
    String date = configuration.getString("ambra.platform.cisStartDate");
    freemarkerProperties = configuration.subset("ambra.platform.freemarker");
    nedProfileURL = configuration.getString("ned.profile");
    nedRegistrationURL = configuration.getString("ned.registration");

    if (date == null) {
        throw new Exception("Could not find the cisStartDate node in the "
                + "ambra platform configuration.  Make sure the " + "ambra/platform/cisStartDate node exists.");
    }

    try {
        cisStartDate = DateFormat.getDateInstance(DateFormat.SHORT).parse(date);
    } catch (ParseException ex) {
        throw new Exception("Could not parse the cisStartDate value of \"" + date
                + "\" in the ambra platform configuration.  Make sure the cisStartDate is in the "
                + "following format: dd/mm/yyyy", ex);
    }

    loadConfig(configuration);

    processVirtualJournalConfig(configuration);

    // Now that the "journals" Map exists, index that map by Eissn to populate "journalsByEissn".
    if (journals.entrySet() != null && journals.entrySet().size() > 0) {
        for (Entry<String, JournalConfig> e : journals.entrySet()) {
            JournalConfig j = e.getValue();
            journalsByIssn.put(j.getIssn(), j);
        }
    }

    journalUrls = buildUrlMap(journals);
    journalsUrlsByIssn = buildUrlMap(journalsByIssn);

    if (log.isTraceEnabled()) {
        for (Entry<String, JournalConfig> e : journals.entrySet()) {
            JournalConfig j = e.getValue();
            log.trace("Journal: " + e.getKey());
            log.trace("Journal url: " + j.getUrl());
            log.trace("Default Title: " + j.getDefaultTitle());
            log.trace("Default CSS: " + printArray(j.getDefaultCss()));
            log.trace("Default JavaScript: " + printArray(j.getDefaultCss()));
            Map<String, String[]> map = j.getCssFiles();
            for (Entry<String, String[]> entry : map.entrySet()) {
                log.trace("PageName: " + entry.getKey());
                log.trace("CSS FILES: " + printArray(entry.getValue()));
            }
            map = j.getJavaScriptFiles();
            for (Entry<String, String[]> entry : map.entrySet()) {
                log.trace("PageName: " + entry.getKey());
                log.trace("JS FILES: " + printArray(entry.getValue()));
            }

            for (Entry<String, String> entry : j.getTitles().entrySet()) {
                log.trace("PageName: " + entry.getKey());
                log.trace("Title: " + entry.getValue());
            }
        }
        log.trace("Dir Prefix: " + dirPrefix);
        log.trace("SubDir Prefix: " + subdirPrefix);
        log.trace("Host: " + host);
        log.trace("Cas url login: " + casLoginURL);
        log.trace("Case url logout: " + casLogoutURL);
        log.trace("Registration URL: " + registrationURL);
        log.trace("Registration Change Pass URL: " + changePasswordURL);
        log.trace("Registration Change EMail URL: " + changeEmailURL);
        log.trace("DOI Resolver URL: " + doiResolverURL);
        log.trace("Default Journal Name: " + defaultJournalName);
        log.trace("NED Profile URL: " + nedProfileURL);
        log.trace("NED Registration URL: " + nedRegistrationURL);
    }
    if (log.isDebugEnabled()) {
        log.debug("End FreeMarker Configuration Reading");
    }
}

From source file:org.ambraproject.struts2.AmbraFreemarkerConfig.java

/**
 * Constructor that loads the list of css and javascript files and page titles for pages which
 * follow the standard templates.  Creates its own composite configuration by iterating over each
 * of the configs in the config to assemble a union of pages defined.
 * @param configuration Ambra configuration
 * @throws Exception Exception/*www  . ja v a 2  s  .c o m*/
 *
 */
public AmbraFreemarkerConfig(Configuration configuration) throws Exception {
    if (log.isDebugEnabled()) {
        log.debug("Creating FreeMarker configuration");
    }
    dojoDebug = configuration.getBoolean("struts.devMode");
    dirPrefix = configuration.getString("ambra.platform.appContext");
    subdirPrefix = configuration.getString("ambra.platform.resourceSubDir");
    host = configuration.getString("ambra.platform.host");
    casLoginURL = configuration.getString("ambra.services.cas.url.login");
    casLogoutURL = configuration.getString("ambra.services.cas.url.logout");
    registrationURL = configuration.getString("ambra.services.registration.url.registration");
    changePasswordURL = configuration.getString("ambra.services.registration.url.change-password");
    changeEmailURL = configuration.getString("ambra.services.registration.url.change-email");
    doiResolverURL = configuration.getString("ambra.services.crossref.plos.doiurl");
    pubGetURL = configuration.getString("ambra.services.pubget.url");
    defaultJournalName = configuration.getString(DEFAULT_JOURNAL_NAME_CONFIG_KEY);
    journals = new HashMap<String, JournalConfig>();
    journalsByIssn = new HashMap<String, JournalConfig>();
    orgName = configuration.getString("ambra.platform.name");
    feedbackEmail = configuration.getString("ambra.platform.email.feedback");
    cache_storage_strong = configuration.getInt("ambra.platform.template_cache.strong",
            DEFAULT_TEMPLATE_CACHE_STRONG);
    cache_storage_soft = configuration.getInt("ambra.platform.template_cache.soft",
            DEFAULT_TEMPLATE_CACHE_SOFT);
    templateUpdateDelay = configuration.getInt("ambra.platform.template_cache.update_delay",
            DEFAULT_TEMPLATE_UPDATE_DELAY);
    String date = configuration.getString("ambra.platform.cisStartDate");
    freemarkerProperties = configuration.subset("ambra.platform.freemarker");

    if (date == null) {
        throw new Exception("Could not find the cisStartDate node in the "
                + "ambra platform configuration.  Make sure the " + "ambra/platform/cisStartDate node exists.");
    }

    try {
        cisStartDate = DateFormat.getDateInstance(DateFormat.SHORT).parse(date);
    } catch (ParseException ex) {
        throw new Exception("Could not parse the cisStartDate value of \"" + date
                + "\" in the ambra platform configuration.  Make sure the cisStartDate is in the "
                + "following format: dd/mm/yyyy", ex);
    }

    loadConfig(configuration);

    processVirtualJournalConfig(configuration);

    // Now that the "journals" Map exists, index that map by Eissn to populate "journalsByEissn".
    if (journals.entrySet() != null && journals.entrySet().size() > 0) {
        for (Entry<String, JournalConfig> e : journals.entrySet()) {
            JournalConfig j = e.getValue();
            journalsByIssn.put(j.getIssn(), j);
        }
    }

    if (log.isTraceEnabled()) {
        for (Entry<String, JournalConfig> e : journals.entrySet()) {
            JournalConfig j = e.getValue();
            log.trace("Journal: " + e.getKey());
            log.trace("Journal url: " + j.getUrl());
            log.trace("Default Title: " + j.getDefaultTitle());
            log.trace("Default CSS: " + printArray(j.getDefaultCss()));
            log.trace("Default JavaScript: " + printArray(j.getDefaultCss()));
            Map<String, String[]> map = j.getCssFiles();
            for (Entry<String, String[]> entry : map.entrySet()) {
                log.trace("PageName: " + entry.getKey());
                log.trace("CSS FILES: " + printArray(entry.getValue()));
            }
            map = j.getJavaScriptFiles();
            for (Entry<String, String[]> entry : map.entrySet()) {
                log.trace("PageName: " + entry.getKey());
                log.trace("JS FILES: " + printArray(entry.getValue()));
            }

            for (Entry<String, String> entry : j.getTitles().entrySet()) {
                log.trace("PageName: " + entry.getKey());
                log.trace("Title: " + entry.getValue());
            }
        }
        log.trace("Dir Prefix: " + dirPrefix);
        log.trace("SubDir Prefix: " + subdirPrefix);
        log.trace("Host: " + host);
        log.trace("Cas url login: " + casLoginURL);
        log.trace("Case url logout: " + casLogoutURL);
        log.trace("Registration URL: " + registrationURL);
        log.trace("Registration Change Pass URL: " + changePasswordURL);
        log.trace("Registration Change EMail URL: " + changeEmailURL);
        log.trace("DOI Resolver URL: " + doiResolverURL);
        log.trace("PubGet URL:" + pubGetURL);
        log.trace("Default Journal Name: " + defaultJournalName);
    }
    if (log.isDebugEnabled()) {
        log.debug("End FreeMarker Configuration Reading");
    }
}

From source file:org.apache.atlas.ApplicationProperties.java

public static Configuration getSubsetConfiguration(Configuration inConf, String prefix) {
    return inConf.subset(prefix);
}

From source file:org.apache.atlas.ApplicationPropertiesTest.java

@Test
//variable substitutions should work with subset configuration as well
public void testSubset() throws Exception {
    Configuration configuration = ApplicationProperties.get(ApplicationProperties.APPLICATION_PROPERTIES);
    Configuration subConfiguration = configuration.subset("atlas");

    assertEquals(subConfiguration.getString("service"), "atlas");
    String data = System.getProperty("user.dir") + "/target/data";
    assertEquals(subConfiguration.getString("data"), data);
    assertEquals(subConfiguration.getString("graph.data"), data + "/graph");
}

From source file:org.apache.atlas.web.security.AtlasADAuthenticationProvider.java

private void setADProperties() {
    try {//w  w w.j  av a2 s  . co  m

        Configuration configuration = ApplicationProperties.get();
        Properties properties = ConfigurationConverter
                .getProperties(configuration.subset("atlas.authentication.method.ldap.ad"));
        this.adDomain = properties.getProperty("domain");
        this.adURL = properties.getProperty("url");
        this.adBindDN = properties.getProperty("bind.dn");
        this.adBindPassword = properties.getProperty("bind.password");
        this.adUserSearchFilter = properties.getProperty("user.searchfilter");
        this.adBase = properties.getProperty("base.dn");
        this.adReferral = properties.getProperty("referral");
        this.adDefaultRole = properties.getProperty("default.role");

        this.groupsFromUGI = configuration.getBoolean("atlas.authentication.method.ldap.ugi-groups", true);

        if (LOG.isDebugEnabled()) {
            LOG.debug("AtlasADAuthenticationProvider{" + "adURL='" + adURL + '\'' + ", adDomain='" + adDomain
                    + '\'' + ", adBindDN='" + adBindDN + '\'' + ", adUserSearchFilter='" + adUserSearchFilter
                    + '\'' + ", adBase='" + adBase + '\'' + ", adReferral='" + adReferral + '\''
                    + ", adDefaultRole='" + adDefaultRole + '\'' + ", groupsFromUGI=" + groupsFromUGI + '}');
        }

    } catch (Exception e) {
        LOG.error("Exception while setADProperties", e);
    }
}

From source file:org.apache.atlas.web.security.AtlasLdapAuthenticationProvider.java

private void setLdapProperties() {
    try {/*from w ww  .  j  av  a2s.c o m*/
        Configuration configuration = ApplicationProperties.get();
        Properties properties = ConfigurationConverter
                .getProperties(configuration.subset("atlas.authentication.method.ldap"));
        ldapURL = properties.getProperty("url");
        ldapUserDNPattern = properties.getProperty("userDNpattern");
        ldapGroupSearchBase = properties.getProperty("groupSearchBase");
        ldapGroupSearchFilter = properties.getProperty("groupSearchFilter");
        ldapGroupRoleAttribute = properties.getProperty("groupRoleAttribute");
        ldapBindDN = properties.getProperty("bind.dn");
        ldapBindPassword = properties.getProperty("bind.password");
        ldapDefaultRole = properties.getProperty("default.role");
        ldapUserSearchFilter = properties.getProperty("user.searchfilter");
        ldapReferral = properties.getProperty("referral");
        ldapBase = properties.getProperty("base.dn");
        groupsFromUGI = configuration.getBoolean("atlas.authentication.method.ldap.ugi-groups", true);

        if (LOG.isDebugEnabled()) {
            LOG.debug("AtlasLdapAuthenticationProvider{" + "ldapURL='" + ldapURL + '\''
                    + ", ldapUserDNPattern='" + ldapUserDNPattern + '\'' + ", ldapGroupSearchBase='"
                    + ldapGroupSearchBase + '\'' + ", ldapGroupSearchFilter='" + ldapGroupSearchFilter + '\''
                    + ", ldapGroupRoleAttribute='" + ldapGroupRoleAttribute + '\'' + ", ldapBindDN='"
                    + ldapBindDN + '\'' + ", ldapDefaultRole='" + ldapDefaultRole + '\''
                    + ", ldapUserSearchFilter='" + ldapUserSearchFilter + '\'' + ", ldapReferral='"
                    + ldapReferral + '\'' + ", ldapBase='" + ldapBase + '\'' + ", groupsFromUGI="
                    + groupsFromUGI + '}');
        }

    } catch (Exception e) {
        LOG.error("Exception while setLdapProperties", e);
    }

}

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;
        }//ww w . ja  va2 s.  c o 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;
}

From source file:org.apache.marmotta.platform.core.services.modules.ModuleServiceImpl.java

/**
 * Return a list of admin pages (links)/* www  .jav a 2s  .c  o m*/
 * @param moduleName
 * @return
 */
@Override
public List<String> getAdminPages(String moduleName) {
    Configuration config = getModuleConfiguration(moduleName).getConfiguration();
    if (config != null) {
        if (!config.subset("adminpage.").isEmpty()) {
            ArrayList<String> l = new ArrayList<String>();
            while (config.getString("adminpage." + l.size() + ".link") != null) {
                l.add(config.getString("adminpage." + l.size() + ".link"));
            }
            return l;
        } else
            return ImmutableList.copyOf(config.getStringArray("adminpages"));
    } else
        return null;
}

From source file:org.apache.marmotta.platform.core.services.modules.ModuleServiceImpl.java

/**
 * returns  more complex admin page description
 * @param moduleName//from   w w w. j av  a2  s.  co  m
 * @return
 */
@Override
public List<HashMap<String, String>> getAdminPageObjects(String moduleName) {
    Configuration config = getModuleConfiguration(moduleName).getConfiguration();
    if (config != null) {
        ArrayList<HashMap<String, String>> l = new ArrayList<HashMap<String, String>>();
        if (!config.subset("adminpage").isEmpty()) {
            while (config.getString("adminpage." + l.size() + ".link") != null) {
                HashMap<String, String> map = new HashMap<String, String>();
                map.put("link",
                        config.getString("baseurl") + config.getString("adminpage." + l.size() + ".link"));
                map.put("title", config.getString("adminpage." + l.size() + ".title"));
                l.add(map);
            }
        } else {
            for (String path : config.getStringArray("adminpages")) {
                HashMap<String, String> map = new HashMap<String, String>();
                map.put("link", config.getString("baseurl") + path);
                String title;
                if (path.lastIndexOf(".") > path.lastIndexOf("/") + 1)
                    title = path.substring(path.lastIndexOf("/") + 1, path.lastIndexOf(".")).replaceAll("_",
                            " ");
                else
                    title = path.substring(path.lastIndexOf("/") + 1);
                map.put("title", title);
                l.add(map);
            }
        }
        return l;
    } else
        return null;
}

From source file:org.apache.metron.alerts.TelemetryAlertsBolt.java

/**
 * @param config//w  w w .j a va2s  .  c  om
 *            A class for generating custom metrics into graphite
 * @return Instance of this class
 */

public TelemetryAlertsBolt withMetricConfiguration(Configuration config) {
    this.metricConfiguration = JSONEncoderHelper.getJSON(config.subset("org.apache.metron.metrics"));
    return this;
}