com.google.gwt.inject.client
Interface GinModule

All Known Implementing Classes:
AbstractGinModule, FactoryModule, PrivateGinModule

public interface GinModule

GIN counterpart of Guice's Module. A GinModule implementation is compiled both by the regular Java compiler and by the GWT compiler.

The regular-compiled version is used at GWT compile time as part of the implementation of the Generator that outputs the generated Ginjector class. Notably, the Generator calls the configure method on the module class.

The GWT-compiled version is used client-side at runtime. This is necessary to support provider methods. Important, the GWT client code never actually calls the configure method on the module class and it is eliminated as dead code by the compiler. So configure needs to be GWT compilable, but the resulting code will never execute.

Because GinModule classes need to compile as GWT code, all types that modules reference must be GWT translatable. This is a problem for types like Key and TypeLiteral, since they normally reference Type instances and other untranslatable things. But since the configure method that uses them won't actually be executed, all we need is to satisfy the compiler. Thus, we can get away with using super-source to provide dummy stubs of Key and TypeLiteral.


Method Summary
 void configure(GinBinder binder)
          Contributes bindings and other configurations for this module to binder.
 

Method Detail

configure

void configure(GinBinder binder)
Contributes bindings and other configurations for this module to binder.