/**
 *
 * Agora Real Time Engagement
 * Created by Wei Hu in 2022-05.
 * Copyright (c) 2022 Agora IO. All rights reserved.
 *
 */
#include "rte_runtime/binding/nodejs/src/common/common.h"
#include "rte_runtime/common/log.h"

static napi_value rte_nodejs_log_set_log_file(napi_env env,
                                              napi_callback_info info) {
  assert(env);

  const size_t argc = 2;
  napi_value args[argc];  // this, file_path
  if (!rte_nodejs_get_args(env, info, args, argc)) {
    return UNDEFINED(env);
  }
  rte_string_t file_name;
  rte_string_init(&file_name);
  if (!rte_nodejs_get_str(env, args[1], &file_name)) {
    return UNDEFINED(env);
  }

  rte_log_set_log_file(&file_name);
  return UNDEFINED(env);
}

napi_value rte_nodejs_common_module_init(napi_env env, napi_value exports) {
  assert(env && exports);

  EXPORT_FUNC(env, exports, rte_nodejs_log_set_log_file);

  return exports;
}
