public class ValidatingMarshalRecord extends MarshalRecord<Marshaller>
Modifier and Type | Class and Description |
---|---|
static class |
ValidatingMarshalRecord.MarshalSAXParseException |
MarshalRecord.CycleDetectionStack<E>
XMLRecord.Nil
DEFAULT_ATTRIBUTE_GROUP, NIL
Constructor and Description |
---|
ValidatingMarshalRecord(MarshalRecord marshalRecord,
XMLMarshaller xmlMarshaller) |
Modifier and Type | Method and Description |
---|---|
void |
add(CoreField key,
java.lang.Object value)
INTERNAL:
Add the field-value pair to the document.
|
java.util.List<Namespace> |
addExtraNamespacesToNamespaceResolver(Descriptor descriptor,
CoreAbstractSession session,
boolean allowOverride,
boolean ignoreEqualResolvers) |
void |
addGroupingElement(XPathNode xPathNode)
INTERNAL:
If an XPathNode does not have an associated NodeValue then add it to the
MarshalRecord as a grouping element.
|
boolean |
addXsiTypeAndClassIndicatorIfRequired(Descriptor xmlDescriptor,
Descriptor referenceDescriptor,
Field xmlField,
boolean isRootElement) |
boolean |
addXsiTypeAndClassIndicatorIfRequired(Descriptor xmlDescriptor,
Descriptor referenceDescriptor,
Field xmlField,
java.lang.Object originalObject,
java.lang.Object obj,
boolean wasXMLRoot,
boolean isRootElement)
INTERNAL
|
void |
afterContainmentMarshal(java.lang.Object parent,
java.lang.Object child) |
void |
attribute(java.lang.String namespaceURI,
java.lang.String localName,
java.lang.String qName,
java.lang.String value)
Receive notification of an attribute.
|
void |
attribute(XPathFragment xPathFragment,
NamespaceResolver namespaceResolver,
java.lang.String value)
Receive notification of an attribute.
|
void |
attributeWithoutQName(java.lang.String namespaceURI,
java.lang.String localName,
java.lang.String prefix,
java.lang.String value) |
void |
beforeContainmentMarshal(java.lang.Object child) |
void |
cdata(java.lang.String value)
Receive notification of character data to be wrapped in a CDATA node.
|
void |
characters(java.lang.String value)
Receive notification of character data.
|
void |
clear() |
void |
closeStartElement()
Receive notification that all of the attribute events have occurred for
the most recent element that has been started.
|
void |
closeStartGroupingElements(XPathFragment groupingFragment) |
void |
element(XPathFragment frag)
Receive notification of an element.
|
void |
endDocument()
Recieve notification that a document is being ended.
|
void |
endElement(XPathFragment xPathFragment,
NamespaceResolver namespaceResolver)
Receive notification that an element is being ended.
|
void |
endPrefixMapping(java.lang.String prefix)
Receive notification that the scope of this namespace declaration has
ended.
|
void |
endPrefixMappings(NamespaceResolver namespaceResolver) |
org.w3c.dom.Document |
getDocument() |
org.w3c.dom.Node |
getDOM() |
java.lang.String |
getLocalName() |
Marshaller |
getMarshaller() |
NamespaceResolver |
getNamespaceResolver() |
java.lang.String |
getNamespaceURI() |
java.lang.Object |
getOwningObject() |
java.util.HashMap |
getPositionalNodes() |
CoreAbstractSession |
getSession() |
boolean |
isXOPPackage() |
void |
namespaceDeclarations(NamespaceResolver namespaceResolver)
INTERNAL:
Add the namespace declarations to the XML document.
|
void |
node(org.w3c.dom.Node node,
NamespaceResolver resolver,
java.lang.String uri,
java.lang.String name)
Receive notification of a node.
|
void |
openStartElement(XPathFragment xPathFragment,
NamespaceResolver namespaceResolver)
Receive notification that an element is being started.
|
XPathFragment |
openStartGroupingElements(NamespaceResolver namespaceResolver)
INTERNAL:
Trigger that the grouping elements should be written.
|
java.lang.Object |
put(CoreField key,
java.lang.Object value)
INTERNAL:
Add the field-value pair to the document.
|
void |
removeExtraNamespacesFromNamespaceResolver(java.util.List<Namespace> extraNamespaces,
CoreAbstractSession session) |
void |
removeGroupingElement(XPathNode xPathNode)
INTERNAL:
|
java.lang.String |
resolveNamespacePrefix(java.lang.String prefix) |
void |
setLeafElementType(javax.xml.namespace.QName type) |
void |
setMarshaller(Marshaller marshaller) |
void |
setNamespaceResolver(NamespaceResolver nr) |
void |
setOwningObject(java.lang.Object obj) |
void |
setSession(CoreAbstractSession session) |
void |
setXOPPackage(boolean isXOPPackage) |
void |
startDocument(java.lang.String encoding,
java.lang.String version)
Receive notification that a document is being started.
|
void |
startPrefixMapping(java.lang.String prefix,
java.lang.String namespaceURI)
Receive notification that a namespace has been declared.
|
void |
startPrefixMappings(NamespaceResolver namespaceResolver) |
java.lang.String |
transformToXML() |
void |
writeHeader()
INTERNAL
Writes the header, if appropriate.
|
void |
writeXsiTypeAttribute(Descriptor descriptor,
java.lang.String typeUri,
java.lang.String typeLocal,
java.lang.String typePrefix,
boolean addToNamespaceResolver) |
void |
writeXsiTypeAttribute(Descriptor xmlDescriptor,
XMLSchemaReference xmlRef,
boolean addToNamespaceResolver) |
attribute, characters, defaultNamespaceDeclaration, emptyAttribute, emptyCollection, emptyComplex, emptySimple, endCollection, flush, forceValueWrapper, getCurrentAttributeGroup, getCycleDetectionStack, getGroupingElements, getTextWrapperFragment, getValueToWrite, isWrapperAsCollectionName, marshalWithoutRootElement, namespaceDeclaration, nilComplex, nilSimple, node, popAttributeGroup, predicateAttribute, pushAttributeGroup, setGroupingElement, startCollection
getConversionManager, getLeafElementType, getNamespaceSeparator, hasCustomNamespaceMapper, hasEqualNamespaceResolvers, isNamespaceAware, setCustomNamespaceMapper, setEqualNamespaceResolvers, setLeafElementType
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
hasCustomNamespaceMapper
getLeafElementType, hasEqualNamespaceResolvers, isNamespaceAware, setCustomNamespaceMapper, setEqualNamespaceResolvers, setLeafElementType
getConversionManager, getNamespaceSeparator
public ValidatingMarshalRecord(MarshalRecord marshalRecord, XMLMarshaller xmlMarshaller)
public void startDocument(java.lang.String encoding, java.lang.String version)
MarshalRecord
startDocument
in class MarshalRecord<Marshaller>
encoding
- The XML document will be encoded using this encoding.version
- This specifies the version of XML.public void endDocument()
MarshalRecord
endDocument
in class MarshalRecord<Marshaller>
public void element(XPathFragment frag)
MarshalRecord
element
in class MarshalRecord<Marshaller>
frag
- The XPathFragment of the elementpublic void attribute(XPathFragment xPathFragment, NamespaceResolver namespaceResolver, java.lang.String value)
MarshalRecord
attribute
in interface MarshalRecord<CoreAbstractSession,CoreField,Marshaller,NamespaceResolver>
attribute
in class MarshalRecord<Marshaller>
xPathFragment
- The XPathFragment contains the name and prefix
information about the XML element being ended.namespaceResolver
- The NamespaceResolver can be used to resolve the
namespace URI for the namespace prefix held by the XPathFragment (if
required).value
- This is the complete value for the attribute.public void attribute(java.lang.String namespaceURI, java.lang.String localName, java.lang.String qName, java.lang.String value)
MarshalRecord
attribute
in interface AbstractMarshalRecord<CoreAbstractSession,CoreField,Marshaller,NamespaceResolver>
attribute
in interface MarshalRecord<CoreAbstractSession,CoreField,Marshaller,NamespaceResolver>
attribute
in class MarshalRecord<Marshaller>
namespaceURI
- The namespace URI, if the attribute is not namespace
qualified the value of this parameter wil be null.localName
- The local name of the attribute.qName
- The qualified name of the attribute.value
- This is the complete value for the attribute.public void closeStartElement()
MarshalRecord
closeStartElement
in interface MarshalRecord<CoreAbstractSession,CoreField,Marshaller,NamespaceResolver>
closeStartElement
in class MarshalRecord<Marshaller>
public void endElement(XPathFragment xPathFragment, NamespaceResolver namespaceResolver)
MarshalRecord
endElement
in interface MarshalRecord<CoreAbstractSession,CoreField,Marshaller,NamespaceResolver>
endElement
in class MarshalRecord<Marshaller>
xPathFragment
- The XPathFragment contains the name and prefix
information about the XML element being ended.namespaceResolver
- The NamespaceResolver can be used to resolve the
namespace URI for the namespace prefix held by the XPathFragment (if
required).public java.util.HashMap getPositionalNodes()
getPositionalNodes
in class MarshalRecord<Marshaller>
public void addGroupingElement(XPathNode xPathNode)
MarshalRecord
addGroupingElement
in interface MarshalRecord<CoreAbstractSession,CoreField,Marshaller,NamespaceResolver>
addGroupingElement
in class MarshalRecord<Marshaller>
public void removeGroupingElement(XPathNode xPathNode)
MarshalRecord
removeGroupingElement
in interface MarshalRecord<CoreAbstractSession,CoreField,Marshaller,NamespaceResolver>
removeGroupingElement
in class MarshalRecord<Marshaller>
public void add(CoreField key, java.lang.Object value)
MarshalRecord
add
in interface MarshalRecord<CoreAbstractSession,CoreField,Marshaller,NamespaceResolver>
add
in class MarshalRecord<Marshaller>
public java.lang.Object put(CoreField key, java.lang.Object value)
MarshalRecord
put
in interface AbstractMarshalRecord<CoreAbstractSession,CoreField,Marshaller,NamespaceResolver>
put
in class MarshalRecord<Marshaller>
public void namespaceDeclarations(NamespaceResolver namespaceResolver)
MarshalRecord
namespaceDeclarations
in class MarshalRecord<Marshaller>
namespaceResolver
- The NamespaceResolver contains the namespace
prefix and URI pairings that need to be declared.public void startPrefixMapping(java.lang.String prefix, java.lang.String namespaceURI)
MarshalRecord
startPrefixMapping
in interface MarshalRecord<CoreAbstractSession,CoreField,Marshaller,NamespaceResolver>
startPrefixMapping
in class MarshalRecord<Marshaller>
prefix
- The namespace prefix.namespaceURI
- The namespace URI.public void startPrefixMappings(NamespaceResolver namespaceResolver)
startPrefixMappings
in class MarshalRecord<Marshaller>
public void endPrefixMapping(java.lang.String prefix)
MarshalRecord
endPrefixMapping
in interface MarshalRecord<CoreAbstractSession,CoreField,Marshaller,NamespaceResolver>
endPrefixMapping
in class MarshalRecord<Marshaller>
prefix
- The namespace prefix.public void endPrefixMappings(NamespaceResolver namespaceResolver)
endPrefixMappings
in class MarshalRecord<Marshaller>
public void openStartElement(XPathFragment xPathFragment, NamespaceResolver namespaceResolver)
MarshalRecord
openStartElement
in interface MarshalRecord<CoreAbstractSession,CoreField,Marshaller,NamespaceResolver>
openStartElement
in class MarshalRecord<Marshaller>
xPathFragment
- The XPathFragment contains the name and prefix
information about the XML element being ended.namespaceResolver
- The NamespaceResolver can be used to resolve the
namespace URI for the namespace prefix held by the XPathFragment (if
required).public XPathFragment openStartGroupingElements(NamespaceResolver namespaceResolver)
MarshalRecord
openStartGroupingElements
in interface MarshalRecord<CoreAbstractSession,CoreField,Marshaller,NamespaceResolver>
openStartGroupingElements
in class MarshalRecord<Marshaller>
namespaceResolver
- The NamespaceResolver can be used to resolve the
namespace URI for the namespace prefix held by the XPathFragment (if
required).public void closeStartGroupingElements(XPathFragment groupingFragment)
closeStartGroupingElements
in interface MarshalRecord<CoreAbstractSession,CoreField,Marshaller,NamespaceResolver>
closeStartGroupingElements
in class MarshalRecord<Marshaller>
public void characters(java.lang.String value)
MarshalRecord
characters
in interface MarshalRecord<CoreAbstractSession,CoreField,Marshaller,NamespaceResolver>
characters
in class MarshalRecord<Marshaller>
value
- This is the entire value of the text node.public void cdata(java.lang.String value)
MarshalRecord
cdata
in interface MarshalRecord<CoreAbstractSession,CoreField,Marshaller,NamespaceResolver>
cdata
in class MarshalRecord<Marshaller>
value
- This is the value of the text to be wrappedpublic void node(org.w3c.dom.Node node, NamespaceResolver resolver, java.lang.String uri, java.lang.String name)
MarshalRecord
node
in class MarshalRecord<Marshaller>
node
- The Node to be added to the documentresolver
- The NamespaceResolver can be used to resolve theuri
- replacement root name for the nodename
- replacement root namespace for the node
namespace URI/prefix of the nodepublic java.lang.String getLocalName()
getLocalName
in class MarshalRecord<Marshaller>
public java.lang.String getNamespaceURI()
getNamespaceURI
in class MarshalRecord<Marshaller>
public void clear()
clear
in class MarshalRecord<Marshaller>
public org.w3c.dom.Document getDocument()
getDocument
in class MarshalRecord<Marshaller>
public org.w3c.dom.Node getDOM()
getDOM
in interface AbstractMarshalRecord<CoreAbstractSession,CoreField,Marshaller,NamespaceResolver>
getDOM
in class MarshalRecord<Marshaller>
public java.lang.String transformToXML()
transformToXML
in class MarshalRecord<Marshaller>
public java.lang.String resolveNamespacePrefix(java.lang.String prefix)
resolveNamespacePrefix
in interface AbstractMarshalRecord<CoreAbstractSession,CoreField,Marshaller,NamespaceResolver>
resolveNamespacePrefix
in class AbstractMarshalRecordImpl<CoreAbstractSession,CoreField,Marshaller,NamespaceResolver>
public Marshaller getMarshaller()
getMarshaller
in interface AbstractMarshalRecord<CoreAbstractSession,CoreField,Marshaller,NamespaceResolver>
getMarshaller
in class AbstractMarshalRecordImpl<CoreAbstractSession,CoreField,Marshaller,NamespaceResolver>
public void setMarshaller(Marshaller marshaller)
setMarshaller
in interface AbstractMarshalRecord<CoreAbstractSession,CoreField,Marshaller,NamespaceResolver>
setMarshaller
in interface MarshalRecord<CoreAbstractSession,CoreField,Marshaller,NamespaceResolver>
setMarshaller
in class AbstractMarshalRecordImpl<CoreAbstractSession,CoreField,Marshaller,NamespaceResolver>
public java.lang.Object getOwningObject()
getOwningObject
in interface AbstractMarshalRecord<CoreAbstractSession,CoreField,Marshaller,NamespaceResolver>
getOwningObject
in class AbstractMarshalRecordImpl<CoreAbstractSession,CoreField,Marshaller,NamespaceResolver>
public void setOwningObject(java.lang.Object obj)
setOwningObject
in interface AbstractMarshalRecord<CoreAbstractSession,CoreField,Marshaller,NamespaceResolver>
setOwningObject
in class AbstractMarshalRecordImpl<CoreAbstractSession,CoreField,Marshaller,NamespaceResolver>
public void setLeafElementType(javax.xml.namespace.QName type)
setLeafElementType
in interface AbstractMarshalRecord<CoreAbstractSession,CoreField,Marshaller,NamespaceResolver>
setLeafElementType
in interface MarshalRecord<CoreAbstractSession,CoreField,Marshaller,NamespaceResolver>
setLeafElementType
in class AbstractMarshalRecordImpl<CoreAbstractSession,CoreField,Marshaller,NamespaceResolver>
public void setNamespaceResolver(NamespaceResolver nr)
setNamespaceResolver
in interface AbstractMarshalRecord<CoreAbstractSession,CoreField,Marshaller,NamespaceResolver>
setNamespaceResolver
in class AbstractMarshalRecordImpl<CoreAbstractSession,CoreField,Marshaller,NamespaceResolver>
public NamespaceResolver getNamespaceResolver()
getNamespaceResolver
in interface AbstractMarshalRecord<CoreAbstractSession,CoreField,Marshaller,NamespaceResolver>
getNamespaceResolver
in class AbstractMarshalRecordImpl<CoreAbstractSession,CoreField,Marshaller,NamespaceResolver>
public CoreAbstractSession getSession()
getSession
in interface XMLRecord<CoreAbstractSession>
getSession
in class AbstractMarshalRecordImpl<CoreAbstractSession,CoreField,Marshaller,NamespaceResolver>
public void setSession(CoreAbstractSession session)
setSession
in interface AbstractMarshalRecord<CoreAbstractSession,CoreField,Marshaller,NamespaceResolver>
setSession
in class MarshalRecord<Marshaller>
public boolean isXOPPackage()
isXOPPackage
in interface AbstractMarshalRecord<CoreAbstractSession,CoreField,Marshaller,NamespaceResolver>
isXOPPackage
in interface MarshalRecord<CoreAbstractSession,CoreField,Marshaller,NamespaceResolver>
isXOPPackage
in class AbstractMarshalRecordImpl<CoreAbstractSession,CoreField,Marshaller,NamespaceResolver>
public void beforeContainmentMarshal(java.lang.Object child)
beforeContainmentMarshal
in interface MarshalRecord<CoreAbstractSession,CoreField,Marshaller,NamespaceResolver>
beforeContainmentMarshal
in class MarshalRecord<Marshaller>
public void afterContainmentMarshal(java.lang.Object parent, java.lang.Object child)
afterContainmentMarshal
in interface MarshalRecord<CoreAbstractSession,CoreField,Marshaller,NamespaceResolver>
afterContainmentMarshal
in class MarshalRecord<Marshaller>
public void writeHeader()
MarshalRecord
writeHeader
in class MarshalRecord<Marshaller>
public java.util.List<Namespace> addExtraNamespacesToNamespaceResolver(Descriptor descriptor, CoreAbstractSession session, boolean allowOverride, boolean ignoreEqualResolvers)
addExtraNamespacesToNamespaceResolver
in interface AbstractMarshalRecord<CoreAbstractSession,CoreField,Marshaller,NamespaceResolver>
addExtraNamespacesToNamespaceResolver
in class AbstractMarshalRecordImpl<CoreAbstractSession,CoreField,Marshaller,NamespaceResolver>
public void removeExtraNamespacesFromNamespaceResolver(java.util.List<Namespace> extraNamespaces, CoreAbstractSession session)
removeExtraNamespacesFromNamespaceResolver
in interface AbstractMarshalRecord<CoreAbstractSession,CoreField,Marshaller,NamespaceResolver>
removeExtraNamespacesFromNamespaceResolver
in interface MarshalRecord<CoreAbstractSession,CoreField,Marshaller,NamespaceResolver>
removeExtraNamespacesFromNamespaceResolver
in class AbstractMarshalRecordImpl<CoreAbstractSession,CoreField,Marshaller,NamespaceResolver>
public void attributeWithoutQName(java.lang.String namespaceURI, java.lang.String localName, java.lang.String prefix, java.lang.String value)
attributeWithoutQName
in interface AbstractMarshalRecord<CoreAbstractSession,CoreField,Marshaller,NamespaceResolver>
attributeWithoutQName
in interface MarshalRecord<CoreAbstractSession,CoreField,Marshaller,NamespaceResolver>
attributeWithoutQName
in class AbstractMarshalRecordImpl<CoreAbstractSession,CoreField,Marshaller,NamespaceResolver>
public boolean addXsiTypeAndClassIndicatorIfRequired(Descriptor xmlDescriptor, Descriptor referenceDescriptor, Field xmlField, boolean isRootElement)
addXsiTypeAndClassIndicatorIfRequired
in interface AbstractMarshalRecord<CoreAbstractSession,CoreField,Marshaller,NamespaceResolver>
addXsiTypeAndClassIndicatorIfRequired
in class AbstractMarshalRecordImpl<CoreAbstractSession,CoreField,Marshaller,NamespaceResolver>
public boolean addXsiTypeAndClassIndicatorIfRequired(Descriptor xmlDescriptor, Descriptor referenceDescriptor, Field xmlField, java.lang.Object originalObject, java.lang.Object obj, boolean wasXMLRoot, boolean isRootElement)
AbstractMarshalRecordImpl
addXsiTypeAndClassIndicatorIfRequired
in interface AbstractMarshalRecord<CoreAbstractSession,CoreField,Marshaller,NamespaceResolver>
addXsiTypeAndClassIndicatorIfRequired
in class AbstractMarshalRecordImpl<CoreAbstractSession,CoreField,Marshaller,NamespaceResolver>
public void writeXsiTypeAttribute(Descriptor descriptor, java.lang.String typeUri, java.lang.String typeLocal, java.lang.String typePrefix, boolean addToNamespaceResolver)
writeXsiTypeAttribute
in interface AbstractMarshalRecord<CoreAbstractSession,CoreField,Marshaller,NamespaceResolver>
writeXsiTypeAttribute
in class AbstractMarshalRecordImpl<CoreAbstractSession,CoreField,Marshaller,NamespaceResolver>
public void writeXsiTypeAttribute(Descriptor xmlDescriptor, XMLSchemaReference xmlRef, boolean addToNamespaceResolver)
writeXsiTypeAttribute
in interface AbstractMarshalRecord<CoreAbstractSession,CoreField,Marshaller,NamespaceResolver>
writeXsiTypeAttribute
in class AbstractMarshalRecordImpl<CoreAbstractSession,CoreField,Marshaller,NamespaceResolver>
public void setXOPPackage(boolean isXOPPackage)
setXOPPackage
in interface AbstractMarshalRecord<CoreAbstractSession,CoreField,Marshaller,NamespaceResolver>
setXOPPackage
in class AbstractMarshalRecordImpl<CoreAbstractSession,CoreField,Marshaller,NamespaceResolver>
EclipseLink 2.6.3, "build v20160428-59c81c5" API Reference