Les sites Web d'aujourd'hui proposent des fonctionnalités uniques, intimement liées à la connexion permanente à l'Internet. Sans connexion, le site, et donc ses fonctionnalités, est tout simplement inaccessible.
L'extension Google Gears, installée sur le navigateur du client, permet de proposer à l'utilisateur une continuité de certains de ses services. Il va pouvoir continuer à naviguer et utiliser tout ou partie du site qui sera localement copié sur son disque dur local. Cette continuité de services est à la fois intéressante pour l'utilisateur, car il peut continuer à utiliser le site en mode hors-ligne, et pour les propriétaires du site, car ces utilisateurs continuent à utiliser leur site et non pas un outil de type client lourd.
Un court schéma vaut mieux qu'un long discours, voici comment s'effectuent les transactions entre les modes "connecté" et "déconnecté" :
Figure 1 : Architecture des composants Google Gears.
Ici nous voyons qu'il existe une détection de la connectivité réseau qui va choisir entre afficher les données provenant d'Internet et afficher les informations stockées localement, ou les deux.
Sync Engine permet de choisir quand synchroniser les données locales sur le serveur en ligne |
Le navigateur "Application UI" se connecte au module "Data Switch" pour savoir ce qu'il peut afficher. Ce dernier :
- si la connexion réseau est présente, aller chercher les données sur le serveur "Server Data Layer",
- si des données locales sont présentes, appeler le module "Local Data Layer" pour les récupérer.
La dernière brique à utiliser est le "Sync Engine" qui permet de choisir quand synchroniser les données locales sur le serveur en ligne.
Voyons maintenant ce que propose Google Gears comme API pour arriver à ce résultat.