Package org.eclipse.jetty.server.session
Class DatabaseAdaptor
- java.lang.Object
-
- org.eclipse.jetty.server.session.DatabaseAdaptor
-
public class DatabaseAdaptor extends java.lang.ObjectDatabaseAdaptor Handles differences between databases. Postgres uses the getBytes and setBinaryStream methods to access a "bytea" datatype, which can be up to 1Gb of binary data. MySQL is happy to use the "blob" type and getBlob() methods instead.
-
-
Field Summary
Fields Modifier and Type Field Description protected java.lang.String_blobTypeprotected java.lang.String_longTypeprotected java.lang.String_stringType
-
Constructor Summary
Constructors Constructor Description DatabaseAdaptor()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidadaptTo(java.sql.DatabaseMetaData dbMeta)java.lang.StringconvertIdentifier(java.lang.String identifier)Convert a camel case identifier into either upper or lower depending on the way the db stores identifiers.java.io.InputStreamgetBlobInputStream(java.sql.ResultSet result, java.lang.String columnName)java.lang.StringgetBlobType()protected java.sql.ConnectiongetConnection()Get a connection from the driver or datasource.java.lang.StringgetConnectionUrl()javax.sql.DataSourcegetDatasource()java.lang.StringgetDatasourceName()java.lang.StringgetDBName()java.sql.DrivergetDriver()java.lang.StringgetDriverClassName()java.lang.StringgetLongType()java.lang.StringgetStringType()voidinitialize()booleanisEmptyStringNull()booleanisRowIdReserved()rowId is a reserved word for Oracle, so change the name of this columnvoidsetBlobType(java.lang.String blobType)voidsetDatasource(javax.sql.DataSource ds)voidsetDatasourceName(java.lang.String jndi)voidsetDriverInfo(java.lang.String driverClassName, java.lang.String connectionUrl)Configure jdbc connection information via a jdbc DrivervoidsetDriverInfo(java.sql.Driver driverClass, java.lang.String connectionUrl)Configure jdbc connection information via a jdbc DrivervoidsetLongType(java.lang.String longType)voidsetStringType(java.lang.String stringType)java.lang.StringtoString()
-
-
-
Method Detail
-
adaptTo
public void adaptTo(java.sql.DatabaseMetaData dbMeta) throws java.sql.SQLException- Throws:
java.sql.SQLException
-
setBlobType
public void setBlobType(java.lang.String blobType)
-
getBlobType
public java.lang.String getBlobType()
-
setLongType
public void setLongType(java.lang.String longType)
-
getLongType
public java.lang.String getLongType()
-
setStringType
public void setStringType(java.lang.String stringType)
-
getStringType
public java.lang.String getStringType()
-
convertIdentifier
public java.lang.String convertIdentifier(java.lang.String identifier)
Convert a camel case identifier into either upper or lower depending on the way the db stores identifiers.- Parameters:
identifier- the raw identifier- Returns:
- the converted identifier
-
getDBName
public java.lang.String getDBName()
-
getBlobInputStream
public java.io.InputStream getBlobInputStream(java.sql.ResultSet result, java.lang.String columnName) throws java.sql.SQLException- Throws:
java.sql.SQLException
-
isEmptyStringNull
public boolean isEmptyStringNull()
-
isRowIdReserved
public boolean isRowIdReserved()
rowId is a reserved word for Oracle, so change the name of this column- Returns:
- true if db in use is oracle
-
setDriverInfo
public void setDriverInfo(java.lang.String driverClassName, java.lang.String connectionUrl)Configure jdbc connection information via a jdbc Driver- Parameters:
driverClassName- the driver classnameconnectionUrl- the driver connection url
-
setDriverInfo
public void setDriverInfo(java.sql.Driver driverClass, java.lang.String connectionUrl)Configure jdbc connection information via a jdbc Driver- Parameters:
driverClass- the driver classconnectionUrl- the driver connection url
-
setDatasource
public void setDatasource(javax.sql.DataSource ds)
-
setDatasourceName
public void setDatasourceName(java.lang.String jndi)
-
getDatasourceName
public java.lang.String getDatasourceName()
-
getDatasource
public javax.sql.DataSource getDatasource()
-
getDriverClassName
public java.lang.String getDriverClassName()
-
getDriver
public java.sql.Driver getDriver()
-
getConnectionUrl
public java.lang.String getConnectionUrl()
-
initialize
public void initialize() throws java.lang.Exception- Throws:
java.lang.Exception
-
getConnection
protected java.sql.Connection getConnection() throws java.sql.SQLExceptionGet a connection from the driver or datasource.- Returns:
- the connection for the datasource
- Throws:
java.sql.SQLException- if unable to get the connection
-
toString
public java.lang.String toString()
- Overrides:
toStringin classjava.lang.Object- See Also:
Object.toString()
-
-