Example usage for org.apache.commons.configuration CompositeConfiguration addConfiguration

List of usage examples for org.apache.commons.configuration CompositeConfiguration addConfiguration

Introduction

In this page you can find the example usage for org.apache.commons.configuration CompositeConfiguration addConfiguration.

Prototype

public void addConfiguration(Configuration config) 

Source Link

Document

Add a configuration.

Usage

From source file:com.dattack.dbtools.drules.engine.DefaultNotificationActionBeanVisitor.java

private void sendMail(final ConfigurationSmtpBean config, final NotificationActionSendMailBean action)
        throws EmailException, AddressException, ConfigurationException, TemplateException, IOException {

    if (config == null) {
        LOGGER.warn("Missing SMTP configuration. Please, check your configuration file.");
        return;//  w  w  w. j  av  a 2  s .  com
    }

    final CompositeConfiguration configuration = new CompositeConfiguration();
    configuration.addConfiguration(ThreadContext.getInstance().getConfiguration());
    configuration.setDelimiterParsingDisabled(true);
    configuration.setProperty(PropertyNames.TASK_NAME, flightRecorder.getTaskBean().getName());
    configuration.setProperty(PropertyNames.LOG, flightRecorder.getReport().toString());
    configuration.setProperty(PropertyNames.SUCCESS_ROWS, flightRecorder.getSuccessCounter());
    configuration.setProperty(PropertyNames.ERROR_ROWS, flightRecorder.getErrorCounter());
    configuration.setProperty(PropertyNames.WARNING_ROWS, flightRecorder.getWarningCounter());

    for (final ConfigurationMailingListBean item : config.getMailingLists()) {
        configuration.setProperty(item.getName(), item.getAddressList());
    }

    final HtmlEmailBuilder htmlEmailBuilder = new HtmlEmailBuilder() //
            .withHostName(ConfigurationUtil.interpolate(config.getHostname(), configuration)) //
            .withPort(config.getPort()) //
            .withUsername(ConfigurationUtil.interpolate(config.getUsername(), configuration)) //
            .withPassword(ConfigurationUtil.interpolate(config.getPassword(), configuration)) //
            .withFrom(ConfigurationUtil.interpolate(config.getFrom(), configuration)) //
            .withSubject(ConfigurationUtil.interpolate(action.getSubject(), configuration)) //
            .withMessage(formatMessage(action, configuration)) //
            .withSslOnConnect(config.isSslOnConnect()) //
            .withStartTlsEnabled(config.isStartTlsEnabled()); //

    for (final String to : action.getToAddressesList()) {
        final String[] addresses = StringUtils.split(ConfigurationUtil.interpolate(to, configuration), " ,");
        for (final String item : addresses) {
            htmlEmailBuilder.withToAddress(new InternetAddress(item));
        }
    }

    htmlEmailBuilder.build().send();
}

From source file:com.blazebit.jbake.mojo.BuildMojo.java

protected CompositeConfiguration createConfiguration() throws ConfigurationException {
    final CompositeConfiguration config = new CompositeConfiguration();

    if (properties != null) {
        config.addConfiguration(new MapConfiguration(properties));
    }//from ww w. ja v a 2s . com
    config.addConfiguration(new MapConfiguration(project.getProperties()));
    config.addConfiguration(ConfigUtil.load(inputDirectory));

    if (getLog().isDebugEnabled()) {
        getLog().debug("Configuration:");

        Iterator<String> iter = config.getKeys();
        while (iter.hasNext()) {
            String key = iter.next();
            getLog().debug(key + ": " + config.getString(key));
        }
    }

    return config;
}

From source file:com.dattack.dbtools.drules.engine.ThreadContext.java

/**
 * Sets the initial configuration to use.
 *
 * @param configuration/*from w  w  w  . j a v  a2 s  .c om*/
 *            the initial configuration
 */
public void setInitialConfiguration(final Configuration configuration) {

    if (internalConfiguration != null) {
        LOGGER.warn("InitialConfiguration ");
    }

    final CompositeConfiguration compositeConfiguration = new CompositeConfiguration();
    compositeConfiguration.setDelimiterParsingDisabled(true);
    compositeConfiguration.addConfiguration(new SystemConfiguration());
    if (configuration != null) {
        compositeConfiguration.addConfiguration(configuration);
    }
    internalConfiguration = new MapConfiguration(new HashMap<String, Object>());
    internalConfiguration.copy(compositeConfiguration);
}

