[collectd-changes] collectd, the system statistics collection daemon: Changes to 'master'

Florian Forster octo at verplant.org
Sat Feb 28 10:39:09 CET 2009


 bindings/java/org/collectd/api/Collectd.java       |  295 ++
 .../org/collectd/api/CollectdConfigInterface.java  |   33 +
 .../org/collectd/api/CollectdFlushInterface.java   |   33 +
 .../org/collectd/api/CollectdInitInterface.java    |   33 +
 .../org/collectd/api/CollectdLogInterface.java     |   33 +
 .../api/CollectdMatchFactoryInterface.java         |   49 +
 .../org/collectd/api/CollectdMatchInterface.java   |   48 +
 .../api/CollectdNotificationInterface.java         |   33 +
 .../org/collectd/api/CollectdReadInterface.java    |   47 +
 .../collectd/api/CollectdShutdownInterface.java    |   33 +
 .../api/CollectdTargetFactoryInterface.java        |   49 +
 .../org/collectd/api/CollectdTargetInterface.java  |   48 +
 .../org/collectd/api/CollectdWriteInterface.java   |   33 +
 bindings/java/org/collectd/api/DataSet.java        |  137 +
 bindings/java/org/collectd/api/DataSource.java     |  145 +
 bindings/java/org/collectd/api/Notification.java   |   88 +
 bindings/java/org/collectd/api/OConfigItem.java    |   91 +
 bindings/java/org/collectd/api/OConfigValue.java   |   96 +
 bindings/java/org/collectd/api/PluginData.java     |  127 +
 bindings/java/org/collectd/api/ValueList.java      |  122 +
 configure.in                                       |   93 +
 contrib/oracle/create_schema.ddl                   |   21 +
 src/Makefile.am                                    |   40 +-
 src/collectd-java.pod                              |  555 ++++
 src/collectd-unixsock.pod                          |    8 +-
 src/collectd.conf.in                               |   11 +
 src/collectd.conf.pod                              |   56 +
 src/common.c                                       |   41 +-
 src/csv.c                                          |    5 +-
 src/dns.c                                          |    2 +-
 src/exec.c                                         |    8 +-
 src/java.c                                         | 2996 ++++++++++++++++++++
 src/logfile.c                                      |   14 +-
 src/network.c                                      |   18 +-
 src/notify_desktop.c                               |    6 +-
 src/notify_email.c                                 |    6 +-
 src/oracle.c                                       |    6 +-
 src/perl.c                                         |   21 +-
 src/plugin.c                                       |  412 ++-
 src/plugin.h                                       |   39 +-
 src/rrdcached.c                                    |    5 +-
 src/rrdtool.c                                      |   10 +-
 src/syslog.c                                       |    5 +-
 43 files changed, 5779 insertions(+), 172 deletions(-)

New commits:
commit 43066b1c460921d4d4b8f609c26fd09afad56a1f
Merge: 0e36ca16a2e53e01cbc08ee9b4b9d26176022786 4231dfb2186e7aae17a3d0bc25d915da0b5f9c9c
Author: Florian Forster <octo at leeloo.lan.home.verplant.org>
Date:   Sat Feb 28 10:35:58 2009 +0100

    Merge branch 'ff/java'

commit 0e36ca16a2e53e01cbc08ee9b4b9d26176022786
Merge: f2938fd5c5f934521292acaee7e6e7d0f55b0113 6e419a825c50f9c97471aba7d50521bfc7e19828
Author: Florian Forster <octo at leeloo.lan.home.verplant.org>
Date:   Sat Feb 28 10:35:17 2009 +0100

    Merge branch 'collectd-4.6'

commit 6e419a825c50f9c97471aba7d50521bfc7e19828
Merge: e1e33fa276c657f0f0f91f60155a99017fbef72b b0608a28c996eae0dd407886154f6e8797b3545c
Author: Florian Forster <octo at leeloo.lan.home.verplant.org>
Date:   Sat Feb 28 10:35:04 2009 +0100

    Merge branch 'collectd-4.5' into collectd-4.6

commit b0608a28c996eae0dd407886154f6e8797b3545c
Author: Florian Forster <octo at leeloo.lan.home.verplant.org>
Date:   Sat Feb 28 10:29:08 2009 +0100

    dns plugin: Don't pass a NULL pointer to `pcap_open_live'.
    
    Although the documentation states clearly, that passing a NULL pointer
    as device is okay and handled like "any", doing so will crash the daemon
    on some systems, most notably *BSDs but Linux users have reported this
    behavior, too.
    
    This patch passes "any" when the pointer it NULL, which reportedly
    resulted in a different behavior, but still crashing the daemon. We'll
    keep trying ;)

