projects
/
collectd.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Many build fixes that turned up with GCC 4.6.
[collectd.git]
/
src
/
java.c
diff --git
a/src/java.c
b/src/java.c
index
73fd566
..
a8ffd8e
100644
(file)
--- a/
src/java.c
+++ b/
src/java.c
@@
-286,6
+286,10
@@
static jobject ctoj_value_to_number (JNIEnv *jvm_env, /* {{{ */
return (ctoj_jlong_to_number (jvm_env, (jlong) value.counter));
else if (ds_type == DS_TYPE_GAUGE)
return (ctoj_jdouble_to_number (jvm_env, (jdouble) value.gauge));
return (ctoj_jlong_to_number (jvm_env, (jlong) value.counter));
else if (ds_type == DS_TYPE_GAUGE)
return (ctoj_jdouble_to_number (jvm_env, (jdouble) value.gauge));
+ if (ds_type == DS_TYPE_DERIVE)
+ return (ctoj_jlong_to_number (jvm_env, (jlong) value.derive));
+ if (ds_type == DS_TYPE_ABSOLUTE)
+ return (ctoj_jlong_to_number (jvm_env, (jlong) value.absolute));
else
return (NULL);
} /* }}} jobject ctoj_value_to_number */
else
return (NULL);
} /* }}} jobject ctoj_value_to_number */
@@
-1044,33
+1048,39
@@
static int jtoc_value (JNIEnv *jvm_env, /* {{{ */
class_ptr = (*jvm_env)->GetObjectClass (jvm_env, object_ptr);
class_ptr = (*jvm_env)->GetObjectClass (jvm_env, object_ptr);
- if (ds_type == DS_TYPE_
COUNTER
)
+ if (ds_type == DS_TYPE_
GAUGE
)
{
{
- j
long tmp_long
;
+ j
double tmp_double
;
- status = jtoc_
long (jvm_env, &tmp_long
,
- class_ptr, object_ptr, "
long
Value");
+ status = jtoc_
double (jvm_env, &tmp_double
,
+ class_ptr, object_ptr, "
double
Value");
if (status != 0)
{
ERROR ("java plugin: jtoc_value: "
if (status != 0)
{
ERROR ("java plugin: jtoc_value: "
- "jtoc_
long
failed.");
+ "jtoc_
double
failed.");
return (-1);
}
return (-1);
}
- (*ret_value).
counter = (counter_t) tmp_long
;
+ (*ret_value).
gauge = (gauge_t) tmp_double
;
}
else
{
}
else
{
- j
double tmp_double
;
+ j
long tmp_long
;
- status = jtoc_
double (jvm_env, &tmp_double
,
- class_ptr, object_ptr, "
double
Value");
+ status = jtoc_
long (jvm_env, &tmp_long
,
+ class_ptr, object_ptr, "
long
Value");
if (status != 0)
{
ERROR ("java plugin: jtoc_value: "
if (status != 0)
{
ERROR ("java plugin: jtoc_value: "
- "jtoc_
double
failed.");
+ "jtoc_
long
failed.");
return (-1);
}
return (-1);
}
- (*ret_value).gauge = (gauge_t) tmp_double;
+
+ if (ds_type == DS_TYPE_DERIVE)
+ (*ret_value).derive = (derive_t) tmp_long;
+ else if (ds_type == DS_TYPE_ABSOLUTE)
+ (*ret_value).absolute = (absolute_t) tmp_long;
+ else
+ (*ret_value).counter = (counter_t) tmp_long;
}
return (0);
}
return (0);
@@
-1409,7
+1419,7
@@
static jint JNICALL cjni_api_register_read (JNIEnv *jvm_env, /* {{{ */
ud.data = (void *) cbi;
ud.free_func = cjni_callback_info_destroy;
ud.data = (void *) cbi;
ud.free_func = cjni_callback_info_destroy;
- plugin_register_complex_read (cbi->name, cjni_read,
+ plugin_register_complex_read (
/* group = */ NULL,
cbi->name, cjni_read,
/* interval = */ NULL, &ud);
(*jvm_env)->DeleteLocalRef (jvm_env, o_read);
/* interval = */ NULL, &ud);
(*jvm_env)->DeleteLocalRef (jvm_env, o_read);
@@
-1921,7
+1931,9
@@
static int cjni_init_native (JNIEnv *jvm_env) /* {{{ */
api_class_ptr = (*jvm_env)->FindClass (jvm_env, "org/collectd/api/Collectd");
if (api_class_ptr == NULL)
{
api_class_ptr = (*jvm_env)->FindClass (jvm_env, "org/collectd/api/Collectd");
if (api_class_ptr == NULL)
{
- ERROR ("cjni_init_native: Cannot find API class `org/collectd/api/Collectd'.");
+ ERROR ("cjni_init_native: Cannot find the API class \"org.collectd.api"
+ ".Collectd\". Please set the correct class path "
+ "using 'JVMArg \"-Djava.class.path=...\"'.");
return (-1);
}
return (-1);
}
@@
-2243,7
+2255,6
@@
static int cjni_config_plugin_block (oconfig_item_t *ci) /* {{{ */
cjni_callback_info_t *cbi;
jobject o_ocitem;
const char *name;
cjni_callback_info_t *cbi;
jobject o_ocitem;
const char *name;
- int status;
size_t i;
jclass class;
size_t i;
jclass class;
@@
-2298,7
+2309,7
@@
static int cjni_config_plugin_block (oconfig_item_t *ci) /* {{{ */
method = (*jvm_env)->GetMethodID (jvm_env, class,
"config", "(Lorg/collectd/api/OConfigItem;)I");
method = (*jvm_env)->GetMethodID (jvm_env, class,
"config", "(Lorg/collectd/api/OConfigItem;)I");
-
status =
(*jvm_env)->CallIntMethod (jvm_env,
+ (*jvm_env)->CallIntMethod (jvm_env,
cbi->object, method, o_ocitem);
(*jvm_env)->DeleteLocalRef (jvm_env, o_ocitem);
cbi->object, method, o_ocitem);
(*jvm_env)->DeleteLocalRef (jvm_env, o_ocitem);
@@
-3055,9
+3066,8
@@
static int cjni_init (void) /* {{{ */
if (config_block != NULL)
{
if (config_block != NULL)
{
- int status;
-
status =
cjni_config_perform (config_block);
+ cjni_config_perform (config_block);
oconfig_free (config_block);
config_block = NULL;
}
oconfig_free (config_block);
config_block = NULL;
}