org.fam.jsf.bootstrap.Bootstrap.java Source code

Java tutorial

Introduction

Here is the source code for org.fam.jsf.bootstrap.Bootstrap.java

Source

/*
 * To change this template, choose Tools | Templates and open the template in
 * the editor.
 */
package org.fam.jsf.bootstrap;

import org.fam.common.constant.FamConstantes;
import org.fam.ejb.model.*;
import org.fam.ejb.session.*;
import org.fam.jsf.bean.util.JsfUtil;
import org.fam.jsf.event.InitDataDone;
import org.fluttercode.datafactory.impl.DataFactory;
import org.joda.time.DateTime;
import org.primefaces.event.DragDropEvent;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

import javax.annotation.PostConstruct;
import javax.ejb.AsyncResult;
import javax.ejb.Asynchronous;
import javax.ejb.EJB;
import javax.ejb.Singleton;
import javax.enterprise.context.ApplicationScoped;
import javax.enterprise.event.Event;
import javax.inject.Inject;
import javax.inject.Named;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.concurrent.Future;

/**
 * @author mask_hot
 */

@Singleton
@Named
@ApplicationScoped
public class Bootstrap {

    public static final Logger LOGGER = LoggerFactory.getLogger(Bootstrap.class);

    //
    private Integer progress = 0;
    private Boolean initDone = false;
    //
    @Inject
    Event<InitDataDone> event;
    // CLUBS
    @EJB
    FamClubFacade ejbClub;
    private final List<FamClub> listClub = new ArrayList<FamClub>();
    // TEAMS
    @EJB
    private FamTeamFacade ejbTeam;
    private final List<FamTeam> listTeam = new ArrayList<FamTeam>();
    // ORGANIZATIONS
    @EJB
    private FamOrganizationFacade ejbOrganization;
    private final List<FamOrganization> listOrganization = new ArrayList<FamOrganization>();
    // SEASONS
    @EJB
    private FamSeasonFacade ejbSeason;
    private final List<FamSeason> listSeason = new ArrayList<FamSeason>();
    // TYP_EVENT
    @EJB
    private FamTypEventFacade ejbTypEvent;
    private final List<FamTypEvent> listTypEvent = new ArrayList<FamTypEvent>();
    // TYP_CARD
    @EJB
    private FamTypCardFacade ejbTypCard;
    private final List<FamTypCard> listFamTypCard = new ArrayList<FamTypCard>();
    // SCALE
    @EJB
    private FamScaleFacade ejbScale;
    private final List<FamScale> listScale = new ArrayList<FamScale>();
    // EVENT STATUS
    @EJB
    private FamEventStatusFacade ejbEventStatus;
    private final List<FamEventStatus> listEventStatus = new ArrayList<FamEventStatus>();
    // TYP_PLACE
    @EJB
    private FamTypPlaceFacade ejbTypPlace;
    private final List<FamTypPlace> listTypPlace = new ArrayList<FamTypPlace>();
    // TYP_COMPETITION
    @EJB
    private FamTypCompetitionFacade ejbTypCompetition;
    private final List<FamTypCompetition> listTypCompetition = new ArrayList<FamTypCompetition>();
    // TYP_ABSENCE
    @EJB
    private FamTypAbsenceFacade ejbTypAbsence;
    private final List<FamTypAbsence> listTypAbsence = new ArrayList<FamTypAbsence>();
    // TYP_ANSWER
    @EJB
    private FamTypAnswerFacade ejbTypAnswer;
    private final List<FamTypAnswer> listTypAnswer = new ArrayList<FamTypAnswer>();
    // POSITION
    @EJB
    private FamPositionFacade ejbPosition;
    private final List<FamPosition> listPosition = new ArrayList<FamPosition>();
    // TYP_MATCH
    @EJB
    private FamTypMatchFacade ejbTypMatch;
    private final List<FamTypMatch> listTypMatch = new ArrayList<FamTypMatch>();
    // EVENT
    @EJB
    private FamEventFacade ejbEvent;
    private final List<FamEvent> listEvent = new ArrayList<FamEvent>();
    // SEASON COMPETITION
    @EJB
    private FamSeasonCompetitionFacade ejbSeasonCompetition;
    private final List<FamSeasonCompetition> listSeasonCompetition = new ArrayList<FamSeasonCompetition>();
    // USER
    @EJB
    private FamUserFacade ejbUser;
    private final List<FamUser> listUser = new ArrayList<FamUser>();
    // PLAYER
    @EJB
    private FamPlayerFacade ejbPlayer;
    private final List<FamPlayer> listPlayer = new ArrayList<FamPlayer>();
    // STAFF FUNCTION
    @EJB
    private FamStaffFunctionFacade ejbStaffFunction;
    private final List<FamStaffFunction> listStaffFunction = new ArrayList<FamStaffFunction>();
    // EVENT
    @EJB
    private FamWorkoutFacade ejbWorkout;
    private final List<FamWorkout> listWorkout = new ArrayList<FamWorkout>();
    // COUNTRY
    @EJB
    private FamCountryFacade ejbCountry;
    // STATE
    @EJB
    private FamStateFacade ejbState;
    // PROVINCE
    @EJB
    private FamProvinceFacade ejbProvince;
    //CITY
    @EJB
    private FamCityFacade ejbCity;
    //
    private FamUser toto;

