diff --git a/app/src/main/java/org/tasks/Notifier.kt b/app/src/main/java/org/tasks/Notifier.kt index 112aff1cd..0744e5c1b 100644 --- a/app/src/main/java/org/tasks/Notifier.kt +++ b/app/src/main/java/org/tasks/Notifier.kt @@ -7,12 +7,12 @@ import com.todoroo.astrid.api.Filter import com.todoroo.astrid.voice.VoiceOutputAssistant import dagger.hilt.android.qualifiers.ApplicationContext import kotlinx.coroutines.delay +import org.tasks.data.dao.TaskDao import org.tasks.data.entity.Alarm import org.tasks.data.entity.Alarm.Companion.TYPE_GEO_ENTER import org.tasks.data.entity.Alarm.Companion.TYPE_GEO_EXIT import org.tasks.data.entity.Geofence import org.tasks.data.entity.Notification -import org.tasks.data.dao.TaskDao import org.tasks.data.fetchFiltered import org.tasks.intents.TaskIntents import org.tasks.notifications.AudioManager @@ -77,12 +77,12 @@ class Notifier @Inject constructor( geofences .filter { if (arrival) it.isArrival else it.isDeparture } .map { - Notification().apply { - taskId = it.task - type = if (arrival) TYPE_GEO_ENTER else TYPE_GEO_EXIT - timestamp = currentTimeMillis() - location = place - } + Notification( + taskId = it.task, + type = if (arrival) TYPE_GEO_ENTER else TYPE_GEO_EXIT, + timestamp = currentTimeMillis(), + location = place, + ) } .let { triggerNotifications(it) } diff --git a/app/src/main/java/org/tasks/jobs/AlarmEntry.java b/app/src/main/java/org/tasks/jobs/AlarmEntry.java deleted file mode 100644 index f144b7248..000000000 --- a/app/src/main/java/org/tasks/jobs/AlarmEntry.java +++ /dev/null @@ -1,65 +0,0 @@ -package org.tasks.jobs; - -import static org.tasks.time.DateTimeUtils2.currentTimeMillis; -import static org.tasks.time.DateTimeUtilsKt.printTimestamp; - -import org.tasks.data.entity.Notification; - -import java.util.Objects; - -public class AlarmEntry { - - private final long alarmId; - private final long taskId; - private final long time; - private final int type; - - public AlarmEntry(long alarmId, long taskId, Long time, int type) { - this.alarmId = alarmId; - this.taskId = taskId; - this.time = time; - this.type = type; - } - - public long getId() { - return alarmId; - } - - public long getTime() { - return time; - } - - public long getTaskId() { - return taskId; - } - - public int getType() { - return type; - } - - public Notification toNotification() { - Notification notification = new Notification(); - notification.setTaskId(taskId); - notification.setType(type); - notification.setTimestamp(currentTimeMillis()); - return notification; - } - - @Override - public boolean equals(Object o) { - if (this == o) return true; - if (o == null || getClass() != o.getClass()) return false; - AlarmEntry that = (AlarmEntry) o; - return alarmId == that.alarmId && taskId == that.taskId && time == that.time && type == that.type; - } - - @Override - public int hashCode() { - return Objects.hash(alarmId, taskId, time, type); - } - - @Override - public String toString() { - return "AlarmEntry{alarmId=" + alarmId + ", taskId=" + taskId + ", time=" + printTimestamp(time) + ", type=" + type + '}'; - } -} diff --git a/app/src/main/java/org/tasks/jobs/AlarmEntry.kt b/app/src/main/java/org/tasks/jobs/AlarmEntry.kt new file mode 100644 index 000000000..9c1eda8dd --- /dev/null +++ b/app/src/main/java/org/tasks/jobs/AlarmEntry.kt @@ -0,0 +1,22 @@ +package org.tasks.jobs + +import org.tasks.data.entity.Notification +import org.tasks.time.DateTimeUtils2.currentTimeMillis +import org.tasks.time.printTimestamp + +data class AlarmEntry( + val id: Long, + val taskId: Long, + val time: Long, + val type: Int +) { + fun toNotification(): Notification = Notification( + taskId = taskId, + type = type, + timestamp = currentTimeMillis(), + ) + + override fun toString(): String { + return "AlarmEntry(id=$id, taskId=$taskId, time=${printTimestamp(time)}, type=$type)" + } +} diff --git a/data/src/main/kotlin/org/tasks/data/entity/Notification.kt b/data/src/main/kotlin/org/tasks/data/entity/Notification.kt index b237c266b..2957158a9 100644 --- a/data/src/main/kotlin/org/tasks/data/entity/Notification.kt +++ b/data/src/main/kotlin/org/tasks/data/entity/Notification.kt @@ -24,15 +24,15 @@ import org.tasks.data.db.Table data class Notification( @PrimaryKey(autoGenerate = true) @ColumnInfo(name = "uid") - var uid: Long = 0, + val uid: Long = 0, @ColumnInfo(name = "task") - var taskId: Long = 0, + val taskId: Long = 0, @ColumnInfo(name = "timestamp") - var timestamp: Long = 0, + val timestamp: Long = 0, @ColumnInfo(name = "type") - var type: Int = 0, + val type: Int = 0, @ColumnInfo(name = "location") - var location: Long? = null, + val location: Long? = null, ) { companion object { const val TABLE_NAME = "notification"