次のリンクでは、サービス インターフェイスと start() および stop() メソッドを使用して、Guice でモジュールの初期化と破棄を処理する方法について説明します。
http://code.google.com/p/google-guice/wiki/ModulesShouldBeFastAndSideEffectFree
ドキュメントでは、サービスの作成はクライアント コードでは次のようになると説明されています。
public static void main(String[] args) throws Exception {
Injector injector = Guice.createInjector(
new DatabaseModule(),
new WebserverModule(),
...
);
Service databaseConnectionPool = injector.getInstance(
Key.get(Service.class, DatabaseService.class));
databaseConnectionPool.start();
addShutdownHook(databaseConnectionPool);
Service webserver = injector.getInstance(
Key.get(Service.class, WebserverService.class));
webserver.start();
addShutdownHook(webserver);
}
ただし、Concrete Service クラスのサンプル実装はリストされていません。誰でも私に提供できますか?少なくとも start() と stop() に含まれるもののサンプル実装。