[keycloak-dev] Provider's "disabled" and "enabled" flags

Stian Thorgersen sthorger at redhat.com
Wed Aug 28 06:51:17 EDT 2019


That's correct a provider won't be initialised if it's disabled so there's
no need for this in the provider itself.

One thing to not here is that providers that have an expensive init should
consider lazy init itself. We don't have support for that built in directly
so the providers need to do that themselves for now. Take a look at the jpa
connection factory for an example.

On Tue, 27 Aug 2019, 21:47 Stefan Guilhen, <sguilhen at redhat.com> wrote:

> Hi Sebastian,
>
> I agree with you here. The session factory is already checking the
> "enabled" property, so any provider factory checking the same property (or
> the "disabled' variant) seems redundant to me. So +1 to removing the checks
> from the provider factories.
>
> On Tue, Aug 27, 2019 at 9:37 AM Sebastian Laskawiec <slaskawi at redhat.com>
> wrote:
>
> > Hey,
> >
> > As Stefan noticed, some providers (including the one I created a few
> weeks
> > back) check "disabled" flag from the configuration [1][2]. Stefan pointed
> > out, that our Subsystem (and Keycloak internals) already check the
> > "enabled" flag [3] on the SPI level. If the SPI is disabled, it won't be
> > initialized at all, so all the disabled/enabled checks in
> > ProviderFactory#init seems to be redundant.
> >
> > If I didn't miss anything and you all agree with me, I'd like to remove
> > this kind of checks.
> >
> > Thanks,
> > Sebastian
> >
> > [1]
> >
> >
> https://github.com/keycloak/keycloak/blob/5f9feee3f86e3d856063c8b6d355e30c962258f7/services/src/main/java/org/keycloak/truststore/FileTruststoreProviderFactory.java#L66
> > [2]
> >
> >
> https://github.com/keycloak/keycloak/blob/3afbdd3ea3d8eb1ef339f2c0c46fb57783f4b79b/services/src/main/java/org/keycloak/vault/PlainTextVaultProviderFactory.java#L41
> > [3]
> >
> >
> https://github.com/keycloak/keycloak/blob/505cf5b25184c59ca85de63b082eb12383eba1ab/services/src/main/java/org/keycloak/services/DefaultKeycloakSessionFactory.java#L272
> > _______________________________________________
> > keycloak-dev mailing list
> > keycloak-dev at lists.jboss.org
> > https://lists.jboss.org/mailman/listinfo/keycloak-dev
> >
>
>
> --
>
> Stefan Guilhen
>
> Principal Software Engineer
>
> Red Hat <https://www.redhat.com/>
>
> sguilhen at redhat.com    IM: sguilhen
> @RedHat <https://twitter.com/redhat>   Red Hat
> <https://www.linkedin.com/company/red-hat>  Red Hat
> <https://www.facebook.com/RedHatInc>
> <https://www.redhat.com/>
> _______________________________________________
> keycloak-dev mailing list
> keycloak-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/keycloak-dev
>


More information about the keycloak-dev mailing list