Class AbstractTurnoutManagerConfigXML

All Implemented Interfaces:
XmlAdapter
Direct Known Subclasses:
AcelaTurnoutManagerXml, BiDiBTurnoutManagerXml, CbusTurnoutManagerXml, DCCppTurnoutManagerXml, EasyDccTurnoutManagerXml, EcosTurnoutManagerXml, EliteXNetTurnoutManagerXml, InternalTurnoutManagerXml, IpocsTurnoutManagerXml, JMRIClientTurnoutManagerXml, LnTurnoutManagerXml, MarklinTurnoutManagerXml, MqttTurnoutManagerXml, MrcTurnoutManagerXml, NceTurnoutManagerXml, OlcbTurnoutManagerXml, RaspberryPiTurnoutManagerXml, SerialTurnoutManagerXml, SerialTurnoutManagerXml, SerialTurnoutManagerXml, SerialTurnoutManagerXml, SerialTurnoutManagerXml, SerialTurnoutManagerXml, SerialTurnoutManagerXml, SprogTurnoutManagerXml, SRCPTurnoutManagerXml, TamsTurnoutManagerXml, XBeeTurnoutManagerXml, XNetTurnoutManagerXml, XpaTurnoutManagerXml, ZTC611XNetTurnoutManagerXml

Provides the abstract base and store functionality for configuring TurnoutManagers, working with AbstractTurnoutManagers.

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 Turnout or AbstractTurnout subclass at store time.

  • Constructor Details

  • Method Details

    • store

      public org.jdom2.Element store(Object o)
      Default implementation for storing the contents of a TurnoutManager and associated TurnoutOperations.
      Parameters:
      o - Object to store, of type TurnoutManager
      Returns:
      Element containing the complete info
    • setStoreElementClass

      public abstract void setStoreElementClass(org.jdom2.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 abstract boolean load(org.jdom2.Element shared, org.jdom2.Element perNode)
      Description copied from class: AbstractXmlAdapter
      Create a set of configured objects from their XML description.
      Specified by:
      load in interface XmlAdapter
      Overrides:
      load in class AbstractXmlAdapter
      Parameters:
      shared - Top-level XML element containing the common, multi-node elements of the description
      perNode - Top-level XML element containing the private, single-node elements of the description
      Returns:
      true if successful
    • loadTurnouts

      public boolean loadTurnouts(org.jdom2.Element shared, org.jdom2.Element perNode)
      Utility method to load the individual Turnout objects. If there's no additional info needed for a specific turnout type, invoke this with the parent of the set of Turnout elements.
      Parameters:
      shared - Element containing the Turnout elements to load.
      perNode - Element containing per-node Turnout data.
      Returns:
      true if succeeded
    • loadOrder

      public int loadOrder()
      Description copied from class: AbstractXmlAdapter
      Specified by:
      loadOrder in interface XmlAdapter
      Overrides:
      loadOrder in class AbstractXmlAdapter