org.apache.fop.layoutmgr

## Class LayoutManagerMapping

- java.lang.Object
- - org.apache.fop.layoutmgr.LayoutManagerMapping

All Implemented Interfaces:
  LayoutManagerMaker

    public class LayoutManagerMapping
    extends Object
    implements LayoutManagerMaker

The default LayoutManager maker class

### Nested Class Summary

Nested Classes
`static class` `LayoutManagerMapping.BasicLinkLayoutManagerMaker` a layout manager maker
`static class` `LayoutManagerMapping.BidiOverrideLayoutManagerMaker` a layout manager maker
`static class` `LayoutManagerMapping.BlockContainerLayoutManagerMaker` a layout manager maker
`static class` `LayoutManagerMapping.BlockLayoutManagerMaker` a layout manager maker
`static class` `LayoutManagerMapping.CharacterLayoutManagerMaker` a layout manager maker
`static class` `LayoutManagerMapping.ExternalGraphicLayoutManagerMaker` a layout manager maker
`static class` `LayoutManagerMapping.FloatLayoutManagerMaker`
`static class` `LayoutManagerMapping.FootnoteLayoutManagerMaker` a layout manager maker
`static class` `LayoutManagerMapping.FOTextLayoutManagerMaker` a layout manager maker
`static class` `LayoutManagerMapping.InlineContainerLayoutManagerMaker` a layout manager maker
`static class` `LayoutManagerMapping.InlineLayoutManagerMaker` a layout manager maker
`static class` `LayoutManagerMapping.InstreamForeignObjectLayoutManagerMaker` a layout manager maker
`static class` `LayoutManagerMapping.LeaderLayoutManagerMaker` a layout manager maker
`static class` `LayoutManagerMapping.ListBlockLayoutManagerMaker` a layout manager maker
`static class` `LayoutManagerMapping.ListItemLayoutManagerMaker` a layout manager maker
`static class` `LayoutManagerMapping.Maker` a layout manager maker base class
`class` `LayoutManagerMapping.MultiCaseLayoutManagerMaker`
`class` `LayoutManagerMapping.MultiSwitchLayoutManagerMaker`
`static class` `LayoutManagerMapping.PageNumberCitationLastLayoutManagerMaker` a layout manager maker
`static class` `LayoutManagerMapping.PageNumberCitationLayoutManagerMaker` a layout manager maker
`static class` `LayoutManagerMapping.PageNumberLayoutManagerMaker` a layout manager maker
`class` `LayoutManagerMapping.RetrieveMarkerLayoutManagerMaker` a layout manager maker
`class` `LayoutManagerMapping.RetrieveTableMarkerLayoutManagerMaker`
`static class` `LayoutManagerMapping.TableLayoutManagerMaker` a layout manager maker
`class` `LayoutManagerMapping.WrapperLayoutManagerMaker` a layout manager maker

### Constructor Summary

Constructors
Constructor and Description
`LayoutManagerMapping(FOUserAgent userAgent)` default constructor

### Method Summary

All Methods Instance Methods Concrete Methods
`protected void` `initialize()` Initializes the set of maker objects associated with this LayoutManagerMapping
`ContentLayoutManager` `makeContentLayoutManager(PageSequenceLayoutManager pslm, Title title)` Make a ContentLayoutManager object.
`ExternalDocumentLayoutManager` `makeExternalDocumentLayoutManager(AreaTreeHandler ath, ExternalDocument ed)` Make a ExternalDocumentLayoutManager object for the fox:external-document extension.
`FlowLayoutManager` `makeFlowLayoutManager(PageSequenceLayoutManager pslm, Flow flow)` Make a FlowLayoutManager object.
`LayoutManager` `makeLayoutManager(FONode node)` Make a specific LayoutManager for the node.
`void` `makeLayoutManagers(FONode node, List lms)` Make LayoutManagers for the node and add them to the list lms.
`PageSequenceLayoutManager` `makePageSequenceLayoutManager(AreaTreeHandler ath, PageSequence ps)` Make a PageSequenceLayoutManager object.
`StaticContentLayoutManager` `makeStaticContentLayoutManager(PageSequenceLayoutManager pslm, StaticContent sc, Block block)` Make a StaticContentLayoutManager object for a footnote-separator.
`StaticContentLayoutManager` `makeStaticContentLayoutManager(PageSequenceLayoutManager pslm, StaticContent sc, SideRegion reg)` Make a StaticContentLayoutManager object.
`protected void` `registerMaker(Class clazz, LayoutManagerMapping.Maker maker)` Registers a Maker class for a specific formatting object.

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Constructor Detail

