package com.fp.base.persistence.util.helper; import com.fp.common.messages.MessageUtil; import com.fp.dto.Request; import com.fp.persistence.commondb.PersistenceHelper; import com.fp.persistence.pgeneral.message.TgeneMessageTemplatesDesc; import com.fp.persistence.pgeneral.message.TgeneMessageTemplatesDescKey; import com.fp.persistence.pgeneral.trans.TgeneTransaction; /** * Clase que encarga de completar plantillas de mesajes. * * @author Jorge Vaca. * @version 2.1 */ public class MessageManager { /** * Verifica que la transaccion tienga definida una plantilla de mensajes, busca el template de mensaje y compelta * informacion dado el request. * * @param request Datos del mensaje de entrada. * @return String * @throws Exception */ public static String getMessage(Request request) throws Exception { // Fija datos del subject de la agenda, si no tiene un valor previo y el codigo de plantilla de mensaje es String message = ""; if ((request.mbeans == null) || !request.mbeans.containsKey("tgenetransaction")) { return message; } Integer messagecode = ((TgeneTransaction) request.mbeans.get("tgenetransaction")).getMessagecode(); if (messagecode != null) { MessageDescriptions md = new MessageDescriptions(); TgeneMessageTemplatesDescKey key = new TgeneMessageTemplatesDescKey(messagecode, request.getLanguage()); TgeneMessageTemplatesDesc msg = TgeneMessageTemplatesDesc.find(PersistenceHelper.getEntityManager(), key); MessageUtil mu = new MessageUtil("es", msg.getTemplate()); mu.setValue("request", request); mu.setValue("messagedescripciones", md); message = mu.getMessage(); } return message; } }