Non disponible dans Apache Commons VFS par exemple mais certainement possible avec les dernières bibliothèques de JSCH par exemple pour SFTP (cf SftpStatVFS), la récupération de l'usage disque et du quota n'est pas vraiment standardisée.
Aussi esup-filemanager propose ici également une architecture souple permettant au développeur d'implémenter sa propre récupération de quota.
Un exemple est donné avec QuotaServiceSimpleWS (cf l'exemple de drives.xml donné par défaut) qui attend en paramètre une url de "Web Service" permettant de récupérer l'espace disque utilisé et l'espace disque maximum d'un utilisateur.
- les données sont attendues en octets,
- dans un format text/plain simple
- sur une seule ligne
- avec l'espace disque utilisé et l'espace disque maximum séparé par un espace
Sur linux par exemple, on peut imaginer implémenter un tel "web service" en cgi-bin avec un simple bash comme ceci :
#!/bin/bash echo "Content-type: text/plain" echo "" uid=$QUERY_STRING echo -n $(sudo quota -w -u $uid | tail -n 1 | awk '{print $2*1024 " " $3*1024}')
Le résultat d'une requête qui serait du type :
http://stock-2.mon-univ.fr/cgi-bin/quota.sh?toto
pourra être ainsi :
193933312 433659904
Ces éléments récupérés, EsupFilemanager pourra ainsi les afficher à l'utilisateur (dans le bloc détails).