Chapter 4 Gestion des profils


Définition d'un template pour la génération

Un fichier généré utilise des templates définis dans des métaclasses. Le premier template que vous devez définir porte sur les messages. Le rôle de ce template est d'évaluer le numéro d'ordre de message et de fournir le nom de l'émetteur, le nom du message et le nom du récepteur pour chaque message dans le diagramme.

La syntaxe pour ce template est la suivante :

.set_value(_tabs, "", new)
.foreach_part(%SequenceNumber%, '.')
.set_value(_tabs, "   %_tabs%")
.next
%_tabs%%SequenceNumber%) %Sender.ShortDescription% sends message "%Name%" to %Receiver.ShortDescription%

La première partie du template vise à créer une indentation correspondant au numéro de séquence du message. La macro foreach_parts boucle sur les numéros d'ordre :

.foreach_part(%SequenceNumber%, '.') 
.set_value(_tabs, "   %_tabs%") 

Il passe en revue chaque numéro d'ordre et chaque fois qu'il trouve un point, il ajoute trois espaces vides automatiquement pour réaliser l'indentation. Cette procédure calcule la variable _tab, qui est ensuite utilisée pour créer l'indentation appropriée en fonction des numéros d'ordre.

La dernière ligne contient le texte généré pour le template : pour chaque numéro de séquence, la valeur de tabulation appropriée est créée, suivie du nom de l'émetteur (brève description), le texte "sends message", puis le nom du message, le texte "to", ainsi que le nom du récepteur.

Steps Pour définir un template utilisé pour la génération :

  1. Sélectionnez Modèle→Définitions étendues de modèle puis double-cliquez sur la flèche en regard de Robustness_Extension dans la boîte de dialogue Liste des définitions étendues de modèle pour afficher l'éditeur de ressources.
  2. Pointez sur la catégorie Profile, cliquez le bouton droit de la souris, puis sélectionnez Ajouter des métaclasses.

    La boîte de dialogue Sélection de métaclasses s'affiche.
  3. Sélectionnez Message dans la liste des métaclasses affichées dans l'onglet PdMOO, puis cliquez sur OK.

    La catégorie Message s'affiche sous Profile.
  4. Pointez sur la catégorie Message, cliquez le bouton droit de la souris et sélectionnez Nouveau→Template.

    Un nouveau template est créé.
  5. Saisissez description dans la zone Nom du template
  6. [facultatif] Saisissez un commentaire dans la zone Commentaire du template.
  7. Saisissez le code suivant dans la zone de texte :

    .set_value(_tabs, "", new)
    .foreach_part(%SequenceNumber%, '.')
       .if (%Separator% == ".")
          .set_value(_tabs, "   "%_tabs%)
       .endif
    .next
    %_tabs%%SequenceNumber%) %Sender.ShortDescription% sends message "%Name%" to %Receiver.ShortDescription%

  8. Cliquez sur Appliquer.

 


Copyright (C) 2007. Sybase Inc. All rights reserved.