return LOG_Q;
}
public Mediator createMediator(OMElement elem) {
TransformMediator transformMediator = new TransformMediator();
OMAttribute attXslt = elem.getAttribute(new QName(Constants.NULL_NAMESPACE, "xslt"));
OMAttribute attXQuery = elem.getAttribute(new QName(Constants.NULL_NAMESPACE, "xquery"));
OMAttribute attSource = elem.getAttribute(new QName(Constants.NULL_NAMESPACE, "source"));
if (attXslt != null) {
try {
transformMediator.setXsltUrl(new URL(attXslt.getAttributeValue()));
} catch (MalformedURLException e) {
String msg = "Invalid URL specified for the xslt attribute : " + attXslt.getAttributeValue();
log.error(msg);
throw new SynapseException(msg);
}
} else if (attXQuery != null) {
try {
transformMediator.setXQueryUrl(new URL(attXQuery.getAttributeValue()));
} catch (MalformedURLException e) {
String msg = "Invalid URL specified for the xquery attribute : " + attXQuery.getAttributeValue();
log.error(msg);
throw new SynapseException(msg);
}
} else {
String msg = "The 'xslt' or 'xquery' attributes are required for the Transform mediator";
log.error(msg);
throw new SynapseException(msg);
}
if (attSource != null) {
try {
AXIOMXPath xp = new AXIOMXPath(attSource.getAttributeValue());
Util.addNameSpaces(xp, elem, log);
transformMediator.setSource(xp);
} catch (JaxenException e) {
String msg = "Invalid XPath specified for the source attribute : " + attSource.getAttributeValue();
log.error(msg);
throw new SynapseException(msg);
}
}
transformMediator.addAllProperties(MediatorPropertyFactory.getMediatorProperties(elem));
return transformMediator;
}