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, String defaultValue) 

Source Link

Usage

From source file:com.tulskiy.musique.system.configuration.PlaylistConfiguration.java

public static List<Playlist> getPlaylists() {
    ArrayList<Playlist> playlists = new ArrayList<Playlist>();

    Configuration config = Application.getInstance().getConfiguration();

    Iterator pConfs = config.configurationsAt(getPlaylistKey()).iterator();
    while (pConfs.hasNext()) {
        Playlist playlist = new Playlist();
        playlist.setColumns(new LinkedList<PlaylistColumn>());

        HierarchicalConfiguration pConf = (HierarchicalConfiguration) pConfs.next();
        playlist.setName(pConf.getString("name", "Default"));
        playlist.setGroupBy(pConf.getString("groupBy"));
        playlist.setLibraryView(pConf.getBoolean("isLibraryView", false));

        Iterator cConfs = pConf.configurationsAt("columns.column").iterator();
        while (cConfs.hasNext()) {
            PlaylistColumn column = new PlaylistColumn();

            HierarchicalConfiguration cConf = (HierarchicalConfiguration) cConfs.next();
            column.setName(cConf.getString("name"));
            column.setExpression(cConf.getString("expression"));
            column.setSize(cConf.getInt("size"));
            column.setAllign(cConf.getInt("alignment"));

            playlist.getColumns().add(column);
        }// w  w  w  . j  a  va  2s.  c o m

        playlists.add(playlist);
    }

    return playlists;
}

From source file:com.vmware.qe.framework.datadriven.impl.DDHelper.java

private static final List<HierarchicalConfiguration> getData(String className,
        HierarchicalConfiguration context) throws DDException {
    log.info("Getting data for '{}'", className);
    // selecting supplier and getting data
    String supplierType = context.getString(TAG_SUPPLIER_TYPE, null);
    supplierType = supplierType == null/*from  ww w  .ja v a2  s  .  c  o m*/
            ? DDConfig.getSingleton().getData().getString(TAG_SUPPLIER_DEFAULT, null)
            : supplierType;
    DataSupplier supplier = null;
    if (supplierType != null) {
        if (ddCoreConfig.getDataSupplierMap().containsKey(supplierType)) {
            supplier = ddCoreConfig.getDataSupplierMap().get(supplierType);
        } else {
            throw new IllegalArgumentException("Given supplier with name = " + supplierType + " not found");
        }
    } else {
        if (ddCoreConfig.getDataSupplierMap().containsKey(KEY_DEFAULT)) {
            supplier = ddCoreConfig.getDataSupplierMap().get(KEY_DEFAULT);
        } else {
            log.warn(
                    "no supplier selected. could not find default supplier. Using the first avaliable supplier");
            supplier = ddCoreConfig.getDataSuppliers().iterator().next();
        }
    }
    log.info("Supplier used: {}", supplier.getClass().getName());
    final HierarchicalConfiguration testData;
    testData = supplier.getData(className, context);
    if (testData == null) {
        log.warn("no test data found for the given test class = " + className);
        return null;
    }
    // selecting generator and generating dynamic data along with static data.
    List<HierarchicalConfiguration> datas = null;
    boolean dynamicGeneration = context.getBoolean(TAG_GENERATOR_DYNAMIC, false);
    dynamicGeneration = dynamicGeneration ? dynamicGeneration
            : DDConfig.getSingleton().getData().getBoolean(TAG_GENERATOR_DYNAMIC, false);
    if (dynamicGeneration) {
        log.info("Dynamic data generation selected!");
        String generatorType = context.getString(TAG_GENERATOR_TYPE, null);
        generatorType = generatorType == null
                ? DDConfig.getSingleton().getData().getString(TAG_GENERATOR_DEFAULT, null)
                : generatorType;
        DataGenerator dataGenerator = null;

        if (generatorType != null) {
            if (ddCoreConfig.getDataGeneratorMap().containsKey(generatorType)) {
                dataGenerator = ddCoreConfig.getDataGeneratorMap().get(generatorType);
            } else {
                throw new IllegalArgumentException(
                        "Given generator with name = " + generatorType + " not found");
            }
        } else {
            if (ddCoreConfig.getDataGeneratorMap().containsKey(KEY_DEFAULT)) {
                dataGenerator = ddCoreConfig.getDataGeneratorMap().get(KEY_DEFAULT);
            } else {
                log.warn("Could not find default generator, using the first avaliable generator");
                dataGenerator = ddCoreConfig.getDataGenerators().iterator().next();
            }
        }
        log.info("Generator Used: {}", dataGenerator.getClass().getName());
        datas = dataGenerator.generate(testData, context);
        List<HierarchicalConfiguration> staticData = testData.configurationsAt(TAG_DATA);
        for (HierarchicalConfiguration aStaticData : staticData) {
            if (!aStaticData.getBoolean(TAG_AUTOGEN_ATTR, false)) {
                datas.add(aStaticData);
            }
        }
    } else {
        log.info("No Dynamic data generation.");
        datas = testData.configurationsAt(TAG_DATA);
    }
    log.info("Applying filters...");
    List<HierarchicalConfiguration> filteredData = new ArrayList<>();
    for (int i = 0; i < datas.size(); i++) {// for each data we create
        // new test instance.
        HierarchicalConfiguration aTestData = datas.get(i);
        boolean canRun = true;
        for (DataFilter filter : ddCoreConfig.getDataFilters()) {
            if (!filter.canRun(className, aTestData, context)) {
                canRun = false;
                break;
            }
        }
        if (canRun) {
            filteredData.add(aTestData);
        }
    }
    return filteredData;
}

