Example usage for org.springframework.context ApplicationContext getMessage

List of usage examples for org.springframework.context ApplicationContext getMessage

Introduction

In this page you can find the example usage for org.springframework.context ApplicationContext getMessage.

Prototype

String getMessage(String code, @Nullable Object[] args, Locale locale) throws NoSuchMessageException;

Source Link

Document

Try to resolve the message.

Usage

From source file:com.apress.prospringintegration.corespring.i18n.MainI18n.java

public static void main(String[] args) {
    ApplicationContext ctx = new ClassPathXmlApplicationContext("ioc_resource_bundles.xml");

    String qMessage = ctx.getMessage("queued", null, Locale.US);
    System.out.println(qMessage);

    qMessage = ctx.getMessage("queued", null, Locale.UK);
    System.out.println(qMessage);

    String filename = "ProSpringIntegration.xml";
    MessageSourceResolvable processed = new DefaultMessageSourceResolvable(new String[] { "complete" },
            new String[] { filename }, " Your data has been processed!");
    String msrQmessage = ctx.getMessage(processed, Locale.FRANCE);
    System.out.println(msrQmessage);

}

From source file:net.triptech.buildulator.model.Person.java

/**
 * Gets the message./* www.  j ava2s. c o m*/
 *
 * @param key the key
 * @param context the context
 * @return the message
 */
private static String getMessage(final String key, final ApplicationContext context) {
    return context.getMessage(key, null, LocaleContextHolder.getLocale());
}

From source file:com.cubusmail.server.services.ConvertUtil.java

/**
 * Convert dedicated messages to string arrays for GridList.
 * /* www  .  j  av  a  2s.  c o  m*/
 * @param context
 * @param preferences
 * @param currentFolder
 * @param pageSize
 * @param msgs
 * @return
 * @throws MessagingException
 */
public static GWTMessageRecord[] convertMessagesToStringArray(ApplicationContext context,
        Preferences preferences, IMAPFolder currentFolder, int pageSize, Message msgs[])
        throws MessagingException {

    GWTMessageRecord[] result = new GWTMessageRecord[pageSize];

    // get date formats for message list date
    Locale locale = SessionManager.get().getLocale();
    TimeZone timezone = SessionManager.get().getTimeZone();
    String datePattern = context.getMessage(CubusConstants.MESSAGELIST_DATE_FORMAT_PATTERN, null, locale);
    String timePattern = context.getMessage(CubusConstants.MESSAGELIST_TIME_FORMAT_PATTERN, null, locale);

    NumberFormat sizeFormat = MessageUtils.createSizeFormat(locale);

    DateFormat dateFormat = null;
    DateFormat timeFormat = null;
    if (preferences.isShortTimeFormat()) {
        dateFormat = new SimpleDateFormat(datePattern, locale);
        timeFormat = new SimpleDateFormat(timePattern, locale);
        timeFormat.setTimeZone(timezone);
    } else {
        dateFormat = new SimpleDateFormat(datePattern + " " + timePattern, locale);
    }
    dateFormat.setTimeZone(timezone);
    Date today = Calendar.getInstance(timezone).getTime();

    for (int i = 0; i < pageSize; i++) {
        result[i] = new GWTMessageRecord();
        if (preferences.isShortTimeFormat() && DateUtils.isSameDay(today, msgs[i].getSentDate())) {
            // show only time
            convertToStringArray(currentFolder, msgs[i], result[i], timeFormat, sizeFormat);
        } else {
            convertToStringArray(currentFolder, msgs[i], result[i], dateFormat, sizeFormat);
        }
    }

    return result;
}

From source file:com.github.jknack.handlebars.springmvc.Handlebars4ViewResolver.java

/**
 * Creates a new i18n source.//from w ww .jav  a 2 s  .  com
 *
 * @param context The application context.
 * @return A new i18n source.
 */
private static I18nSource createI18nSource(final ApplicationContext context) {
    return new I18nSource() {
        @Override
        public String message(final String key, final Locale locale, final Object... args) {
            return context.getMessage(key, args, locale);
        }

        @Override
        public String[] keys(final String basename, final Locale locale) {
            ResourceBundle bundle = ResourceBundle.getBundle(basename, locale);
            Enumeration<String> keys = bundle.getKeys();
            List<String> result = new ArrayList<String>();
            while (keys.hasMoreElements()) {
                String key = keys.nextElement();
                result.add(key);
            }
            return result.toArray(new String[result.size()]);
        }
    };
}

From source file:net.sourceforge.vulcan.spring.DelegatingResourceBundleMessageSource.java

