Many resources are needed to download a project. Please understand that we have to compensate our server costs. Thank you in advance. Project price only 1 $
You can buy this project and download/modify it how often you want.
/*
* JasperReports - Free Java Reporting Library.
* Copyright (C) 2001 - 2023 Cloud Software Group, Inc. All rights reserved.
* http://www.jaspersoft.com
*
* Unless you have purchased a commercial license agreement from Jaspersoft,
* the following license terms apply:
*
* This program is part of JasperReports.
*
* JasperReports is free software: you can redistribute it and/or modify
* it under the terms of the GNU Lesser General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* JasperReports is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with JasperReports. If not, see .
*/
package net.sf.jasperreports.export;
import net.sf.jasperreports.annotations.properties.Property;
import net.sf.jasperreports.annotations.properties.PropertyScope;
import net.sf.jasperreports.engine.JRPropertiesUtil;
import net.sf.jasperreports.engine.export.JRCsvExporter;
import net.sf.jasperreports.engine.export.JRCsvMetadataExporter;
import net.sf.jasperreports.export.annotations.ExporterParameter;
import net.sf.jasperreports.export.annotations.ExporterProperty;
import net.sf.jasperreports.properties.PropertyConstants;
/**
* Interface containing settings used by the CSV exporters.
*
* @see JRCsvExporter
* @see JRCsvMetadataExporter
*
* @author Teodor Danciu ([email protected])
*/
public interface CsvExporterConfiguration extends ExporterConfiguration
{
/**
* Property whose value is used as default for the {@link #getFieldDelimiter()} export configuration setting.
* The default is a comma character.
*
* @see JRPropertiesUtil
*/
@Property(
category = PropertyConstants.CATEGORY_EXPORT,
defaultValue = PropertyConstants.COMMA,
scopes = {PropertyScope.CONTEXT, PropertyScope.REPORT},
sinceVersion = PropertyConstants.VERSION_2_0_1
)
public static final String PROPERTY_FIELD_DELIMITER = JRPropertiesUtil.PROPERTY_PREFIX + "export.csv.field.delimiter";
/**
* Property whose value is used as default for the {@link #getRecordDelimiter()} export configuration setting.
* The default is a character return (\n).
*
* @see JRPropertiesUtil
*/
@Property(
category = PropertyConstants.CATEGORY_EXPORT,
defaultValue = PropertyConstants.NEWLINE,
scopes = {PropertyScope.CONTEXT, PropertyScope.REPORT},
sinceVersion = PropertyConstants.VERSION_2_0_1
)
public static final String PROPERTY_RECORD_DELIMITER = JRPropertiesUtil.PROPERTY_PREFIX + "export.csv.record.delimiter";
/**
* Property whose value is used as default for the {@link #isWriteBOM()} export configuration setting.
* The default is false.
*
* @see JRPropertiesUtil
*/
@Property(
category = PropertyConstants.CATEGORY_EXPORT,
defaultValue = PropertyConstants.BOOLEAN_FALSE,
scopes = {PropertyScope.CONTEXT, PropertyScope.REPORT},
sinceVersion = PropertyConstants.VERSION_6_1_0,
valueType = Boolean.class
)
public static final String PROPERTY_WRITE_BOM = JRPropertiesUtil.PROPERTY_PREFIX + "export.csv.write.bom";
/**
* Property whose value is used as default for the {@link #getFieldEnclosure()} export configuration setting.
* Default value is ".
*
* @see JRPropertiesUtil
*/
@Property(
category = PropertyConstants.CATEGORY_EXPORT,
defaultValue = PropertyConstants.QUOTES,
scopes = {PropertyScope.CONTEXT, PropertyScope.REPORT},
sinceVersion = PropertyConstants.VERSION_6_2_1
)
public static final String PROPERTY_FIELD_ENCLOSURE = JRPropertiesUtil.PROPERTY_PREFIX + "export.csv.field.enclosure";
/**
* Property whose value is used as default for the {@link #getForceFieldEnclosure()} export configuration setting.
* Default value is false.
*
* @see JRPropertiesUtil
*/
@Property(
category = PropertyConstants.CATEGORY_EXPORT,
defaultValue = PropertyConstants.BOOLEAN_FALSE,
scopes = {PropertyScope.CONTEXT, PropertyScope.REPORT},
sinceVersion = PropertyConstants.VERSION_6_2_1,
valueType = Boolean.class
)
public static final String PROPERTY_FORCE_FIELD_ENCLOSURE = JRPropertiesUtil.PROPERTY_PREFIX + "export.csv.force.field.enclosure";
/**
* Property whose value is used as default for the {@link #getEscapeFormula()} export configuration setting.
* Default value is false.
*
* @see JRPropertiesUtil
*/
@Property(
category = PropertyConstants.CATEGORY_EXPORT,
defaultValue = PropertyConstants.BOOLEAN_FALSE,
scopes = {PropertyScope.CONTEXT, PropertyScope.REPORT},
sinceVersion = PropertyConstants.VERSION_6_18_0,
valueType = Boolean.class
)
public static final String PROPERTY_ESCAPE_FORMULA = JRPropertiesUtil.PROPERTY_PREFIX + "export.csv.escape.formula";
/**
* Returns the string representing the character or sequence of characters to be used to delimit two fields on the same record.
* @see #PROPERTY_FIELD_DELIMITER
*/
@SuppressWarnings("deprecation")
@ExporterParameter(
type=net.sf.jasperreports.engine.export.JRCsvExporterParameter.class,
name="FIELD_DELIMITER"
)
@ExporterProperty(PROPERTY_FIELD_DELIMITER)
public String getFieldDelimiter();
/**
* Returns a string representing the character to be used to enclose a field value on a record.
* If this is a multi-character string, the first character only will be taken into account.
* White spaces are not considered.
*
* Default value is ".
* @see #PROPERTY_FIELD_ENCLOSURE
*/
@ExporterProperty(PROPERTY_FIELD_ENCLOSURE)
public String getFieldEnclosure();
/**
* Returns a flag that enforces all exported field values to be enclosed within
* a pair of enclosure characters (usually a pair of quotes: "").
*
* Default value is false.
* @see #PROPERTY_FORCE_FIELD_ENCLOSURE
*/
@ExporterProperty(
value=PROPERTY_FORCE_FIELD_ENCLOSURE,
booleanDefault=false
)
public Boolean getForceFieldEnclosure();
/**
* Returns the string representing the character or sequence of characters to be used to delimit two records.
* @see #PROPERTY_RECORD_DELIMITER
*/
@SuppressWarnings("deprecation")
@ExporterParameter(
type=net.sf.jasperreports.engine.export.JRCsvExporterParameter.class,
name="RECORD_DELIMITER"
)
@ExporterProperty(PROPERTY_RECORD_DELIMITER)
public String getRecordDelimiter();
/**
* Specifies whether the exporter should put a BOM character at the beginning of the output.
* @see #PROPERTY_WRITE_BOM
*/
@ExporterProperty(PROPERTY_WRITE_BOM)
public Boolean isWriteBOM();
/**
* Returns a flag that enforces field values containing formula to be escaped in order to be interpreted as pure text.
*
* Default value is false.
* @see #PROPERTY_ESCAPE_FORMULA
*/
@ExporterProperty(
value=PROPERTY_ESCAPE_FORMULA,
booleanDefault=false
)
public Boolean getEscapeFormula();
}