Class AbstractAuthorisationSpi<T,R extends de.adorsys.ledgers.middleware.api.domain.sca.SCAResponseTO>
- java.lang.Object
-
- de.adorsys.aspsp.xs2a.connector.spi.impl.authorisation.AbstractAuthorisationSpi<T,R>
-
- Direct Known Subclasses:
AisConsentSpiImpl,PaymentAuthorisationSpiImpl,PaymentCancellationSpiImpl,PiisConsentSpiImpl
public abstract class AbstractAuthorisationSpi<T,R extends de.adorsys.ledgers.middleware.api.domain.sca.SCAResponseTO> extends Object
-
-
Constructor Summary
Constructors Constructor Description AbstractAuthorisationSpi()
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description de.adorsys.psd2.xs2a.spi.domain.response.SpiResponse<de.adorsys.psd2.xs2a.spi.domain.authorisation.SpiPsuAuthorisationResponse>authorisePsu(@NotNull de.adorsys.psd2.xs2a.spi.domain.SpiContextData contextData, @NotNull String authorisationId, @NotNull de.adorsys.psd2.xs2a.spi.domain.psu.SpiPsuData psuLoginData, String password, T businessObject, @NotNull de.adorsys.psd2.xs2a.spi.domain.SpiAspspConsentDataProvider aspspConsentDataProvider)protected StringgeneratePsuMessage(@NotNull de.adorsys.psd2.xs2a.spi.domain.SpiContextData contextData, @NotNull String authorisationId, @NotNull de.adorsys.psd2.xs2a.spi.domain.SpiAspspConsentDataProvider aspspConsentDataProvider, de.adorsys.psd2.xs2a.spi.domain.response.SpiResponse<de.adorsys.psd2.xs2a.spi.domain.authorisation.SpiAuthorizationCodeResult> response)protected abstract de.adorsys.psd2.xs2a.core.error.TppMessagegetAuthorisePsuFailureMessage(T businessObject)protected abstract StringgetBusinessObjectId(T businessObject)protected abstract de.adorsys.ledgers.middleware.api.domain.sca.OpTypeTOgetOtpType()protected abstract RgetSCAConsentResponse(@NotNull de.adorsys.psd2.xs2a.spi.domain.SpiAspspConsentDataProvider aspspConsentDataProvider, boolean checkCredentials)protected Optional<List<de.adorsys.ledgers.middleware.api.domain.um.ScaUserDataTO>>getScaMethods(R sca)protected abstract org.springframework.http.ResponseEntity<R>getSelectMethodResponse(@NotNull String authenticationMethodId, R sca)protected abstract de.adorsys.ledgers.middleware.api.domain.sca.SCAResponseTOinitiateBusinessObject(T businessObject, byte[] aspspConsentData)protected abstract booleanisFirstInitiationOfMultilevelSca(T businessObject, R scaBusinessObjectResponse)protected abstract RmapToScaResponse(T businessObject, byte[] aspspConsentData, R originalResponse)protected de.adorsys.psd2.xs2a.spi.domain.response.SpiResponse<de.adorsys.psd2.xs2a.spi.domain.authorisation.SpiPsuAuthorisationResponse>onSuccessfulAuthorisation(T businessObject, @NotNull de.adorsys.psd2.xs2a.spi.domain.SpiAspspConsentDataProvider aspspConsentDataProvider, de.adorsys.psd2.xs2a.spi.domain.response.SpiResponse<de.adorsys.psd2.xs2a.spi.domain.authorisation.SpiPsuAuthorisationResponse> authorisePsu, R scaBusinessObjectResponse)@NotNull de.adorsys.psd2.xs2a.spi.domain.response.SpiResponse<de.adorsys.psd2.xs2a.spi.domain.authorisation.SpiAuthorizationCodeResult>requestAuthorisationCode(@NotNull de.adorsys.psd2.xs2a.spi.domain.SpiContextData contextData, @NotNull String authenticationMethodId, T businessObject, @NotNull de.adorsys.psd2.xs2a.spi.domain.SpiAspspConsentDataProvider aspspConsentDataProvider)de.adorsys.psd2.xs2a.spi.domain.response.SpiResponse<de.adorsys.psd2.xs2a.spi.domain.authorisation.SpiAvailableScaMethodsResponse>requestAvailableScaMethods(@NotNull de.adorsys.psd2.xs2a.spi.domain.SpiContextData contextData, T businessObject, @NotNull de.adorsys.psd2.xs2a.spi.domain.SpiAspspConsentDataProvider aspspConsentDataProvider)This call must follow an init consent request, therefore we are expecting theAspspConsentDataobject to contain aSCAConsentResponseTOresponse.@NotNull de.adorsys.psd2.xs2a.spi.domain.response.SpiResponse<de.adorsys.psd2.xs2a.spi.domain.authorisation.SpiAuthorisationDecoupledScaResponse>startScaDecoupled(@NotNull de.adorsys.psd2.xs2a.spi.domain.SpiContextData contextData, @NotNull String authorisationId, @Nullable String authenticationMethodId, T businessObject, @NotNull de.adorsys.psd2.xs2a.spi.domain.SpiAspspConsentDataProvider aspspConsentDataProvider)protected booleanvalidateStatuses(T businessObject, R sca)
-
-
-
Method Detail
-
authorisePsu
public de.adorsys.psd2.xs2a.spi.domain.response.SpiResponse<de.adorsys.psd2.xs2a.spi.domain.authorisation.SpiPsuAuthorisationResponse> authorisePsu(@NotNull @NotNull de.adorsys.psd2.xs2a.spi.domain.SpiContextData contextData, @NotNull @NotNull String authorisationId, @NotNull @NotNull de.adorsys.psd2.xs2a.spi.domain.psu.SpiPsuData psuLoginData, String password, T businessObject, @NotNull @NotNull de.adorsys.psd2.xs2a.spi.domain.SpiAspspConsentDataProvider aspspConsentDataProvider)
-
requestAvailableScaMethods
public de.adorsys.psd2.xs2a.spi.domain.response.SpiResponse<de.adorsys.psd2.xs2a.spi.domain.authorisation.SpiAvailableScaMethodsResponse> requestAvailableScaMethods(@NotNull @NotNull de.adorsys.psd2.xs2a.spi.domain.SpiContextData contextData, T businessObject, @NotNull @NotNull de.adorsys.psd2.xs2a.spi.domain.SpiAspspConsentDataProvider aspspConsentDataProvider)This call must follow an init consent request, therefore we are expecting theAspspConsentDataobject to contain aSCAConsentResponseTOresponse.
-
getScaMethods
protected Optional<List<de.adorsys.ledgers.middleware.api.domain.um.ScaUserDataTO>> getScaMethods(R sca)
-
requestAuthorisationCode
@NotNull public @NotNull de.adorsys.psd2.xs2a.spi.domain.response.SpiResponse<de.adorsys.psd2.xs2a.spi.domain.authorisation.SpiAuthorizationCodeResult> requestAuthorisationCode(@NotNull @NotNull de.adorsys.psd2.xs2a.spi.domain.SpiContextData contextData, @NotNull @NotNull String authenticationMethodId, @NotNull T businessObject, @NotNull @NotNull de.adorsys.psd2.xs2a.spi.domain.SpiAspspConsentDataProvider aspspConsentDataProvider)
-
startScaDecoupled
@NotNull public @NotNull de.adorsys.psd2.xs2a.spi.domain.response.SpiResponse<de.adorsys.psd2.xs2a.spi.domain.authorisation.SpiAuthorisationDecoupledScaResponse> startScaDecoupled(@NotNull @NotNull de.adorsys.psd2.xs2a.spi.domain.SpiContextData contextData, @NotNull @NotNull String authorisationId, @Nullable @Nullable String authenticationMethodId, @NotNull T businessObject, @NotNull @NotNull de.adorsys.psd2.xs2a.spi.domain.SpiAspspConsentDataProvider aspspConsentDataProvider)
-
getSelectMethodResponse
protected abstract org.springframework.http.ResponseEntity<R> getSelectMethodResponse(@NotNull @NotNull String authenticationMethodId, R sca)
-
getSCAConsentResponse
protected abstract R getSCAConsentResponse(@NotNull @NotNull de.adorsys.psd2.xs2a.spi.domain.SpiAspspConsentDataProvider aspspConsentDataProvider, boolean checkCredentials)
-
getOtpType
protected abstract de.adorsys.ledgers.middleware.api.domain.sca.OpTypeTO getOtpType()
-
getAuthorisePsuFailureMessage
protected abstract de.adorsys.psd2.xs2a.core.error.TppMessage getAuthorisePsuFailureMessage(T businessObject)
-
initiateBusinessObject
protected abstract de.adorsys.ledgers.middleware.api.domain.sca.SCAResponseTO initiateBusinessObject(T businessObject, byte[] aspspConsentData)
-
mapToScaResponse
protected abstract R mapToScaResponse(T businessObject, byte[] aspspConsentData, R originalResponse) throws IOException
- Throws:
IOException
-
generatePsuMessage
protected String generatePsuMessage(@NotNull @NotNull de.adorsys.psd2.xs2a.spi.domain.SpiContextData contextData, @NotNull @NotNull String authorisationId, @NotNull @NotNull de.adorsys.psd2.xs2a.spi.domain.SpiAspspConsentDataProvider aspspConsentDataProvider, de.adorsys.psd2.xs2a.spi.domain.response.SpiResponse<de.adorsys.psd2.xs2a.spi.domain.authorisation.SpiAuthorizationCodeResult> response)
-
isFirstInitiationOfMultilevelSca
protected abstract boolean isFirstInitiationOfMultilevelSca(T businessObject, R scaBusinessObjectResponse)
-
onSuccessfulAuthorisation
protected de.adorsys.psd2.xs2a.spi.domain.response.SpiResponse<de.adorsys.psd2.xs2a.spi.domain.authorisation.SpiPsuAuthorisationResponse> onSuccessfulAuthorisation(T businessObject, @NotNull @NotNull de.adorsys.psd2.xs2a.spi.domain.SpiAspspConsentDataProvider aspspConsentDataProvider, de.adorsys.psd2.xs2a.spi.domain.response.SpiResponse<de.adorsys.psd2.xs2a.spi.domain.authorisation.SpiPsuAuthorisationResponse> authorisePsu, R scaBusinessObjectResponse)
-
-