From c23f7ec61f2b57ffb6cf5057a453dafe89416ef1 Mon Sep 17 00:00:00 2001 From: jestin Date: Tue, 7 Jan 2003 10:38:54 +0000 Subject: Rajout de docs sur IvyDaemon --- doc/ivy-java.1 | 7 ++++--- doc/ivy-java.sgml | 37 ++++++++++++++++++++++++++++++------- 2 files changed, 34 insertions(+), 10 deletions(-) diff --git a/doc/ivy-java.1 b/doc/ivy-java.1 index c519238..5887da2 100644 --- a/doc/ivy-java.1 +++ b/doc/ivy-java.1 @@ -75,7 +75,7 @@ java \-DIVYBUS=127.0.0.1:3042,10.192.36:2021,228.5.6.7:54321 fr.dgac.ivy.Probe ' java fr.dgac.ivy.Probe \-b 10.192.36:2021 '^coucou (.*)' .SH "NEEDED LIBRARIES" -.I jdk 1.1, 1.2, 1.3 or 1.4 +.I jdk from 1.1 to 1.4 .nf .I libgnu\-regexp\-java version 1.1.3 .nf @@ -84,7 +84,7 @@ java fr.dgac.ivy.Probe \-b 10.192.36:2021 '^coucou (.*)' .I If you want to run the TestIvySwing example with a 1.1 VM, you will need a swing jar .SH "BUGS" -So far, there are problems with old java VMs ( 1.1.7A ) +See the BUGS files for details. .SH "AUTHORS" .nf @@ -105,4 +105,5 @@ For further details, please refer to the Ivy html page at http://www.tls.cena.fr .SH "NOTES" In case of any comment or bug report on this library, please contact jestin@cena.fr .nf -Special thanks to Michelle Jacomi (jacomi@cena.fr) for her kind support +Special thanks to Michelle Jacomi for her kind support and +documentation writing. diff --git a/doc/ivy-java.sgml b/doc/ivy-java.sgml index 310a733..5408851 100644 --- a/doc/ivy-java.sgml +++ b/doc/ivy-java.sgml @@ -75,7 +75,8 @@ library. There is also a section dedicated to this port. What is Ivy? -Ivy is a software bus designed at CENA (France). A software bus is a system +Ivy is a software bus designed at CENA (France). +A software bus is a system that allows software applications to exchange information with the illusion of broadcasting that information, selection being performed by the receiving applications. Using a software bus is very similar to dealing with events in a @@ -108,12 +109,12 @@ The Ivy java library (aka ivy-java or fr.dgac.ivy) is a java package that allows you to connect applications to an Ivy bus. You can use it to write applications in java. You can also use it to integrate any thread-safe java application. So far, this library has been tested and used on a variety of -java virtual machines (from 1.1.8 to 1.4.0), and on a variety of architectures +java virtual machines (from 1.1.7 to 1.4.1), and on a variety of architectures (GNU/Linux, Solaris, Windows NT,XP,2000, MacOSX). -The Ivy C library was originally developed by François-Régis Colin and then +The Ivy java library was originally developed by François-Régis Colin and then by Yannick Jestin at CENA. It is maintained by a group at CENA (Toulouse, France) @@ -153,7 +154,8 @@ machine to the jar file. Your first Ivy application -We are going to write a "Hello world translater" for an Ivy bus. The application will subscribe to all messages starting with "Hello", and re-emit them after +We are going to write a "Hello world translater" for an Ivy bus. The application will +subscribe to all messages starting with "Hello", and re-emit them after translating "Hello" into "Bonjour". In addition, the application will quit when it receives any message containing exactly "Bye". @@ -380,6 +382,10 @@ with this name to leave the bus .bye (or .quit) forces the JPROBE application to exit. This is the same as issing an end of file character on a single input line ( ^D ). +.direct client id message sends the direct message to the remote client, using +the numeric id + + .list gives the list of clients seen on the ivy bus @@ -391,15 +397,32 @@ check the connectivity. +fr.dgac.ivy.IvyDaemon utility + +As the launching and quitting of an ivy bus is a bit slow, it is not +convenient to spawn an Ivy client each time we want to send a simple message. +To do so, we can use the IvyDaemon, which is a TCP daemon sitting and waiting +on the port 3456, and also connected on the default bus. Each time a remote +application connects to this port, every line read until EOF will be forwarded +on the bus. The standard port and bus domain can be overriden by command line +switches. ( java fr.dgac.ivy.IvyDaemon -h ). + + +First, spawn an ivy Damon: $ java fr.dgac.ivy.IvyDaemon +then, within your shell scripts, use a short tcp connexion ( for instance +netcat ) : $ echo "hello world" | nc -q 0 localhost 3456 + +The message will be sent on the default Ivy Bus. + + Direct messages Direct messages is an ivy feature allowing the exchange of information between two ivy clients. It overrides the subscription mechanism, making the exchange faster ( there is no regexp matching, etc ). However, this features breaks the software bus metaphor, and should be replaced with the relevant bounded -regexps, at the cost of a small CPU overhead. So far, the sending of direct -message is not available from java, but the receiving is available in the -fr.dgac.Ivy class. +regexps, at the cost of a small CPU overhead. The full direct message +mechanism in java has been made available since the ivy-java-1.2.3. -- cgit v1.1