'\" '\" Ivy, Java interface \- library managing connexions to a software bus '\" '\" Copyright (C) 1997-1999 '\" Centre d'Études de la Navigation Aérienne '\" '\" See the file "license.terms" for information on usage and redistribution '\" of this file, and for a DISCLAIMER OF ALL WARRANTIES. '\" '\" .TH Ivy-java-1.0 1 1.0 "Ivy-java-1.0 Interface" .SH NAME ivy-java - a software bus library .SH SYNOPSIS Ivy-java provides a useful set of Java library classes for communicating between different processes through a software bus .SH DESCRIPTION Ivy is a software bus, ie a system that allows any software component to freely exchange data. The basic principle of a software bus is to ease the rapid implementation of new agents, and to manage a dynamic collection of agents on the bus: agents connect, send and receive messages, and disconnect without perturbing the overall functionment of the bus. Each time an application initializes a connection on the bus, a "ready" message is sent to all other applications already connected, and the list of the messages subscribed by this application is dispatched. The format for the messages is free. .nf The essential classes of Ivy Java are: .nf .I Ivy: \ API for the connexion to the software bus .nf .I IvyWatcher: \ to handle UDP socket .nf .I IvyMessageListener: \ to receive messages .nf .I IvyApplicationListener: \ contains 4 virtual methods for handling connexion/deconnexion, die and direct messages .nf .I IvyApplicationAdapter: \ to implement the IvyApplicationListener methods .nf .I Probe: \ to test the regular expressions in a terminal .nf .I TestIvy: \ to test the regular expressions in an AWT window .nf .I TestIvySwing: \ to test the regular expressions in a swing window .I IvyDaemon: \ a daemon to access the bus via a simple socket: you connect (default port : 3456 ), write a msg, and exit, the daemon will send the message. This is useful in shell scripts, in cunjunction with netcat ( echo "coucou" | nc -q 0 localhost 3456 ) .SH ENVIRONMENT .I the IVYBUS property can be given, either via a shell variable or via the -DIVYBUS= method. It can be a list of addresses followed by a port number. The default is a datagram local address on a non priviledged port 127.255.255.255:2010 , it can also be shortened to 127:2010. You can specify other datagram adresses with respect to your local configuration (see ifconfig(1) ), and you can specify a multicast address 228.5.6.7 for instance. You can supply multiple domains, separated by colons .nf .SH FILES .I /usr/share/java/ivy-java-1.0.5.jar .nf .I /usr/src/ivy-java/fr/dgac/ivy/*.java .SH EXAMPLE This library is delivered with a test class named TestIvy: .nf java -DIVYBUS=143.196.53.255:2011 -classpath /usr/lib/jdk1.1/lib/classes.zip:/usr/share/java/gnu-regexp-1.0.6.jar:/usr/share/java/ivy-java.jar fr.dgac.ivy.TestIvy .nf -DIVYBUS is optional .nf java -DIVYBUS=127.0.0.1:3042,10.192.36:2021,228.5.6.7:54321 fr.dgac.ivy.Probe '^coucou (.*)' .nf java fr.dgac.ivy.Probe -b 127.0.0.1:3042,10.192.36:2021,228.5.6.7:54321 '^coucou (.*)' .SH NEEDED LIBRARIES .I jdk 1.1, 1.2 or 1.3. The AWT version used to work on 1.0.8, but it has not been tested since .nf .I libgnu-regexp-java version 1.1.3 .nf .I libgnu-getopt-java version 1.0.6 .nf .I for TestIvySwing, swing if it is not bundled in your jdk1.1 .SH BUGS None reported yet ;) .SH AUTHORS .nf Francois-Regis Colin .nf Yannick Jestin .SH SEE ALSO ivy-c (1) .nf ivy-perl (1) .nf ivy-c-functions (1) .nf ivyprobe (1) .sp For further details, please refer to the Ivy html page at http://www.tls.cena.fr/products/ivy/ .SH NOTES In case of any comment or bug report on this library, please contact fcolin@cena.fr, jestin@cena.fr .nf Special thanks to Michelle Jacomi (jacomi@cena.fr) for her kind support