Releases: Alex1304/rdi
Releases · Alex1304/rdi
RDI v1.1.3
RDI v1.1.2
- Fix a bug that could cause the service instantiation to never complete in some very rare cases.
- The
@RdiService
annotation now has an optionalas
parameter that allows to register the service as a supertype of it. For example ifCircle
implementsShape
and theCircle
class has@RdiService(as = Shape.class)
on it, it would be possible to inject it in methods accepting aShape
as parameter. This feature was made possible with the addition ofServiceDescriptor.Builder#setConcreteType(Class)
which allows to specify a subtype of the service class to instantiate when building a service descriptor.
RDI v1.1.1
- Bumps Reactor version to 3.4.3
- Fixes a bug when performing reflection on a static factory method annotated with
@RdiFactory
RDI v1.1.0
- Bumps Reactor version to 3.4.0
- Introduces a new annotation-based approach for container configuration, documentation can be found at https://alex1304.github.io/rdi/docs/next/annotation-based-configuration
RDI v1.0.1
- Fix circular dependency detection giving false positives in some cases
- Properly throw an error if a reactive factory completes empty
RDI v1.0.0
This is the initial release for the RDI project.
Features
ServiceReference
to define services by their classes or a unique nameServiceDescriptor
to define how to initialize a service and which dependencies to injectRdiConfig
to collect all service descriptors to include in the container- The interface
RdiServiceContainer
to represent the container, a default implementation is built in that is able to perform the dependency injection in a reactive and thread-safe way - Configure logging to see what's going on at DEBUG level (
rdi.resolver.assembly
andrdi.resolver.subscription
logger names) - Documentation website made with Docusaurus, available at https://alex1304.github.io/rdi/docs/intro
Dependencies
Only one, Reactor Core v3.3.8