Example usage for org.apache.commons.configuration HierarchicalConfiguration getString

List of usage examples for org.apache.commons.configuration HierarchicalConfiguration getString

Introduction

In this page you can find the example usage for org.apache.commons.configuration HierarchicalConfiguration getString.

Prototype

public String getString(String key) 

Source Link

Usage

From source file:org.apache.james.modules.mailbox.ListenerConfiguration.java

public static ListenerConfiguration from(HierarchicalConfiguration configuration) {
    String listenerClass = configuration.getString("class");
    Preconditions.checkState(!Strings.isNullOrEmpty(listenerClass), "class name is mandatory");
    Optional<Boolean> isAsync = Optional.ofNullable(configuration.getBoolean("async", null));
    return new ListenerConfiguration(listenerClass, extractSubconfiguration(configuration), isAsync);
}

From source file:org.apache.james.repository.file.AbstractFileRepository.java

public void configure(HierarchicalConfiguration configuration) throws ConfigurationException {
    destination = configuration.getString("[@destinationURL]");
}

From source file:org.apache.james.smtpserver.MailPriorityHandler.java

@Override
public void init(Configuration config) throws ConfigurationException {
    List<HierarchicalConfiguration> entries = ((HierarchicalConfiguration) config)
            .configurationsAt("priorityEntries.priorityEntry");
    for (HierarchicalConfiguration prioConf : entries) {
        String domain = prioConf.getString("domain");
        int prio = prioConf.getInt("priority", MailPrioritySupport.NORMAL_PRIORITY);
        if (prio > MailPrioritySupport.HIGH_PRIORITY || prio < MailPrioritySupport.LOW_PRIORITY) {
            throw new ConfigurationException("configured priority must be >= "
                    + MailPrioritySupport.LOW_PRIORITY + " and <= " + MailPrioritySupport.HIGH_PRIORITY);
        }//w  w w.j  a  va  2  s.c  o  m
        prioMap.put(domain, prio);
    }
}

From source file:org.apache.james.user.file.UsersFileRepository.java

/**
 * @see org.apache.james.user.lib.AbstractJamesUsersRepository#doConfigure(org.apache.commons.configuration.HierarchicalConfiguration)
 *///from   www . j  a  v  a  2  s.  com
protected void doConfigure(HierarchicalConfiguration configuration) throws ConfigurationException {
    super.doConfigure(configuration);
    destination = configuration.getString("destination.[@URL]");

    String urlSeparator = "/";
    if (!destination.endsWith(urlSeparator)) {
        destination += urlSeparator;
    }
}

From source file:org.apache.james.user.ldap.ReadOnlyLDAPGroupRestriction.java

/**
 * Initialises an instance from the contents of a
 * <code>&lt;restriction&gt;<code> configuration XML
 * element.//w  w w.  j  a  v a  2  s. co m
 *
 * @param configuration The avalon configuration instance that encapsulates the
 *                      contents of the <code>&lt;restriction&gt;<code> XML element.
 * @throws org.apache.commons.configuration.ConfigurationException
 *          If an error occurs extracting values from the configuration
 *          element.
 */
public ReadOnlyLDAPGroupRestriction(HierarchicalConfiguration configuration) {
    groupDNs = new ArrayList<String>();

    if (configuration != null) {
        memberAttribute = configuration.getString("[@memberAttribute]");

        if (configuration.getKeys("group").hasNext()) {
            Collections.addAll(groupDNs, configuration.getStringArray("group"));
        }
    }
}

From source file:org.apache.james.utils.InMemoryMailRepositoryStore.java

private void readConfigurationEntry(HierarchicalConfiguration repositoryConfiguration)
        throws ConfigurationException {
    String className = repositoryConfiguration.getString("[@class]");
    MailRepositoryProvider usedMailRepository = mailRepositories.stream()
            .filter(mailRepositoryProvider -> mailRepositoryProvider.canonicalName().equals(className))
            .findAny().orElseThrow(() -> new ConfigurationException(
                    "MailRepository " + className + " has not been registered"));
    for (String protocol : repositoryConfiguration.getStringArray("protocols.protocol")) {
        protocolToRepositoryProvider.put(protocol, usedMailRepository);
        registerRepositoryDefaultConfiguration(repositoryConfiguration, protocol);
    }/*from  w  w w.j  av  a 2s . co  m*/
}

