mirror of
https://github.com/libguestfs/libguestfs.git
synced 2026-03-21 22:53:37 +00:00
103 lines
2.5 KiB
Plaintext
103 lines
2.5 KiB
Plaintext
=encoding utf8
|
|
|
|
=head1 NAME
|
|
|
|
guestfs-java - How to use libguestfs from Java
|
|
|
|
=head1 SYNOPSIS
|
|
|
|
import com.redhat.et.libguestfs.*;
|
|
|
|
GuestFS g = new GuestFS ();
|
|
g.add_drive ("disk.img",
|
|
new HashMap<String,Object>() {
|
|
{
|
|
put ("readonly", Boolean.TRUE);
|
|
put ("format", "raw");
|
|
}
|
|
});
|
|
g.launch ();
|
|
|
|
=head1 DESCRIPTION
|
|
|
|
This manual page documents how to call libguestfs from the Java
|
|
programming language. This page just documents the differences from
|
|
the C API and gives some examples. If you are not familiar with using
|
|
libguestfs, you also need to read L<guestfs(3)>.
|
|
|
|
=head2 CLOSING THE HANDLE
|
|
|
|
The handle is closed when it is reaped by the garbage collector.
|
|
Because libguestfs handles include a lot of state, it is also
|
|
possible to close (and hence free) them explicitly by calling
|
|
the C<close> method.
|
|
|
|
=head2 EXCEPTIONS
|
|
|
|
Errors from libguestfs functions are mapped into the
|
|
C<LibGuestFSException> exception. This has a single parameter which
|
|
is the error message (a C<String>).
|
|
|
|
Calling any method on a closed handle raises the same exception.
|
|
|
|
=head2 EVENTS
|
|
|
|
The L<libguestfs event API|guestfs(3)/EVENTS> is fully supported from
|
|
Java. Create a class which implements the C<EventCallback> interface,
|
|
create an instance of this class, and then call the C<GuestFS#set_event_callback>
|
|
method to register this instance. The C<event> method of the class is
|
|
called when libguestfs generates an event.
|
|
|
|
For example, this will print all trace events:
|
|
|
|
GuestFS g = new GuestFS ();
|
|
g.set_trace (true);
|
|
g.set_event_callback (
|
|
new EventCallback () {
|
|
public void event (long event, int eh,
|
|
String buffer, long[] array) {
|
|
System.out.println (GuestFS.eventToString (event) +
|
|
": " + buffer);
|
|
}
|
|
},
|
|
GuestFS.EVENT_TRACE);
|
|
g.add_drive_ro ("disk.img");
|
|
// etc.
|
|
|
|
The output looks similar to this:
|
|
|
|
EVENT_TRACE: add_drive_ro "disk.img"
|
|
EVENT_TRACE: add_drive_ro = 0
|
|
// etc.
|
|
|
|
=head1 EXAMPLE 1: CREATE A DISK IMAGE
|
|
|
|
@EXAMPLE1@
|
|
|
|
=head1 EXAMPLE 2: INSPECT A VIRTUAL MACHINE DISK IMAGE
|
|
|
|
@EXAMPLE2@
|
|
|
|
=head1 SEE ALSO
|
|
|
|
L<guestfs(3)>,
|
|
L<guestfs-examples(3)>,
|
|
L<guestfs-erlang(3)>,
|
|
L<guestfs-golang(3)>,
|
|
L<guestfs-lua(3)>,
|
|
L<guestfs-ocaml(3)>,
|
|
L<guestfs-perl(3)>,
|
|
L<guestfs-python(3)>,
|
|
L<guestfs-recipes(1)>,
|
|
L<guestfs-ruby(3)>,
|
|
L<http://libguestfs.org/>,
|
|
L<http://caml.inria.fr/>.
|
|
|
|
=head1 AUTHORS
|
|
|
|
Richard W.M. Jones (C<rjones at redhat dot com>)
|
|
|
|
=head1 COPYRIGHT
|
|
|
|
Copyright (C) 2011-2012 Red Hat Inc.
|