Package com.iizix.jdbc
Class JDBCHelper
- java.lang.Object
- com.iizix.jdbc.JDBCHelper
public class JDBCHelper extends java.lang.Object
Derby instance for iiziGo and iiziServer.- Author:
- Christopher Mindus
Constructor Summary
Constructors Constructor Description JDBCHelper()
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static int
disposeAll()
Disposes of created instance and stops the Derby network server if started.static IDBConnectionPool
from(java.lang.String name, DerbyImpl derbyImpl)
Constructs the Derby database connection pool from a directory that can contain a "dbconf.properties" file.static IDBConnectionPool
from(java.lang.String name, PropCnr cnr, java.util.Properties driverProps)
Creates a database connection pool from values stored in a property container.static IDBConnectionPool
from(java.lang.String name, java.io.File dir)
Constructs the database connection pool from a directory that should contain a "dbconf.properties" file.static java.net.URL[]
getClassLoaderURLs(java.io.File dir, java.lang.String classPath)
Parses the classPath into URL's with the specified directory as the relative directory.static java.io.File
initialize(IFileURLResolver resolver)
Initializes the file resolver and looks up the[resources/]jdbc-drivers
directory.static java.lang.String
setUsePrivateDirectory(boolean doCopy)
Sets the JDBC drivers directory to be the user's private directory "~/.iizi/jdbc-drivers".
Method Detail
setUsePrivateDirectory
public static java.lang.String setUsePrivateDirectory(boolean doCopy)
Sets the JDBC drivers directory to be the user's private directory "~/.iizi/jdbc-drivers".- Parameters:
doCopy
- Flag to perform copy of the normal JDBC drivers directory to the user's private directory "~/.iizi/jdbc-drivers".- Returns:
- Error message for failure, null for success.
initialize
public static java.io.File initialize(IFileURLResolver resolver) throws java.io.IOException
Initializes the file resolver and looks up the[resources/]jdbc-drivers
directory.- Parameters:
resolver
- The URL to File resolver.- Returns:
- The canonical directory for the
jdbc-drivers
. - Throws:
java.io.IOException
- If the the[resources/]jdbc-drivers
directory is not found, or if the user's private directory for JDBC drivers "~/.iizi/jdbc-drivers" is not found or copy/update or drivers and files failed.
getClassLoaderURLs
public static java.net.URL[] getClassLoaderURLs(java.io.File dir, java.lang.String classPath) throws java.io.IOException
Parses the classPath into URL's with the specified directory as the relative directory.- Parameters:
dir
- The directory that is used for relative paths in the classpath for directories This directory is normally the one containing the 'dbconf*.properties' file to process the 'classpath' entry. Ifdir
isnull
the classpath must either contain absolute paths or in case of no classpath, an empty URL array is returned.classPath
- The classpath with a comma as separator (not the system separator ";" for Windows or ":" for other systems). To specify a comma, enter it twice. The path must consist of either directories or (Jar) files.- Returns:
- The URL's is never an empty array. If classPath is null or empty string, the URL is set to the
dir
URL. - Throws:
java.io.IOException
- If the classPath references non-existent or erroneous paths, or the path part is a file that is does not have the '.jar' or '.zip' file extension.
from
public static IDBConnectionPool from(java.lang.String name, java.io.File dir) throws java.io.IOException, java.sql.SQLException
Constructs the database connection pool from a directory that should contain a "dbconf.properties" file.- Parameters:
name
- The name of the database connection pool.dir
- The directory where the "dbconf.properties" should be present.- Throws:
java.io.IOException
- For I/O errors.java.sql.SQLException
- For errors in creating the database pool.
from
public static IDBConnectionPool from(java.lang.String name, DerbyImpl derbyImpl) throws java.io.IOException, java.sql.SQLException
Constructs the Derby database connection pool from a directory that can contain a "dbconf.properties" file.- Parameters:
name
- The name of the database connection pool.derbyImpl
- The Derby implementation.- Returns:
- The database connection pool.
- Throws:
java.io.IOException
- For I/O errors.java.sql.SQLException
- For errors in creating the database pool.
from
public static IDBConnectionPool from(java.lang.String name, PropCnr cnr, java.util.Properties driverProps) throws java.sql.SQLException, java.io.IOException
Creates a database connection pool from values stored in a property container.- Parameters:
name
- The name of the database connection pool.cnr
- The property container.driverProps
- The driver properties, null for none.- Returns:
- The database connection pool.
- Throws:
java.sql.SQLException
- For errors in creating the database pooljava.io.IOException
- For I/O errors.
disposeAll
public static int disposeAll()
Disposes of created instance and stops the Derby network server if started.- Returns:
- count of disposed instances, zero for none.