From source file:org.apereo.lap.model.PipelineConfig.java

public static PipelineConfig makeConfigFromXML(ConfigurationService configurationService,
        StorageService storage, XMLConfiguration xmlConfig) {
    PipelineConfig pc = new PipelineConfig();
    pc.filename = xmlConfig.getFileName();
    pc.name = xmlConfig.getString("name");
    pc.type = xmlConfig.getString("type");
    pc.description = xmlConfig.getString("description");
    // special handling for stats metadata
    HierarchicalConfiguration stats = xmlConfig.configurationAt("stats");
    Iterator<String> statsKeys = stats.getKeys();
    while (statsKeys.hasNext()) {
        String next = statsKeys.next();
        try {/*from   w  w  w .j ava2s.  co  m*/
            Float f = stats.getFloat(next);
            pc.stats.put(next, f);
        } catch (Exception e) {
            // skip this float and warn
            logger.warn("Unable to get float from " + next + " <stats> field (skipping it): " + e);
        }
    }

    // load the lists
    // sources
    List<HierarchicalConfiguration> sourceFields = xmlConfig.configurationsAt("sources.source");
    for (HierarchicalConfiguration field : sourceFields) {
        try {
            pc.addInputHandlerField(field.getString("type"), field, configurationService, storage);
        } catch (Exception e) {
            // skip this input and warn
            logger.warn("Unable to load input field (" + field.toString() + ") (skipping it): " + e);
        }
    }

    // load the lists
    // inputs
    List<HierarchicalConfiguration> inputFields = xmlConfig.configurationsAt("inputs.fields.field");
    for (HierarchicalConfiguration field : inputFields) {
        try {
            pc.addInputField(InputField.make(field.getString("name"), field.getBoolean("required", false)));
        } catch (Exception e) {
            // skip this input and warn
            logger.warn("Unable to load input field (" + field.toString() + ") (skipping it): " + e);
        }
    }
    // processors
    List<HierarchicalConfiguration> processors = xmlConfig.configurationsAt("processors.processor");
    for (HierarchicalConfiguration processor : processors) {
        try {
            String pType = processor.getString("type");
            Processor.ProcessorType pt = Processor.ProcessorType.fromString(pType); // IllegalArgumentException if invalid
            if (pt == Processor.ProcessorType.KETTLE_JOB) {
                pc.addProcessor(
                        Processor.makeKettleJob(processor.getString("name"), processor.getString("file")));
            } else if (pt == Processor.ProcessorType.KETTLE_TRANSFORM) {
                pc.addProcessor(Processor.makeKettleTransform(processor.getString("name"),
                        processor.getString("file")));
            } else if (pt == Processor.ProcessorType.KETTLE_DATA) {
                Processor p = new Processor();
                p.type = Processor.ProcessorType.KETTLE_DATA;
                p.name = processor.getString("name");
                p.count = processor.getInt("count");
                pc.addProcessor(p);
                logger.warn("KETTLE DATA processor loaded (" + p.toString() + ")");
            } // Add other types here as needed
        } catch (Exception e) {
            // skip this processor and warn
            logger.warn("Unable to load processor (" + processor.toString() + ") (skipping it): " + e);
        }
    }
    // outputs
    List<HierarchicalConfiguration> outputs = xmlConfig.configurationsAt("outputs.output");
    for (HierarchicalConfiguration output : outputs) {

        // TODO - we need to rethink output handling
        // don't want to add code every time we need to support a new output type
        try {
            String oType = output.getString("type");
            Output.OutputType ot = Output.OutputType.fromString(oType); // IllegalArgumentException if invalid
            if (ot == Output.OutputType.CSV) {
                Output o = Output.makeCSV(output.getString("from"), output.getString("filename"));
                // load the output fields
                List<HierarchicalConfiguration> outputFields = output.configurationsAt("fields.field");
                for (HierarchicalConfiguration outputField : outputFields) {
                    o.addFieldCSV(outputField.getString("source"), outputField.getString("header"));
                }
                pc.addOutput(o);
            } else if (ot == Output.OutputType.STORAGE) {
                Output o = Output.makeStorage(output.getString("from"), output.getString("to"));
                // load the output fields
                List<HierarchicalConfiguration> outputFields = output.configurationsAt("fields.field");
                for (HierarchicalConfiguration outputField : outputFields) {
                    o.addFieldStorage(outputField.getString("source"), outputField.getString("target"));
                }
                pc.addOutput(o);
            } else if (ot == Output.OutputType.SSPEARLYALERT) {
                Output o = new Output();
                o.type = Output.OutputType.SSPEARLYALERT;
                o.from = output.getString("from");
                o.to = output.getString("to");

                List<HierarchicalConfiguration> outputFields = output.configurationsAt("fields.field");
                for (HierarchicalConfiguration outputField : outputFields) {
                    OutputField field = new OutputField(o.type, outputField.getString("source"),
                            outputField.getString("target"), null);
                    o.fields.add(field);
                }
                pc.addOutput(o);
            }
            // Add other types here as needed
        } catch (Exception e) {
            // skip this processor and warn
            logger.warn("Unable to load output (" + output.toString() + ") (skipping it): " + e);
        }
    }
    return pc;
}