    public Bootstrap() {
    }

    // 
    @PostConstruct
    void postConstruct() {
        LOGGER.info("IN: InitData:PostConstruct");
        //        checkInitDone();
    }

    @Asynchronous
    public Future<Integer> asyncCreateData() {
        LOGGER.info("IN: createData");
        progress = 0;
        //COUNTRY
        createCountries();
        logMsg("Countries");
        progress = 5;
        //STATE
        createStates();
        logMsg("States");
        progress = 6;
        //PROVINCE
        createProvinces();
        logMsg("Provinces");
        progress = 10;
        //CITY
        createCities();
        logMsg("Cities");
        progress++;
        // SEASONS
        createSeasons();
        logMsg("Seasons");
        progress++;
        // ORGANIZATIONS
        createOrganizations();
        logMsg("Organizations");
        progress++;
        // TYPMATCH
        createTypMatch();
        logMsg("TypMatch");
        progress++;
        // TYP_EVENT
        ejbTypEvent.initData();
        logMsg("TypEvent");
        progress++;
        // TYP_CARD
        ejbTypCard.initData();
        logMsg("TypCard");
        progress++;
        // SCALE
        ejbScale.initData();
        logMsg("Scale");
        progress++;
        // CLUBS
        createClubs();
        logMsg("Clubs");
        progress += 3;
        // TEAMS
        createTeams();
        logMsg("Teams");
        progress += 3;
        // EVENT_STATUS
        ejbEventStatus.initData();
        logMsg("EventStatus");
        progress++;
        // TYP_PLACE
        createTypPlace();
        logMsg("TypPlace");
        progress++;
        // COMPETITION
        createTypCompetition();
        logMsg("TypCompetition");
        progress++;
        // TYP_ABSENCE
        createTypAbsence();
        logMsg("TypAbsence");
        progress++;
        // TYP_ANSWER
        createTypAnswer();
        logMsg("TypAnswer");
        progress++;
        // POSITION
        createPosition();
        logMsg("Position");
        progress++;
        // EVENT
        createEvents();
        logMsg("Event");
        progress++;
        // WORKOUT
        createWorkout();
        logMsg("Workout");
        progress++;
        // SEASON COMPETITION
        createSeasonCompetition();
        logMsg("SeasonCompeition");
        progress++;
        // USER
        createUser();
        logMsg("User");
        progress = 90;
        // PLAYER
        createPlayer();
        logMsg("Player");
        progress = 100;
        // STAFF FUNCTION
        //        createStaffFunction();
        //        logMsg("StaffFunction");

        //        checkInitDone();

        //        event.fire(new InitDataDone());
        return new AsyncResult<Integer>(progress);
    }

    public String createData() {
        Future<Integer> res = asyncCreateData();
        return null;
    }

