Package jmri.managers.configurexml
Class AbstractLightManagerConfigXML
- java.lang.Object
-
- jmri.configurexml.AbstractXmlAdapter
-
- jmri.managers.configurexml.AbstractNamedBeanManagerConfigXML
-
- jmri.managers.configurexml.AbstractLightManagerConfigXML
-
- All Implemented Interfaces:
XmlAdapter
- Direct Known Subclasses:
AcelaLightManagerXml
,BiDiBLightManagerXml
,CbusLightManagerXml
,DCCppLightManagerXml
,InternalLightManagerXml
,IpocsLightManagerXml
,JMRIClientLightManagerXml
,LnLightManagerXml
,MqttLightManagerXml
,NceLightManagerXml
,OlcbLightManagerXml
,SerialLightManagerXml
,SerialLightManagerXml
,SerialLightManagerXml
,SerialLightManagerXml
,SerialLightManagerXml
,SerialLightManagerXml
,UsbLightManagerXml
,XBeeLightManagerXml
,XNetLightManagerXml
public abstract class AbstractLightManagerConfigXML extends AbstractNamedBeanManagerConfigXML
Provides the abstract base and store functionality for configuring LightManagers, working with AbstractLightManagers.Typically, a subclass will just implement the load(Element sensors) class, relying on implementation here to load the individual lights. Note that these are stored explicitly, so the resolution mechanism doesn't need to see *Xml classes for each specific Light or AbstractLight subclass at store time.
Based on AbstractSensorManagerConfigXML.java
-
-
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 AbstractLightManagerConfigXML()
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description boolean
loadLights(org.jdom2.Element lights)
Utility method to load the individual Light objects.int
loadOrder()
abstract void
setStoreElementClass(org.jdom2.Element lights)
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 LightManager.-
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, load, load, loadDeferred, setExceptionHandler, store
-
-
-
-
Constructor Detail
-
AbstractLightManagerConfigXML
public AbstractLightManagerConfigXML()
-
-
Method Detail
-
store
public org.jdom2.Element store(java.lang.Object o)
Default implementation for storing the contents of a LightManager.- Parameters:
o
- Object to store, of type LightManager- Returns:
- Element containing the complete info
-
setStoreElementClass
public abstract void setStoreElementClass(org.jdom2.Element lights)
Subclass provides implementation to create the correct top element, including the type information. Default implementation is to use the local class here.- Parameters:
lights
- The top-level element being created
-
loadLights
public boolean loadLights(org.jdom2.Element lights)
Utility method to load the individual Light objects. If there's no additional info needed for a specific light type, invoke this with the parent of the set of Light elements.- Parameters:
lights
- Element containing the Light elements to load.- Returns:
- true when complete, false on error.
-
loadOrder
public int loadOrder()
Description copied from class:AbstractXmlAdapter
- Specified by:
loadOrder
in interfaceXmlAdapter
- Overrides:
loadOrder
in classAbstractXmlAdapter
-
-