Class PostgreSqlPlatform
java.lang.Object
edu.internet2.middleware.grouper.ext.org.apache.ddlutils.util.JdbcSupport
edu.internet2.middleware.grouper.ext.org.apache.ddlutils.platform.PlatformImplBase
edu.internet2.middleware.grouper.ext.org.apache.ddlutils.platform.postgresql.PostgreSqlPlatform
- All Implemented Interfaces:
Platform
The platform implementation for PostgresSql.
- Version:
- $Revision: 231306 $
-
Field Summary
Modifier and TypeFieldDescriptionstatic final String
Database name of this platform.static final String
The standard PostgreSQL jdbc driver.static final String
The subprotocol used by the standard PostgreSQL driver.Fields inherited from class edu.internet2.middleware.grouper.ext.org.apache.ddlutils.platform.PlatformImplBase
MODEL_DEFAULT_NAME
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionvoid
createDatabase
(String jdbcDriverClassName, String connectionUrl, String username, String password, Map parameters) Creates the database specified by the given parameters.void
dropDatabase
(String jdbcDriverClassName, String connectionUrl, String username, String password) Drops the database specified by the given parameters.getName()
Returns the name of the database that this platform is for.protected void
setObject
(PreparedStatement statement, int sqlIndex, org.apache.commons.beanutils.DynaBean dynaBean, SqlDynaProperty property) Sets a parameter of the prepared statement based on the type of the column of the property.Methods inherited from class edu.internet2.middleware.grouper.ext.org.apache.ddlutils.platform.PlatformImplBase
afterInsert, afterUpdate, alterTables, alterTables, alterTables, alterTables, alterTables, alterTables, alterTables, alterTables, beforeInsert, beforeUpdate, createDeleteSql, createInsertSql, createResultSetIterator, createSelectLastInsertIdSql, createTables, createTables, createTables, createTables, createUpdateSql, delete, delete, dropTable, dropTable, dropTables, dropTables, evaluateBatch, evaluateBatch, exists, extractColumnValue, fetch, fetch, fetch, fetch, fetch, fetch, fetch, fetch, getAlterTablesSql, getAlterTablesSql, getAlterTablesSql, getAlterTablesSql, getAlterTablesSql, getAlterTablesSql, getAlterTablesSql, getAlterTablesSql, getCreateTablesSql, getCreateTablesSql, getDeleteSql, getDropTableSql, getDropTablesSql, getInsertSql, getLog, getModelReader, getObjectFromResultSet, getObjectFromResultSet, getPlatformInfo, getSqlBuilder, getUpdateSql, insert, insert, insert, insert, isDelimitedIdentifierModeOn, isForeignKeysSorted, isIdentityOverrideOn, isScriptModeOn, isSqlCommentsOn, logWarnings, postprocessModelFromDatabase, query, query, query, query, readModelFromDatabase, readModelFromDatabase, readModelFromDatabase, readModelFromDatabase, setDelimitedIdentifierModeOn, setForeignKeysSorted, setIdentityOverrideOn, setModelReader, setScriptModeOn, setSqlBuilder, setSqlCommentsOn, setStatementParameterValue, shutdownDatabase, shutdownDatabase, store, toColumnValues, update, update
Methods inherited from class edu.internet2.middleware.grouper.ext.org.apache.ddlutils.util.JdbcSupport
borrowConnection, closeStatement, getDataSource, getPassword, getUsername, returnConnection, setDataSource, setPassword, setUsername
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface edu.internet2.middleware.grouper.ext.org.apache.ddlutils.Platform
borrowConnection, getDataSource, getPassword, getUsername, returnConnection, setDataSource, setPassword, setUsername
-
Field Details
-
DATABASENAME
Database name of this platform.- See Also:
-
JDBC_DRIVER
The standard PostgreSQL jdbc driver.- See Also:
-
JDBC_SUBPROTOCOL
The subprotocol used by the standard PostgreSQL driver.- See Also:
-
-
Constructor Details
-
PostgreSqlPlatform
public PostgreSqlPlatform()Creates a new platform instance.
-
-
Method Details
-
getName
Returns the name of the database that this platform is for.- Returns:
- The name
-
createDatabase
public void createDatabase(String jdbcDriverClassName, String connectionUrl, String username, String password, Map parameters) throws DatabaseOperationException, UnsupportedOperationException Creates the database specified by the given parameters. Please note that this method does not use a data source set viaPlatform.setDataSource(DataSource)
because it is not possible to retrieve the connection information from it without establishing a connection.
The given connection url is the url that you'd use to connect to the already-created database.
On some platforms, this method suppurts additional parameters. These are documented in the manual section for the individual platforms.- Specified by:
createDatabase
in interfacePlatform
- Overrides:
createDatabase
in classPlatformImplBase
- Parameters:
jdbcDriverClassName
- The jdbc driver class nameconnectionUrl
- The url to connect to the database if it were already createdusername
- The username for creating the databasepassword
- The password for creating the databaseparameters
- Additional parameters relevant to database creation (which are platform specific)- Throws:
DatabaseOperationException
UnsupportedOperationException
-
dropDatabase
public void dropDatabase(String jdbcDriverClassName, String connectionUrl, String username, String password) throws DatabaseOperationException, UnsupportedOperationException Drops the database specified by the given parameters. Please note that this method does not use a data source set viaPlatform.setDataSource(DataSource)
because it is not possible to retrieve the connection information from it without establishing a connection.- Specified by:
dropDatabase
in interfacePlatform
- Overrides:
dropDatabase
in classPlatformImplBase
- Parameters:
jdbcDriverClassName
- The jdbc driver class nameconnectionUrl
- The url to connect to the databaseusername
- The username for creating the databasepassword
- The password for creating the database- Throws:
DatabaseOperationException
UnsupportedOperationException
-
setObject
protected void setObject(PreparedStatement statement, int sqlIndex, org.apache.commons.beanutils.DynaBean dynaBean, SqlDynaProperty property) throws SQLException Sets a parameter of the prepared statement based on the type of the column of the property.- Overrides:
setObject
in classPlatformImplBase
- Parameters:
statement
- The statementsqlIndex
- The index of the parameter to set in the statementdynaBean
- The bean of which to take the valueproperty
- The property of the bean, which also defines the corresponding column- Throws:
SQLException
-