    public void checkInitDone() {
        try {
            this.initDone = (ejbPosition.findAll().size() > 0);
        } catch (Exception e) {
            String msg = "Cannot check InitDone via Table Position";
            logErrorMsg(msg, e);

        }
    }

    private void createClubs() {
        try {
            for (int i = 0; i < 10; i++) {
                FamClub club = new FamClub();
                club.setLibClub("Club_" + i);
                club.setCodeFff(i * 10);
                ejbClub.create(club);
                listClub.add(club);
            }
        } catch (Exception e) {
            LOGGER.error("create clubs failed", e);
            JsfUtil.addErrorMessage(e, "create clubs failed");
        }

    }

    private void createTeams() {
        try {
            for (FamClub club : listClub) {
                for (int i = 0; i <= 2; i++) {
                    FamTeam team = new FamTeam();
                    int num = club.getCodeFff() + i;
                    team.setLibTeam("Equipe_" + num);
                    team.setCodTeam("EQ" + num);
                    //                    team.setFamClub(club);
                    ejbTeam.create(team);
                    listTeam.add(team);
                }
            }
        } catch (Exception e) {
            LOGGER.error("create teams failed", e);
            JsfUtil.addErrorMessage(e, "create clubs failed");
        }
    }

    private void createOrganizations() {
        try {
            FamOrganization org = new FamOrganization();
            org.setLibOrganization("Fdration Franaise de Football");
            org.setCodOrganization("FFF");
            ejbOrganization.create(org);
            listOrganization.add(org);

            org = new FamOrganization();
            org.setLibOrganization("Ligue Midi Pyrnes");
            org.setCodOrganization("LMP");
            org.setParent(listOrganization.get(0));
            ejbOrganization.create(org);
            listOrganization.add(org);

            org = new FamOrganization();
            org.setLibOrganization("District Midi Toulousain");
            org.setCodOrganization("DMT");
            org.setParent(listOrganization.get(1));
            ejbOrganization.create(org);
            listOrganization.add(org);

            org = new FamOrganization();
            org.setLibOrganization("UFOLEP");
            org.setCodOrganization("UFO");
            ejbOrganization.create(org);
            listOrganization.add(org);
        } catch (Exception e) {
            String msg = "create organization failed";
            logErrorMsg(msg, e);

        }
    }

    private void createSeasons() {
        try {
            DateTime dt = new DateTime();
            int year = dt.getYear();
            for (int i = 0; i < 5; i++) {
                FamSeason s = new FamSeason();
                String lib = String.format("%d/%d", year - i, year - i + 1);
                s.setLibSeason(lib);
                s.setCurrentSeason(i == 0);

                ejbSeason.create(s);
                listSeason.add(s);
            }
        } catch (Exception e) {
            String msg = "create seasons failed";
            logErrorMsg(msg, e);

        }
    }

    private void createTypPlace() {
        try {
            FamTypPlace item = new FamTypPlace();
            item.setLibTypPlace("Stabilis");
            item.setCodTypPlace("Stabi");
            ejbTypPlace.create(item);
            listTypPlace.add(item);

            item = new FamTypPlace();
            item.setLibTypPlace("Synthtique");
            item.setCodTypPlace("Synth");
            ejbTypPlace.create(item);
            listTypPlace.add(item);

            item = new FamTypPlace();
            item.setLibTypPlace("Herbe");
            item.setCodTypPlace("Herbe");
            ejbTypPlace.create(item);
            listTypPlace.add(item);

            item = new FamTypPlace();
            item.setLibTypPlace("Autre");
            item.setCodTypPlace("Autre");
            ejbTypPlace.create(item);
            listTypPlace.add(item);
        } catch (Exception e) {
            String msg = "create typPlace failed";
            logErrorMsg(msg, e);

        }
    }

