io.sirix.access.GenericLocalDatabaseComponent Maven / Gradle / Ivy
package io.sirix.access;
import dagger.BindsInstance;
import io.sirix.api.Database;
import io.sirix.api.ResourceSession;
/**
* An interface that aggregates all the common logic between {@link Database} subcomponents.
*
* @author Joao Sousa
*/
public interface GenericLocalDatabaseComponent, C extends GenericResourceSessionComponent.Builder> {
Database database();
C resourceManagerBuilder();
interface Builder> {
@BindsInstance
B databaseConfiguration(DatabaseConfiguration configuration);
@BindsInstance
B user(User user);
GenericLocalDatabaseComponent build();
}
}