List of usage examples for org.apache.commons.digester Digester addFactoryCreate
public void addFactoryCreate(String pattern, ObjectCreationFactory creationFactory)
From source file:net.sf.jasperreports.customvisualization.xml.CVDigester.java
protected static void addItemPropertieyRules(Digester digester, String itemPropertyPattern, String namespace) { digester.addFactoryCreate(itemPropertyPattern, CVItemPropertyXmlFactory.class); digester.addSetNext(itemPropertyPattern, "addItemProperty", ItemProperty.class.getName()); addExpressionRules(digester, itemPropertyPattern + "/" + JRXmlConstants.ELEMENT_valueExpression, "setValueExpression", true); }
From source file:net.sf.jasperreports.components.iconlabel.IconLabelComponentDigester.java
public static void addIconLabelComponentRules(Digester digester) { String componentNamespace = digester.getRuleNamespaceURI(); String iconLabelComponentPattern = "*/componentElement/iconLabel"; digester.addFactoryCreate(iconLabelComponentPattern, IconLabelComponentFactory.class.getName()); digester.addSetProperties(iconLabelComponentPattern, new String[] { IconLabelComponent.PROPERTY_ICON_POSITION, IconLabelComponent.PROPERTY_LABEL_FILL, IconLabelComponent.PROPERTY_HORIZONTAL_ALIGNMENT, IconLabelComponent.PROPERTY_VERTICAL_ALIGNMENT }, new String[0]); digester.addRule(iconLabelComponentPattern, new XmlConstantPropertyRule(IconLabelComponent.PROPERTY_ICON_POSITION, IconPositionEnum.values())); digester.addRule(iconLabelComponentPattern, new XmlConstantPropertyRule(IconLabelComponent.PROPERTY_LABEL_FILL, ContainerFillEnum.values())); digester.addRule(iconLabelComponentPattern, new XmlConstantPropertyRule(IconLabelComponent.PROPERTY_HORIZONTAL_ALIGNMENT, "horizontalImageAlign", HorizontalImageAlignEnum.values())); digester.addRule(iconLabelComponentPattern, new XmlConstantPropertyRule(IconLabelComponent.PROPERTY_VERTICAL_ALIGNMENT, "verticalImageAlign", VerticalImageAlignEnum.values())); digester.setRuleNamespaceURI(JRXmlConstants.JASPERREPORTS_NAMESPACE); digester.addFactoryCreate(iconLabelComponentPattern + "/label/textField", LabelTextFieldFactory.class.getName()); digester.addFactoryCreate(iconLabelComponentPattern + "/icon/textField", IconTextFieldFactory.class.getName()); digester.setRuleNamespaceURI(componentNamespace); }
From source file:com.projity.graphic.configuration.BarStyles.java
public static void addDigesterEvents(Digester digester) { // main properties of bar digester.addFactoryCreate("*/bar/styles", "com.projity.graphic.configuration.BarStylesFactory"); digester.addSetProperties("*/bar/styles"); digester.addSetNext("*/bar/styles", "add", "com.projity.configuration.NamedItem"); // start section digester.addObjectCreate("*/bar/styles/style", "com.projity.graphic.configuration.BarStyle"); digester.addSetProperties("*/bar/styles/style"); digester.addSetNext("*/bar/styles/style", "addStyle", "com.projity.graphic.configuration.BarStyle"); }
From source file:net.sf.jasperreports.forms.textinput.TextInputComponentDigester.java
public static void addTextInputComponentRules(Digester digester) { String componentNamespace = digester.getRuleNamespaceURI(); String textInputComponentPattern = "*/componentElement/textInput"; // digester.addObjectCreate(textInputComponentPattern, TextInputComponent.class.getName()); digester.addFactoryCreate(textInputComponentPattern, TextInputComponentFactory.class.getName()); digester.addSetProperties(textInputComponentPattern); // digester.addSetProperties(textInputComponentPattern, // //properties to be ignored by this rule // new String[]{JRXmlConstants.ATTRIBUTE_evaluationTime, StandardBarbecueComponent.PROPERTY_ROTATION}, // new String[0]); digester.setRuleNamespaceURI(JRXmlConstants.JASPERREPORTS_NAMESPACE); digester.addFactoryCreate(textInputComponentPattern + "/textField", TextInputTextFieldFactory.class.getName()); digester.setRuleNamespaceURI(componentNamespace); }
From source file:net.sf.jasperreports.customvisualization.xml.CVDigester.java
public static void addRules(Digester digester) { // String jrNamespace = JRXmlConstants.JASPERREPORTS_NAMESPACE; String namespace = digester.getRuleNamespaceURI(); String mainComponentPattern = "*/componentElement/customvisualization"; digester.addFactoryCreate(mainComponentPattern, CVXmlFactory.class.getName()); addEvaluationPropertiesRules(digester, mainComponentPattern); addItemPropertieyRules(digester, mainComponentPattern + "/" + CVXmlFactory.ELEMENT_itemProperty, namespace); addCVItemDataRules(digester, mainComponentPattern + "/" + CVXmlFactory.ELEMENT_cvData, namespace); }
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()); }//from w ww . j a v a 2s. c o 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:net.sf.jasperreports.components.spiderchart.SpiderChartDigester.java
@SuppressWarnings("deprecation") public static void addSpiderChartRules(Digester digester) { String componentNamespace = digester.getRuleNamespaceURI(); String jrNamespace = JRXmlConstants.JASPERREPORTS_NAMESPACE; String spiderChartPattern = "*/componentElement/spiderChart"; digester.addFactoryCreate(spiderChartPattern, SpiderChartXmlFactory.class.getName()); String chartSettingsPattern = spiderChartPattern + "/chartSettings"; digester.addFactoryCreate(chartSettingsPattern, ChartSettingsXmlFactory.class.getName()); digester.addSetNext(chartSettingsPattern, "setChartSettings", ChartSettings.class.getName()); digester.setRuleNamespaceURI(jrNamespace); String chartTitlePattern = chartSettingsPattern + "/chartTitle"; digester.addFactoryCreate(chartTitlePattern, ChartSettingsXmlFactory.ChartTitleFactory.class.getName()); digester.addFactoryCreate(chartTitlePattern + "/font", JRFontFactory.ChartFontFactory.class.getName()); digester.addSetNext(chartTitlePattern + "/font", "setTitleFont", JRFont.class.getName()); digester.addFactoryCreate(chartTitlePattern + "/titleExpression", JRExpressionFactory.StringExpressionFactory.class); digester.addSetNext(chartTitlePattern + "/titleExpression", "setTitleExpression", JRDesignExpression.class.getName()); digester.addCallMethod(chartTitlePattern + "/titleExpression", "setText", 0); String chartSubtitlePattern = chartSettingsPattern + "/chartSubtitle"; digester.addFactoryCreate(chartSubtitlePattern, ChartSettingsXmlFactory.ChartSubtitleFactory.class.getName()); digester.addFactoryCreate(chartSubtitlePattern + "/font", JRFontFactory.ChartFontFactory.class.getName()); digester.addSetNext(chartSubtitlePattern + "/font", "setSubtitleFont", JRFont.class.getName()); digester.addFactoryCreate(chartSubtitlePattern + "/subtitleExpression", JRExpressionFactory.StringExpressionFactory.class); digester.addSetNext(chartSubtitlePattern + "/subtitleExpression", "setSubtitleExpression", JRDesignExpression.class.getName()); digester.addCallMethod(chartSubtitlePattern + "/subtitleExpression", "setText", 0); digester.addFactoryCreate(chartSettingsPattern + "/chartLegend", ChartSettingsXmlFactory.ChartLegendFactory.class.getName()); digester.addFactoryCreate(chartSettingsPattern + "/chartLegend/font", JRFontFactory.ChartFontFactory.class.getName()); digester.addSetNext(chartSettingsPattern + "/chartLegend/font", "setLegendFont", JRFont.class.getName()); digester.setRuleNamespaceURI(componentNamespace); String spiderDatasetPattern = spiderChartPattern + "/spiderDataset"; digester.addFactoryCreate(spiderDatasetPattern, SpiderDatasetXmlFactory.class.getName()); digester.addSetNext(spiderDatasetPattern, "setDataset", SpiderDataset.class.getName()); digester.setRuleNamespaceURI(jrNamespace); String datasetPattern = spiderDatasetPattern + "/dataset"; digester.addFactoryCreate(datasetPattern, JRElementDatasetFactory.class.getName()); String datasetIncrementWhenExpressionPath = datasetPattern + JRXmlConstants.ELEMENT_incrementWhenExpression; digester.addFactoryCreate(datasetIncrementWhenExpressionPath, JRExpressionFactory.BooleanExpressionFactory.class.getName()); digester.addSetNext(datasetIncrementWhenExpressionPath, "setIncrementWhenExpression", JRExpression.class.getName()); digester.addCallMethod(datasetIncrementWhenExpressionPath, "setText", 0); String seriesPattern = spiderDatasetPattern + "/categorySeries"; digester.addFactoryCreate(seriesPattern, JRCategorySeriesFactory.class.getName()); digester.addSetNext(seriesPattern, "addCategorySeries", JRDesignCategorySeries.class.getName()); digester.addFactoryCreate(seriesPattern + "/seriesExpression", JRExpressionFactory.ComparableExpressionFactory.class); digester.addSetNext(seriesPattern + "/seriesExpression", "setSeriesExpression", JRDesignExpression.class.getName()); digester.addCallMethod(seriesPattern + "/seriesExpression", "setText", 0); digester.addFactoryCreate(seriesPattern + "/categoryExpression", JRExpressionFactory.ComparableExpressionFactory.class); digester.addSetNext(seriesPattern + "/categoryExpression", "setCategoryExpression", JRDesignExpression.class.getName()); digester.addCallMethod(seriesPattern + "/categoryExpression", "setText", 0); digester.addFactoryCreate(seriesPattern + "/labelExpression", JRExpressionFactory.StringExpressionFactory.class); digester.addSetNext(seriesPattern + "/labelExpression", "setLabelExpression", JRDesignExpression.class.getName()); digester.addCallMethod(seriesPattern + "/labelExpression", "setText", 0); digester.addFactoryCreate(seriesPattern + "/valueExpression", JRExpressionFactory.NumberExpressionFactory.class); digester.addSetNext(seriesPattern + "/valueExpression", "setValueExpression", JRDesignExpression.class.getName()); digester.addCallMethod(seriesPattern + "/valueExpression", "setText", 0); digester.setRuleNamespaceURI(componentNamespace); String plotPattern = spiderChartPattern + "/spiderPlot"; digester.addFactoryCreate(plotPattern, SpiderPlotXmlFactory.class.getName()); digester.addSetNext(plotPattern, "setPlot", SpiderPlot.class.getName()); digester.setRuleNamespaceURI(jrNamespace); String labelFontPattern = plotPattern + "/labelFont/font"; digester.addFactoryCreate(labelFontPattern, JRFontFactory.ChartFontFactory.class.getName()); digester.addSetNext(labelFontPattern, "setLabelFont", JRFont.class.getName()); digester.setRuleNamespaceURI(componentNamespace); String maxValueExpressionPattern = plotPattern + "/maxValueExpression"; digester.addFactoryCreate(maxValueExpressionPattern, JRExpressionFactory.DoubleExpressionFactory.class); digester.addSetNext(maxValueExpressionPattern, "setMaxValueExpression", JRDesignExpression.class.getName()); digester.addCallMethod(maxValueExpressionPattern, "setText", 0); }
From source file:com.projity.configuration.FieldDictionary.java
public static void addDigesterEvents(Digester digester) { // digester.addObjectCreate("*/fieldDictionary", "com.projity.configuration.FieldDictionary"); digester.addFactoryCreate("*/fieldDictionary", "com.projity.configuration.FieldDictionaryFactory"); digester.addSetNext("*/fieldDictionary", "setFieldDictionary", "com.projity.configuration.FieldDictionary"); //TODO can we do this more easily digester.addSetProperties("*/fieldDictionary/class", "name", "className"); // object is field dictionary digester.addObjectCreate("*/fieldDictionary/class/field", "com.projity.field.Field"); digester.addSetProperties("*/fieldDictionary/class/field"); digester.addSetNext("*/fieldDictionary/class/field", "addField", "com.projity.field.Field"); digester.addObjectCreate("*/field/select", "com.projity.field.StaticSelect"); // create a select digester.addSetProperties("*/field/select"); // set name of select digester.addSetNext("*/field/select", "setSelect", "com.projity.field.StaticSelect"); // attach to field digester.addObjectCreate("*/field/choice", "com.projity.field.DynamicSelect"); // create a cohice digester.addSetProperties("*/field/choice"); // set name of choice, finder and list methods digester.addSetNext("*/field/choice", "setSelect", "com.projity.field.DynamicSelect"); // attach to field digester.addObjectCreate("*/field/select/option", "com.projity.field.SelectOption"); // create an option when seeing one digester.addSetProperties("*/field/select/option"); // get key and value properties digester.addSetNext("*/field/select/option", "addOption", "com.projity.field.SelectOption"); // add option to select digester.addObjectCreate("*/field/range", "com.projity.field.Range"); // create an option when seeing one digester.addSetProperties("*/field/range"); // get key and value properties digester.addSetNext("*/field/range", "setRange", "com.projity.field.Range"); // add option to select //non intrusive method to reduce role options, otherwise Select should be modified to depend on a specific object digester.addObjectCreate("*/field/filter", "com.projity.field.OptionsFilter"); digester.addSetProperties("*/field/filter"); digester.addSetNext("*/field/filter", "setFilter", "com.projity.field.OptionsFilter"); String fieldAccessibleClass = Messages.getMetaString("FieldAccessible"); digester.addObjectCreate("*/field/permission", fieldAccessibleClass); digester.addSetProperties("*/field/permission"); digester.addSetNext("*/field/permission", "setAccessControl", "com.projity.field.FieldAccessible"); }
From source file:net.sf.jasperreports.components.sort.SortComponentDigester.java
public static void addSortComponentRules(Digester digester) { String componentNamespace = digester.getRuleNamespaceURI(); String sortComponentPattern = "*/componentElement/sort"; digester.addObjectCreate(sortComponentPattern, SortComponent.class.getName()); digester.addSetProperties(sortComponentPattern, new String[] { SortComponent.PROPERTY_EVALUATION_TIME, }, new String[0]); digester.addRule(sortComponentPattern, new XmlConstantPropertyRule(SortComponent.PROPERTY_EVALUATION_TIME, EvaluationTimeEnum.values())); digester.addFactoryCreate(sortComponentPattern + "/symbol", SortComponentSymbolFactory.class.getName()); digester.setRuleNamespaceURI(JRXmlConstants.JASPERREPORTS_NAMESPACE); digester.addFactoryCreate(sortComponentPattern + "/symbol/font", SortComponentSymbolFontFactory.class.getName()); digester.addSetNext(sortComponentPattern + "/symbol/font", "setSymbolFont", JRFont.class.getName()); digester.setRuleNamespaceURI(componentNamespace); }
From source file:net.sf.jasperreports.customvisualization.xml.CVDigester.java
protected static void addCVItemDataRules(Digester digester, String pattern, String namespace) { digester.addObjectCreate(pattern, StandardItemData.class); digester.addSetNext(pattern, "addItemData", StandardItemData.class.getName()); String itemPattern = pattern + "/item"; digester.addObjectCreate(itemPattern, StandardItem.class); digester.addSetNext(itemPattern, "addItem", Item.class.getName()); addItemPropertieyRules(digester, itemPattern + "/itemProperty", namespace); digester.setRuleNamespaceURI(JRXmlWriter.JASPERREPORTS_NAMESPACE.getNamespaceURI()); digester.addFactoryCreate(pattern + "/dataset", CVItemDatasetFactory.class.getName()); digester.addSetNext(pattern + "/dataset", "setDataset", JRElementDataset.class.getName()); digester.setRuleNamespaceURI(namespace); }