public abstract class AbstractMechanismAuthenticationFactory<M,F,E extends Exception> extends Object implements MechanismAuthenticationFactory<M,F,E>
| Modifier and Type | Class and Description |
|---|---|
protected static class |
AbstractMechanismAuthenticationFactory.Builder<M,F,E extends Exception> |
| Modifier | Constructor and Description |
|---|---|
protected |
AbstractMechanismAuthenticationFactory(SecurityDomain securityDomain,
MechanismConfigurationSelector mechanismConfigurationSelector,
F factory) |
| Modifier and Type | Method and Description |
|---|---|
M |
createMechanism(String name,
UnaryOperator<F> factoryTransformation)
Create the mechanism instance.
|
protected abstract M |
doCreate(String name,
CallbackHandler callbackHandler,
UnaryOperator<F> factoryTransformation) |
protected abstract Collection<String> |
getAllSupportedMechNames() |
F |
getFactory()
Get the actual factory used for instantiation.
|
Collection<String> |
getMechanismNames()
Get the collection of mechanism names may be supported by this factory.
|
SecurityDomain |
getSecurityDomain()
Get the underlying
SecurityDomain that mechanisms created by this factory will be using for authentication. |
protected abstract Collection<String> |
getSupportedCredentialAlgorithmNames(Class<? extends AlgorithmCredential> credentialType,
String mechName) |
protected abstract Collection<Class<? extends Credential>> |
getSupportedCredentialTypes(String mechName) |
protected abstract Collection<String> |
getSupportedEvidenceAlgorithmNames(Class<? extends AlgorithmEvidence> evidenceType,
String mechName) |
protected abstract Collection<Class<? extends Evidence>> |
getSupportedEvidenceTypes(String mechName) |
protected abstract boolean |
usesCredentials(String mechName)
Determine whether the given mechanism name needs credentials from a realm in order to authenticate.
|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitcreateMechanismprotected AbstractMechanismAuthenticationFactory(SecurityDomain securityDomain, MechanismConfigurationSelector mechanismConfigurationSelector, F factory)
public SecurityDomain getSecurityDomain()
MechanismAuthenticationFactorySecurityDomain that mechanisms created by this factory will be using for authentication.getSecurityDomain in interface MechanismAuthenticationFactory<M,F,E extends Exception>SecurityDomain that mechanisms created by this factory will be using for authentication.public F getFactory()
MechanismAuthenticationFactorygetFactory in interface MechanismAuthenticationFactory<M,F,E extends Exception>null)public M createMechanism(String name, UnaryOperator<F> factoryTransformation) throws E extends Exception
MechanismAuthenticationFactorycreateMechanism in interface MechanismAuthenticationFactory<M,F,E extends Exception>name - the mechanism name (must not be null)factoryTransformation - the transformation to apply to the factory (must not be null)null if the mechanism with the given name is not supportedE - if the mechanism instantiation failedE extends Exceptionprotected abstract M doCreate(String name, CallbackHandler callbackHandler, UnaryOperator<F> factoryTransformation) throws E extends Exception
protected abstract Collection<Class<? extends Evidence>> getSupportedEvidenceTypes(String mechName)
protected abstract Collection<String> getSupportedEvidenceAlgorithmNames(Class<? extends AlgorithmEvidence> evidenceType, String mechName)
protected abstract Collection<Class<? extends Credential>> getSupportedCredentialTypes(String mechName)
protected abstract Collection<String> getSupportedCredentialAlgorithmNames(Class<? extends AlgorithmCredential> credentialType, String mechName)
protected abstract boolean usesCredentials(String mechName)
mechName - the mechanism nametrue if the mechanism requires realm credential support, false if it does notpublic Collection<String> getMechanismNames()
MechanismAuthenticationFactorygetMechanismNames in interface MechanismAuthenticationFactory<M,F,E extends Exception>null)protected abstract Collection<String> getAllSupportedMechNames()
Copyright © 2019 JBoss by Red Hat. All rights reserved.