@Override
protected String getMessageInternal(String code, Object[] args, Locale locale) {
    String message = super.getMessageInternal(code, args, locale);

    if (message != null) {
        return message;
    }// w  ww .  j a v a 2  s. c  o  m

    synchronized (this) {
        if (recurseFlag) {
            return null;
        }

        try {
            recurseFlag = true;

            for (ApplicationContext ctx : delegates) {
                try {
                    return ctx.getMessage(code, args, locale);
                } catch (NoSuchMessageException e) {
                }
            }
            if (useCodeAsDefaultMessage) {
                return code;
            }
            return null;
        } finally {
            recurseFlag = false;
        }
    }
}

From source file:org.jasig.springframework.context.ACATester.java

public void setApplicationContext(ApplicationContext ctx) throws ApplicationContextException {
    // check reinitialization
    if (this.ac != null) {
        throw new IllegalStateException("Already initialized");
    }/*from  w  ww  . jav  a2  s .  c  o  m*/

    // check message source availability
    if (ctx != null) {
        try {
            ctx.getMessage("code1", null, Locale.getDefault());
        } catch (NoSuchMessageException ex) {
            // expected
        }
    }

    this.ac = ctx;
}

From source file:org.openmrs.module.pmtct.web.controller.PmtctHomeGeneralController.java

/**
 * @see org.springframework.web.servlet.mvc.ParameterizableViewController#handleRequestInternal(javax.servlet.http.HttpServletRequest,
 *      javax.servlet.http.HttpServletResponse)
 *//*  w  w w  . ja va  2  s  . c o  m*/

@Override
protected ModelAndView handleRequestInternal(HttpServletRequest request, HttpServletResponse response)
        throws Exception {

    StringBuilder parameters = new StringBuilder();
    parameters.append("page=1");

    String startDate = "";

    String endDate = "";

    ModelAndView mav = new ModelAndView();
    mav.setViewName(getViewName());
    PmtctService pmtct;
    List<Object> result = new ArrayList<Object>();
    String pageNumber;
    int pageSize;

    List<Object> res;

    List<Integer> numberOfPages;

    try {
        pageNumber = request.getParameter("page");
        pageSize = PMTCTConfigurationUtils.getNumberOfRecordPerPage();

        //         config = PMTCTConfiguration.getInstance(request.getRealPath(PMTCTConstants.CONFIGURATION_FILE_LOC));
        //         constants = config.getConstants();
        //         request.getSession().setAttribute("enableModification", "" + config.isModificationEnabled());

        request.getSession().setAttribute("pmtctModuleConfigured", "" + PMTCTConfigurationUtils.isConfigured());

        if (pageNumber.compareToIgnoreCase("1") == 0 || pageNumber.compareToIgnoreCase("") == 0) {
            pmtct = Context.getService(PmtctService.class);
            //            pmtct.setPMTCTProgrmaId(constants);
            res = new ArrayList<Object>();

            if (request.getParameter("ckbxPeriod") == null)
                res = pmtct.getCurrentPatientsInPmtct();
            else {
                parameters.append("&ckbxPeriod=" + request.getParameter("ckbxPeriod"));
                if (null != request.getParameter("startDate")
                        && "" != request.getParameter("startDate").trim()) {
                    startDate = request.getParameter("startDate").trim();
                    parameters.append("&startDate=" + startDate);
                }
                if (null != request.getParameter("endDate") && "" != request.getParameter("endDate").trim()) {
                    endDate = request.getParameter("endDate").trim();
                    parameters.append("&endDate=" + endDate);
                }
                res = pmtct.getCurrentPatientsInPmtct(startDate, endDate);
                request.getSession().setAttribute("home_gen_res", res);
            }

            //collection
            for (int i = 0; i < pageSize; i++) {
                if (res.size() == 0)
                    break;
                if (i >= res.size() - 1) {
                    result.add(res.get(i));
                    break;
                } else
                    result.add(res.get(i));
            }

            //paging
            int n = (res.size() == ((int) (res.size() / pageSize)) * pageSize) ? (res.size() / pageSize)
                    : ((int) (res.size() / pageSize)) + 1;
            numberOfPages = new ArrayList<Integer>();
            for (int i = 1; i <= n; i++) {
                numberOfPages.add(i);
            }
            request.getSession().setAttribute("home_gen_numberOfPages", numberOfPages);

        } else {
            res = (List<Object>) request.getSession().getAttribute("home_gen_res");
            numberOfPages = (List<Integer>) request.getSession().getAttribute("home_gen_numberOfPages");
            for (int i = (pageSize * (Integer.parseInt(pageNumber) - 1)); i < pageSize
                    * (Integer.parseInt(pageNumber)); i++) {
                if (i >= res.size())
                    break;
                else
                    result.add(res.get(i));
            }
        }

        //page infos
        Object[] pagerInfos = new Object[3];
        pagerInfos[0] = (res.size() == 0) ? 0 : (pageSize * (Integer.parseInt(pageNumber) - 1)) + 1;
        pagerInfos[1] = (pageSize * (Integer.parseInt(pageNumber)) <= res.size())
                ? pageSize * (Integer.parseInt(pageNumber))
                : res.size();
        pagerInfos[2] = res.size();

        ApplicationContext appContext = ContextProvider.getApplicationContext();

        mav.addObject("pageInfos", appContext.getMessage("pmtct.pagingInfo.showingResults", pagerInfos,
                Context.getUserContext().getLocale()));
        mav.addObject("numberOfPages", numberOfPages);
        mav.addObject("patientList", result);
        mav.addObject("pageSize", pageSize);
        mav.addObject("parameters", parameters.toString());

        mav.addObject("positiveId", PMTCTConstants.POSITIVE);
        mav.addObject("hivTestResultId", PMTCTConstants.RESULT_OF_HIV_TEST);

        FileExporter fexp = new FileExporter();

        if (request.getParameter("export") != null
                && request.getParameter("export").compareToIgnoreCase("csv") == 0) {
            fexp.exportToCSVFile(request, response, res, "list_of_patients_in_pmtct_program.csv",
                    "List of Patient in PMTCT Program");
        }
    } catch (Exception ex) {
        request.getSession().setAttribute(WebConstants.OPENMRS_ERROR_ATTR,
                "An error occured when trying to load data. Find the error in the log file.");
        log.error("An error occured when trying to load data from database: \n" + ex.getMessage());
        ex.printStackTrace();
    }
    return mav;
}

