package com.solarnethub.oasis

/**
 * Puente con el runtime de Node.
 *
 * El nombre de la clase y del metodo no son libres: libnative-lib.so exporta
 * Java_com_solarnethub_oasis_OasisActivity_startNodeWithArguments, y JNI resuelve
 * por nombre. De ahi que el namespace del modulo sea com.solarnethub.oasis aunque
 * el applicationId sea net.laenre.oasis.
 *
 * No es una Activity pese al nombre; solo declara el metodo nativo.
 */
object OasisActivity {
  init {
    System.loadLibrary("node")
    System.loadLibrary("native-lib")
  }

  /** Arranca node en el hilo actual. No retorna hasta que el runtime termina. */
  @JvmStatic
  external fun startNodeWithArguments(arguments: Array<String>): Int
}
