Interface ComponentFactory<CreatedType,ProviderType extends Provider>

All Superinterfaces:
ConfiguredProvider, ProviderFactory<ProviderType>
All Known Subinterfaces:
AmphibianProviderFactory<ProviderType>, ClientRegistrationPolicyFactory, ClientScopeStorageProviderFactory<T>, ClientStorageProviderFactory<T>, CredentialBuilderFactory, GroupStorageProviderFactory<T>, KeyProviderFactory<T>, LDAPStorageMapperFactory<T>, RoleStorageProviderFactory<T>, SubComponentFactory<CreatedType,ProviderType>, UiPageProviderFactory<T>, UiTabProviderFactory<T>, UserStorageProviderFactory<T>, WorkflowProviderFactory<P>, WorkflowStepProviderFactory<P>
All Known Implementing Classes:
AbstractClientRegistrationPolicyFactory, AbstractEcKeyProviderFactory, AbstractEddsaKeyProviderFactory, AbstractGeneratedEcKeyProviderFactory, AbstractGeneratedRsaKeyProviderFactory, AbstractGeneratedSecretKeyProviderFactory, AbstractImportedRsaKeyProviderFactory, AbstractLDAPStorageMapperFactory, AbstractRsaKeyProviderFactory, AddRequiredActionStepProviderFactory, CertificateLDAPStorageMapperFactory, ClientDisabledClientRegistrationPolicyFactory, ClientScopesClientRegistrationPolicyFactory, ConsentRequiredClientRegistrationPolicyFactory, DeclarativeUserProfileProviderFactory, DefaultWorkflowProviderFactory, DeleteClientStepProviderFactory, DeleteUserStepProviderFactory, DisableClientStepProviderFactory, DisableUserStepProviderFactory, FullNameLDAPStorageMapperFactory, GeneratedAesKeyProviderFactory, GeneratedEcdhKeyProviderFactory, GeneratedEcdsaKeyProviderFactory, GeneratedEddsaKeyProviderFactory, GeneratedHmacKeyProviderFactory, GeneratedRsaEncKeyProviderFactory, GeneratedRsaKeyProviderFactory, GrantRoleStepProviderFactory, GroupLDAPStorageMapperFactory, HardcodedAttributeMapperFactory, HardcodedLDAPAttributeMapperFactory, HardcodedLDAPGroupStorageMapperFactory, HardcodedLDAPRoleStorageMapperFactory, ImportedRsaEncKeyProviderFactory, ImportedRsaKeyProviderFactory, IpatuuraUserStorageProviderFactory, JavaKeystoreKeyProviderFactory, JoinGroupStepProviderFactory, JwtCredentialBuilderFactory, KerberosFederationProviderFactory, KerberosPrincipalAttributeMapperFactory, LDAPStorageProviderFactory, LDCredentialBuilderFactory, LeaveGroupStepProviderFactory, MaxClientsClientRegistrationPolicyFactory, MSADLDSUserAccountControlStorageMapperFactory, MSADUserAccountControlStorageMapperFactory, NotifyUserStepProviderFactory, ProtocolMappersClientRegistrationPolicyFactory, RegistrationWebOriginsPolicyFactory, RemoveRequiredActionStepProviderFactory, RemoveUserAttributeStepProviderFactory, RestartWorkflowStepProviderFactory, RevokeRoleStepProviderFactory, RoleLDAPStorageMapperFactory, ScopeClientRegistrationPolicyFactory, SdJwtCredentialBuilderFactory, SetUserAttributeStepProviderFactory, SSSDFederationProviderFactory, TrustedHostClientRegistrationPolicyFactory, UnlinkUserStepProviderFactory, UserAttributeLDAPStorageMapperFactory

public interface ComponentFactory<CreatedType,ProviderType extends Provider> extends ProviderFactory<ProviderType>, ConfiguredProvider
Version:
$Revision: 1 $
Author:
Bill Burke
  • Method Details

    • create

      CreatedType create(KeycloakSession session, ComponentModel model)
    • create

      default ProviderType create(KeycloakSession session)
      Specified by:
      create in interface ProviderFactory<CreatedType>
    • validateConfiguration

      default void validateConfiguration(KeycloakSession session, RealmModel realm, ComponentModel model) throws ComponentValidationException
      Called before a component is created or updated. Allows you to validate the configuration
      Parameters:
      session -
      realm -
      model -
      Throws:
      ComponentValidationException
    • onCreate

      default void onCreate(KeycloakSession session, RealmModel realm, ComponentModel model)
      Called after a component is created
      Parameters:
      session -
      realm -
      model -
    • onUpdate

      default void onUpdate(KeycloakSession session, RealmModel realm, ComponentModel oldModel, ComponentModel newModel)
      Called after the component is updated.
      Parameters:
      session -
      realm -
      oldModel - old saved model
      newModel - new configuration
    • preRemove

      default void preRemove(KeycloakSession session, RealmModel realm, ComponentModel model)
      Called before the component is removed.
      Parameters:
      session -
      realm -
      model - model of the component, which is going to be removed
    • getCommonProviderConfigProperties

      default List<ProviderConfigProperty> getCommonProviderConfigProperties()
      These are config properties that are common across all implementation of this component type
      Returns:
    • getTypeMetadata

      default Map<String,Object> getTypeMetadata()
      This is metadata about this component type. Its really configuration information about the component type and not an individual instance
      Returns:
    • isInternal

      default boolean isInternal()
      Indicates whether this component factory is managed internally and should not be exposed through the generic component REST API.
      Returns:
      true if the component is internal, false otherwise.