Class CDILiquibase
java.lang.Object
liquibase.integration.jakarta.cdi.CDILiquibase
- All Implemented Interfaces:
 jakarta.enterprise.inject.spi.Extension
@ApplicationScoped
public class CDILiquibase
extends Object
implements jakarta.enterprise.inject.spi.Extension
A CDI wrapper for Liquibase.
 
 Example Configuration:
 
 This CDI configuration example will cause liquibase to run
 automatically when the CDI container is initialized. It will load
 db-changelog.xml from the classpath and apply it against
 myDataSource.
 
 @Dependent
 public class CDILiquibaseProducer {
   @Produces @LiquibaseType
   public CDILiquibaseConfig createConfig() {
      CDILiquibaseConfig config = new CDILiquibaseConfig();
      config.setChangeLog("liquibase/parser/core/xml/simpleChangeLog.xml");
      return config;
   }
   @Produces @LiquibaseType
   public DataSource createDataSource() throws SQLException {
      jdbcDataSource ds = new jdbcDataSource();
      ds.setDatabase("jdbc:hsqldb:mem:test");
      ds.setUser("sa");
      ds.setPassword("");
      return ds;
   }
   @Produces @LiquibaseType
   public ResourceAccessor createResourceAccessor() {
      return new ClassLoaderResourceAccessor(getClass().getClassLoader());
   }
 }
- 
Field Summary
Fields - 
Constructor Summary
Constructors - 
Method Summary
 
- 
Field Details
- 
config
 
 - 
 - 
Constructor Details
- 
CDILiquibase
public CDILiquibase() 
 - 
 - 
Method Details
- 
isInitialized
public boolean isInitialized() - 
isUpdateSuccessful
public boolean isUpdateSuccessful() - 
onStartup
@PostConstruct public void onStartup() - 
performUpdate
- Throws:
 LiquibaseException
 - 
createLiquibase
- Throws:
 LiquibaseException
 - 
createDatabase
Subclasses may override this method add change some database settings such as default schema before returning the database object.- Parameters:
 c-- Returns:
 - a Database implementation retrieved from the 
DatabaseFactory. - Throws:
 DatabaseException
 
 -