Descripton

  • bind(Service.class).to(ServiceImpl.class).in(Singleton.class); open
  • bind(CreditCardPaymentService.class); open
  • bind(PaymentService.class).to(CreditCardPaymentService.class); open
  • bindConstant().annotatedWith(Names.named("port")).to(8080); open

Blocks

  • Binder#bindInterceptor(com.google.inject.matcher.Matcher, open
  • org.aopalliance.intercept.MethodInterceptor[]) open
  • Binder#bindListener(com.google.inject.matcher.Matcher, open

Descripton

  • bind(ServiceImpl.class); open
  • bind(Service.class).to(ServiceImpl.class); open
  • bind(Service.class).toProvider(ServiceProvider.class); open
  • bind(Service.class).annotatedWith(Red.class).to(ServiceImpl.class); open
  • bind(ServiceImpl.class).in(Singleton.class); open
  • bind(ServiceImpl.class).in(Scopes.SINGLETON); open
  • bind(new open
  • TypeLiteral<PaymentService<CreditCard>>() open
  • .to(CreditCardPaymentService.class); open
  • bind(Service.class).toInstance(new open
  • bind(Service.class).toInstance(SomeLegacyRegistry.getService()); open
  • bindConstant().annotatedWith(ServerHost.class).to(args[0]); open
  • eligile open
  • Color("red") open
  • MyModule.class.getDeclaredField("red").getAnnotation(Color.class); open
  • bind(Service.class).annotatedWith(red).to(RedService.class); open
  • bind(Service.class) open
  • .annotatedWith(Names.named("blue")) open
  • .to(BlueService.class); open
  • loneCtor open
  • getLoneCtorFromServiceImplViaReflection(); open
  • bind(ServiceImpl.class) open
  • .toConstructor(loneCtor); open
  • interceptor[s] open
  • bind(Foo.class).to(FooImpl.class) open
  • FooImpl open
  • bind(FooImpl.class) open
  • no-args open
  • Named("foo") open

Descripton

  • bind(Service.class).annotatedWith(Red.class).to(ServiceImpl.class); open
  • bindConstant().annotatedWith(ServerHost.class).to(args[0]); open

Descripton

Descripton

  • args) open
  • Guice.createInjector( open
  • FooApplicationFlagsModule(args) open
  • injector.getInstance(FooStarter.class); open
  • starter.runApplication(); open
  • Stage.DEVELOPMENT. open
  • Stage.DEVELOPMENT. open

Descripton

  • FooBarBazModule open
  • bind(Foo.class).to(RealFoo.class); open
  • expose(Foo.class); open
  • install(new open
  • expose(Bar.class).annotatedWith(Transactional.class); open
  • bind(SomeImplementationDetail.class); open
  • install(new open
  • Baz open
  • provideBaz() open
  • SuperBaz(); open
  • bind(FooImpl.class); open

Blocks

  • org.aopalliance.intercept.MethodInterceptor[]) open
  • Binder#bindInterceptor(com.google.inject.matcher.Matcher, open
  • Binder#convertToTypes(com.google.inject.matcher.Matcher, open
  • Binder#bindListener(com.google.inject.matcher.Matcher, open

Descripton

Blocks

  • com.google.inject.Injector#injectMembers open
  • com.google.inject.Injector#injectMembers open
  • com.google.inject.Injector#injectMembers open

Descripton

Descripton

  • com.google.guice.name.Named. open
  • com.google.guice.name.Named. open

Descripton

  • ie. open
  • "com.google.inject.internal" open
  • "net.sf.cglib", open
  • "com.google.inject.internal.cglib" open
  • cglib open
  • permgen open

Descripton

Blocks

  • com.google.inject.internal.CycleDetectingLock.CycleDetectingLockFactory open

Descripton

  • Guice.createInjector(new open
  • bind(Runnable.class); open
  • Guice.createInjector().getInstance(Runnable.class); open

Blocks

  • https://en.wikipedia.org/wiki/English_numerals#Ordinal_numbers open

Descripton

Blocks

Descripton

  • ThreadLocal.set() open
  • InternalContext.class open
  • state.lock() open
  • state.lock(). open
  • @ProvidedBy. open
  • @ImplementedBy. open

Descripton

Descripton

Descripton

Descripton

Descripton

  • Object.class. open

Descripton

  • simplename open
  • JSR-305's open
  • javax.annotation.meta.Nullable open
  • org.jetbrains.annotations.Nullable open

Descripton

Descripton

Descripton

Descripton

Descripton

  • java.util.Optional.empty() open
  • java.util.Optional.of. open
  • setBinding/setDefault. open

Descripton

Descripton

Descripton

Descripton

  • UntargettedBindings. open

Descripton

  • MapBinder<String, open
  • Snack> open
  • MapBinder.newMapBinder(binder(), open
  • String.class, open
  • Snack.class); open
  • mapbinder.addBinding("twix").toInstance(new open
  • Twix()); open
  • mapbinder.addBinding("snickers").toProvider(SnickersProvider.class); open
  • mapbinder.addBinding("skittles").to(Skittles.class); open
  • SnackMachine(Map<String, open
  • Snack> open
  • SnackMachine(Map<String, open
  • Provider<Snack>> open

Descripton

Blocks

  • MapBinderBinding<Map<String, open
  • Snack>> open

Descripton

  • Multibinder<Snack> open
  • Multibinder.newSetBinder(binder(), open
  • Snack.class); open
  • multibinder.addBinding().toInstance(new open
  • Twix()); open
  • multibinder.addBinding().toProvider(SnickersProvider.class); open
  • multibinder.addBinding().to(Skittles.class); open
  • SnackMachine(Set<Snack> open

Descripton

  • Set<String> open
  • TypeLiteral<String> open
  • Set<String> open
  • List<Binding<String>> open

Blocks

  • MultibinderBinding<Set<Boolean>> open

Descripton

  • OptionalBinder.newOptionalBinder(binder(), open
  • Renamer.class); open
  • UserRenamerModule open
  • bind(Renamer.class).to(ReplacingRenamer.class); open
  • UserRenamerModule open
  • OptionalBinder.newOptionalBinder(binder(), open
  • Renamer.class) open
  • .setBinding().to(ReplacingRenamer.class); open
  • ReplacingRenamer. open
  • OptionalBinder.newOptionalBinder(binder(), open
  • Key.get(String.class, open
  • LookupUrl.class)) open
  • .setDefault().toInstance(DEFAULT_LOOKUP_URL); open
  • OptionalBinder.newOptionalBinder(binder(), open
  • Key.get(String.class, open
  • LookupUrl.class)) open
  • .setBinding().toInstance(CUSTOM_LOOKUP_URL); open
  • OptionalBinder.newOptionalBinder(binder(), open
  • Key.get(String.class, open
  • LookupUrl.class)) open
  • .setDefault().toInstance(DEFAULT_LOOKUP_URL); open
  • bind(Key.get(String.class, open
  • LookupUrl.class)).toInstance(CUSTOM_LOOKUP_URL); open

Descripton

  • Optional<String> open
  • Binding<String> open
  • Optional<String> open
  • Binding<String> open

Descripton

Descripton

Descripton

Descripton

Descripton

Descripton

Descripton

Blocks

Descripton

Descripton

  • overridding. open
  • javax.inject.Inject open

Blocks

Descripton

  • bindInterceptor(Matchers.subclassesOf(MyAction.class), open
  • Matchers.annotatedWith(Transactional.class), open

Descripton

  • MembersInjector<PaymentService> open
  • getMembersInjector(PaymentService.class); open

Descripton

Descripton

Descripton

  • Provider<PaymentService> open
  • getProvider(PaymentService.class); open

Descripton

  • <V, open
  • B> open
  • acceptExtensionVisitor(BindingTargetVisitor<B, open
  • V> open
  • ProviderInstanceBinding<? open
  • B> open
  • if(visitor open
  • ((MyCustomExtensionVisitor<B, open
  • V>)visitor).visitCustomExtension(customProperties, open
  • visitor.visit(binding); open
  • visitor.visit(binding). open

Blocks

Descripton

  • bindScope(RecordScoped.class, open

Descripton

  • requestStaticInjection(MyLegacyService.class); open

Descripton

Descripton

  • convertToTypes(Matchers.only(TypeLiteral.get(DateTime.class)), open

Descripton

  • interceptor[s] open

Descripton

  • register(only(new open
  • TypeLiteral<PaymentService<CreditCard>>() open

Descripton

Descripton

  • Modules.override(new open
  • ProductionModule()).with(new open
  • Modules.override(getProductionModules()).with(getTestModules()); open

Descripton

  • @ImplementedBy open
  • https://github.com/google/guice/issues/614 open
  • https://github.com/google/guice/issues/id=614 open
  • Untargetted open
  • @ImplementedBy open
  • @ProvidedBy open

Descripton

  • Scopes.SINGLETON. open
  • Scopes.SINGLETON open

Descripton

  • https://github.com/google/guice/issues/319 open
  • A-> open
  • JITable open

Descripton

  • Modules.combine open

Descripton

  • Provider.getInstance() open

Descripton

Descripton

Descripton

Descripton

Descripton

Descripton

  • @ProvidesInto open

Descripton

Blocks

  • com.google.inject.internal.BytecodeGen.Visibility open

Descripton

  • javax.inject.Provider open
  • javax.inject.Provider. open

Descripton

  • respresentation open

Descripton

  • AuthService open
  • authService, open
  • AuthService open
  • authService, open
  • AuthService open
  • authService, open
  • install(new open
  • .implement(Payment.class, open
  • RealPayment.class) open
  • .build(PaymentFactory.class)); open
  • install(new open
  • .implement(Payment.class, open
  • RealPayment.class) open
  • .implement(Receipt.class, open
  • RealReceipt.class) open
  • .build(OrderFactory.class)); open
  • paymentFactory.create(new open
  • payment.apply(); open
  • Assisted("startDate") open
  • Assisted("dueDate") open
  • AuthService open
  • authService, open
  • Assisted("startDate") open
  • Assisted("dueDate") open
  • install(new open
  • FactoryModuleBuilder().build(FruitFactory.class)); open
  • Named("fast") open
  • Named("clean") open
  • install(new open
  • .implement(Car.class, open
  • Names.named("fast"), open
  • Porsche.class) open
  • .implement(Car.class, open
  • Names.named("clean"), open
  • Prius.class) open
  • .build(CarFactory.class)); open

Descripton

  • AuthService open
  • authService, open
  • bind(PaymentFactory.class).toProvider( open
  • FactoryProvider.newFactory(PaymentFactory.class, open
  • RealPayment.class)); open
  • paymentFactory.create(new open
  • payment.apply(); open
  • Assisted("startDate") open
  • Assisted("dueDate") open
  • AuthService open
  • authService, open
  • Assisted("startDate") open
  • Assisted("dueDate") open
  • backwards-compatability open

Descripton

Descripton

  • https://github.com/google/guice/issues/125 open

Descripton

Descripton

Descripton

Descripton

Descripton

Descripton

Descripton

Descripton

  • http://www.graphviz.org/doc/info/arrows.html open

Descripton

  • http://www.graphviz.org/doc/info/attrs.html#k:portPos open
  • "compass_pt" open

Descripton

  • http://www.graphviz.org/doc/info/attrs.html#k:style open

Descripton

Descripton

  • http://www.graphviz.org/doc/info/shapes.html open

Descripton

  • http://www.graphviz.org/doc/info/attrs.html#k:style open

Descripton

  • bind(DataSource.class).toProvider(fromJndi(DataSource.class, open

Descripton

Descripton

  • https://github.com/google/guice/wiki/GuicePersist open

Descripton

  • session-per-txn open

Descripton

Descripton

Descripton

Blocks

Descripton

  • guice-persist's open

Descripton

  • @Transactional open
  • @Transactional open

Descripton

Descripton

  • <filter> open
  • <filter-name>guiceFilter</filter-name> open
  • <filter-class> open
  • </filter-class> open
  • </filter> open
  • <filter-mapping> open
  • <filter-name>guiceFilter</filter-name> open
  • <url-pattern>/*</url-pattern> open
  • </filter-mapping> open

Descripton

Descripton

Descripton

Descripton

  • Guice.createInjector(..., open
  • serve("*.html").with(MyServlet.class) open
  • serve("/my/*").with(MyServlet.class) open
  • Guice.createInjector(..., open
  • filter("/*").through(MyFilter.class); open
  • filter("*.css").through(MyCssFilter.class); open
  • filter("*.jpg").through(new open
  • MyJpgFilter()); open
  • serve("*.html").with(MyServlet.class); open
  • serve("/my/*").with(MyServlet.class); open
  • serve("*.jpg").with(new open
  • serve("*.html").with(MyServlet.class); open
  • serve("/my/*").with(MyServlet.class); open
  • ).with(MyServlet.class); open
  • serveRegex("(.)*ajax(.)*").with(MyAjaxServlet.class) open
  • "ajax" open
  • http://www.google.com/ajax.html open
  • http://www.google.com/content/ajax/index open
  • http://www.google.com/it/is_totally_ajaxian open
  • init open
  • params open
  • Map<String, open
  • String> open
  • params open
  • HashMap<String, open
  • String>(); open
  • params.put("name", open
  • params.put("site", open
  • "google.com"); open
  • serve("/*").with(MyServlet.class, open
  • params open
  • visbility open
  • filter("/*").through( open
  • Key.get(Filter.class, open
  • Fave.class) open
  • bind(Filter.class) open
  • .annotatedWith(Fave.class) open
  • .to(MyFilterImpl.class); open
  • filter("/*").through(RpcFilter.class); open
  • filter("/*").through(WebServiceFilter.class); open
  • install(new open
  • install(new open
  • RpcModule()); open

Descripton

Descripton

Descripton

Blocks

  • com.google.inject.Scopes#SINGLETON open

Blocks

  • NOTE(dhanji): open

Descripton

Descripton

  • servletmodule open

Descripton

  • WARNING(dhanji): open

Descripton

Descripton

  • WARNING(dhanji): open

Descripton

Descripton

  • WARNING(dhanji): open

Descripton

  • bind(DataSource.class) open
  • .toProvider(fromSpring(DataSource.class, open

Blocks

  • com.google.inject.name.Names#named(String) open

Descripton

  • "./struts2/example". open

Descripton

Descripton

  • https://github.com/google/guice/wiki/UseNullable open

Descripton

  • bind(new open
  • Lists.of(); open
  • bind(String.class).toProvider(new open
  • Bind(lazy open
  • bind(SuperClass.class).toInstance(aSubClass); open
  • Bind(to open
  • SuperClass.class) open
  • bind(String.class).annotatedWith(MyBindingAnnotation.class).toInstance(myString); open
  • bind(Object.class).toProvider(myProvider); open
  • Guice.createInjector(BoundFieldModule.of(this)).injectMembers(this); open
  • @Bind open

Descripton

  • RemoteProvider<T> open
  • CheckedProvider<T> open

Descripton

Descripton

  • ThrowingProviderBinder.create(binder()) open
  • .bind(RemoteProvider.class, open
  • Customer.class) open
  • .providing(CustomerImpl.class); open
  • CustomerImpl open

Descripton

  • RemoteProvider<T> open
  • ThrowingProvider<T, open
  • RemoteException> open

Descripton

  • ThrowingProviderBinder.create(binder()) open
  • .bind(RemoteProvider.class, open
  • Customer.class) open
  • .to(RemoteCustomerProvider.class) open
  • .in(RequestScope.class); open
  • install(ThrowingProviderBinder.forModule(this)); open
  • CheckedProvides(RemoteProvider.class) open
  • creator.getCustomerOrThrow(); open
  • ThrowingProviderBinder.create(binder()) open
  • .bind(RemoteProvider.class, open
  • Customer.class) open
  • .providing(CustomerImpl.class) open
  • .in(RequestScope.class); open