/*
 * Licensed to the Apache Software Foundation (ASF) under one or more
 * contributor license agreements.  See the NOTICE file distributed with
 * this work for additional information regarding copyright ownership.
 * The ASF licenses this file to You under the Apache License, Version 2.0
 * (the "License"); you may not use this file except in compliance with
 * the License.  You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

/* $Id: BlockLevelEventProducer.java 1733431 2016-03-03 09:40:50Z gadams $ */

package org.apache.fop.layoutmgr;

import org.xml.sax.Locator;

import org.apache.fop.events.EventBroadcaster;
import org.apache.fop.events.EventProducer;
import org.apache.fop.fo.pagination.PageProductionException;

Event producer interface for block-level layout managers.
/** * Event producer interface for block-level layout managers. */
public interface BlockLevelEventProducer extends EventProducer {
Provider class for the event producer.
/** * Provider class for the event producer. */
final class Provider { private Provider() { }
Returns an event producer.
Params:
  • broadcaster – the event broadcaster to use
Returns:the event producer
/** * Returns an event producer. * @param broadcaster the event broadcaster to use * @return the event producer */
public static BlockLevelEventProducer get(EventBroadcaster broadcaster) { return broadcaster.getEventProducerFor(BlockLevelEventProducer.class); } }
The contents of a table-row are too big to fit in the constraints.
Params:
  • source – the event source
  • row – the row number
  • effCellBPD – the effective extent in block-progression direction of the cell
  • maxCellBPD – the maximum extent in block-progression direction of the cell
  • loc – the location of the error or null
@event.severityWARN
/** * The contents of a table-row are too big to fit in the constraints. * @param source the event source * @param row the row number * @param effCellBPD the effective extent in block-progression direction of the cell * @param maxCellBPD the maximum extent in block-progression direction of the cell * @param loc the location of the error or null * @event.severity WARN */
void rowTooTall(Object source, int row, int effCellBPD, int maxCellBPD, Locator loc);
Auto-table layout is not supported, yet.
Params:
  • source – the event source
  • loc – the location of the error or null
@event.severityINFO
/** * Auto-table layout is not supported, yet. * @param source the event source * @param loc the location of the error or null * @event.severity INFO */
void tableFixedAutoWidthNotSupported(Object source, Locator loc);
An formatting object is too wide.
Params:
  • source – the event source
  • elementName – the formatting object
  • effIPD – the effective extent in inline-progression direction of the table contents
  • maxIPD – the maximum extent in inline-progression direction available
  • loc – the location of the error or null
@event.severityWARN
/** * An formatting object is too wide. * @param source the event source * @param elementName the formatting object * @param effIPD the effective extent in inline-progression direction of the table contents * @param maxIPD the maximum extent in inline-progression direction available * @param loc the location of the error or null * @event.severity WARN */
void objectTooWide(Object source, String elementName, int effIPD, int maxIPD, Locator loc);
An overconstrained geometry adjustment rule was triggered (5.3.4, XSL 1.0).
Params:
  • source – the event source
  • elementName – the formatting object
  • amount – the amount of the adjustment (in mpt)
  • loc – the location of the error or null
@event.severityINFO
/** * An overconstrained geometry adjustment rule was triggered (5.3.4, XSL 1.0). * @param source the event source * @param elementName the formatting object * @param amount the amount of the adjustment (in mpt) * @param loc the location of the error or null * @event.severity INFO */
void overconstrainedAdjustEndIndent(Object source, String elementName, int amount, Locator loc);
Contents IPD overflow a viewport.
Params:
  • source – the event source
  • elementName – the formatting object
  • amount – the amount by which the contents overflow (in mpt)
  • clip – true if the content will be clipped
  • canRecover – indicates whether FOP can recover from this problem and continue working
  • loc – the location of the error or null
@event.severityERROR
/** * Contents IPD overflow a viewport. * @param source the event source * @param elementName the formatting object * @param amount the amount by which the contents overflow (in mpt) * @param clip true if the content will be clipped * @param canRecover indicates whether FOP can recover from this problem and continue working * @param loc the location of the error or null * @event.severity ERROR */
void viewportIPDOverflow(Object source, String elementName, int amount, boolean clip, boolean canRecover, Locator loc);
Contents BPD overflow a viewport.
Params:
  • source – the event source
  • elementName – the formatting object
  • amount – the amount by which the contents overflow (in mpt)
  • clip – true if the content will be clipped
  • canRecover – indicates whether FOP can recover from this problem and continue working
  • loc – the location of the error or null
@event.severityERROR
/** * Contents BPD overflow a viewport. * @param source the event source * @param elementName the formatting object * @param amount the amount by which the contents overflow (in mpt) * @param clip true if the content will be clipped * @param canRecover indicates whether FOP can recover from this problem and continue working * @param loc the location of the error or null * @event.severity ERROR */
void viewportBPDOverflow(Object source, String elementName, int amount, boolean clip, boolean canRecover, Locator loc);
Contents overflow a region viewport.
Params:
  • source – the event source
  • elementName – the formatting object
  • page – the page number/name where the overflow happened
  • amount – the amount by which the contents overflow (in mpt)
  • clip – true if the content will be clipped
  • canRecover – indicates whether FOP can recover from this problem and continue working
  • loc – the location of the error or null
Throws:
@event.severityFATAL
/** * Contents overflow a region viewport. * @param source the event source * @param elementName the formatting object * @param page the page number/name where the overflow happened * @param amount the amount by which the contents overflow (in mpt) * @param clip true if the content will be clipped * @param canRecover indicates whether FOP can recover from this problem and continue working * @param loc the location of the error or null * @throws LayoutException the layout error provoked by the method call * @event.severity FATAL */
void regionOverflow(Object source, String elementName, String page, int amount, boolean clip, boolean canRecover, Locator loc) throws LayoutException;
Contents overflow a static region viewport.
Params:
  • source – the event source
  • elementName – the formatting object
  • page – the page number/name where the overflow happened
  • amount – the amount by which the contents overflow (in mpt)
  • clip – true if the content will be clipped
  • canRecover – indicates whether FOP can recover from this problem and continue working
  • loc – the location of the error or null
Throws:
@event.severityFATAL
/** * Contents overflow a static region viewport. * @param source the event source * @param elementName the formatting object * @param page the page number/name where the overflow happened * @param amount the amount by which the contents overflow (in mpt) * @param clip true if the content will be clipped * @param canRecover indicates whether FOP can recover from this problem and continue working * @param loc the location of the error or null * @throws LayoutException the layout error provoked by the method call * @event.severity FATAL */
void staticRegionOverflow(Object source, String elementName, String page, int amount, boolean clip, boolean canRecover, Locator loc) throws LayoutException;
Indicates that FOP doesn't support flows that are not mapped to region-body, yet.
Params:
  • source – the event source
  • flowName – the flow name
  • masterName – the page master name
  • loc – the location of the error or null
Throws:
@event.severityFATAL
/** * Indicates that FOP doesn't support flows that are not mapped to region-body, yet. * @param source the event source * @param flowName the flow name * @param masterName the page master name * @param loc the location of the error or null * @throws UnsupportedOperationException the layout error provoked by the method call * @event.severity FATAL */
void flowNotMappingToRegionBody(Object source, String flowName, String masterName, Locator loc) throws UnsupportedOperationException;
A page sequence master is exhausted.
Params:
  • source – the event source
  • pageSequenceMasterName – the name of the page sequence master
  • canRecover – indicates whether FOP can recover from this problem and continue working
  • loc – the location of the error or null
Throws:
@event.severityFATAL
/** * A page sequence master is exhausted. * @param source the event source * @param pageSequenceMasterName the name of the page sequence master * @param canRecover indicates whether FOP can recover from this problem and continue working * @param loc the location of the error or null * @throws PageProductionException the error provoked by the method call * @event.severity FATAL */
void pageSequenceMasterExhausted(Object source, String pageSequenceMasterName, boolean canRecover, Locator loc) throws PageProductionException;
No subsequences in page sequence master.
Params:
  • source – the event source
  • pageSequenceMasterName – the name of the page sequence master
  • loc – the location of the error or null
Throws:
@event.severityFATAL
/** * No subsequences in page sequence master. * @param source the event source * @param pageSequenceMasterName the name of the page sequence master * @param loc the location of the error or null * @throws PageProductionException the error provoked by the method call * @event.severity FATAL */
void missingSubsequencesInPageSequenceMaster(Object source, String pageSequenceMasterName, Locator loc) throws PageProductionException;
No single-page-master matching in page sequence master.
Params:
  • source – the event source
  • pageSequenceMasterName – the name of the page sequence master
  • pageMasterName – the name of the page master not matching
  • loc – the location of the error or null
Throws:
@event.severityFATAL
/** * No single-page-master matching in page sequence master. * @param source the event source * @param pageSequenceMasterName the name of the page sequence master * @param pageMasterName the name of the page master not matching * @param loc the location of the error or null * @throws PageProductionException the error provoked by the method call * @event.severity FATAL */
void noMatchingPageMaster(Object source, String pageSequenceMasterName, String pageMasterName, Locator loc) throws PageProductionException;
An element that cannot handle changing IPD (list, table) is flowing to a narrower page. Some content may be lost.
Params:
  • source – the event source
@event.severityWARN
/** * An element that cannot handle changing IPD (list, table) is flowing to a narrower * page. Some content may be lost. * * @param source the event source * @event.severity WARN */
void nonRestartableContentFlowingToNarrowerPage(Object source);
A feasible layout has reached the given number of parts (columns or pages).
Params:
  • source – the event source
  • partCount – the number of parts that the layout has reached
@event.severityINFO
/** * A feasible layout has reached the given number of parts (columns or pages). * * @param source the event source * @param partCount the number of parts that the layout has reached * @event.severity INFO */
void layoutHasReachedParts(Object source, int partCount);
Last page master reference missing.
Params:
  • source – the event source
@event.severityWARN
/** * Last page master reference missing. * * @param source the event source * @event.severity WARN */
void lastPageMasterReferenceMissing(Object source, Locator loc); }