Example usage for org.apache.commons.configuration ConfigurationRuntimeException ConfigurationRuntimeException

List of usage examples for org.apache.commons.configuration ConfigurationRuntimeException ConfigurationRuntimeException

Introduction

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

Prototype

public ConfigurationRuntimeException(String message, Throwable cause) 

Source Link

Document

Constructs a new ConfigurationRuntimeException with specified detail message and nested Throwable.

Usage

From source file:net.sf.jclal.classifier.WekaComitteClassifier.java

/**
 *
 * @param configuration The configuration of Weka committee classifier.
 *The XML labels supported are:/*  w  w  w. ja  v a  2  s  .com*/
 * <ul>
 * <li>
 * <b>classifier type= class</b>
 * <p>
 * More than one classifier tag can be specified 
 * 
 * Package:
 * weka.classifiers</p>
 * <p>
 * Class: All</p>
 * </li>
 * </ul>
 */
@Override
public void configure(Configuration configuration) {

    String classifierError = "classifier type= ";
    try {

        // Number of defined classifiers
        int numberOfClassifiers = configuration.getList("classifier[@type]").size();

        Classifier[] currentClassifiers = new Classifier[numberOfClassifiers];

        // For each classifier in list
        for (int i = 0; i < numberOfClassifiers; i++) {

            String header = "classifier(" + i + ")";

            // classifier classname
            String classifierClassname = configuration.getString(header + "[@type]");
            classifierError += classifierClassname;
            // classifier class
            Class<? extends Classifier> classifierClass = (Class<? extends Classifier>) Class
                    .forName(classifierClassname);

            // classifier instance
            Classifier currentClassifier = classifierClass.newInstance();

            // Configure classifier (if necessary)
            if (currentClassifier instanceof IConfigure) {
                ((IConfigure) currentClassifier).configure(configuration.subset(header));
            }

            currentClassifiers[i] = currentClassifier;

        }
        // Add this classifier to the strategy
        setClassifiers(currentClassifiers);

    } catch (ClassNotFoundException e) {
        throw new ConfigurationRuntimeException("\nIllegal classifier classname: " + classifierError, e);
    } catch (InstantiationException e) {
        throw new ConfigurationRuntimeException("\nIllegal classifier classname: " + classifierError, e);
    } catch (IllegalAccessException e) {
        throw new ConfigurationRuntimeException("\nIllegal classifier classname: " + classifierError, e);
    }
}

From source file:net.sf.jclal.activelearning.algorithm.ClassicalALAlgorithm.java

/**
 * Establishes the configuration of the scenario
 *
 * @param configuration//from   w  ww  .ja va2  s  .c o m
 *            The configuration object to use
 */
public void setScenarioConfiguration(Configuration configuration) {

    String scenarioError = "scenario type= ";
    // scenario
    try {
        // scenario classname
        String scenarioClassname = configuration.getString("scenario[@type]");

        scenarioError += scenarioClassname;
        // scenario class
        Class<? extends IScenario> scenarioClass = (Class<? extends IScenario>) Class
                .forName(scenarioClassname);
        // scenario instance
        IScenario scenario = scenarioClass.newInstance();
        // Configure scenario (if necessary)
        if (scenario instanceof IConfigure) {
            ((IConfigure) scenario).configure(configuration.subset("scenario"));
        }
        // Add this scenario to the algorithm
        setScenario(scenario);
    } catch (ClassNotFoundException e) {
        throw new ConfigurationRuntimeException("\nIllegal scenario classname: " + scenarioError, e);
    } catch (InstantiationException e) {
        throw new ConfigurationRuntimeException("\nIllegal scenario classname: " + scenarioError, e);
    } catch (IllegalAccessException e) {
        throw new ConfigurationRuntimeException("\nIllegal scenario classname: " + scenarioError, e);
    }
}

From source file:net.sf.jclal.activelearning.multilabel.querystrategy.MultiLabelDensityDiversityQueryStrategy.java