    private void createTypCompetition() {
        try {
            FamTypCompetition item = new FamTypCompetition();
            item.setLibTypCompetition("Division Honneur");
            item.setCodTypCompetition("DH");
            item.setIsChampionship(true);
            item.setFamTypMatch(listTypMatch.get(0));
            ejbTypCompetition.create(item);
            listTypCompetition.add(item);

            item = new FamTypCompetition();
            item.setLibTypCompetition("Promotion Honneur");
            item.setCodTypCompetition("PH");
            item.setIsChampionship(true);
            item.setFamTypMatch(listTypMatch.get(0));
            ejbTypCompetition.create(item);
            listTypCompetition.add(item);

            item = new FamTypCompetition();
            item.setLibTypCompetition("Excellence");
            item.setCodTypCompetition("EXL");
            item.setIsChampionship(true);
            item.setFamTypMatch(listTypMatch.get(2));
            ejbTypCompetition.create(item);
            listTypCompetition.add(item);

            item = new FamTypCompetition();
            item.setLibTypCompetition("1ere Division");
            item.setCodTypCompetition("1DIV");
            item.setIsChampionship(true);
            item.setFamTypMatch(listTypMatch.get(2));
            ejbTypCompetition.create(item);
            listTypCompetition.add(item);

            item = new FamTypCompetition();
            item.setLibTypCompetition("Coupe de France");
            item.setCodTypCompetition("CF");
            item.setIsChampionship(false);
            item.setFamTypMatch(listTypMatch.get(1));
            ejbTypCompetition.create(item);
            listTypCompetition.add(item);

            item = new FamTypCompetition();
            item.setLibTypCompetition("Match amical");
            item.setCodTypCompetition("A");
            item.setIsChampionship(false);
            item.setFamTypMatch(listTypMatch.get(0));
            ejbTypCompetition.create(item);
            listTypCompetition.add(item);
        } catch (Exception e) {
            String msg = "create typCompetition failed";
            logErrorMsg(msg, e);

        }
    }

    private void createTypAbsence() {
        try {
            FamTypAbsence item = new FamTypAbsence();
            item.setLibTypAbsence("Blessure");
            item.setCodTypAbsence("B");
            ejbTypAbsence.create(item);
            listTypAbsence.add(item);

            item = new FamTypAbsence();
            item.setLibTypAbsence("Vacances");
            item.setCodTypAbsence("V");
            ejbTypAbsence.create(item);
            listTypAbsence.add(item);
        } catch (Exception e) {
            String msg = "create typAbsence failed";
            logErrorMsg(msg, e);

        }
    }

    private void createTypAnswer() {
        try {
            FamTypAnswer item = new FamTypAnswer();
            item.setLibTypAnswer("Absent");
            item.setCodTypAnswer("A");
            item.setGrpTypAnswer(FamConstantes.GRP_ANSWER_NO);
            ejbTypAnswer.create(item);
            listTypAnswer.add(item);

            item = new FamTypAnswer();
            item.setLibTypAnswer("Prsent");
            item.setCodTypAnswer("P");
            item.setGrpTypAnswer(FamConstantes.GRP_ANSWER_YES);
            ejbTypAnswer.create(item);
            listTypAnswer.add(item);

            item = new FamTypAnswer();
            item.setLibTypAnswer("Ne sait pas");
            item.setCodTypAnswer("N");
            item.setGrpTypAnswer(FamConstantes.GRP_ANSWER_MAYBE);
            ejbTypAnswer.create(item);
            listTypAnswer.add(item);
        } catch (Exception e) {
            String msg = "create typAnswer failed";
            logErrorMsg(msg, e);

        }
    }

