Package org.keycloak.component
Interface AmphibianProviderFactory<ProviderType extends Provider>
- 
- All Superinterfaces:
- ComponentFactory<ProviderType,ProviderType>,- ConfiguredProvider,- ProviderFactory<ProviderType>
 - All Known Implementing Classes:
- AbstractMapProviderFactory,- ConcurrentHashMapStorageProviderFactory,- DeclarativeUserProfileProvider,- FileMapStorageProviderFactory,- HotRodMapStorageProviderFactory,- JpaMapStorageProviderFactory,- LdapMapStorageProviderFactory,- MapAuthorizationStoreFactory,- MapClientProviderFactory,- MapClientScopeProviderFactory,- MapEventStoreProviderFactory,- MapGroupProviderFactory,- MapPublicKeyStorageProviderFactory,- MapRealmProviderFactory,- MapRoleProviderFactory,- MapRootAuthenticationSessionProviderFactory,- MapSingleUseObjectProviderFactory,- MapUserLoginFailureProviderFactory,- MapUserProviderFactory,- MapUserSessionProviderFactory
 
 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 SummaryAll Methods Instance Methods Abstract Methods Default Methods Deprecated Methods Modifier and Type Method Description default voidclose()This is called when the server shuts down.ProviderTypecreate(KeycloakSession session)default ProviderTypecreate(KeycloakSession session, ComponentModel model)Deprecated.default List<ProviderConfigProperty>getConfigProperties()default voidonUpdate(KeycloakSession session, RealmModel realm, ComponentModel oldModel, ComponentModel newModel)Called after the component is updated.default voidpreRemove(KeycloakSession session, RealmModel realm, ComponentModel model)Called before the component is removed.- 
Methods inherited from interface org.keycloak.component.ComponentFactorygetCommonProviderConfigProperties, getTypeMetadata, onCreate, validateConfiguration
 - 
Methods inherited from interface org.keycloak.provider.ConfiguredProvidergetConfig, getHelpText
 - 
Methods inherited from interface org.keycloak.provider.ProviderFactorygetConfigMetadata, getId, init, order, postInit
 
- 
 
- 
- 
- 
Method Detail- 
createProviderType create(KeycloakSession session) - Specified by:
- createin interface- ComponentFactory<ProviderType extends Provider,ProviderType extends Provider>
- Specified by:
- createin interface- ProviderFactory<ProviderType extends Provider>
 
 - 
create@Deprecated default ProviderType create(KeycloakSession session, ComponentModel model) Deprecated.- Specified by:
- createin interface- ComponentFactory<ProviderType extends Provider,ProviderType extends Provider>
 
 - 
getConfigPropertiesdefault List<ProviderConfigProperty> getConfigProperties() - Specified by:
- getConfigPropertiesin interface- ConfiguredProvider
 
 - 
onUpdatedefault void onUpdate(KeycloakSession session, RealmModel realm, ComponentModel oldModel, ComponentModel newModel) Description copied from interface:ComponentFactoryCalled after the component is updated.- Specified by:
- onUpdatein interface- ComponentFactory<ProviderType extends Provider,ProviderType extends Provider>
- oldModel- old saved model
- newModel- new configuration
 
 - 
preRemovedefault void preRemove(KeycloakSession session, RealmModel realm, ComponentModel model) Description copied from interface:ComponentFactoryCalled before the component is removed.- Specified by:
- preRemovein interface- ComponentFactory<ProviderType extends Provider,ProviderType extends Provider>
- model- model of the component, which is going to be removed
 
 - 
closedefault void close() Description copied from interface:ProviderFactoryThis is called when the server shuts down.- Specified by:
- closein interface- ProviderFactory<ProviderType extends Provider>
 
 
- 
 
-