org.pentaho.reporting.engine.classic.core.layout
Class AbstractRenderer

java.lang.Object
  extended by org.pentaho.reporting.engine.classic.core.layout.AbstractRenderer
All Implemented Interfaces:
Cloneable, Renderer
Direct Known Subclasses:
FlowRenderer, PageableRenderer, StreamingRenderer

public abstract class AbstractRenderer
extends Object
implements Renderer

The LayoutSystem is a simplified version of the LibLayout-rendering system.

Author:
Thomas Morgner

Nested Class Summary
 
Nested classes/interfaces inherited from interface org.pentaho.reporting.engine.classic.core.layout.Renderer
Renderer.LayoutResult
 
Field Summary
 
Fields inherited from interface org.pentaho.reporting.engine.classic.core.layout.Renderer
TYPE_FOOTER, TYPE_HEADER, TYPE_NORMALFLOW, TYPE_REPEATED_FOOTER, TYPE_WATERMARK
 
Method Summary
 void add(Band band, ExpressionRuntime runtime, ReportStateKey stateKey)
           
 void add(RenderBox box)
           
 void addEmptyRootLevelBand(ReportStateKey stateKey)
           
 void addPagebreak(ReportStateKey stateKey)
           
 void applyAutoCommit()
           
 void applyRollbackInformation()
           
 boolean clearPendingPageStart(LayoutPagebreakHandler layoutPagebreakHandler)
           
 Object clone()
           
 LayoutBuilder createBufferedLayoutBuilder()
           
 void createRollbackInformation()
           
 Renderer deriveForPagebreak()
           
 Renderer deriveForStorage()
           
 void endGroup()
           
 void endGroupBody()
           
 void endReport()
           
 InlineSubreportMarker[] endSection()
           
 void endSubReport()
           
 ReportStateKey getLastStateKey()
           
 OutputProcessor getOutputProcessor()
           
 int getPagebreaks()
           
 Object getStateKey()
           
 boolean isCurrentPageEmpty()
           
 boolean isDirty()
           
 boolean isOpen()
           
 boolean isPageStartPending()
           
 boolean isPendingPageHack()
           
 boolean isSafeToStore()
           
 boolean isValid()
           
 void newPageStarted()
           
 void performParanoidModelCheck()
           
 void print()
           
 void processIncrementalUpdate(boolean performOutput)
           
 boolean processPage(LayoutPagebreakHandler handler, Object commitMarker, boolean performOutput)
           
 void rollback()
           
 void setLastStateKey(ReportStateKey lastStateKey)
           
 void setStateKey(Object stateKey)
           
 void startGroup(Group group)
           
 void startGroupBody(GroupBody groupBody)
           
 void startReport(ReportDefinition report)
           
 void startSection(int type)
           
 void startSubReport(ReportDefinition report, InstanceID insertationPoint)
           
 void validateAfterCommit()
           
 Renderer.LayoutResult validatePages()
           
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.pentaho.reporting.engine.classic.core.layout.Renderer
getPageCount
 

Method Detail

isSafeToStore

public boolean isSafeToStore()
Specified by:
isSafeToStore in interface Renderer

getStateKey

public Object getStateKey()

setStateKey

public void setStateKey(Object stateKey)
Specified by:
setStateKey in interface Renderer

getOutputProcessor

public OutputProcessor getOutputProcessor()
Specified by:
getOutputProcessor in interface Renderer

startReport

public void startReport(ReportDefinition report)
Specified by:
startReport in interface Renderer

startSubReport

public void startSubReport(ReportDefinition report,
                           InstanceID insertationPoint)
Specified by:
startSubReport in interface Renderer

startGroup

public void startGroup(Group group)
Specified by:
startGroup in interface Renderer

startGroupBody

public void startGroupBody(GroupBody groupBody)
Specified by:
startGroupBody in interface Renderer

startSection

public void startSection(int type)
Specified by:
startSection in interface Renderer

endSection