From source file:com.vmware.qe.framework.datadriven.impl.DDHelper.java

/**
 * Method to get the test instances of given test with data.<br>
 * /*ww w  . j a  v a  2 s. co  m*/
 * @param className The test class name.
 * @param context context containing any relevant info.
 * @return Array of test instances.
 * @throws DDException on any issues when getting data.
 */
public static Object[] getTests(String className, HierarchicalConfiguration context) throws DDException {
    List<HierarchicalConfiguration> datas = getData(className, context);
    if (datas == null || datas.isEmpty()) { // not a DD test
        throw new DDException("No test data found for class = " + className);
    }
    String instanceCreatorType = context.getString(TAG_INSTANCE_CREATOR_TYPE, null);
    instanceCreatorType = instanceCreatorType == null
            ? DDConfig.getSingleton().getData().getString(TAG_INSTANCE_CREATOR_DEFAULT, null)
            : instanceCreatorType;
    TestInstanceCreator instanceCreator = null;
    if (instanceCreatorType != null) {
        if (ddCoreConfig.getInstanceCreatorMap().containsKey(instanceCreatorType)) {
            instanceCreator = ddCoreConfig.getInstanceCreatorMap().get(instanceCreatorType);
        } else {
            throw new IllegalArgumentException(
                    "Given instance creator with name = " + instanceCreatorType + " not found");
        }
    } else {
        if (ddCoreConfig.getInstanceCreatorMap().containsKey(KEY_DEFAULT)) {
            instanceCreator = ddCoreConfig.getInstanceCreatorMap().get(KEY_DEFAULT);
        } else {
            log.warn(
                    "no instance creator selected. could not find default instance creator. Using the first avaliable instance creator");
            instanceCreator = ddCoreConfig.getTestInstanceCreators().iterator().next();
        }
    }
    log.info("InstanceCreator used: {}", instanceCreator.getClass().getName());
    String dataInjectorType = context.getString(TAG_DATA_INJECTOR_TYPE, null);
    dataInjectorType = dataInjectorType == null
            ? DDConfig.getSingleton().getData().getString(TAG_DATA_INJECTOR_DEFAULT, null)
            : dataInjectorType;
    DataInjector dataInjector;
    if (dataInjectorType != null) {
        log.info("Injector: {} ", dataInjectorType);
        if (ddCoreConfig.getDataInjectorMap().containsKey(dataInjectorType)) {
            dataInjector = ddCoreConfig.getDataInjectorMap().get(dataInjectorType);
        } else {
            throw new IllegalArgumentException(
                    "Given data injector with name = " + dataInjectorType + " not found");
        }
    } else {
        if (ddCoreConfig.getDataInjectorMap().containsKey(KEY_DEFAULT)) {
            dataInjector = ddCoreConfig.getDataInjectorMap().get(KEY_DEFAULT);
            log.info("Injector used: {}", dataInjector.getClass().getName());
        } else {
            log.warn(
                    "no data injector selected. could not find default data injector. Using the first avaliable data injector");
            dataInjector = ddCoreConfig.getDataInjectors().iterator().next();
        }
    }
    final List<Object> tests = new ArrayList<Object>();
    for (HierarchicalConfiguration aTestData : datas) {
        Object testObj = instanceCreator.newInstance(className, aTestData, context);
        dataInjector.inject(testObj, aTestData, context);
        tests.add(testObj);
    }
    log.info("Number of tests: {}", tests.size());
    return tests.toArray();
}

From source file:com.vmware.qe.framework.datadriven.impl.injector.DataInjectorUsingReflection.java

