Class AbstractLayoutController
- java.lang.Object
-
- org.jfree.report.flow.layoutprocessor.AbstractLayoutController
-
- All Implemented Interfaces:
java.lang.Cloneable
,LayoutController
- Direct Known Subclasses:
BufferingLayoutController
,StaticTextLayoutController
public abstract class AbstractLayoutController extends java.lang.Object implements LayoutController
Todo: Document me!- Since:
- 05.03.2007
- Author:
- Thomas Morgner
-
-
Constructor Summary
Constructors Modifier Constructor Description protected
AbstractLayoutController()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.lang.Object
clone()
Creates a copy of this layout controller.LayoutController
createPrecomputeInstance(FlowController fc)
Derives a copy of this controller that is suitable to perform a precomputation.FlowController
getFlowController()
java.lang.Object
getNode()
LayoutController
getParent()
Retrieves the parent of this layout controller.void
initialize(java.lang.Object node, FlowController flowController, LayoutController parent)
Initializes the layout controller.boolean
isInitialized()
-
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.jfree.report.flow.layoutprocessor.LayoutController
advance, isAdvanceable, join
-
-
-
-
Method Detail
-
getParent
public LayoutController getParent()
Retrieves the parent of this layout controller. This allows childs to query their context.- Specified by:
getParent
in interfaceLayoutController
- Returns:
- the layout controller's parent to
null
if there is no parent.
-
initialize
public void initialize(java.lang.Object node, FlowController flowController, LayoutController parent) throws DataSourceException, ReportDataFactoryException, ReportProcessingException
Initializes the layout controller. This method is called exactly once. It is the creators responsibility to call this method. Calling initialize after the first advance must result in a IllegalStateException.- Specified by:
initialize
in interfaceLayoutController
- Parameters:
node
- the currently processed object or layout node.flowController
- the current flow controller.parent
- the parent layout controller that was responsible for instantiating this controller.- Throws:
DataSourceException
- if there was a problem reading data from the datasource.ReportProcessingException
- if there was a general problem during the report processing.ReportDataFactoryException
- if a query failed.
-
clone
public java.lang.Object clone()
Description copied from interface:LayoutController
Creates a copy of this layout controller.- Specified by:
clone
in interfaceLayoutController
- Overrides:
clone
in classjava.lang.Object
- Returns:
- a copy.
-
getFlowController
public FlowController getFlowController()
- Specified by:
getFlowController
in interfaceLayoutController
-
getNode
public java.lang.Object getNode()
- Specified by:
getNode
in interfaceLayoutController
-
isInitialized
public boolean isInitialized()
-
createPrecomputeInstance
public LayoutController createPrecomputeInstance(FlowController fc)
Derives a copy of this controller that is suitable to perform a precomputation.- Specified by:
createPrecomputeInstance
in interfaceLayoutController
- Parameters:
fc
-- Returns:
-
-