From 04bee0ed015ba2f4e3802d42727921a6978343db Mon Sep 17 00:00:00 2001 From: Paul Hawke Date: Thu, 28 Nov 2024 21:27:30 -0600 Subject: [PATCH] Convert CommonsDaggerBroadcastReceiver to kotlin --- .../di/CommonsDaggerBroadcastReceiver.java | 35 ------------------- .../di/CommonsDaggerBroadcastReceiver.kt | 25 +++++++++++++ 2 files changed, 25 insertions(+), 35 deletions(-) delete mode 100644 app/src/main/java/fr/free/nrw/commons/di/CommonsDaggerBroadcastReceiver.java create mode 100644 app/src/main/java/fr/free/nrw/commons/di/CommonsDaggerBroadcastReceiver.kt diff --git a/app/src/main/java/fr/free/nrw/commons/di/CommonsDaggerBroadcastReceiver.java b/app/src/main/java/fr/free/nrw/commons/di/CommonsDaggerBroadcastReceiver.java deleted file mode 100644 index 0b89003b5..000000000 --- a/app/src/main/java/fr/free/nrw/commons/di/CommonsDaggerBroadcastReceiver.java +++ /dev/null @@ -1,35 +0,0 @@ -package fr.free.nrw.commons.di; - -import android.content.BroadcastReceiver; -import android.content.Context; -import android.content.Intent; - -import dagger.android.AndroidInjector; - -/** - * Receives broadcast then injects it's instance to the broadcastReceiverInjector method of - * ApplicationlessInjection class - */ -public abstract class CommonsDaggerBroadcastReceiver extends BroadcastReceiver { - - public CommonsDaggerBroadcastReceiver() { - super(); - } - - @Override - public void onReceive(Context context, Intent intent) { - inject(context); - } - - private void inject(Context context) { - ApplicationlessInjection injection = ApplicationlessInjection.getInstance(context.getApplicationContext()); - - AndroidInjector serviceInjector = injection.broadcastReceiverInjector(); - - if (serviceInjector == null) { - throw new NullPointerException("ApplicationlessInjection.broadcastReceiverInjector() returned null"); - } - serviceInjector.inject(this); - } - -} diff --git a/app/src/main/java/fr/free/nrw/commons/di/CommonsDaggerBroadcastReceiver.kt b/app/src/main/java/fr/free/nrw/commons/di/CommonsDaggerBroadcastReceiver.kt new file mode 100644 index 000000000..4df25889f --- /dev/null +++ b/app/src/main/java/fr/free/nrw/commons/di/CommonsDaggerBroadcastReceiver.kt @@ -0,0 +1,25 @@ +package fr.free.nrw.commons.di + +import android.content.BroadcastReceiver +import android.content.Context +import android.content.Intent +import fr.free.nrw.commons.di.ApplicationlessInjection.Companion.getInstance + +/** + * Receives broadcast then injects it's instance to the broadcastReceiverInjector method of + * ApplicationlessInjection class + */ +abstract class CommonsDaggerBroadcastReceiver : BroadcastReceiver() { + override fun onReceive(context: Context, intent: Intent) { + inject(context) + } + + private fun inject(context: Context) { + val injection = getInstance(context.applicationContext) + + val serviceInjector = injection.broadcastReceiverInjector() + ?: throw NullPointerException("ApplicationlessInjection.broadcastReceiverInjector() returned null") + + serviceInjector.inject(this) + } +}