From source file:org.openmrs.module.pmtct.web.controller.ExpectedMaternityPatientController.java

/**
 * @see org.springframework.web.servlet.mvc.ParameterizableViewController#handleRequestInternal(javax.servlet.http.HttpServletRequest,
 *      javax.servlet.http.HttpServletResponse)
 *//*from ww w  . j av  a2s.co  m*/

@SuppressWarnings({ "static-access", "deprecation" })
@Override
protected ModelAndView handleRequestInternal(HttpServletRequest request, HttpServletResponse response)
        throws Exception {

    StringBuilder parameters = new StringBuilder();
    parameters.append("category=maternity&page=1");

    ModelAndView mav = new ModelAndView();
    mav.setViewName(getViewName());

    PmtctService pmtct;
    List<Object> result = new ArrayList<Object>();
    String pageNumber = request.getParameter("page");

    String startDate = "";

    String endDate = "";

    List<Object> res;

    List<Integer> numberOfPages;

    //      config = PMTCTConfiguration.getInstance(request.getRealPath(PMTCTConstants.CONFIGURATION_FILE_LOC));
    //      constants = config.getListOfConstants().get(0);
    //      request.getSession().setAttribute("enableModification", "" + config.isModificationEnabled());
    request.getSession().setAttribute("pmtctModuleConfigured", "" + PMTCTConfigurationUtils.isConfigured());

    try {
        if (null != request.getParameter("startDate") && "" != request.getParameter("startDate").trim()) {
            startDate = request.getParameter("startDate").trim();
            parameters.append("&startDate=" + startDate);
        }
        if (null != request.getParameter("endDate") && "" != request.getParameter("endDate").trim()) {
            endDate = request.getParameter("endDate").trim();
            parameters.append("&endDate=" + endDate);
        }

        if (pageNumber.compareToIgnoreCase("1") == 0 || pageNumber.compareToIgnoreCase("") == 0) {
            pmtct = Context.getService(PmtctService.class);
            //            pmtct.setPMTCTProgrmaId(config.getConstants());
            res = new ArrayList<Object>();

            if (request.getParameter("type").compareTo("3") == 0) {
                if (startDate.compareTo("") != 0 && endDate.compareTo("") != 0) {
                    res = pmtct.getpatientsTestedInDeliveryRoom(startDate, endDate);
                    request.getSession().setAttribute("exp_mat_pat_res", res);
                }
                mav.addObject("listHeaderTitle", "pmtct.menu.patientTestedInWorkroom");
            } else if (request.getParameter("type").compareTo("2") == 0) {
                res = pmtct.getExpectedPatientsInMaternity();
                request.getSession().setAttribute("exp_mat_pat_res", res);
                mav.addObject("listHeaderTitle", "pmtct.menu.expectedMaternityPatient");
            } else if (request.getParameter("type").compareTo("1") == 0) {
                if (startDate.compareTo("") != 0 && endDate.compareTo("") != 0) {
                    res = pmtct.getGeneralStatsForPatientsInMaternity(startDate, endDate);
                    request.getSession().setAttribute("exp_mat_pat_res", res);
                }
                mav.addObject("listHeaderTitle", "pmtct.menu.generalStatsInMaternity");
            } else if (request.getParameter("type").compareTo("4") == 0) {
                res = pmtct.getPatientsMissedTheirMaternityEncounter();
                request.getSession().setAttribute("exp_mat_pat_res", res);
                mav.addObject("listHeaderTitle", "pmtct.menu.patientWhoMissedMaternityEncounter");
            }

            for (int i = 0; i < PMTCTConfigurationUtils.getNumberOfRecordPerPage(); i++) {
                if (res.size() == 0)
                    break;
                if (i >= res.size() - 1) {
                    result.add(res.get(i));
                    break;
                } else
                    result.add(res.get(i));
            }
            //paging
            int n = (res.size() == ((int) (res.size() / PMTCTConfigurationUtils.getNumberOfRecordPerPage()))
                    * PMTCTConfigurationUtils.getNumberOfRecordPerPage())
                            ? (res.size() / PMTCTConfigurationUtils.getNumberOfRecordPerPage())
                            : ((int) (res.size() / PMTCTConfigurationUtils.getNumberOfRecordPerPage())) + 1;
            numberOfPages = new ArrayList<Integer>();
            for (int i = 1; i <= n; i++) {
                numberOfPages.add(i);
            }
            request.getSession().setAttribute("exp_mat_pat_numberOfPages", numberOfPages);
        } else {
            res = (List<Object>) request.getSession().getAttribute("exp_mat_pat_res");
            numberOfPages = (List<Integer>) request.getSession().getAttribute("exp_mat_pat_numberOfPages");
            for (int i = (PMTCTConfigurationUtils.getNumberOfRecordPerPage()
                    * (Integer.parseInt(pageNumber) - 1)); i < PMTCTConfigurationUtils
                            .getNumberOfRecordPerPage() * (Integer.parseInt(pageNumber)); i++) {
                if (i >= res.size())
                    break;
                else
                    result.add(res.get(i));
            }
        }

        //page infos
        Object[] pagerInfos = new Object[3];
        pagerInfos[0] = (res.size() == 0) ? 0
                : (PMTCTConfigurationUtils.getNumberOfRecordPerPage() * (Integer.parseInt(pageNumber) - 1)) + 1;
        pagerInfos[1] = (PMTCTConfigurationUtils.getNumberOfRecordPerPage()
                * (Integer.parseInt(pageNumber)) <= res.size())
                        ? PMTCTConfigurationUtils.getNumberOfRecordPerPage() * (Integer.parseInt(pageNumber))
                        : res.size();
        pagerInfos[2] = res.size();

        ApplicationContext appContext = ContextProvider.getApplicationContext();

        mav.addObject("pageInfos", appContext.getMessage("pmtct.pagingInfo.showingResults", pagerInfos,
                Context.getUserContext().getLocale()));
        mav.addObject("numberOfPages", numberOfPages);
        mav.addObject("patientList", result);
        mav.addObject("pageSize", PMTCTConfigurationUtils.getNumberOfRecordPerPage());
        mav.addObject("startDate", startDate);
        mav.addObject("endDate", endDate);
        mav.addObject("parameters", parameters.toString());

        mav.addObject("dpaId", PMTCTConstants.PREGNANT_DUE_DATE);
        mav.addObject("dateOfConfinementId", PMTCTConstants.DATE_OF_CONFINEMENT);
        mav.addObject("hivTestResultId", PMTCTConstants.RESULT_OF_HIV_TEST);
        mav.addObject("partnerStatusId", PMTCTConstants.TESTING_STATUS_OF_PARTNER);
        mav.addObject("childBornStatusId", PMTCTConfigurationUtils.getBornStatusConceptId());
        mav.addObject("positiveId", PMTCTConstants.POSITIVE);
        mav.addObject("bornDeadId", PMTCTConfigurationUtils.getBornDeadConceptId());
        mav.addObject("cpnIdentifierTypeId", PMTCTConfigurationUtils.getCPNIdentifierTypeId());

        FileExporter fexp = new FileExporter();

        if (request.getParameter("export") != null
                && request.getParameter("export").compareToIgnoreCase("csv") == 0) {
            if (request.getParameter("type").compareTo("1") == 0)
                fexp.exportGeneralStatisticsInMaternityToCSVFile(request, response, res,
                        "general_statistics_in_Maternity_from_" + startDate + "_to_" + endDate + ".csv",
                        "General statistics in Maternity");
            else if (request.getParameter("type").compareTo("2") == 0)
                fexp.exportExpectedPatientInMaternityToCSVFile(request, response, res,
                        "list_of_expected_patients_in_Maternity.csv", "List of expected patients in Maternity");
            else if (request.getParameter("type").compareTo("3") == 0)
                fexp.exportPatientTestedInDeliveryRoomToCSVFile(request, response, res,
                        "list_of_Patient_tested_in_Delivery_room.csv",
                        "List of Patient tested in Delivery room");
            else if (request.getParameter("type").compareTo("4") == 0)
                fexp.exportExpectedPatientInMaternityToCSVFile(request, response, res,
                        "list_of_patients_who_missed_Maternity_Encounter.csv",
                        "List of patients who missed Maternity Encounter");
        }
    } catch (Exception ex) {
        request.getSession().setAttribute(WebConstants.OPENMRS_ERROR_ATTR,
                "An error occured when trying to load data. Find the error in the log file.");
        log.error("MATERNITY STATISTICS : An error occured when trying to load data from database: \n"
                + ex.getMessage());
        ex.printStackTrace();
    }
    return mav;
}

