jmri.jmrit.display.layoutEditor.configurexml
Class LayoutBlockManagerXml

java.lang.Object
  extended by jmri.configurexml.AbstractXmlAdapter
      extended by jmri.managers.configurexml.AbstractNamedBeanManagerConfigXML
          extended by jmri.jmrit.display.layoutEditor.configurexml.LayoutBlockManagerXml
All Implemented Interfaces:
XmlAdapter
Direct Known Subclasses:
LayoutBlockManagerXml

public class LayoutBlockManagerXml
extends AbstractNamedBeanManagerConfigXML

Provides the functionality for configuring a LayoutBlockManager

Author:
Dave Duchamp Copyright (c) 2007

Constructor Summary
LayoutBlockManagerXml()
           
 
Method Summary
 boolean load(Element layoutblocks)
          Create a LayoutBlockManager object of the correct class, then register and fill it.
 void load(Element element, Object o)
          Create a set of configured objects from their XML description, using an auxiliary object.
 void loadLayoutBlocks(Element layoutblocks)
          Utility method to load the individual LayoutBlock objects.
protected  void replaceLayoutBlockManager()
          Replace the current LayoutBlockManager, if there is one, with one newly created during a load operation.
 void setStoreElementClass(Element layoutblocks)
          Subclass provides implementation to create the correct top element, including the type information.
 Element store(Object o)
          Implementation for storing the contents of a LayoutBlockManager
 
Methods inherited from class jmri.managers.configurexml.AbstractNamedBeanManagerConfigXML
getSystemName, getUserName, getUserName, loadCommon, storeCommon
 
Methods inherited from class jmri.configurexml.AbstractXmlAdapter
creationErrorEncountered, getConfigXmlManager, loadDeferred, loadOrder, setConfigXmlManager
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

LayoutBlockManagerXml

public LayoutBlockManagerXml()
Method Detail

store

public Element store(Object o)
Implementation for storing the contents of a LayoutBlockManager

Parameters:
o - Object to store, of type LayoutBlockManager
Returns:
Element containing the complete info

setStoreElementClass

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

Parameters:
layoutblocks - The top-level element being created

load

public void load(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.

Parameters:
element - Top-level XML element containing the description
o - Implementation-specific Object needed for the conversion

load

public boolean load(Element layoutblocks)
Create a LayoutBlockManager object of the correct class, then register and fill it.

Parameters:
layoutblocks - Top level Element to unpack.
Returns:
true if successful

loadLayoutBlocks

public void loadLayoutBlocks(Element layoutblocks)
Utility method to load the individual LayoutBlock objects. If there's no additional info needed for a specific layoutblock type, invoke this with the parent of the set of layoutblock elements.

Parameters:
layoutblocks - Element containing the layoutblock elements to load.

replaceLayoutBlockManager

protected void replaceLayoutBlockManager()
Replace the current LayoutBlockManager, 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 - 2011 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: Get JMRI Model Railroad Interface at SourceForge.net. Fast, secure and Free Open Source software downloads