Package jmri.managers.configurexml
Class DefaultLogixManagerXml
- java.lang.Object
-
- jmri.configurexml.AbstractXmlAdapter
-
- jmri.managers.configurexml.AbstractNamedBeanManagerConfigXML
-
- jmri.managers.configurexml.DefaultLogixManagerXml
-
- All Implemented Interfaces:
XmlAdapter
public class DefaultLogixManagerXml extends AbstractNamedBeanManagerConfigXML
Provides the functionality for configuring LogixManagers.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class jmri.configurexml.AbstractXmlAdapter
AbstractXmlAdapter.EnumIO<T extends java.lang.Enum<T>>, AbstractXmlAdapter.EnumIoMapped<T extends java.lang.Enum<T>>, AbstractXmlAdapter.EnumIoNames<T extends java.lang.Enum<T>>, AbstractXmlAdapter.EnumIoNamesNumbers<T extends java.lang.Enum<T>>, AbstractXmlAdapter.EnumIoOrdinals<T extends java.lang.Enum<T>>
-
-
Constructor Summary
Constructors Constructor Description DefaultLogixManagerXml()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
load(org.jdom2.Element element, java.lang.Object o)
Create a set of configured objects from their XML description, using an auxiliary object.boolean
load(org.jdom2.Element sharedLogix, org.jdom2.Element perNodeLogix)
Create a LogixManager object of the correct class, then register and fill it.void
loadLogixs(org.jdom2.Element logixs)
Utility method to load the individual Logix objects.int
loadOrder()
protected void
replaceLogixManager()
Replace the current LogixManager, if there is one, with one newly created during a load operation.void
setStoreElementClass(org.jdom2.Element logixs)
Subclass provides implementation to create the correct top element, including the type information.org.jdom2.Element
store(java.lang.Object o)
Default implementation for storing the contents of a LogixManager.-
Methods inherited from class jmri.managers.configurexml.AbstractNamedBeanManagerConfigXML
checkedNamedBeanHandle, checkedNamedBeanName, checkedNamedBeanReference, checkNameNormalization, getAttributeBool, getAttributeString, getSystemName, getUserName, getUserName, loadComment, loadComment, loadCommon, loadInAdapter, loadProperties, storeComment, storeCommon, storeProperties, storeUserName
-
Methods inherited from class jmri.configurexml.AbstractXmlAdapter
getAttributeBooleanValue, getAttributeDoubleValue, getAttributeFloatValue, getAttributeIntegerValue, getExceptionHandler, handleException, load, load, loadDeferred, setExceptionHandler, store
-
-
-
-
Constructor Detail
-
DefaultLogixManagerXml
public DefaultLogixManagerXml()
-
-
Method Detail
-
store
public org.jdom2.Element store(java.lang.Object o)
Default implementation for storing the contents of a LogixManager.- Parameters:
o
- Object to store, of type LogixManager- Returns:
- Element containing the complete info
-
setStoreElementClass
public void setStoreElementClass(org.jdom2.Element logixs)
Subclass provides implementation to create the correct top element, including the type information. Default implementation is to use the local class here.- Parameters:
logixs
- The top-level element being created
-
load
public void load(org.jdom2.Element element, java.lang.Object o)
Description copied from class:AbstractXmlAdapter
Create a set of configured objects from their XML description, using an auxiliary object.For example, the auxilary object o might be a manager or GUI of some type that needs to be informed as each object is created.
- Specified by:
load
in interfaceXmlAdapter
- Overrides:
load
in classAbstractXmlAdapter
- Parameters:
element
- Top-level XML element containing the descriptiono
- Implementation-specific Object needed for the conversion
-
load
public boolean load(org.jdom2.Element sharedLogix, org.jdom2.Element perNodeLogix)
Create a LogixManager object of the correct class, then register and fill it.- Specified by:
load
in interfaceXmlAdapter
- Overrides:
load
in classAbstractXmlAdapter
- Parameters:
sharedLogix
- Shared top level Element to unpack.perNodeLogix
- Per-node top level Element to unpack.- Returns:
- true if successful
-
loadLogixs
public void loadLogixs(org.jdom2.Element logixs)
Utility method to load the individual Logix objects. If there's no additional info needed for a specific logix type, invoke this with the parent of the set of Logix elements.- Parameters:
logixs
- Element containing the Logix elements to load.
-
replaceLogixManager
protected void replaceLogixManager()
Replace the current LogixManager, if there is one, with one newly created during a load operation. This is skipped if they are of the same absolute type.
-
loadOrder
public int loadOrder()
Description copied from class:AbstractXmlAdapter
- Specified by:
loadOrder
in interfaceXmlAdapter
- Overrides:
loadOrder
in classAbstractXmlAdapter
-
-