Interface AmphibianProviderFactory<ProviderType extends Provider>

  • All Superinterfaces:
    ComponentFactory<ProviderType,​ProviderType>, ConfiguredProvider, ProviderFactory<ProviderType>

    public interface AmphibianProviderFactory<ProviderType extends Provider>
    extends ProviderFactory<ProviderType>, ComponentFactory<ProviderType,​ProviderType>
    Ancestor for a provider factory for both a standalone ProviderFactory and a ComponentFactory. It behaves as usual for a standalone provider, and for a component creates a factory customized according to configuration of this component. The component creation then behaves in the same way as if it was a standalone component, i.e.:
    • The component-specific factory is initialized via ProviderFactory.init(org.keycloak.Config.Scope) method where the configuration is taken from the component configuration, converted into a Config.Scope. The component configuration takes precedence over configuration of the provider factory.
    • Creation of the instances is done via standard create(KeycloakSession) method even for components, since there is now a specific factory per component.
    • Component-specific factories are cached inside the provider factory similarly to how provider factories are cached in the session factory.
    Author:
    hmlnarik
    See Also:
    ComponentFactoryProviderFactory