Package org.h2gis.functions.io

# Class DriverManager

java.lang.Object
org.h2gis.api.AbstractFunction
org.h2gis.functions.io.DriverManager

All Implemented Interfaces:
  `org.h2gis.api.DriverFunction`, `org.h2gis.api.Function`, `org.h2gis.api.ScalarFunction`

public class DriverManager extends org.h2gis.api.AbstractFunction implements org.h2gis.api.ScalarFunction, org.h2gis.api.DriverFunction
Manage additional table engines in H2. Use the appropriate driver to open a specified file path.

Author:
  Nicolas Fortin, Sylvain PALOMINOS (UBS 2019)

## Nested Class Summary

## Nested classes/interfaces inherited from interface org.h2gis.api.DriverFunction

`org.h2gis.api.DriverFunction.IMPORT_DRIVER_TYPE`

## Field Summary

### Fields inherited from interface org.h2gis.api.Function

`PROP_NAME, PROP_REMARKS`

### Fields inherited from interface org.h2gis.api.ScalarFunction

`PROP_DETERMINISTIC`

## Constructor Summary

Constructors
Constructor
Description
`DriverManager()`

## Method Summary

Modifier and Type
Method
Description
`static org.h2gis.api.ProgressVisitor`
`check(Connection connection, String tableReference, File fileName, org.h2gis.api.ProgressVisitor progress)`
Method to check the import and export arguments
`String[]`
`exportTable(Connection connection, String tableReference, File fileName, boolean deleteFiles, org.h2gis.api.ProgressVisitor progress)`
`String[]`
`exportTable(Connection connection, String tableReference, File fileName, String options, boolean deleteFiles, org.h2gis.api.ProgressVisitor progress)`
`String[]`
`exportTable(Connection connection, String tableReference, File fileName, String options, org.h2gis.api.ProgressVisitor progress)`
`String[]`
`exportTable(Connection connection, String tableReference, File fileName, org.h2gis.api.ProgressVisitor progress)`
`String[]`
`getExportFormats()`
`String`
`getFormatDescription(String format)`
`org.h2gis.api.DriverFunction.IMPORT_DRIVER_TYPE`
`getImportDriverType()`
`String[]`
`getImportFormats()`
`String`
`getJavaStaticMethod()`
`String[]`
`importFile(Connection connection, String tableReference, File fileName, boolean deleteTables, org.h2gis.api.ProgressVisitor progress)`
`String[]`
`importFile(Connection connection, String tableReference, File fileName, String options, boolean deleteTables, org.h2gis.api.ProgressVisitor progress)`
`String[]`
`importFile(Connection connection, String tableReference, File fileName, String options, org.h2gis.api.ProgressVisitor progress)`
`String[]`
`importFile(Connection connection, String tableReference, File fileName, org.h2gis.api.ProgressVisitor progress)`
`boolean`
`isSpatialFormat(String extension)`
`static String[]`
`openFile(Connection connection, String fileName, String tableName)`
Create a new table

### Methods inherited from class org.h2gis.api.AbstractFunction

`addProperty, getProperty, removeProperty`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Methods inherited from interface org.h2gis.api.Function

`getProperty`

## Constructor Details

### DriverManager

public DriverManager()

## Method Details

### getJavaStaticMethod

public String getJavaStaticMethod()

Specified by:
  `getJavaStaticMethod` in interface `org.h2gis.api.ScalarFunction`

### getFormatDescription

public String getFormatDescription(String format)

Specified by:
  `getFormatDescription` in interface `org.h2gis.api.DriverFunction`

### isSpatialFormat

public boolean isSpatialFormat(String extension)

Specified by:
  `isSpatialFormat` in interface `org.h2gis.api.DriverFunction`

### openFile

public static String[] openFile(Connection connection, String fileName, String tableName) throws SQLException
Create a new table

Parameters:
  `connection` - Active connection, do not close this connection.
  `fileName` - File path to write, if exists it may be replaced
  `tableName` - [[catalog.]schema.]table reference
Returns:
  The name of table formatted according the database rules
Throws:
  `SQLException`

### exportTable

public String[] exportTable(Connection connection, String tableReference, File fileName, org.h2gis.api.ProgressVisitor progress) throws SQLException, IOException

Specified by:
  `exportTable` in interface `org.h2gis.api.DriverFunction`
Throws:
  `SQLException`
  `IOException`

### exportTable

public String[] exportTable(Connection connection, String tableReference, File fileName, boolean deleteFiles, org.h2gis.api.ProgressVisitor progress) throws SQLException, IOException

Specified by:
  `exportTable` in interface `org.h2gis.api.DriverFunction`
Throws:
  `SQLException`
  `IOException`

### exportTable

public String[] exportTable(Connection connection, String tableReference, File fileName, String options, boolean deleteFiles, org.h2gis.api.ProgressVisitor progress) throws SQLException, IOException

Specified by:
  `exportTable` in interface `org.h2gis.api.DriverFunction`
Throws:
  `SQLException`
  `IOException`

### exportTable

public String[] exportTable(Connection connection, String tableReference, File fileName, String options, org.h2gis.api.ProgressVisitor progress) throws SQLException, IOException

Specified by:
  `exportTable` in interface `org.h2gis.api.DriverFunction`
Throws:
  `SQLException`
  `IOException`

### getImportDriverType

public org.h2gis.api.DriverFunction.IMPORT_DRIVER_TYPE getImportDriverType()

Specified by:
  `getImportDriverType` in interface `org.h2gis.api.DriverFunction`

### getImportFormats

public String[] getImportFormats()

Specified by:
  `getImportFormats` in interface `org.h2gis.api.DriverFunction`

### getExportFormats

public String[] getExportFormats()

Specified by:
  `getExportFormats` in interface `org.h2gis.api.DriverFunction`

### importFile

public String[] importFile(Connection connection, String tableReference, File fileName, org.h2gis.api.ProgressVisitor progress) throws SQLException, IOException

Specified by:
  `importFile` in interface `org.h2gis.api.DriverFunction`
Throws:
  `SQLException`
  `IOException`

### importFile

public String[] importFile(Connection connection, String tableReference, File fileName, String options, org.h2gis.api.ProgressVisitor progress) throws SQLException, IOException

Specified by:
  `importFile` in interface `org.h2gis.api.DriverFunction`
Throws:
  `SQLException`
  `IOException`

### importFile

public String[] importFile(Connection connection, String tableReference, File fileName, boolean deleteTables, org.h2gis.api.ProgressVisitor progress) throws SQLException, IOException

Specified by:
  `importFile` in interface `org.h2gis.api.DriverFunction`
Throws:
  `SQLException`
  `IOException`

### importFile

public String[] importFile(Connection connection, String tableReference, File fileName, String options, boolean deleteTables, org.h2gis.api.ProgressVisitor progress) throws SQLException, IOException

Specified by:
  `importFile` in interface `org.h2gis.api.DriverFunction`
Throws:
  `SQLException`
  `IOException`

### check

public static org.h2gis.api.ProgressVisitor check(Connection connection, String tableReference, File fileName, org.h2gis.api.ProgressVisitor progress) throws SQLException
Method to check the import and export arguments

Parameters:
  `connection` -
  `tableReference` -
  `fileName` -
  `progress` -
Returns:
Throws:
  `SQLException`