/* Java Wrappers to the MSG API. */
-/* Copyright (c) 2007-2019. The SimGrid Team. All rights reserved. */
+/* Copyright (c) 2007-2020. The SimGrid Team. All rights reserved. */
/* This program is free software; you can redistribute it and/or modify it
* under the terms of the license (GNU LGPL) which comes with this package. */
JNIEnv *get_current_thread_env()
{
using simgrid::kernel::context::JavaContext;
- JavaContext* ctx = static_cast<JavaContext*>(simgrid::kernel::context::Context::self());
+ const JavaContext* ctx = static_cast<JavaContext*>(simgrid::kernel::context::Context::self());
if (ctx)
return ctx->jenv_;
else
* Unsortable functions *
***************************************************************************************/
-JNIEXPORT jdouble JNICALL Java_org_simgrid_msg_Msg_getClock(JNIEnv * env, jclass cls)
+JNIEXPORT jdouble JNICALL Java_org_simgrid_msg_Msg_getClock(JNIEnv*, jclass)
{
return (jdouble) MSG_get_clock();
}
-JNIEXPORT void JNICALL Java_org_simgrid_msg_Msg_init(JNIEnv * env, jclass cls, jobjectArray jargs)
+JNIEXPORT void JNICALL Java_org_simgrid_msg_Msg_init(JNIEnv* env, jclass, jobjectArray jargs)
{
env->GetJavaVM(&__java_vm);
simgrid::kernel::context::factory_initializer = &simgrid::kernel::context::java_factory;
- jthrowable exc = env->ExceptionOccurred();
+ const _jthrowable* exc = env->ExceptionOccurred();
if (exc) {
env->ExceptionClear();
}
argc += static_cast<int>(env->GetArrayLength(jargs));
xbt_assert(argc > 0);
- // Need a static storage because the XBT layer saves the arguments in xbt_binary_name and xbt_cmdline.
+ // Need a static storage because the XBT layer saves the arguments in xbt::binary_name and xbt::cmdline.
static std::vector<std::string> args;
args.reserve(argc);
JAVA_HOST_LEVEL = simgrid::s4u::Host::extension_create(nullptr);
}
-JNIEXPORT void JNICALL JNICALL Java_org_simgrid_msg_Msg_run(JNIEnv * env, jclass cls)
+JNIEXPORT void JNICALL JNICALL Java_org_simgrid_msg_Msg_run(JNIEnv* env, jclass)
{
/* Run everything */
XBT_DEBUG("Ready to run MSG_MAIN");
/* Cleanup java hosts */
xbt_dynar_t hosts = MSG_hosts_as_dynar();
for (unsigned long index = 0; index < xbt_dynar_length(hosts) - 1; index++) {
- msg_host_t msg_host = xbt_dynar_get_as(hosts,index,msg_host_t);
+ auto const* msg_host = xbt_dynar_get_as(hosts, index, msg_host_t);
jobject jhost = (jobject) msg_host->extension(JAVA_HOST_LEVEL);
if (jhost)
jhost_unref(env, jhost);
env->CallStaticVoidMethod(clsProcess, idDebug);
}
-JNIEXPORT void JNICALL Java_org_simgrid_msg_Msg_createEnvironment(JNIEnv * env, jclass cls, jstring jplatformFile)
+JNIEXPORT void JNICALL Java_org_simgrid_msg_Msg_createEnvironment(JNIEnv* env, jclass, jstring jplatformFile)
{
const char *platformFile = env->GetStringUTFChars(jplatformFile, 0);
env->ReleaseStringUTFChars(jplatformFile, platformFile);
}
-JNIEXPORT jobject JNICALL Java_org_simgrid_msg_Msg_environmentGetRoutingRoot(JNIEnv * env, jclass cls)
+JNIEXPORT jobject JNICALL Java_org_simgrid_msg_Msg_environmentGetRoutingRoot(JNIEnv* env, jclass)
{
msg_netzone_t as = MSG_zone_get_root();
jobject jas = jnetzone_new_instance(env);
return (jobject) jas;
}
-JNIEXPORT void JNICALL Java_org_simgrid_msg_Msg_debug(JNIEnv * env, jclass cls, jstring js)
+JNIEXPORT void JNICALL Java_org_simgrid_msg_Msg_debug(JNIEnv* env, jclass, jstring js)
{
const char *s = env->GetStringUTFChars(js, 0);
XBT_DEBUG("%s", s);
env->ReleaseStringUTFChars(js, s);
}
-JNIEXPORT void JNICALL Java_org_simgrid_msg_Msg_verb(JNIEnv * env, jclass cls, jstring js)
+JNIEXPORT void JNICALL Java_org_simgrid_msg_Msg_verb(JNIEnv* env, jclass, jstring js)
{
const char *s = env->GetStringUTFChars(js, 0);
XBT_VERB("%s", s);
env->ReleaseStringUTFChars(js, s);
}
-JNIEXPORT void JNICALL Java_org_simgrid_msg_Msg_info(JNIEnv * env, jclass cls, jstring js)
+JNIEXPORT void JNICALL Java_org_simgrid_msg_Msg_info(JNIEnv* env, jclass, jstring js)
{
const char *s = env->GetStringUTFChars(js, 0);
XBT_INFO("%s", s);
env->ReleaseStringUTFChars(js, s);
}
-JNIEXPORT void JNICALL Java_org_simgrid_msg_Msg_warn(JNIEnv * env, jclass cls, jstring js)
+JNIEXPORT void JNICALL Java_org_simgrid_msg_Msg_warn(JNIEnv* env, jclass, jstring js)
{
const char *s = env->GetStringUTFChars(js, 0);
XBT_WARN("%s", s);
env->ReleaseStringUTFChars(js, s);
}
-JNIEXPORT void JNICALL Java_org_simgrid_msg_Msg_error(JNIEnv * env, jclass cls, jstring js)
+JNIEXPORT void JNICALL Java_org_simgrid_msg_Msg_error(JNIEnv* env, jclass, jstring js)
{
const char *s = env->GetStringUTFChars(js, 0);
XBT_ERROR("%s", s);
env->ReleaseStringUTFChars(js, s);
}
-JNIEXPORT void JNICALL Java_org_simgrid_msg_Msg_critical(JNIEnv * env, jclass cls, jstring js)
+JNIEXPORT void JNICALL Java_org_simgrid_msg_Msg_critical(JNIEnv* env, jclass, jstring js)
{
const char *s = env->GetStringUTFChars(js, 0);
XBT_CRITICAL("%s", s);
env->ReleaseStringUTFChars(js, s);
}
-static int java_main(int argc, char *argv[]);
+static void java_main(int argc, char* argv[]);
-JNIEXPORT void JNICALL
-Java_org_simgrid_msg_Msg_deployApplication(JNIEnv * env, jclass cls, jstring jdeploymentFile)
+JNIEXPORT void JNICALL Java_org_simgrid_msg_Msg_deployApplication(JNIEnv* env, jclass, jstring jdeploymentFile)
{
const char *deploymentFile = env->GetStringUTFChars(jdeploymentFile, 0);
}
/** Create a Java org.simgrid.msg.Process with the arguments and run it */
-static int java_main(int argc, char *argv[])
+static void java_main(int argc, char* argv[])
{
JNIEnv *env = get_current_thread_env();
simgrid::kernel::context::JavaContext* context =
xbt_assert((jprocess != nullptr), "Process allocation failed.");
jprocess = env->NewGlobalRef(jprocess);
//bind the process to the context
- msg_process_t process = MSG_process_self();
+ const_sg_actor_t process = MSG_process_self();
context->jprocess_ = jprocess;
/* sets the PID and the PPID of the process */
jprocess_bind(jprocess, process, env);
run_jprocess(env, context->jprocess_);
- return 0;
}
namespace simgrid {