Package jmri.jmrit.catalog.configurexml
Class DefaultCatalogTreeManagerXml
- java.lang.Object
-
- jmri.jmrit.XmlFile
-
- jmri.jmrit.catalog.configurexml.DefaultCatalogTreeManagerXml
-
public class DefaultCatalogTreeManagerXml extends XmlFile
Provides the abstract base and store functionality for configuring the CatalogTreeManager.Typically, a subclass will just implement the load(Element catalogTree) class, relying on implementation here to load the individual CatalogTree objects.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class jmri.jmrit.XmlFile
XmlFile.Validate
-
-
Field Summary
-
Fields inherited from class jmri.jmrit.XmlFile
dtdLocation, xsltLocation
-
-
Constructor Summary
Constructors Constructor Description DefaultCatalogTreeManagerXml()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
load(org.jdom2.Element catalogTrees)
Create a CatalogTreeManager object of the correct class, then register and fill it.void
loadCatalogTrees(org.jdom2.Element catalogTrees)
Utility method to load the individual CatalogTree objects.void
loadNode(org.jdom2.Element element, CatalogTreeNode parent, javax.swing.tree.DefaultTreeModel model)
Recursively load a CatalogTree.void
readCatalogTrees()
org.jdom2.Element
store(java.lang.Object o)
This is invoked as part of the "store all" mechanism, which is not used for these objects.void
store(org.jdom2.Element cat, java.util.Set<CatalogTree> trees)
Default implementation for storing the contents of a CatalogTreeManager.void
storeNode(org.jdom2.Element parent, CatalogTreeNode node)
Recursively store a CatalogTree.void
writeCatalogTrees()
Write out tree values to a file in the user's preferences directory.-
Methods inherited from class jmri.jmrit.XmlFile
addDefaultInfo, backupFileName, checkFile, createFileNameWithDate, dumpElement, findFile, getBuilder, getDefaultDtdLocation, getDefaultValidate, getDtdLocation, getProcessingInstructionHRef, getProcessingInstructionType, getRoot, getValidate, makeBackupFile, makeBackupFile, newDocument, newDocument, revertBackupFile, rootFromFile, rootFromInputStream, rootFromName, rootFromURL, setDefaultDtdLocation, setDefaultValidate, setDtdLocation, setValidate, userFileChooser, userFileChooser, writeXML, xmlDir
-
-
-
-
Constructor Detail
-
DefaultCatalogTreeManagerXml
public DefaultCatalogTreeManagerXml()
-
-
Method Detail
-
writeCatalogTrees
public void writeCatalogTrees() throws java.io.IOException
Write out tree values to a file in the user's preferences directory.- Throws:
java.io.IOException
- from any I/O issues during write; not handled locally
-
store
public void store(org.jdom2.Element cat, java.util.Set<CatalogTree> trees)
Default implementation for storing the contents of a CatalogTreeManager.- Parameters:
cat
- Element to load with contentstrees
- List of contents
-
storeNode
public void storeNode(org.jdom2.Element parent, CatalogTreeNode node)
Recursively store a CatalogTree.- Parameters:
parent
- the element to store node innode
- the root node of the tree
-
store
public org.jdom2.Element store(java.lang.Object o)
This is invoked as part of the "store all" mechanism, which is not used for these objects. Hence this is implemented to do nothing.- Parameters:
o
- the object to store- Returns:
- null
-
readCatalogTrees
public void readCatalogTrees()
-
load
public boolean load(org.jdom2.Element catalogTrees)
Create a CatalogTreeManager object of the correct class, then register and fill it.- Parameters:
catalogTrees
- top level Element to unpack- Returns:
- true if successful
-
loadCatalogTrees
public void loadCatalogTrees(org.jdom2.Element catalogTrees)
Utility method to load the individual CatalogTree objects.- Parameters:
catalogTrees
- element containing trees
-
loadNode
public void loadNode(org.jdom2.Element element, CatalogTreeNode parent, javax.swing.tree.DefaultTreeModel model)
Recursively load a CatalogTree.- Parameters:
element
- element containing the node to loadparent
- the parent node of the node in elementmodel
- the tree model containing the tree to add the node to
-
-