Example usage for org.apache.commons.digester Digester addSetNext

List of usage examples for org.apache.commons.digester Digester addSetNext

Introduction

In this page you can find the example usage for org.apache.commons.digester Digester addSetNext.

Prototype

public void addSetNext(String pattern, String methodName) 

Source Link

Document

Add a "set next" rule for the specified parameters.

Usage

From source file:com.mmounirou.spotirss.spotify.tracks.SpotifyHrefQuery.java

private static void addRules(Digester digester) {
    digester.addObjectCreate("tracks/track", XTracks.class);
    digester.addSetNext("tracks/track", "add");
    digester.addSetProperties("tracks/track");
    digester.addBeanPropertySetter("tracks/track/name", "trackName");
    digester.addCallMethod("tracks/track/artist/name", "addArtist", 0);
    digester.addBeanPropertySetter("tracks/track/album/availability/territories", "availability");
}

From source file:com.tonbeller.jpivot.core.ModelFactory.java

/**
 * creates a model from an xml configuration file
 * @param url url of model configuration file
 * @return Model/*  w w  w . jav a  2s. co  m*/
 * @throws SAXException
 * @throws IOException
 */
public static Model instance(URL url) throws SAXException, IOException {
    Digester digester = new Digester();
    digester.setValidating(false);

    ModelHolder root = new ModelHolder();
    digester.push(root);

    digester.addObjectCreate("model", "missing \"class\" attribute", "class");
    digester.addSetProperties("model");
    digester.addSetNext("model", "setModel");

    digester.addObjectCreate("model/extension", "missing \"class\" attribute", "class");
    digester.addSetProperties("model/extension");
    digester.addSetNext("model/extension", "addExtension");

    InputSource is = new InputSource(url.toExternalForm());
    digester.parse(is);
    return root.getModel();
}

From source file:edu.uci.ics.hyracks.yarn.am.manifest.ManifestParser.java

private static Digester createDigester() {
    Digester d = new Digester();
    d.setValidating(false);/*from  w  w  w . j  a  v a  2s . c om*/

    d.addObjectCreate("hyracks-cluster", HyracksCluster.class);
    d.addSetProperties("hyracks-cluster");

    d.addObjectCreate("hyracks-cluster/cluster-controller", ClusterController.class);
    d.addSetProperties("hyracks-cluster/cluster-controller");
    d.addSetNext("hyracks-cluster/cluster-controller", "setClusterController");

    d.addObjectCreate("hyracks-cluster/node-controllers/node-controller", NodeController.class);
    d.addSetProperties("hyracks-cluster/node-controllers/node-controller");
    d.addSetNext("hyracks-cluster/node-controllers/node-controller", "addNodeController");

    d.addObjectCreate("*/container-specification", ContainerSpecification.class);
    d.addSetProperties("*/container-specification");
    d.addSetNext("*/container-specification", "setContainerSpecification");
    return d;
}

From source file:at.ac.tuwien.photohawk.taverna.model.evaluation.MeasurementsDescriptorParser.java

private static void addCreateScale(Digester digester, Class c) {
    String name = c.getName();// ww w  . j a  v a2 s.c o  m
    name = name.substring(name.lastIndexOf(".") + 1);
    name = name.substring(0, 1).toLowerCase() + name.substring(1);

    String pattern = "*/" + name;
    digester.addObjectCreate(pattern, c);
    digester.addSetProperties(pattern);
    digester.addBeanPropertySetter(pattern + "/unit");
    digester.addSetNext(pattern, "setScale");
}

From source file:com.redhat.rhn.common.client.ClientCertificateDigester.java

private static void configureDigester(Digester digester) {
    digester.setValidating(false);/*from   www . j  av  a  2  s .  com*/

    digester.addObjectCreate("params", ClientCertificate.class);
    digester.addObjectCreate("*/param/value/struct/member/", Member.class);
    digester.addCallMethod("*/param/value/struct/member/name", "setName", 0);
    digester.addCallMethod("*/param/value/struct/member/value/string", "addValue", 0);
    digester.addObjectCreate("*/param/value/struct/member/value/array", ArrayList.class);
    digester.addCallMethod("*/param/value/struct/member/value/array/data/value/string", "add", 0);
    digester.addSetNext("*/param/value/struct/member/value/array", "setValues");
    digester.addSetNext("*/param/value/struct/member", "addMember");
}

From source file:com.nec.nsgui.model.biz.framework.menu.NSMenuFactory.java

/**
 * parse the inputStream and create NSMenusBean object.
 * @param inputStream/*from  w w w.j a v  a  2 s . co m*/
 * @return
 * @throws Exception
 */
