Skip to content

Commit 1a5587a

Browse files
committed
Update kotlin module
1 parent 851d817 commit 1a5587a

File tree

1 file changed

+14
-10
lines changed
  • android/src/main/java/com/reactnativecommunity/asyncstorage/next

1 file changed

+14
-10
lines changed

android/src/main/java/com/reactnativecommunity/asyncstorage/next/StorageModule.kt

Lines changed: 14 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -4,10 +4,11 @@ import android.content.Context
44
import androidx.annotation.VisibleForTesting
55
import com.facebook.react.bridge.Arguments
66
import com.facebook.react.bridge.Callback
7-
import com.facebook.react.bridge.ReactContext
8-
import com.facebook.react.bridge.ReactContextBaseJavaModule
7+
import com.facebook.react.bridge.ReactApplicationContext
98
import com.facebook.react.bridge.ReactMethod
109
import com.facebook.react.bridge.ReadableArray
10+
import com.facebook.react.module.annotations.ReactModule
11+
import com.reactnativecommunity.asyncstorage.NativeAsyncStorageModuleSpec
1112
import com.reactnativecommunity.asyncstorage.SerialExecutor
1213
import kotlinx.coroutines.CoroutineName
1314
import kotlinx.coroutines.CoroutineScope
@@ -16,8 +17,9 @@ import kotlinx.coroutines.SupervisorJob
1617
import kotlinx.coroutines.asExecutor
1718
import kotlinx.coroutines.launch
1819

19-
class StorageModule(reactContext: ReactContext) : ReactContextBaseJavaModule(), CoroutineScope {
20-
override fun getName() = "RNCAsyncStorage"
20+
@ReactModule(name = StorageModule.NAME)
21+
class StorageModule(reactContext: ReactApplicationContext) : NativeAsyncStorageModuleSpec(reactContext), CoroutineScope {
22+
override fun getName() = NAME
2123

2224
// this executor is not used by the module, but it must exists here due to
2325
// Detox relying on this implementation detail to run
@@ -30,22 +32,24 @@ class StorageModule(reactContext: ReactContext) : ReactContextBaseJavaModule(),
3032
private val storage = StorageSupplier.getInstance(reactContext)
3133

3234
companion object {
35+
const val NAME = "RNCAsyncStorage"
36+
3337
@JvmStatic
3438
fun getStorageInstance(ctx: Context): AsyncStorageAccess {
3539
return StorageSupplier.getInstance(ctx)
3640
}
3741
}
3842

3943
@ReactMethod
40-
fun multiGet(keys: ReadableArray, cb: Callback) {
44+
override fun multiGet(keys: ReadableArray, cb: Callback) {
4145
launch(createExceptionHandler(cb)) {
4246
val entries = storage.getValues(keys.toKeyList())
4347
cb(null, entries.toKeyValueArgument())
4448
}
4549
}
4650

4751
@ReactMethod
48-
fun multiSet(keyValueArray: ReadableArray, cb: Callback) {
52+
override fun multiSet(keyValueArray: ReadableArray, cb: Callback) {
4953
launch(createExceptionHandler(cb)) {
5054
val entries = keyValueArray.toEntryList()
5155
storage.setValues(entries)
@@ -54,15 +58,15 @@ class StorageModule(reactContext: ReactContext) : ReactContextBaseJavaModule(),
5458
}
5559

5660
@ReactMethod
57-
fun multiRemove(keys: ReadableArray, cb: Callback) {
61+
override fun multiRemove(keys: ReadableArray, cb: Callback) {
5862
launch(createExceptionHandler(cb)) {
5963
storage.removeValues(keys.toKeyList())
6064
cb(null)
6165
}
6266
}
6367

6468
@ReactMethod
65-
fun multiMerge(keyValueArray: ReadableArray, cb: Callback) {
69+
override fun multiMerge(keyValueArray: ReadableArray, cb: Callback) {
6670
launch(createExceptionHandler(cb)) {
6771
val entries = keyValueArray.toEntryList()
6872
storage.mergeValues(entries)
@@ -71,7 +75,7 @@ class StorageModule(reactContext: ReactContext) : ReactContextBaseJavaModule(),
7175
}
7276

7377
@ReactMethod
74-
fun getAllKeys(cb: Callback) {
78+
override fun getAllKeys(cb: Callback) {
7579
launch(createExceptionHandler(cb)) {
7680
val keys = storage.getKeys()
7781
val result = Arguments.createArray()
@@ -81,7 +85,7 @@ class StorageModule(reactContext: ReactContext) : ReactContextBaseJavaModule(),
8185
}
8286

8387
@ReactMethod
84-
fun clear(cb: Callback) {
88+
override fun clear(cb: Callback) {
8589
launch(createExceptionHandler(cb)) {
8690
storage.clear()
8791
cb(null)

0 commit comments

Comments
 (0)