Skip navigation links

Oracle Fusion Middleware Java API Reference for Oracle TopLink
11g Release 1 (11.1.1)

E28847-01


org.eclipse.persistence.sdo.helper
Class SDOMarshalListener

java.lang.Object
  extended by org.eclipse.persistence.sdo.helper.SDOMarshalListener

All Implemented Interfaces:
XMLMarshalListener

public class SDOMarshalListener
extends java.lang.Object
implements XMLMarshalListener

Purpose: Implementation of XMLMarshalListener used when marshalling DataObjects to XML

Responsibilities:


Field Summary
private  java.lang.Object marshalledObject
           
private  javax.xml.namespace.QName marshalledObjectRootQName
           
private  MarshalRecord rootMarshalRecord
           
private  SDOTypeHelper typeHelper
           
private  XMLMarshaller xmlMarshaller
          maintain narrowed context from the larger HelperContext (inside the xmlMarshaller)
Visibility reduced from [public] in 2.1.0.

 

Constructor Summary
SDOMarshalListener(XMLMarshaller aMarshaller, SDOTypeHelper aTypeHelper)
           

 

Method Summary
 void afterMarshal(java.lang.Object obj)
           
 void beforeMarshal(java.lang.Object obj)
           
private  boolean declareNamespace(java.lang.String uri, java.lang.String prefix, DataObject theDataObject)
           
private  void doMarshal(SDOProperty prop, DataObject value, SDOChangeSummary cs, org.w3c.dom.Element csNode, SDODataObject modifiedObject, java.util.List deletedXPaths, java.lang.String xpathToCS, java.lang.String sdoPrefix, java.lang.String rootElementName)
           
 java.lang.Object getMarshalledObject()
           
 javax.xml.namespace.QName getMarshalledObjectRootQName()
           
 java.lang.String getPathFromAncestor(SDODataObject sourceDO, SDODataObject targetDO, SDOChangeSummary cs)
          INTERNAL: Get path for non-deleted DataObjects
ChangeSummary is not required and is set to null.
private  java.lang.String getPathFromAncestorPrivate(SDOChangeSummary aChangeSummary, java.lang.String currentPath, SDODataObject targetDO, SDODataObject currentObject, java.lang.String aSeparator)
          INTERNAL: Return the XPath or SDO path from the anObject to the current internal node Prereq: We know that the targetObject will always have a parent as called from getPath() We require a ChangeSummary object for when there are deleted objects in the path Matching conditions: Iterate up the tree return a non-null string for the XPath when we reach the target node Function is partially based on SDOCopyHelper.copy(DataObject dataObject) Performance: This function is O(log n) where n=# of children in the tree
private  java.lang.String getQualifiedName(SDODataObject currentObject)
           
 MarshalRecord getRootMarshalRecord()
           
private  java.lang.String getURI(SDODataObject currentObject)
           
private  java.lang.String getUriForProperty(SDODataObject currentObject)
           
private  java.lang.String getXPathForProperty(SDOProperty prop)
           
private  java.lang.String getXPathForProperty(SDOProperty prop, boolean removeText)
           
private  void marshalNilAttribute(SDOProperty property, DOMRecord row)
           
 void setMarshalledObject(java.lang.Object marshalledObject)
           
 void setMarshalledObjectRootQName(javax.xml.namespace.QName rootQName)
           
 void setRootMarshalRecord(MarshalRecord rootRecord)
           

 

Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

 

Field Detail

marshalledObject

private java.lang.Object marshalledObject

marshalledObjectRootQName

private javax.xml.namespace.QName marshalledObjectRootQName

rootMarshalRecord

private MarshalRecord rootMarshalRecord

typeHelper

private SDOTypeHelper typeHelper

xmlMarshaller

private XMLMarshaller xmlMarshaller
maintain narrowed context from the larger HelperContext (inside the xmlMarshaller)
Visibility reduced from [public] in 2.1.0. May 15 2007

Constructor Detail

SDOMarshalListener

public SDOMarshalListener(XMLMarshaller aMarshaller,
                          SDOTypeHelper aTypeHelper)

Method Detail

afterMarshal

public void afterMarshal(java.lang.Object obj)
Specified by:
afterMarshal in interface XMLMarshalListener

beforeMarshal

public void beforeMarshal(java.lang.Object obj)
Specified by:
beforeMarshal in interface XMLMarshalListener

doMarshal

private void doMarshal(SDOProperty prop,
                       DataObject value,
                       SDOChangeSummary cs,
                       org.w3c.dom.Element csNode,
                       SDODataObject modifiedObject,
                       java.util.List deletedXPaths,
                       java.lang.String xpathToCS,
                       java.lang.String sdoPrefix,
                       java.lang.String rootElementName)

getURI

private java.lang.String getURI(SDODataObject currentObject)

getQualifiedName

private java.lang.String getQualifiedName(SDODataObject currentObject)

setMarshalledObject

public void setMarshalledObject(java.lang.Object marshalledObject)

getMarshalledObject

public java.lang.Object getMarshalledObject()

setMarshalledObjectRootQName

public void setMarshalledObjectRootQName(javax.xml.namespace.QName rootQName)

getMarshalledObjectRootQName

public javax.xml.namespace.QName getMarshalledObjectRootQName()

setRootMarshalRecord

public void setRootMarshalRecord(MarshalRecord rootRecord)

getRootMarshalRecord

public MarshalRecord getRootMarshalRecord()

declareNamespace

private boolean declareNamespace(java.lang.String uri,
                                 java.lang.String prefix,
                                 DataObject theDataObject)

getUriForProperty

private java.lang.String getUriForProperty(SDODataObject currentObject)

getXPathForProperty

private java.lang.String getXPathForProperty(SDOProperty prop)

getXPathForProperty

private java.lang.String getXPathForProperty(SDOProperty prop,
                                             boolean removeText)

getPathFromAncestorPrivate

private java.lang.String getPathFromAncestorPrivate(SDOChangeSummary aChangeSummary,
                                                    java.lang.String currentPath,
                                                    SDODataObject targetDO,
                                                    SDODataObject currentObject,
                                                    java.lang.String aSeparator)
INTERNAL: Return the XPath or SDO path from the anObject to the current internal node Prereq: We know that the targetObject will always have a parent as called from getPath() We require a ChangeSummary object for when there are deleted objects in the path Matching conditions: Iterate up the tree return a non-null string for the XPath when we reach the target node Function is partially based on SDOCopyHelper.copy(DataObject dataObject) Performance: This function is O(log n) where n=# of children in the tree
Parameters:
currentPath -
targetObject -
currentObject -
aSeparator - (XPath separator is written only between elements - not for the first call)
Returns:
String (representing the XPath)

getPathFromAncestor

public java.lang.String getPathFromAncestor(SDODataObject sourceDO,
                                            SDODataObject targetDO,
                                            SDOChangeSummary cs)
INTERNAL: Get path for non-deleted DataObjects
ChangeSummary is not required and is set to null.
Assumptions:
target node is an ancestor of the source (this)
Parameters:
sourceDO -
targetDO -
Returns:
String xpath

marshalNilAttribute

private void marshalNilAttribute(SDOProperty property,
                                 DOMRecord row)

Skip navigation links

Copyright © 1998, 2012, Oracle. All Rights Reserved.