Napi::Value InitializeClient()

in src/RuntimeClient/runtime-client.cc [25:43]


Napi::Value InitializeClient(const Napi::CallbackInfo & info)
{
    Napi::Env env = info.Env();
    if (info.Length() < 1) {
        Napi::TypeError::New(env, "Wrong number of arguments, expected 1").ThrowAsJavaScriptException();
        return env.Null();
    }
    if (!info[0].IsString()) {
        Napi::TypeError::New(env, "Wrong arguments").ThrowAsJavaScriptException();
        return env.Null();
    }
    if (CLIENT != nullptr) {
        Napi::TypeError::New(env, "Client already initialized").ThrowAsJavaScriptException();
        return env.Null();
    }
    auto userAgent = info[0].As<Napi::String>().Utf8Value();
    CLIENT = new aws::lambda_runtime::runtime(getenv("AWS_LAMBDA_RUNTIME_API"), userAgent);
    return env.Null();
}