Skip to content

Releases: Alex1304/rdi

RDI v1.1.3

06 Nov 20:27
Compare
Choose a tag to compare
  • Fix singleton re-attempting to instantiate the service when the first call to the factory method resulted in an exception
  • Upgrade dependencies to their latest patch version

RDI v1.1.2

20 May 21:57
Compare
Choose a tag to compare
  • Fix a bug that could cause the service instantiation to never complete in some very rare cases.
  • The @RdiService annotation now has an optional as parameter that allows to register the service as a supertype of it. For example if Circle implements Shape and the Circle class has @RdiService(as = Shape.class) on it, it would be possible to inject it in methods accepting a Shape as parameter. This feature was made possible with the addition of ServiceDescriptor.Builder#setConcreteType(Class) which allows to specify a subtype of the service class to instantiate when building a service descriptor.

RDI v1.1.1

10 Mar 18:30
Compare
Choose a tag to compare
  • 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

03 Nov 00:23
Compare
Choose a tag to compare

RDI v1.0.1

05 Aug 22:50
Compare
Choose a tag to compare
  • Fix circular dependency detection giving false positives in some cases
  • Properly throw an error if a reactive factory completes empty

RDI v1.0.0

29 Jul 23:31
Compare
Choose a tag to compare

This is the initial release for the RDI project.

Features

  • ServiceReference to define services by their classes or a unique name
  • ServiceDescriptor to define how to initialize a service and which dependencies to inject
  • RdiConfig 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 and rdi.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