Package cz.metacentrum.perun.core.blImpl
Class DatabaseManagerBlImpl
java.lang.Object
cz.metacentrum.perun.core.blImpl.DatabaseManagerBlImpl
- All Implemented Interfaces:
 DatabaseManagerBl
Database manager can work with database version and upgraded state of perun DB.
- Author:
 - Michal Stava email:<stavamichal@gmail.com>
 
- 
Field Summary
FieldsFields inherited from interface cz.metacentrum.perun.core.bl.DatabaseManagerBl
NAME_OF_ORACLE_ARRAY_METHOD - 
Constructor Summary
Constructors - 
Method Summary
Modifier and TypeMethodDescriptionvoidcreateProperty(String property) Create new property in configurations.getChangelogVersions(String currentDBVersion, String fileName) Parses all new database versions from DB changelog file and creates from them list of DBVersion objects.Return current database version in string (ex. 3.0.1)Get DB driver information from datasource (name-version)Get DB information from datasource (name-version)Return JDBC template for performing custom simple SQLs where jdbc is not normally availablelongGet time in ns "nanoseconds" of calling 1 simple update query to DB.protected voidbooleanpropertyExists(String property) Return true if property already exists, false if not.voidupdateDatabaseVersion(List<DBVersion> dbVersions) Method updates database to the current code version. 
- 
Field Details
- 
POSTGRES_CHANGELOG
- See Also:
 
 
 - 
 - 
Constructor Details
- 
DatabaseManagerBlImpl
 
 - 
 - 
Method Details
- 
createProperty
Description copied from interface:DatabaseManagerBlCreate new property in configurations. Initial value will be "N/A".- Specified by:
 createPropertyin interfaceDatabaseManagerBl- Parameters:
 property- name of property to be created
 - 
getChangelogVersions
Description copied from interface:DatabaseManagerBlParses all new database versions from DB changelog file and creates from them list of DBVersion objects. The list contains all versions from currentDBVersion (without currentDBVersion itself) to now (the version at the top of the changelog file)- Specified by:
 getChangelogVersionsin interfaceDatabaseManagerBl- Parameters:
 currentDBVersion- current DB versionfileName- DB changelog file name, file should be in resources- Returns:
 - list of DBVersion objects ordered by version descending
 
 - 
getCurrentDatabaseVersion
Description copied from interface:DatabaseManagerBlReturn current database version in string (ex. 3.0.1)- Specified by:
 getCurrentDatabaseVersionin interfaceDatabaseManagerBl- Returns:
 - return current database version
 
 - 
getDatabaseDriverInformation
Description copied from interface:DatabaseManagerBlGet DB driver information from datasource (name-version)- Specified by:
 getDatabaseDriverInformationin interfaceDatabaseManagerBl- Returns:
 - string information about database driver
 
 - 
getDatabaseInformation
Description copied from interface:DatabaseManagerBlGet DB information from datasource (name-version)- Specified by:
 getDatabaseInformationin interfaceDatabaseManagerBl- Returns:
 - string information about database
 
 - 
getDatabaseManagerImpl
 - 
getJdbcPerunTemplate
Description copied from interface:DatabaseManagerBlReturn JDBC template for performing custom simple SQLs where jdbc is not normally available- Specified by:
 getJdbcPerunTemplatein interfaceDatabaseManagerBl- Returns:
 - Peruns JDBC template
 
 - 
getTimeOfQueryPerformance
public long getTimeOfQueryPerformance()Description copied from interface:DatabaseManagerBlGet time in ns "nanoseconds" of calling 1 simple update query to DB. This query will update property for this purpose in configurations table.- Specified by:
 getTimeOfQueryPerformancein interfaceDatabaseManagerBl- Returns:
 - time of processing query in nanoseconds
 
 - 
initialize
protected void initialize() - 
propertyExists
Description copied from interface:DatabaseManagerBlReturn true if property already exists, false if not.- Specified by:
 propertyExistsin interfaceDatabaseManagerBl- Parameters:
 property- name of property to check existence- Returns:
 - true if property exists, false if not
 
 - 
updateDatabaseVersion
Description copied from interface:DatabaseManagerBlMethod updates database to the current code version. It takes list of dbVersions and executes all the commands from them. Commands from the oldest (lowest) version are executed first.- Specified by:
 updateDatabaseVersionin interfaceDatabaseManagerBl- Parameters:
 dbVersions- list of dbVersion objects ordered by version descending, should not be empty
 
 -