2016-05-07 6 views
1

インターフェイスの実装が存在するかどうかを確認する方法はありますか?例えばguiceバインダーhasBind機能

、方法「hasBind」は、以下が存在しません:

public class MyModule extends AbstractModule { 
    @Override 
    protected void configure() { 
     // do something like this: 
     if (!hasBind(SomeInterface.class)) { 
      bind(SomeInterface.class).to(MyOtherSomeInterface.class); 
     } 
    } 
} 

答えて

0

を適用して、モジュールの順序はGuiceのに重要ではありませんので、インジェクタが作成される前に結合が存在する場合は、あなたが見る、検出することはできませんthis post

提案されている解決策は、デフォルトのバインディングで開始モジュールを作成し、Modules.overwriteを使用してypurの追加バインディングを適用することです。