package com.dynamsoft.reactnativelib import com.dynamsoft.reactnativelib.core.ImageSourceAdapterModuleImpl import com.facebook.react.bridge.Promise import com.facebook.react.bridge.ReactApplicationContext import com.facebook.react.bridge.ReactContextBaseJavaModule import com.facebook.react.bridge.ReactMethod class ISAModule(reactApplicationContext: ReactApplicationContext) : ReactContextBaseJavaModule(reactApplicationContext) { val impl = ImageSourceAdapterModuleImpl(reactApplicationContext) override fun getName(): String = impl.getName() @ReactMethod(isBlockingSynchronousMethod = true) fun install(): Boolean { return impl.install() } @ReactMethod(isBlockingSynchronousMethod = true) fun createDefaultNativeISA(): String { return impl.createDefaultNativeISA() } @ReactMethod fun destroy(isaId: String) { impl.destroy(isaId) } @ReactMethod fun getImageCount(isaId: String, promise: Promise) { impl.getImageCount(isaId, promise) } @ReactMethod fun isBufferEmpty(isaId: String, promise: Promise) { impl.isBufferEmpty(isaId, promise) } @ReactMethod fun clearBuffer(isaId: String, promise: Promise) { impl.clearBuffer(isaId, promise) } @ReactMethod fun getColourChannelUsageType(isaId: String, promise: Promise) { impl.getColourChannelUsageType(isaId, promise) } @ReactMethod fun setColourChannelUsageType(isaId: String, type: Double, promise: Promise) { impl.setColourChannelUsageType(isaId, type.toInt(), promise) } @ReactMethod fun getMaximumImageCount(isaId: String, promise: Promise) { impl.getMaximumImageCount(isaId, promise) } @ReactMethod fun setMaximumImageCount(isaId: String, maxCount: Double, promise: Promise) { impl.setMaximumImageCount(isaId, maxCount.toInt(), promise) } @ReactMethod fun startFetching(isaId: String) { impl.startFetching(isaId) } @ReactMethod fun stopFetching(isaId: String) { impl.stopFetching(isaId) } }