Package com.orchestranetworks.service
Class ExportImportCSVSpec
- java.lang.Object
-
- com.orchestranetworks.service.ExportImportCSVSpec
-
public class ExportImportCSVSpec extends Object
Defines the settings for executing an import or export to "Comma-separated values" format (CSV).
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classExportImportCSVSpec.HeaderSpecifies the header type of the CSV document.
-
Field Summary
Fields Modifier and Type Field Description static StringNULL_STRING_CODEValue is:"ebx-csv:nil".
-
Constructor Summary
Constructors Constructor Description ExportImportCSVSpec()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description StringgetEncoding()chargetFieldSeparator()ExportImportCSVSpec.HeadergetHeader()StringgetLineSeparator()StringgetListSeparator()chargetTextDelimiter()booleanisForceEnclosingFields()booleanisInheritanceEnabled()booleanisNullStringEncoded()voidsetEncoding(String encoding)Specifies the character encoding to be used.voidsetFieldSeparator(char separator)Specifies the field separator to be used.voidsetForceEnclosingFields(boolean forceEnclosingFields)Specifies that, during an export, all fields are to be enclosed within text delimiter characters, even if the fields do not contain any special characters.voidsetHeader(ExportImportCSVSpec.Header headerType)Specifies the header of the CSV file; can beExportImportCSVSpec.Header.NONE.voidsetInheritanceEnabled(boolean inheritanceEnabled)Specifies if the inheritance will be taken into account during a CSV export or import.voidsetLineSeparator(String separator)Specifies the line separator to be used.voidsetListSeparator(String separator)Specifies the list separator to be used.voidsetNullStringEncoded(boolean nullStringEncoded)Specifies ifnullstrings will be translated toebx-csv:nilvalues in CSV fields.voidsetTextDelimiter(char delimiter)Specifies the text delimiter to be used.
-
-
-
Field Detail
-
NULL_STRING_CODE
public static final String NULL_STRING_CODE
Value is:"ebx-csv:nil".
-
-
Method Detail
-
getFieldSeparator
public char getFieldSeparator()
- See Also:
setFieldSeparator(char)
-
getLineSeparator
public String getLineSeparator()
- See Also:
setLineSeparator(String)
-
getListSeparator
public String getListSeparator()
- Since:
- 5.6.0
- See Also:
setListSeparator(String)
-
getEncoding
public String getEncoding()
- See Also:
setEncoding(String)
-
setFieldSeparator
public void setFieldSeparator(char separator)
Specifies the field separator to be used.If not set, the value of this property is
','(comma).
-
setLineSeparator
public void setLineSeparator(String separator)
Specifies the line separator to be used.If not set, the value of this property is
'\r\n'(CRLF).
-
setListSeparator
public void setListSeparator(String separator)
Specifies the list separator to be used.If not set, the value of this property is
'\r\n'(CRLF).- Since:
- 5.6.0
-
setEncoding
public void setEncoding(String encoding)
Specifies the character encoding to be used.If not set, the value of this property is
'UTF-8'.- Parameters:
encoding- the name of a supported encoding (seeCharset).
-
getHeader
public ExportImportCSVSpec.Header getHeader()
-
setHeader
public void setHeader(ExportImportCSVSpec.Header headerType)
Specifies the header of the CSV file; can beExportImportCSVSpec.Header.NONE.The header is set to
ExportImportCSVSpec.Header.LABELby default.
-
getTextDelimiter
public char getTextDelimiter()
- See Also:
setTextDelimiter(char)
-
isForceEnclosingFields
public boolean isForceEnclosingFields()
- See Also:
setForceEnclosingFields(boolean)
-
setTextDelimiter
public void setTextDelimiter(char delimiter)
Specifies the text delimiter to be used. The text delimiter is used for enclosing fields that contain special characters (the field separator character, the line separator character, or the text delimiter itself).If not set, the value of this property is
'"'(double-quote).- See Also:
setForceEnclosingFields(boolean)
-
setForceEnclosingFields
public void setForceEnclosingFields(boolean forceEnclosingFields)
Specifies that, during an export, all fields are to be enclosed within text delimiter characters, even if the fields do not contain any special characters.If not set, this property is
false.- See Also:
setTextDelimiter(char)
-
isNullStringEncoded
public boolean isNullStringEncoded()
- See Also:
setNullStringEncoded(boolean)
-
setNullStringEncoded
public void setNullStringEncoded(boolean nullStringEncoded)
Specifies ifnullstrings will be translated toebx-csv:nilvalues in CSV fields.- If not set, a
nullstring is exported as an empty string. - If set, depending on the
distinction
between a
nullvalue and an empty string:- If the distinction is preserved, a round-trip export-import will
replace
nullstring values with empty strings. - Otherwise, a round-trip export-import will preserve
nullvalues.
- If the distinction is preserved, a round-trip export-import will
replace
- See Also:
NULL_STRING_CODE, Empty string management
- If not set, a
-
isInheritanceEnabled
public boolean isInheritanceEnabled()
- Since:
- 5.6.0
- See Also:
setInheritanceEnabled(boolean)
-
setInheritanceEnabled
public void setInheritanceEnabled(boolean inheritanceEnabled)
Specifies if the inheritance will be taken into account during a CSV export or import.- For a CSV export
-
If set to
false(the default), inheritance is ignored then,- resolved values of fields are exported;
occulted recordsare not exported.
-
If set to
true, inheritance is taken into account during the export then:- a technical data
x:defModethat specifies the definition mode for each record is added to the first column of the CSV file. The possible values ofx:defModeare 'N', 'T', 'V' and 'C' and correspond respectively toinherit,root,overwriteandoccultmodes; - a technical data
x:inhthat specifies if the field is inherited or occulted is added before each field column; - resolved values of fields are exported.
- a technical data
-
If set to
- For a CSV Import
-
If set to
false(the default), inheritance is ignored and record fields are overwritten with imported values. -
If set to
true, inheritance is taken into account during the import then:- if the read value of column
x:defModeis 'N', the record is forced to be in inherit mode that means; - it is occulted then deleted, if an
overwritten recordwith the same primary key exists in the current table; - it is deleted, if an
occulted recordwith the same primary key exists in the current table; - nothing is done, if an
inherited recordwith the same primary key exists in the current table; - nothing is done, if no record exists with the same primary key in the current table.
- if the read value of column
x:defModeis 'C', the record is forced to be in occult mode that means; - it is deleted, if an
inherited recordwith the same primary key exists in the target table; - it is occulted, if an
overwritten recordwith the same primary key exists in the current table; - nothing is done, if an
occulted recordwith the same primary key exists in the current table; - nothing is done, if no record exists with the same primary key in the current table.
- if the read value of column
x:inhis 'N', the field following this column is forced to be in inherit mode;AdaptationValue.INHERIT_VALUEis set; - otherwise, record fields are overwritten with imported values.
- if the read value of column
-
If set to
Limitations:
- During a CSV export or import, if the dataset of the table has no parent or if the table has no inherited field, inheritance is always ignored.
- For a CSV export
-
-