Class LiquibaseDataInitializer
java.lang.Object
org.exoplatform.commons.persistence.impl.LiquibaseDataInitializer
- All Implemented Interfaces:
org.exoplatform.commons.api.persistence.DataInitializer,org.picocontainer.Startable
public class LiquibaseDataInitializer
extends Object
implements org.picocontainer.Startable, org.exoplatform.commons.api.persistence.DataInitializer
Startable service to initialize all the data with Liquibase. Changelog files
are added by external plugins.
-
Field Summary
Fields -
Constructor Summary
ConstructorsConstructorDescriptionLiquibaseDataInitializer(org.exoplatform.container.xml.InitParams initParams) LiquibaseDataInitializer(org.exoplatform.services.naming.InitialContextInitializer initialContextInitializer, org.exoplatform.container.xml.InitParams initParams) -
Method Summary
Modifier and TypeMethodDescriptionvoidaddChangeLogsPlugin(ChangeLogsPlugin changeLogsPlugin) Add a changelogs pluginprotected voidapplyChangeLog(DataSource datasource, String changelogsPath) Apply changelogs with Liquibaseprotected DataSourcegetDatasource(String datasourceName) Lookup for a datasource with the given namevoidinitData()Initialize the data with Liquibase with the default datasource.voidInitialize the data with Liquibase with the given datasource.voidsetContexts(String liquibaseContexts) voidsetDatasourceName(String datasourceName) voidstart()voidstop()
-
Field Details
-
LIQUIBASE_DATASOURCE_PARAM_NAME
- See Also:
-
LIQUIBASE_CONTEXTS_PARAM_NAME
- See Also:
-
LIQUIBASE_DEFAULT_CONTEXTS
- See Also:
-
-
Constructor Details
-
LiquibaseDataInitializer
public LiquibaseDataInitializer(org.exoplatform.services.naming.InitialContextInitializer initialContextInitializer, org.exoplatform.container.xml.InitParams initParams) -
LiquibaseDataInitializer
public LiquibaseDataInitializer(org.exoplatform.container.xml.InitParams initParams)
-
-
Method Details
-
getDatasourceName
-
setDatasourceName
-
getContexts
-
setContexts
-
addChangeLogsPlugin
Add a changelogs plugin- Parameters:
changeLogsPlugin- Changelogs plugin to add
-
start
public void start()- Specified by:
startin interfaceorg.picocontainer.Startable
-
stop
public void stop()- Specified by:
stopin interfaceorg.picocontainer.Startable
-
getDatasource
- Specified by:
getDatasourcein interfaceorg.exoplatform.commons.api.persistence.DataInitializer
-
initData
public void initData()Initialize the data with Liquibase with the default datasource.- Specified by:
initDatain interfaceorg.exoplatform.commons.api.persistence.DataInitializer
-
initData
Initialize the data with Liquibase with the given datasource. Iterates over all the changelogs injected by the change logs plugins and executes them.- Specified by:
initDatain interfaceorg.exoplatform.commons.api.persistence.DataInitializer
-
applyChangeLog
Apply changelogs with Liquibase- Parameters:
datasource-changelogsPath-
-
getDatasource
Lookup for a datasource with the given name- Parameters:
datasourceName- Name of the datasource to retrieve- Returns:
- The datasource with the given name
-