commit e1e33fa276c657f0f0f91f60155a99017fbef72b
Author: Florian Forster <octo at huhu.verplant.org>
Date:   Fri Feb 27 14:09:12 2009 +0100

    oracle plugin: Fix type size issue under 64bit systems.
    
    Under 64bit systems, `ub4' is of a different size than `size_t', so that a
    `(size_t *)' cannot be casted to a `(ub4 *)' automatically.

commit 7963e34757c28b1744603558610ba9b0797423f4
Author: Florian Forster <octo at huhu.verplant.org>
Date:   Tue Feb 24 11:42:35 2009 +0100

    contrib/oracle/create_schema.ddl: Add GPLv2 license information.
    
    In accordance with Roman Klesel,
    <C937BDA691901BFAD72AFEF3 at ganga.office.noris.de>

commit da70cd0f24be40b2d76a9dd88ff8264b52c989bd
Author: Sebastian Harl <sh at tokkee.org>
Date:   Tue Feb 24 11:27:22 2009 +0100

    src/common.c: Fixed a race condition in check_create_dir().
    
    Between checking for the existence of a directory using stat() and creating
    the directory using mkdir(), another thread might have already created the
    directory thus causing mkdir() to fail with errno == EEXIST. This case is now
    handled sanely, no longer causing the function (and thus some write callback)
    to fail in this case.
    
    Most likely, this only happens during startup when creating the data
    directories - later, no two threads should try to create the same directory.
    
    Interestingly enough, I frequently encountered this issue on a single core
    machine.

commit 4231dfb2186e7aae17a3d0bc25d915da0b5f9c9c
Author: Florian Forster <octo at leeloo.lan.home.verplant.org>
Date:   Tue Feb 24 11:24:38 2009 +0100

    collectd.conf(5), collectd-java(5): Updated the documentation for the Java plugin.

commit 89f7c7980da8dcec4593f556e8e12af82ba08f58
Author: Florian Forster <octo at leeloo.lan.home.verplant.org>
Date:   Tue Feb 24 10:53:43 2009 +0100

    collectd-java(5): Documented the `match' and `target' callbacks.

commit 8fe1101910d3650cc59230ced5bb02a8eabe882e
Author: Florian Forster <octo at leeloo.lan.home.verplant.org>
Date:   Tue Feb 24 10:13:11 2009 +0100

    bindings/java/: CollectdMatchFactoryInterface: Add more JavaDoc.

commit 06b30142eb87918f59ca64a4eea8dc51ed299f34
Author: Florian Forster <octo at leeloo.lan.home.verplant.org>
Date:   Tue Feb 24 10:12:45 2009 +0100

    bindings/java/: Unify inline documentation terms.
    
    s/function/method/

commit 0300aefaeb9bac0a771cce6d11fa1f4c637e49d2
Author: Florian Forster <octo at leeloo.lan.home.verplant.org>
Date:   Tue Feb 24 10:11:56 2009 +0100

    java plugin: Add support for `target' callbacks.
    
    With the ``do everything while in the configuration phase'' issues all
    sorted out, this was actually kinda easy.
    
    Matches and targets share a lot of code, so that the patch actually isn't
    all that large..
    
    Now, the Java plugin is feature-complete \o/

commit 45aa6a65c24e38c0a3fa3880a300fbb02db50486
Merge: 636c770506ab2c0cd6c23f7bd357ac9113a01f44 f2938fd5c5f934521292acaee7e6e7d0f55b0113
Author: Florian Forster <octo at leeloo.lan.home.verplant.org>
Date:   Tue Feb 24 10:16:19 2009 +0100

    Merge branch 'master' into ff/java

commit 636c770506ab2c0cd6c23f7bd357ac9113a01f44
Author: Florian Forster <octo at leeloo.lan.home.verplant.org>
Date:   Mon Feb 23 18:59:04 2009 +0100

    java plugin: Add support for `match' callbacks.
    
    Holy crap, that one needed some serious magic.. The problem is, that the
    filter chains are created before the initialization functions are run.
    Since the Java plugin used to initialize the JVM and load the classes in
    the init function, the match callbacks were not available in time.
    
    The behavior is now: Create the JVM as soon as the the first `LoadPlugin'
    option is found and load and configure all Java plugins while in the
    configuration phase. (I. e. exactly like C plugins.)
    
    Phew, I've earned that beer now.

commit 6f521e7354231aa7cba61ea4066f2749aee6932a
Author: Florian Forster <octo at leeloo.lan.home.verplant.org>
Date:   Mon Feb 23 15:38:29 2009 +0100

    logfile plugin: Interpret `(notification_t *)->time == 0' as `now'.

