+1
On a slightly related note, I wonder if we can also improve our
ProviderEvents? Registering listener for the event, which usually looks
like:
@Override
public void postInit(KeycloakSessionFactory factory) {
factory.register(new ProviderEventListener() {
@Override
public void onEvent(ProviderEvent event) {
if (event instanceof RealmModel.ClientCreationEvent) {
RealmModel.ClientCreationEvent typedEvent =
(RealmModel.ClientCreationEvent) event;
doSomething(typedEvent);
}
}
});
}
can be simplified and prettyfied to something like:
@ProviderEventListener
public void doSomething(RealmModel.ClientCreationEvent typedEvent,
KeycloakSessionFactory factory) {
}
I think the impl will be pretty easy. At startup, framework will just
lookup for @ProviderEventListener annotated methods of registered
KeycloakSessionFactory implementations. It can also detect the event
type according to first argument of method and automatically register
the listener for it.
This will allow us to remove method "postInit" altogether as it's mostly
used just for registering event listeners though.
Marek
On 09/03/17 12:28, Stian Thorgersen wrote:
The life-cycle methods on providers and provider factories (init,
postInit,
close) are frequently not used, but providers have to add empty methods. To
reduce the amount of boilerplate in a provider I propose changing the
following to have empty default methods:
ProviderFactory:
* init
* postInit
* close
Provider:
* close
_______________________________________________
keycloak-dev mailing list
keycloak-dev(a)lists.jboss.org
https://lists.jboss.org/mailman/listinfo/keycloak-dev