5. Fonctionnement de la synchronisation
• Contrôle du type de document créé:
Choix du type en fonction du type mime par le file manager.
Similaire au glisser / déposé via le navigateur
• Politique de versioning:
Une version crée après modification si dernière sauvegarde
depuis temps “t” configurable sur le serveur.
Une version créé si dernière personne ayant modifiée différente
de la personne courante
6. Fonctionnement de la synchronisation
• Politique de versioning
Dans nuxeodrive-adapter-contrib.xml :
<fileSystemItemFactory name="defaultFileSystemItemFactory"
order="50" class="org.nuxeo.drive.service.impl.DefaultFileSystemItemFactory">
<parameters>
<parameter name="versioningDelay">3600</parameter>
<parameter name="versioningOption">MINOR</parameter>
</parameters>
</fileSystemItemFactory>
7. Fonctionnement de la synchronisation
• Gestion de conflits
Renommage du document modifié en dernier en suffixant par la
date du conflit et le nom de l’auteur entre parenthèse.
Ex: Rapport de Stage (Marcel Sembat - 2013-04-01 10-11).doc
Ce document coexiste alors en local et sur le serveur avec
Rapport de Stage.doc
➡Résolution manuelle du conflit
!
!
8. Gestion de droits
Windows Mac OS Linux
Protection
Ecriture
Dossiers
Protection
Ecriture
Fichiers
Protection
dossier racine
9. Synchronisation d’une collection
• Les collections peuvent être synchronisées
• Cas d’usages: Assignations de tâche sans process, panier
de travail, …
curl -H 'Content-Type:application/json+nxrequest' -X POST -d '{ "input": "doc:d3122005-f965-4eeb-9b11-9ffd452265b2", "params":
{"enable":"true"},"context":{}}' -u Administrator:Administrator http://localhost:8080/nuxeo/api/v1/automation/
NuxeoDrive.SetSynchronization
10. Drive Edit
• Une collection “système”: Locally Edited
• Click sur le live edit ajoute à la collection
• Edition normale “locale” du document et sauvegarde
automatique via mécanisme Drive.
• Retrait de la collection “Locally Edited” —> Retrait
automatique du dossier et vice et versa
11. Edition de métadonnées
• Windows et Linux seulement
• Affichage depuis clic droit d’une page web
• “Onglet” au sens Nuxeo Studio du terme: possibilités de
customisations
• Possibilité par défaut
• d’éditer les métadonnées
• récupérer un lien direct
• s’abonner aux modifications
12. Synchronisation sélective
• Black-list de certains
chemins pour la
synchronisation
• Cas d’utilisation:
synchroniser toute une
arborescence, sauf un
element à un endroit
précis
• Préférence propre à
l’application cliente,
pas de persistence
côté serveur
13. Installation - options
• Choix du dossier Nuxeo Drive
• Détection automatique de l’emplacement “Mes
Documents” sous Windows
• Configuration d’un proxy
• Modification du fichier Config.ini
14. Installation - options avancées
• timeout timeout pour les requêtes http/s
• delay temps au bout duquel Drive va vérifier si des
changements ont eu lieu côté server (défaut à 5s)
• update-check-delay: application update check
• max-errors Nombre d’essais sur un fichier avant
d’abandonner
• update-site: URL de l’update site
15. Installation - options avancées
• Système de flag pour config.ini
• Config test/prod /pre-prod / debug facile à switcher
• Ex:
[DEFAULT]
env=debug
[prod]
log-level-console=INFO
[debug]
log-level-console=TRACE
16. Distribution
• Auto-update
• Update site
• Url de l’update site configurable (nuxeo.conf) http://
community.nuxeo.com/static/drive/
• Matrice de compatibilité client/server
1.3.0806.json: {“nuxeoPlatformMinVersion": “5.6"}!
5.9.5.json: {"nuxeoDriveMinVersion": "1.3.0414"}
17. Customisation Nuxeo Drive
• Filemanager
• Customisation de l’écran de clic droit
• Création de noeuds virtuels
• Ré-implémentation de l’API
• Surcharge du client Drive (ex: Sharp)
18. Roadmap
• Optimisation algorithme de synchronisation
• Décoration file system
• Notifications OS
• Récupération des informations côté serveur (paramètres)
• Proxy PAC, Synchronisation des documents publiés,
Support des fichiers “dossiers” Mac (Keynote, …)
• Interface pour lister/résoudre les conflits