/****************************************************************/
Type AbonnementElectronique Defaut Final TailleSegment 4 ConserverObjets
/* Objet : Definition d'un abonnement electronique. */
/****************************************************************/
/*-------------------------------------------------------------*/
/* Heritage des proprietes d'Objet. */
/*-------------------------------------------------------------*/
Prive :
EstInstanceDe : Type Lecture Public;
/*-------------------------------------------------------------*/
/* Proprietes propres. */
/*-------------------------------------------------------------*/
Prive :
NomAbonnement : Caractere Virtuel Lecture Public Trace;
AdresseElectronique : Caractere Virtuel Lecture Public;
Description : Nul Ou Caractere Virtuel Lecture Public;
/*-------------------------------------------------------------*/
/* 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;
Fonction Optimiser(Invariant) Adresse() 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 :
Procedure Habilitation AjouterAbonne(AdresseAbonne : Caractere);
Procedure Habilitation AjouterAbonne(UtilisateurAbonne : Nul Ou Utilisateur);
Procedure Habilitation SupprimerAbonne(AdresseAbonne : Caractere);
Procedure Habilitation SupprimerAbonne(UtilisateurAbonne : Nul Ou Utilisateur);
Fonction Habilitation ListerAbonnes(CritereFiltre : Nul Ou Caractere=Nul, CritereTri : Nul Ou Caractere=Nul) Retourner Nul Ou IResultatRequeteDe Nul Ou Caractere;
Procedure Habilitation Supprimer();
Prive :
Destructeur(MettreEnAnteMemoire : Booleen) Retourner Booleen;
Fin Type
Le type AbonnementElectronique modélise un abonnement électronique telle une liste de diffusion i.e. mailling list ou un groupe d'information i.e. news group.
Lorsque quelqu'un envoie un courrier électronique à l'adresse d'un abonnement alors tous les abonnés le reçoivent. Il en est de même pour une réponse à un courrier.
Le type AbonnementElectronique ne possède pas de constructeur explicite. Les abonnements électroniques sont créés au travers de la méthode AjouterAbonnementElectronique du type AnnuaireElectronique.
Variable
/******/
A1 : Nul Ou AbonnementElectronique;
A2 : Nul Ou AbonnementElectronique;
Principal
/*******/
Debut
...
A1=AbonnementElectroniques("MesPatients",
A2=AbonnementElectroniques("MesClients",
...
Si A1==A2 Alors
/* Egalité entre deux abonnements. */
...
Fin Si
Si A1!=A2 Alors
/* Inégalité entre deux abonnements. */
...
Fin Si
Fin Principal
- | - | - | - | - | - | - | - | - |