    private void createPosition() {
        try {
            FamPosition item = new FamPosition();
            item.setLibPosition("Gardien de but");
            item.setCodPosition("G");
            ejbPosition.create(item);
            listPosition.add(item);

            item = new FamPosition();
            item.setLibPosition("Latral gauche");
            item.setCodPosition("LG");
            ejbPosition.create(item);
            listPosition.add(item);

            item = new FamPosition();
            item.setLibPosition("Latral droit");
            item.setCodPosition("LD");
            ejbPosition.create(item);
            listPosition.add(item);

            item = new FamPosition();
            item.setLibPosition("Stoppeur");
            item.setCodPosition("ST");
            ejbPosition.create(item);
            listPosition.add(item);

            item = new FamPosition();
            item.setLibPosition("Dfenseur central");
            item.setCodPosition("DC");
            ejbPosition.create(item);
            listPosition.add(item);

            item = new FamPosition();
            item.setLibPosition("Libro");
            item.setCodPosition("LIB");
            ejbPosition.create(item);
            listPosition.add(item);

            item = new FamPosition();
            item.setLibPosition("Milieu dfensif");
            item.setCodPosition("MDF");
            ejbPosition.create(item);
            listPosition.add(item);

            item = new FamPosition();
            item.setLibPosition("Milieu offensif");
            item.setCodPosition("MO");
            ejbPosition.create(item);
            listPosition.add(item);

            item = new FamPosition();
            item.setLibPosition("Milieu gauche");
            item.setCodPosition("MG");
            ejbPosition.create(item);
            listPosition.add(item);

            item = new FamPosition();
            item.setLibPosition("Milieu droit");
            item.setCodPosition("MD");
            ejbPosition.create(item);
            listPosition.add(item);

            item = new FamPosition();
            item.setLibPosition("Avant centre");
            item.setCodPosition("AC");
            ejbPosition.create(item);
            listPosition.add(item);

            item = new FamPosition();
            item.setLibPosition("Ailier gauche");
            item.setCodPosition("AG");
            ejbPosition.create(item);
            listPosition.add(item);

            item = new FamPosition();
            item.setLibPosition("Ailier droit");
            item.setCodPosition("AD");
            ejbPosition.create(item);
            listPosition.add(item);

            item = new FamPosition();
            item.setLibPosition("Second attaquant");
            item.setCodPosition("SA");
            ejbPosition.create(item);
            listPosition.add(item);

            item = new FamPosition();
            item.setLibPosition("Meneur de jeu");
            item.setCodPosition("MJ");
            ejbPosition.create(item);
            listPosition.add(item);
        } catch (Exception e) {
            String msg = "create position failed";
            logErrorMsg(msg, e);

        }
    }

    private void createTypMatch() {
        try {
            FamTypMatch item = new FamTypMatch();
            item.setLibTypMatch("Dfault");
            item.setCodTypMatch("DEF");
            ejbTypMatch.create(item);
            listTypMatch.add(item);

            item = new FamTypMatch();
            item.setLibTypMatch("Coupe");
            item.setCodTypMatch("Cp");
            item.setExtraTime(Boolean.TRUE);
            item.setPenalties(Boolean.TRUE);
            ejbTypMatch.create(item);
            listTypMatch.add(item);

            item = new FamTypMatch();
            item.setLibTypMatch("Corpo");
            item.setCodTypMatch("CORP");
            item.setInfiniteSubs(Boolean.TRUE);
            ejbTypMatch.create(item);
            listTypMatch.add(item);
        } catch (Exception e) {
            String msg = "create typMatch failed";
            logErrorMsg(msg, e);

        }
    }

    private void createEvents() {
    }

    private void createWorkout() {
        try {
            FamWorkout item = new FamWorkout();
            DateTime dt = new DateTime();
            item.getFamEvent().setDtEvent(dt.toDate());
            item.getFamEvent().setDuration(120);
            item.getFamEvent().setLibEvent("E1");
            item.getFamEvent().setFamSeason(ejbSeason.getCurrentSeason());
            item.getFamEvent().setFamEventStatus(ejbEventStatus.getScheduled());

            ejbWorkout.create(item);
            listWorkout.add(item);
        } catch (Exception e) {
            String msg = "create workouts failed";
            logErrorMsg(msg, e);

        }
    }

    private void createSeasonCompetition() {
        try {
            for (FamSeason s : listSeason) {
                for (FamTypCompetition t : listTypCompetition) {
                    FamSeasonCompetition item = new FamSeasonCompetition();
                    item.setFamTypCompetition(t);
                    item.setFamSeason(s);
                    ejbSeasonCompetition.create(item);
                    listSeasonCompetition.add(item);
                }
            }
        } catch (Exception e) {
            String msg = "create seasonCompetition failed";
            logErrorMsg(msg, e);

        }
    }

