Search in sources :

Example 11 with Module

use of org.qi4j.api.structure.Module in project qi4j-sdk by Qi4j.

the class TypeToCompositeLookupTest method objectsAmbiguousDeclaration.

@Test
public void objectsAmbiguousDeclaration() throws ActivationException, AssemblyException {
    Module module = new SingletonAssembler() {

        @Override
        public void assemble(ModuleAssembly module) throws AssemblyException {
            module.objects(SomeOtherFooImpl.class, BasicFooImpl.class);
        }
    }.module();
    assertEquals(CATHEDRAL, module.newObject(SomeOtherFooImpl.class).bar());
    assertEquals(BAZAR, module.newObject(BasicFooImpl.class).bar());
    try {
        module.newObject(Foo.class);
        fail("Ambiguous type exception not detected for Objects");
    } catch (AmbiguousTypeException expected) {
    }
}
Also used : ModuleAssembly(org.qi4j.bootstrap.ModuleAssembly) AssemblyException(org.qi4j.bootstrap.AssemblyException) SingletonAssembler(org.qi4j.bootstrap.SingletonAssembler) Module(org.qi4j.api.structure.Module) AmbiguousTypeException(org.qi4j.api.composite.AmbiguousTypeException) Test(org.junit.Test)

Example 12 with Module

use of org.qi4j.api.structure.Module in project qi4j-sdk by Qi4j.

the class TypeToCompositeLookupTest method objects.

@Test
public void objects() throws ActivationException, AssemblyException {
    Module module = new SingletonAssembler() {

        @Override
        public void assemble(ModuleAssembly module) throws AssemblyException {
            module.objects(SomeOtherFooImpl.class);
        }
    }.module();
    assertEquals(CATHEDRAL, module.newObject(SomeOtherFooImpl.class).bar());
    assertEquals(CATHEDRAL, module.newObject(BasicFooImpl.class).bar());
    assertEquals(CATHEDRAL, module.newObject(Foo.class).bar());
}
Also used : ModuleAssembly(org.qi4j.bootstrap.ModuleAssembly) AssemblyException(org.qi4j.bootstrap.AssemblyException) SingletonAssembler(org.qi4j.bootstrap.SingletonAssembler) Module(org.qi4j.api.structure.Module) Test(org.junit.Test)

Example 13 with Module

use of org.qi4j.api.structure.Module in project qi4j-sdk by Qi4j.

the class TypeToCompositeLookupTest method services.

@Test
public void services() throws ActivationException, AssemblyException {
    Module module = new SingletonAssembler() {

        @Override
        public void assemble(ModuleAssembly module) throws AssemblyException {
            module.services(SomeOtherFoo.class);
        }
    }.module();
    assertEquals(CATHEDRAL, module.findService(SomeOtherFoo.class).get().bar());
    assertEquals(CATHEDRAL, module.findService(BasicFoo.class).get().bar());
    assertEquals(CATHEDRAL, module.findService(Foo.class).get().bar());
}
Also used : ModuleAssembly(org.qi4j.bootstrap.ModuleAssembly) AssemblyException(org.qi4j.bootstrap.AssemblyException) SingletonAssembler(org.qi4j.bootstrap.SingletonAssembler) Module(org.qi4j.api.structure.Module) Test(org.junit.Test)

Example 14 with Module

use of org.qi4j.api.structure.Module in project qi4j-sdk by Qi4j.

the class TypeToCompositeLookupTest method values.

@Test
public void values() throws ActivationException, AssemblyException {
    Module module = new SingletonAssembler() {

        @Override
        public void assemble(ModuleAssembly module) throws AssemblyException {
            module.values(SomeOtherFoo.class);
        }
    }.module();
    assertEquals(CATHEDRAL, module.newValueBuilder(SomeOtherFoo.class).newInstance().bar());
    assertEquals(CATHEDRAL, module.newValueBuilder(BasicFoo.class).newInstance().bar());
    assertEquals(CATHEDRAL, module.newValueBuilder(Foo.class).newInstance().bar());
}
Also used : ModuleAssembly(org.qi4j.bootstrap.ModuleAssembly) AssemblyException(org.qi4j.bootstrap.AssemblyException) SingletonAssembler(org.qi4j.bootstrap.SingletonAssembler) Module(org.qi4j.api.structure.Module) Test(org.junit.Test)

Example 15 with Module

use of org.qi4j.api.structure.Module in project qi4j-sdk by Qi4j.

the class ModuleTest method givenFixture1WhenGetModuleForCompositeThenCorrectModuleIsReturned.

@Test
public void givenFixture1WhenGetModuleForCompositeThenCorrectModuleIsReturned() throws AssemblyException {
    Application app = givenFixture1();
    Module module = app.findModule("Layer 1", "Module 1").newTransient(TestComposite1.class).getModule();
    assertThat("module for composite is correct", module, equalTo(module));
}
Also used : Module(org.qi4j.api.structure.Module) Application(org.qi4j.api.structure.Application) Test(org.junit.Test)

Aggregations

Module (org.qi4j.api.structure.Module)41 Test (org.junit.Test)28 ModuleAssembly (org.qi4j.bootstrap.ModuleAssembly)18 Application (org.qi4j.api.structure.Application)17 AssemblyException (org.qi4j.bootstrap.AssemblyException)16 SingletonAssembler (org.qi4j.bootstrap.SingletonAssembler)15 ArrayList (java.util.ArrayList)6 Energy4Java (org.qi4j.bootstrap.Energy4Java)6 UnitOfWork (org.qi4j.api.unitofwork.UnitOfWork)5 UnitOfWorkFactory (org.qi4j.api.unitofwork.UnitOfWorkFactory)5 AmbiguousTypeException (org.qi4j.api.composite.AmbiguousTypeException)4 EntityDescriptor (org.qi4j.api.entity.EntityDescriptor)4 EntityTypeNotFoundException (org.qi4j.api.unitofwork.EntityTypeNotFoundException)4 Assembler (org.qi4j.bootstrap.Assembler)4 HashMap (java.util.HashMap)3 List (java.util.List)3 JSONException (org.json.JSONException)3 JSONObject (org.json.JSONObject)3 JSONTokener (org.json.JSONTokener)3 AssociationDescriptor (org.qi4j.api.association.AssociationDescriptor)3