提交 839e9461 编写于 作者: A Arjen Poutsma

SWS-548 - Expose suppressNamespace and suppressXSIType as properties to CastorMarshaller

上级 60112097
......@@ -104,6 +104,10 @@ public class CastorMarshaller extends AbstractMarshaller implements Initializing
private XMLContext xmlContext;
private boolean suppressNamespaces = false;
private boolean suppressXsiType = false;
/**
* Set the encoding to be used for stream access.
......@@ -180,6 +184,35 @@ public class CastorMarshaller extends AbstractMarshaller implements Initializing
this.namespaceMappings = namespaceMappings;
}
/** Returns whether this marshaller should output namespaces. */
public boolean isSuppressNamespaces() {
return suppressNamespaces;
}
/**
* Sets whether this marshaller should output namespaces. The default is {@code false}, i.e. namespaces are
* written.
*
* @see org.exolab.castor.xml.Marshaller#setSuppressNamespaces(boolean)
*/
public void setSuppressNamespaces(boolean suppressNamespaces) {
this.suppressNamespaces = suppressNamespaces;
}
/** Sets whether this marshaller should output the xsi:type attribute. */
public boolean isSuppressXsiType() {
return suppressXsiType;
}
/**
* Sets whether this marshaller should output the {@code xsi:type} attribute. The default is {@code false}, i.e. the
* {@code xsi:type} is written.
*
* @see org.exolab.castor.xml.Marshaller#setSuppressXSIType(boolean)
*/
public void setSuppressXsiType(boolean suppressXsiType) {
this.suppressXsiType = suppressXsiType;
}
public final void afterPropertiesSet() throws CastorMappingException, IOException {
......@@ -296,6 +329,8 @@ public class CastorMarshaller extends AbstractMarshaller implements Initializing
*/
protected void customizeMarshaller(Marshaller marshaller) {
marshaller.setValidation(this.validating);
marshaller.setSuppressNamespaces(isSuppressNamespaces());
marshaller.setSuppressXSIType(isSuppressXsiType());
if (this.namespaceMappings != null) {
for (Map.Entry<String, String> entry : namespaceMappings.entrySet()) {
marshaller.setNamespaceMapping(entry.getKey(), entry.getValue());
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册