Package com.evasion.client.controler

Source Code of com.evasion.client.controler.ApplicationContext

/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package com.evasion.client.controler;

import com.evasion.common.AbstractWebModule;
import com.evasion.common.Constante;
import com.evasion.common.Utils;
import com.evasion.ejb.local.*;
import com.evasion.ejb.remote.GeolocEJBRemote;
import com.evasion.entity.content.StaticPage;
import com.evasion.entity.booktravel.BookTravel;
import com.evasion.entity.booktravel.exception.BookTravelServiceException;
import com.evasion.exception.EvasionException;
import com.evasion.exception.PersistenceViolationException;
import com.evasion.module.common.ICommonModule;
import com.evasion.module.travel.ITravelModule;
import java.util.HashMap;
import java.util.Locale;
import java.util.Map;
import javax.annotation.PostConstruct;
import javax.ejb.EJB;
import javax.faces.bean.ApplicationScoped;
import javax.faces.bean.ManagedBean;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

/**
*
* @author sebastien.glon
*/
@ManagedBean
@ApplicationScoped
public class ApplicationContext extends AbstractWebModule {

    /**
     * LOGGER.
     */
    private static final Logger LOGGER = LoggerFactory.getLogger(ApplicationContext.class);

    @EJB
    private ParametreManagerLocal param;

    @EJB
    private StaticPageManagerLocal pageEjb;

    @EJB
    private ITravelModule bookEjb;

    @EJB
    private TemplateManagerLocal templateEJB;

    @EJB
    private GeolocEJBRemote geolocEJB;
   
    @EJB
    private ICommonModule commonModule;      

    private String externalURL;

    @PostConstruct
    public void initParam() {
        try {
            LOGGER.info("Initialisation du context applicatif");
            commonModule.preLoad();
            refreshParam();
            initDefaultPage();
            initEmailConfirmationAccount();
            geolocEJB.updateImportTimer();
        } catch (EvasionException ex) {
            LOGGER.error("erreur d'initialisation de l'application.", ex);
        }
    }

    public void refreshParam() {
        super.refreshParam();
        // Utilisé par le composant Flex pour connaitre l'URL depuis l'extérieur.

    }

    /**
     * Initialise la page statique par defaut.<br> La page est creee si le
     * parametre
     * <code>DEFAULT_PAGE_ID</code> est vide ou null.<br> Cette page sera
     * utilisé comme page d'accueil pour cette application.
     */
    private void initDefaultPage() {
        if (Utils.isEmpty(param.getProperty(Constante.DEFAULT_PAGE_ID))) {
            try {
                StaticPage page = new StaticPage("Page par defaut", "Page en cours de construction", "", null);
                page = pageEjb.createPage(page, "admin");
                param.saveParametre(Constante.DEFAULT_PAGE_ID, page.getId().toString(), Boolean.TRUE);
            } catch (PersistenceViolationException ex) {
                LOGGER.error("Erreur d'initialisation de la page par défaut", ex);
            }
        }
    }

    private void initEmailConfirmationAccount() {
        if (Utils.isEmpty(param.getProperty("SEND_EMAIL_ACCOUNT_CREATION"))) {
            templateEJB.saveEmailTemplate("SEND_EMAIL_ACCOUNT_CREATION", Locale.FRENCH, "Confirmation de création d'un compte utilisateur sur le site www.evasion-en-ligne.fr", "Bonjour ${account.username} \\n nous confirmons la création de votre compte utilisateurs\\n\\n cordialement,\\n l'équipe technique.");
            param.saveParametre("SEND_EMAIL_ACCOUNT_CREATION", Boolean.TRUE.toString(), Boolean.TRUE);
        }
    }



    public boolean ifAuthenticated(String value) {
        return Utils.ifAuthenticated(Boolean.valueOf(value));
    }

    public String getExternalURL() {
        return externalURL;
    }

    public Map<Long, String> newBookTravel() {
       return bookEjb.lastBookTravel(5);
    }
}
TOP

Related Classes of com.evasion.client.controler.ApplicationContext

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.