Package org.web3d.x3d.jsail
Class X3DLoaderDOM
java.lang.Object
org.web3d.x3d.jsail.X3DLoaderDOM
public class X3DLoaderDOM
extends java.lang.Object
Concrete class for loading an X3D graphics string, file or fragment, encoded in XML, using the Document Object Model (DOM).
-
Field Summary
Fields Modifier and Type Field Description booleanDEFAULT_DTD_VALIDATEDefault dtdValidate value for documentBuilderFactorybooleanDEFAULT_XSD_VALIDATEDefault xsdValidate value for documentBuilderFactoryprotected java.lang.StringindentLevelprotected intlineBreakWidth -
Constructor Summary
Constructors Constructor Description X3DLoaderDOM()Default constructor to initialize X3DLoaderDOM -
Method Summary
Modifier and Type Method Description org.w3c.dom.DocumentgetDomDocument()Provide DOM document version of externally loaded X3D filejava.lang.StringgetValidationResult()Provide detailed log of validation results following loading and serializationX3DConcreteElementgetX3dObjectTree()Provide X3DJSAIL object tree if loading succeedsbooleanisDtdValidationPerformed()Accessor method indicating whether DTD validation is performed when loading an X3D filebooleanisLoadSuccessful()Accessor method to indicate whether loading was successful and loaded X3dObjectTree is availablebooleanisXmlSchemaValidationPerformed()Accessor method indicating whether DTD validation is performed when loading an X3D filebooleanloadModelFromFileX3D(java.io.File x3dFile)Load the XML X3D file using DOM, report successbooleanloadModelFromFileX3D(java.lang.String fileName)Load the XML X3D file using DOM, report whether successful.booleanloadModelFromFileX3D(java.lang.String path, java.lang.String fileName)Load the XML X3D file using DOM, report whether successful.voidsetDtdValidationPerformed(boolean newDtdValidationValue)Accessor method to set whether DTD validation is performed when loading an X3D file, reconfiguring documentBuilderFactoryvoidsetXmlSchemaValidation(boolean newXmlSchemaValidationValue)Accessor method to set whether XML Schema validation is performed when loading an X3D file, reconfiguring documentBuilderFactoryjava.lang.StringtoStringX3D(org.w3c.dom.Node node)Convenience method, use DOM to create X3D string from a previously loaded document with default zero indent.X3DConcreteElementtoX3dObjectTree(org.w3c.dom.Node node)Recursive method that uses DOM to create X3DJSAIL objects from a previously loaded document, taking advantage of Java Reflection and String-based field accessors with protected access that are not otherwise usable.X3DConcreteElementtoX3dObjectTree(org.w3c.dom.Node node, X3DConcreteElement parentElement)Recursive method that uses DOM to create X3DJSAIL objects from a previously loaded document, taking advantage of Java Reflection and String-based field accessors with protected access that are not otherwise usable.
-
Field Details
-
DEFAULT_DTD_VALIDATE
public final boolean DEFAULT_DTD_VALIDATEDefault dtdValidate value for documentBuilderFactory- See Also:
- Constant Field Values
-
DEFAULT_XSD_VALIDATE
public final boolean DEFAULT_XSD_VALIDATEDefault xsdValidate value for documentBuilderFactory- See Also:
- Constant Field Values
-
indentLevel
protected java.lang.String indentLevel -
lineBreakWidth
protected int lineBreakWidth
-
-
Constructor Details
-
X3DLoaderDOM
public X3DLoaderDOM()Default constructor to initialize X3DLoaderDOM
-
-
Method Details
-
loadModelFromFileX3D
public boolean loadModelFromFileX3D(java.lang.String fileName)Load the XML X3D file using DOM, report whether successful. Fails if file is empty.- Parameters:
fileName- path and name of .x3d or .xml file (XML encoding)- Returns:
- whether successful
- See Also:
loadModelFromFileX3D(File)
-
loadModelFromFileX3D
public boolean loadModelFromFileX3D(java.lang.String path, java.lang.String fileName)Load the XML X3D file using DOM, report whether successful. Fails if file is empty.- Parameters:
path- directory path to file of interestfileName- path and name of .x3d or .xml file (XML encoding)- Returns:
- whether successful
- See Also:
loadModelFromFileX3D(File)
-
loadModelFromFileX3D
public boolean loadModelFromFileX3D(java.io.File x3dFile)Load the XML X3D file using DOM, report success- Parameters:
x3dFile- existing x3d file (XML encoding)- Returns:
- whether successful
- See Also:
loadModelFromFileX3D(String)
-
getDomDocument
public org.w3c.dom.Document getDomDocument()Provide DOM document version of externally loaded X3D file- Returns:
- the DOM document, if XML-encoded X3D file was successfully loaded
-
toStringX3D
public java.lang.String toStringX3D(org.w3c.dom.Node node)Convenience method, use DOM to create X3D string from a previously loaded document with default zero indent. X3D output is XML encoding.- Parameters:
node- DOM Node to process- Returns:
- the loaded X3D document of interest, starting with regular X3D element headers or possibly a scene fragment
- See Also:
X3DObject.FILE_EXTENSION_X3D,X3DObject.FILE_EXTENSION_XML
-
toX3dObjectTree
Recursive method that uses DOM to create X3DJSAIL objects from a previously loaded document, taking advantage of Java Reflection and String-based field accessors with protected access that are not otherwise usable.- Parameters:
node- DOM Node to process- Returns:
- the loaded X3D objects of interest, starting with regular X3DObject or possibly a scene fragment
- See Also:
- Java Tutorials: Reflection API, Java Reflection in Action
-
toX3dObjectTree
Recursive method that uses DOM to create X3DJSAIL objects from a previously loaded document, taking advantage of Java Reflection and String-based field accessors with protected access that are not otherwise usable.- Parameters:
node- DOM Node to processparentElement- the parent of this scene object, if any- Returns:
- the loaded X3D objects of interest, starting with regular X3DObject or possibly a scene fragment
- See Also:
- Java Tutorials: Reflection API, Java Reflection in Action
-
isDtdValidationPerformed
public boolean isDtdValidationPerformed()Accessor method indicating whether DTD validation is performed when loading an X3D file- Returns:
- whether XML DTD validation is performed when loading an X3D file
-
setDtdValidationPerformed
public void setDtdValidationPerformed(boolean newDtdValidationValue)Accessor method to set whether DTD validation is performed when loading an X3D file, reconfiguring documentBuilderFactory- Parameters:
newDtdValidationValue- whether DTD validation is performed
-
isXmlSchemaValidationPerformed
public boolean isXmlSchemaValidationPerformed()Accessor method indicating whether DTD validation is performed when loading an X3D file- Returns:
- whether XML Schema validation is performed when loading an X3D file
-
setXmlSchemaValidation
public void setXmlSchemaValidation(boolean newXmlSchemaValidationValue)Accessor method to set whether XML Schema validation is performed when loading an X3D file, reconfiguring documentBuilderFactory- Parameters:
newXmlSchemaValidationValue- whether XML Schema validation is performed
-
getX3dObjectTree
Provide X3DJSAIL object tree if loading succeeds- Returns:
- X3D object tree if loading was successful, null otherwise
-
isLoadSuccessful
public boolean isLoadSuccessful()Accessor method to indicate whether loading was successful and loaded X3dObjectTree is available- Returns:
- whether loading was successful
-
getValidationResult
public java.lang.String getValidationResult()Provide detailed log of validation results following loading and serialization- Returns:
- validationResult log following loading and serialization
-