message.setProperty(CONTEXT_KEY, context);
    public void populateNormalizedMessage(NormalizedMessage message, JobExecutionContext context) throws JobExecutionException, MessagingException {        message.setProperty(CONTEXT_KEY, context);        JobDetail detail = context.getJobDetail();        message.setProperty(DETAIL_KEY, detail);        JobDataMap dataMap = detail.getJobDataMap();        for (Iterator iter = dataMap.entrySet().iterator(); iter.hasNext(); ) {            Map.Entry entry = (Map.Entry) iter.next();            String key = (String) entry.getKey();            Object value = entry.getValue();            message.setProperty(key, value);        }        try {            Document document = getTransformer().createDocument();            Element root = document.createElement("timer");            document.appendChild(root);            DOMUtil.addChildElement(root, "name", detail.getName());            DOMUtil.addChildElement(root, "group", detail.getGroup());            DOMUtil.addChildElement(root, "fullname", detail.getFullName());            DOMUtil.addChildElement(root, "description", detail.getDescription());            DOMUtil.addChildElement(root, "fireTime", context.getFireTime());            message.setContent(new DOMSource(document));        }        catch (ParserConfigurationException e) {            throw new MessagingException("Failed to create content: " + e, e);        }    }