diff --git a/guice/src/main/java/com/baeldung/examples/guice/modules/GuiceModule.java b/guice/src/main/java/com/baeldung/examples/guice/modules/GuiceModule.java index 44b566240e..8dba228f08 100644 --- a/guice/src/main/java/com/baeldung/examples/guice/modules/GuiceModule.java +++ b/guice/src/main/java/com/baeldung/examples/guice/modules/GuiceModule.java @@ -1,47 +1,50 @@ -package com.baeldung.examples.guice.modules; - -import com.baeldung.examples.common.AccountService; -import com.baeldung.examples.common.AccountServiceImpl; -import com.baeldung.examples.common.BookService; -import com.baeldung.examples.common.BookServiceImpl; -import com.baeldung.examples.guice.Foo; -import com.baeldung.examples.guice.Person; -import com.google.inject.AbstractModule; -import com.google.inject.Provider; -import com.google.inject.Provides; - -public class GuiceModule extends AbstractModule { - - @Override - protected void configure() { - try { - bind(AccountService.class).to(AccountServiceImpl.class); - bind(Foo.class).toProvider(new Provider() { - public Foo get() { - return null; - } - }); - - bind(Person.class).toConstructor(Person.class.getConstructor()); - // bind(Person.class).toProvider(new Provider() { - // public Person get() { - // Person p = new Person(); - // return p; - // } - // }); - } catch (NoSuchMethodException e) { - // TODO Auto-generated catch block - e.printStackTrace(); - } catch (SecurityException e) { - // TODO Auto-generated catch block - e.printStackTrace(); - } - - } - - @Provides - public BookService bookServiceGenerator() { - return new BookServiceImpl(); - } - -} +package com.baeldung.examples.guice.modules; + +import com.baeldung.examples.common.AccountService; +import com.baeldung.examples.common.AccountServiceImpl; +import com.baeldung.examples.common.BookService; +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.Person; +import com.google.inject.AbstractModule; +import com.google.inject.Provider; +import com.google.inject.Provides; + +public class GuiceModule extends AbstractModule { + + @Override + protected void configure() { + try { + bind(PersonDao.class).to(PersonDaoImpl.class); + bind(AccountService.class).to(AccountServiceImpl.class); + bind(Foo.class).toProvider(new Provider() { + public Foo get() { + return null; + } + }); + + bind(Person.class).toConstructor(Person.class.getConstructor()); + // bind(Person.class).toProvider(new Provider() { + // public Person get() { + // Person p = new Person(); + // return p; + // } + // }); + } catch (NoSuchMethodException e) { + // TODO Auto-generated catch block + e.printStackTrace(); + } catch (SecurityException e) { + // TODO Auto-generated catch block + e.printStackTrace(); + } + + } + + @Provides + public BookService bookServiceGenerator() { + return new BookServiceImpl(); + } + +}