/**
 *
 * @param configuration Configuration object for density diversity strategy.
 *
 * The XML labels supported are://from ww  w  . ja v  a 2  s  .c  om
 * <ul>
 * <li><b>importance-density= double</b></li>
 * <li>
 * <b>distance-function type= class</b>
 * <p>
 * Package: net.sf.jclal.util.distancefunction
 * </p>
 * <p>
 * Class: All
 * </p>
 * <p>
 * Package: weka.core
 * </p>
 * <p>
 * Class: EuclideanDistance || ManhattanDistance || MinkowskiDistance...</p>
 * </li>
 * <li>matrix-file= boolean</li>
 * <li>
 * <b>sub-query-strategy type= class</b>
 * <p>
 * Package: net.sf.jclal.activelearning.multilabel.querystrategy</p>
 * <p>
 * Class: All</p>
 * </li>
 * </ul>
 */
@Override
public void configure(Configuration configuration) {

    try {
        super.configure(configuration);
    } catch (Exception e) {
    }

    // Set relativeImportanceOfDensity
    double currentImportance = configuration.getDouble("importance-density", relativeImportanceOfDensity);

    setRelativeImportanceOfDensity(currentImportance);

    String distanceError = "distance-function type= ";
    try {

        // Set the distance classname
        String distanceClassname = configuration.getString("distance-function[@type]");
        distanceError += distanceClassname;

        // the distance class
        Class<? extends NormalizableDistance> distance = (Class<? extends NormalizableDistance>) Class
                .forName(distanceClassname);

        // the distance instance
        NormalizableDistance currentDistance = distance.newInstance();

        // Configure the distance
        if (currentDistance instanceof IConfigure) {
            ((IConfigure) currentDistance).configure(configuration.subset("distance-function"));
        }

        // Set the distance
        setTypeOfDistance(currentDistance);
    } catch (ClassNotFoundException e) {
        throw new ConfigurationRuntimeException("Illegal distance classname: " + distanceError, e);
    } catch (InstantiationException e) {
        throw new ConfigurationRuntimeException("Illegal distance classname: " + distanceError, e);
    } catch (IllegalAccessException e) {
        throw new ConfigurationRuntimeException("Illegal distance classname: " + distanceError, e);
    }

    // Set the sub query strategy
    String subError = "sub-query-strategy type= ";
    try {
        // sub Query strategy classname
        String strategyClassname = configuration.getString("sub-query-strategy[@type]");
        subError += strategyClassname;
        // sub Query strategy class
        Class<? extends IQueryStrategy> strategyClass = (Class<? extends IQueryStrategy>) Class
                .forName(strategyClassname);
        // sub Query strategy instance
        IQueryStrategy currentSubStrategy = strategyClass.newInstance();

        // Configure sub Query strategy (if necessary)
        if (currentSubStrategy instanceof IConfigure) {
            ((IConfigure) currentSubStrategy).configure(configuration.subset("sub-query-strategy"));
        }
        // Set the sub Query strategy
        setSubQueryStrategy(currentSubStrategy);
    } catch (ClassNotFoundException e) {
        throw new ConfigurationRuntimeException("Illegal sub-query-strategy classname: " + subError, e);
    } catch (InstantiationException e) {
        throw new ConfigurationRuntimeException("Illegal sub-query-strategy classname: " + subError, e);
    } catch (IllegalAccessException e) {
        throw new ConfigurationRuntimeException("Illegal sub-query-strategy classname: " + subError, e);
    }

    //Set if handle the matrix over a file and not over the main memory
    boolean matrixFile = configuration.getBoolean("matrix-file", matrixOverFile);

    setMatrixOverFile(matrixFile);
}

From source file:net.sf.jclal.activelearning.algorithm.ClassicalALAlgorithm.java

/**
 * Establishes the configuration of the stop criterion
 *
 * @param configuration//w ww .j av a  2s  .c  o  m
 *            The configuration object to use
 */
