{
  "databases":[
    {
      "name":"ORACLE",
      "displayName":"Custom Oracle",
      "jarFilePattern":"ojdbc.*",
      "standalone":true,
      "auxFile":"",
      "isAliveSQL":"SELECT 1",
      "rowCountQuery":"select num_rows from all_tables where table_name=%s",
      "previewQuery":"SELECT * FROM %s WHERE ROWNUM <= %d",
      "validationTimeout":2,
      "fetchSize":1000,
      "unsupportedSQL":"",
      "connectionString":"jdbc:oracle:thin:@%s:%d:%s",
      "connectionParams":[
        {"param":"HOSTNAME",               	"type":"String",  	"mandatory":true},
        {"param":"PORT",                   	"type":"Integer",	"mandatory":true, 	"default":1521},
        {"param":"SID",                    	"type":"String",	"mandatory":false,	"advanced":false}
      ],
      "accessParams":[
        {"param":"USERNAME",               	"type":"String"},
        {"param":"PASSWORD",               	"type":"String"}
      ],
      "tableParams":[
        {"param":"TABLE_PATTERN",          	"type":"String",  	"advanced":true,  	"default":"%"},
        {"param":"NAME_REGEXP",            	"type":"String",  	"advanced":true},
        {"param":"NAME_CASE_SENSITIVE",    	"type":"Boolean", 	"advanced":true,	"default":false},
        {"param":"INCLUDE_TABLES",         	"type":"Boolean", 	"advanced":true,  	"default":true},
        {"param":"INCLUDE_VIEWS",          	"type":"Boolean", 	"advanced":true,  	"default":false}
      ]
    },
    {
      "name":"SQLSERVER",
      "displayName":"Custom SQL Server",
      "jarFilePattern":"(ms)?sql[-]?jdbc.*",
      "standalone":true,
      "auxFile":"sqljdbc_auth.dll",
      "isAliveSQL":"SELECT 1",
      "rowCountQuery":"SELECT SUM (row_count) FROM sys.dm_db_partition_stats WHERE object_id=OBJECT_ID(%s) AND (index_id<2);",
      "previewQuery":"SELECT TOP %d * FROM %s",
      "validationTimeout":2,
      "fetchSize":1000,
      "unsupportedSQL":"",
      "connectionString":"jdbc:sqlserver://%s:%d;instanceName=%s;allowPortWithNamedInstance=true;DatabaseName=%s;LoginTimeout=%d;UseServerSideUpdatableCursors=true;SelectMethod=cursor",
      "connectionParams":[
        {"param":"HOSTNAME",               	"type":"String",  "mandatory":true},
        {"param":"PORT",                   	"type":"Integer", "mandatory":true, "default":1433},
        {"param":"INSTANCE",               	"type":"String",  "mandatory":true, "default":"MSSQLSERVER"},
        {"param":"DATABASE",               	"type":"String",  "mandatory":true},
        {"param":"TIMEOUT",                	"type":"Integer", "mandatory":true, "advanced":true, "default":15, "min": 0, "max": 10000}
      ],
      "accessParams":[
        {"param":"USERNAME",               	"type":"String"},
        {"param":"PASSWORD",               	"type":"String"}
      ],
      "tableParams":[
        {"param":"SCHEMA",                 	"type":"String",  "description": "No schema value will show all tables. If a schema is specified on External system creation then it can be updated, but a value must be provided. A schema will not prevent a native SQL Query from accessing any table the credentials have access to."},
        {"param":"TABLE_PATTERN",          	"type":"String",  "advanced":true, "default":"%"},
        {"param":"NAME_REGEXP",            	"type":"String",  "advanced":true},
        {"param":"FORCE_JDBC_SCHEMA_NAME",	"type":"Boolean", "advanced":true, "default":false, "description": "Force JDBC Schema Name is not applicable when creating Dataset from native SQL Query. You have to explicitly add the Schema name as Table prefix in the SQL query or rely on the Database user's default Schema."},
        {"param":"NAME_CASE_SENSITIVE",    	"type":"Boolean", "advanced":true, "default":false},
        {"param":"INCLUDE_TABLES",         	"type":"Boolean", "advanced":true, "default":true},
        {"param":"INCLUDE_VIEWS",          	"type":"Boolean", "advanced":true, "default":false}
      ]
    },
    {
      "name":"MYSQL",
      "displayName":"Custom MySQL",
      "jarFilePattern":"mysql-connector.*",
      "standalone":true,
      "auxFile":"",
      "isAliveSQL":"SELECT 1",
      "rowCountQuery":"SELECT COUNT(*) FROM %s",
      "previewQuery":"SELECT * FROM %s LIMIT %d",
      "validationTimeout":2,
      "fetchSize":1000,
      "unsupportedSQL":"",
      "connectionString":"jdbc:mysql://%s:%d/%s",
      "connectionParams":[
        {"param":"HOSTNAME",               	"type":"String",  "mandatory":true},
        {"param":"PORT",                   	"type":"Integer", "mandatory":true, "default":3306},
        {"param":"DATABASE",               	"type":"String"}
      ],
      "accessParams":[
        {"param":"USERNAME",               	"type":"String"},
        {"param":"PASSWORD",               	"type":"String"}
      ],
      "tableParams":[
        {"param":"TABLE_PATTERN",          	"type":"String",  "advanced":true, "default":"%"},
        {"param":"NAME_REGEXP",            	"type":"String",  "advanced":true},
        {"param":"NAME_CASE_SENSITIVE",    	"type":"Boolean", "advanced":true, "default":false},
        {"param":"INCLUDE_TABLES",         	"type":"Boolean", "advanced":true, "default":true},
        {"param":"INCLUDE_VIEWS",          	"type":"Boolean", "advanced":true, "default":false}
      ]
    },
    {
      "name":"DB2",
      "displayName":"Custom DB2",
      "jarFilePattern":"db2jcc.*",
      "standalone":true,
      "auxFile":"",
      "isAliveSQL":"SELECT 1",
      "rowCountQuery":"SELECT COUNT(*) FROM %s",
      "previewQuery":"SELECT * FROM %s FETCH FIRST %d ROWS ONLY",
      "validationTimeout":2,
      "fetchSize":1000,
      "unsupportedSQL":"",
      "connectionString":"jdbc:db2://%s:%d/%s",
      "connectionParams":[
        {"param":"HOSTNAME",               	"type":"String",  "mandatory":true},
        {"param":"PORT",                   	"type":"Integer", "mandatory":true, "default":50000},
        {"param":"DATABASE",               	"type":"String",  "mandatory":true}
      ],
      "accessParams":[
        {"param":"USERNAME",               	"type":"String"},
        {"param":"PASSWORD",               	"type":"String"}
      ],
      "tableParams":[
        {"param":"SCHEMA",                 	"type":"String",  "description": "No schema value will show all tables. If a schema is specified on External system creation then it can be updated, but a value must be provided. A schema will not prevent a native SQL Query from accessing any table the credentials have access to."},
        {"param":"TABLE_PATTERN",          	"type":"String",  "advanced":true, "default":"%"},
        {"param":"NAME_REGEXP",            	"type":"String",  "advanced":true},
        {"param":"FORCE_JDBC_SCHEMA_NAME", 	"type":"Boolean", "advanced":true, "default":true, "description": "Force JDBC Schema Name is not applicable when creating Dataset from native SQL Query. You have to explicitly add the Schema name as Table prefix in the SQL query or rely on the Database user's default Schema."},
        {"param":"NAME_CASE_SENSITIVE",    	"type":"Boolean", "advanced":true, "default":false},
        {"param":"INCLUDE_TABLES",         	"type":"Boolean", "advanced":true, "default":true},
        {"param":"INCLUDE_VIEWS",          	"type":"Boolean", "advanced":true, "default":false}
      ]
    },
    {
      "name":"INFORMIX",
      "displayName":"Custom Informix",
      "jarFilePattern":"ifxjdbc.*",
      "standalone":true,
      "auxFile":"",
      "isAliveSQL":"SELECT 1",
      "rowCountQuery":"SELECT COUNT(*) FROM %s",
      "previewQuery":"SELECT * FROM %s LIMIT %d",
      "validationTimeout":2,
      "fetchSize":1000,
      "unsupportedSQL":"",
      "connectionString":"jdbc:informix-sqli://%s:%d/%s",
      "connectionParams":[
        {"param":"HOSTNAME",               	"type":"String",  "mandatory":true},
        {"param":"PORT",                   	"type":"Integer", "mandatory":true, "default":1526},
        {"param":"SERVER",                 	"type":"String",  "mandatory":true},
        {"param":"DATABASE",               	"type":"String",  "mandatory":true}
      ],
      "accessParams":[
        {"param":"USERNAME",               	"type":"String"},
        {"param":"PASSWORD",               	"type":"String"}
      ],
      "tableParams":[
        {"param":"SCHEMA",                 	"type":"String",  "description": "No schema value will show all tables. If a schema is specified on External system creation then it can be updated, but a value must be provided. A schema will not prevent a native SQL Query from accessing any table the credentials have access to."},
        {"param":"TABLE_PATTERN",          	"type":"String",  "advanced":true, "default":"%"},
        {"param":"NAME_REGEXP",            	"type":"String",  "advanced":true},
        {"param":"FORCE_JDBC_SCHEMA_NAME", 	"type":"Boolean", "advanced":true, "default":true, "description": "Force JDBC Schema Name is not applicable when creating Dataset from native SQL Query. You have to explicitly add the Schema name as Table prefix in the SQL query or rely on the Database user's default Schema."},
        {"param":"NAME_CASE_SENSITIVE",    	"type":"Boolean", "advanced":true, "default":false},
        {"param":"INCLUDE_TABLES",         	"type":"Boolean", "advanced":true, "default":true},
        {"param":"INCLUDE_VIEWS",          	"type":"Boolean", "advanced":true, "default":false}
      ]
    },
    {
      "name":"POSTGRESQL",
      "displayName":"Custom PostgreSQL",
      "jarFilePattern":"postgresql.*",
      "standalone":true,
      "auxFile":"",
      "isAliveSQL":"SELECT 1",
      "rowCountQuery":"SELECT COUNT(*) FROM %s",
      "previewQuery":"SELECT * FROM %s LIMIT %d",
      "validationTimeout":2,
      "fetchSize":1000,
      "unsupportedSQL":"",
      "connectionString":"jdbc:postgresql://%s:%d/%s",
      "connectionParams":[
        {"param":"HOSTNAME",               	"type":"String",  "mandatory":true},
        {"param":"PORT",                   	"type":"Integer", "mandatory":true, "default":5432},
        {"param":"DATABASE",               	"type":"String",  "mandatory":true}
      ],
      "accessParams":[
        {"param":"USERNAME",               	"type":"String"},
        {"param":"PASSWORD",               	"type":"String"}
      ],
      "tableParams":[
        {"param":"SCHEMA",                 	"type":"String",  "description": "No schema value will show all tables. If a schema is specified on External system creation then it can be updated, but a value must be provided. A schema will not prevent a native SQL Query from accessing any table the credentials have access to."},
        {"param":"TABLE_PATTERN",          	"type":"String",  "advanced":true, "default":"%"},
        {"param":"NAME_REGEXP",            	"type":"String",  "advanced":true},
        {"param":"FORCE_JDBC_SCHEMA_NAME", 	"type":"Boolean", "advanced":true, "default":true, "description": "Force JDBC Schema Name is not applicable when creating Dataset from native SQL Query. You have to explicitly add the Schema name as Table prefix in the SQL query or rely on the Database user's default Schema."},
        {"param":"NAME_CASE_SENSITIVE",    	"type":"Boolean", "advanced":true, "default":false},
        {"param":"INCLUDE_TABLES",         	"type":"Boolean", "advanced":true, "default":true},
        {"param":"INCLUDE_VIEWS",          	"type":"Boolean", "advanced":true, "default":false}
      ]
    },
    {
      "name":"HIVE",
      "displayName":"Custom Apache Hive",
      "jarFilePattern":"hive-jdbc.*",
      "standalone":true,
      "auxFile":"",
      "isAliveSQL":"SELECT 1",
      "rowCountQuery":"SELECT COUNT(*) FROM %s",
      "previewQuery":"SELECT * FROM %s LIMIT %d",
      "validationTimeout":2,
      "fetchSize":1000,
      "unsupportedSQL":"",
      "connectionString":"jdbc:hive://%s:%d/default",
      "connectionParams":[
        {"param":"HOSTNAME",               	"type":"String",  "mandatory":true},
        {"param":"PORT",                   	"type":"Integer", "mandatory":true, "default":9999}
      ],
      "accessParams":[
        {"param":"USERNAME",               	"type":"String"},
        {"param":"PASSWORD",               	"type":"String",  "mandatory":true}
      ],
      "tableParams":[
        {"param":"SCHEMA",                 	"type":"String",  "description": "No schema value will show all tables. If a schema is specified on External system creation then it can be updated, but a value must be provided. A schema will not prevent a native SQL Query from accessing any table the credentials have access to."},
        {"param":"TABLE_PATTERN",          	"type":"String",  "advanced":true, "default":"%"},
        {"param":"NAME_REGEXP",            	"type":"String",  "advanced":true},
        {"param":"FORCE_JDBC_SCHEMA_NAME", 	"type":"Boolean", "advanced":true, "default":true, "description": "Force JDBC Schema Name is not applicable when creating Dataset from native SQL Query. You have to explicitly add the Schema name as Table prefix in the SQL query or rely on the Database user's default Schema."},
        {"param":"NAME_CASE_SENSITIVE",    	"type":"Boolean", "advanced":true, "default":false},
        {"param":"INCLUDE_TABLES",         	"type":"Boolean", "advanced":true, "default":true},
        {"param":"INCLUDE_VIEWS",          	"type":"Boolean", "advanced":true, "default":false}
      ]
    },
    {
      "name":"MONGODB",
      "displayName":"Custom MongoDB",
      "jarFilePattern":"mongodb.*",
      "standalone":true,
      "auxFile":"",
      "isAliveSQL":"SELECT 1",
      "rowCountQuery":"SELECT COUNT(*) FROM %s",
      "previewQuery":"SELECT * FROM %s LIMIT %d",
      "validationTimeout":2,
      "fetchSize":1000,
      "unsupportedSQL":"",
      "connectionString":"mongodb://%s:%d/%s",
      "connectionParams":[
        {"param":"HOSTNAME",               	"type":"String",  "mandatory":true},
        {"param":"PORT",                   	"type":"Integer", "mandatory":true, "default":27017},
        {"param":"DATABASE",               	"type":"String",  "mandatory":true},
        {"param":"SCHEMA_DEFINITION",      	"type":"String",  "mandatory":true}
      ],
      "accessParams":[
        {"param":"USERNAME",               	"type":"String"},
        {"param":"PASSWORD",               	"type":"String"}
      ],
      "tableParams":[
        {"param":"SCHEMA",                 	"type":"String",  "description": "No schema value will show all tables. If a schema is specified on External system creation then it can be updated, but a value must be provided. A schema will not prevent a native SQL Query from accessing any table the credentials have access to."},
        {"param":"TABLE_PATTERN",          	"type":"String",  "advanced":true, "default":"%"},
        {"param":"NAME_REGEXP",            	"type":"String",  "advanced":true},
        {"param":"FORCE_JDBC_SCHEMA_NAME", 	"type":"Boolean", "advanced":true, "default":true, "description": "Force JDBC Schema Name is not applicable when creating Dataset from native SQL Query. You have to explicitly add the Schema name as Table prefix in the SQL query or rely on the Database user's default Schema."},
        {"param":"NAME_CASE_SENSITIVE",    	"type":"Boolean", "advanced":true, "default":false},
        {"param":"INCLUDE_TABLES",         	"type":"Boolean", "advanced":true, "default":true},
        {"param":"INCLUDE_VIEWS",          	"type":"Boolean", "advanced":true, "default":false}
      ]
    },
    {
      "name":"REDSHIFT",
      "displayName":"Custom Amazon Redshift",
      "jarFilePattern":"redshift.*",
      "standalone":true,
      "auxFile":"",
      "isAliveSQL":"SELECT 1",
      "rowCountQuery":"SELECT COUNT(*) FROM %s",
      "previewQuery":"SELECT * FROM %s LIMIT %d",
      "validationTimeout":2,
      "fetchSize":1000,
      "unsupportedSQL":"",
      "connectionString":"jdbc:redshift://%s:%d/%s",
      "connectionParams":[
        {"param":"HOSTNAME",               	"type":"String",  "mandatory":true},
        {"param":"PORT",                   	"type":"Integer", "mandatory":true, "default":5439},
        {"param":"DATABASE",               	"type":"String",  "mandatory":true}
      ],
      "accessParams":[
        {"param":"USERNAME",               	"type":"String"},
        {"param":"PASSWORD",               	"type":"String"}
      ],
      "tableParams":[
        {"param":"SCHEMA",                 	"type":"String",  "description": "No schema value will show all tables. If a schema is specified on External system creation then it can be updated, but a value must be provided. A schema will not prevent a native SQL Query from accessing any table the credentials have access to."},
        {"param":"TABLE_PATTERN",          	"type":"String",  "advanced":true, "default":"%"},
        {"param":"NAME_REGEXP",            	"type":"String",  "advanced":true},
        {"param":"FORCE_JDBC_SCHEMA_NAME", 	"type":"Boolean", "advanced":true, "default":true, "description": "Force JDBC Schema Name is not applicable when creating Dataset from native SQL Query. You have to explicitly add the Schema name as Table prefix in the SQL query or rely on the Database user's default Schema."},
        {"param":"NAME_CASE_SENSITIVE",    	"type":"Boolean", "advanced":true, "default":false},
        {"param":"INCLUDE_TABLES",         	"type":"Boolean", "advanced":true, "default":true},
        {"param":"INCLUDE_VIEWS",          	"type":"Boolean", "advanced":true, "default":false}
      ]
    },
    {
      "name":"DBASE",
      "displayName":"Custom dBase",
      "jarFilePattern":"dbf.*",
      "standalone":true,
      "auxFile":"",
      "isAliveSQL":"SELECT 1",
      "rowCountQuery":"SELECT COUNT(*) FROM %s",
      "previewQuery":"SELECT * FROM %s LIMIT %d",
      "validationTimeout":2,
      "fetchSize":1000,
      "unsupportedSQL":"",
      "connectionString":"jdbc:odbc:Driver={Microsoft dBase Driver (*.dbf)};DBQ=%s",
      "connectionParams":[
        {"param":"FILE_PATH",              	"type":"String",  "mandatory":true}
      ],
      "accessParams":[
        {"param":"USERNAME",               	"type":"String"},
        {"param":"PASSWORD",               	"type":"String"}
      ],
      "tableParams":[
        {"param":"SCHEMA",                 	"type":"String",  "description": "No schema value will show all tables. If a schema is specified on External system creation then it can be updated, but a value must be provided. A schema will not prevent a native SQL Query from accessing any table the credentials have access to."},
        {"param":"TABLE_PATTERN",          	"type":"String",  "advanced":true, "default":"%"},
        {"param":"NAME_REGEXP",            	"type":"String",  "advanced":true},
        {"param":"FORCE_JDBC_SCHEMA_NAME", 	"type":"Boolean", "advanced":true, "default":true, "description": "Force JDBC Schema Name is not applicable when creating Dataset from native SQL Query. You have to explicitly add the Schema name as Table prefix in the SQL query or rely on the Database user's default Schema."},
        {"param":"NAME_CASE_SENSITIVE",    	"type":"Boolean", "advanced":true, "default":false},
        {"param":"INCLUDE_TABLES",         	"type":"Boolean", "advanced":true, "default":true},
        {"param":"INCLUDE_VIEWS",          	"type":"Boolean", "advanced":true, "default":false}
      ]
    },
    {
      "name":"DERBY",
      "displayName":"Custom Derby",
      "jarFilePattern":"derby.*",
      "standalone":true,
      "auxFile":"",
      "isAliveSQL":"SELECT 1",
      "rowCountQuery":"SELECT COUNT(*) FROM %s",
      "previewQuery":"SELECT * FROM %s LIMIT %d",
      "validationTimeout":2,
      "fetchSize":1000,
      "unsupportedSQL":"",
      "connectionString":"jdbc:derby:%s",
      "connectionParams":[
        {"param":"FILE_PATH",              	"type":"String",  "mandatory":true}
      ],
      "accessParams":[
        {"param":"USERNAME",               	"type":"String"},
        {"param":"PASSWORD",               	"type":"String"}
      ],
      "tableParams":[
        {"param":"SCHEMA",                 	"type":"String",  "description": "No schema value will show all tables. If a schema is specified on External system creation then it can be updated, but a value must be provided. A schema will not prevent a native SQL Query from accessing any table the credentials have access to."},
        {"param":"TABLE_PATTERN",          	"type":"String",  "advanced":true, "default":"%"},
        {"param":"NAME_REGEXP",            	"type":"String",  "advanced":true},
        {"param":"FORCE_JDBC_SCHEMA_NAME", 	"type":"Boolean", "advanced":true, "default":true, "description": "Force JDBC Schema Name is not applicable when creating Dataset from native SQL Query. You have to explicitly add the Schema name as Table prefix in the SQL query or rely on the Database user's default Schema."},
        {"param":"NAME_CASE_SENSITIVE",    	"type":"Boolean", "advanced":true, "default":false},
        {"param":"INCLUDE_TABLES",         	"type":"Boolean", "advanced":true, "default":true},
        {"param":"INCLUDE_VIEWS",          	"type":"Boolean", "advanced":true, "default":false}
      ]
    },
    {
      "name":"MICROSOFT_DYNAMICS",
      "displayName":"Custom MicrosoftDynamics",
      "jarFilePattern":".*dynamicscrm.*",
      "standalone":true,
      "auxFile":"",
      "isAliveSQL":"SELECT 1",
      "rowCountQuery":"",
      "previewQuery":"",
      "validationTimeout":2,
      "fetchSize":1000,
      "unsupportedSQL":"",
      "connectionString":"jdbc:dynamicscrm:URL=%s",
      "connectionParams":[
        {"param":"URL",                    	"type":"String",  "mandatory":true}
      ],
      "accessParams":[
        {"param":"USERNAME",               	"type":"String"},
        {"param":"PASSWORD",               	"type":"String"}
      ],
      "tableParams":[
        {"param":"SCHEMA",                 	"type":"String",  "description": "No schema value will show all tables. If a schema is specified on External system creation then it can be updated, but a value must be provided. A schema will not prevent a native SQL Query from accessing any table the credentials have access to."},
        {"param":"TABLE_PATTERN",          	"type":"String",  "advanced":true, "default":"%"},
        {"param":"NAME_REGEXP",            	"type":"String",  "advanced":true},
        {"param":"FORCE_JDBC_SCHEMA_NAME", 	"type":"Boolean", "advanced":true, "default":true, "description": "Force JDBC Schema Name is not applicable when creating Dataset from native SQL Query. You have to explicitly add the Schema name as Table prefix in the SQL query or rely on the Database user's default Schema."},
        {"param":"NAME_CASE_SENSITIVE",    	"type":"Boolean", "advanced":true, "default":false},
        {"param":"INCLUDE_TABLES",         	"type":"Boolean", "advanced":true, "default":true},
        {"param":"INCLUDE_VIEWS",          	"type":"Boolean", "advanced":true, "default":false}
      ]
    },
    {
      "name":"VERTICA",
      "displayName":"Custom Vertica",
      "jarFilePattern":"vertica.*",
      "standalone":true,
      "auxFile":"",
      "isAliveSQL":"SELECT 1",
      "rowCountQuery":"",
      "previewQuery":"",
      "validationTimeout":2,
      "fetchSize":1000,
      "unsupportedSQL":"",
      "connectionString":"jdbc:vertica://%s:%d/%s",
      "connectionParams":[
        {"param":"HOSTNAME",               	"type":"String",  "mandatory":true},
        {"param":"PORT",                   	"type":"Integer", "mandatory":true, "default":5439},
        {"param":"DATABASE",               	"type":"String",  "mandatory":true}
      ],
      "accessParams":[
        {"param":"USERNAME",               	"type":"String"},
        {"param":"PASSWORD",               	"type":"String"}
      ],
      "tableParams":[
        {"param":"SCHEMA",                 	"type":"String",  "description": "No schema value will show all tables. If a schema is specified on External system creation then it can be updated, but a value must be provided. A schema will not prevent a native SQL Query from accessing any table the credentials have access to."},
        {"param":"TABLE_PATTERN",          	"type":"String",  "advanced":true, "default":"%"},
        {"param":"NAME_REGEXP",            	"type":"String",  "advanced":true},
        {"param":"FORCE_JDBC_SCHEMA_NAME", 	"type":"Boolean", "advanced":true, "default":true, "description": "Force JDBC Schema Name is not applicable when creating Dataset from native SQL Query. You have to explicitly add the Schema name as Table prefix in the SQL query or rely on the Database user's default Schema."},
        {"param":"NAME_CASE_SENSITIVE",    	"type":"Boolean", "advanced":true, "default":false},
        {"param":"INCLUDE_TABLES",         	"type":"Boolean", "advanced":true, "default":true},
        {"param":"INCLUDE_VIEWS",          	"type":"Boolean", "advanced":true, "default":false}
      ]
    },
    {
      "name":"MARIADB",
      "displayName":"Custom MariaDB",
      "jarFilePattern":"mariadb.*",
      "standalone":true,
      "auxFile":"",
      "isAliveSQL":"SELECT 1",
      "rowCountQuery":"",
      "previewQuery":"",
      "validationTimeout":2,
      "fetchSize":1000,
      "unsupportedSQL":"",
      "connectionString":"jdbc:mariadb://%s:%d/%s",
      "connectionParams":[
        {"param":"HOSTNAME",               	"type":"String",  "mandatory":true},
        {"param":"PORT",                   	"type":"Integer", "mandatory":true, "default":5439},
        {"param":"DATABASE",               	"type":"String",  "mandatory":true}
      ],
      "accessParams":[
        {"param":"USERNAME",               	"type":"String"},
        {"param":"PASSWORD",               	"type":"String"}
      ],
      "tableParams":[
        {"param":"SCHEMA",                 	"type":"String",  "description": "No schema value will show all tables. If a schema is specified on External system creation then it can be updated, but a value must be provided. A schema will not prevent a native SQL Query from accessing any table the credentials have access to."},
        {"param":"TABLE_PATTERN",          	"type":"String",  "advanced":true, "default":"%"},
        {"param":"NAME_REGEXP",            	"type":"String",  "advanced":true},
        {"param":"FORCE_JDBC_SCHEMA_NAME", 	"type":"Boolean", "advanced":true, "default":true, "description": "Force JDBC Schema Name is not applicable when creating Dataset from native SQL Query. You have to explicitly add the Schema name as Table prefix in the SQL query or rely on the Database user's default Schema."},
        {"param":"NAME_CASE_SENSITIVE",    	"type":"Boolean", "advanced":true, "default":false},
        {"param":"INCLUDE_TABLES",         	"type":"Boolean", "advanced":true, "default":true},
        {"param":"INCLUDE_VIEWS",          	"type":"Boolean", "advanced":true, "default":false}
      ]
    },
    {
      "name":"HYPERSQL",
      "displayName":"Custom HyperSQL",
      "jarFilePattern":"hsqldb.*",
      "standalone":true,
      "auxFile":"",
      "isAliveSQL":"SELECT 1",
      "rowCountQuery":"",
      "previewQuery":"",
      "validationTimeout":2,
      "fetchSize":1000,
      "unsupportedSQL":"",
      "connectionString":"jdbc:hsqldb:%s:%s",
      "connectionParams":[
        {"param":"PROTOCOL",               	"type":"String",  "mandatory":true},
        {"param":"DATABASE",               	"type":"String",  "mandatory":true}
      ],
      "accessParams":[
        {"param":"USERNAME",               	"type":"String"},
        {"param":"PASSWORD",               	"type":"String"}
      ],
      "tableParams":[
        {"param":"SCHEMA",                 	"type":"String",  "description": "No schema value will show all tables. If a schema is specified on External system creation then it can be updated, but a value must be provided. A schema will not prevent a native SQL Query from accessing any table the credentials have access to."},
        {"param":"TABLE_PATTERN",          	"type":"String",  "advanced":true, "default":"%"},
        {"param":"NAME_REGEXP",            	"type":"String",  "advanced":true},
        {"param":"FORCE_JDBC_SCHEMA_NAME", 	"type":"Boolean", "advanced":true, "default":true, "description": "Force JDBC Schema Name is not applicable when creating Dataset from native SQL Query. You have to explicitly add the Schema name as Table prefix in the SQL query or rely on the Database user's default Schema."},
        {"param":"NAME_CASE_SENSITIVE",    	"type":"Boolean", "advanced":true, "default":false},
        {"param":"INCLUDE_TABLES",         	"type":"Boolean", "advanced":true, "default":true},
        {"param":"INCLUDE_VIEWS",          	"type":"Boolean", "advanced":true, "default":false}
      ]
    },

    {
      "name":"SQLITE",
      "displayName":"Custom SQLite",
      "jarFilePattern":".*sqlite.*jar",
      "standalone":true,
      "auxFile":"",
      "isAliveSQL":"SELECT 1",
      "rowCountQuery":"",
      "previewQuery":"SELECT * FROM %s LIMIT %d",
      "validationTimeout":2,
      "fetchSize":1000,
      "unsupportedSQL":"TRUNCATE",
      "connectionString":"jdbc:sqlite:%s?journal_mode=WAL",
      "connectionParams":[
        {"param":"DATABASE",				"type":"String",  "mandatory":true}
      ],
      "accessParams":[
      ],
      "tableParams":[
        {"param":"SCHEMA",                 	"type":"String",  "description": "No schema value will show all tables. If a schema is specified on External system creation then it can be updated, but a value must be provided. A schema will not prevent a native SQL Query from accessing any table the credentials have access to."},
        {"param":"TABLE_PATTERN",          	"type":"String",  "advanced":true, "default":"%"},
        {"param":"NAME_REGEXP",            	"type":"String",  "advanced":true},
        {"param":"FORCE_JDBC_SCHEMA_NAME", 	"type":"Boolean", "advanced":true, "default":true, "description": "Force JDBC Schema Name is not applicable when creating Dataset from native SQL Query. You have to explicitly add the Schema name as Table prefix in the SQL query or rely on the Database user's default Schema."},
        {"param":"NAME_CASE_SENSITIVE",    	"type":"Boolean", "advanced":true, "default":false},
        {"param":"INCLUDE_TABLES",         	"type":"Boolean", "advanced":true, "default":true},
        {"param":"INCLUDE_VIEWS",          	"type":"Boolean", "advanced":true, "default":false}
      ]
    },
    {
      "name":"H2",
      "displayName":"Custom H2",
      "jarFilePattern":"h2-.*",
      "standalone":true,
      "auxFile":"",
      "isAliveSQL":"SELECT 1",
      "rowCountQuery":"",
      "previewQuery":"",
      "validationTimeout":2,
      "fetchSize":1000,
      "unsupportedSQL":"",
      "connectionString":"jdbc:h2:%s:%s",
      "connectionParams":[
        {"param":"PROTOCOL",               	"type":"String",  "mandatory":true},
        {"param":"DATABASE",               	"type":"String",  "mandatory":true}
      ],
      "accessParams":[
        {"param":"USERNAME",               	"type":"String"},
        {"param":"PASSWORD",               	"type":"String"}
      ],
      "tableParams":[
        {"param":"SCHEMA",                 	"type":"String",  "description": "No schema value will show all tables. If a schema is specified on External system creation then it can be updated, but a value must be provided. A schema will not prevent a native SQL Query from accessing any table the credentials have access to."},
        {"param":"TABLE_PATTERN",          	"type":"String",  "advanced":true, "default":"%"},
        {"param":"NAME_REGEXP",            	"type":"String",  "advanced":true},
        {"param":"FORCE_JDBC_SCHEMA_NAME", 	"type":"Boolean", "advanced":true, "default":true, "description": "Force JDBC Schema Name is not applicable when creating Dataset from native SQL Query. You have to explicitly add the Schema name as Table prefix in the SQL query or rely on the Database user's default Schema."},
        {"param":"NAME_CASE_SENSITIVE",    	"type":"Boolean", "advanced":true, "default":false},
        {"param":"INCLUDE_TABLES",         	"type":"Boolean", "advanced":true, "default":true},
        {"param":"INCLUDE_VIEWS",          	"type":"Boolean", "advanced":true, "default":false}
      ]
    },
    {
      "name":"PRESTO",
      "displayName":"Custom Presto",
      "jarFilePattern":"presto.*",
      "standalone":true,
      "auxFile":"",
      "isAliveSQL":"SELECT 1",
      "rowCountQuery":"",
      "previewQuery":"",
      "validationTimeout":2,
      "fetchSize":1000,
      "unsupportedSQL":"",
      "connectionString":"jdbc:presto://%s:%d/%s/%s",
      "connectionParams":[
        {"param":"HOSTNAME",               	"type":"String",  "mandatory":true},
        {"param":"PORT",                   	"type":"Integer", "mandatory":true, "default":5439},
        {"param":"CATALOG",                	"type":"String",  "mandatory":true},
        {"param":"SCHEMA",                 	"type":"String",  "mandatory":false}
      ],
      "accessParams":[
        {"param":"USERNAME",               	"type":"String"},
        {"param":"PASSWORD",               	"type":"String"}
      ],
      "tableParams":[
        {"param":"SCHEMA",                 	"type":"String",  "description": "No schema value will show all tables. If a schema is specified on External system creation then it can be updated, but a value must be provided. A schema will not prevent a native SQL Query from accessing any table the credentials have access to."},
        {"param":"TABLE_PATTERN",          	"type":"String",  "advanced":true, "default":"%"},
        {"param":"NAME_REGEXP",            	"type":"String",  "advanced":true},
        {"param":"FORCE_JDBC_SCHEMA_NAME", 	"type":"Boolean", "advanced":true, "default":true, "description": "Force JDBC Schema Name is not applicable when creating Dataset from native SQL Query. You have to explicitly add the Schema name as Table prefix in the SQL query or rely on the Database user's default Schema."},
        {"param":"NAME_CASE_SENSITIVE",    	"type":"Boolean", "advanced":true, "default":false},
        {"param":"INCLUDE_TABLES",         	"type":"Boolean", "advanced":true, "default":true},
        {"param":"INCLUDE_VIEWS",          	"type":"Boolean", "advanced":true, "default":false}
      ]
    },
    {
      "name":"SAPDB",
      "displayName":"Custom SAPDB",
      "jarFilePattern":"sapdbc.*",
      "standalone":true,
      "auxFile":"",
      "isAliveSQL":"SELECT 1",
      "rowCountQuery":"",
      "previewQuery":"",
      "validationTimeout":2,
      "fetchSize":1000,
      "unsupportedSQL":"",
      "connectionString":"jdbc:sapdb:SAPOODB",
      "connectionParams":[
        {"param":"HOSTNAME",               	"type":"String",  "mandatory":true},
        {"param":"PORT",                   	"type":"Integer", "mandatory":true, "default":5439},
        {"param":"DATABASE",               	"type":"String",  "mandatory":true}
      ],
      "accessParams":[
        {"param":"USERNAME",               	"type":"String"},
        {"param":"PASSWORD",               	"type":"String"}
      ],
      "tableParams":[
        {"param":"SCHEMA",                 	"type":"String",  "description": "No schema value will show all tables. If a schema is specified on External system creation then it can be updated, but a value must be provided. A schema will not prevent a native SQL Query from accessing any table the credentials have access to."},
        {"param":"TABLE_PATTERN",          	"type":"String",  "advanced":true, "default":"%"},
        {"param":"NAME_REGEXP",            	"type":"String",  "advanced":true},
        {"param":"FORCE_JDBC_SCHEMA_NAME", 	"type":"Boolean", "advanced":true, "default":true, "description": "Force JDBC Schema Name is not applicable when creating Dataset from native SQL Query. You have to explicitly add the Schema name as Table prefix in the SQL query or rely on the Database user's default Schema."},
        {"param":"NAME_CASE_SENSITIVE",    	"type":"Boolean", "advanced":true, "default":false},
        {"param":"INCLUDE_TABLES",         	"type":"Boolean", "advanced":true, "default":true},
        {"param":"INCLUDE_VIEWS",          	"type":"Boolean", "advanced":true, "default":false}
      ]
    },
    {
      "name":"SAP HANA",
      "displayName":"Custom SAP HANA",
      "jarFilePattern":"ngdbc.*",
      "standalone":true,
      "auxFile":"",
      "isAliveSQL":"SELECT 1",
      "rowCountQuery":"",
      "previewQuery":"",
      "validationTimeout":2,
      "fetchSize":1000,
      "unsupportedSQL":"",
      "connectionString":"jdbc:sap://%s:%d/?databaseName=%s&currentSchema=%s",
      "connectionParams":[
        {"param":"HOSTNAME",               	"type":"String",  "mandatory":true},
        {"param":"PORT",                   	"type":"Integer", "mandatory":true, "default":30015},
        {"param":"DATABASE",               	"type":"String",  "mandatory":false},
        {"param":"SCHEMA",                  "type":"String",  "mandatory":false}
      ],
      "accessParams":[
        {"param":"USERNAME",               	"type":"String"},
        {"param":"PASSWORD",               	"type":"String"}
      ],
      "tableParams":[
        {"param":"TABLE_PATTERN",          	"type":"String",  "advanced":true, "default":"%"},
        {"param":"NAME_REGEXP",            	"type":"String",  "advanced":true},
        {"param":"FORCE_JDBC_SCHEMA_NAME", 	"type":"Boolean", "advanced":true, "default":false, "description": "Force JDBC Schema Name is not applicable when creating Dataset from native SQL Query. You have to explicitly add the Schema name as Table prefix in the SQL query or rely on the Database user's default Schema."},
        {"param":"NAME_CASE_SENSITIVE",    	"type":"Boolean", "advanced":true, "default":false},
        {"param":"INCLUDE_TABLES",         	"type":"Boolean", "advanced":true, "default":true},
        {"param":"INCLUDE_VIEWS",          	"type":"Boolean", "advanced":true, "default":false}
      ]
    },
    {
      "name":"ATHENA",
      "displayName":"Custom Amazon Athena",
      "jarFilePattern":"Athena.*",
      "standalone":true,
      "auxFile":"",
      "isAliveSQL":"SELECT 1",
      "rowCountQuery":"",
      "previewQuery":"",
      "validationTimeout":2,
      "fetchSize":1000,
      "unsupportedSQL":"",
      "connectionString": "jdbc:awsathena://AwsRegion=%s",
      "connectionParams":[
        {"param":"REGION",                 	"type":"String",  "mandatory":true}
      ],
      "accessParams":[
        {"param":"USERNAME",             	"type":"String",  "mandatory":true},
        {"param":"PASSWORD",                "type":"String",  "mandatory":true}
      ],
      "tableParams":[
        {"param":"SCHEMA",                 	"type":"String",  "description": "No schema value will show all tables. If a schema is specified on External system creation then it can be updated, but a value must be provided. A schema will not prevent a native SQL Query from accessing any table the credentials have access to."},
        {"param":"TABLE_PATTERN",          	"type":"String",  "advanced":true, "default":"%"},
        {"param":"NAME_REGEXP",            	"type":"String"},
        {"param":"FORCE_JDBC_SCHEMA_NAME", 	"type":"Boolean", "advanced":true, "default":true, "description": "Force JDBC Schema Name is not applicable when creating Dataset from native SQL Query. You have to explicitly add the Schema name as Table prefix in the SQL query or rely on the Database user's default Schema."},
        {"param":"NAME_CASE_SENSITIVE",    	"type":"Boolean", "advanced":true, "default":false},
        {"param":"INCLUDE_TABLES",         	"type":"Boolean", "advanced":true, "default":true},
        {"param":"INCLUDE_VIEWS",          	"type":"Boolean", "advanced":true, "default":false}
      ]
    },

    {
      "name":"CIS_BO",
      "displayName":"Custom CIS with Business Objects",
      "jarFilePattern":"csjdbc.*",
      "standalone":true,
      "auxFile":"",
      "isAliveSQL":"SELECT 1",
      "rowCountQuery":"",
      "previewQuery":"",
      "validationTimeout":2,
      "fetchSize":1000,
      "unsupportedSQL":"",
      "connectionString":"jdbc:compositesw:dbapi@%s:%d?domain=%s&dataSource=%s",
      "connectionParams":[
        {"param":"HOSTNAME",               	"type":"String",  "mandatory":true},
        {"param":"PORT",                   	"type":"Integer", "mandatory":true, "default":9401},
        {"param":"DOMAIN",                 	"type":"String",  "mandatory":true},
        {"param":"DATASOURCE",             	"type":"String",  "mandatory":true}
      ],
      "accessParams":[
        {"param":"USERNAME",               	"type":"String"},
        {"param":"PASSWORD",               	"type":"String"}
      ],
      "tableParams":[
        {"param":"SCHEMA",                 	"type":"String",  "description": "No schema value will show all tables. If a schema is specified on External system creation then it can be updated, but a value must be provided. A schema will not prevent a native SQL Query from accessing any table the credentials have access to."},
        {"param":"TABLE_PATTERN",          	"type":"String",  "advanced":true, "default":"%"},
        {"param":"NAME_REGEXP",            	"type":"String",  "advanced":true},
        {"param":"FORCE_JDBC_SCHEMA_NAME", 	"type":"Boolean", "advanced":true, "default":true, "description": "Force JDBC Schema Name is not applicable when creating Dataset from native SQL Query. You have to explicitly add the Schema name as Table prefix in the SQL query or rely on the Database user's default Schema."},
        {"param":"NAME_CASE_SENSITIVE",    	"type":"Boolean", "advanced":true, "default":false},
        {"param":"INCLUDE_TABLES",         	"type":"Boolean", "advanced":true, "default":true},
        {"param":"INCLUDE_VIEWS",          	"type":"Boolean", "advanced":true, "default":false}
      ]
    },

    {
      "name":"NEO4J",
      "displayName":"Custom Neo4j",
      "jarFilePattern":"neo4j.*",
      "standalone":true,
      "auxFile":"",
      "isAliveSQL":"SELECT 1",
      "rowCountQuery":"",
      "previewQuery":"",
      "validationTimeout":3,
      "fetchSize":1000,
      "unsupportedSQL":"",
      "connectionString":"jdbc:neo4j:bolt://%s:%d",
      "connectionParams":[
        {"param":"HOSTNAME",               	"type":"String",  "mandatory":true},
        {"param":"PORT",                   	"type":"Integer", "mandatory":true, "default":9401}
      ],
      "accessParams":[
        {"param":"USERNAME",               	"type":"String"},
        {"param":"PASSWORD",               	"type":"String"}
      ],
      "tableParams":[
        {"param":"SCHEMA",                 	"type":"String",  "description": "No schema value will show all tables. If a schema is specified on External system creation then it can be updated, but a value must be provided. A schema will not prevent a native SQL Query from accessing any table the credentials have access to."},
        {"param":"TABLE_PATTERN",          	"type":"String",  "advanced":true, "default":"%"},
        {"param":"NAME_REGEXP",            	"type":"String",  "advanced":true},
        {"param":"FORCE_JDBC_SCHEMA_NAME", 	"type":"Boolean", "advanced":true, "default":true, "description": "Force JDBC Schema Name is not applicable when creating Dataset from native SQL Query. You have to explicitly add the Schema name as Table prefix in the SQL query or rely on the Database user's default Schema."},
        {"param":"NAME_CASE_SENSITIVE",    	"type":"Boolean", "advanced":true, "default":false},
        {"param":"INCLUDE_TABLES",         	"type":"Boolean", "advanced":true, "default":true},
        {"param":"INCLUDE_VIEWS",          	"type":"Boolean", "advanced":true, "default":false}
      ]
    },

    {
      "name":"BIGQUERY",
      "displayName":"Custom Google BigQuery",
      "jarFilePattern":"GoogleBigQueryJDBC.*",
      "standalone":true,
      "auxFile":"",
      "isAliveSQL":"SELECT 1",
      "rowCountQuery":"",
      "previewQuery":"SELECT * FROM %s LIMIT %d",
      "validationTimeout":3,
      "fetchSize":1000,
      "unsupportedSQL":"",
      "connectionString":"jdbc:bigquery://%s:%d;ProjectId=%s;DefaultDataset=%s",
      "connectionParams":[
        {"param":"HOSTNAME",               "type":"String",  "mandatory":true, "default":"https://www.googleapis.com/bigquery/v2"},
        {"param":"PORT",                   "type":"Integer", "mandatory":true, "default":443},
        {"param":"PROJECT",                "type":"String",  "mandatory":true},
        {"param":"DATASET",                "type":"String",  "mandatory":false}
      ],
      "accessParams":[],
      "tableParams":[
        {"param":"TABLE_PATTERN",          "type":"String",  "mandatory":false, "default":"%"},
        {"param":"NAME_REGEXP",            "type":"String",  "mandatory":false},
        {"param":"FORCE_JDBC_SCHEMA_NAME", "type":"Boolean", "mandatory":false, "default":true, "description": "Force JDBC Schema Name is not applicable when creating Dataset from native SQL Query. You have to explicitly add the Schema name as Table prefix in the SQL query or rely on the Database user's default Schema."},
        {"param":"NAME_CASE_SENSITIVE",    "type":"Boolean", "mandatory":false, "default":false},
        {"param":"INCLUDE_TABLES",         "type":"Boolean", "mandatory":true,  "default":true},
        {"param":"INCLUDE_VIEWS",          "type":"Boolean", "mandatory":false, "default":false}]
    },
    {
      "name":"NETEZZA",
      "displayName":"Netezza",
      "jarFilePattern":"nzjdbc.*",
      "standalone":true,
      "auxFile":"",
      "isAliveSQL":"SELECT 1",
      "rowCountQuery":"",
      "previewQuery":"",
      "validationTimeout":2,
      "fetchSize":1000,
      "unsupportedSQL":"",
      "connectionString":"jdbc:netezza://%s:%d/%s",
      "connectionParams":[{"param":"HOSTNAME",               "type":"String",  "mandatory":true},
        {"param":"PORT",                   "type":"Integer", "mandatory":true, "default":5480},
        {"param":"DATABASE",               "type":"String",  "mandatory":true}],
      "accessParams":[    {"param":"USERNAME",               "type":"String",  "mandatory":false},
        {"param":"PASSWORD",               "type":"String",  "mandatory":false}],
      "tableParams":[
        {"param":"SCHEMA",                 "type":"String",  "mandatory":false, "description": "No schema value will show all tables. If a schema is specified on External system creation then it can be updated, but a value must be provided. A schema will not prevent a native SQL Query from accessing any table the credentials have access to."},
        {"param":"TABLE_PATTERN",          "type":"String",  "mandatory":false, "default":"%"},
        {"param":"NAME_REGEXP",            "type":"String",  "mandatory":false},
        {"param":"FORCE_JDBC_SCHEMA_NAME", "type":"Boolean", "mandatory":false, "default":true, "description": "Force JDBC Schema Name is not applicable when creating Dataset from native SQL Query. You have to explicitly add the Schema name as Table prefix in the SQL query or rely on the Database user's default Schema."},
        {"param":"NAME_CASE_SENSITIVE",    "type":"Boolean", "mandatory":false, "default":false},
        {"param":"INCLUDE_TABLES",         "type":"Boolean", "mandatory":false, "default":true},
        {"param":"INCLUDE_VIEWS",          "type":"Boolean", "mandatory":false, "default":false}]
    },
    {
      "name":"HYBRID DATA PIPELINE",
      "displayName":"Custom HDP",
      "jarFilePattern":"ddhybrid.jar",
      "standalone":true,
      "auxFile":"",
      "isAliveSQL":"SELECT 1",
      "rowCountQuery":"",
      "previewQuery":"",
      "validationTimeout":2,
      "fetchSize":1000,
      "unsupportedSQL":"",
      "connectionString":"jdbc:datadirect:ddhybrid://%s:%d;hybridDataPipelineDataSource=%s",
      "connectionParams":[{"param":"HOSTNAME",               "type":"String",  "mandatory":true},
        {"param":"PORT",                   "type":"Integer", "mandatory":true, "default":8443},
        {"param":"HDP_DATASOURCE",         "type":"String",  "mandatory":true}],
      "accessParams":[    {"param":"USERNAME",               "type":"String",  "mandatory":false},
        {"param":"PASSWORD",               "type":"String",  "mandatory":false}],
      "tableParams":[     {"param":"TABLE_PATTERN",          "type":"String",  "mandatory":false, "default":"%"},
        {"param":"NAME_REGEXP",            "type":"String",  "mandatory":false},
        {"param":"FORCE_JDBC_SCHEMA_NAME", "type":"Boolean", "mandatory":false, "default":true, "description": "Force JDBC Schema Name is not applicable when creating Dataset from native SQL Query. You have to explicitly add the Schema name as Table prefix in the SQL query or rely on the Database user's default Schema."},
        {"param":"NAME_CASE_SENSITIVE",    "type":"Boolean", "mandatory":false, "default":false},
        {"param":"INCLUDE_TABLES",         "type":"Boolean", "mandatory":false, "default":true},
        {"param":"INCLUDE_VIEWS",          "type":"Boolean", "mandatory":false, "default":false}]
    },
    {
      "name":"SNOWFLAKE",
      "displayName":"Custom Snowflake",
      "jarFilePattern":"snowflake-jdbc.*",
      "standalone":true,
      "auxFile":"",
      "isAliveSQL":"SELECT 1",
      "rowCountQuery":"",
      "previewQuery":"SELECT * FROM %s LIMIT %d",
      "validationTimeout":2,
      "fetchSize":1000,
      "unsupportedSQL":"",
      "connectionString":"jdbc:snowflake://%s.snowflakecomputing.com/?warehouse=%s&db=%s&schema=%s",
      "connectionParams":[
        {"param":"ACCOUNT",               	"type":"String",  "mandatory":true},
        {"param":"WAREHOUSE",             	"type":"String",  "mandatory":true},
        {"param":"DATABASE",             	"type":"String",  "mandatory":true},
        {"param":"SCHEMA",               	"type":"String",  "mandatory":false}
      ],
      "accessParams":[
        {"param":"USERNAME",               	"type":"String"},
        {"param":"PASSWORD",               	"type":"String"}
      ],
      "tableParams":[
        {"param":"TABLE_PATTERN",          	"type":"String",  "advanced":true, "default":"%"},
        {"param":"NAME_REGEXP",            	"type":"String",  "advanced":true},
        {"param":"FORCE_JDBC_SCHEMA_NAME",	"type":"Boolean", "advanced":true, "default":false, "description": "Force JDBC Schema Name is not applicable when creating Dataset from native SQL Query. You have to explicitly add the Schema name as Table prefix in the SQL query or rely on the Database user's default Schema."},
        {"param":"NAME_CASE_SENSITIVE",    	"type":"Boolean", "advanced":true, "default":false},
        {"param":"INCLUDE_TABLES",         	"type":"Boolean", "advanced":true, "default":true},
        {"param":"INCLUDE_VIEWS",          	"type":"Boolean", "advanced":true, "default":false}
      ]
    },
    {
      "name": "ATHENA",
      "displayName": "Custom Amazon Athena v2",
      "jarFilePattern": ".*athena.*jar",
      "standalone": true,
      "auxFile": "",
      "isAliveSQL": "SELECT 1",
      "rowCountQuery": "SELECT COUNT(*) FROM %s",
      "previewQuery": "SELECT * FROM %s LIMIT %d",
      "validationTimeout": 2,
      "fetchSize": 1000,
      "unsupportedSQL": "",
      "connectionString": "jdbc:awsathena://AWSRegion=%s;S3OutputLocation=%s;Catalog=%s;Schema=%s;Workgroup=%s;MetadataRetrievalMethod=%s;",
      "connectionParams": [
        {
          "param": "Region",
          "type": "String",
          "mandatory": true
        },
        {
          "param": "S3 Output Location",
          "type": "String",
          "mandatory": true
        },
        {
          "param": "Catalog",
          "type": "String",
          "mandatory": true,
          "default": "AwsDataCatalog"
        },
        {
          "param": "Schema",
          "type": "String",
          "mandatory": true
        },
        {
          "param": "Workgroup",
          "type": "String",
          "mandatory": false,
          "default": "primary"
        },
        {
          "param": "Metadata Retrieval Method",
          "type": "String",
          "mandatory": false,
          "default": "query"
        }
      ],
      "accessParams": [
        {
          "param": "USERNAME",
          "type": "String"
        },
        {
          "param": "PASSWORD",
          "type": "String"
        }
      ],
      "tableParams": [
        {
          "param": "TABLE_PATTERN",
          "type": "String",
          "advanced": true,
          "default": "%"
        },
        {
          "param": "NAME_REGEXP",
          "type": "String"
        },
        {
          "param": "FORCE_JDBC_SCHEMA_NAME",
          "type": "Boolean",
          "advanced": true,
          "default": true,
          "description": "Force JDBC Schema Name is not applicable when creating Dataset from native SQL Query. You have to explicitly add the Schema name as Table prefix in the SQL query or rely on the Database user's default Schema."
        },
        {
          "param": "NAME_CASE_SENSITIVE",
          "type": "Boolean",
          "advanced": true,
          "default": false
        },
        {
          "param": "INCLUDE_TABLES",
          "type": "Boolean",
          "advanced": true,
          "default": true
        },
        {
          "param": "INCLUDE_VIEWS",
          "type": "Boolean",
          "advanced": true,
          "default": false
        }
      ]
    },
    {
      "name": "DATABRICKS",
      "displayName": "Custom Databricks",
      "jarFilePattern": "databricks.*",
      "standalone": true,
      "auxFile": "",
      "isAliveSQL": "SELECT 1",
      "rowCountQuery": "",
      "previewQuery": "SELECT * FROM %s LIMIT %d",
      "validationTimeout": 2,
      "fetchSize": 1000,
      "unsupportedSQL": "",
      "connectionString": "jdbc:databricks://%s:443/default;transportMode=http;ssl=1;AuthMech=3;httpPath=%s;EnableArrow=0",
      "connectionParams": [
        {
          "param": "Hostname",
          "type": "String",
          "mandatory": true
        },
        {
          "param": "Http Path",
          "type": "String",
          "mandatory": true
        }
      ],
      "accessParams": [
        {
          "param": "USERNAME",
          "type": "String"
        },
        {
          "param": "PASSWORD",
          "type": "String"
        }
      ],
      "tableParams": [
        {
          "param": "TABLE_PATTERN",
          "type": "String",
          "advanced": true,
          "default": "%"
        },
        {
          "param": "NAME_REGEXP",
          "type": "String",
          "advanced": true
        },
        {
          "param": "FORCE_JDBC_SCHEMA_NAME",
          "type": "Boolean",
          "advanced": true,
          "default": false,
          "description": "Force JDBC Schema Name is not applicable when creating Dataset from native SQL Query. You have to explicitly add the Schema name as Table prefix in the SQL query or rely on the Database user's default Schema."
        },
        {
          "param": "NAME_CASE_SENSITIVE",
          "type": "Boolean",
          "advanced": true,
          "default": false
        },
        {
          "param": "INCLUDE_TABLES",
          "type": "Boolean",
          "advanced": true,
          "default": true
        },
        {
          "param": "INCLUDE_VIEWS",
          "type": "Boolean",
          "advanced": true,
          "default": false
        }
      ]
    }
  ]
}
