/***************************************************************/
Type Module Defaut Final TailleSegment 8
/* Objet : Type des objets correspondant aux modules. */
/***************************************************************/
/*-------------------------------------------------------------*/
/* Heritage des proprietes d'Objet. */
/*-------------------------------------------------------------*/
Prive :
EstInstanceDe : Type Lecture Public;
/*-------------------------------------------------------------*/
/* Proprietes propres. */
/*-------------------------------------------------------------*/
Prive :
NomModule : Caractere Lecture Public Trace;
NumeroModule : Entier Lecture Public;
Priorite : Entier Lecture Public Trace;
VersionDuModule : Entier Lecture Public Trace;
RevisionDuModule : Entier Lecture Public Trace;
CorrectionDuModule : Entier Lecture Public Trace;
/*-------------------------------------------------------------*/
/* Heritage des methodes d'Objet. */
/*-------------------------------------------------------------*/
Public :
Fonction Optimiser(Invariant) Identique(O : Nul Ou Objet) Retourner Nul Ou Booleen;
Procedure Convertir(O : Nul Ou Objet);
Fonction Optimiser(Invariant) CreeParLeServeur() Retourner Entier;
Fonction Optimiser(Invariant) CreeParLeProcessus() Retourner Entier;
Fonction Optimiser(Invariant) CreeDansLEntrepot() Retourner Entrepot;
Fonction Cloner(EntrepotCible : Nul Ou Entrepot=Nul, Profondeur : ModeClonage = ClonageObjetSeul) Retourner Nul Ou Objet;
Fonction LirePropriete(NomPropriete : Caractere) Retourner Nul Ou Objet;
Procedure EcrirePropriete(NomPropriete : Caractere, Valeur : Nul Ou Objet);
Fonction IncrementerDecrementerPropriete(NomPropriete : Nul Ou Caractere, Incrementer : Booleen, Prefixe : Booleen) Retourner Nul Ou Objet;
Procedure SupprimerPropriete(NomPropriete : Caractere);
Fonction Optimiser(Invariant) EnumererProprietes(NumeroPropriete : Entier, TypePropriete : Nul Ou Type=? Sortie, PeutEtreNul : Booleen=? Sortie, Aide : Nul Ou Caractere=? Sortie, NomEnumere : Nul Ou Caractere=? Sortie) Retourner Nul Ou Caractere;
Prive :
Fonction Exporter(E : Nul Ou IEchangeElementaire) Retourner Boolean;
Fonction Importer(E : Nul Ou IEchangeElementaire, EntrepotCible : Nul Ou Entrepot=Nul, EstFiltre : Booleen=Faux, V : Entier=0, R : Entier=0, C : Entier=0) Retourner Nul Ou Objet;
/*-------------------------------------------------------------*/
/* Methodes propres. */
/*-------------------------------------------------------------*/
Public :
Constructeur(ModuleACharger : Caractere, VersionDemandee : Entier, RevisionDemandee : Entier, CorrectionDemandee : Entier);
Fonction NouvelObjet(InterfaceAImplementer : Type) Retourner Objet;
Fonction Optimiser(Invariant) EnumererEnumeres(Numero : Entier, Aide : Nul Ou Caractere=? Sortie) Retourner Nul Ou Caractere;
Fonction Optimiser(Invariant) EnumererValeursEnumeres(NomEnumere : Caractere, Numero : Entier, Aide : Nul Ou Caractere=? Sortie) Retourner Nul Ou Caractere;
Fonction Optimiser(Invariant) EnumererEntrepots(Numero : Entier, Aide : Nul Ou Caractere=? Sortie) Retourner Nul Ou Entrepot;
Fonction Optimiser(Invariant) EnumererTypes(Numero : Entier, Aide : Nul Ou Caractere=? Sortie) Retourner Nul Ou Type;
Fonction Optimiser(Invariant) EnumererVariables(Numero : Entier, TypeVariable : Nul Ou Type=? Sortie, PeutEtreNul : Booleen=? Sortie, Aide : Nul Ou Caractere=? Sortie, NomEnumere : Nul Ou Caractere=? Sortie) Retourner Nul Ou Caractere;
Fonction Optimiser(Invariant) EnumererExceptions(Numero : Entier, Aide : Nul Ou Caractere=? Sortie) Retourner Nul Ou Exception;
Fonction Optimiser(Invariant) EnumererAppels(Numero : Entier, NomAppel : Nul Ou Caractere=? Sortie, Aide : Nul Ou Caractere=? Sortie) Retourner Nul Ou Appel;
Procedure EcrireVariable(NomVariable : Nul Ou Caractere, ValeurVariable : Nul Ou Objet);
Fonction Optimiser(Absorbant) LireVariable(NomVariable : Nul Ou Caractere) Retourner Nul Ou Objet;
Fonction Optimiser(Absorbant) IncrementerDecrementerVariable(NomVariable : Nul Ou Caractere, Incrementer : Booleen, Prefixe : Booleen) Retourner Nul Ou Objet;
Fonction Optimiser(Invariant) EnumererModulesImportes(Numero : Entier, EstOptionnel : Booleen=? Sortie, EstExtensionDe : Booleen=? Sortie) Retourner Nul Ou Caractere;
Fonction Optimiser(Invariant) LireLibelle() Retourner Nul Ou Caractere;
Prive :
Destructeur(MettreEnAnteMemoire : Booleen) Retourner Booleen;
Fin Type
Le type Module modélise un module d'Up ! Application System. Les objets de type Module sont créés automatiquement au chargement des modules.
Le type Module ne possède pas de constructeur implicite.
Le type Module possède un constructeur à partir d'un Caractere. En ce cas, le paramètre spécifie le nom du module à charger dynamiquement si cela n'est pas encore fait. Le module doit être accessible via la variable environnement UPS_PATH. La version-révision du module est indiquée par les valeurs des paramètres VersionDemandee, RevisionDemandee et CorrectionDemandee.
Le nom du module peut comporter un accès distant introduit par l'opérateur @. En ce cas, l'opérateur doit introduire un nom d'un serveur disponible parmi les noeuds de la topologie gérée par Up ! Object Request Broker. L'objet est alors créé sur ce serveur et non en local.
Principal
/*******/
Variable
/******/
M1 : Nul Ou Module;
M2 : Nul Ou Module;
Debut
M1=Global;
/* Affectation entre deux modules. */
Si M1==M2 Alors
/* Egalité entre deux modules. */
...
Fin Si
Si M1!=M2 Alors
/* Inégalité entre deux modules. */
...
Fin Si
Fin Principal
- | - | - | - | - | - | - | - | - |