All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.hibernate.tool.EnversSchemaGenerator Maven / Gradle / Ivy

There is a newer version: 7.0.0.Beta1
Show newest version
package org.hibernate.tool;

import java.sql.Connection;
import java.util.Properties;

import org.hibernate.HibernateException;
import org.hibernate.cfg.Configuration;
import org.hibernate.envers.configuration.AuditConfiguration;
import org.hibernate.service.ServiceRegistry;
import org.hibernate.tool.hbm2ddl.SchemaExport;

/**
 * @author Lukasz Antoniak (lukasz dot antoniak at gmail dot com)
 */
public class EnversSchemaGenerator {
    private final SchemaExport export;

    public EnversSchemaGenerator(ServiceRegistry serviceRegistry, Configuration configuration) {
        configuration = configureAuditing(configuration);
        export = new SchemaExport(serviceRegistry, configuration);
    }

    public EnversSchemaGenerator(Configuration configuration) {
        configuration = configureAuditing(configuration);
        export = new SchemaExport(configuration);
    }

    public EnversSchemaGenerator(Configuration configuration, Properties properties) throws HibernateException {
        configuration = configureAuditing(configuration);
        export = new SchemaExport(configuration, properties);
    }

    public EnversSchemaGenerator(Configuration configuration, Connection connection) throws HibernateException {
        configuration = configureAuditing(configuration);
        export = new SchemaExport(configuration, connection);
    }

    public SchemaExport export() {
        return export;
    }

    private Configuration configureAuditing(Configuration configuration) {
        configuration.buildMappings();
		AuditConfiguration.getFor(configuration);
        return configuration;
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy