Following sample will demonstrate how to access guice dependency annotated with some annotation through direct Guice injector instance.
Bar.java
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import com.google.inject.BindingAnnotation;
@Retention(RetentionPolicy.RUNTIME)
@BindingAnnotation
public @interface Bar {
}
Foo.java
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import com.google.inject.BindingAnnotation;
@Retention(RetentionPolicy.RUNTIME)
@BindingAnnotation
public @interface Foo {
}
TestDepdency.java
public interface TestDepdency {
String getValue();
}
FooTestDependencyImpl.java
public class FooTestDependencyImpl implements TestDepdency {
@Override
public String getValue() {
return "Foo";
}
}
BarTestDependencyImpl.java
public class BarTestDependencyImpl implements TestDepdency {
@Override
public String getValue() {
return "Bar";
}
}
Test.java
import com.google.inject.AbstractModule;
import com.google.inject.Guice;
import com.google.inject.Injector;
import com.google.inject.Key;
public class Test {
public static void main(String[] args) {
Injector injector = Guice.createInjector(new AbstractModule() {
@Override
protected void configure() {
bind(TestDepdency.class).annotatedWith(Foo.class).to(FooTestDependencyImpl.class);
bind(TestDepdency.class).annotatedWith(Bar.class).to(BarTestDependencyImpl.class);
}
});
TestDepdency foo = injector.getInstance(Key.get(TestDepdency.class, Foo.class));
System.out.println(foo.getValue());
TestDepdency bar = injector.getInstance(Key.get(TestDepdency.class, Bar.class));
System.out.println(bar.getValue());
}
}
Final output
Foo
Bar
In the similar way you can retrieve the annotated provider.
ReplyDeleteكشف تسربات المياه
شركة تسليك مجارى بالرياض
افضل شركة تنظيف خزانات بالرياض
شركة مكافحة النمل الابيض بالرياض
شركة تخزين اثاث بالرياض
شركة تنظيف فلل بالرياض
شركة كشف تسربات المياه بالرياض
شركة شراء اثاث مستعمل بالرياض
شركة جلي البلاط بالرياض
شركة تنظيف شقق بالرياض
شركة نقل اثاث بالرياض
شركة تنظيف موكيت بالرياض
ReplyDeleteشركة تنظيف مجالس بالرياض
شركة تنظيف مسابح بالرياض
شركة تنظيف بالرياض
شركة تنظيف فلل بالرياض
شركة تنظيف قصور بالرياض
شركة مكافحة الحشرات بالرياض
شركة رش مبيدات بالرياض
شركة مكافحة حشرات بالرياض
شركة عزل اسطح بالرياض
شركة رش حشرات بالرياض
Great Article
DeleteIEEE Final Year Projects for CSE
IEEE Project Centers in Chennai
thanks a lot, nice information
ReplyDeleteتعليقات
تعليقات فيس بوك
شركة نقل عفش بالرياض
شركة نقل اثاث بالرياض
شركة تنظيف بالرياض
شركة رش مبيدات بالدمام
شركة تنظيف منازل بالدمام
شركة مكافحة حشرات بالدمام
شركة مكافحة حشرات بجده
شركة مكافحة حشرات بالقطيف
شركة مكافحة حشرات بالطائف
شركة مكافحة النمل الابيض بالدمام
شركة مكافحة حشرات ببقيق
شركة رش مبيدات بجده
شركة مكافحة حشرات براس تنوره
شركة تسليك مجارى بالدمام
شركة تنظيف منازل بالاحساء
ReplyDeleteشركة تنظيف بالاحساء
شركة تنظيف كنب بالاحساء
شركة مكافحة حشرات بالاحساء
ReplyDeleteشركة تنظيف بالدمام _شركة الأهرام المثالية
افضل شركة تنظيف مكيفات بالدمام
شركة تنظيف فلل بالدمام شركة الأهرام المثالية
شركة تسليك مجاري بالدمام شركة الأهرام المقالية
شركة تنظيف خزانات بالدمام شركة الأهرام المثالية
شركة تنظيف مجالس بالدمام شركة الأهرام المثالية
شركة تنظيف سجاد بالدمام شركة الأهرام المثالية
افضل شركة رش مبيدات بالدمام شركة الاهرام المثالية
شركة الأهرام المثالية شركة مكافحة حشرات بالدمام
شركة الأهرام المثالية للخدمات المنزلية
ReplyDeleteشركة مكافحة حمام بالاحساء
شركة مكافحة الحمام _الطيور بالرياض
شركة تنظيف مكيفات بالاحساء
شركة تنظيف مكيفات بالرياض
شركة تنظيف مكيفات بالخرج
ارخص شركة تركيب طارد حمام بالرياض
شركة تنظيف مكيفات بالرياض
شركة تركيب طارد حمام بالرياض
ارخص شركة تركيب طارد حمام بالدمام
شركة مكافحة حمام بالرياض
Grreat blog post
ReplyDelete