かとじゅんの技術日誌

技術の話をするところ

DiconConditionUtil

DiconConditionUtil.これは使える!

<components namespace="teeda">
	<include path="convention.dicon"
		condition="@org.seasar.teeda.core.util.DiconConditionUtil@hasConvention()" />
	<include path="teedaErrorPage.dicon"
		condition="@org.seasar.teeda.core.util.DiconConditionUtil@hasErrorPageDicon()" />
	<include path="teedaCustomize.dicon"
		condition="@org.seasar.teeda.core.util.DiconConditionUtil@hasCustomizeDicon()" />

teeda-coreのteeda.diconですが,conditionに指定するクラスメソッドの戻り値で読み込むかどうかを決めているのかな.
hasConventionはconvention.diconが存在さればincldueするということになるようです.むむ,エレガント.
S2Chronosでもこの仕組みを使わせてもらってchronosCustomize.diconを実装しました.勉強になるなぁ.