package com.example.defenseapplication.utils object DeviceIdEvent { private val listeners = mutableListOf() private var currentDeviceId: String? = null interface DeviceIdListener { fun onDeviceIdChanged(deviceId: String) } fun addListener(listener: DeviceIdListener) { if (!listeners.contains(listener)) { listeners.add(listener) currentDeviceId?.let { listener.onDeviceIdChanged(it) } } } fun removeListener(listener: DeviceIdListener) { listeners.remove(listener) } fun setDeviceId(deviceId: String) { currentDeviceId = deviceId listeners.forEach { it.onDeviceIdChanged(deviceId) } } fun getDeviceId(): String? { return currentDeviceId } }