commit aab902bb10a4e0a65abda511e6e362c554a2dcc6
Author: Florian Forster <octo at leeloo.lan.home.verplant.org>
Date:   Mon Feb 23 15:37:44 2009 +0100

    java plugin: Expose `plugin_dispatch_notification' to Java plugins.

commit 2f19d7e66d61d004e741892734ac4f2e61a0ef16
Author: Florian Forster <octo at leeloo.lan.home.verplant.org>
Date:   Mon Feb 23 15:37:01 2009 +0100

    src/collectd.conf.in: Add `LoadPlugin java'.

commit c41ead0b33b4f3210c49591499ce8010172ae2cb
Author: Florian Forster <octo at leeloo.lan.home.verplant.org>
Date:   Mon Feb 23 15:36:40 2009 +0100

    src/plugin.c: Fix plugin_dispatch_notification again.

commit fb9f56e5af1a63d94c80a2ea6f067aeb7787f397
Author: Florian Forster <octo at leeloo.lan.home.verplant.org>
Date:   Mon Feb 23 14:57:56 2009 +0100

    java plugin: Add support for `notification' callbacks.

commit 9c8848b1b4bc307b18eabc22f913313fecdd36af
Author: Florian Forster <octo at leeloo.lan.home.verplant.org>
Date:   Mon Feb 23 14:50:03 2009 +0100

    src/plugin.c: Add a user_data_t pointer to notification callbacks.

commit 288b138151db981a943ef73b5d41ba4c86f569ce
Author: Florian Forster <octo at leeloo.lan.home.verplant.org>
Date:   Mon Feb 23 00:05:35 2009 +0100

    bindings/java/: Add some javadoc markup to the interfaces.

commit 2bbdd96a89f41f14373653416d092c1665c9a312
Author: Florian Forster <octo at leeloo.lan.home.verplant.org>
Date:   Sun Feb 22 23:30:06 2009 +0100

    collectd-java(5): Fix a typo.

commit b565ea6f66d488989ec3bdcd0a304cf8f35b365b
Author: Florian Forster <octo at leeloo.lan.home.verplant.org>
Date:   Sun Feb 22 23:18:58 2009 +0100

    collectd.conf(5): Updated the information on the java plugin.

commit 773467790bd066ec6b9693732d165d7fde9f18f7
Author: Florian Forster <octo at leeloo.lan.home.verplant.org>
Date:   Sun Feb 22 23:18:43 2009 +0100

    java plugin: Add support for `log' callbacks.

commit 3f9f3d0f8454337c3095f6c7bc2358a50df47876
Author: Florian Forster <octo at leeloo.lan.home.verplant.org>
Date:   Sun Feb 22 23:03:00 2009 +0100

    src/plugin.c: Add a user_data_t pointer to log callbacks.

commit ddf1f52c7fb0eab19a0f35e0747dfa21edcae109
Author: Florian Forster <octo at leeloo.lan.home.verplant.org>
Date:   Sun Feb 22 22:15:47 2009 +0100

    java plugin: Add support for `flush' callbacks.

commit 6e50de5cc715881f736631ed81341fd2ef6e250c
Author: Florian Forster <octo at leeloo.lan.home.verplant.org>
Date:   Sun Feb 22 21:48:05 2009 +0100

    src/plugin.c: Add a user_data_t pointer to flush callbacks.

commit a0655e74b5a60232463f71ae266bf143fe30364f
Author: Sebastian Harl <sh at tokkee.org>
Date:   Sun Feb 22 21:02:05 2009 +0100

    collectd-unixsock(5): Slightly improved the description.

commit 04b395325b152a5ddf424d1a750f455a2f8229fb
Merge: d3733caf0686008ac5130e2f81fa30d60993c63c f413a3a8faa8e65cf79d45b2b518add78612e75c
Author: Florian Forster <octo at leeloo.lan.home.verplant.org>
Date:   Sun Feb 22 19:50:14 2009 +0100

    Merge branch 'master' into ff/java

commit d3733caf0686008ac5130e2f81fa30d60993c63c
Author: Florian Forster <octo at leeloo.lan.home.verplant.org>
Date:   Sun Feb 22 19:10:56 2009 +0100

    java plugin: Rename `CollectdAPI' to `Collectd'.

