/**
- * Sone - NewSoneHandler.kt - Copyright © 2019 David ‘Bombe’ Roden
+ * Sone - NewSoneHandler.kt - Copyright © 2019–2020 David ‘Bombe’ Roden
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
import net.pterodactylus.sone.data.*
import net.pterodactylus.sone.notify.*
import net.pterodactylus.util.notify.*
-import net.pterodactylus.util.template.*
+import javax.inject.*
/**
* Notification handler for “new Sone discovered” events.
*/
-class NewSoneHandler(private val notificationManager: NotificationManager, template: Template) {
-
- private val notification = ListNotification<Sone>("new-sone-notification", "sones", template, dismissable = false)
+class NewSoneHandler @Inject constructor(private val notificationManager: NotificationManager, @Named("newSone") private val notification: ListNotification<Sone>) {
@Subscribe
fun newSoneFound(newSoneFoundEvent: NewSoneFoundEvent) {
- if (!notificationManager.hasNotification("first-start-notification")) {
+ if (!notificationManager.hasFirstStartNotification()) {
notification.add(newSoneFoundEvent.sone)
notificationManager.addNotification(notification)
}
}
}
-
-private fun NotificationManager.hasNotification(id: String) =
- getNotification(id) != null