[libvirt-users] libvirt: C++ or Java?

Hello, I am planning to develop a management application for managing Redhat Xen and Redhat KVM hypervisors. I am evaluating the Java bindings versus the C++ version of libvirt. As part of evaluation, I could not find meaningful answers to the questions below. Hence, I thought that people on this mailing list would be the most appropriate to comment on them. Can you please let me know your views? 1. Are all functions that are available in C API available in Java? 2. Are Java bindings added along with every enhancement to C API? 3. If answer to above question is negative, typically how long does it takes for the addition of Java bindings for the enhancement? 4. Most of libvirt based third party management applications use which of Java bindings or C API? 5. What are your good/bad experiences while using either of C API or Java bindings? 6. What is your concluding personal recommendation? And finally, since libvirt is a Redhat Emerging Technology project, does Redhat or any other third party service providers provide paid assistance, support? Appreciate your time. Thanks. Regards, Ganesh

On Sun, Apr 11, 2010 at 04:19:14PM +0530, Ganesh Pagade wrote:
Hello,
I am planning to develop a management application for managing Redhat Xen and Redhat KVM hypervisors. I am evaluating the Java bindings versus the C++ version of libvirt. As part of evaluation, I could not find meaningful answers to the questions below. Hence, I thought that people on this mailing list would be the most appropriate to comment on them. Can you please let me know your views?
Hum, could you avoid posting the same questions 4 times on the list, thanks !
1. Are all functions that are available in C API available in Java?
there can be a bit of lag
2. Are Java bindings added along with every enhancement to C API?
those are separate code bases, so no guarantee. Using the C api is the only way to make sure you have access to the latest features, Python is usually up to date too as it's included in the main tree and releases.
3. If answer to above question is negative, typically how long does it takes for the addition of Java bindings for the enhancement?
Time for Bryan Kearney to realize the gap and implement it. It goes faster if he's notified or receive patches of course.
4. Most of libvirt based third party management applications use which of Java bindings or C API?
We use python a lot ourselves. Daniel -- Daniel Veillard | libxml Gnome XML XSLT toolkit http://xmlsoft.org/ daniel@veillard.com | Rpmfind RPM search engine http://rpmfind.net/ http://veillard.com/ | virtualization library http://libvirt.org/

On 04/12/2010 08:32 AM, Daniel Veillard wrote:
On Sun, Apr 11, 2010 at 04:19:14PM +0530, Ganesh Pagade wrote:
Hello,
I am planning to develop a management application for managing Redhat Xen and Redhat KVM hypervisors. I am evaluating the Java bindings versus the C++ version of libvirt. As part of evaluation, I could not find meaningful answers to the questions below. Hence, I thought that people on this mailing list would be the most appropriate to comment on them. Can you please let me know your views?
Hum, could you avoid posting the same questions 4 times on the list, thanks !
1. Are all functions that are available in C API available in Java?
there can be a bit of lag
2. Are Java bindings added along with every enhancement to C API?
those are separate code bases, so no guarantee. Using the C api is the only way to make sure you have access to the latest features, Python is usually up to date too as it's included in the main tree and releases.
3. If answer to above question is negative, typically how long does it takes for the addition of Java bindings for the enhancement?
Time for Bryan Kearney to realize the gap and implement it. It goes faster if he's notified or receive patches of course.
If you are missing something.. I am happy to push it in. Java is current sitting at 0.7.0, so I know I need to update it.
4. Most of libvirt based third party management applications use which of Java bindings or C API?
RHQ uses the java bindings. -- bk
participants (3)
-
Bryan Kearney
-
Daniel Veillard
-
Ganesh Pagade