protected String getMsgStyle(FacesContext facesContext, UIComponent component, Object msg)
     throws IOException {
   MessageForRender message = (MessageForRender) msg;
   SeverityAttributes severityAttributes = SEVERITY_MAP.get(message.getSeverity());
   String style = buildSeverityAttribute(component, null, severityAttributes.styleAttribute, ';');
   return style;
 }
  protected String getMsgClass(FacesContext facesContext, UIComponent component, Object msg)
      throws IOException {
    MessageForRender message = (MessageForRender) msg;
    SeverityAttributes severityAttributes = SEVERITY_MAP.get(message.getSeverity());

    boolean isMessages = (isComponentMessages(component));

    String styleClass =
        buildSeverityAttribute(
            component,
            (isMessages
                ? severityAttributes.messagesSkinClass
                : severityAttributes.messageSkinClass),
            severityAttributes.classAttribute,
            ' ');
    return styleClass;
  }
 protected void encodeMessage(FacesContext facesContext, UIComponent component, Object msg)
     throws IOException {
   // TODO fix generator to properly detect iteration variable type
   MessageForRender message = (MessageForRender) msg;
   String summary = message.getSummary();
   String detail = message.getDetail();
   boolean showSummary = true;
   boolean showDetail = false;
   boolean isMessages = false;
   if (isComponentMessage(component)) {
     UIMessage uiMessage = (UIMessage) component;
     showSummary = uiMessage.isShowSummary();
     showDetail = uiMessage.isShowDetail();
   } else if (isComponentMessages(component)) {
     UIMessages uiMessages = (UIMessages) component;
     showSummary = uiMessages.isShowSummary();
     showDetail = uiMessages.isShowDetail();
     isMessages = true;
   }
   ResponseWriter responseWriter = facesContext.getResponseWriter();
   // Message id
   responseWriter.writeAttribute(
       "id", component.getClientId() + ':' + message.getSourceId(), null);
   // tooltip
   boolean wroteTooltip = RendererUtils.getInstance().isBooleanAttribute(component, "tooltip");
   if (wroteTooltip && !Strings.isNullOrEmpty(summary)) {
     responseWriter.writeAttribute("title", summary, null);
   }
   if (!wroteTooltip && showSummary) {
     writeMessageLabel(responseWriter, summary, isMessages ? "rf-msgs-sum" : "rf-msg-sum");
   }
   if (showDetail) {
     writeMessageLabel(responseWriter, detail, isMessages ? "rf-msgs-det" : "rf-msg-det");
   }
   message.rendered();
 }