From source file:com.manydesigns.portofino.modules.MailModule.java

@Override
public void init() {
    CompositeConfiguration mailConfiguration = new CompositeConfiguration();
    mailConfiguration.addConfiguration(configuration);
    try {//  w  ww .  j a va  2s  .  c  om
        mailConfiguration
                .addConfiguration(new PropertiesConfiguration(getClass().getResource("mail.properties")));
    } catch (ConfigurationException e) {
        logger.error("Could not load mail configuration defaults");
    }
    mailQueueSetup = new MailQueueSetup(mailConfiguration);
    mailQueueSetup.setup();

    SimpleMenuAppender group = SimpleMenuAppender.group("mail", null, "Mail", 4.0);
    adminMenu.menuAppenders.add(group);

    SimpleMenuAppender link = SimpleMenuAppender.link("mail", "Mail", null, "Mail",
            MailSettingsAction.URL_BINDING, 1.0);
    adminMenu.menuAppenders.add(link);

    servletContext.setAttribute(MAIL_CONFIGURATION, mailQueueSetup.getMailConfiguration());

    MailQueue mailQueue = mailQueueSetup.getMailQueue();
    if (mailQueue == null) {
        logger.info("Mail queue not enabled");
        return;
    }

    servletContext.setAttribute(MAIL_QUEUE, mailQueue);
    servletContext.setAttribute(MAIL_SENDER, mailQueueSetup.getMailSender());

    status = ModuleStatus.ACTIVE;
}

From source file:com.caricah.iotracah.bootstrap.runner.impl.DefaultRunner.java

/**
 * Initializes this instance.//ww  w.java2 s  .  com
 * <p>
 * This method should be called once the JVM process is created and the
 * <code>Runner</code> instance is created thru its empty public
 * constructor.
 * </p>
 * <p>
 * Apart from set up and allocation of native resources, this method
 * does not start actual operation of <code>Runner</code> (such
 * as starting threads.) as it would impose serious security hazards. The
 * start of operation must be performed in the <code>start()</code>
 * method.
 * </p>
 *
 * @throws UnRetriableException Any exception preventing a successful
 *                              initialization.
 */
@Override
public void init() throws UnRetriableException {

    log.trace(" init : initializing system configurations");

    //First load the system settings as the defaults.
    CompositeConfiguration configuration = new CompositeConfiguration();
    configuration.addConfiguration(new SystemConfiguration());

    setConfiguration(configuration);

    log.info(" init : {} set to : {}", "iotracah.pidfile", System.getProperty("iotracah.pidfile"));
    log.info(" init : {} set to : {}", "iotracah.default.path.home",
            System.getProperty("iotracah.default.path.home"));
    log.info(" init : {} set to : {}", "iotracah.default.path.logs",
            System.getProperty("iotracah.default.path.logs"));
    log.info(" init : {} set to : {}", "iotracah.default.path.data",
            System.getProperty("iotracah.default.path.data"));
    log.info(" init : {} set to : {}", "iotracah.default.path.conf",
            System.getProperty("iotracah.default.path.conf"));

    for (ConfigHandler configHandler : getConfigurationSetLoader()) {

        log.debug(" init : found the configuration handler {} ", configHandler);

        Configuration newConfigs = configHandler.populateConfiguration(getConfiguration());
        setConfiguration(newConfigs);
    }

    for (LogHandler logHandler : getLogSetLoader()) {

        log.debug(" init : Configuring logging using handler {} ", logHandler);

        logHandler.configure(getConfiguration());

    }

}

From source file:com.germinus.easyconf.AggregatedProperties.java

private void addIncludedPropertiesSources(Configuration newConf, CompositeConfiguration loadedConf) {
    CompositeConfiguration tempConf = new CompositeConfiguration();
    tempConf.addConfiguration(prefixedSystemConfiguration);
    tempConf.addConfiguration(newConf);//from w w w.  j a  va 2s .c o m
    tempConf.addConfiguration(systemConfiguration);
    tempConf.addProperty(Conventions.COMPANY_ID_PROPERTY, companyId);
    tempConf.addProperty(Conventions.COMPONENT_NAME_PROPERTY, componentName);
    String[] fileNames = tempConf.getStringArray(Conventions.INCLUDE_PROPERTY);
    for (int i = fileNames.length - 1; i >= 0; i--) {
        String iteratedFileName = fileNames[i];
        addPropertiesSource(iteratedFileName, loadedConf);
    }
}

