org.pentaho.platform.plugin.services.connections.sql
Class SQLConnection

java.lang.Object
  extended by org.pentaho.platform.plugin.services.connections.sql.SQLConnection
All Implemented Interfaces:
org.pentaho.commons.connection.ILimitableConnection, org.pentaho.commons.connection.IPentahoConnection, IPentahoLoggingConnection

public class SQLConnection
extends Object
implements IPentahoLoggingConnection, org.pentaho.commons.connection.ILimitableConnection

Author:
wseyler TODO To change the template for this generated type comment go to Window - Preferences - Java - Code Style - Code Templates

Field Summary
static int CONCUR_READONLY
           
static int CONCUR_UPDATABLE
           
static int RESULTSET_FORWARDONLY
           
static int RESULTSET_SCROLLABLE
           
 
Fields inherited from interface org.pentaho.commons.connection.IPentahoConnection
CLASSNAME_KEY, CONNECTION, DRIVER_KEY, HQL_DATASOURCE, JNDI_NAME_KEY, KEYS, LOCATION_KEY, MDX_DATASOURCE, NONE_DATASOURCE, PASSWORD_KEY, PROVIDER, QUERY_KEY, SQL_DATASOURCE, USERNAME_KEY, XML_DATASOURCE
 
Constructor Summary
SQLConnection()
           
SQLConnection(String driverName, String location, String userName, String password, ILogger logger)
           
 
Method Summary
 void clearWarnings()
           
 void close()
           
 boolean connect(Properties props)
           
 int execute(String query)
           
 int execute(String query, int scrollType, int concur)
           
 org.pentaho.commons.connection.IPentahoResultSet executeQuery(String query)
          Executes the specified query.
 org.pentaho.commons.connection.IPentahoResultSet executeQuery(String query, int scrollType, int concur)
          Executes the specified query with the defined parameters
 String getDatasourceType()
          return datasource type SQL
 int getFetchSize()
           
 String getLastQuery()
           
 int getMaxRows()
           
 Connection getNativeConnection()
           
 int getQueryTimeout()
          Returns the query timeout value (in seconds)
 boolean getReadOnly()
          Returns the state of the readonly flag
 org.pentaho.commons.connection.IPentahoResultSet getResultSet()
           
 boolean initialized()
           
 boolean isClosed()
           
 boolean isFallBackToNonscrollableOnError()
           
 boolean isForcedForwardOnly()
           
 boolean isReadOnly()
           
 org.pentaho.commons.connection.IPentahoResultSet prepareAndExecuteQuery(String query, List parameters)
           
 org.pentaho.commons.connection.IPentahoResultSet prepareAndExecuteQuery(String query, List parameters, int scrollType, int concur)
           
 boolean preparedQueriesSupported()
           
 void setFallBackToNonscrollableOnError(boolean fallBackToNonscrollableOnError)
           
 void setFetchSize(int fetchSize)
           
 void setForcedForwardOnly(boolean forcedForwardOnly)
           
 void setLogger(ILogger logger)
           
 void setMaxRows(int maxRows)
           
 void setProperties(Properties props)
           
 void setQueryTimeout(int timeInSec)
          Sets the valid of the timeout (in seconds)
 void setReadOnly(boolean value)
          Sets the connection object to readonly.
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

RESULTSET_SCROLLABLE

public static final int RESULTSET_SCROLLABLE
See Also:
Constant Field Values

RESULTSET_FORWARDONLY

public static final int RESULTSET_FORWARDONLY
See Also:
Constant Field Values

CONCUR_READONLY

public static final int CONCUR_READONLY
See Also:
Constant Field Values

CONCUR_UPDATABLE

public static final int CONCUR_UPDATABLE
See Also:
Constant Field Values
Constructor Detail

SQLConnection

public SQLConnection()

SQLConnection

public SQLConnection(String driverName,
                     String location,
                     String userName,
                     String password,
                     ILogger logger)
Method Detail

setLogger

public void setLogger(ILogger logger)
Specified by:
setLogger in interface IPentahoLoggingConnection

setProperties

public void setProperties(Properties props)
Specified by:
setProperties in interface org.pentaho.commons.connection.IPentahoConnection

setQueryTimeout

public void setQueryTimeout(int timeInSec)
Sets the valid of the timeout (in seconds)

Specified by:
setQueryTimeout in interface org.pentaho.commons.connection.ILimitableConnection

setReadOnly

public void setReadOnly(boolean value)
Sets the connection object to readonly.

Parameters:
value -

getQueryTimeout

public int getQueryTimeout()
Returns the query timeout value (in seconds)


