summaryrefslogtreecommitdiffstats
path: root/reportbuilder/java/com/sun/star/report/pentaho/output/text/TextRawReportTarget.java
diff options
context:
space:
mode:
Diffstat (limited to 'reportbuilder/java/com/sun/star/report/pentaho/output/text/TextRawReportTarget.java')
-rw-r--r--reportbuilder/java/com/sun/star/report/pentaho/output/text/TextRawReportTarget.java134
1 files changed, 43 insertions, 91 deletions
diff --git a/reportbuilder/java/com/sun/star/report/pentaho/output/text/TextRawReportTarget.java b/reportbuilder/java/com/sun/star/report/pentaho/output/text/TextRawReportTarget.java
index cdbb36abc337..947087a17c11 100644
--- a/reportbuilder/java/com/sun/star/report/pentaho/output/text/TextRawReportTarget.java
+++ b/reportbuilder/java/com/sun/star/report/pentaho/output/text/TextRawReportTarget.java
@@ -100,7 +100,6 @@ public class TextRawReportTarget extends OfficeDocumentReportTarget
private static final int CP_SETUP = 0;
private static final int CP_FIRST_TABLE = 1;
private static final int CP_NEXT_TABLE = 2;
-
// This is the initial state of the detail-band processing. It states, that we are now waiting for a
// detail-band to be printed.
private static final int DETAIL_SECTION_WAIT = 0;
@@ -166,11 +165,7 @@ public class TextRawReportTarget extends OfficeDocumentReportTarget
private boolean isResetPageNumber()
{
- if (pageBreakDefinition == null)
- {
- return false;
- }
- return pageBreakDefinition.isResetPageNumber();
+ return pageBreakDefinition != null && pageBreakDefinition.isResetPageNumber();
}
/**
@@ -198,14 +193,7 @@ public class TextRawReportTarget extends OfficeDocumentReportTarget
}
final boolean keepWithNext;
- if (keepTogetherState == PageContext.KEEP_TOGETHER_FIRST_DETAIL)
- {
- keepWithNext = (detailBandProcessingState == DETAIL_SECTION_WAIT);
- }
- else
- {
- keepWithNext = false;
- }
+ keepWithNext = keepTogetherState == PageContext.KEEP_TOGETHER_FIRST_DETAIL && (detailBandProcessingState == DETAIL_SECTION_WAIT);
return keepWithNext;
}
@@ -213,15 +201,7 @@ public class TextRawReportTarget extends OfficeDocumentReportTarget
{
final Object forceNewPage =
attrs.getAttribute(OfficeNamespaces.OOREPORT_NS, "force-new-page");
- if ("after-section".equals(forceNewPage))
- {
- return true;
- }
- if ("before-after-section".equals(forceNewPage))
- {
- return true;
- }
- return false;
+ return "after-section".equals(forceNewPage) || "before-after-section".equals(forceNewPage);
}
private boolean isSectionPagebreakBefore(final AttributeMap attrs)
@@ -268,8 +248,7 @@ public class TextRawReportTarget extends OfficeDocumentReportTarget
}
final String masterPageName;
- if (currentMasterPage == null ||
- !masterPageFactory.containsMasterPage(STANDARD, activePageHeader, activePageFooter))
+ if (currentMasterPage == null || !masterPageFactory.containsMasterPage(STANDARD, activePageHeader, activePageFooter))
{
final CSSNumericValue headerSize = context.getAllHeaderSize();
@@ -325,8 +304,7 @@ public class TextRawReportTarget extends OfficeDocumentReportTarget
// report header, then this implies that we have to insert a manual
// pagebreak at the end of the section.
- if ((!printHeader && context.getHeader() != null) ||
- (!printFooter && context.getFooter() != null))
+ if ((!printHeader && context.getHeader() != null) || (!printFooter && context.getFooter() != null))
{
setPagebreakDefinition(new PageBreakDefinition(isResetPageNumber()));
}
@@ -577,15 +555,13 @@ public class TextRawReportTarget extends OfficeDocumentReportTarget
}
else if (isFilteredNamespace(namespace))
{
- throw new IllegalStateException("This element should be hidden: " +
- namespace + ", " + elementType);
+ throw new IllegalStateException("This element should be hidden: " + namespace + ", " + elementType);
}
if (isTableMergeActive() && detailBandProcessingState == DETAIL_SECTION_OTHER_PRINTED && ObjectUtilities.equal(OfficeNamespaces.TABLE_NS, namespace) && ObjectUtilities.equal(OfficeToken.TABLE_COLUMNS, elementType))
{
// Skip the columns section if the tables get merged..
startBuffering(getStylesCollection(), true);
- return;
}
else
{
@@ -624,8 +600,8 @@ public class TextRawReportTarget extends OfficeDocumentReportTarget
final String varType = (String) attrs.getAttribute(OfficeNamespaces.OFFICE_NS, FormatValueUtility.VALUE_TYPE);
final String newVarName = variablesDeclarations.produceVariable(varName, varType);
attrs.setAttribute(OfficeNamespaces.TEXT_NS, NAME, newVarName);
- // this one must not be written, as the DTD does not declare it.
- // attrs.setAttribute(OfficeNamespaces.OFFICE_NS, FormatValueUtility.VALUE_TYPE, null);
+ // this one must not be written, as the DTD does not declare it.
+ // attrs.setAttribute(OfficeNamespaces.OFFICE_NS, FormatValueUtility.VALUE_TYPE, null);
}
}
@@ -724,7 +700,7 @@ public class TextRawReportTarget extends OfficeDocumentReportTarget
graphicProperties.setAttribute(OfficeNamespaces.STYLE_NS, "flow-with-text", "false");
graphicProperties.setAttribute(OfficeNamespaces.DRAWING_NS, "ole-draw-aspect", "1");
- // attrs.setAttribute(OfficeNamespaces.DRAWING_NS, OfficeToken.STYLE_NAME, predefAutoStyle.getStyleName());
+ // attrs.setAttribute(OfficeNamespaces.DRAWING_NS, OfficeToken.STYLE_NAME, predefAutoStyle.getStyleName());
}
}
@@ -734,11 +710,10 @@ public class TextRawReportTarget extends OfficeDocumentReportTarget
final AttributeList attrList = buildAttributeList(attrs);
xmlWriter.writeTag(namespace, elementType, attrList, XmlWriterSupport.OPEN);
- if ( tableLayoutConfig != TABLE_LAYOUT_VARIABLES_PARAGRAPH
+ if (tableLayoutConfig != TABLE_LAYOUT_VARIABLES_PARAGRAPH
&& variables != null
&& !isRepeatingSection()
- && ReportTargetUtil.isElementOfType(OfficeNamespaces.TEXT_NS, OfficeToken.P, attrs)
- )
+ && ReportTargetUtil.isElementOfType(OfficeNamespaces.TEXT_NS, OfficeToken.P, attrs))
{
//LOGGER.debug("Variables-Section in existing cell " + variables);
xmlWriter.writeText(variables);
@@ -785,7 +760,7 @@ public class TextRawReportTarget extends OfficeDocumentReportTarget
}
else
{
- expectedTableRowCount = trc.intValue();
+ expectedTableRowCount = trc;
}
if (isSectionPagebreakBefore(attrs))
@@ -822,16 +797,15 @@ public class TextRawReportTarget extends OfficeDocumentReportTarget
// If we have a manual pagebreak, then activate the current master-page again.
masterPageName = currentMasterPage.getStyleName();
}
- // But we skip this (and therefore the resulting pagebreak) if there is no manual break
- // and no other condition that would force an break.
+ // But we skip this (and therefore the resulting pagebreak) if there is no manual break
+ // and no other condition that would force an break.
}
else if (currentRole == OfficeDocumentReportTarget.ROLE_REPEATING_GROUP_HEADER || currentRole == OfficeDocumentReportTarget.ROLE_REPEATING_GROUP_FOOTER)
{
breakDefinition = null;
- // no pagebreaks ..
+ // no pagebreaks ..
}
- else if (currentMasterPage == null ||
- isPagebreakPending())
+ else if (currentMasterPage == null || isPagebreakPending())
{
// Must be the first table, as we have no master-page yet.
masterPageName = createMasterPage(true, true);
@@ -848,9 +822,7 @@ public class TextRawReportTarget extends OfficeDocumentReportTarget
breakDefinition = null;
}
}
- else if (isPagebreakPending() &&
- currentRole != OfficeDocumentReportTarget.ROLE_REPEATING_GROUP_HEADER &&
- currentRole != OfficeDocumentReportTarget.ROLE_REPEATING_GROUP_FOOTER)
+ else if (isPagebreakPending() && currentRole != OfficeDocumentReportTarget.ROLE_REPEATING_GROUP_HEADER && currentRole != OfficeDocumentReportTarget.ROLE_REPEATING_GROUP_FOOTER)
{
// Derive an automatic style for the pagebreak.
// LOGGER.debug("Manual pagebreak (within the section): " + getCurrentRole());
@@ -869,8 +841,7 @@ public class TextRawReportTarget extends OfficeDocumentReportTarget
}
final XmlWriter xmlWriter = getXmlWriter();
- if (detailBandProcessingState == DETAIL_SECTION_OTHER_PRINTED &&
- masterPageName != null)
+ if (detailBandProcessingState == DETAIL_SECTION_OTHER_PRINTED && masterPageName != null)
{
// close the last table-tag, we will open a new one
xmlWriter.writeCloseTag();
@@ -903,7 +874,7 @@ public class TextRawReportTarget extends OfficeDocumentReportTarget
xmlWriter.writeTag(OfficeNamespaces.TEXT_NS, OfficeToken.P, OfficeToken.STYLE_NAME, style.getStyleName(), XmlWriterSupport.OPEN);
masterPageName = null;
- //breakDefinition = null;
+ //breakDefinition = null;
}
else if (isColumnBreakPending())
{
@@ -935,19 +906,10 @@ public class TextRawReportTarget extends OfficeDocumentReportTarget
final boolean keepWithNext = isKeepTableWithNext();
final boolean localKeepTogether = OfficeToken.TRUE.equals(attrs.getAttribute(OfficeNamespaces.OOREPORT_NS, KEEP_TOGETHER));
final boolean tableMergeActive = isTableMergeActive();
- if (tableMergeActive)
- {
- this.sectionKeepTogether = localKeepTogether;
- }
- else
- {
- this.sectionKeepTogether = false;
-
- }
+ this.sectionKeepTogether = tableMergeActive && localKeepTogether;
// Check, whether we have a reason to derive a style...
- if (masterPageName != null ||
- (!tableMergeActive && (localKeepTogether || keepWithNext)) || isColumnBreakPending())
+ if (masterPageName != null || (!tableMergeActive && (localKeepTogether || keepWithNext)) || isColumnBreakPending())
{
final String styleName = (String) attrs.getAttribute(OfficeNamespaces.TABLE_NS, OfficeToken.STYLE_NAME);
final OfficeStyle style = deriveStyle("table", styleName);
@@ -1009,8 +971,8 @@ public class TextRawReportTarget extends OfficeDocumentReportTarget
}
}
attrs.setAttribute(OfficeNamespaces.TABLE_NS, OfficeToken.STYLE_NAME, style.getStyleName());
- // no need to copy the styles, this was done while deriving the
- // style ..
+ // no need to copy the styles, this was done while deriving the
+ // style ..
}
else
{
@@ -1074,8 +1036,7 @@ public class TextRawReportTarget extends OfficeDocumentReportTarget
private boolean isTableMergeActive()
{
- return getCurrentRole() == ROLE_DETAIL &&
- tableLayoutConfig == TABLE_LAYOUT_SINGLE_DETAIL_TABLE;
+ return getCurrentRole() == ROLE_DETAIL && tableLayoutConfig == TABLE_LAYOUT_SINGLE_DETAIL_TABLE;
}
private void openSection()
@@ -1086,9 +1047,7 @@ public class TextRawReportTarget extends OfficeDocumentReportTarget
// repeating sections have other ways of defining columns ..
return;
}
- if (getCurrentRole() == ROLE_TEMPLATE ||
- getCurrentRole() == ROLE_SPREADSHEET_PAGE_HEADER ||
- getCurrentRole() == ROLE_SPREADSHEET_PAGE_FOOTER)
+ if (getCurrentRole() == ROLE_TEMPLATE || getCurrentRole() == ROLE_SPREADSHEET_PAGE_HEADER || getCurrentRole() == ROLE_SPREADSHEET_PAGE_FOOTER)
{
// the template section would break the multi-column stuff and we dont open up sections there
// anyway ..
@@ -1100,7 +1059,7 @@ public class TextRawReportTarget extends OfficeDocumentReportTarget
if (columnCount != null && !pageContext.isSectionOpen())
{
final AttributeList attrs = new AttributeList();
- attrs.setAttribute(OfficeNamespaces.TEXT_NS, OfficeToken.STYLE_NAME, generateSectionStyle(columnCount.intValue()));
+ attrs.setAttribute(OfficeNamespaces.TEXT_NS, OfficeToken.STYLE_NAME, generateSectionStyle(columnCount));
attrs.setAttribute(OfficeNamespaces.TEXT_NS, NAME, sectionNames.generateName("Section"));
getXmlWriter().writeTag(OfficeNamespaces.TEXT_NS, "section", attrs, XmlWriterSupport.OPEN);
@@ -1113,9 +1072,7 @@ public class TextRawReportTarget extends OfficeDocumentReportTarget
throws IOException, DataSourceException, ReportProcessingException
{
sectionHeight = new LengthCalculator();
- if (role == OfficeDocumentReportTarget.ROLE_TEMPLATE ||
- role == OfficeDocumentReportTarget.ROLE_SPREADSHEET_PAGE_HEADER ||
- role == OfficeDocumentReportTarget.ROLE_SPREADSHEET_PAGE_FOOTER)
+ if (role == OfficeDocumentReportTarget.ROLE_TEMPLATE || role == OfficeDocumentReportTarget.ROLE_SPREADSHEET_PAGE_HEADER || role == OfficeDocumentReportTarget.ROLE_SPREADSHEET_PAGE_FOOTER)
{
// Start buffering with an dummy styles-collection, so that the global styles dont get polluted ..
startBuffering(new OfficeStylesCollection(), true);
@@ -1241,9 +1198,7 @@ public class TextRawReportTarget extends OfficeDocumentReportTarget
protected void endReportSection(final AttributeMap attrs, final int role)
throws IOException, DataSourceException, ReportProcessingException
{
- if (role == ROLE_TEMPLATE ||
- role == OfficeDocumentReportTarget.ROLE_SPREADSHEET_PAGE_HEADER ||
- role == OfficeDocumentReportTarget.ROLE_SPREADSHEET_PAGE_FOOTER)
+ if (role == ROLE_TEMPLATE || role == OfficeDocumentReportTarget.ROLE_SPREADSHEET_PAGE_HEADER || role == OfficeDocumentReportTarget.ROLE_SPREADSHEET_PAGE_FOOTER)
{
finishBuffering();
return;
@@ -1369,16 +1324,13 @@ public class TextRawReportTarget extends OfficeDocumentReportTarget
return;
}
- if (isInternalNS && (ObjectUtilities.equal(OfficeToken.IMAGE, elementType) ||
- ObjectUtilities.equal(OfficeToken.OBJECT_OLE, elementType)))
+ if (isInternalNS && (ObjectUtilities.equal(OfficeToken.IMAGE, elementType) || ObjectUtilities.equal(OfficeToken.OBJECT_OLE, elementType)))
{
return;
}
final XmlWriter xmlWriter = getXmlWriter();
- if (tableLayoutConfig != TABLE_LAYOUT_VARIABLES_PARAGRAPH &&
- isTableNs && ObjectUtilities.equal(OfficeToken.TABLE_CELL, elementType) &&
- !isRepeatingSection() )
+ if (tableLayoutConfig != TABLE_LAYOUT_VARIABLES_PARAGRAPH && isTableNs && ObjectUtilities.equal(OfficeToken.TABLE_CELL, elementType) && !isRepeatingSection())
{
if (variables != null)
{
@@ -1403,19 +1355,19 @@ public class TextRawReportTarget extends OfficeDocumentReportTarget
xmlWriter.writeCloseTag();
variables = null;
}
- /**
- // Only generate the empty paragraph, if we have to add the keep-together ..
- else if (cellEmpty && expectedTableRowCount > 0 &&
- sectionKeepTogether && !firstCellSeen)
- {
- // we have no variables ..
- StyleUtilities.copyStyle(OfficeToken.PARAGRAPH,
- TextRawReportTarget.VARIABLES_HIDDEN_STYLE_WITH_KEEPWNEXT, getStylesCollection(),
- getGlobalStylesCollection(), getPredefinedStylesCollection());
- xmlWriter.writeTag(OfficeNamespaces.TEXT_NS, OfficeToken.P, OfficeToken.STYLE_NAME,
- TextRawReportTarget.VARIABLES_HIDDEN_STYLE_WITH_KEEPWNEXT, XmlWriterSupport.CLOSE);
- }
- */
+ /**
+ // Only generate the empty paragraph, if we have to add the keep-together ..
+ else if (cellEmpty && expectedTableRowCount > 0 &&
+ sectionKeepTogether && !firstCellSeen)
+ {
+ // we have no variables ..
+ StyleUtilities.copyStyle(OfficeToken.PARAGRAPH,
+ TextRawReportTarget.VARIABLES_HIDDEN_STYLE_WITH_KEEPWNEXT, getStylesCollection(),
+ getGlobalStylesCollection(), getPredefinedStylesCollection());
+ xmlWriter.writeTag(OfficeNamespaces.TEXT_NS, OfficeToken.P, OfficeToken.STYLE_NAME,
+ TextRawReportTarget.VARIABLES_HIDDEN_STYLE_WITH_KEEPWNEXT, XmlWriterSupport.CLOSE);
+ }
+ */
}
if (isTableNs && (ObjectUtilities.equal(OfficeToken.TABLE_CELL, elementType) || ObjectUtilities.equal(OfficeToken.COVERED_TABLE_CELL, elementType)))