All Downloads are FREE. Search and download functionalities are using the official Maven repository.

config.excel.definition-rule.xml Maven / Gradle / Ivy

Go to download

feilong is a suite of core and expanded libraries that include utility classes, http, excel,cvs, io classes, and much much more.

There is a newer version: 4.3.0
Show newest version
<?xml version="1.0"?>
<!DOCTYPE digester-rules PUBLIC "-//Apache Commons //DTD digester-rules XML V1.0//EN" "http://commons.apache.org/digester/dtds/digester-rules-3.0.dtd">

<digester-rules>
	<!-- sheets -->
	<pattern value="sheets">
		<object-create-rule classname="java.util.ArrayList" />
	</pattern>

	<!-- sheets/sheet -->
	<pattern value="sheets/sheet">
		<object-create-rule classname="com.feilong.excel.definition.ExcelSheet" />
		<set-properties-rule>
			<alias attr-name="name" prop-name="name" />
			<alias attr-name="disp-name" prop-name="displayName" />
		</set-properties-rule>
		<set-next-rule methodname="add" />
	</pattern>

	<!-- sheets/sheet/block -->
	<pattern value="sheets/sheet/block">
		<object-create-rule classname="com.feilong.excel.definition.ExcelBlock" />
		<set-properties-rule>
			<alias attr-name="start" prop-name="startCellIndex" />
			<alias attr-name="end" prop-name="endCellIndex" />

			<alias attr-name="dataName" prop-name="dataName" />
			<alias attr-name="loop" prop-name="loop" />

			<alias attr-name="direction" prop-name="direction" />
		</set-properties-rule>

		<call-method-rule methodname="setLoopClassByClassName" paramcount="1" />
		<call-param-rule paramnumber="0" attrname="loopClass" />

		<set-next-rule methodname="addExcelBlock" />
	</pattern>

	<!-- sheets/sheet/block/loopbreakcondition -->
	<pattern value="sheets/sheet/block/loopbreakcondition">
		<object-create-rule classname="com.feilong.excel.definition.LoopBreakCondition" />
		<set-properties-rule>
			<alias attr-name="rowOffset" prop-name="rowOffset" />
			<alias attr-name="colOffset" prop-name="colOffset" />
		</set-properties-rule>
		<call-method-rule methodname="setFlagString" paramcount="0" />
		<set-next-rule methodname="setBreakCondition" />
	</pattern>

	<!-- sheets/sheet/block/childblock -->
	<pattern value="sheets/sheet/block/childblock">
		<object-create-rule classname="com.feilong.excel.definition.ExcelBlock" />
		<set-properties-rule>
			<alias attr-name="start" prop-name="startCellIndex" />
			<alias attr-name="dataName" prop-name="dataName" />
		</set-properties-rule>
		<set-next-rule methodname="setChildBlock" />
	</pattern>

	<!-- */cell/expr -->
	<pattern value="*/cell/expr">
		<call-method-rule methodname="setDataExpr" paramcount="0" />
	</pattern>


	<!-- */cell -->
	<pattern value="*/cell">
		<object-create-rule classname="com.feilong.excel.definition.ExcelCell" />
		<set-properties-rule>
			<alias attr-name="position" prop-name="cellIndex" />
			<alias attr-name="dataName" prop-name="dataName" />
			<alias attr-name="type" prop-name="type" />
			<alias attr-name="mandatory" prop-name="mandatory" />
			<alias attr-name="pattern" prop-name="pattern" />
			<alias attr-name="choice" prop-name="choiceString" />
		</set-properties-rule>
		<set-next-rule methodname="addCell" />
	</pattern>

	<!-- */block/cellstyle -->
	<pattern value="*/block/cellstyle">
		<object-create-rule classname="com.feilong.excel.definition.ExcelCellConditionStyle" />
		<set-properties-rule>
			<alias attr-name="start" prop-name="startCellIndex" />
			<alias attr-name="end" prop-name="endCellIndex" />
			<alias attr-name="position" prop-name="cellIndex" />
		</set-properties-rule>
		<call-method-rule methodname="setCondition" paramcount="0" />
		<set-next-rule methodname="addStyle" />
	</pattern>

	<!-- */childblock/cellstyle -->
	<pattern value="*/childblock/cellstyle">
		<object-create-rule classname="com.feilong.excel.definition.ExcelCellConditionStyle" />
		<set-properties-rule>
			<alias attr-name="start" prop-name="startCellIndex" />
			<alias attr-name="end" prop-name="endCellIndex" />
			<alias attr-name="position" prop-name="cellIndex" />
		</set-properties-rule>
		<call-method-rule methodname="setCondition" paramcount="0" />
		<set-next-rule methodname="addStyle" />
	</pattern>

	<!-- */cell/cellstyle -->
	<pattern value="*/cell/cellstyle">
		<object-create-rule classname="com.feilong.excel.definition.ExcelCellConditionStyle" />
		<set-properties-rule>
			<alias attr-name="position" prop-name="cellIndex" />
		</set-properties-rule>
		<call-method-rule methodname="setCondition" paramcount="0" />
		<set-next-rule methodname="addStyle" />
	</pattern>
</digester-rules>




© 2015 - 2024 Weber Informatics LLC | Privacy Policy