Example usage for org.springframework.jdbc.datasource.embedded EmbeddedDatabaseFactory setDatabaseConfigurer

List of usage examples for org.springframework.jdbc.datasource.embedded EmbeddedDatabaseFactory setDatabaseConfigurer

Introduction

In this page you can find the example usage for org.springframework.jdbc.datasource.embedded EmbeddedDatabaseFactory setDatabaseConfigurer.

Prototype

public void setDatabaseConfigurer(EmbeddedDatabaseConfigurer configurer) 

Source Link

Document

Set the strategy that will be used to configure the embedded database instance.

Usage

From source file:sf.wicklet.gwt.site.server.db.H2Configurator.java

/** @param dbpath Absolute path relative to web application context root. */
public static EmbeddedDatabase createDatabase(final String dbpath, final String... initscripts)
        throws ClassNotFoundException {
    final EmbeddedDatabaseFactory f = new EmbeddedDatabaseFactory();
    final ResourceDatabasePopulator p = new ResourceDatabasePopulator();
    final ResourceLoader l = new DefaultResourceLoader();
    final IWickletSupport support = Config.get().getSupport();
    final File dbfile = support.getContextFile(dbpath + ".h2.db");
    if (!dbfile.exists()) {
        for (final String s : initscripts) {
            p.addScript(l.getResource("file:" + support.getContextFile(s).getAbsolutePath()));
        }//  w w w  .  j  av a  2 s .  c o  m
    }
    f.setDatabasePopulator(p);
    f.setDatabaseConfigurer(H2Configurator.getInstance(support.getContextFile(dbpath).getAbsolutePath()));
    // Database name is actually a don't care.
    f.setDatabaseName(TextUtil.fileName(dbpath));
    return f.getDatabase();
}

From source file:com.gopivotal.cloudfoundry.test.core.DataSourceUtilsTest.java

@Test
public void embeddedDataSourceUrl() {
    BoneCPDataSource targetDataSource = new BoneCPDataSource();
    targetDataSource.setJdbcUrl(TEST_URL);
    DataSourceFactory dataSourceFactory = mock(DataSourceFactory.class);
    when(dataSourceFactory.getDataSource()).thenReturn(targetDataSource);

    EmbeddedDatabaseFactory embeddedDatabaseFactory = new EmbeddedDatabaseFactory();
    embeddedDatabaseFactory.setDataSourceFactory(dataSourceFactory);
    embeddedDatabaseFactory.setDatabaseConfigurer(mock(EmbeddedDatabaseConfigurer.class));
    EmbeddedDatabase dataSource = embeddedDatabaseFactory.getDatabase();
    assertEquals(TEST_URL, this.dataSourceUtils.getUrl(dataSource));
}

From source file:sf.wicklet.site.gwt.test.db.TestSpringJDBCH201.java

protected EmbeddedDatabase createDatabase(final File dbfile, final String dbpath)
        throws ClassNotFoundException {
    final EmbeddedDatabaseFactory f = new EmbeddedDatabaseFactory();
    final ResourceDatabasePopulator p = new ResourceDatabasePopulator();
    final ResourceLoader l = new DefaultResourceLoader();
    if (!dbfile.exists()) {
        final String classname = getClass().getName().replace('.', '/');
        p.addScript(l.getResource(String.format("classpath:/%s-schema.sql", classname)));
        p.addScript(l.getResource(String.format("classpath:/%s-init.sql", classname)));
    }/*from w w w  .  j  a v a2s  .  c  o m*/
    f.setDatabasePopulator(p);
    f.setDatabaseConfigurer(sf.wicklet.gwt.site.server.db.H2Configurator.getInstance(dbpath));
    // Database name now a dont' care.
    //        f.setDatabaseName("db01");
    return f.getDatabase();
}

From source file:org.teiid.spring.autoconfigure.TeiidAutoConfiguration.java

@Bean(name = "dataSource")
@Primary/*from   www .  jav  a  2  s. c  o m*/
@ConfigurationProperties(prefix = "spring.datasource")
public DataSource getDataSource(TeiidServer server, VDBMetaData vdb) {
    EmbeddedDatabaseFactory edf = new EmbeddedDatabaseFactory();
    edf.setDatabaseConfigurer(new TeiidDatabaseConfigurer(server));
    edf.setDataSourceFactory(new DataSourceFactory() {
        @Override
        public DataSource getDataSource() {
            String url = context.getEnvironment().getProperty("spring.datasource.teiid.url");
            return new SimpleDriverDataSource(new TeiidSpringDriver(server.getDriver(), server, vdb), url);
        }

        @Override
        public ConnectionProperties getConnectionProperties() {
            return new ConnectionProperties() {
                @Override
                public void setDriverClass(Class<? extends Driver> driverClass) {
                }

                @Override
                public void setUrl(String url) {
                }

                @Override
                public void setUsername(String username) {
                }

                @Override
                public void setPassword(String password) {
                }
            };
        }
    });
    return edf.getDatabase();
}