logo MagicDraw
Version 17.0

A quoi sert le développement de plugins?

Les plugins permettent d’étendre les fonctionnalités natives de MagicDraw:

  • Ajouter des nouvelles actions (sous forme de menus ou de boutons)
  • Ajouter des nouveaux comportements (sous forme d’écouteurs)
  • Ajouter des validateurs
  • Automatiser des traitements

A savoir

  1. OpenAPI en Java
    • Permet de manipuler les modèles et les diagrammes
    • Facile à utiliser avec un peu d’expérience
  2. Ressources disponibles
    • Documenation MagicDraw OpenAPI UserGuide.pdf disponible dans <MagicDraw_Install_Dir>\manual
    • Exemples et javadoc disponibles dans <MagicDraw_Install_Dir>\openapi

Commencer avec Eclipse

  1. Créer un nouveau projet Java
  2. Créer une « User Library » (Window>Preferences>Java>Build Path>User Libraries) avec tous les .jar de <MagicDraw_Install_Dir>\lib

    User Library
    User Library
  3. Configurer le « Build Path » du projet avec la librairie précédemment créée
  4. Créer un nouveau package et une classe qui hérite de Plugin com.nomagic.magicdraw.plugins.Plugin
  5. Ajouter les méthodes non implémentée
  6. Faire un System.out.println() dans init() et retourner true dans isSupported() et close()

    Classe MyPlugin
    Classe MyPlugin
  7. Récupérer le fichier plugin.xml
    • Vérifier la valeur de l’attribut class (nom complet de la classe plugin)
  8. Récupérer le fichier build.xml
    • Vérifier la valeur de la propriété magicdraw.home (adresse du répertoire d’installation de MagicDraw)
    • Vérifier la valeur de la propriété plugin.dir.name (nom du répertoire plugin, ce nom correspond en général au package du plugin)
  9. Ouvrir la vue « Ant » et déployer le plugin

    Deploy the plugin
    Deploy the plugin

Le plugin est maintenant déployé, on pourrait le tester en lancant directement MagicDraw mais certains préfèrent lancer l’application directement depuis Eclipse.

Lancer MagicDraw depuis Eclipse

  1. Créer une nouvelle « Configuration » (Run>Run Configuration…)
    • Name = MagicDraw 17.0
    • Project = Le projet précédemment créé
    • Main class = com.nomagic.magicdraw.Main
    • Program arguments = -verbose
    • VM arguments = -Dinstall="${MDINSTALL}" -Xms256M -Xmx800M -XX:PermSize=40M -XX:MaxPermSize=150M
      Note : une variable a été utilisée car le répertoire d’installation de MagicDraw contient des points

      Configuration MagicDraw
      Configuration MagicDraw
  2. Exécuter la configuration
    • Vérifier que le message imprimé dans la méthode init()s’affiche bien dans la console Eclipse

      Console Eclipse
      Console Eclipse

Le plugin est maintenant bien détecté par MagicDraw.
La prochaine étape sera donc de voir comment implémenter de nouvelles fonctionnalités.

Publicités