org.nuiton.topia.migration
Class MigrationServiceImpl

java.lang.Object
  extended by org.nuiton.topia.migration.MigrationServiceImpl
All Implemented Interfaces:
MigrationService
Direct Known Subclasses:
TopiaMigrationServiceImpl

public class MigrationServiceImpl
extends java.lang.Object
implements MigrationService

MigrationServiceImpl.java Classe principale du projet.

Version:
$Revision: 1459 $ Last update : $Date: 2009-05-16 09:56:47 +0200 (Sat, 16 May 2009) $
Author:
Chatellier Eric, Chevallereau Benjamin, Eon S�bastien, Tr�ve Vincent

Field Summary
protected  org.hibernate.cfg.Configuration currentApplicationConfiguration
          Configuration hibernate courante utilisee par l'application
protected  org.nuiton.util.Version currentApplicationVersion
          Version courante de l'application
protected  java.lang.String currentHibernateConfigurationFile
          Nom courant du fichier de configuration.
protected  java.lang.String mappingsDirectory
          Chemin du dossier contenant les schema de touts les versions
protected  java.util.List<MigrationCallbackHandler> migrationCallBackHandlers
          CallbackHandler list
 
Constructor Summary
MigrationServiceImpl()
          Constructeur vide.
 
Method Summary
 void addMigrationCallbackHandler(MigrationCallbackHandler callbackHandler)
          Ajoute un callbackhandler pour la migration
protected  MigrationCallbackHandler.MigrationChoice askHandlerForMigration(DatabaseManager dbManager, java.lang.String databaseVersion, java.lang.String applicationVersion)
          Ask handler for migration.
protected  void checkInformation()
          Verifie si les information indispensable à la migration ont été renseignee.
 org.hibernate.cfg.Configuration getConfiguration()
          Retourne la configuration
 java.lang.String getConfigurationFile()
          Renvoie le chemin du ficier de configuration utilise
 java.lang.String getMappingsDirectory()
          Retourne le repertoire des anciens schemas
protected  org.hibernate.cfg.Configuration getSingleConfiguration(org.nuiton.util.Version version)
          Recupere une configuration sur disque pour une version.
protected  void loadApplicationConfiguration()
          Charge la configuration locale si elle n'est pas deja ete fournit
protected  java.util.Map<org.nuiton.util.Version,org.hibernate.cfg.Configuration> loadIntermediateConfigurations(org.nuiton.util.Version vdbVersion)
          Charge les configurations de version a partir de vdbVersion "non compris" jusqu'a currentApplicationVersion "non compris"
 boolean migrateSchema()
          Migrate the schema
protected  void putVersionInDatabase(java.util.Properties properties, org.nuiton.util.Version version, boolean createTable)
          Put version in database Single method because, version can be created alone...
 void setApplicationVersion(java.lang.String version)
          Change la version courante
 void setConfiguration(org.hibernate.cfg.Configuration configuration)
          Renseigne la configuration
 void setConfigurationFile(java.lang.String hibernateConfigurationFile)
          Modifie le fichier de configuration
 void setMappingsDirectory(java.lang.String mappingsDirectory)
          Modifie le chemin du dossier des anciens schemas
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

currentHibernateConfigurationFile

protected java.lang.String currentHibernateConfigurationFile
Nom courant du fichier de configuration.


currentApplicationConfiguration

protected org.hibernate.cfg.Configuration currentApplicationConfiguration
Configuration hibernate courante utilisee par l'application


mappingsDirectory

protected java.lang.String mappingsDirectory
Chemin du dossier contenant les schema de touts les versions


currentApplicationVersion

protected org.nuiton.util.Version currentApplicationVersion
Version courante de l'application


migrationCallBackHandlers

protected java.util.List<MigrationCallbackHandler> migrationCallBackHandlers
CallbackHandler list

Constructor Detail

MigrationServiceImpl

public MigrationServiceImpl()
Constructeur vide.

Method Detail

getConfigurationFile

public java.lang.String getConfigurationFile()
Description copied from interface: MigrationService
Renvoie le chemin du ficier de configuration utilise