From source file:org.openmrs.module.pmtct.web.controller.PatientInCPNController.java

/**
 * @see org.springframework.web.servlet.mvc.ParameterizableViewController#handleRequestInternal(javax.servlet.http.HttpServletRequest,
 *      javax.servlet.http.HttpServletResponse)
 *//*from   w  w  w  . j  a  v a  2s  .  c  om*/

@SuppressWarnings("static-access")
@Override
protected ModelAndView handleRequestInternal(HttpServletRequest request, HttpServletResponse response)
        throws Exception {
    ModelAndView mav = new ModelAndView();
    mav.setViewName(getViewName());

    String startDate = "";

    String endDate = "";

    int year = (new Date()).getYear();
    int month = (new Date()).getMonth();

    PmtctService pmtct;
    List<Object> result = new ArrayList<Object>();
    String pageNumber = request.getParameter("page");

    List<Object> res;

    List<Integer> numberOfPages;

    //      config = PMTCTConfiguration.getInstance(request.getRealPath(PMTCTConstants.CONFIGURATION_FILE_LOC));
    //      PMTCTConstants constants = config.getListOfConstants().get(0);
    //      request.getSession().setAttribute("enableModification", "" + config.isModificationEnabled());

    request.getSession().setAttribute("pmtctModuleConfigured", "" + PMTCTConfigurationUtils.isConfigured());

    try {
        if (null != request.getParameter("startDate") && "" != request.getParameter("startDate").trim()) {
            startDate = request.getParameter("startDate").trim();
        }
        if (null != request.getParameter("endDate") && "" != request.getParameter("endDate").trim()) {
            endDate = request.getParameter("endDate").trim();
        }
        //      }
        //      catch (Exception ex) {
        //         ex.printStackTrace();
        //      }
        //      
        //      try {
        if (pageNumber.compareToIgnoreCase("1") == 0 || pageNumber.compareToIgnoreCase("") == 0) {
            pmtct = Context.getService(PmtctService.class);
            //            pmtct.setPMTCTProgrmaId(config.getConstants());
            res = new ArrayList<Object>();

            mav.addObject("monthsList", monthsList);

            if (request.getParameter("category").equalsIgnoreCase("cpn")) {
                if (request.getParameter("type").equalsIgnoreCase("1")) {
                    if (startDate.compareTo("") != 0 && endDate.compareTo("") != 0) {
                        res = pmtct.getGeneralStatsForPatientsInCPN(startDate, endDate);
                        request.getSession().setAttribute("pat_in_cpn_res", res);
                    }
                    mav.addObject("listHeaderTitle", "pmtct.menu.generalStatsInCPN");
                } else if (request.getParameter("type").equalsIgnoreCase("2")) {
                    if (request.getParameter("month") != null
                            && request.getParameter("month").trim().compareTo("") != 0)
                        month = Integer.parseInt(request.getParameter("month"));
                    if (request.getParameter("year") != null
                            && request.getParameter("year").trim().compareTo("") != 0)
                        year = Integer.parseInt(request.getParameter("year"));

                    res = pmtct.getPatientByMoisDeRapportageDPA(month, year);
                    request.getSession().setAttribute("pat_in_cpn_res", res);
                    mav.addObject("listHeaderTitle",
                            "pmtct.menu.patientWhoMoisDeRapportageDPAIsTheCurrentMois");
                } else if (request.getParameter("type").equalsIgnoreCase("3")) {
                    res = pmtct.getCouplesDiscordant();
                    request.getSession().setAttribute("pat_in_cpn_res", res);
                    mav.addObject("listHeaderTitle", "pmtct.menu.couplesDiscordant");
                }
            }

            for (int i = 0; i < PMTCTConfigurationUtils.getNumberOfRecordPerPage(); i++) {
                if (res.size() == 0)
                    break;
                if (i >= res.size() - 1) {
                    result.add(res.get(i));
                    break;
                } else
                    result.add(res.get(i));
            }

            //paging
            int n = (res.size() == ((int) (res.size() / PMTCTConfigurationUtils.getNumberOfRecordPerPage()))
                    * PMTCTConfigurationUtils.getNumberOfRecordPerPage())
                            ? (res.size() / PMTCTConfigurationUtils.getNumberOfRecordPerPage())
                            : ((int) (res.size() / PMTCTConfigurationUtils.getNumberOfRecordPerPage())) + 1;
            numberOfPages = new ArrayList<Integer>();
            for (int i = 1; i <= n; i++) {
                numberOfPages.add(i);
            }
            request.getSession().setAttribute("pat_in_cpn_numberOfPages", numberOfPages);
        } else {
            res = (List<Object>) request.getSession().getAttribute("pat_in_cpn_res");
            numberOfPages = (List<Integer>) request.getSession().getAttribute("pat_in_cpn_numberOfPages");
            for (int i = (PMTCTConfigurationUtils.getNumberOfRecordPerPage()
                    * (Integer.parseInt(pageNumber) - 1)); i < PMTCTConfigurationUtils
                            .getNumberOfRecordPerPage() * (Integer.parseInt(pageNumber)); i++) {
                if (i >= res.size())
                    break;
                else
                    result.add(res.get(i));
            }
        }

        //page infos
        Object[] pagerInfos = new Object[3];
        pagerInfos[0] = (res.size() == 0) ? 0
                : (PMTCTConfigurationUtils.getNumberOfRecordPerPage() * (Integer.parseInt(pageNumber) - 1)) + 1;
        pagerInfos[1] = (PMTCTConfigurationUtils.getNumberOfRecordPerPage()
                * (Integer.parseInt(pageNumber)) <= res.size())
                        ? PMTCTConfigurationUtils.getNumberOfRecordPerPage() * (Integer.parseInt(pageNumber))
                        : res.size();
        pagerInfos[2] = res.size();

        ApplicationContext appContext = ContextProvider.getApplicationContext();

        mav.addObject("pageInfos", appContext.getMessage("pmtct.pagingInfo.showingResults", pagerInfos,
                Context.getUserContext().getLocale()));
        mav.addObject("numberOfPages", numberOfPages);
        mav.addObject("patientList", result);
        mav.addObject("pageSize", PMTCTConfigurationUtils.getNumberOfRecordPerPage());
        mav.addObject("startDate", startDate);
        mav.addObject("endDate", endDate);

        mav.addObject("hivTestResultId", PMTCTConstants.RESULT_OF_HIV_TEST);
        mav.addObject("dpaId", PMTCTConstants.PREGNANT_DUE_DATE);
        mav.addObject("dateOfConfinementId", PMTCTConstants.DATE_OF_CONFINEMENT);
        mav.addObject("positiveId", PMTCTConstants.POSITIVE);

        List<Integer> years = new ArrayList<Integer>();
        for (int yr = 2000; yr < 2016; yr++)
            years.add(yr);
        mav.addObject("years", years);

        FileExporter fexp = new FileExporter();

        if (request.getParameter("export") != null
                && request.getParameter("export").compareToIgnoreCase("csv") == 0) {
            if (request.getParameter("type").equalsIgnoreCase("1"))
                fexp.exportGeneralStatisticsInCPNToCSVFile(request, response, res,
                        "list_of_patients_in_CPN.csv", "List of Patients in CPN");
            else if (request.getParameter("type").equalsIgnoreCase("2")) {
                fexp.exportToCSVFile(request, response, res,
                        "list_of_patients_in_CPN_DPA_" + month + "_" + year + ".csv",
                        "List of Patients in CPN(DPA=" + month + "-" + year + ")");
            } else if (request.getParameter("type").equalsIgnoreCase("3"))
                fexp.exportToCSVFile(request, response, res, "couples_discordants.csv", "Couples discordants");
        }
    } catch (Exception ex) {
        request.getSession().setAttribute(WebConstants.OPENMRS_ERROR_ATTR,
                "An error occured when trying to load data. Find the error in the log file.");
        log.error("An error occured when trying to load data from database: \n" + ex.getMessage());
        ex.printStackTrace();
    }
    return mav;
}

