Merge remote-tracking branch 'origin/BAEL-2399' into BAEL-2399

This commit is contained in:
emineoymak 2019-01-01 03:09:16 -05:00
commit e62fd6b4fb
1 changed files with 50 additions and 47 deletions

View File

@ -4,6 +4,8 @@ import com.baeldung.examples.common.AccountService;
import com.baeldung.examples.common.AccountServiceImpl; import com.baeldung.examples.common.AccountServiceImpl;
import com.baeldung.examples.common.BookService; import com.baeldung.examples.common.BookService;
import com.baeldung.examples.common.BookServiceImpl; import com.baeldung.examples.common.BookServiceImpl;
import com.baeldung.examples.common.PersonDao;
import com.baeldung.examples.common.PersonDaoImpl;
import com.baeldung.examples.guice.Foo; import com.baeldung.examples.guice.Foo;
import com.baeldung.examples.guice.Person; import com.baeldung.examples.guice.Person;
import com.google.inject.AbstractModule; import com.google.inject.AbstractModule;
@ -12,36 +14,37 @@ import com.google.inject.Provides;
public class GuiceModule extends AbstractModule { public class GuiceModule extends AbstractModule {
@Override @Override
protected void configure() { protected void configure() {
try { try {
bind(AccountService.class).to(AccountServiceImpl.class); bind(PersonDao.class).to(PersonDaoImpl.class);
bind(Foo.class).toProvider(new Provider<Foo>() { bind(AccountService.class).to(AccountServiceImpl.class);
public Foo get() { bind(Foo.class).toProvider(new Provider<Foo>() {
return null; public Foo get() {
} return null;
}); }
});
bind(Person.class).toConstructor(Person.class.getConstructor()); bind(Person.class).toConstructor(Person.class.getConstructor());
// bind(Person.class).toProvider(new Provider<Person>() { // bind(Person.class).toProvider(new Provider<Person>() {
// public Person get() { // public Person get() {
// Person p = new Person(); // Person p = new Person();
// return p; // return p;
// } // }
// }); // });
} catch (NoSuchMethodException e) { } catch (NoSuchMethodException e) {
// TODO Auto-generated catch block // TODO Auto-generated catch block
e.printStackTrace(); e.printStackTrace();
} catch (SecurityException e) { } catch (SecurityException e) {
// TODO Auto-generated catch block // TODO Auto-generated catch block
e.printStackTrace(); e.printStackTrace();
} }
} }
@Provides @Provides
public BookService bookServiceGenerator() { public BookService bookServiceGenerator() {
return new BookServiceImpl(); return new BookServiceImpl();
} }
} }