2016-11-15 3 views
0

実行時に動的バインディングを提供する方法はありますか? AbstractBinderを使用すると、ファクトリをバインドできますが、コンパイル時にクラスの型を知る必要があります。Jersey 2.xの動的バインド

の効果に何か:

public class MyDynamicBinder implements DynamicBinder { 
    @Override 
    public boolean canBind(Class<?> someContract) { 
     return iCanBindThis(someContract); 
    } 

    @Override 
    public Object bind(Class<?> someContract) { 
     return getMyInstance(someContract); 
    } 
} 

答えて

0

HK2は非常に動的噴射容器です。 guiceとCDIとは異なり、適切な特権を持っている場合はいつでも、ServiceLocatorにサービスを追加できます。 ServiceLocator(他のhk2サービスを利用できるサービスです)では、いつでも必要なサービスを追加するために、addClassesやaddOneDescriptorのようなServiceLocatorUtilitiesのメソッドを使用できます。サービスをいつでも削除することもできますが、ごく少数のユーザーがこれを行うことはほとんどありません(自分で動的なコンテナを作成しない限り)

関連する問題