package ru.arturvasilov.sqlite.core; import android.net.Uri; import android.support.annotation.NonNull; import org.sqlite.database.sqlite.SQLiteDatabase; /** * @author Artur Vasilov */ public abstract class BaseTable<T> implements Table<T> { @NonNull @Override public final Uri getUri() { return SQLiteContentProvider.getBaseUri().buildUpon().appendPath(getTableName()).build(); } @Override public int getLastUpgradeVersion() { return 1; } @NonNull @Override public String getTableName() { return getClass().getSimpleName(); } @Override public void onUpgrade(@NonNull SQLiteDatabase database) { database.execSQL("DROP TABLE IF EXISTS " + getTableName()); onCreate(database); } }