Clone Tools
  • last updated a few minutes ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
ERRAI-590, ERRAI-850, ERRAI-851: Implement new IOC container (more description below).

The new container uses code genererated in multiple files instead

of a single monolithic file. At compile time an implementation of

org.jboss.errai.ioc.client.container.Factory is generated for each bean.

The factory is responsible for requesting dependencies from other

factories to wire the bean, running code generated by decorators,

and cleaning up when the bean is destroyed.

The GWT.create calls for the factories are generated in the

BootstrapperImpl. The BootstrapperImpl now only registers

factories with their respective contexts.

This container has the following differences from behaviour

in the 3.x version of errai-ioc:

* Normal scoped beans must be proxiable.

* The @New qualifier is not supported.

* Normal scoped beans (except @Entrypoint or with @Startup) are lazily instatiated.

* @Alternative beans must be explicitly enabled (even if no other beans match).

* Resolution of types behaves like CDI. Some cases that worked in 3.x may now be ambiguous.

** Injecting a common supertype of multiple concrete classes is ambiguous.

* Different API for programmtically adding beans to bean manager.

    • -9
    • +9
    ./tests/client/LocalServiceIntegrationTest.java
    • -13
    • +16
    ./tests/client/SenderIntegrationTest.java
  1. … 379 more files in changeset.
Moved all test base classes to src/test/java

- This makes sure applications can compile in strict

mode without inheriting the JUnit GWT module

- To use our test base classes for application tests

the corresponding test-jar has to be included i.e.

<dependency>

<groupId>org.jboss.errai</groupId>

<artifactId>errai-cdi-client</artifactId>

<type>test-jar</type>

<scope>test</scope>

</dependency>

Conflicts:

errai-bom/pom.xml

errai-cdi/weld-integration/pom.xml

errai-ioc/pom.xml

  1. … 35 more files in changeset.
Moved all test base classes to src/test/java

- This makes sure applications can compile in strict

mode without inheriting the JUnit GWT module

- To use our test base classes for application tests

the corresponding test-jar has to be included i.e.

<dependency>

<groupId>org.jboss.errai</groupId>

<artifactId>errai-cdi-client</artifactId>

<type>test-jar</type>

<scope>test</scope>

</dependency>

  1. … 35 more files in changeset.
Fixed LocalServiceIntegrationTests

- not dependend on execution order anymore

- also now correctly checking if server message made it through to local service

    • -9
    • +17
    ./tests/client/LocalServiceIntegrationTest.java
    • -1
    • +0
    ./tests/server/LocalTestTesterService.java
Fixed tests in errai-ioc-bus-support

    • -0
    • +14
    ./tests/client/BatchCallerIntegrationTest.java
    • -9
    • +9
    ./tests/client/res/ExceptionHandlingBean.java
Implemented ERRAI-538: Global error handling to catch uncaught exceptions in ErraiBus

    • -0
    • +88
    ./tests/client/UncaughtExceptionHandlingIntegrationTest.java
    • -0
    • +63
    ./tests/client/res/ExceptionHandlingBean.java
    • -0
    • +24
    ./tests/client/res/ExceptionService.java
    • -0
    • +26
    ./tests/client/res/TestException.java
    • -0
    • +31
    ./tests/server/ExceptionServiceImpl.java
  1. … 4 more files in changeset.
Fixed ERRAI-617: Dynamically looking up beans in @AfterInitialization methods causes a concurrent modification exception

    • -0
    • +50
    ./tests/client/AfterInitLookupTest.java
    • -0
    • +44
    ./tests/client/res/AfterInitLookupBean.java
    • -0
    • +27
    ./tests/client/res/FirstAfterInitBean.java
    • -0
    • +20
    ./tests/client/res/SecondAfterInitBean.java
  1. … 3 more files in changeset.
