The following features are a TODO list of things to do on Particle before launching
Right now we have to do this every time a dependency is optional for a constructor
class Foo {
Foo(Optional<Bar> bar) {
...
}
}
Would be nice to also allow @Nullable:
class Foo {
Foo(@Nullable Bar bar) {
...
}
}
This is currently not possible due to type erasure:
@Factory
class TypeConverterFactory {
TypeConverter<String, Integer> typeConverter() {
(string, integer, context) -> {
// do conversion
}
}
}
At compile time we know the types but at runtime the lambda loses type information. We need to add an API to obtain type information for a bean from the factory.
-
We need to allow
Introduction
advise to specify additional interfaces that should be be implemented by the interceptor. -
Allow adding interfaces to non-abstract classes via introduction advise
An HTTP gateway that loads on port 8080 and uses the aforementioned HTTP client. The gateway need to be responsible for:
-
JWT Token based authentication
-
Load Balancing
-
Starting Distributed Tracing
-
Retry
-
Rate limiting
-
Route matching on HTTP Request (Path, Method, Header, Host, etc…)
-
Filters to modify downstream HTTP Request and HTTP Response (Add/Remove Headers, Add/Remove Parameters, Rewrite Path etc…)