Red Hat Training

A Red Hat training course is available for Red Hat JBoss Data Virtualization

13.13. File Translator

13.13.1. File Translator

The file translator exposes stored procedures to leverage file system resources exposed by the file resource adapter. It will commonly be used with the TEXTTABLE or XMLTABLE table functions to use CSV or XML formatted data. See Section 3.6.8, “Nested Tables: TEXTTABLE” and Section 3.6.9, “Nested Tables: XMLTABLE”.
The file translator is implemented by the org.teiid.translator.file.FileExecutionFactory class and known by the translator type name file.

Note

The resource adapter for this translator is provided by configuring the file data source in the JBoss EAP instance. See the Red Hat JBoss Data Virtualization Administration and Configuration Guide for more configuration information.

13.13.2. File Translator: Execution Properties

Table 13.7. Execution Properties

Name Description Default
Encoding The encoding that must be used for CLOBs returned by the getTextFiles procedure. The system default encoding
ExceptionIfFileNotFound Throw an exception in getFiles or getTextFiles if the specified file/directory does not exist. true (false in previous releases)

13.13.3. File Translator: Usage

Retrieve all files as BLOBs with an optional extension at the given path.
call getFiles('path/*.ext')
If the extension path is specified, then it will filter all of the files in the directory referenced by the base path. If the extension pattern is not specified and the path is a directory, then all files in the directory will be returned. Otherwise the single file referenced will be returned. If the path does not exist, then no results will be returned if ExceptionIfFileNotFound is false, otherwise an exception will be raised.
Retrieve all files as CLOB(s) with the an optional extension at the given path.
call getTextFiles('path/*.ext')
getTextFiles will retrieve the same files as getFiles, only the results will be CLOB values using the encoding execution property as the character set.
Save the CLOB, BLOB, or XML value to the given path.
call saveFile('path', value)
The path is a reference to either a new file location or an existing file to overwrite completely.

Note

Native or direct query execution is not supported on the File Translator.