Le fichier source est ${UPS_HOME}/upsnet/demo/${UPS_LANGUAGE}/sysftp.upl.
upscmp Source=sysftp.upl
upssrv NbServeurs=1 PasDOrb=Oui Module1=UpsFts
upssng Source=sysftp NbServeurs=0
upssrv NbServeurs=1 PasDOrb=Oui Module1=UpsFts
upssng Source=sysftp NbServeurs=0
Source Composant "Exemple d'emploi d'Up ! System" Version 4.0.0;
ImporterModule
/************/
UpsFts(<UpsFts>, ImporterDefinitions);
Variable
/******/
MonServeur : Nul Ou ServeurFtp;
Principal
/*******/
Variable
/******/
UtilisateurProprietaire : Entier;
GroupeProprietaire : Entier;
DateDernierAcces : Nul Ou Date;
DateDerniereModification : Nul Ou Date;
DateCreation : Nul Ou Date;
EstCache : Booleen;
L1 : Nul Ou ListeDe FichierListe;
FL : Nul Ou FichierListe;
Debut
MonServeur=ServeurFtp("ftp://local:21", "/local_ftp", "anonymous", "contact@up-comp.com");
CreerRepertoire("/local_ftp/tmp2");
CreerFichier("/local_ftp/tmp2/essai.txt");
Si IlExisteRepertoire("/local_ftp/tmp2") Alors
Ecran.Ecrire("Il existe repertoire '/local_ftp/tmp2'");
Fin Si
Si IlExisteFichier("/local_ftp/tmp2/essai.txt") Alors
Ecran.Ecrire("Il existe fichier '/local_ftp/tmp2/essai.txt'");
Fin Si
ChangerDroitsDAcces("/local_ftp/tmp2/essai.txt", DroitLectureEcriture, DroitLecture, DroitLecture);
Selon LireDroitsDAcces("/local_ftp/tmp2/essai.txt", ?, ?) Faire
Cas Dans (DroitLectureEcriture, DroitLectureEcritureExecution) Faire
Ecran.Ecrire("Lecture, Ecriture et Execution");
Fin Cas
Defaut
Ecran.Ecrire("Autres droits");
Fin Defaut
Fin Selon
CopierFichier("/local_ftp/tmp2/essai.txt", "/local_ftp/tmp2/essai.sav");
RenommerFichier("/local_ftp/tmp2/essai.sav", "/local_ftp/tmp2/essai.bak");
SupprimerFichier("/local_ftp/tmp2/essai.bak");
CopierRepertoire("/local_ftp/tmp2", "/local_ftp/tmp3");
SupprimerRepertoire("/local_ftp/tmp2");
RenommerRepertoire("/local_ftp/tmp3", "/local_ftp/tmp2");
SupprimerRepertoire("/local_ftp/tmp2");
Si IlExisteRepertoire("/local_ftp/tmp2") Alors
Ecran.Ecrire("Il existe repertoire '/local_ftp/tmp2'");
Fin Si
Si IlExisteFichier("/local_ftp/tmp2/essai.txt") Alors
Ecran.Ecrire("Il existe fichier '/local_ftp/tmp2/essai.txt'");
Fin Si
ChangerRepertoireCourant("/local_ftp/tmp");
Ecran.Ecrire("RepertoireCourant="+LireRepertoireCourant());
Ecran.Ecrire("Taille essai.txt="+Caractere(LireCaracteristiquesFichier("/local_ftp/essai.txt")));
Ecran.Ecrire("Taille essai.txt="+Caractere(LireCaracteristiquesFichier("/local_ftp/essai.txt",
UtilisateurProprietaire,GroupeProprietaire,DateDernierAcces,DateDerniereModification,
DateCreation,EstCache)));
Ecran.Ecrire(UtilisateurProprietaire);
Ecran.Ecrire(GroupeProprietaire);
Ecran.Ecrire(Caractere(DateDernierAcces));
Ecran.Ecrire(Caractere(DateDerniereModification));
Si EstCache Alors
Ecran.Ecrire("Est cache");
Sinon
Ecran.Ecrire(""N'est pas cache");
Fin Si
Ecran.Ecrire("\n");
L1=ListerFichiers("/local_ftp/", Nul);
Pour FL=L1.ParcoursAuDebut() JusquA L1.DernierElement() Faire
Ecran.Ecrire(FL.NomFichier);
Fin Pour
Ecran.Ecrire("\n");
CreerRepertoire("ftp://local:21/tmp2");
CreerFichier("ftp://local:21/tmp2/essai.txt");
Si IlExisteRepertoire("ftp://local:21/tmp2") Alors
Ecran.Ecrire("Il existe repertoire 'ftp://local:21/tmp2'");
Fin Si
Si IlExisteFichier("ftp://local:21/tmp2/essai.txt") Alors
Ecran.Ecrire("Il existe fichier 'ftp://local:21/tmp2/essai.txt'");
Fin Si
ChangerDroitsDAcces("ftp://local:21/tmp2/essai.txt", DroitLectureEcriture, DroitLecture, DroitLecture);
Selon LireDroitsDAcces("ftp://local:21/tmp2/essai.txt", ?, ?) Faire
Cas Dans (DroitLectureEcriture, DroitLectureEcritureExecution) Faire
Ecran.Ecrire("Lecture, Ecriture et Execution");
Fin Cas
Defaut
Ecran.Ecrire("Autres droits");
Fin Defaut
Fin Selon
CopierFichier("ftp://local:21/tmp2/essai.txt", "ftp://local:21/tmp2/essai.sav");
RenommerFichier("ftp://local:21/tmp2/essai.sav", "ftp://local:21/tmp2/essai.bak");
SupprimerFichier("ftp://local:21/tmp2/essai.bak");
CopierRepertoire("ftp://local:21/tmp2", "ftp://local:21/tmp3");
SupprimerRepertoire("ftp://local:21/tmp2");
RenommerRepertoire("ftp://local:21/tmp3", "ftp://local:21/tmp2");
SupprimerRepertoire("ftp://local:21/tmp2");
Si IlExisteRepertoire("ftp://local:21/tmp2") Alors
Ecran.Ecrire("Il existe repertoire 'ftp://local:21/tmp2'");
Fin Si
Si IlExisteFichier("ftp://local:21/tmp2/essai.txt") Alors
Ecran.Ecrire("Il existe fichier 'ftp://local:21/tmp2/essai.txt'");
Fin Si
ChangerRepertoireCourant("ftp://local:21/tmp");
Ecran.Ecrire("RepertoireCourant="+LireRepertoireCourant());
Ecran.Ecrire("Taille essai.txt="+Caractere(LireCaracteristiquesFichier("ftp://local:21/essai.txt")));
Ecran.Ecrire("Taille essai.txt="+Caractere(LireCaracteristiquesFichier("ftp://local:21/essai.txt",
UtilisateurProprietaire, GroupeProprietaire, DateDernierAcces, DateDerniereModification,
DateCreation, EstCache)));
Ecran.Ecrire(UtilisateurProprietaire);
Ecran.Ecrire(GroupeProprietaire);
Ecran.Ecrire(Caractere(DateDernierAcces));
Ecran.Ecrire(Caractere(DateDerniereModification));
Si EstCache Alors
Ecran.Ecrire("Est cache");
Sinon
Ecran.Ecrire("N'est pas cache");
Fin Si
Ecran.Ecrire("\n");
L1=ListerFichiers("ftp://local:21/", Nul);
Pour FL=L1.ParcoursAuDebut() JusquA L1.DernierElement() Faire
Ecran.Ecrire(FL.NomFichier);
Fin Pour
Ecran.Ecrire("\n");
MonServeur=Nul;
Fin Principal