Package helma.objectmodel.db
Class DbSource
- java.lang.Object
-
- helma.objectmodel.db.DbSource
-
public class DbSource extends java.lang.Object
This class describes a releational data source (URL, driver, user and password).
-
-
Field Summary
Fields Modifier and Type Field Description protected java.lang.String
url
-
Constructor Summary
Constructors Constructor Description DbSource(java.lang.String name, ResourceProperties props)
Creates a new DbSource object.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
equals(java.lang.Object obj)
Indicates whether some other object is "equal to" this one.java.sql.Connection
getConnection()
Get a JDBC connection to the db source.protected DbMapping
getDbMapping(java.lang.String tablename)
Look up a DbMapping instance for the given table name.java.lang.String
getDriverName()
Return the class name of the JDBC driverjava.lang.String
getName()
Return the name of the db dourceint
hashCode()
Returns a hash code value for the object.boolean
isH2()
Check if this DbSource represents a H2 databaseboolean
isMySQL()
Check if this DbSource represents a MySQL databaseboolean
isOracle()
Check if this DbSource represents an Oracle databaseboolean
isPostgreSQL()
Check if this DbSource represents a PostgreSQL databaseprotected void
registerDbMapping(DbMapping dbmap)
Register a dbmapping by its table name.static void
setDefaultProps(ResourceProperties props)
Set the default (server-wide) propertiesResourceProperties
switchProperties(ResourceProperties newProps)
Set the db properties to newProps, and return the old properties.
-
-
-
Constructor Detail
-
DbSource
public DbSource(java.lang.String name, ResourceProperties props) throws java.lang.ClassNotFoundException
Creates a new DbSource object.- Parameters:
name
- the db source nameprops
- the properties- Throws:
java.lang.ClassNotFoundException
- if the JDBC driver couldn't be loaded
-
-
Method Detail
-
getConnection
public java.sql.Connection getConnection() throws java.lang.ClassNotFoundException, java.sql.SQLException
Get a JDBC connection to the db source.- Returns:
- a JDBC connection
- Throws:
java.lang.ClassNotFoundException
- if the JDBC driver couldn't be loadedjava.sql.SQLException
- if the connection couldn't be created
-
switchProperties
public ResourceProperties switchProperties(ResourceProperties newProps) throws java.lang.ClassNotFoundException
Set the db properties to newProps, and return the old properties.- Parameters:
newProps
- the new properties to use for this db source- Returns:
- the old properties
- Throws:
java.lang.ClassNotFoundException
- if jdbc driver class couldn't be found
-
getDriverName
public java.lang.String getDriverName()
Return the class name of the JDBC driver- Returns:
- the class name of the JDBC driver
-
getName
public java.lang.String getName()
Return the name of the db dource- Returns:
- the name of the db dource
-
setDefaultProps
public static void setDefaultProps(ResourceProperties props)
Set the default (server-wide) properties- Parameters:
props
- server default db.properties
-
isOracle
public boolean isOracle()
Check if this DbSource represents an Oracle database- Returns:
- true if we're using an oracle JDBC driver
-
isMySQL
public boolean isMySQL()
Check if this DbSource represents a MySQL database- Returns:
- true if we're using a MySQL JDBC driver
-
isPostgreSQL
public boolean isPostgreSQL()
Check if this DbSource represents a PostgreSQL database- Returns:
- true if we're using a PostgreSQL JDBC driver
-
isH2
public boolean isH2()
Check if this DbSource represents a H2 database- Returns:
- true if we're using a H2 JDBC driver
-
registerDbMapping
protected void registerDbMapping(DbMapping dbmap)
Register a dbmapping by its table name.- Parameters:
dbmap
- the DbMapping instance to register
-
getDbMapping
protected DbMapping getDbMapping(java.lang.String tablename)
Look up a DbMapping instance for the given table name.- Parameters:
tablename
- the table name- Returns:
- the matching DbMapping instance
-
hashCode
public int hashCode()
Returns a hash code value for the object.- Overrides:
hashCode
in classjava.lang.Object
-
equals
public boolean equals(java.lang.Object obj)
Indicates whether some other object is "equal to" this one.- Overrides:
equals
in classjava.lang.Object
-
-