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

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

Introduction

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

Prototype

public void addCallMethod(String pattern, String methodName, int paramCount) 

Source Link

Document

Add an "call method" rule for the specified parameters.

Usage

From source file:net.erdfelt.android.sdkfido.git.GitMirrors.java

/**
 * Load specific gitmirror xml file./*from   w  w  w.  ja v a  2s  .c  om*/
 * 
 * @param mirrorxml
 *            the mirrorxml to load
 * @return a GitMirrors object, with information from the mirrorxml, or empty (if mirrorxml not found)
 */
public static GitMirrors load(File mirrorxml) {
    if (!mirrorxml.exists()) {
        return new GitMirrors();
    }
    Digester digester = new Digester();
    digester.addObjectCreate("mirrors", GitMirrors.class);

    digester.addCallMethod("mirrors/mirror", "addMirror", 2);
    digester.addCallParam("mirrors/mirror", 0, "url");
    digester.addCallParam("mirrors/mirror", 1, "mirrorurl");

    try {
        return (GitMirrors) digester.parse(mirrorxml);
    } catch (IOException e) {
        LOG.log(Level.WARNING, "Unable to load GitMirrors: " + mirrorxml, e);
    } catch (SAXException e) {
        LOG.log(Level.WARNING, "Unable to load GitMirrors: " + mirrorxml, e);
    }
    return new GitMirrors();
}

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

