Next: A propos de ce
Up: Enoncés des travaux pratiques
Previous: Exercice 1
Les sources de cet exercice se trouvent dans le
répertoire ``.
/TP-CORBA/EXO2''.
On se propose dans ce deuxième exercice d'ajouter une
fonctionnalité de ``mémoire'' à notre calculatrice. La mémoire est
implantée sous la forme d'un attribut CORBA. On rappel qu'un attribut
d'interface CORBA est une donnée encapsulée dans un objet. Un
attribut
peut être consulté et/ou modifié à distance par un client. Dans
notre cas, il s'agit d'un attribut en lecture seule.
Dans le mapping IDL/Java, un attribut en lecture/écriture nécessite
la production de deux méthodes dans la souche. Le nom
de ces méthodes
est le nom de l'attribut lui-même.
Ces méthodes sont utilisées par les clients pour
manipuler les attributs à distance.
Une seule méthode est générée dans le cas d'un attribut en lecture
(voir les souches générées pour de plus amples informations).
On vous demande de :
- 1.
- Compléter la description IDL tpcorba.idl, en ajoutant
les méthodes ajouteMemoire, soustraitMemoire,
multiplieMemoire et miseAZero
à l'interface calcul.
Chacune de ces méthodes prend un unique paramètre
en in de type double (sauf
miseAZero qui ne prend pas de paramètre). Elle mettent
à jour la mémoire mais ne renvoient pas d'information
au client. La méthode diviseMemoire doit lever une exception en cas de tentative de division par zéro (une exception CORBA est
un événement déclenché lors de l'invocation d'un objet et qui est transmis à l'invoqueur de cet objet. Invoqueur et invoqué ne sont pas nécessairement localisés sur la même machine.).
- 2.
- Compléter la définition de la classe d'implémentation
dans le fichier
.java.
- 3.
- Compléter le client afin de tester les quatre méthodes implantées. Le client doit afficher l'état initial de la mémoire, puis
effectuer des opérations sur celle-ci. Enfin, avant de se terminer,
il devra afficher l'état final de la mémoire.
- 4.
- Que se passe-t-il lorsque la mémoire est utilisée par plusieurs clients successivement ?
PS : Les zones de code à compléter sont désignées par des étoiles.
Next: A propos de ce
Up: Enoncés des travaux pratiques
Previous: Exercice 1
Frank Singhoff
2000-03-20