implementation 'com.github.Torch-ORM:torch:1.2.1'
public class DatabaseHelper extends SQLiteOpenHelper {
private static final String DATABASE_NAME = "todo.db";
private static final int DATABASE_VERSION = 1;
public DatabaseHelper(Context context) {
super(context, DATABASE_NAME, null, DATABASE_VERSION);
}
@Override
public void onCreate(SQLiteDatabase db) {
Torch.onCreate(db);
}
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
Torch.dropAllTables(db);
onCreate(db);
}
}
@Table(name = "tasks")
public class Task extends Model {
@Column(name = "title")
private String title;
@Column(name = "description")
private String description;
@Column(name = "deadline")
private long deadline;
@Column(name = "completed")
private boolean completed;
// Getters and setters
}
Torch.initialize(getApplicationContext());
DatabaseHelper databaseHelper = new DatabaseHelper(getApplicationContext());
SQLiteDatabase database = databaseHelper.getWritableDatabase();
Task task1 = new Task();
task1.setCompleted(false);
task1.save(database);
List<Task> taskList = Torch.select(Task.class).findAll(database);
for (Task task : taskList) {
Log.d("Task", task.getTitle());
}
Task taskToUpdate = taskList.get(0);
taskToUpdate.setCompleted(true);
taskToUpdate.save(database);
taskList.get(0).delete(database);