Package com.inductiveautomation.rm.base
Class RMXMLWriter
- java.lang.Object
-
- com.inductiveautomation.rm.base.RMXMLWriter
-
public class RMXMLWriter extends java.lang.Object
This class turns any Java dataset into XML. The most common use of this class is simply the writeObject() method, which takes a Java dataset and results in a very clean XML description (at the given path):new RMXMLWriter().writeObject(myObjects, "MyDataset.xml");
The Java dataset can take almost any form: a list, map or hierarchy of EJBs, custom Java classes, Java collections classes or even JDBC ResultSets. The resulting XML file is a very clean description of all the public fields, methods and keys/values in the dataset (out to three levels deep, which is the default "degree of separation").
-
-
Field Summary
Fields Modifier and Type Field Description static java.lang.String
TAG_ID
-
Constructor Summary
Constructors Constructor Description RMXMLWriter()
Creates a new xml writer.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected RMSchemaMaker
createSchemaMaker()
Creates a new schema maker.boolean
getIncludeFields()
Returns whether to include fields.int
getPropertyNextUniqueID(Property aProperty)
Returns the next unique id for given property.Schema
getSchema()
Returns the schema.RMSchemaMaker
getSchemaMaker()
Returns the schema maker.boolean
getUseGetAndIsMethodsOnly()
Returns whether to only use getX/isX accessor methods (as opposed to any method returning a value).RXElement
getXML(java.lang.Object anObj, Schema aSchema, int aDegreeOfSeparation)
Returns an element tree for given collections map and schema.RXElement
getXML(java.lang.Object anObj, java.lang.Object userInfo, int degreeOfSeparation)
Returns an xml RXElement tree for given Java dataset and optional userInfo, out to given degree of separation.void
ignoreClass(java.lang.Class aClass)
Tells writer to ignore any member of the given class from the serialized object graph.void
ignoreClass(java.lang.String aClassName)
Tells writer to ignore any member of the given class name from the serialized object graph.void
ignoreMember(java.lang.Class aClass, java.lang.String aName)
Tells writer to ignore any member with the given class - member combination.void
ignoreMember(java.lang.String aFieldName)
Tells writer to ignore any member with the given method/field name from the serialized object graph.void
ignoreMember(java.lang.String aClassName, java.lang.String aName)
Tells writer to ignore any member with the given classname - member combination.void
setIncludeFields(boolean aFlag)
Sets whether to include fields.void
setUseGetAndIsMethodsOnly(boolean aFlag)
Sets whether to only use getX/isX accessor methods (as opposed to any method returning a value).void
writeObject(java.lang.Object anObj, java.lang.Object userInfo, java.lang.String aPath, int degreeOfSeparation)
Writes given Java dataset and optional userInfo to given path as XML, out to given degree of separation.void
writeObject(java.lang.Object anObj, java.lang.String aPath)
Writes given Java dataset to given path as XML, out to three levels deep, which is default degree of separation.void
writeObject(java.lang.Object anObj, java.lang.String aPath, int dos)
Writes given Java dataset to given path as XML, out to given degree of separation.
-
-
-
Field Detail
-
TAG_ID
public static final java.lang.String TAG_ID
- See Also:
- Constant Field Values
-
-
Method Detail
-
getSchemaMaker
public RMSchemaMaker getSchemaMaker()
Returns the schema maker.
-
createSchemaMaker
protected RMSchemaMaker createSchemaMaker()
Creates a new schema maker.
-
getUseGetAndIsMethodsOnly
public boolean getUseGetAndIsMethodsOnly()
Returns whether to only use getX/isX accessor methods (as opposed to any method returning a value).
-
setUseGetAndIsMethodsOnly
public void setUseGetAndIsMethodsOnly(boolean aFlag)
Sets whether to only use getX/isX accessor methods (as opposed to any method returning a value).
-
getIncludeFields
public boolean getIncludeFields()
Returns whether to include fields.
-
setIncludeFields
public void setIncludeFields(boolean aFlag)
Sets whether to include fields.
-
ignoreClass
public void ignoreClass(java.lang.Class aClass)
Tells writer to ignore any member of the given class from the serialized object graph.
-
ignoreClass
public void ignoreClass(java.lang.String aClassName)
Tells writer to ignore any member of the given class name from the serialized object graph.
-
ignoreMember
public void ignoreMember(java.lang.String aFieldName)
Tells writer to ignore any member with the given method/field name from the serialized object graph.
-
ignoreMember
public void ignoreMember(java.lang.Class aClass, java.lang.String aName)
Tells writer to ignore any member with the given class - member combination.
-
ignoreMember
public void ignoreMember(java.lang.String aClassName, java.lang.String aName)
Tells writer to ignore any member with the given classname - member combination.
-
writeObject
public void writeObject(java.lang.Object anObj, java.lang.String aPath)
Writes given Java dataset to given path as XML, out to three levels deep, which is default degree of separation.
-
writeObject
public void writeObject(java.lang.Object anObj, java.lang.String aPath, int dos)
Writes given Java dataset to given path as XML, out to given degree of separation.
-
writeObject
public void writeObject(java.lang.Object anObj, java.lang.Object userInfo, java.lang.String aPath, int degreeOfSeparation)
Writes given Java dataset and optional userInfo to given path as XML, out to given degree of separation.
-
getXML
public RXElement getXML(java.lang.Object anObj, java.lang.Object userInfo, int degreeOfSeparation)
Returns an xml RXElement tree for given Java dataset and optional userInfo, out to given degree of separation.
-
getXML
public RXElement getXML(java.lang.Object anObj, Schema aSchema, int aDegreeOfSeparation)
Returns an element tree for given collections map and schema.
-
getSchema
public Schema getSchema()
Returns the schema.
-
getPropertyNextUniqueID
public int getPropertyNextUniqueID(Property aProperty)
Returns the next unique id for given property.
-
-