From source file:com.caricah.iotracah.bootstrap.system.handler.impl.DefaultConfigHandler.java

/**
 * All system configurations providers are loaded via spi
 * and are given the configurations the system already has.
 * They are further expected to provide their configurations in
 * and additive way. Since the order of loading the configs is not
 * guranteed all the setting keys should be uniquely identified
 * and that task is left to the implementations to enforce.
 *
 * @param configuration/*from  w  w w  .j  a v  a  2 s.  c o  m*/
 * @return
 * @throws UnRetriableException
 */
@Override
public Configuration populateConfiguration(Configuration configuration) throws UnRetriableException {

    try {
        String configDirectory = getConfigurationDirectory();

        log.debug(" populateConfiguration : obtained config directory - {}", configDirectory);

        Path configurationFile = getConfigurationFileInDirectory(configDirectory);

        if (null == configurationFile) {

            configurationFile = ResourceFileUtil.getFileFromResource(getClass(), getConfigurationFileName())
                    .toPath();

        }

        if (configuration instanceof CompositeConfiguration) {
            ((CompositeConfiguration) configuration)
                    .addConfiguration(new PropertiesConfiguration(configurationFile.toFile()));
            return configuration;
        } else {
            CompositeConfiguration compositeConfiguration = new CompositeConfiguration();

            if (null != configuration) {
                compositeConfiguration.addConfiguration(configuration);
            }

            compositeConfiguration.addConfiguration(new PropertiesConfiguration(configurationFile.toFile()));
            return compositeConfiguration;
        }

    } catch (IOException | ConfigurationException e) {
        log.error(" getConfiguration : ", e);
        throw new UnRetriableException(e);
    }

}

From source file:com.dattack.dbcopy.engine.DbCopyJob.java

public void execute() {

    LOGGER.info("Running job '{}' at thread '{}'", dbcopyJobBean.getId(), Thread.currentThread().getName());

    final List<Future<?>> futureList = new ArrayList<>();

    final DbCopyJobResult jobResult = new DbCopyJobResult(dbcopyJobBean);
    MBeanHelper.registerMBean("com.dattack.dbcopy:type=JobResult,name=" + dbcopyJobBean.getId(), jobResult);

    final RangeVisitor rangeVisitor = new RangeVisitor() {

        @Override//from  w ww. j  a v  a 2s . c om
        public void visite(final IntegerRangeBean bean) {

            for (int i = bean.getLowValue(); i < bean.getHighValue(); i += bean.getBlockSize()) {

                final int lowValue = i;
                final int highValue = i + bean.getBlockSize();

                final BaseConfiguration baseConfiguration = new BaseConfiguration();
                baseConfiguration.setProperty(bean.getId() + ".low", lowValue);
                baseConfiguration.setProperty(bean.getId() + ".high", highValue);

                final CompositeConfiguration configuration = new CompositeConfiguration();
                configuration.addConfiguration(externalConfiguration);
                configuration.addConfiguration(ConfigurationUtil.createEnvSystemConfiguration());
                configuration.addConfiguration(baseConfiguration);

                final String taskName = String.format("Task_%d_%d", lowValue, highValue);

                final DbCopyTask dbcopyTask = new DbCopyTask(dbcopyJobBean, configuration,
                        jobResult.createTaskResult(taskName));
                futureList.add(executionController.submit(dbcopyTask));
            }
        }

        @Override
        public void visite(final NullRangeBean bean) {

            final String taskName = "SingleTask";
            final CompositeConfiguration configuration = new CompositeConfiguration();
            configuration.addConfiguration(externalConfiguration);
            configuration.addConfiguration(ConfigurationUtil.createEnvSystemConfiguration());

            final DbCopyTask dbcopyTask = new DbCopyTask(dbcopyJobBean, configuration,
                    jobResult.createTaskResult(taskName));
            futureList.add(executionController.submit(dbcopyTask));
        }
    };

    if (dbcopyJobBean.getRangeBean() == null || dbcopyJobBean.getRangeBean().isEmpty()) {
        new NullRangeBean().accept(rangeVisitor);
    } else {
        for (final AbstractRangeBean item : dbcopyJobBean.getRangeBean()) {
            item.accept(rangeVisitor);
        }
    }

    executionController.shutdown();
    showFutures(futureList);

    show(jobResult);

    LOGGER.info("Job finished (job-name: '{}', thread: '{}')", dbcopyJobBean.getId(),
            Thread.currentThread().getName());
}

