Seasar?

折角Service層のインタフェースを作るんだったら、
Serviceをさくっとモックとかに入れ替えられたらいいんじゃないかと思った。

固定名で定義

convention.dicon

<component class="org.seasar.framework.convention.impl.NamingConventionImpl">
	(略)
	
	<initMethod name="addInterfaceToImplementationClassName">
		<arg>"com.test.service.HelloService"</arg>
		<arg>"com.test.service.mock.HelloServiceMock"</arg>
	</initMethod>
</component>

Suffixを変えてみる

convention.dicon

<component class="org.seasar.framework.convention.impl.NamingConventionImpl">
	(略)
	
	<property name="implementationSuffix">
		"Mock"
	</property>
</component>

多分今までが「Impl」だったところを「Mock」に変えるわけだから、
「xxxx.mock.XxxxxMock?」のようなクラス名のインスタンスが作られる
・・・と思う

Serviceだけ違うNameConvention?を使う

creator.dicon

<component class="org.seasar.framework.container.creator.ServiceCreator">
	<arg>
		<component name="serviceNamingConvention" class="org.seasar.framework.convention.impl.NamingConventionImpl">
			(略と同じ)
			<property name="implementationSuffix">
				"Mock"
			</property>
		</component>
	</arg>
</component>

Serviceクラスだけ、Mockクラスのインスタンスが作られる、はず。

Tag: Java Seasar


トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2009-06-01 (月) 15:40:44 (1086d)
.NET Ajax AmazonWebServices Android C# C++ CMS Cacoo DB Exam Generics Java JavaScript Local Oracle PHP Perl Photo Programming Pukiwiki Python Qt Review Ruby SQLServer Seasar Software Tips Tool VB WebService Windows WindowsMobile XHTML XML XMLMaster XSLT game pdf wkhtmltopdf