List of usage examples for org.apache.commons.digester3 Digester setRules
public void setRules(Rules rules)
Rules
implementation object containing our rules collection and associated matching policy. From source file:com.dreikraft.axbo.sound.SoundPackageUtil.java
/** * Reads meta information from package-info.xml (as stream) * * @param packageInfoXmlStream the package-info.xml FileInputStream * @return the sound package info read from the stream * @throws com.dreikraft.infactory.sound.SoundPackageException encapsulates * all low level (IO) exceptions//from www.j a v a2 s .c om */ public static SoundPackage readPackageInfo(InputStream packageInfoXmlStream) throws SoundPackageException { Digester digester = new Digester(); digester.setValidating(false); digester.setRules(new ExtendedBaseRules()); digester.addObjectCreate(SoundPackageNodes.axboSounds.toString(), SoundPackage.class); digester.addBeanPropertySetter(SoundPackageNodes.axboSounds + SL + SoundPackageNodes.packageName, "name"); digester.addBeanPropertySetter(SoundPackageNodes.axboSounds + SL + SoundPackageNodes.creator, "creator"); digester.addBeanPropertySetter(SoundPackageNodes.axboSounds + SL + SoundPackageNodes.creationDate, "creationDate"); digester.addBeanPropertySetter(SoundPackageNodes.axboSounds + SL + SoundPackageNodes.security + SL + SoundPackageNodes.serialNumber, "serialNumber"); digester.addBeanPropertySetter( SoundPackageNodes.axboSounds + SL + SoundPackageNodes.security + SL + SoundPackageNodes.enforced, "securityEnforced"); digester.addObjectCreate(SoundPackageNodes.axboSounds + SL + SoundPackageNodes.sounds, ArrayList.class); digester.addSetNext(SoundPackageNodes.axboSounds + SL + SoundPackageNodes.sounds, "setSounds"); digester.addObjectCreate( SoundPackageNodes.axboSounds + SL + SoundPackageNodes.sounds + SL + SoundPackageNodes.sound, Sound.class); digester.addSetNext( SoundPackageNodes.axboSounds + SL + SoundPackageNodes.sounds + SL + SoundPackageNodes.sound, "add"); digester.addSetProperties( SoundPackageNodes.axboSounds + SL + SoundPackageNodes.sounds + SL + SoundPackageNodes.sound, "id", "id"); digester.addBeanPropertySetter(SoundPackageNodes.axboSounds + SL + SoundPackageNodes.sounds + SL + SoundPackageNodes.sound + SL + SoundPackageNodes.displayName, "name"); digester.addObjectCreate(SoundPackageNodes.axboSounds + SL + SoundPackageNodes.sounds + SL + SoundPackageNodes.sound + SL + SoundPackageNodes.axboFile, SoundFile.class); digester.addSetNext(SoundPackageNodes.axboSounds + SL + SoundPackageNodes.sounds + SL + SoundPackageNodes.sound + SL + SoundPackageNodes.axboFile, "setAxboFile"); digester.addBeanPropertySetter(SoundPackageNodes.axboSounds + SL + SoundPackageNodes.sounds + SL + SoundPackageNodes.sound + SL + SoundPackageNodes.axboFile + SL + SoundPackageNodes.path); digester.addBeanPropertySetter(SoundPackageNodes.axboSounds + SL + SoundPackageNodes.sounds + SL + SoundPackageNodes.sound + SL + SoundPackageNodes.axboFile + SL + SoundPackageNodes.type); try { SoundPackage soundPackage = (SoundPackage) digester.parse(packageInfoXmlStream); return soundPackage; } catch (Exception ex) { throw new SoundPackageException(ex); } }
From source file:org.apache.commons.digester3.examples.plugins.pipeline.Pipeline.java
public static void main(String[] args) { if (args.length != 1) { System.err.println("usage: pipeline config-file"); System.exit(-1);/*from w ww . j a v a2 s. c o m*/ } String configFile = args[0]; Digester digester = new Digester(); PluginRules rc = new PluginRules(); digester.setRules(rc); digester.addObjectCreate("pipeline", Pipeline.class); digester.addCallMethod("pipeline/source", "setSource", 1); digester.addCallParam("pipeline/source", 0, "file"); PluginCreateRule pcr = new PluginCreateRule(Transform.class); digester.addRule("pipeline/transform", pcr); digester.addSetNext("pipeline/transform", "setTransform"); digester.addCallMethod("pipeline/destination", "setDest", 1); digester.addCallParam("pipeline/destination", 0, "file"); Pipeline pipeline = null; try { pipeline = digester.parse(configFile); } catch (Exception e) { System.err.println("oops exception occurred during parse."); e.printStackTrace(); System.exit(-1); } try { pipeline.execute(); } catch (Exception e) { System.err.println("oops exception occurred during pipeline execution."); e.printStackTrace(); System.exit(-1); } }