commit 4382a1ee772b0bc4b601cd0ba72d59463d0268eb
Author: Florian Forster <octo at leeloo.lan.home.verplant.org>
Date:   Sun Feb 22 19:00:23 2009 +0100

    collectd-java(5): Update the documentation.
    
    Especially add the new ``native'' methods.

commit 685611f4154ec03a2d237189c5d8d4b855cd12ce
Author: Florian Forster <octo at leeloo.lan.home.verplant.org>
Date:   Sun Feb 22 18:55:27 2009 +0100

    java plugin: Change the name of all functions to conform to the Java convention.

commit ee7a974c823cba5c8fc030d785b9993e71d8c12f
Author: Florian Forster <octo at leeloo.lan.home.verplant.org>
Date:   Sun Feb 22 19:02:23 2009 +0100

    Revert part of 5f195369: Accidentally commited changes to src/Makefile.am.

commit 5f19536990c9e5043c17ed2278b331102de88594
Author: Florian Forster <octo at leeloo.lan.home.verplant.org>
Date:   Sun Feb 22 18:32:02 2009 +0100

    java plugin: Expose `plugin_log' to Java plugins.

commit 226b7ea58bcf07ffa59466f0c739185737b15b46
Author: Florian Forster <octo at leeloo.lan.home.verplant.org>
Date:   Sun Feb 22 17:51:40 2009 +0100

    java plugin: Added comments for most functions.
    
    Hopefully this'll make the code a bit easier to read.

commit 1116e962b6cf72f5fc9c472c6ec64089b8b9868a
Author: Florian Forster <octo at leeloo.lan.home.verplant.org>
Date:   Sun Feb 22 17:26:42 2009 +0100

    java plugin: Implement registration for the other methods.
    
    ``Other'' meaning `Config', `Init', and `Shutdown' right now.

commit 2879dff1ece2e3d798a0ae10740b90361ffde4ea
Author: Florian Forster <octo at leeloo.lan.home.verplant.org>
Date:   Sun Feb 22 14:02:05 2009 +0100

    collectd-java(5): Updated the documentation.

commit 1b6030eb6c8837f4697acc4b37e8c403343b62b0
Author: Florian Forster <octo at leeloo.lan.home.verplant.org>
Date:   Sun Feb 22 13:07:26 2009 +0100

    java plugin: Implemented write plugin registration.

commit ae736faafccf7f68eb962998b62ea17709fb7244
Author: Florian Forster <octo at leeloo.lan.home.verplant.org>
Date:   Sun Feb 22 12:46:42 2009 +0100

    java plugin: Improve the read registration code.

commit 1fce03592b00122685a768d499ee0f0ff350ba4c
Author: Florian Forster <octo at leeloo.lan.home.verplant.org>
Date:   Sun Feb 22 12:18:41 2009 +0100

    java plugin: Implement plugin registration via `RegisterRead'.

commit 0c81bb3843c6209d8bc21abbacbeab9e3da15189
Author: Florian Forster <octo at leeloo.lan.home.verplant.org>
Date:   Sun Feb 22 12:16:45 2009 +0100

    src/plugin.c: Remove all read functions before calling the shutdown functions.
    
    This way the user_data may be cleaned up before the final cleanup
    phase..

commit c017cac05edd6a136e2b7b922576d74761fa85e0
Author: Florian Forster <octo at leeloo.lan.home.verplant.org>
Date:   Sun Feb 22 11:29:12 2009 +0100

    java plugin: Change the API to use the `DataSet' class.

commit 92f38139c894540d05b7bf136f5692e3588e00c1
Author: Florian Forster <octo at leeloo.lan.home.verplant.org>
Date:   Sat Feb 21 18:39:57 2009 +0100

    java plugin: Use the changed plugin infrastructure to call read and write functions directly.
    
    The read and write functions implemented in Java are now registered with
    the "complex" interface as "java:<class name>". This way the cjni_read and
    cjni_write functions can determine which Java function to call.
    
    The patch is bigger than it'd need to be, because the order of some
    functions has been changed..

commit fc69836ae64498f00574090ada2e677435da9d77
Author: Florian Forster <octo at leeloo.lan.home.verplant.org>
Date:   Sat Feb 21 18:35:45 2009 +0100

    src/plugin.c: Change the write callbacks to receive a user_data_t pointer.
    
    There are by far not as many write callbacks, so I've just changed the
    callback in general rather than introducing a `complex write' callback.