private static void configureDigester(Digester digester) {
    digester.setValidating(false);/*w  ww  . ja  v a  2s. co  m*/

    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:de.jwic.sourceviewer.model.reader.XmlWorkspaceReader.java

public static Workspace readFromFile(File file) throws SAXException, IOException {

    Digester digester = new Digester();
    digester.setValidating(false);/*from ww w  . j  av  a2s.c  om*/
    digester.addObjectCreate("workspace", Workspace.class.getName());
    digester.addSetProperties("workspace");
    digester.addCallMethod("workspace/filter/name", "addFilter", 0);

    digester.addObjectCreate("workspace/group", Group.class.getName());
    digester.addSetProperties("workspace/group");
    digester.addSetNext("workspace/group", "addGroup", Group.class.getName());

    digester.addObjectCreate("workspace/group/project", Project.class.getName());
    digester.addSetProperties("workspace/group/project");
    digester.addSetNext("workspace/group/project", "addProject", Project.class.getName());

    digester.addObjectCreate("workspace/group/project/source", SourceFolder.class.getName());
    digester.addSetProperties("workspace/group/project/source");
    digester.addSetNext("workspace/group/project/source", "addSourceFolder", SourceFolder.class.getName());

    digester.addObjectCreate("workspace/group/project/source/package", SourcePackage.class.getName());
    digester.addSetProperties("workspace/group/project/source/package");
    digester.addSetNext("workspace/group/project/source/package", "addPackage", SourcePackage.class.getName());
    digester.addCallMethod("workspace/group/project/source/package", "setName", 0);

    digester.addObjectCreate("workspace/group/project/folder", Folder.class.getName());
    digester.addSetProperties("workspace/group/project/folder");
    digester.addSetNext("workspace/group/project/folder", "addFolder", Folder.class.getName());

    Workspace ws = (Workspace) digester.parse(file);

    return ws;

}

From source file:de.thischwa.pmcms.tool.ChecksumTool.java

/**
 * Reading the checksum file (xml) from an InputSream and put it in a Map.
 * //from w w  w  .  java  2s .  c o  m
 * @param in
 * @return A Map with the file name as key and the checksum as value.
 */
public static Map<String, String> get(final InputStream in) {
    Digester digester = new Digester();
    digester.setValidating(false);
    digester.addObjectCreate("checksums", HashMap.class);
    digester.addCallMethod("checksums/file", "put", 2);
    digester.addCallParam("checksums/file/name", 0);
    digester.addCallParam("checksums/file/checksum", 1);
    try {
        @SuppressWarnings("unchecked")
        Map<String, String> checksums = (Map<String, String>) digester.parse(in);
        return checksums;
    } catch (Exception e) {
        throw new FatalException("Error while parsing checksums: " + e.getMessage(), e);
    }
}

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:net.sf.jasperreports.customvisualization.xml.CVDigester.java

protected static void addExpressionRules(Digester digester, String expressionPattern, String setterMethod,
        boolean jrNamespace) {
    String originalNamespace = digester.getRuleNamespaceURI();
    if (jrNamespace) {
        digester.setRuleNamespaceURI(JRXmlWriter.JASPERREPORTS_NAMESPACE.getNamespaceURI());
    }/*w  w  w.j a v  a  2 s. co m*/

    digester.addFactoryCreate(expressionPattern, JRExpressionFactory.class);
    digester.addCallMethod(expressionPattern, "setText", 0);
    digester.addSetNext(expressionPattern, setterMethod, JRExpression.class.getName());

    if (jrNamespace) {
        digester.setRuleNamespaceURI(originalNamespace);
    }
}

From source file:com.redhat.rhn.frontend.nav.NavDigester.java

/**
 * buildTree, method to take a url and parse the contents
 * into a NavTree//w  w w  .  ja  v a 2 s  .  co m
 * @param url the file to parse
 * @return NavTree the tree represented by the file
 * @throws Exception if something breaks. XXX: fix to be tighter
 */
public static NavTree buildTree(URL url) throws Exception {
    if (url == null) {
        throw new IllegalArgumentException(
                "URL is null, your definition tag " + "probably points to a non existing file.");
    }
    Digester digester = new Digester();
    digester.setValidating(false);

    digester.addObjectCreate("rhn-navi-tree", NavTree.class);
    digester.addSetProperties("rhn-navi-tree");
    digester.addSetProperties("rhn-navi-tree", "acl_mixins", "aclMixins");

    digester.addObjectCreate("*/rhn-tab", NavNode.class);
    digester.addSetProperties("*/rhn-tab", "active-image", "activeImage");
    digester.addSetProperties("*/rhn-tab", "inactive-image", "inactiveImage");
    digester.addSetProperties("*/rhn-tab", "target", "target");

    digester.addCallMethod("*/rhn-tab", "addPrimaryURL", 1);
    digester.addCallParam("*/rhn-tab", 0, "url");

    digester.addCallMethod("*/rhn-tab/rhn-tab-url", "addURL", 0);
    digester.addCallMethod("*/rhn-tab/rhn-tab-directory", "addDirectory", 0);

    digester.addSetNext("*/rhn-tab", "addNode");
    return (NavTree) digester.parse(url.openStream());
}

From source file:com.projity.graphic.configuration.CellStyles.java

public static void addDigesterEvents(Digester digester) {
    // main properties of bar
    digester.addObjectCreate("*/cellstyles", "com.projity.graphic.configuration.CellStyles");
    digester.addSetProperties("*/cellstyles");
    digester.addSetNext("*/cellstyles", "add", "com.projity.configuration.NamedItem");

    // start section
    digester.addObjectCreate("*/cellstyles/style", "com.projity.graphic.configuration.CellStyleFactory");
    digester.addSetProperties("*/cellstyles/style");
    digester.addCallMethod("*/cellstyles/style/formulaText", "setFormulaText", 0);
    digester.addSetNext("*/cellstyles/style", "addStyle", "com.projity.graphic.configuration.CellStyleFactory");

}

From source file:com.projity.graphic.configuration.ActionLists.java

public static void addDigesterEvents(Digester digester) {
    // main properties of bar
    digester.addObjectCreate("*/actionLists", "com.projity.graphic.configuration.ActionLists");
    digester.addSetProperties("*/actionLists");
    digester.addSetNext("*/actionLists", "add", "com.projity.configuration.NamedItem");

    // start section
    digester.addObjectCreate("*/actionLists/actionList", "com.projity.graphic.configuration.ActionListFactory");
    digester.addSetProperties("*/actionLists/actionList");
    digester.addCallMethod("*/actionLists/actionList/formulaText", "setFormulaText", 0);
    digester.addSetNext("*/actionLists/actionList", "addActionList",
            "com.projity.graphic.configuration.ActionListFactory");

}

From source file:com.projity.graphic.configuration.SpreadSheetFieldArray.java

public static void addDigesterEvents(Digester digester) {
    digester.addObjectCreate("*/spreadsheet", "com.projity.graphic.configuration.SpreadSheetFieldArray");
    digester.addSetProperties("*/spreadsheet");
    digester.addSetNext("*/spreadsheet", "add", "com.projity.configuration.NamedItem");
    digester.addSetProperties("*/spreadsheet/columns/column");
    digester.addCallMethod("*/spreadsheet/columns/column", "addField", 0);

}