org.jfree.layouting.output

Class AbstractOutputProcessor

public abstract class AbstractOutputProcessor extends Object implements OutputProcessor

This base class configures the layouter for the normal DOM processing. The display model assumes, that all elements can be nested freely, without imposing any limitations at all.

Using this as base process for text-processing document output (like RTF or OpenOffice-Writer) is a sure way to the hell of funny behaviour.

Author: Thomas Morgner

Field Summary
protected static intPROCESSING_CONTENT
protected static intPROCESSING_GLOBAL_CONTENT
protected static intPROCESSING_PAGES
Constructor Summary
AbstractOutputProcessor(Configuration configuration)
Method Summary
InputFeedcreateInputFeed(LayoutProcess layoutProcess)
protected LogicalPageKeycreateLogicalPage(int width, int height)
ModelBuildercreateModelBuilder(LayoutProcess layoutProcess)
The model builder normalizes the input and builds the Display-Model.
NormalizercreateNormalizer(LayoutProcess layoutProcess)
Returns the content normalizer implementation for this OP.
ConfigurationgetConfiguration()
DocumentContextgetDocumentContext()
LogicalPageKeygetLogicalPage(int page)
intgetLogicalPageCount()
intgetPageCursor()
protected intgetProcessingState()
booleanisContentGeneratable()
This flag indicates, whether the output processor has collected enough information to start the content generation.
booleanisGlobalStateComputed()
This flag indicates, whether the global content has been computed.
booleanisPaginationFinished()
Checks, whether the 'processingFinished' event had been received at least once.
voidprocessContent(LogicalPageBox logicalPage)
voidprocessDocumentMetaData(DocumentContext documentContext)
protected voidprocessingContentFinished()
voidprocessingFinished()
Notifies the output processor, that the processing has been finished and that the input-feed received the last event.
protected voidprocessingGlobalContentFinished()
protected voidprocessingPagesFinished()
protected abstract voidprocessPageContent(LogicalPageKey logicalPageKey, LogicalPageBox logicalPage)
voidsetPageCursor(int pageCursor)

Field Detail

PROCESSING_CONTENT

protected static final int PROCESSING_CONTENT

PROCESSING_GLOBAL_CONTENT

protected static final int PROCESSING_GLOBAL_CONTENT

PROCESSING_PAGES

protected static final int PROCESSING_PAGES

Constructor Detail

AbstractOutputProcessor

public AbstractOutputProcessor(Configuration configuration)

Method Detail

createInputFeed

public InputFeed createInputFeed(LayoutProcess layoutProcess)

createLogicalPage

protected LogicalPageKey createLogicalPage(int width, int height)

createModelBuilder

public ModelBuilder createModelBuilder(LayoutProcess layoutProcess)
The model builder normalizes the input and builds the Display-Model. The DisplayModel enriches and normalizes the logical document model so that it is better suited for rendering.

Returns:

createNormalizer

public Normalizer createNormalizer(LayoutProcess layoutProcess)
Returns the content normalizer implementation for this OP. The content normalizer is responsible for resolving the styles and for initiating the DOM building.

Returns:

getConfiguration

public Configuration getConfiguration()

getDocumentContext

public DocumentContext getDocumentContext()

getLogicalPage

public LogicalPageKey getLogicalPage(int page)

getLogicalPageCount

public int getLogicalPageCount()

getPageCursor

public int getPageCursor()

getProcessingState

protected int getProcessingState()

isContentGeneratable

public boolean isContentGeneratable()
This flag indicates, whether the output processor has collected enough information to start the content generation.

Returns:

isGlobalStateComputed

public boolean isGlobalStateComputed()
This flag indicates, whether the global content has been computed. Global content consists of global counters (except the pages counter) and derived information like table of contents, the global directory of images or tables etc.

The global state must be computed before paginating can be attempted (if the output target is paginating at all).

Returns: true, if the global state has been computed, false otherwise.

isPaginationFinished

public boolean isPaginationFinished()
Checks, whether the 'processingFinished' event had been received at least once.

Returns:

processContent

public final void processContent(LogicalPageBox logicalPage)

processDocumentMetaData

public void processDocumentMetaData(DocumentContext documentContext)

processingContentFinished

protected void processingContentFinished()

processingFinished

public void processingFinished()
Notifies the output processor, that the processing has been finished and that the input-feed received the last event.

processingGlobalContentFinished

protected void processingGlobalContentFinished()

processingPagesFinished

protected void processingPagesFinished()

processPageContent

protected abstract void processPageContent(LogicalPageKey logicalPageKey, LogicalPageBox logicalPage)

setPageCursor

public void setPageCursor(int pageCursor)