/* DO NOT EDIT: File is auto-generated */
package <%= to_package(repository.arez.qualified_dao_gin_module_name) %>;

@java.lang.SuppressWarnings( { "UnusedDeclaration" } )
@javax.annotation.Generated( "Domgen" )
public class <%= repository.arez.dao_gin_module_name %>
  extends com.google.gwt.inject.client.AbstractGinModule
{
  @java.lang.Override
  protected void configure()
  {
<%
  repository.data_modules.select{|data_module| data_module.arez?}.each do |data_module|
    data_module.daos.select{|dao| dao.arez? && !dao.entity.abstract?}.each do |dao|
-%>
    bind<%= dao.qualified_name.to_s.gsub('.','') %>();
<%
    end
  end
-%>
  }
<%
  repository.data_modules.select{|data_module| data_module.arez?}.each do |data_module|
    data_module.daos.select{|dao| dao.arez? && !dao.entity.abstract?}.each do |dao|
-%>

  protected void bind<%= dao.qualified_name.to_s.gsub('.','') %>()
  {
    bind( <%= dao.arez.qualified_repository_name %>.class ).to( <%= dao.arez.qualified_repository_name %>.class ).in( javax.inject.Singleton.class );
  }
<%
    end
  end
-%>
}

/* DO NOT EDIT: File is auto-generated */
package <%= to_package(repository.arez.qualified_dao_gin_module_name) %>;

@java.lang.SuppressWarnings( { "UnusedDeclaration" } )
@javax.annotation.Generated( "Domgen" )
public class <%= repository.arez.dao_gin_module_name %>
  extends com.google.gwt.inject.client.AbstractGinModule
{
  @java.lang.Override
  protected void configure()
  {
    bind( <%= repository.arez.qualified_root_repository_name %>.class ).in( javax.inject.Singleton.class );
  }
<%
  repository.data_modules.select{|data_module| data_module.arez?}.each do |data_module|
    data_module.daos.select{|dao| dao.arez? && !dao.entity.abstract?}.each do |dao|
-%>

  @javax.annotation.Nonnull
  @com.google.inject.Provides
  @javax.inject.Singleton
  public final <%= dao.arez.qualified_repository_name %> get<%= dao.qualified_name.to_s.gsub('.','') %>( @javax.annotation.Nonnull final <%= repository.arez.qualified_root_repository_name %> repository )
  {
    return repository.<%= Reality::Naming.camelize(data_module.name) %>().<%= Reality::Naming.camelize(dao.name) %>();
  }
<%
    end
  end
-%>
}

Fix binding of dao instances in GIN modules
Fix binding of dao instances in GIN modules