    private void createUser() {
        try {
            FamUser item = new FamUser();
            item.setEmail("gbougeard@gmail.com");
            item.setFirstName("Gregory");
            item.setLastName("Bougeard");
            item.setOpenid(Boolean.TRUE);

            ejbUser.create(item);
            listUser.add(item);

            item = new FamUser();
            item.setEmail("toto@gmail.com");
            item.setFirstName("Toto");
            item.setLastName("Test");
            item.setOpenid(Boolean.FALSE);
            item.setPassword("toto");

            ejbUser.create(item);
            listUser.add(item);

            toto = item;

            DataFactory df = new DataFactory();
            for (int i = 0; i < 200; i++) {
                item = new FamUser();
                item.setEmail(df.getEmailAddress().replaceAll(" ", "_"));
                item.setFirstName(df.getFirstName());
                item.setLastName(df.getLastName());
                item.setOpenid(Boolean.FALSE);
                item.setPassword("pwd");

                ejbUser.create(item);
                listUser.add(item);
            }

        } catch (Exception e) {
            String msg = "create user failed";
            logErrorMsg(msg, e);

        }
    }

    private void createProfilePlayer(FamPlayer item) {
        try {
            DataFactory df = new DataFactory();
            item.getCurrentProfile().setAtt(df.getNumberBetween(25, 80));
            item.getCurrentProfile().setDef(df.getNumberBetween(25, 80));
            item.getCurrentProfile().setVit(df.getNumberBetween(25, 80));
            item.getCurrentProfile().setPhy(df.getNumberBetween(25, 80));
            item.getCurrentProfile().setPui(df.getNumberBetween(25, 80));
            item.getCurrentProfile().setTec(df.getNumberBetween(25, 80));

            item.getCurrentProfile().setHeight(df.getNumberBetween(150, 210));
            item.getCurrentProfile().setWeight(df.getNumberBetween(65, 120));

            item.getCurrentPlayerSeason().setFamClub(df.getItem(listClub));
            //            item.getCurrentPlayerSeason().setFamTeam(df.getItem(item.getCurrentPlayerSeason().getFamClub().getFamTeamList()));

            List<FamPlayerPosition> listPos = new ArrayList<FamPlayerPosition>();

            for (int i = 0; i < df.getNumberUpTo(6); i++) {
                FamPlayerPosition pos = new FamPlayerPosition();
                pos.setNumOrder(i);
                pos.setFamPlayer(item);
                pos.setFamPosition(df.getItem(listPosition));
                listPos.add(pos);
            }

            item.setFamPlayerPositionList(listPos);

            ejbPlayer.edit(item);
        } catch (Exception e) {
            String msg = "create ProfilePlayer failed";
            logErrorMsg(msg, e);

        }
    }

    private void setEmailPlayer(FamPlayer item) {
        //        StringBuilder sb = new StringBuilder();
        DataFactory df = new DataFactory();
        //         sb.append(item.getFirstName()).append(".").append(item.getLastName()).append("@fam.org");
        //         item.setEmail(sb.toString());
        item.setEmail(df.getEmailAddress().replaceAll(" ", "_"));
    }