From source file:com.dattack.dbping.engine.PingEngine.java

private void execute(final File file, final Set<String> taskNames)
        throws ConfigurationException, DattackParserException {

    if (file.isDirectory()) {

        final File[] files = file.listFiles(FilesystemUtils.createFilenameFilterByExtension("xml"));
        if (files != null) {
            for (final File child : files) {
                execute(child, taskNames);
            }//  ww  w .j  a  v  a  2  s  .c  om
        }

    } else {

        final DbpingBean dbpingBean = DbpingParser.parse(file);
        for (final PingTaskBean pingTaskBean : dbpingBean.getTaskList()) {

            if (taskNames != null && !taskNames.isEmpty() && !taskNames.contains(pingTaskBean.getName())) {
                continue;
            }

            final CompositeConfiguration conf = new CompositeConfiguration();
            conf.setProperty("task.name", pingTaskBean.getName());
            conf.addConfiguration(ConfigurationUtil.createEnvSystemConfiguration());

            final DataSource dataSource = new JNDIDataSource(pingTaskBean.getDatasource());

            final SqlCommandProvider sentenceProvider = getSentenceProvider(pingTaskBean.getCommandProvider());
            sentenceProvider.setSentences(pingTaskBean.getSqlStatementList());

            final LogWriter logWriter = new CSVFileLogWriter(
                    ConfigurationUtil.interpolate(pingTaskBean.getLogFile(), conf));

            final LogHeader logHeader = new LogHeader(pingTaskBean);
            logWriter.write(logHeader);

            for (int i = 0; i < pingTaskBean.getThreads(); i++) {
                pool.submit(new PingJob(pingTaskBean, dataSource, sentenceProvider, logWriter),
                        pingTaskBean.getName() + "@Thread-" + i);
            }
        }
    }
}

From source file:com.dattack.dbtools.ping.Ping.java

private void execute(final File file, final Set<String> taskNames)
        throws ConfigurationException, DbpingParserException {

    if (file.isDirectory()) {

        final File[] files = file.listFiles(FilesystemUtils.createFilenameFilterByExtension("xml"));
        if (files != null) {
            for (final File child : files) {
                execute(child, taskNames);
            }//  w ww  .j a  v  a 2 s.co m
        }

    } else {

        final DbpingBean dbpingBean = DbpingParser.parse(file);
        for (final PingTaskBean pingTaskBean : dbpingBean.getTaskList()) {

            if (taskNames != null && !taskNames.isEmpty() && !taskNames.contains(pingTaskBean.getName())) {
                continue;
            }

            final CompositeConfiguration conf = new CompositeConfiguration();
            conf.setProperty("task.name", pingTaskBean.getName());
            conf.addConfiguration(ConfigurationUtil.createEnvSystemConfiguration());

            final DataSource dataSource = new JNDIDataSource(pingTaskBean.getDatasource());

            final SqlCommandProvider sentenceProvider = getSentenceProvider(pingTaskBean.getCommandProvider());
            sentenceProvider.setSentences(pingTaskBean.getSqlStatementList());

            final LogWriter logWriter = new CSVFileLogWriter(
                    ConfigurationUtil.interpolate(pingTaskBean.getLogFile(), conf));

            final LogHeader logHeader = new LogHeader(pingTaskBean);
            logWriter.write(logHeader);

            for (int i = 0; i < pingTaskBean.getThreads(); i++) {
                pool.submit(new PingJob(pingTaskBean, dataSource, sentenceProvider, logWriter),
                        pingTaskBean.getName() + "@Thread-" + i);
            }
        }
    }
}