Search in sources :

Example 1 with Arg

use of org.apache.commons.validator.Arg in project sonarqube by SonarSource.

the class Resources method getMessage.

/**
     * Gets the <code>Locale</code> sensitive value based on the key passed
     * in.
     *
     * @param application     the servlet context
     * @param request         the servlet request
     * @param defaultMessages The default Message resources
     * @param locale          The locale
     * @param va              The Validator Action
     * @param field           The Validator Field
     */
public static String getMessage(ServletContext application, HttpServletRequest request, MessageResources defaultMessages, Locale locale, ValidatorAction va, Field field) {
    Msg msg = field.getMessage(va.getName());
    if ((msg != null) && !msg.isResource()) {
        return msg.getKey();
    }
    String msgKey = null;
    String msgBundle = null;
    MessageResources messages = defaultMessages;
    if (msg == null) {
        msgKey = va.getMsg();
    } else {
        msgKey = msg.getKey();
        msgBundle = msg.getBundle();
        if (msg.getBundle() != null) {
            messages = getMessageResources(application, request, msg.getBundle());
        }
    }
    if ((msgKey == null) || (msgKey.length() == 0)) {
        return "??? " + va.getName() + "." + field.getProperty() + " ???";
    }
    // Get the arguments
    Arg[] args = field.getArgs(va.getName());
    String[] argValues = getArgValues(application, request, messages, locale, args);
    // Return the message
    return messages.getMessage(locale, msgKey, argValues);
}
Also used : Msg(org.apache.commons.validator.Msg) MessageResources(org.apache.struts.util.MessageResources) Arg(org.apache.commons.validator.Arg)

Example 2 with Arg

use of org.apache.commons.validator.Arg in project sonarqube by SonarSource.

the class Resources method getActionMessage.

/**
     * Gets the <code>ActionMessage</code> based on the
     * <code>ValidatorAction</code> message and the <code>Field</code>'s arg
     * objects.
     *
     * @param validator the Validator
     * @param request   the servlet request
     * @param va        Validator action
     * @param field     the validator Field
     */
public static ActionMessage getActionMessage(Validator validator, HttpServletRequest request, ValidatorAction va, Field field) {
    Msg msg = field.getMessage(va.getName());
    if ((msg != null) && !msg.isResource()) {
        return new ActionMessage(msg.getKey(), false);
    }
    String msgKey = null;
    String msgBundle = null;
    if (msg == null) {
        msgKey = va.getMsg();
    } else {
        msgKey = msg.getKey();
        msgBundle = msg.getBundle();
    }
    if ((msgKey == null) || (msgKey.length() == 0)) {
        return new ActionMessage("??? " + va.getName() + "." + field.getProperty() + " ???", false);
    }
    ServletContext application = (ServletContext) validator.getParameterValue(SERVLET_CONTEXT_PARAM);
    MessageResources messages = getMessageResources(application, request, msgBundle);
    Locale locale = RequestUtils.getUserLocale(request, null);
    Arg[] args = field.getArgs(va.getName());
    String[] argValues = getArgValues(application, request, messages, locale, args);
    ActionMessage actionMessage = null;
    if (msgBundle == null) {
        actionMessage = new ActionMessage(msgKey, argValues);
    } else {
        String message = messages.getMessage(locale, msgKey, argValues);
        actionMessage = new ActionMessage(message, false);
    }
    return actionMessage;
}
Also used : Msg(org.apache.commons.validator.Msg) Locale(java.util.Locale) MessageResources(org.apache.struts.util.MessageResources) Arg(org.apache.commons.validator.Arg) ActionMessage(org.apache.struts.action.ActionMessage) ServletContext(javax.servlet.ServletContext)

Aggregations

Arg (org.apache.commons.validator.Arg)2 Msg (org.apache.commons.validator.Msg)2 MessageResources (org.apache.struts.util.MessageResources)2 Locale (java.util.Locale)1 ServletContext (javax.servlet.ServletContext)1 ActionMessage (org.apache.struts.action.ActionMessage)1