org.apache.derby.jdbc
Class ClientDriver

java.lang.Object
  extended by org.apache.derby.jdbc.ClientDriver
All Implemented Interfaces:
java.sql.Driver

public class ClientDriver
extends java.lang.Object
implements java.sql.Driver


Field Summary
private static int DERBY_REMOTE_PROTOCOL
           
private static java.sql.SQLException exceptionsOnLoadDriver__
           
private static ClientJDBCObjectFactory factoryObject
           
private static ClientDriver registeredDriver__
           
private  int traceFileSuffixIndex_
           
 
Constructor Summary
ClientDriver()
           
 
Method Summary
 boolean acceptsURL(java.lang.String url)
           
private  java.lang.String appendDatabaseAttributes(java.lang.String database, java.util.Properties augmentedProperties)
          Append attributes to the database name except for user/password which are sent as part of the protocol, and SSL which is used locally in the client.
 java.sql.Connection connect(java.lang.String url, java.util.Properties properties)
           
private static ClientJDBCObjectFactory createDefaultFactoryImpl()
          Returns an instance of the ClientJDBCObjectFactoryImpl class
private static ClientJDBCObjectFactory createJDBC40FactoryImpl()
          Returns an instance of the ClientJDBCObjectFactoryImpl40 class If a ClassNotFoundException occurs then it returns an instance of ClientJDBCObjectFactoryImpl If a future version of JDBC comes then a similar method would be added say createJDBCXXFactoryImpl in which if the class is not found then it would return the lower version thus having a sort of cascading effect until it gets a valid instance
static ClientJDBCObjectFactory getFactory()
          This method returns an Implementation of ClientJDBCObjectFactory depending on VM under use Currently it returns either ClientJDBCObjectFactoryImpl (or) ClientJDBCObjectFactoryImpl40
 int getMajorVersion()
           
 int getMinorVersion()
           
 java.sql.DriverPropertyInfo[] getPropertyInfo(java.lang.String url, java.util.Properties properties)
           
 boolean jdbcCompliant()
           
private static java.lang.String tokenizeDatabase(java.util.StringTokenizer urlTokenizer, java.lang.String url)
           
private static int tokenizeOptionalPortNumber(java.util.StringTokenizer urlTokenizer, java.lang.String url)
           
private static int tokenizeProtocol(java.lang.String url, java.util.StringTokenizer urlTokenizer)
           
private static java.lang.String tokenizeServerName(java.util.StringTokenizer urlTokenizer, java.lang.String url)
           
private static java.util.Properties tokenizeURLProperties(java.lang.String url, java.util.Properties properties)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

traceFileSuffixIndex_

private transient int traceFileSuffixIndex_

DERBY_REMOTE_PROTOCOL

private static final int DERBY_REMOTE_PROTOCOL
See Also:
Constant Field Values

factoryObject

private static ClientJDBCObjectFactory factoryObject

exceptionsOnLoadDriver__

private static java.sql.SQLException exceptionsOnLoadDriver__

registeredDriver__

private static ClientDriver registeredDriver__
Constructor Detail

ClientDriver

public ClientDriver()
Method Detail

connect

public java.sql.Connection connect(java.lang.String url,
                                   java.util.Properties properties)
                            throws java.sql.SQLException
Specified by:
connect in interface java.sql.Driver
Throws:
java.sql.SQLException

appendDatabaseAttributes

private java.lang.String appendDatabaseAttributes(java.lang.String database,
                                                  java.util.Properties augmentedProperties)
Append attributes to the database name except for user/password which are sent as part of the protocol, and SSL which is used locally in the client. Other attributes will be sent to the server with the database name Assumes augmentedProperties is not null

Parameters:
database - - Short database name
augmentedProperties - - Set of properties to append as attributes
Returns:
databaseName + attributes (e.g. mydb;create=true)

acceptsURL

public boolean acceptsURL(java.lang.String url)
                   throws java.sql.SQLException
Specified by:
acceptsURL in interface java.sql.Driver
Throws:
java.sql.SQLException

getPropertyInfo

public java.sql.DriverPropertyInfo[] getPropertyInfo(java.lang.String url,
                                                     java.util.Properties properties)
                                              throws java.sql.SQLException
Specified by:
getPropertyInfo in interface java.sql.Driver
Throws:
java.sql.SQLException

getMajorVersion

public int getMajorVersion()
Specified by:
getMajorVersion in interface java.sql.Driver

getMinorVersion

public int getMinorVersion()
Specified by:
getMinorVersion in interface java.sql.Driver

jdbcCompliant

public boolean jdbcCompliant()
Specified by:
jdbcCompliant in interface java.sql.Driver

tokenizeProtocol

private static int tokenizeProtocol(java.lang.String url,
                                    java.util.StringTokenizer urlTokenizer)
                             throws SqlException
Throws:
SqlException

tokenizeServerName

private static java.lang.String tokenizeServerName(java.util.StringTokenizer urlTokenizer,
                                                   java.lang.String url)
                                            throws SqlException
Throws:
SqlException

tokenizeOptionalPortNumber

private static int tokenizeOptionalPortNumber(java.util.StringTokenizer urlTokenizer,
                                              java.lang.String url)
                                       throws SqlException
Throws:
SqlException

tokenizeDatabase

private static java.lang.String tokenizeDatabase(java.util.StringTokenizer urlTokenizer,
                                                 java.lang.String url)
                                          throws SqlException
Throws:
SqlException

tokenizeURLProperties

private static java.util.Properties tokenizeURLProperties(java.lang.String url,
                                                          java.util.Properties properties)
                                                   throws SqlException
Throws:
SqlException

getFactory

public static ClientJDBCObjectFactory getFactory()
This method returns an Implementation of ClientJDBCObjectFactory depending on VM under use Currently it returns either ClientJDBCObjectFactoryImpl (or) ClientJDBCObjectFactoryImpl40


createDefaultFactoryImpl

private static ClientJDBCObjectFactory createDefaultFactoryImpl()
Returns an instance of the ClientJDBCObjectFactoryImpl class


createJDBC40FactoryImpl

private static ClientJDBCObjectFactory createJDBC40FactoryImpl()
Returns an instance of the ClientJDBCObjectFactoryImpl40 class If a ClassNotFoundException occurs then it returns an instance of ClientJDBCObjectFactoryImpl If a future version of JDBC comes then a similar method would be added say createJDBCXXFactoryImpl in which if the class is not found then it would return the lower version thus having a sort of cascading effect until it gets a valid instance


Built on Thu 2012-03-29 21:53:33+0000, from revision ???

Apache Derby V10.6 Internals - Copyright © 2004,2007 The Apache Software Foundation. All Rights Reserved.