Bon on continue :
Quand on compile le contrat idl, plein de petits fichiers sont créés :
5 fichiers par interface, exemple avec l'interface "V_objet" :
- V_objetHelper.java (je ne sais pas trop ce que c'est!, on m'a aussi dit de ne rien modifier là dedans...!)
- V_objetHolder.java (ça non plus je ne sais pas trop ce que c'est, on m'a aussi dit de ne rien modifier là dedans...!)
- V_objetOperations.java (là dedans ya quasi toutes les méthodes qu'on a mis dans le contrat idl et qu'on va implémenter dans un fichier que l'n créé plus tard : V_objetImpl.java)
- V_objetPOA.java (ça non plus je ne sais pas trop ce que c'est, on m'a aussi dit de ne rien modifier là dedans...!)
- V_objetPOA_tie.java (ça non plus : aucune idée, mais ne pas modifier!!)
Une fois ces fichiers créés, on doit créer le fichier V_objetImpl qui implémente les méthodes de l'interface V_objet , exemple avec mon interface V_objet tirée de mon contrat idl :
Et voici mon fichier V_objetImpl.java :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27 struct V_object_data { string nomobjet; // identificateur de l'objet string categorie; //categorie de l'objet mis en vente string description; //description de l'objet float prix_depart; //prix de depart de l'objet float pas; //pas d'incrementation du prix de l'objet float prix_actuel; //Par défaut, fixé au prix de départ sinon de la mailleure enchere long date; //date de fin d'enchere long nom_vendeur; //identificateur du vendeur string meilleur_acheteur; //contient l'identifiant du meilleur encherisseur }; // Sequence de V_object_data typedef sequence <V_object_data> V_object_data_list; interface V_object { readonly attribute V_object_data V_objet; //Gestion des exceptions possibles exception tempsdepasse//exeption de la date de fin d'enchere depassee { long date; }; //Méthode invoquée par l'acheteur : enchérir avec en paramètres son identification (ici son adresse electronique) et le nouveau prix void encherir (in string mail_utilisateur, in float new_prix) raises (tempsdepasse); };
Maintenant que mon premier fichier est fait, je m'attaque au reste!! J'espère que ça va aller...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24 package courtage_stri; public class V_objectImpl extends V_objectPOA { public V_object_data vobjet; public float prixpas; public V_object_data V_objet() { return (V_object_data)null; } public V_objectImpl(V_object_data vobjet) { this.vobjet = vobjet; } public void encherir(String mail_utilisateur, float new_prix) { prixpas=vobjet.prix_actuel+vobjet.pas; //Si le nouveau est supérieur au prix de la dernière if (new_prix>prixpas) // enchère + le pas d'enchère { vobjet.prix_actuel=new_prix; vobjet.meilleur_acheteur=mail_utilisateur; } vobjet.prix_actuel = new_prix; } }
Je vous tiendrai vite au courant!!
Si vous voyez quelque chose qui ne semble pas bon, n'hésitez pas!
P.S. : j'ai encore pas géré l'exception.. je ne sais pas trop comment je vais le faire...
Partager