Chapter 4 Gestion des profils


Définition des templates pour la métaclasse du diagramme de communication

Une fois que vous avez défini le template utilisé pour évaluer le numéro d'ordre de chaque message, vous devez créer un template pour trier ces numéros d'ordre (compareCbMsgSymbols ), ainsi qu'un autre template pour extraire tous les messages du diagramme de communication (description ).

Le template compareCbMsgSymbols est de type booléen et permet de vérifier si le numéro de message est supérieur à un autre numéro de message. La syntaxe de ce template est la suivante :

.bool (%Item1.Object.SequenceNumber% >= %Item2.Object.SequenceNumber%)

La valeur renvoyée pour ce template est utilisée avec le paramètre compare dans le template description dont le code se présente comme suit :

Communication Scenario %Name%:
\n
.foreach_item(Symbols,,, %ObjectType% == CommunicationMessageSymbol, %compareCbMsgSymbols%)
   %Object.description%
.next(\n)

Dans ce template, la première ligne est utilisée pour générer le titre du scénario à l'aide du nom du diagramme de communication %Name%. Puis elle crée une nouvelle ligne.

Ensuite, la macro pour chaque élément boucle sur chaque symbole de message, vérifie puis trie le numéro de message, avant de générer la description de message à l'aide de la syntaxe définie dans la section précédente.

Steps Pour définir des templates pour la métaclasse du diagramme de communication :

  1. 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.
  2. Cliquez sur l'outil Modifier le filtre des métaclasses et sélectionnez Afficher toutes les métaclasses.
  3. Sélectionnez CommunicationDiagram dans la liste des métaclasses affichées dans l'onglet PdMOO, puis cliquez sur OK.

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

    Un nouveau template est créé.
  5. Saisissez compareCbMsgSymbols 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 :

    .bool (%Item1.Object.SequenceNumber% >= %Item2.Object.SequenceNumber%)
  8. Cliquez sur Appliquer.
  9. Pointez sur la catégorie CommunicationDiagram, cliquez le bouton droit de la souris et sélectionnez Nouveau→Template.

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

    Communication Scenario %Name%:
    \n
    .foreach_item(Symbols,,, %ObjectType% == CommunicationMessageSymbol, %compareCbMsgSymbols%)
       %Object.description%
    .next(\n)

  13. Cliquez sur Appliquer.

 


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