initialized

public boolean initialized()
Specified by:
initialized in interface org.pentaho.commons.connection.IPentahoConnection

getDatasourceType

public String getDatasourceType()
return datasource type SQL

Specified by:
getDatasourceType in interface org.pentaho.commons.connection.IPentahoConnection
Returns:
datasource type

close

public void close()
Specified by:
close in interface org.pentaho.commons.connection.IPentahoConnection

getLastQuery

public String getLastQuery()
Specified by:
getLastQuery in interface org.pentaho.commons.connection.IPentahoConnection

executeQuery

public org.pentaho.commons.connection.IPentahoResultSet executeQuery(String query)
                                                              throws SQLException,
                                                                     InterruptedException,
                                                                     PentahoSystemException
Executes the specified query.

Specified by:
executeQuery in interface org.pentaho.commons.connection.IPentahoConnection
Parameters:
query - the query to execute
Returns:
the resultset from the query
Throws:
SQLException - indicates an error running the query
InterruptedException - indicates that the query took longer than the allowed timeout value
PentahoSystemException

executeQuery

public org.pentaho.commons.connection.IPentahoResultSet executeQuery(String query,
                                                                     int scrollType,
                                                                     int concur)
                                                              throws SQLException,
                                                                     InterruptedException,
                                                                     PentahoSystemException
Executes the specified query with the defined parameters

Parameters:
query - the query to be executed
scrollType -
concur -
Returns:
the result set of data for the query
Throws:
SQLException - indicates an error running the query
InterruptedException - indicates the query took longer than allowable by the query timeout
PentahoSystemException

prepareAndExecuteQuery

public org.pentaho.commons.connection.IPentahoResultSet prepareAndExecuteQuery(String query,
                                                                               List parameters)
                                                                        throws SQLException
Specified by:
prepareAndExecuteQuery in interface org.pentaho.commons.connection.IPentahoConnection
Throws:
SQLException

prepareAndExecuteQuery

public org.pentaho.commons.connection.IPentahoResultSet prepareAndExecuteQuery(String query,
                                                                               List parameters,
                                                                               int scrollType,
                                                                               int concur)
                                                                        throws SQLException
Throws:
SQLException

preparedQueriesSupported

public boolean preparedQueriesSupported()
Specified by:
preparedQueriesSupported in interface org.pentaho.commons.connection.IPentahoConnection

isClosed

public boolean isClosed()
Specified by:
isClosed in interface org.pentaho.commons.connection.IPentahoConnection

isReadOnly

public boolean isReadOnly()
Specified by:
isReadOnly in interface org.pentaho.commons.connection.IPentahoConnection

clearWarnings

public void clearWarnings()
Specified by:
clearWarnings in interface org.pentaho.commons.connection.IPentahoConnection

getResultSet

public org.pentaho.commons.connection.IPentahoResultSet getResultSet()
Specified by:
getResultSet in interface org.pentaho.commons.connection.IPentahoConnection

connect

public boolean connect(Properties props)
Specified by:
connect in interface org.pentaho.commons.connection.IPentahoConnection

execute

public int execute(String query)
            throws SQLException
Throws:
SQLException

execute

public int execute(String query,
                   int scrollType,
                   int concur)
            throws SQLException
Throws:
SQLException

getNativeConnection

public Connection getNativeConnection()
Returns:
Returns the nativeConnection.

getFetchSize

public int getFetchSize()
Returns:
Returns the fetchSize.

setFetchSize

public void setFetchSize(int fetchSize)
Specified by:
setFetchSize in interface org.pentaho.commons.connection.IPentahoConnection
Parameters:
fetchSize - The fetchSize to set.

getMaxRows

public int getMaxRows()
Returns:
Returns the maxRows.

setMaxRows

public void setMaxRows(int maxRows)
Specified by:
setMaxRows in interface org.pentaho.commons.connection.ILimitableConnection
Specified by:
setMaxRows in interface org.pentaho.commons.connection.IPentahoConnection
Parameters:
maxRows - The maxRows to set.

getReadOnly

public boolean getReadOnly()
Returns the state of the readonly flag

Returns:
true if the connection is set to readonly

setFallBackToNonscrollableOnError

public void setFallBackToNonscrollableOnError(boolean fallBackToNonscrollableOnError)

isFallBackToNonscrollableOnError

public boolean isFallBackToNonscrollableOnError()

isForcedForwardOnly

public boolean isForcedForwardOnly()

setForcedForwardOnly

public void setForcedForwardOnly(boolean forcedForwardOnly)