package <%= managed_package %>;
import <%= base_package %>.<%= application_name %>EntryPoint.<%= application_name %>Application; import <%= base_package %>.<% if options -%>Session<% end -%>ActivityPlaceActivityMapper; <% if options -%> import <%= activities_package %>.LoginActivity; <% end -%> import <%= gwt_rails_package %>.Application; import <%= gwt_rails_package %>.BaseModule;
import com.google.gwt.activity.shared.Activity; import com.google.gwt.activity.shared.ActivityMapper; import com.google.gwt.core.client.GWT; import com.google.gwt.inject.client.assistedinject.GinFactoryModuleBuilder; import com.google.gwt.place.shared.PlaceHistoryMapper; import com.google.inject.Provider; import com.google.inject.Singleton; import com.google.inject.name.Names;
<% if options -%> import <%= views_package %>.LoginViewImpl;
import <%= gwt_rails_session_package %>.LoginView; <% end -%> public class <%= application_name %>Module extends BaseModule {
@Override protected void configure() { super.configure(); bind(Application.class).to(<%= application_name %>Application.class); bind(PlaceHistoryMapper.class).to(<%= application_name %>PlaceHistoryMapper.class).in(Singleton.class); bind(ActivityMapper.class).to(<% if options[:session] -%>Session<% end -%>ActivityPlaceActivityMapper.class).in(Singleton.class);
<% if options -%>
bind(LoginView.class).to(LoginViewImpl.class);
<% end -%>
install(new GinFactoryModuleBuilder()
<% if options -%>
.implement(Activity.class, Names.named("login"), LoginActivity.class)
<% end -%>
.build(ActivityFactory.class)); }
}