commit 16baafe97586dd469a9b14a91c2c24762367d6f2
Author: Florian Forster <octo at leeloo.lan.home.verplant.org>
Date:   Sat Feb 21 18:29:52 2009 +0100

    src/plugin.c: Implement `plugin_register_complex_read'
    
    These read callbacks will receive a user pointer. This is nice for the
    Java plugin, because the plugin infrastructure can now call one specific
    Java read function.
    
    AfaIk, the Perl plugin can make use of this, too.

commit 1494e5a7ee03cff645528fc7143dae2a2f04a7ea
Author: Florian Forster <octo at leeloo.lan.home.verplant.org>
Date:   Sat Feb 21 18:20:44 2009 +0100

    java plugin: Update the full name of the moved classes.

commit b1e441ef04535b807d0ee34f8d416687deeee9bf
Author: Florian Forster <octo at leeloo.lan.home.verplant.org>
Date:   Sat Feb 21 12:25:29 2009 +0100

    Revert "src/plugin.[ch]: Implement `plugin_dispatch_values_async'."
    
    This reverts commit ba6497bdffb6a225eb6c86c8b8fa57a2520f0c5f.

commit 35b50aa3a8ba1b3b8abd2197a998c2622a763ac1
Author: Florian Forster <octo at leeloo.lan.home.verplant.org>
Date:   Sat Feb 21 11:39:25 2009 +0100

    bindings/java: Moved the `PluginData' and `ValueList' classes.
    
    And implemented various (trivial) `Collectd*Interface' classes.

commit 531779b6deedaf8cb6249c3009380b064cd80c8b
Author: Florian Forster <octo at leeloo.lan.home.verplant.org>
Date:   Sat Feb 21 09:13:43 2009 +0100

    java plugin: Implement a reference counter for the JVMEnv pointers.
    
    This way one thread entering the Java plugin twice, e. g. with the
    following call-chain, will not detach itself from the JVM before it is
    completely done with it.
    
    The problematic situation is:
      -> cjni_read
      -> ALLOC JVM
      -> `Read' (in Java)
      -> `DispatchValues' (in Java)
      -> plugin_dispatch_values
      -> cjni_write
      -> ALLOC JVM (this is a no-op!)
      -> `Write' (in Java)
      -> DEALLOC JVM
    
    This last dealloc is prematurely, because the thread is not done with
    the JVM yet: It'd like to continue and return from `DispatchValues' to
    execute some more Java code..

commit b2bf65d02a4c5d35e1d01f2e2f0e1dc2a1b3995b
Merge: ec842e40fbae1bb22e90a65dfcfab16eca3fc316 48b597ad215f915dfc6d7c5d4152b1dfd16c199f
Author: Florian Forster <octo at huhu.verplant.org>
Date:   Fri Feb 20 11:13:38 2009 +0100

    Merge branch 'ff/java' of /var/lib/git/collectd into ff/java

commit ec842e40fbae1bb22e90a65dfcfab16eca3fc316
Author: Florian Forster <octo at huhu.verplant.org>
Date:   Fri Feb 20 11:13:21 2009 +0100

    collectd-java(5): Fix a typo.

commit 48b597ad215f915dfc6d7c5d4152b1dfd16c199f
Author: Florian Forster <octo at leeloo.lan.home.verplant.org>
Date:   Thu Feb 19 23:38:52 2009 +0100

    java plugin: Use the new `plugin_dispatch_values_async' function.
    
    Having Java read- and write-functions at the same time works now \o/

commit ba6497bdffb6a225eb6c86c8b8fa57a2520f0c5f
Author: Florian Forster <octo at leeloo.lan.home.verplant.org>
Date:   Thu Feb 19 23:28:16 2009 +0100

    src/plugin.[ch]: Implement `plugin_dispatch_values_async'.
    
    This function differs from `plugin_dispatch_values' in that it will add
    the value_list_t to a queue rather than calling the write functions
    right away. This as at least two advantages:
    
      - The _async function will often return faster, since no file
        operation is done.
    
      - The ``read thread'' and the ``write thread'' are not the same
        thread. This makes it much easier for plugins that provide both,
        `read' and `write' callbacks.

commit d456f193400c94d05eda022526a6d894eb23ea82
Author: Florian Forster <octo at leeloo.lan.home.verplant.org>
Date:   Thu Feb 19 21:59:52 2009 +0100

    java plugin: Conditionally register read, write, and shutdown callbacks.
    
    Right now, this is a quick and dirty work around to get read functions
    working again.

