Sep 19, 2016 1:56:27 PM Pierre LEVY avatar   504    

Les Services de base de Lutece

AppPropertiesService

Ce service permet d'accéder à tous les paramètres définis dans les fichiers properties. Les fichiers pris en compte par ce service sont les fichiers de configuration de Lutece situés dans le répertoire WEB-INF/conf et ceux des plugins situés dans WEB-INF/conf/plugins.

L'utilisation type de ce service est :

private static final String PROPERTY_NAME = "myplugin.name";
...

{
    ...
    String strName = AppPropertiesService.getProperty( PROPERTY_NAME );
    ...
}

AppTemplateService

Ce service permet de charger des templates HTML sur lesquels des substitutions pourront être faites pour valoriser des signets (bookmarks). Les templates sont stockés sous le répertoire WEB-INF/templates. On distingue néanmoins les templates destinés à l'administration (Back office) et ceux du site (Front office).

L'utilisation type de ce service est :

private static final String TEMPLATE_MANAGE_MYPLUGIN = "admin/plugins/myplugin/manage_myplugin.html";
...
private static final String BOOKMARK_NAME = "@name@";
...

{
    ...
    HtmlTemplate template = AppTemplateService.getTemplate( TEMPLATE_MANAGE_MYPLUGIN );
    template.subtitute( BOOKMARK_NAME , strName );
    ...
}

AppPathService

Ce service permet d'obtenir des informations concernant les URI d'exécution ou les répertoires d'installation de Lutèce. Les plugins ne doivent pas gérer des URI ou des chemins absolus, ils doivent les gérer de manière relative et utiliser ce service pour obtenir des références absolues.

L'utilisation type de ce service est :

{
    // Get the base URL ( ie: "http://localhost:8080/lutece/" )
    String strBaseUrl = AppPathService.getBaseUrl( request );

    ...

    // Get the WebApp absolute path ( ie: "/usr/local/tomcat/webapps/lutece" )
    String strWebAppPath = AppPathService.getWebAppPath();

}

AppConnectionService

Ce service permet d'obtenir une connexion à la base de données du portail. Ce service est désormais encapsulé dans les objets DAOUtil. Pour plus d'informations sur l'accès aux données consulter le document Guide de développement : Accès aux données

L'utilisation type de ce service est :

{
    Connection connection = AppConnectionService.getConnection();
    ...

    AppConnectionService.freeConnection();

}

AppLogService

Ce service permet de d'enregistrer dans un fichier de logs des événements particuliers dans l'exécution de l'application (erreurs, informations de chargement, ...).

catch( Exception e )
{
     AppLogService.error( e.getMessage() , e );
}