private java.sql.Driver getRealDriver(SimonConnectionConfiguration configuration, Properties info) throws SQLException {
		java.sql.Driver drv = null;
		try {
			drv = DriverManager.getDriver(configuration.getRealUrl());
		} catch (SQLException e) {
			// nothing, not an error
		}

		if (drv == null && info != null && info.keySet().contains(SimonConnectionConfiguration.REAL_DRIVER)) {
			drv = registerDriver(info.getProperty(SimonConnectionConfiguration.REAL_DRIVER));
		}

		if (drv == null && configuration.getRealDriver() != null) {
			drv = registerDriver(configuration.getRealDriver());
		}

		if (drv == null) {
			if (configuration.getRealDriver() != null) {
				drv = registerDriver(configuration.getRealDriver());
			}
		}

		if (drv == null) {
			throw new SQLException("Real driver is not registered and can't determine real driver class name for registration.");
		}
		return drv;
	}
private java . sql . Driver getRealDriver ( SimonConnectionConfiguration configuration , Properties info ) throws SQLException { java . sql . Driver drv = null ; try { drv = DriverManager . getDriver ( configuration . getRealUrl ( ) ) ; } catch ( SQLException e ) { } if ( drv == null && info != null && info . keySet ( ) . contains ( SimonConnectionConfiguration . REAL_DRIVER ) ) { drv = registerDriver ( info . getProperty ( SimonConnectionConfiguration . REAL_DRIVER ) ) ; } if ( drv == null && configuration . getRealDriver ( ) != null ) { drv = registerDriver ( configuration . getRealDriver ( ) ) ; } if ( drv == null ) { if ( configuration . getRealDriver ( ) != null ) { drv = registerDriver ( configuration . getRealDriver ( ) ) ; } } if ( drv == null ) { throw new SQLException ( "Real driver is not registered and can't determine real driver class name for registration." ) ; } return drv ; }
Tries to determine driver class, instantiate it and register if already not registered.
For more detail look at {@link Driver} class javadoc.

@param configuration instance of url object that represents url
@param info parameters from {@link #connect(String, java.util.Properties)} method
@return instance of real driver
@throws java.sql.SQLException if real driver can't be determined or is not registerd