Chargement du modèle DataGraph virtual member manager

Virtual member manager prend en charge deux méthodes de chargement du modèle DataGraph dans la mémoire : le chargement dynamique et le chargement statique. Chaque méthode a ses avantages.

chargement dynamique

Le chargement dynamique signifie que le modèle DataGraph est chargé dans la mémoire en tant que modèle ECore en phase d'exécution à partir des fichiers XSD via XSDEcoreBuilder.

Les avantages de cette méthode sont les suivants :
Extension simplifiée
Contrairement au chargement statique, le chargement dynamique n'a pas besoin de générer un code de modèle statique. Toutes les définitions de schéma sont définies et chargées à partir d'un fichier XSD.
Permet d'effectuer des modifications dans le schéma intégré de virtual member manager
Les nouveaux types de propriété peuvent être ajoutés aux types d'entité intégrés virtual member manager par le fichier wimxmlextension.xml.
Prend en charge l'ajout de nouveaux schémas en phase d'exécution
Les utilisateurs peuvent appeler l'API createSchema en phase d'exécution pour créer des types d'entité et de propriété.
Les inconvénients de cette méthode sont les suivants :
Chargement plus lent
Le temps de chargement du fichier XSD est plus long que celui du chargement du code du modèle statique. Le processus de chargement se produit à chaque démarrage de virtual member manager.
Utilisation impossible des types natifs
Dans cette approche, les clients ne peuvent modifier le type des objets de données en types natifs (tels que PersonAccount, Group) ni utiliser les méthodes natives sur ces types. Par exemple, les clients peuvent uniquement utiliser la méthode setString(“givenname”, “Smith”) de l'objet de données pour définir le prénom, mais ne peut utiliser la méthode setGivenname(“Smith”) de PersonAccount.
Performances d'exécution plus lentes
Les performances SDO avec le chargement dynamique sont plus lentes qu'avec le modèle statique.

Chargement statique

Le chargement statique signifie que le code du modèle statique est généré par la génération de code EMF (Eclipse Modeling Framework) en phase de déploiement. Le code du modèle est une implémentation EMF de SDO. L'application SDO utilise le module du code du modèle généré. Cette approche permet de réduire le temps de chargement du modèle depuis les fichiers XSD en chargement dynamique. Il permet également à l'utilisateur de modifier le type des objets de données en types d'objets natifs afin d'améliorer les performances d'exécution.

Les avantages de cette méthode sont les suivants :
Chargement plus rapide
Comparé au chargement de modèle à partir de fichiers XSD, le mode de chargement à partir d'un code de modèle statique est plus rapide. Il permet de lancer virtual member manager plus rapidement.
Utilisation possible des types natifs
L'objet de données peut être modifié en types natifs (tels que PersonAccount, Group) et utiliser les méthodes natives sur ces types. Par exemple, vous pouvez modifier l'objet de données en PersonAccount et utiliser la méthode "setGivenname" pour définir la propriété "givenname".
Meilleures performances d'exécution
A l'aide des méthodes et des types natifs, les performances d'exécution SDO sont meilleures qu'avec la méthode de chargement dynamique.
Les inconvénients de cette méthode sont les suivants :
Extension moins facile
L'extension de schéma requiert lagénération d'un code de modèle statique via Eclipse ou l'environnement de développement RAD. Les utilisateurs de virtual member manager ont besoin d'un minimum de connaissances en EMF, SDO et Schéma XML afin d'effectuer une extension.
La modification du schéma intégré de virtual member manager est plus compliquée
Si vous souhaitez ajouter de nouveaux types de propriété aux types d'entité intégrée de virtual member manager (tels que PersonAccount et Group), vous devez modifier directement le fichier wimdomain.xsd et générer à nouveau le code de modèle statique de virtual member manager.
Ne prend pas en charge l'ajout de nouveaux schémas en phase d'exécution
Le code de modèle généré étant fixe, vous ne pouvez pas étendre le schéma de virtual member manager en phase d'exécution.


Conditions d'utilisation | Commentaires