English
Instant Developer Foundation Documentazione
  • Approfondimenti
  • Modelli applicativi
  • Traylet: Stay Connected!

Gestione e Trasferimento Files

copia link

Introduzione

Negli articoli precedenti abbiamo visto che all'interno del file XML che il server invia alla Traylet può essere presente una lista di nodi "file". Ognuno di essi esprime una operazione di trasferimento e/o di gestione sul file. Vediamo adesso gli attributi di questi nodi "file".

Attributi del nodo file

  • mode: può valere "save" per scaricare un file dal server ed eventualmente operare su di esso, "upload" per caricare un file sul server, "run" per lanciare un file già presente sul client senza trasferirlo.
  • srcfile: in caso di "save" rappresenta il nome del file sul server da scaricare: deve essere raggiungibile tramite una chiamata GET. In caso di "upload" è il nome del file sul PC locale da caricare sul server.
  • dstfile: in caso di "save" rappresenta il nome completo del file in cui memorizzare sul PC locale il file scaricato dal server. Se la directory specificata non esiste, essa verrà creata. In caso di "run" è il nome del file sul PC locale da lanciare. In caso di "upload" rappresenta l'indirizzo web del server verso cui inviare il file.
  • oper: è l'operazione da eseguire sul file, subito oppure appena scaricato. I valori più comuni sono "open", "print", "printto", ma si possono usare, in generale, tutti i "verbi" di Windows ammessi per quel tipo di file.
  • args: argomenti ulteriori da passare a Windows mentre esegue l'operazione. Può essere, ad esempio, il nome della stampante su cui effettuare la stampa se "oper" vale "printto".
  • fileid: è una stringa che identifica univocamente il file. Verrà usata dalla Traylet per notificare al server che il file è stato trasferito.
  • notify: vero se si desidera che il server venga avvertito al termine del trasferimento del file.
  • hidden: vero se si desidera che l'operazione sul file avvenga in modo nascosto all'utente. In base al tipo di file e all'operazione, può essere che questo attributo non abbia effetto.
  • size: dimensione in bytes del file da scaricare.
  • delete: vero se si desidera che la copia locale del file venga cancellata dopo aver effettuato l'upload.

Modalità di trasferimento

Appena la traylet riceve il file XML dal server, essa aggiunge ad una lista interna tutti i nodi "file" in esso contenuti. I file vengono poi trattati ad uno ad uno, nell'ordine in cui sono stati specificati: se il file deve essere trasferito si effettua l'upload o il download, se invece deve essere lanciato, si chiede a Windows di farlo.
Durante il trasferimento dei files, il tooltip dell'icona della Traylet visualizza il tempo rimasto per completare tutti i file da traferire. Tale tempo tiene conto della banda passante disponibile calcolata sugli dieci eventi di trasferimento pacchetti notificati alla Traylet da Windows.
Al termine del trasferimento di un file, se era stato specificato l'attributo "notify", allora il server viene notificato e può avvenire una nuova programmazione della Traylet.
E' infine disponibile l'azione "tlcancel" per interrompere ogni trasferimento di file in corso o pendente.

Richiesta di permesso

Prima di effettuare qualunque trasferimento di file la Traylet chiede il permesso all'utente. Se l'utente concede il permesso, oppure ha concesso in precedenza un permesso permanente, allora l'operazione ha luogo. Occorre notare che i permessi valgono per i vari tipi di file, identificati dall'estensione. Se, ad esempio, si concede un permesso permanente di upload per i file "doc", allora tutti i file di Word potranno essere caricati mentre per altri tipi di file il permesso dovrà essere nuovamente concesso.

Ultima modifica: 24/03/2021 / Validità: da 6.6.2750

Hai trovato utile l'articolo?

Grazie per il feedback!

Ti serve altro aiuto?

Consulta il Forum