use of org.qi4j.library.sql.assembly.DataSourceAssembler in project qi4j-sdk by Qi4j.
the class DerbySQLEntityStorePerformanceTest method createAssembler.
private static Assembler createAssembler() {
return new Assembler() {
@Override
public void assemble(ModuleAssembly module) throws AssemblyException {
ModuleAssembly config = module.layer().module("config");
new EntityTestAssembler().assemble(config);
new OrgJsonValueSerializationAssembler().assemble(module);
// DataSourceService
new DBCPDataSourceServiceAssembler().identifiedBy("derby-datasource-service").visibleIn(Visibility.module).withConfig(config, Visibility.layer).assemble(module);
// DataSource
new DataSourceAssembler().withDataSourceServiceIdentity("derby-datasource-service").identifiedBy("derby-datasource").withCircuitBreaker().assemble(module);
// SQL EntityStore
new DerbySQLEntityStoreAssembler().withConfig(config, Visibility.layer).assemble(module);
}
};
}
use of org.qi4j.library.sql.assembly.DataSourceAssembler in project qi4j-sdk by Qi4j.
the class PostgreSQLEntityStoreTest method assemble.
@Override
public // START SNIPPET: assembly
void assemble(ModuleAssembly module) throws AssemblyException {
// END SNIPPET: assembly
super.assemble(module);
ModuleAssembly config = module.layer().module("config");
new EntityTestAssembler().assemble(config);
new OrgJsonValueSerializationAssembler().assemble(module);
// START SNIPPET: assembly
// DataSourceService
new DBCPDataSourceServiceAssembler().identifiedBy("postgresql-datasource-service").visibleIn(Visibility.module).withConfig(config, Visibility.layer).assemble(module);
// DataSource
new DataSourceAssembler().withDataSourceServiceIdentity("postgresql-datasource-service").identifiedBy("postgresql-datasource").visibleIn(Visibility.module).withCircuitBreaker().assemble(module);
// SQL EntityStore
new PostgreSQLEntityStoreAssembler().visibleIn(Visibility.application).withConfig(config, Visibility.layer).assemble(module);
}
use of org.qi4j.library.sql.assembly.DataSourceAssembler in project qi4j-sdk by Qi4j.
the class MySQLEntityStoreTest method assemble.
@Override
public // START SNIPPET: assembly
void assemble(ModuleAssembly module) throws AssemblyException {
// END SNIPPET: assembly
super.assemble(module);
ModuleAssembly config = module.layer().module("config");
new EntityTestAssembler().assemble(config);
new OrgJsonValueSerializationAssembler().assemble(module);
// START SNIPPET: assembly
// DataSourceService
new DBCPDataSourceServiceAssembler().identifiedBy("mysql-datasource-service").visibleIn(Visibility.module).withConfig(config, Visibility.layer).assemble(module);
// DataSource
new DataSourceAssembler().withDataSourceServiceIdentity("mysql-datasource-service").identifiedBy("mysql-datasource").visibleIn(Visibility.module).withCircuitBreaker().assemble(module);
// SQL EntityStore
new MySQLEntityStoreAssembler().visibleIn(Visibility.application).withConfig(config, Visibility.layer).assemble(module);
}
use of org.qi4j.library.sql.assembly.DataSourceAssembler in project qi4j-sdk by Qi4j.
the class DataSourceConfigurationManagerServiceTest method testDataSources.
@Test
public void testDataSources() throws ActivationException, AssemblyException {
SingletonAssembler assembler = new SingletonAssembler() {
@Override
public void assemble(ModuleAssembly module) throws AssemblyException {
new JMXAssembler().assemble(module);
// Create in-memory store for configurations
new EntityTestAssembler().visibleIn(Visibility.layer).assemble(module);
// Set up DataSource service that will manage the connection pools
new C3P0DataSourceServiceAssembler().identifiedBy("datasource-service").visibleIn(Visibility.layer).assemble(module);
{
ModuleAssembly testModule = module.layer().module("TestDS");
// Create a specific DataSource that uses the "datasource" service to do the main work
new DataSourceAssembler().withDataSourceServiceIdentity("datasource-service").identifiedBy("testds").visibleIn(Visibility.module).withCircuitBreaker(DataSources.newDataSourceCircuitBreaker()).assemble(testModule);
// Set up Liquibase service that will create the tables
testModule.services(LiquibaseService.class).identifiedBy("liquibase1").instantiateOnStartup();
testModule.entities(LiquibaseConfiguration.class);
testModule.forMixin(LiquibaseConfiguration.class).declareDefaults().enabled().set(true);
testModule.forMixin(LiquibaseConfiguration.class).declareDefaults().changeLog().set("changelog.xml");
}
{
ModuleAssembly testModule2 = module.layer().module("TestDS2");
// Create another specific DataSource that uses the "datasource" service to do the main work
// Use DataSourceAssembler to assemble the DataSource.
new DataSourceAssembler().withDataSourceServiceIdentity("datasource-service").identifiedBy("testds2").visibleIn(Visibility.module).withCircuitBreaker(DataSources.newDataSourceCircuitBreaker()).assemble(testModule2);
// Set up Liquibase service that will create the tables
testModule2.services(LiquibaseService.class).identifiedBy("liquibase2").instantiateOnStartup();
testModule2.entities(LiquibaseConfiguration.class);
testModule2.forMixin(LiquibaseConfiguration.class).declareDefaults().enabled().set(true);
testModule2.forMixin(LiquibaseConfiguration.class).declareDefaults().changeLog().set("changelog.xml");
}
// START SNIPPET: jmx
new DataSourceJMXAssembler().visibleIn(Visibility.module).assemble(module);
// END SNIPPET: jmx
}
};
// assembler.application().findModule( "Layer 1","Test" ).objectBuilderFactory().newObjectBuilder( DataSourceConfigurationManagerServiceTest.class ).injectTo( this );
}
use of org.qi4j.library.sql.assembly.DataSourceAssembler in project qi4j-sdk by Qi4j.
the class PostgreSQLEntityStorePerformanceTest method createAssembler.
private static Assembler createAssembler() {
return new Assembler() {
@Override
public void assemble(ModuleAssembly module) throws AssemblyException {
ModuleAssembly config = module.layer().module("config");
config.services(MemoryEntityStoreService.class);
// DataSourceService
new DBCPDataSourceServiceAssembler().identifiedBy("postgresql-datasource-service").visibleIn(Visibility.module).withConfig(config, Visibility.layer).assemble(module);
// DataSource
new DataSourceAssembler().withDataSourceServiceIdentity("postgresql-datasource-service").identifiedBy("postgresql-datasource").withCircuitBreaker().assemble(module);
// SQL EntityStore
new PostgreSQLEntityStoreAssembler().withConfig(config, Visibility.layer).assemble(module);
}
};
}
Aggregations