public void setStopCriterionConfigure(Configuration configuration) {

    // Number of defined stopCriterio
    int stopCriterioValue = configuration.getList("stop-criterion[@type]").size();
    // For each listener in list
    for (int i = 0; i < stopCriterioValue; i++) {
        String header = "stop-criterion(" + i + ")";
        // stopCriterio
        String stopError = "stop-criterion type= ";
        try {
            // stopCriterio classname
            String stopCriterioClassname = configuration.getString(header + "[@type]");

            stopError += stopCriterioClassname;
            // stopCriterio class
            Class<? extends IStopCriterion> stopCriterioClass = (Class<? extends IStopCriterion>) Class
                    .forName(stopCriterioClassname);
            // stopCriterio instance
            IStopCriterion stopCriterio = stopCriterioClass.newInstance();
            // Configure stopCriterio (if necessary)
            if (stopCriterio instanceof IConfigure) {
                ((IConfigure) stopCriterio).configure(configuration.subset(header));
            }
            // Add this stopCriterio to the algorithm
            addStopCriterion(stopCriterio);
        } catch (ClassNotFoundException e) {
            throw new ConfigurationRuntimeException("\nIllegal stopCriterion classname: " + stopError, e);
        } catch (InstantiationException e) {
            throw new ConfigurationRuntimeException("\nIllegal stopCriterion classname: " + stopError, e);
        } catch (IllegalAccessException e) {
            throw new ConfigurationRuntimeException("\nIllegal stopCriterion classname: " + stopError, e);
        }

    }

}

From source file:net.sf.jclal.evaluation.method.AbstractEvaluationMethod.java

/**
 *
 * @param configuration The configuration of the Algorithm.
 * <p>// w w w  . j a va 2s  . co  m
 * <b>algorithm type= class</b>
 * </p>
 * <p>
 * Package: net.sf.jclal.activelearning
 * </p>
 * <p>
 * Class: All
 * </p>
 */
protected void setAlgorithmSettings(Configuration configuration) {

    String algorithmError = "algorithm type= ";
    try {
        // algorithm classname
        String algorithmClassname = configuration.getString("algorithm[@type]");
        algorithmError += algorithmClassname;
        // algorithm class
        Class<? extends AbstractALAlgorithm> algorithmClass = (Class<? extends AbstractALAlgorithm>) Class
                .forName(algorithmClassname);
        // algorithm instance
        AbstractALAlgorithm algorithm = algorithmClass.newInstance();
        // Configure algorithm (if necessary)
        if (algorithm instanceof IConfigure) {
            ((IConfigure) algorithm).configure(configuration.subset("algorithm"));
        }
        // Add the algorithm
        setAlgorithm(algorithm);
    } catch (ClassNotFoundException e) {
        throw new ConfigurationRuntimeException("\nIllegal algorithm classname: " + algorithmError, e);
    } catch (InstantiationException e) {
        throw new ConfigurationRuntimeException("\nIllegal algorithm classname: " + algorithmError, e);
    } catch (IllegalAccessException e) {
        throw new ConfigurationRuntimeException("\nIllegal algorithm classname: " + algorithmError, e);
    }
}

From source file:net.sf.jclal.evaluation.method.AbstractEvaluationMethod.java

/**
 * Set the sampling strategy//from  ww  w .ja  va2 s .c o  m
 *
 * @param configuration The configuration to use
 */
public void setSamplingStrategyConfiguration(Configuration configuration) {

    String samplingError = "sampling-method type= ";
    try {

        // sampling classname
        String samplingClassname = configuration.getString("sampling-method[@type]");

        samplingError += samplingClassname;
        // sampling class
        Class<? extends ISampling> samplingClass = (Class<? extends ISampling>) Class
                .forName(samplingClassname);
        // sampling instance
        ISampling sampling = samplingClass.newInstance();
        // Configure sampling (if necessary)
        if (sampling instanceof IConfigure) {
            ((IConfigure) sampling).configure(configuration.subset("sampling-method"));
        }
        // Add this sampling to the algorithm
        setSamplingStrategy(sampling);
    } catch (ClassNotFoundException e) {
        throw new ConfigurationRuntimeException("\nIllegal ISampling classname: " + samplingError, e);
    } catch (InstantiationException e) {
        throw new ConfigurationRuntimeException("\nIllegal ISampling classname: " + samplingError, e);
    } catch (IllegalAccessException e) {
        throw new ConfigurationRuntimeException("\nIllegal ISampling classname: " + samplingError, e);
    }

}