jmri.configurexml
Class AbstractSignalHeadManagerXml

java.lang.Object
  extended by jmri.configurexml.AbstractSignalHeadManagerXml
All Implemented Interfaces:
XmlAdapter

public class AbstractSignalHeadManagerXml
extends Object
implements XmlAdapter

Provides the abstract base and store functionality for configuring SignalHeadManagers, working with AbstractSignalHeadManagers.

Typically, a subclass will just implement the load(Element turnouts) class, relying on implementation here to load the individual turnouts. Note that these are stored explicitly, so the resolution mechanism doesn't need to see *Xml classes for each specific SignalHead or AbstractSignalHead subclass at store time.

Based on AbstractTurnoutManagerConfigXML

Author:
Bob Jacobsen Copyright: Copyright (c) 2003

Constructor Summary
AbstractSignalHeadManagerXml()
           
 
Method Summary
 void load(org.jdom.Element signalheads)
          Create a SignalHeadManager object of the correct class, then register and fill it.
 void load(org.jdom.Element element, Object o)
          Create a set of configured objects from their XML description, using an auxiliary object.
 void loadSignalHeads(org.jdom.Element signalheads)
          Utility method to load the individual SignalHead objects.
protected  void replaceSignalHeadManager()
          Replace the current signal head manager, if there is one, with one newly created during a load operation.
 void setStoreElementClass(org.jdom.Element turnouts)
          Subclass provides implementation to create the correct top element, including the type information.
 org.jdom.Element store(Object o)
          Default implementation for storing the contents of a SignalHeadManager
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

AbstractSignalHeadManagerXml

public AbstractSignalHeadManagerXml()
Method Detail

store

public org.jdom.Element store(Object o)
Default implementation for storing the contents of a SignalHeadManager

Specified by:
store in interface XmlAdapter
Parameters:
o - Object to store, of type SignalHeadManager
Returns:
Element containing the complete info

setStoreElementClass

public void setStoreElementClass(org.jdom.Element turnouts)
Subclass provides implementation to create the correct top element, including the type information. Default implementation is to use the local class here.

Parameters:
turnouts - The top-level element being created

load

public void load(org.jdom.Element signalheads)
Create a SignalHeadManager object of the correct class, then register and fill it.

Specified by:
load in interface XmlAdapter
Parameters:
signalheads - Top level Element to unpack.

load

public void load(org.jdom.Element element,
                 Object o)
Description copied from interface: XmlAdapter
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 interface XmlAdapter
Parameters:
element - Top-level XML element containing the description
o - Implementation-specific Object needed for the conversion

loadSignalHeads

public void loadSignalHeads(org.jdom.Element signalheads)
Utility method to load the individual SignalHead objects. If there's no additional info needed for a specific signal head type, invoke this with the parent of the set of SignalHead elements.

Parameters:
signalheads - Element containing the SignalHead elements to load.

replaceSignalHeadManager

protected void replaceSignalHeadManager()
Replace the current signal head manager, if there is one, with one newly created during a load operation. This is skipped if they are of the same absolute type.



Copyright © 1997 - 2008 JMRI Community.
JMRI, DecoderPro, PanelPro, SoundPro, DispatcherPro and associated logos are our trademarks.

Additional information on copyright, trademarks and licenses is linked here.
Site hosted by: SourceForge_Logo