Package org.keycloak.component
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 standaloneProviderFactoryand aComponentFactory. 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 aConfig.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
-
-
Method Summary
All Methods Instance Methods Abstract Methods Default Methods Deprecated Methods Modifier and Type Method Description default voidclose()ProviderTypecreate(KeycloakSession session)default ProviderTypecreate(KeycloakSession session, ComponentModel model)Deprecated.default List<ProviderConfigProperty>getConfigProperties()default voidonUpdate(KeycloakSession session, RealmModel realm, ComponentModel oldModel, ComponentModel newModel)default voidpreRemove(KeycloakSession session, RealmModel realm, ComponentModel model)-
Methods inherited from interface org.keycloak.component.ComponentFactory
getCommonProviderConfigProperties, getTypeMetadata, onCreate, validateConfiguration
-
Methods inherited from interface org.keycloak.provider.ConfiguredProvider
getConfig, getHelpText
-
Methods inherited from interface org.keycloak.provider.ProviderFactory
getConfigMetadata, getId, init, order, postInit
-
-
-
-
Method Detail
-
create
ProviderType create(KeycloakSession session)
- Specified by:
createin interfaceComponentFactory<ProviderType extends Provider,ProviderType extends Provider>- Specified by:
createin interfaceProviderFactory<ProviderType extends Provider>
-
create
@Deprecated default ProviderType create(KeycloakSession session, ComponentModel model)
Deprecated.- Specified by:
createin interfaceComponentFactory<ProviderType extends Provider,ProviderType extends Provider>
-
getConfigProperties
default List<ProviderConfigProperty> getConfigProperties()
- Specified by:
getConfigPropertiesin interfaceConfiguredProvider
-
onUpdate
default void onUpdate(KeycloakSession session, RealmModel realm, ComponentModel oldModel, ComponentModel newModel)
- Specified by:
onUpdatein interfaceComponentFactory<ProviderType extends Provider,ProviderType extends Provider>
-
preRemove
default void preRemove(KeycloakSession session, RealmModel realm, ComponentModel model)
- Specified by:
preRemovein interfaceComponentFactory<ProviderType extends Provider,ProviderType extends Provider>
-
close
default void close()
- Specified by:
closein interfaceProviderFactory<ProviderType extends Provider>
-
-