chelloworld code java ccachablecgetlogincgetticketcdigester quelques exemples implémentation de...
TRANSCRIPT
![Page 1: CHelloWorld Code Java CCachableCGetLoginCGetTicketCDigester Quelques exemples Implémentation de l'interface IChannel Récupération de paramètres Utilisation](https://reader035.vdocuments.mx/reader035/viewer/2022062621/551d9d80497959293b8b9aac/html5/thumbnails/1.jpg)
CHelloWorld
Code Java
CCachable CGetLogin CGetTicket CDigester
Quelques exemples
• Implémentation de l'interface IChannel
• Récupération de paramètres
• Utilisation d'une feuille SSL permettant un rendu différent suivant le navigateur
• Passage de paramètres aux feuilles XSL
• Gestion d'un évènement du portail
![Page 2: CHelloWorld Code Java CCachableCGetLoginCGetTicketCDigester Quelques exemples Implémentation de l'interface IChannel Récupération de paramètres Utilisation](https://reader035.vdocuments.mx/reader035/viewer/2022062621/551d9d80497959293b8b9aac/html5/thumbnails/2.jpg)
CHelloWorld
Code Java
CCachable CGetLogin CGetTicket CDigester
Quelques exemples
![Page 3: CHelloWorld Code Java CCachableCGetLoginCGetTicketCDigester Quelques exemples Implémentation de l'interface IChannel Récupération de paramètres Utilisation](https://reader035.vdocuments.mx/reader035/viewer/2022062621/551d9d80497959293b8b9aac/html5/thumbnails/3.jpg)
CHelloWorld
Code Java
CCachable CGetLogin CGetTicket CDigester
Quelques exemples
![Page 4: CHelloWorld Code Java CCachableCGetLoginCGetTicketCDigester Quelques exemples Implémentation de l'interface IChannel Récupération de paramètres Utilisation](https://reader035.vdocuments.mx/reader035/viewer/2022062621/551d9d80497959293b8b9aac/html5/thumbnails/4.jpg)
CHelloWorld
Code Java
CCachable CGetLogin CGetTicket CDigester
Quelques exemples
![Page 5: CHelloWorld Code Java CCachableCGetLoginCGetTicketCDigester Quelques exemples Implémentation de l'interface IChannel Récupération de paramètres Utilisation](https://reader035.vdocuments.mx/reader035/viewer/2022062621/551d9d80497959293b8b9aac/html5/thumbnails/5.jpg)
CHelloWorld
Feuilles de style XSL
CCachable CGetLogin CGetTicket CDigester
Quelques exemples
![Page 6: CHelloWorld Code Java CCachableCGetLoginCGetTicketCDigester Quelques exemples Implémentation de l'interface IChannel Récupération de paramètres Utilisation](https://reader035.vdocuments.mx/reader035/viewer/2022062621/551d9d80497959293b8b9aac/html5/thumbnails/6.jpg)
CHelloWorld
Feuilles de style XSL
CCachable CGetLogin CGetTicket CDigester
Quelques exemples
![Page 7: CHelloWorld Code Java CCachableCGetLoginCGetTicketCDigester Quelques exemples Implémentation de l'interface IChannel Récupération de paramètres Utilisation](https://reader035.vdocuments.mx/reader035/viewer/2022062621/551d9d80497959293b8b9aac/html5/thumbnails/7.jpg)
CHelloWorld
Feuilles de style XSL
CCachable CGetLogin CGetTicket CDigester
Quelques exemples
![Page 8: CHelloWorld Code Java CCachableCGetLoginCGetTicketCDigester Quelques exemples Implémentation de l'interface IChannel Récupération de paramètres Utilisation](https://reader035.vdocuments.mx/reader035/viewer/2022062621/551d9d80497959293b8b9aac/html5/thumbnails/8.jpg)
CHelloWorld
Organisation des fichiers
CCachable CGetLogin CGetTicket CDigester
Fichiers utilisés par ant
Les fichiers sources
Les images et les feuilles de styles
Fichiers de projet Eclipse
Fichiers de description du canal
Les fichiers de configuration (+DTD)
Librairies spécifiques au canal
Les documentations et API générées par javadoc
Les fichiers de tests
Les fichiers .class créés à la compilation
Les fichiers relatif à la base de données
Distribution du canal *.jar
Quelques exemples
![Page 9: CHelloWorld Code Java CCachableCGetLoginCGetTicketCDigester Quelques exemples Implémentation de l'interface IChannel Récupération de paramètres Utilisation](https://reader035.vdocuments.mx/reader035/viewer/2022062621/551d9d80497959293b8b9aac/html5/thumbnails/9.jpg)
CHelloWorld
Gestion d'un cache
CCachable CGetLogin CGetTicket CDigester
• Utilisation de :import org.jasig.portal.ChannelCacheKey;import org.jasig.portal.ICacheable;
• Implémentation :public class CCacheable implements IChannel,Icacheable
• Méthodes à surcharger public ChannelCacheKey generateKey():
Génère une clé qui va identifier le cache
public boolean isCacheValid (Object validity) : Dit si le cache est encore valide ou non
Quelques exemples
![Page 10: CHelloWorld Code Java CCachableCGetLoginCGetTicketCDigester Quelques exemples Implémentation de l'interface IChannel Récupération de paramètres Utilisation](https://reader035.vdocuments.mx/reader035/viewer/2022062621/551d9d80497959293b8b9aac/html5/thumbnails/10.jpg)
CHelloWorld
Gestion d'un cache
CCachable CGetLogin CGetTicket CDigester
• Méthode generateKeyConstituée d’une chaîne de caractères
ChannelCacheKey k = new ChannelCacheKey();StringBuffer sbKey = new StringBuffer(1024);
sbKey.append("org.esupportail.portal.channels.CCacheable.CCacheable : ");sbKey.append("userId:").append(staticData.getPerson().getID()).append(", ");k.setKey(sbKey.toString());k.setKeyValidity(new Long(System.currentTimeMillis())); Portée Validité
Quelques exemples
![Page 11: CHelloWorld Code Java CCachableCGetLoginCGetTicketCDigester Quelques exemples Implémentation de l'interface IChannel Récupération de paramètres Utilisation](https://reader035.vdocuments.mx/reader035/viewer/2022062621/551d9d80497959293b8b9aac/html5/thumbnails/11.jpg)
CHelloWorld
Gestion d'un cache
CCachable CGetLogin CGetTicket CDigester
• Méthode isCacheValid public boolean isCacheValid(Object validity) {boolean cacheValid = false;
if (validity instanceof Long) {Long oldtime = (Long) validity;// Si validity à moins de 60 secondes le
cache est valideif (System.currentTimeMillis() -
oldtime.longValue() < 60 * 1000) {cacheValid = true;
} }}
Quelques exemples
![Page 12: CHelloWorld Code Java CCachableCGetLoginCGetTicketCDigester Quelques exemples Implémentation de l'interface IChannel Récupération de paramètres Utilisation](https://reader035.vdocuments.mx/reader035/viewer/2022062621/551d9d80497959293b8b9aac/html5/thumbnails/12.jpg)
CHelloWorld
Récupération d'attributs
CCachable CGetLogin CGetTicket CDigester
• Récupération de l'objet IPersonUtilisation de l'objet ChannelStaticData staticData
IPerson userConnect = null;
// Get the person object
userConnect = staticData.getPerson();
• Récupération du loginUtilisation de l'objet IPerson
String login = null;
// Get the login of the person
login = (String) userConnect.getAttribute(IPerson.USERNAME);
Méthode permettant de récupérer un attribut
Constante qui contient le nom de l'attributpour le nom d'utilisateur
Quelques exemples
![Page 13: CHelloWorld Code Java CCachableCGetLoginCGetTicketCDigester Quelques exemples Implémentation de l'interface IChannel Récupération de paramètres Utilisation](https://reader035.vdocuments.mx/reader035/viewer/2022062621/551d9d80497959293b8b9aac/html5/thumbnails/13.jpg)
CHelloWorld
Utilisation de la librairie CAS
CCachable CGetLogin CGetTicket CDigester
Quelques exemples
![Page 14: CHelloWorld Code Java CCachableCGetLoginCGetTicketCDigester Quelques exemples Implémentation de l'interface IChannel Récupération de paramètres Utilisation](https://reader035.vdocuments.mx/reader035/viewer/2022062621/551d9d80497959293b8b9aac/html5/thumbnails/14.jpg)
CHelloWorld
Parsing d'un fichier XML
CCachable CGetLogin CGetTicket CDigester
Quelques exemples
![Page 15: CHelloWorld Code Java CCachableCGetLoginCGetTicketCDigester Quelques exemples Implémentation de l'interface IChannel Récupération de paramètres Utilisation](https://reader035.vdocuments.mx/reader035/viewer/2022062621/551d9d80497959293b8b9aac/html5/thumbnails/15.jpg)
CHelloWorld
Création dynamique d'objets
CCachable CGetLogin CGetTicket CDigester
Quelques exemples
![Page 16: CHelloWorld Code Java CCachableCGetLoginCGetTicketCDigester Quelques exemples Implémentation de l'interface IChannel Récupération de paramètres Utilisation](https://reader035.vdocuments.mx/reader035/viewer/2022062621/551d9d80497959293b8b9aac/html5/thumbnails/16.jpg)
CHelloWorld
Création dynamique d'objets
CCachable CGetLogin CGetTicket CDigester
Quelques exemples
![Page 17: CHelloWorld Code Java CCachableCGetLoginCGetTicketCDigester Quelques exemples Implémentation de l'interface IChannel Récupération de paramètres Utilisation](https://reader035.vdocuments.mx/reader035/viewer/2022062621/551d9d80497959293b8b9aac/html5/thumbnails/17.jpg)
CHelloWorld
Création dynamique d'objets
CCachable CGetLogin CGetTicket CDigester
Quelques exemples
![Page 18: CHelloWorld Code Java CCachableCGetLoginCGetTicketCDigester Quelques exemples Implémentation de l'interface IChannel Récupération de paramètres Utilisation](https://reader035.vdocuments.mx/reader035/viewer/2022062621/551d9d80497959293b8b9aac/html5/thumbnails/18.jpg)
CHelloWorld
Création dynamique d'objets
CCachable CGetLogin CGetTicket CDigester
Quelques exemples