From source file:org.apereo.lap.services.CSVInputHandlerService.java

public void init(HierarchicalConfiguration xmlConfig) {
    super.init();

    // load the lists
    // sources//  w  w  w.java  2  s. c  o  m
    List<HierarchicalConfiguration> sourceFields = xmlConfig.configurationsAt("params.files.file");
    for (HierarchicalConfiguration field : sourceFields) {
        try {
            files.put(field.getString("type"), field.getString("path"));
        } catch (Exception e) {
            // skip this input and warn
            logger.warn("Unable to load input field (" + field.toString() + ") (skipping it): " + e);
        }
    }
}

From source file:org.bgp4j.config.nodes.impl.CapabilitiesParser.java

private void parseMultiprotocolCapabilities(List<HierarchicalConfiguration> capabilityConfigs,
        CapabilitiesImpl caps) throws ConfigurationException {
    for (HierarchicalConfiguration config : capabilityConfigs) {
        try {/*  www . jav  a 2 s.co m*/
            MultiProtocolCapability mp = new MultiProtocolCapability(
                    AddressFamily.fromString(config.getString("[@addressFamily]")),
                    SubsequentAddressFamily.fromString(config.getString("[@subsequentAddressFamily]")));

            if (config.getBoolean("[@optional]", false))
                caps.addOptionalCapability(mp);
            else
                caps.addRequiredCapability(mp);
        } catch (IllegalArgumentException e) {
            throw new ConfigurationException(e);
        }
    }
}

From source file:org.bgp4j.config.nodes.impl.CapabilitiesParser.java

private void parseOutboundRouteFilteringCapabilities(List<HierarchicalConfiguration> capabilityConfigs,
        CapabilitiesImpl caps) throws ConfigurationException {
    for (HierarchicalConfiguration config : capabilityConfigs) {
        try {/*w ww . ja v  a2s  .c  om*/
            Map<ORFType, ORFSendReceive> filters = new HashMap<ORFType, ORFSendReceive>();

            for (HierarchicalConfiguration entryConfig : config.configurationsAt("Entry")) {
                filters.put(ORFType.fromString(entryConfig.getString("[@type]")),
                        ORFSendReceive.fromString(entryConfig.getString("[@direction]")));
            }

            if (filters.size() == 0)
                throw new ConfigurationException("filter type/direction pair required");

            OutboundRouteFilteringCapability orfc = new OutboundRouteFilteringCapability(
                    AddressFamily.fromString(config.getString("[@addressFamily]")),
                    SubsequentAddressFamily.fromString(config.getString("[@subsequentAddressFamily]")),
                    filters);

            if (config.getBoolean("[@optional]", false))
                caps.addOptionalCapability(orfc);
            else
                caps.addRequiredCapability(orfc);
        } catch (IllegalArgumentException e) {
            throw new ConfigurationException(e);
        }
    }
}