Use lib debug vars

This commit is contained in:
sim 2025-01-21 10:22:57 +01:00
parent 08afb9c9f4
commit 1bccfafd97
6 changed files with 21 additions and 8 deletions

View file

@ -87,6 +87,7 @@ class ServerConnection(private val context: Context, private val releaseLock: ()
private fun onHello(ws: WebSocket, message: ServerMessage.Hello) {
Log.d(TAG, "Hello")
FailureCounter.debugStarted()
ApiUrlCandidate.finish()?.let {
store.apiUrl = it
Log.d(TAG, "Successfully using $it")
@ -122,7 +123,7 @@ class ServerConnection(private val context: Context, private val releaseLock: ()
}
private fun onPing(ws: WebSocket) {
FailureCounter.newPing(context)
FailureCounter.debugNewPing(context)
if (!waitingPong.getAndSet(false)) {
Log.d(TAG, "Sending Pong")
ClientMessage.Ping.send(ws)
@ -199,7 +200,7 @@ class ServerConnection(private val context: Context, private val releaseLock: ()
Log.d(TAG, "StartService not started")
return false
}
if (!NetworkCallbackFactory.hasInternet) {
if (!NetworkCallbackFactory.hasInternet()) {
Log.d(TAG, "No Internet: do not restart")
// It will be restarted when Internet is back
return false

View file

@ -1,6 +1,7 @@
package org.unifiedpush.distributor.sunup.callback
import android.content.Context
import java.util.concurrent.atomic.AtomicBoolean
import org.unifiedpush.distributor.callback.BatteryCallback
import org.unifiedpush.distributor.callback.CallbackFactory
import org.unifiedpush.distributor.sunup.BuildConfig
@ -10,6 +11,7 @@ import org.unifiedpush.distributor.sunup.api.data.ClientMessage
object BatteryCallbackFactory : CallbackFactory<BatteryCallbackFactory.MainBatteryCallback>() {
class MainBatteryCallback : BatteryCallback() {
override val lowBattery = BatteryCallbackFactory.lowBattery
override fun onBatteryLow(context: Context) {
if (BuildConfig.URGENCY) {
@ -44,5 +46,9 @@ object BatteryCallbackFactory : CallbackFactory<BatteryCallbackFactory.MainBatte
/**
* Default to false
*/
val lowBattery: Boolean = instance?.isLowBattery() ?: false
private val lowBattery = AtomicBoolean(false)
fun isLowBattery(): Boolean {
return lowBattery.get()
}
}

View file

@ -1,6 +1,7 @@
package org.unifiedpush.distributor.sunup.callback
import android.content.Context
import java.util.concurrent.atomic.AtomicBoolean
import org.unifiedpush.distributor.callback.CallbackFactory
import org.unifiedpush.distributor.callback.NetworkCallback
import org.unifiedpush.distributor.sunup.services.FailureCounter
@ -9,6 +10,7 @@ import org.unifiedpush.distributor.sunup.services.RestartWorker
object NetworkCallbackFactory : CallbackFactory<NetworkCallbackFactory.MainNetworkCallback>() {
class MainNetworkCallback(val context: Context) : NetworkCallback() {
override val hasInternet = NetworkCallbackFactory.hasInternet
override val failureCounter = FailureCounter
override val registrationCounter = MainRegistrationCounter
override val worker = RestartWorker.Companion
@ -21,5 +23,9 @@ object NetworkCallbackFactory : CallbackFactory<NetworkCallbackFactory.MainNetwo
/**
* Default to true
*/
val hasInternet: Boolean = instance?.hasInternet() ?: true
private val hasInternet = AtomicBoolean(true)
fun hasInternet(): Boolean {
return hasInternet.get()
}
}

View file

@ -20,6 +20,6 @@ class RegisterBroadcastReceiver : DistributorReceiver() {
}
override fun hasInternet(context: Context): Boolean {
return NetworkCallbackFactory.hasInternet
return NetworkCallbackFactory.hasInternet()
}
}

View file

@ -20,7 +20,7 @@ class RestartWorker(ctx: Context, params: WorkerParameters) : Worker(ctx, params
// We avoid running twice at the same time
synchronized(lock) {
Log.d(TAG, "Working [$id]")
if (!NetworkCallbackFactory.hasInternet) {
if (!NetworkCallbackFactory.hasInternet()) {
Log.d(TAG, "Aborting, no internet.")
return Result.success()
}

View file

@ -9,8 +9,8 @@ androidx-lifecycle = "2.8.7"
androidx-runtimeAndroid = "1.7.6"
androidx-work = "2.10.0"
appcompat = "1.7.0"
unifiedpush_distributor = "0.1.1"
unifiedpush_distributor_ui = "0.1.1"
unifiedpush_distributor = "0.1.3"
unifiedpush_distributor_ui = "0.1.2"
kotlin = "2.1.0"
kotlinx_serializationJson = "1.8.0"
ktlint = "12.1.2"