    public void createPlayer() {

        DataFactory df = new DataFactory();

        FamPlayer item = new FamPlayer();
        item.setEmail("gbougeard@gmail.com");
        item.setFirstName("Gregory");
        item.setLastName("Bougeard");
        DateTime dt = new DateTime();
        item.setDtBirth(df.getBirthDate());
        item.setDtArrival(df.getDateBetween(dt.minusYears(15).toDate(), new Date()));
        item.setAddress("4, rue Roland Garros");
        item.setZipcode("31200");
        item.setCity("TOULOUSE");
        item.setNumLicense(1L);
        try {
            ejbPlayer.create(item);
            listPlayer.add(item);
            createProfilePlayer(item);
        } catch (Exception e) {
            String msg = "create player failed";
            logErrorMsg(msg, e);

        }

        item = new FamPlayer();
        item.setEmail("toto@gmail.com");
        item.setFirstName("Toto");
        item.setLastName("Test");
        item.setDtBirth(df.getBirthDate());
        item.setDtArrival(df.getDateBetween(dt.minusYears(15).toDate(), new Date()));
        item.setNumLicense(2L);

        //toto = ejbUser.find(54);
        item.setFamUser(toto);

        try {
            ejbPlayer.create(item);
            listPlayer.add(item);
            createProfilePlayer(item);
        } catch (Exception e) {
            String msg = "create player failed";
            logErrorMsg(msg, e);

        }

        toto.setCurrentClub(item.getCurrentClub());
        ejbUser.edit(toto);

        for (int i = 0; i < 200; i++) {
            item = new FamPlayer();
            item.setFirstName(df.getFirstName());
            item.setLastName(df.getLastName());
            item.setDtBirth(df.getBirthDate());
            dt = new DateTime();
            item.setDtArrival(df.getDateBetween(dt.minusYears(15).toDate(), new Date()));
            item.setNumLicense(new Long(df.getNumberUpTo(99999)));
            item.setAddress(df.getAddress());
            item.setZipcode(df.getNumberText(5));
            item.setCity(df.getCity());
            item.setTel(df.getNumberText(10));
            item.setIceContact(df.getName());
            item.setIceTel(df.getNumberText(10));
            setEmailPlayer(item);

            try {
                ejbPlayer.create(item);
                listPlayer.add(item);
                createProfilePlayer(item);
            } catch (Exception e) {
                String msg = "create player failed";
                logErrorMsg(msg, e);

            }
            //                ejbPlayer.edit(item);
        }

    }

    private void createStaffFunction() {
        try {
            FamStaffFunction item = new FamStaffFunction();
            item.setCodStaffFunction("P");
            item.setLibStaffFunction("Prsident");

            ejbStaffFunction.create(item);
            listStaffFunction.add(item);

            item = new FamStaffFunction();
            item.setCodStaffFunction("T");
            item.setLibStaffFunction("Trsorier");

            ejbStaffFunction.create(item);
            listStaffFunction.add(item);

            item = new FamStaffFunction();
            item.setCodStaffFunction("S");
            item.setLibStaffFunction("Secrtaire");

            ejbStaffFunction.create(item);
            listStaffFunction.add(item);

            item = new FamStaffFunction();
            item.setCodStaffFunction("C");
            item.setLibStaffFunction("Coach");

            ejbStaffFunction.create(item);
            listStaffFunction.add(item);

        } catch (Exception e) {
            String msg = "create staff Funtion failed";
            logErrorMsg(msg, e);

        }
    }

    private void createCountries() {
        try {
            ejbCountry.genData();

        } catch (Exception e) {
            String msg = "create Countries failed";
            logErrorMsg(msg, e);

        }
    }

    private void createStates() {
        try {
            ejbState.genData();

        } catch (Exception e) {
            String msg = "create States failed";
            logErrorMsg(msg, e);

        }
    }

    private void createProvinces() {
        try {
            ejbProvince.genData();

        } catch (Exception e) {
            String msg = "create Provinces failed";
            logErrorMsg(msg, e);
        }
    }

    private void createCities() {
        try {
            ejbCity.genData();

        } catch (Exception e) {
            String msg = "create Cities failed";
            logErrorMsg(msg, e);

        }
    }

    public Boolean getInitDone() {
        checkInitDone();
        return initDone;
    }

    public void logMsg(String msg) {
        //JsfUtil.addSuccessMessage("Init Data", msg);
        LOGGER.info(msg);
        //        CometContext.publish("chat", msg);
    }

    public void logErrorMsg(String msg, Exception e) {
        LOGGER.error(msg, e);
        //        JsfUtil.addErrorMessage(e, msg);
        //        CometContext.publish("chat", msg);
    }

    //    public void send(ActionEvent event){
    //         CometContext.publish("chat", msg);
    //    }
    public void testDrag(DragDropEvent e) {
        logMsg("testDrag " + e.getData());
    }

    public Integer getProgress() {
        if (progress > 100) {
            progress = 100;
        }
        return progress;
    }

    public void setProgress(Integer progress) {
        this.progress = progress;
    }

    public void onComplete() {
        //JsfUtil.addInfoMessage("Complete!", "InitData");
        LOGGER.info("BootStrap complete!");
    }

    public void testData() {
        int i = 0;
        i++;
        progress = i % 1000;
    }
}