refmodule

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
refmodule [2026/03/28 20:22] – [file] rootrefmodule [2026/04/17 18:58] (Version actuelle) – [sock] root
Ligne 21: Ligne 21:
   * ''delete(path)'' : supprimer le fichier dont le chemin complet est donné dans ''path''. Génère une exception si le fichier ne peut pas être supprimé.   * ''delete(path)'' : supprimer le fichier dont le chemin complet est donné dans ''path''. Génère une exception si le fichier ne peut pas être supprimé.
   * ''rename(old_path, new_path)'' : renomme/déplace le fichier ''old_path'' en ''new_path''. Génère une exception en cas d'erreur (droits, FS différents, chemin cible inexistant).   * ''rename(old_path, new_path)'' : renomme/déplace le fichier ''old_path'' en ''new_path''. Génère une exception en cas d'erreur (droits, FS différents, chemin cible inexistant).
-  * ''append(path, content)'' : écrit la variable Dynamic ''contenu'' à la fin du fichier dont le chemin complet est donné dans ''path''. S'il n'existait pas, le fichier est créé. Génère une exception en cas d'erreur.+  * ''append(path, contenu)'' : écrit la variable Dynamic ''contenu'' à la fin du fichier dont le chemin complet est donné dans ''path''. S'il n'existait pas, le fichier est créé. Génère une exception en cas d'erreur.
   * ''dir(data)'' : prend en compte le chemin donné par ''data'' et renvoi, dans la même variable, la liste des fichiers et répertoires trouvés dans le répertoire indiqué, en multi-champs. Les fichiers //spéciaux// ne sont pas retournés (Unix seulement), ni les pseudo fichiers ''.'' et ''..''   * ''dir(data)'' : prend en compte le chemin donné par ''data'' et renvoi, dans la même variable, la liste des fichiers et répertoires trouvés dans le répertoire indiqué, en multi-champs. Les fichiers //spéciaux// ne sont pas retournés (Unix seulement), ni les pseudo fichiers ''.'' et ''..''
 ==== hash ==== ==== hash ====
Ligne 77: Ligne 77:
     * ''X'', ''Y'' : coordonnées x,y du coin haut/gauche de l'image dans la page     * ''X'', ''Y'' : coordonnées x,y du coin haut/gauche de l'image dans la page
     * ''Image'' : numéro de l'image     * ''Image'' : numéro de l'image
-  * ''loadImage(image)'' : charge dans le module, pour un usage ultérieur, l'image dont le contenu est passé dans la chaîne <image>. La première image chargée porte le numéro 1, etc.+  * ''loadImage(image)'' : charge dans le module, pour un usage ultérieur, l'image dont le contenu est passé dans la chaîne <image>. La première image chargée porte le numéro 1, etc. Formats supportés : BMP 32bpp et GIF.
   * ''delImage(image)'' : supprime l'image numéro <image> du module ; elle ne pourra plus être utilisée par la suite (NOTA pbm de numéro avec suppression)   * ''delImage(image)'' : supprime l'image numéro <image> du module ; elle ne pourra plus être utilisée par la suite (NOTA pbm de numéro avec suppression)
   * ''listing(input, content)'' : créé un document Pdf, de type //listing//, avec les données textuelle de <content> et renvoie le contenu du Pdf généré dans <content>. Les éléments permettant de créer le listing sont donnés par la hashtable <input> qui doit contenir les champs suivants :   * ''listing(input, content)'' : créé un document Pdf, de type //listing//, avec les données textuelle de <content> et renvoie le contenu du Pdf généré dans <content>. Les éléments permettant de créer le listing sont donnés par la hashtable <input> qui doit contenir les champs suivants :
Ligne 107: Ligne 107:
   * ''get(content)'' : renvoi dans <content> le prochain message reçu depuis la queue interne du processus en cours. S'il n'y a pas de message à lire, renvoi //vide//.   * ''get(content)'' : renvoi dans <content> le prochain message reçu depuis la queue interne du processus en cours. S'il n'y a pas de message à lire, renvoi //vide//.
   * ''set(message, process)'' : envoi le message texte <message> au processus identifié par <process>. L'identifiant d'un process est le nom donné au module principal dans l'instruction ''begin'' ou ''background'' du programme W.   * ''set(message, process)'' : envoi le message texte <message> au processus identifié par <process>. L'identifiant d'un process est le nom donné au module principal dans l'instruction ''begin'' ou ''background'' du programme W.
 +
 +==== sock ====
 +Module gérant la communication sockets, côté //serveur// et côté //client//. Les données transitent __en clair__.
 +  * ''server(port)'' : créé un point d'entrée //serveur// sur le n° de <port> indiqué (n° autorisés : 1024 à 65535 uniquement). Le module ne gère qu'un seul serveur actif au même moment.
 +  * ''wait(timeout, clientSock)'' : attend une demande de connexion entrante depuis un client. Si une demande de connexion est acceptée, <clientSock> contient en retour un id de connexion, à mémoriser car il servira a identifier la connexion à utiliser lors des lectures ''get'' et écritures ''set'' entre ce client et le serveur. Si aucune connexion n'est demandée au bout du délai //timeout// (en secondes), l'id renvoyé dans <clientSock> est négatif, confirmant qu'aucune de demande de connexion n'est arrivée dans le délai indiqué. Le module gère plusieurs connexions entrantes simultanées.
 +  * ''stopServer'' : supprime le point d'entrée serveur créé avec ''server''.
 +  * ''connect(host, port, socket)'' : initie une connexion socket au serveur <host> sur le n° de <port> (sans limitation de numéro). <host> peut contenir un nom de serveur, mais aussi une adresse IP v4. Quand la demande est acceptée par le serveur, <socket> contient en retour un id de connexion, à mémoriser car il servira a identifier la connexion à utiliser lors des lectures ''get'' / écritures ''set'' entre ce client et le serveur. Quand la demande est refusée, une exception est générée. Le module gère plusieurs connexions sortantes simultanées.
 +  * ''stop(socket)'' : arrête la connexion identifiée par l'id <socket>, que ce soit la partie cliente donnée par ''connect'' aussi bien que la partie serveur donnée par ''wait''.
 +  * ''get(socket, data, timeout)'' : lit les données venant de l'autre côté de la connexion identifiée par l'id <socket>. Les données lues sont renvoyées dans la chaîne <data>. Si aucune donnée d'est disponible au bout du délai <timeout> donné, (en secondes), la chaîne <data> est renvoyée //vide//.
 +  * ''set(socket, data)'' : écrit les données de <data> sur la connexion identifiée par l'id <socket>.
 ==== system ==== ==== system ====
 Module gérant les liens avec le shell et l'OS hôte. Module gérant les liens avec le shell et l'OS hôte.
  • refmodule.1774729322.txt.gz
  • Dernière modification : 2026/03/28 20:22
  • de root