Specified by:
getConfigurationFile in interface MigrationService
Returns:
Chemin du fichier de configuration

setConfigurationFile

public void setConfigurationFile(java.lang.String hibernateConfigurationFile)
Description copied from interface: MigrationService
Modifie le fichier de configuration

Specified by:
setConfigurationFile in interface MigrationService
Parameters:
hibernateConfigurationFile - Chemin du fichier de configuration d'hibernate

getConfiguration

public org.hibernate.cfg.Configuration getConfiguration()
Description copied from interface: MigrationService
Retourne la configuration

Specified by:
getConfiguration in interface MigrationService
Returns:
la configuration
See Also:
Configuration

setConfiguration

public void setConfiguration(org.hibernate.cfg.Configuration configuration)
Description copied from interface: MigrationService
Renseigne la configuration

Specified by:
setConfiguration in interface MigrationService
Parameters:
configuration - la configuration
See Also:
Configuration

getMappingsDirectory

public java.lang.String getMappingsDirectory()
Description copied from interface: MigrationService
Retourne le repertoire des anciens schemas

Specified by:
getMappingsDirectory in interface MigrationService
Returns:
Le repertoire des anciens schemas

setMappingsDirectory

public void setMappingsDirectory(java.lang.String mappingsDirectory)
Description copied from interface: MigrationService
Modifie le chemin du dossier des anciens schemas

Specified by:
setMappingsDirectory in interface MigrationService
Parameters:
mappingsDirectory - Le chemin du dossier des anciens schemas

setApplicationVersion

public void setApplicationVersion(java.lang.String version)
Description copied from interface: MigrationService
Change la version courante

Specified by:
setApplicationVersion in interface MigrationService
Parameters:
version - la version

addMigrationCallbackHandler

public void addMigrationCallbackHandler(MigrationCallbackHandler callbackHandler)
Description copied from interface: MigrationService
Ajoute un callbackhandler pour la migration

Specified by:
addMigrationCallbackHandler in interface MigrationService
Parameters:
callbackHandler - le controleur a ajouter

loadApplicationConfiguration

protected void loadApplicationConfiguration()
Charge la configuration locale si elle n'est pas deja ete fournit


checkInformation

protected void checkInformation()
                         throws MigrationServiceException
Verifie si les information indispensable à la migration ont été renseignee.

Throws:
MigrationServiceException

migrateSchema

public boolean migrateSchema()
                      throws MigrationServiceException
Description copied from interface: MigrationService
Migrate the schema

Specified by:
migrateSchema in interface MigrationService
Returns:
true si la migration a ete effectuee et s'est bien passee, false sinon
Throws:
MigrationServiceException - dans le cas ou le schema ne peut pas etre mis a jour

putVersionInDatabase

protected void putVersionInDatabase(java.util.Properties properties,
                                    org.nuiton.util.Version version,
                                    boolean createTable)
Put version in database Single method because, version can be created alone...

Parameters:
properties - proprietes de connexion
version - version
createTable -

askHandlerForMigration

protected MigrationCallbackHandler.MigrationChoice askHandlerForMigration(DatabaseManager dbManager,
                                                                          java.lang.String databaseVersion,
                                                                          java.lang.String applicationVersion)
Ask handler for migration. Return true if all handler return true, or if there is no handler

Parameters:
dbManager -
databaseVersion -
applicationVersion -
Returns:
true or false

loadIntermediateConfigurations

protected java.util.Map<org.nuiton.util.Version,org.hibernate.cfg.Configuration> loadIntermediateConfigurations(org.nuiton.util.Version vdbVersion)
Charge les configurations de version a partir de vdbVersion "non compris" jusqu'a currentApplicationVersion "non compris"

Parameters:
vdbVersion - la version de depart
Returns:

getSingleConfiguration

protected org.hibernate.cfg.Configuration getSingleConfiguration(org.nuiton.util.Version version)
Recupere une configuration sur disque pour une version.

Parameters:
version - version
Returns:
une configuration hibernate


Copyright © 2004-2010 CodeLutin. All Rights Reserved.