@Override
public void inject(Object test, HierarchicalConfiguration data, HierarchicalConfiguration context) {
    String propertyName = context.getString(TAG_DATA_INJECTOR_PROPERTY, null);
    propertyName = propertyName == null//from   w  w w. j ava 2  s .  c om
            ? DDConfig.getSingleton().getData().getString(TAG_DATA_INJECTOR_PROPERTY,
                    DATA_INJECTOR_DEFAULT_PROPERTY_NAME)
            : propertyName;
    Class<? extends Object> testClass = test.getClass();
    Field field;
    try {
        field = getField(testClass, propertyName);
        field.setAccessible(true);
        field.set(test, data);
    } catch (SecurityException | IllegalArgumentException | IllegalAccessException e) {
        throw new DDException("Failed to inject data to property with name =" + propertyName, e);
    }
}

From source file:com.norconex.importer.handler.tagger.impl.RenameTagger.java

@Override
protected void loadHandlerFromXML(XMLConfiguration xml) throws IOException {
    List<HierarchicalConfiguration> nodes = xml.configurationsAt("rename");
    for (HierarchicalConfiguration node : nodes) {
        addRename(node.getString("[@fromField]", null), node.getString("[@toField]", null),
                node.getBoolean("[@overwrite]", false));
    }/*from w  w  w.j  a va  2  s . c  om*/
}

From source file:com.commercehub.bamboo.plugins.gitlab.GitLabWebRepositoryViewer.java

@Override
public void populateFromConfig(@NotNull HierarchicalConfiguration config) {
    super.populateFromConfig(config);
    webRepositoryUrl = config.getString(WEB_REPOSITORY_URL, "");
}

From source file:com.norconex.importer.handler.tagger.impl.CopyTagger.java

@Override
protected void loadHandlerFromXML(XMLConfiguration xml) throws IOException {
    List<HierarchicalConfiguration> nodes = xml.configurationsAt("copy");
    for (HierarchicalConfiguration node : nodes) {
        addCopyDetails(node.getString("[@fromField]", null), node.getString("[@toField]", null),
                node.getBoolean("[@overwrite]", false));
    }/*  ww w.  jav  a 2 s  .  com*/
}

From source file:com.sonicle.webtop.core.app.DataSourcesConfig.java

public void parseConfiguration(File file) throws ConfigurationException {
    HikariConfigMap sources = null;//from ww  w. j  a  va2 s .com
    String serviceId = null, sourceName = null;

    XMLConfiguration config = new XMLConfiguration(file);
    List<HierarchicalConfiguration> elServices = config.configurationsAt("service");
    for (HierarchicalConfiguration elService : elServices) {
        serviceId = elService.getString("[@id]", null);
        if (serviceId == null) {
            logger.warn("Missing attribute [id] in [{}]", elService.toString());
            continue;
        }

        // Iterates over service' sources
        sources = new HikariConfigMap();
        List<HierarchicalConfiguration> elSources = elService.configurationsAt("dataSource");
        for (HierarchicalConfiguration elSource : elSources) {
            sourceName = elSource.getString("[@name]", ConnectionManager.DEFAULT_DATASOURCE);
            logger.trace("name: {}", sourceName);
            try {
                sources.put(sourceName, parseDataSource(elSource));
            } catch (ParseException ex) {
                logger.warn("Error parsing dataSource definition [{}]", ex, elSource.toString());
            }
        }

        hm.put(serviceId, sources);
    }
}

From source file:com.norconex.collector.core.spoil.impl.GenericSpoiledReferenceStrategizer.java

@Override
public void loadFromXML(Reader in) throws IOException {
    XMLConfiguration xml = ConfigurationUtil.newXMLConfiguration(in);
    SpoiledReferenceStrategy fallback = toStrategy(xml.getString("[@fallbackStrategy]", null));
    if (fallback != null) {
        setFallbackStrategy(fallback);// ww w.  jav a2  s  .  c  o  m
    }

    List<HierarchicalConfiguration> nodes = xml.configurationsAt("mapping");
    for (HierarchicalConfiguration node : nodes) {
        String attribState = node.getString("[@state]", null);
        String attribStrategy = node.getString("[@strategy]", null);
        if (StringUtils.isAnyBlank(attribState, attribStrategy)) {
            continue;
        }
        CrawlState state = CrawlState.valueOf(attribState);
        SpoiledReferenceStrategy strategy = toStrategy(attribStrategy);
        if (state == null || strategy == null) {
            continue;
        }
        addMapping(state, strategy);
    }
}

From source file:com.norconex.importer.handler.transformer.impl.StripBetweenTransformer.java

@Override
protected void loadHandlerFromXML(XMLConfiguration xml) throws IOException {
    setCaseSensitive(xml.getBoolean("[@caseSensitive]", false));
    setInclusive(xml.getBoolean("[@inclusive]", false));
    List<HierarchicalConfiguration> nodes = xml.configurationsAt("stripBetween");
    for (HierarchicalConfiguration node : nodes) {
        addStripEndpoints(node.getString("start", null), node.getString("end", null));
    }/*ww w  .  ja va  2 s. com*/
}