From source file:org.openmrs.module.pmtct.web.controller.PmtctInfantStatController.java

/**
 * @see org.springframework.web.servlet.mvc.ParameterizableViewController#handleRequestInternal(javax.servlet.http.HttpServletRequest,
 *      javax.servlet.http.HttpServletResponse)
 *///from   www.j  av  a  2s.c o  m
@Override
protected ModelAndView handleRequestInternal(HttpServletRequest request, HttpServletResponse response)
        throws Exception {
    ModelAndView mav = new ModelAndView();
    mav.setViewName(getViewName());

    PmtctService pmtct;
    List<Object> result = new ArrayList<Object>();
    String pageNumber = request.getParameter("page");

    String startDate = "";

    String endDate = "";

    int infantTestSelect = -1, year = -1, month = -1;

    List<Object> res;

    List<Integer> numberOfPages;

    //      config = PMTCTConfiguration.getInstance(request.getRealPath(PMTCTConstants.CONFIGURATION_FILE_LOC));
    //      constants = config.getListOfConstants().get(0);
    //      request.getSession().setAttribute("enableModification", "" + config.isModificationEnabled());

    request.getSession().setAttribute("pmtctModuleConfigured", "" + PMTCTConfigurationUtils.isConfigured());

    try {
        if (null != request.getParameter("startDate") && "" != request.getParameter("startDate").trim()) {
            startDate = request.getParameter("startDate").trim();
        }
        if (null != request.getParameter("endDate") && "" != request.getParameter("endDate").trim()) {
            endDate = request.getParameter("endDate").trim();
        }
        if (null != request.getParameter("infantTestSelect")
                && "" != request.getParameter("infantTestSelect").trim()) {
            infantTestSelect = Integer.parseInt(request.getParameter("infantTestSelect").trim());
        }
        if (null != request.getParameter("year") && "" != request.getParameter("year").trim()) {
            year = Integer.parseInt(request.getParameter("year").trim());
        }
        if (null != request.getParameter("month") && "" != request.getParameter("month").trim()) {
            month = Integer.parseInt(request.getParameter("month").trim());
        }
        //      }
        //      catch (Exception ex) {
        //         log.error("An error occured when trying to get parameters: \n");
        //         ex.printStackTrace();
        //      }
        //      
        //      try {
        if (pageNumber.compareToIgnoreCase("1") == 0 || pageNumber.compareToIgnoreCase("") == 0) {
            pmtct = Context.getService(PmtctService.class);
            //            pmtct.setPMTCTProgrmaId(config.getConstants());
            res = new ArrayList<Object>();

            mav.addObject("monthsList", monthsList);

            if (request.getParameter("category").equalsIgnoreCase("child")) {
                if (request.getParameter("type").compareTo("1") == 0) {
                    if (startDate.compareTo("") != 0 && endDate.compareTo("") != 0) {
                        res = pmtct.getGeneralStatForInfantTests(startDate, endDate);
                        request.getSession().setAttribute("inf_stat_res", res);
                    }
                    mav.addObject("listHeaderTitle", "pmtct.menu.childTestResumePerPeriod");
                } else if (request.getParameter("type").compareTo("2") == 0) {
                    res = pmtct.getExpectedPatientsInPCR();
                    request.getSession().setAttribute("inf_stat_res", res);
                    mav.addObject("listHeaderTitle", "pmtct.menu.expectedChildInPCR");
                } else if (request.getParameter("type").compareTo("3") == 0) {
                    res = pmtct.getExpectedPatientsForSerologyAt9Months();
                    request.getSession().setAttribute("inf_stat_res", res);
                    mav.addObject("listHeaderTitle", "pmtct.menu.expectedChildInSerologyFor9Month");
                } else if (request.getParameter("type").compareTo("4") == 0) {
                    res = pmtct.getExpectedPatientsForSerologyAt18Months();
                    request.getSession().setAttribute("inf_stat_res", res);
                    mav.addObject("listHeaderTitle", "pmtct.menu.expectedChildInSerologyFor18Month");
                } else if (request.getParameter("type").compareTo("5") == 0) {
                    res = pmtct.getInfantByMoisDeRapportageByInfantTest(month, year, infantTestSelect);
                    request.getSession().setAttribute("inf_stat_res", res);
                    mav.addObject("listHeaderTitle", "pmtct.menu.moisDeRapportageInfantTests");
                }
            }

            for (int i = 0; i < PMTCTConfigurationUtils.getNumberOfRecordPerPage(); i++) {
                if (res.size() == 0)
                    break;
                if (i >= res.size() - 1) {
                    result.add(res.get(i));
                    break;
                } else
                    result.add(res.get(i));
            }

            //paging
            int n = (res.size() == ((int) (res.size() / PMTCTConfigurationUtils.getNumberOfRecordPerPage()))
                    * PMTCTConfigurationUtils.getNumberOfRecordPerPage())
                            ? (res.size() / PMTCTConfigurationUtils.getNumberOfRecordPerPage())
                            : ((int) (res.size() / PMTCTConfigurationUtils.getNumberOfRecordPerPage())) + 1;
            numberOfPages = new ArrayList<Integer>();
            for (int i = 1; i <= n; i++) {
                numberOfPages.add(i);
            }
            request.getSession().setAttribute("inf_stat_numberOfPages", numberOfPages);
        } else {
            res = (List<Object>) request.getSession().getAttribute("inf_stat_res");
            numberOfPages = (List<Integer>) request.getSession().getAttribute("inf_stat_numberOfPages");
            for (int i = (PMTCTConfigurationUtils.getNumberOfRecordPerPage()
                    * (Integer.parseInt(pageNumber) - 1)); i < PMTCTConfigurationUtils
                            .getNumberOfRecordPerPage() * (Integer.parseInt(pageNumber)); i++) {
                if (i >= res.size())
                    break;
                else
                    result.add(res.get(i));
            }
        }

        //page infos
        Object[] pagerInfos = new Object[3];
        pagerInfos[0] = (res.size() == 0) ? 0
                : (PMTCTConfigurationUtils.getNumberOfRecordPerPage() * (Integer.parseInt(pageNumber) - 1)) + 1;
        pagerInfos[1] = (PMTCTConfigurationUtils.getNumberOfRecordPerPage()
                * (Integer.parseInt(pageNumber)) <= res.size())
                        ? PMTCTConfigurationUtils.getNumberOfRecordPerPage() * (Integer.parseInt(pageNumber))
                        : res.size();
        pagerInfos[2] = res.size();

        ApplicationContext appContext = ContextProvider.getApplicationContext();

        mav.addObject("pageInfos", appContext.getMessage("pmtct.pagingInfo.showingResults", pagerInfos,
                Context.getUserContext().getLocale()));
        mav.addObject("numberOfPages", numberOfPages);
        mav.addObject("patientList", result);
        mav.addObject("pageSize", PMTCTConfigurationUtils.getNumberOfRecordPerPage());
        mav.addObject("startDate", startDate);
        mav.addObject("endDate", endDate);
        mav.addObject("positiveId", PMTCTConstants.POSITIVE);
        mav.addObject("infantFeedingMethodId", PMTCTConstants.INFANT_FEEDING_METHOD);

        List<Integer> years = new ArrayList<Integer>();
        for (int yr = 2000; yr < 2016; yr++)
            years.add(yr);
        mav.addObject("years", years);

        FileExporter fexp = new FileExporter();

        if (request.getParameter("export") != null
                && request.getParameter("export").compareToIgnoreCase("csv") == 0) {
            if (request.getParameter("type").compareTo("1") == 0)
                fexp.exportInfantsTestResumeToCSVFile(request, response, res,
                        "general_statistics_for_infant_tests_from_" + startDate + "_to_" + endDate + ".csv",
                        "General Statistics for Infant Tests");
            else if (request.getParameter("type").compareTo("2") == 0)
                fexp.exportInfantsTestToCSVFile(request, response, res,
                        "list_of_expected_infants_for_pcr_test.csv", "List of Expected Infants for PCR Test");
            else if (request.getParameter("type").compareTo("3") == 0)
                fexp.exportInfantsTestToCSVFile(request, response, res,
                        "list_of_expected_infants_for_serology_test_at_9months.csv",
                        "List of Expected Infants for Serology Test at 9 months");
            else if (request.getParameter("type").compareTo("4") == 0)
                fexp.exportInfantsTestToCSVFile(request, response, res,
                        "list_of_expected_infants_for_serology_test_at_18months.csv",
                        "List of Expected Infants for Serology Test at 18 months");
            else if (request.getParameter("type").compareTo("5") == 0) {
                fexp.exportInfantsTestToCSVFile(request, response, res,
                        "list_of_infant_mois_de_rapportage_" + ((infantTestSelect == 1) ? "PCR"
                                : (infantTestSelect == 2) ? "Serology at 9 months" : "Serology at 18 months")
                                + "_" + month + "_" + year + ".csv",
                        "Infant mois de rapportage " + ((infantTestSelect == 1) ? "PCR"
                                : (infantTestSelect == 2) ? "Serology at 9 months" : "Serology at 18 months")
                                + " (" + month + "_" + year + ")");
            }
        }
    } catch (Exception ex) {
        request.getSession().setAttribute(WebConstants.OPENMRS_ERROR_ATTR,
                "An error occured when trying to load data. Find the error in the log file.");
        log.error("INFANTS STATISTICS : An error occured when trying to load data from database: \n"
                + ex.getMessage());
        ex.printStackTrace();
    }

    return mav;
}