Gestion ˆ distance de comptes bancaires

 

But du TD/TP : Žcrire une application rŽpartie permettant de gŽrer des comptes bancaires. Un serveur gŽrera tous les comptes bancaires et permettra ˆ des clients de se connecter et dÕeffectuer les opŽrations suivantes :

-       CrŽer un compte en banque.

-       Consulter la position dÕun compte

-       Ajouter une somme sur un compte

-       Retirer une somme dÕun compte.

 

Voici la dŽclaration des mŽthodes distantes :

 

void creerCompte(String id, double somme_initiale);

void ajouter(String id, double somme);

void retirer(String id, double somme);

Position position(String id);

 

id est une cha”ne permettant dÕidentifier un compte et Position est une classe stockant le solde du compte et la date (de type java.util.Date) de dernire opŽration :

 

public class Position {

  private double solde;

  private Date derniereOperation;

 

  public Position(double solde) {

    this.solde = solde; this.derniereOperation = new Date();

  }

  // A complŽter

}

 

1.    Ecrire une interface Banque dŽrivant de Remote qui dŽclare les mŽthodes distantes.

 

2.    Ecrire la classe Compte qui permet de consulter la position dÕun compte, dÕajouter et de retirer une somme ˆ un compte.

 

3.    Ecrire une classe BanqueImpl qui gre la partie serveur de notre application rŽpartie. Les comptes seront stockŽs dans une Hashtable qui permettra de retrouver un compte ˆ partir de son identification.

 

4.    Ecrire une classe BanqueClient qui gre la partie client de notre application rŽpartie. LÕapplication prŽsentera un petit menu (sous forme textuelle) permettant dÕaccŽder aux diverses mŽthodes.

 

5.     On veut maintenant que le serveur, prŽvienne le client quand le solde de son compte devient nŽgatif ou infŽrieur ˆ une valeur choisie par le client. Quel mŽcanisme, vu en cours, peut tre utilisŽ ? Modifiez lÕinterface et les classes pour gŽrer cette situation.