0
public class DummyService {
// Create new DummyModel with default value,
// Set value read from config file
private static final DummyModel INSTANCE = new DummyModel(Play.application().configuration().getString('some-value'));
public static DummyModel get() {
return INSTANCE;
}
}
そして、私はそれを使用する:今すぐ
DummyService.get().someMethod();
私はこのDummyServiceを使用するユニットテストを書くことをしようとしているが、DummyModel静的インスタンスが作成されるので、これは難しいですいくつかの設定ファイルから。
私は依存性注入パターンでシングルトンを作成しようとしていますが、私が正しくそれをしているかどうかはわかりません。私が作成した何 :
@Singleton
public class DummyService {
private Configuration config;
private DummyModel dummy;
@Inject
public DummyService(Configuration config) {
this.configuration = config;
this.dummy = new DummyModel(config.getString('some-value'));
}
}
私は新しいDummyServiceを作成し、各時間をconfigコン提供する必要がありますか?
DummyModelはまだシングルトンですか?
セッターやctor注入を使用する必要がありますか?
私は引数を持たない新しいCTORをconfigおよび作成するために、デフォルト値を設定することができ、のみ:
private Configuration config = Play.application().configuration();
@Inject
public DummyService() {
this.dummy = new DummyModel(config.getString('some-value'));
}