Hi Noah, Thanks for putting this together! It looks pretty good. I see that at the moment you have it as part of the Ceph source tree. Well, we're not planning on integrating language bindings into the source tree. The reason we integrated the python bindings into the main source tree is because we have a lot of python code. We have a tool called obsync, a testing framework called autotest, and some other stuff that is written in python. In my opinion, Python allows us to write scripts and tools at a higher level of abstraction than what is provided by shell scripting. (although shell scripts can be useful sometimes.) PHPRados has its own wiki page and a separate repo. It's at: http://ceph.newdream.net/wiki/Phprados We should set up something similar for this, I think. P.S. It would be nice to have a simple script that runs through the bindings and ensures that they still work. This would be helpful in case we make a minor revision to the Rados API. Basically, any time we bump the librados version number, we should consider sending a patch to add the new function or revise the old function in the Java/python/PHP API. That's a lot easier if there's a little script that just runs all the functions. That's what ceph-pybind-test.py. Is it possible to make something like that for the Java and PHP bindings? cheers, Colin On Sun, Apr 17, 2011 at 6:34 PM, Noah Watkins <jayhawk@xxxxxxxxxxx> wrote: > I've put together Java bindings for RADOS available at: > > git://github.com/noahdesu/ceph.git java-rados > > Contains: > - Bindings with JNI > - Full set of unit tests > - JavaDoc markup > > Thanks, > Noah > > .gitignore | 1 + > configure.ac | 1 + > src/bindings/java/.gitignore | 4 + > src/bindings/java/README | 45 ++ > src/bindings/java/build.xml | 83 +++ > .../java/java/net/newdream/ceph/rados/Cluster.java | 249 +++++++++ > .../java/net/newdream/ceph/rados/ClusterStats.java | 75 +++ > .../java/net/newdream/ceph/rados/IOContext.java | 332 +++++++++++ > .../net/newdream/ceph/rados/ObjectIterator.java | 77 +++ > .../java/net/newdream/ceph/rados/PoolStats.java | 130 +++++ > .../net/newdream/ceph/rados/RadosException.java | 28 + > .../java/net/newdream/ceph/rados/RadosObject.java | 169 ++++++ > .../java/net/newdream/ceph/rados/RadosVersion.java | 54 ++ > src/bindings/java/native/Makefile.am | 30 + > src/bindings/java/native/common.h | 19 + > src/bindings/java/native/exceptions.c | 78 +++ > .../java/native/net_newdream_ceph_rados_Cluster.c | 520 +++++++++++++++++ > .../java/native/net_newdream_ceph_rados_Cluster.h | 125 +++++ > .../native/net_newdream_ceph_rados_ClusterStats.c | 41 ++ > .../native/net_newdream_ceph_rados_ClusterStats.h | 21 + > .../native/net_newdream_ceph_rados_IOContext.c | 588 ++++++++++++++++++++ > .../native/net_newdream_ceph_rados_IOContext.h | 125 +++++ > .../net_newdream_ceph_rados_ObjectIterator.c | 63 +++ > .../net_newdream_ceph_rados_ObjectIterator.h | 37 ++ > .../native/net_newdream_ceph_rados_PoolStats.c | 50 ++ > .../native/net_newdream_ceph_rados_PoolStats.h | 21 + > .../native/net_newdream_ceph_rados_RadosVersion.c | 31 + > .../native/net_newdream_ceph_rados_RadosVersion.h | 21 + > src/bindings/java/test/ClusterStatsTest.java | 31 + > src/bindings/java/test/ClusterTest.java | 139 +++++ > src/bindings/java/test/IOContextTest.java | 190 +++++++ > src/bindings/java/test/PoolStatsTest.java | 47 ++ > src/bindings/java/test/RadosObjectTest.java | 105 ++++ > src/bindings/java/test/RadosTestUtils.java | 11 + > src/bindings/java/test/RadosVersionTest.java | 14 + > 35 files changed, 3555 insertions(+), 0 deletions(-) > > > -- > To unsubscribe from this list: send the line "unsubscribe ceph-devel" in > the body of a message to majordomo@xxxxxxxxxxxxxxx > More majordomo info at http://vger.kernel.org/majordomo-info.html > -- To unsubscribe from this list: send the line "unsubscribe ceph-devel" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html