SimulatorRemoteResourceSP SimulatorRemoteResourceToCpp(JNIEnv *env, jobject object)
{
    JniSharedObjectHolder<SimulatorRemoteResource> *jniResource =
        GetHandle<JniSharedObjectHolder<SimulatorRemoteResource>>(env, object);
    if (jniResource)
        return jniResource->get();
    return nullptr;
}
static SimulatorCollectionResourceSP simulatorCollectionResourceToCpp(JNIEnv *env, jobject object)
{
    JniSharedObjectHolder<SimulatorCollectionResource> *jniResource =
        getHandle<JniSharedObjectHolder<SimulatorCollectionResource>>(env, object);
    if (jniResource)
        return jniResource->get();
    return nullptr;
}