- Massive refactoring to bus API - @Disposes methods now work properly with the async bean manager.

    • -2
    • +2
    ./tests/client/LocalServiceIntegrationTest.java
    • -2
    • +2
    ./tests/client/SenderIntegrationTest.java
    • -1
    • +1
    ./tests/client/res/SimpleSuperBean.java
    • -3
    • +2
    ./tests/server/LocalTestTesterService.java
  1. … 238 more files in changeset.
- first stab at refactoring the bus to move the transport implementations out of the main message bus code. (most tests passing)

  1. … 26 more files in changeset.
renamed endBatch to sendBatch for RPC batching

    • -11
    • +11
    ./tests/client/BatchCallerIntegrationTest.java
  1. … 2 more files in changeset.
Implemented ERRAI-293: Ability to batch/chain rpc service requests to server

    • -0
    • +174
    ./tests/client/BatchCallerIntegrationTest.java
    • -0
    • +27
    ./tests/client/res/RpcBatchService.java
    • -0
    • +40
    ./tests/server/RpcBatchServiceImpl.java
  1. … 11 more files in changeset.
ERRAI-430

Note: ClientMessageBusImpl *cannot* be directly injected anymore. As a concrete implementation that matches the type of the top-level provider, it is disabled by default.

  1. … 8 more files in changeset.
push changes

    • -3
    • +2
    ./tests/server/LocalTestTesterService.java
  1. … 11 more files in changeset.
Introduced new RestErrorCallback as a specialization of Errai's standard ErrorCallback, +minor refactorings

    • -2
    • +2
    ./tests/server/LocalTestTesterService.java
  1. … 17 more files in changeset.
all errai-ioc-bus-support tests passing

    • -17
    • +0
    ./tests/AbstractErraiIOCBusTest.java
    • -0
    • +42
    ./tests/client/LifecycleExtensionsTest.java
    • -6
    • +3
    ./tests/client/LocalServiceIntegrationTest.java
    • -8
    • +0
    ./tests/client/SenderIntegrationTest.java
    • -0
    • +1
    ./tests/server/LocalTestTesterService.java
  1. … 25 more files in changeset.
MAJOR REFACTORING! Lots of breaking API Changes.

- All bus-related stuff has been moved out of errai-ioc and into errai-ioc-bus-support (new module)

- Interfaces from errai-bus which are common to multiple modules but not exclusive to errai-bus, have been moved to errai-common

- A new cycle-breaking module has been added (errai-codegen-tools), which imports errai-common and errai-codegen, used for the ProxyUtil facility. This is required since errai-codegen depends on errai-common.

- CDI tests are known to be passing with the changes. But nothing else. Will begin testing tomorrow. =)

    • -0
    • +17
    ./tests/AbstractErraiIOCBusTest.java
    • -5
    • +6
    ./tests/client/SenderIntegrationTest.java
    • -0
    • +37
    ./tests/server/ListCapitializationService.java
  1. … 62 more files in changeset.
MAJOR REFACTORING! Lots of breaking API Changes.

- All bus-related stuff has been moved out of errai-ioc and into errai-ioc-bus-support (new module)

- Interfaces from errai-bus which are common to multiple modules but not exclusive to errai-bus, have been moved to errai-common

- A new cycle-breaking module has been added (errai-codegen-tools), which imports errai-common and errai-codegen, used for the ProxyUtil facility. This is required since errai-codegen depends on errai-common.

- CDI tests are known to be passing with the changes. But nothing else. Will begin testing tomorrow. =)

    • -0
    • +9
    ./tests/BusIOCSupportTests.gwt.xml
    • -0
    • +31
    ./tests/client/BusServiceInjectionsTest.java
    • -3
    • +3
    ./tests/client/LocalServiceIntegrationTest.java
    • -0
    • +102
    ./tests/client/res/SimpleBean.java
    • -0
    • +10
    ./tests/client/res/SimpleSuperBean.java
    • -0
    • +27
    ./tests/server/EmptyReplyService.java
    • -3
    • +4
    ./tests/server/LocalTestTesterService.java
  1. … 74 more files in changeset.