1 #include "jmsg_application_handler.h"
5 #include "surf/surfxml_parse.h"
6 #include "jxbt_utilities.h"
7 void japplication_handler_on_start_document(void) {
9 JNIEnv * env = get_current_thread_env();
11 jxbt_get_static_smethod(env, "simgrid/msg/ApplicationHandler",
12 "onStartDocument", "()V");
14 if (!id || !(cls = jxbt_get_class(env, "simgrid/msg/ApplicationHandler")))
17 (*env)->CallStaticVoidMethod(env, cls, id);
20 void japplication_handler_on_end_document(void) {
22 JNIEnv * env = get_current_thread_env();
24 jxbt_get_static_smethod(env, "simgrid/msg/ApplicationHandler",
25 "onEndDocument", "()V");
27 if (!id || !(cls = jxbt_get_class(env, "simgrid/msg/ApplicationHandler")))
30 (*env)->CallStaticVoidMethod(env, cls, id);
33 void japplication_handler_on_begin_process(void) {
37 JNIEnv * env = get_current_thread_env();
39 jxbt_get_static_smethod(env, "simgrid/msg/ApplicationHandler",
41 "(Ljava/lang/String;Ljava/lang/String;)V");
42 if (!id || !(cls = jxbt_get_class(env, "simgrid/msg/ApplicationHandler")))
44 jhostName = (jstring) (*env)->NewStringUTF(env, A_surfxml_process_host);
46 (jstring) (*env)->NewStringUTF(env, A_surfxml_process_function);
47 (*env)->CallStaticVoidMethod(env, cls, id, jhostName, jfunction);
50 void japplication_handler_on_process_arg(void) {
53 JNIEnv * env = get_current_thread_env();
55 jxbt_get_static_smethod(env, "simgrid/msg/ApplicationHandler",
56 "onProcessArg", "(Ljava/lang/String;)V");
57 if (!id || !(cls = jxbt_get_class(env, "simgrid/msg/ApplicationHandler")))
59 jarg = (jstring) (*env)->NewStringUTF(env, A_surfxml_argument_value);
61 (*env)->CallStaticVoidMethod(env, cls, id, jarg);
64 void japplication_handler_on_property(void) {
68 JNIEnv * env = get_current_thread_env();
70 jxbt_get_static_smethod(env, "simgrid/msg/ApplicationHandler",
72 "(Ljava/lang/String;Ljava/lang/String;)V");
73 if (!id || !(cls = jxbt_get_class(env, "simgrid/msg/ApplicationHandler")))
76 jid = (jstring) (*env)->NewStringUTF(env, A_surfxml_prop_id);
77 jvalue = (jstring) (*env)->NewStringUTF(env, A_surfxml_prop_value);
78 (*env)->CallStaticVoidMethod(env, cls, id, jid, jvalue);
81 void japplication_handler_on_end_process(void) {
82 JNIEnv * env = get_current_thread_env();
85 jxbt_get_static_smethod(env, "simgrid/msg/ApplicationHandler",
86 "onEndProcess", "()V");
87 if (!id || !(cls = jxbt_get_class(env, "simgrid/msg/ApplicationHandler")))
89 (*env)->CallStaticVoidMethod(env, cls, id);