[libvirt] [libvirt-java] [PATCH 41/65] Prepare to define proper domain event callback support
Daniel P. Berrange
berrange at redhat.com
Fri Feb 21 11:07:23 UTC 2014
On Thu, Feb 13, 2014 at 04:22:49PM +0100, Claudio Bley wrote:
> Remove the public domainEventRegisterAny and domainEventDeregisterAny
> methods. These methods basically were of no use since the only thing you
> could register was a "generic" callback.
>
> At runtime, you would have to provide a real callback function matching
> the prototype of the native callback type.
>
> Trying to use a generic callback instead quickly leads to failures or
> JVM crashes.
>
> For convenience and the sake of type safety we don't let the
> user deal with Libvirt.VirDomainEventCallback interfaces directly.
>
> Instead, there will be a specific interface definition for each type
> of callback as we soon shall see.
>
> To prevent the garbage collector from reaping registered callback objects
> every event callback will be stored along with its eventID and
> corresponding listener instance.
>
> This will provide a natural, idiomatic interface using
> addListener/removeListener methods.
>
> Signed-off-by: Claudio Bley <cbley at av-test.de>
> ---
> src/main/java/org/libvirt/Connect.java | 79 ++++++++++++--------
> src/main/java/org/libvirt/event/EventListener.java | 7 ++
> src/main/java/org/libvirt/jna/Libvirt.java | 22 ++++--
> 3 files changed, 73 insertions(+), 35 deletions(-)
> create mode 100644 src/main/java/org/libvirt/event/EventListener.java
ACK
Regards,
Daniel
--
|: http://berrange.com -o- http://www.flickr.com/photos/dberrange/ :|
|: http://libvirt.org -o- http://virt-manager.org :|
|: http://autobuild.org -o- http://search.cpan.org/~danberr/ :|
|: http://entangle-photo.org -o- http://live.gnome.org/gtk-vnc :|
More information about the libvir-list
mailing list