commit c3aa8a690528c832c665eecef688a30fdb77ed36
Author: Florian Forster <octo at leeloo.lan.home.verplant.org>
Date:   Thu Feb 19 21:59:09 2009 +0100

    java plugin: Implement `plugin_get_ds' aka. GetDS.

commit b00dd5d20c9a5eddbcde58c488621853c3e9cc54
Author: Florian Forster <octo at leeloo.lan.home.verplant.org>
Date:   Wed Feb 18 23:40:23 2009 +0100

    java plugin: Add some comments to a nasty if-cascade.

commit fe7552a4e73e55655d44903ea7f9fd053029e2f9
Author: Florian Forster <octo at leeloo.lan.home.verplant.org>
Date:   Wed Feb 18 23:39:57 2009 +0100

    java plugin: Divide times received from Java by 1000.
    
    Java keeps time as milliseconds in 64bit integers. Let's keep it that
    way and translate to epoch transparently.
    
    The other way around, from C to Java, already multiplies by 1000.

commit 30c2d6652c012c90ab15cccadcb8934d7acbeac7
Author: Florian Forster <octo at leeloo.lan.home.verplant.org>
Date:   Wed Feb 18 23:38:23 2009 +0100

    java plugin: Have "DispatchValues" return a meaningful status.
    
    I. e. the status of "plugin_dispatch_values". That's as meaningful as
    we're going to get.

commit 19e04e052462e8803966f288799358ea697f4d59
Author: Florian Forster <octo at leeloo.lan.home.verplant.org>
Date:   Wed Feb 18 23:35:59 2009 +0100

    collectd-java(5): Add a manual page for the java plugin.

commit a862ff9b728f5f434fe370d78dfacb6bbd45d98a
Author: Florian Forster <octo at leeloo.lan.home.verplant.org>
Date:   Wed Feb 18 18:43:27 2009 +0100

    java plugin: Added the possibility to configure java plugins.

commit b9646aa15a6bfa96239b1e0775ef2e87a1be5676
Merge: d2f971b93c68b110c80be151eb6c5e65bd6d189c 08d2e13121e70afcf65d3925a16b4c8a6f41c915
Author: Florian Forster <octo at leeloo.lan.home.verplant.org>
Date:   Wed Feb 18 18:46:40 2009 +0100

    Merge branch 'master' into ff/java

commit d2f971b93c68b110c80be151eb6c5e65bd6d189c
Author: Florian Forster <octo at leeloo.lan.home.verplant.org>
Date:   Wed Feb 18 16:43:26 2009 +0100

    java plugin: Implemented oconfig types in Java.
    
    The CollectdAPI class has been moved to the `org.collectd.api'
    namespace, too, so that this stuff is together..

commit aede1532622a544e16fbb3fbd1a096230f047745
Author: Florian Forster <octo at leeloo.lan.home.verplant.org>
Date:   Wed Feb 18 14:20:02 2009 +0100

    java plugin: Added some configuration possibilities.

commit 548fd26b26483f6f147274ba2c37337d47defdf0
Author: Florian Forster <octo at leeloo.lan.home.verplant.org>
Date:   Wed Feb 18 12:49:56 2009 +0100

    java plugin: Added the ability to have `Write' callbacks in Java modules.
    
    I think right now having both, a `Read' and a `Write' function, would be
    a problem, because the same thread would enter the JVM twice, possibly
    detaching itself from the JVM when the write callback is finished, while
    it actually still is in the read callback. Adding a `dispatch thread' or
    something similar should take care of this problem.
    
    Other than that, converting `data_set_t' and `value_list_t' to their
    Java equivalents and back works fine now.

commit ff1c15a6849cd5c35fa3fce7444cb407fbb0cb4c
Author: Florian Forster <octo at leeloo.lan.home.verplant.org>
Date:   Tue Feb 17 23:45:40 2009 +0100

    java plugin: Add an early prototype of a Java binding, similar to the Perl plugin.
    
    It's totally proof-of-concept, but it's possible to dispatch values from
    a Java class using the ValueList implementation provided by Doug
    MacEachern from Hyperic. The other way around is not yet implemented,
    but that's just a matter of time and code. Configuration, notifications,
    targets, matches - all that is still missing.
    
    Right now, the code requires JNI version 1.2. Maybe I'll try to
    introduce compatibility with JNI 1.1 at a later point, if it's really
    useful for somebody.
    
    Signed-off-by: Florian Forster <octo at leeloo.lan.home.verplant.org>




More information about the collectd-changes mailing list