private static NSMenusBean parse(InputStream inputStream) throws Exception {
    Digester digester = new Digester();
    digester.setValidating(false);
    digester.setUseContextClassLoader(true);
    //parse root and create nsmenus object.
    digester.addObjectCreate(CONFIG_FILE_TAG_NSMENUS, NSMenusBean.class);

    //parse Category and create a CategoryBean object.
    String categoryStr = CONFIG_FILE_TAG_NSMENUS + CONFIG_FILE_TAG_SEPARATER + CONFIG_FILE_TAG_CATEGORY;
    digester.addObjectCreate(categoryStr, CategoryBean.class);
    digester.addSetProperties(categoryStr);
    digester.addSetNext(categoryStr, "addCategoryMap");

    //parse SubCategory and create SubCategoryBean object.
    String subCategoryStr = categoryStr + CONFIG_FILE_TAG_SEPARATER + CONFIG_FILE_TAG_SUBCATEGORY;
    digester.addObjectCreate(subCategoryStr, SubCategoryBean.class);
    digester.addSetProperties(subCategoryStr);
    digester.addSetNext(subCategoryStr, "addSubCategoryMap");

    //parse Item and create ItemBean object.
    String itemStr = subCategoryStr + CONFIG_FILE_TAG_SEPARATER + CONFIG_FILE_TAG_ITEM;
    digester.addObjectCreate(itemStr, ItemBean.class);
    digester.addSetProperties(itemStr);
    String hiddenStr = itemStr + CONFIG_FILE_TAG_SEPARATER + CONFIG_FILE_TAG_HIDDEN;
    digester.addCallMethod(hiddenStr, "addHiddenMap", 2);
    digester.addCallParam(hiddenStr, 0, "name");
    digester.addCallParam(hiddenStr, 1, "value");
    digester.addSetNext(itemStr, "addItemMap");

    return (NSMenusBean) digester.parse(inputStream);
}

From source file:eu.planets_project.pp.plato.services.action.PreservationActionRegistryFactory.java

/**
 *   //from   ww w.ja  v a2  s . c o m
 * @return a list of all in PreservationActionRegistries.xml defined registries.
 * @throws IllegalArgumentException
 */
static public List<PreservationActionRegistryDefinition> getAvailableRegistries()
        throws IllegalArgumentException {
    ArrayList<PreservationActionRegistryDefinition> allRegistries = new ArrayList<PreservationActionRegistryDefinition>();

    String configFile = "data/services/PreservationActionRegistries.xml";
    InputStream config = Thread.currentThread().getContextClassLoader().getResourceAsStream(configFile);

    Digester digester = new Digester();
    digester.setValidating(false);
    digester.setErrorHandler(new StrictErrorHandler());

    digester.push(allRegistries);
    digester.addObjectCreate("*/registry", PreservationActionRegistryDefinition.class);
    digester.addBeanPropertySetter("*/registry/shortname", "shortname");
    digester.addBeanPropertySetter("*/registry/logo", "logo");
    digester.addBeanPropertySetter("*/registry/url", "url");
    digester.addBeanPropertySetter("*/registry/type", "type");
    digester.addBeanPropertySetter("*/registry/active", "active");
    digester.addSetNext("*/registry", "add");

    try {
        digester.setUseContextClassLoader(true);
        digester.parse(config);
    } catch (Exception e) {
        log.error("Error in config file: " + configFile, e);
    }
    return allRegistries;

}

From source file:at.tuwien.minimee.registry.ToolRegistry.java

private static void addCreateScale(Digester digester, Class c) {
    String name = c.getName();// ww  w.j  a v a2  s.c om
    name = name.substring(name.lastIndexOf(".") + 1);
    // XML elements should start with a lower case letter
    name = name.substring(0, 1).toLowerCase() + name.substring(1);
    // create a scale entry for this value
    String pattern = "*/property/" + name;
    digester.addObjectCreate(pattern, c);
    digester.addSetProperties(pattern);
    digester.addSetNext(pattern, "setScale");
}

From source file:barrysw19.calculon.opening.OpeningBook.java

public static OpeningBook getDefaultBook() {
    if (defaultBook != null) {
        return defaultBook;
    }//ww  w . j  av a  2s  . c  om

    Digester digester = new Digester();
    digester.addObjectCreate("calculon/opening-book", OpeningBook.class);
    digester.addObjectCreate("calculon/opening-book/moves", OpeningBook.MoveList.class);

    digester.addCallMethod("calculon/opening-book/moves/move", "addMove", 2,
            new Class[] { String.class, Integer.class });
    digester.addCallParam("calculon/opening-book/moves/move", 0, "pgn");
    digester.addCallParam("calculon/opening-book/moves/move", 1, "count");

    digester.addCallMethod("calculon/opening-book/moves/position", "setPosition", 1);
    digester.addCallParam("calculon/opening-book/moves/position", 0);

    digester.addSetNext("calculon/opening-book/moves", "addMoveList");

    try {
        log.fine("Creating opening book");
        defaultBook = (OpeningBook) digester.parse(OpeningBook.class.getResourceAsStream("/calculon.xml"));
        return defaultBook;
    } catch (Exception e) {
        throw new RuntimeException(e);
    }
}

From source file:com.frameworkset.common.tag.export.properties.ConfigFactory.java

/**
 * ?xml???/*from  ww  w  .j a  va2 s  .  co m*/
 * @param force
 * @return Configture
 */
public static Configture createConfigure(boolean force) {
    Digester digester = new Digester();
    digester.setValidating(false);
    if (configture == null || force) {
        configture = new Configture();

        digester.push(configture);
        // This set of rules calls the addDataSource method and passes
        // in five parameters to the method.
        digester.addBeanPropertySetter("exportconfig/description", "description");

        digester.addBeanPropertySetter("exportconfig/version", "version");
        digester.addObjectCreate("exportconfig/export", ExportConfig.class);
        digester.addBeanPropertySetter("exportconfig/export/description", "description");
        digester.addSetProperties("exportconfig/export/config", new String[] { "name", "type", "class" },
                new String[] { "name", "type", "exportClass" });
        digester.addSetNext("exportconfig/export", "addExportConfig");
        ClassLoader classLoader = ConfigFactory.class.getClassLoader();
        URL url = classLoader.getResource("export.xml");
        try {
            digester.parse(url.openStream());
        } catch (IOException e) {
            e.printStackTrace();
        } catch (SAXException e) {

            e.printStackTrace();
        }

    }
    return configture;
}