OMElement script = fac.createOMElement("script", synNS);
String language = scriptMediator.getLanguage();
Value key = scriptMediator.getKey();
String function = scriptMediator.getFunction();
ValueSerializer keySerializer = new ValueSerializer();
if (key != null) {
script.addAttribute(fac.createOMAttribute("language", nullNS, language));
// Serialize Value using ValueSerializer
keySerializer.serializeValue(key, XMLConfigConstants.KEY, script);
if (!function.equals("mediate")) {
script.addAttribute(fac.createOMAttribute("function", nullNS, function));
}
} else {
script.addAttribute(fac.createOMAttribute("language", nullNS, language));
OMTextImpl textData = (OMTextImpl) fac.createOMText(
scriptMediator.getScriptSrc().trim());
textData.setType(XMLStreamConstants.CDATA);
script.addChild(textData);
}
Map<Value, Object> includeMap = scriptMediator.getIncludeMap();
for (Value includeKey : includeMap.keySet()) {
if (includeKey != null) {
OMElement includeKeyElement = fac.createOMElement("include", synNS);
// Serialize Value using ValueSerializer
keySerializer.serializeValue(includeKey, XMLConfigConstants.KEY, includeKeyElement);
script.addChild(includeKeyElement);
}
}