public InlineSubreportMarker[] endSection()
Specified by:
endSection in interface Renderer

endGroupBody

public void endGroupBody()
Specified by:
endGroupBody in interface Renderer

endGroup

public void endGroup()
Specified by:
endGroup in interface Renderer

endSubReport

public void endSubReport()
Specified by:
endSubReport in interface Renderer

endReport

public void endReport()
Specified by:
endReport in interface Renderer

addEmptyRootLevelBand

public void addEmptyRootLevelBand(ReportStateKey stateKey)
                           throws ReportProcessingException
Specified by:
addEmptyRootLevelBand in interface Renderer
Throws:
ReportProcessingException

add

public void add(Band band,
                ExpressionRuntime runtime,
                ReportStateKey stateKey)
         throws ReportProcessingException
Specified by:
add in interface Renderer
Throws:
ReportProcessingException

add

public void add(RenderBox box)
Specified by:
add in interface Renderer

validatePages

public Renderer.LayoutResult validatePages()
                                    throws ContentProcessingException
Specified by:
validatePages in interface Renderer
Throws:
ContentProcessingException

processIncrementalUpdate

public void processIncrementalUpdate(boolean performOutput)
                              throws ContentProcessingException
Specified by:
processIncrementalUpdate in interface Renderer
Throws:
ContentProcessingException

processPage

public boolean processPage(LayoutPagebreakHandler handler,
                           Object commitMarker,
                           boolean performOutput)
                    throws ContentProcessingException
Specified by:
processPage in interface Renderer
Throws:
ContentProcessingException

getLastStateKey

public ReportStateKey getLastStateKey()
Specified by:
getLastStateKey in interface Renderer

setLastStateKey

public void setLastStateKey(ReportStateKey lastStateKey)

getPagebreaks

public int getPagebreaks()
Specified by:
getPagebreaks in interface Renderer

isOpen

public boolean isOpen()
Specified by:
isOpen in interface Renderer

isValid

public boolean isValid()
Specified by:
isValid in interface Renderer

deriveForStorage

public Renderer deriveForStorage()
Specified by:
deriveForStorage in interface Renderer

deriveForPagebreak

public Renderer deriveForPagebreak()
Specified by:
deriveForPagebreak in interface Renderer

performParanoidModelCheck

public void performParanoidModelCheck()

clone

public Object clone()
             throws CloneNotSupportedException
Specified by:
clone in interface Renderer
Overrides:
clone in class Object
Throws:
CloneNotSupportedException

addPagebreak

public void addPagebreak(ReportStateKey stateKey)
Specified by:
addPagebreak in interface Renderer

clearPendingPageStart

public boolean clearPendingPageStart(LayoutPagebreakHandler layoutPagebreakHandler)
Specified by:
clearPendingPageStart in interface Renderer

isCurrentPageEmpty

public boolean isCurrentPageEmpty()
Specified by:
isCurrentPageEmpty in interface Renderer

isPageStartPending

public boolean isPageStartPending()
Specified by:
isPageStartPending in interface Renderer

isDirty

public boolean isDirty()

createRollbackInformation

public void createRollbackInformation()
Specified by:
createRollbackInformation in interface Renderer

applyRollbackInformation

public void applyRollbackInformation()
Specified by:
applyRollbackInformation in interface Renderer

validateAfterCommit

public void validateAfterCommit()

rollback

public void rollback()
Specified by:
rollback in interface Renderer

applyAutoCommit

public void applyAutoCommit()
Specified by:
applyAutoCommit in interface Renderer

createBufferedLayoutBuilder

public LayoutBuilder createBufferedLayoutBuilder()
Specified by:
createBufferedLayoutBuilder in interface Renderer

isPendingPageHack

public boolean isPendingPageHack()
Specified by:
isPendingPageHack in interface Renderer

print

public void print()
Specified by:
print in interface Renderer

newPageStarted

public void newPageStarted()
Specified by:
newPageStarted in interface Renderer