#### LayoutManagerMapping

    public LayoutManagerMapping(FOUserAgent userAgent)

default constructor

### Method Detail

#### initialize

    protected void initialize()

Initializes the set of maker objects associated with this LayoutManagerMapping

#### registerMaker

    protected void registerMaker(Class clazz,
                                 LayoutManagerMapping.Maker maker)

Registers a Maker class for a specific formatting object.

Parameters:
  `clazz` - the formatting object class
  `maker` - the maker for the layout manager

#### makeLayoutManagers

    public void makeLayoutManagers(FONode node,
                                   List lms)

Make LayoutManagers for the node and add them to the list lms.

Specified by:
  `makeLayoutManagers` in interface `LayoutManagerMaker`
Parameters:
  `node` - the FO node for which the LayoutManagers are made
  `lms` - the list to which the LayoutManagers are added

#### makeLayoutManager

    public LayoutManager makeLayoutManager(FONode node)

Make a specific LayoutManager for the node. If not exactly one LayoutManagers is available, an IllegalStateException is thrown.

Specified by:
  `makeLayoutManager` in interface `LayoutManagerMaker`
Parameters:
  `node` - the FO node for which the LayoutManagers are made
Returns:
  The created LayoutManager

#### makePageSequenceLayoutManager

    public PageSequenceLayoutManager makePageSequenceLayoutManager(AreaTreeHandler ath,
                                                                   PageSequence ps)

Make a PageSequenceLayoutManager object.

Specified by:
  `makePageSequenceLayoutManager` in interface `LayoutManagerMaker`
Parameters:
  `ath` - the AreaTreeHandler object the PSLM interacts with
  `ps` - the fo:page-sequence object this PSLM will process
Returns:
  The created PageSequenceLayoutManager object

#### makeExternalDocumentLayoutManager

    public ExternalDocumentLayoutManager makeExternalDocumentLayoutManager(AreaTreeHandler ath,
                                                                           ExternalDocument ed)

Make a ExternalDocumentLayoutManager object for the fox:external-document extension.

Specified by:
  `makeExternalDocumentLayoutManager` in interface `LayoutManagerMaker`
Parameters:
  `ath` - the AreaTreeHandler object the external-document interacts with
  `ed` - the fox:external-document object to be processed
Returns:
  The created ExternalDocumentLayoutManager object

#### makeFlowLayoutManager

    public FlowLayoutManager makeFlowLayoutManager(PageSequenceLayoutManager pslm,
                                                   Flow flow)

Make a FlowLayoutManager object.

Specified by:
  `makeFlowLayoutManager` in interface `LayoutManagerMaker`
Parameters:
  `pslm` - the parent PageSequenceLayoutManager object
  `flow` - the fo:flow object this FLM will process
Returns:
  The created FlowLayoutManager object

#### makeContentLayoutManager

    public ContentLayoutManager makeContentLayoutManager(PageSequenceLayoutManager pslm,
                                                         Title title)

Make a ContentLayoutManager object.

Specified by:
  `makeContentLayoutManager` in interface `LayoutManagerMaker`
Parameters:
  `pslm` - the parent PageSequenceLayoutManager object
  `title` - the fo:title object this CLM will process
Returns:
  The created ContentLayoutManager object

#### makeStaticContentLayoutManager

    public StaticContentLayoutManager makeStaticContentLayoutManager(PageSequenceLayoutManager pslm,
                                                                     StaticContent sc,
                                                                     SideRegion reg)

Make a StaticContentLayoutManager object.

Specified by:
  `makeStaticContentLayoutManager` in interface `LayoutManagerMaker`
Parameters:
  `pslm` - the parent PageSequenceLayoutManager object
  `sc` - the fo:static-content object this SCLM will process
  `reg` - the side region indicating where the static content needs to be processed.
Returns:
  The created StaticContentLayoutManager object

#### makeStaticContentLayoutManager

    public StaticContentLayoutManager makeStaticContentLayoutManager(PageSequenceLayoutManager pslm,
                                                                     StaticContent sc,
                                                                     Block block)

Make a StaticContentLayoutManager object for a footnote-separator.

Specified by:
  `makeStaticContentLayoutManager` in interface `LayoutManagerMaker`
Parameters:
  `pslm` - the parent PageSequenceLayoutManager object
  `sc` - the fo:static-content object this SCLM will process
  `block` - the Block area this SCLM must add its areas to
Returns:
  The created StaticContentLayoutManager object