Interface EnrollingBusinessService
-
- All Superinterfaces:
BusinessService
public interface EnrollingBusinessService extends BusinessService
This service is responsible for enrolling the end-user to both the ASM and the CPS. Without successfully completing the enrollment, the end user will not be able to perform any transaction.
There are two use cases for the enrollment.- The end user is not yet enrolled.
- The end user started enrollment previously, but did not finish. In this use case, the SDK continues where the previous enrollment has left off.
isEnrolled()
, to understand the current enrolling state of the SDK.
isEnrolled()
returns three possible values to help the mobile wallet understand the current enrollment state:EnrollmentStatus.ENROLLMENT_NEEDED
- This implies that no enrollment has been performed. This will be returned for the first use case. In this scenario, the mobile wallet is expected to invokeenroll(String, String, String, EnrollingServiceListener)
EnrollmentStatus.ENROLLMENT_IN_PROGRESS
- This implies that an enrollment has been performed before, but it did not finish. This is the second use case. In this scenario, the mobile wallet is expected to invokecontinueEnrollment(String, EnrollingServiceListener)
EnrollmentStatus.ENROLLMENT_COMPLETE
- This implies that an enrollment has been previously execute, and completed successfully. In this scenario, the mobile wallet is no longer expected to perform enrollment.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description void
continueEnrollment(java.lang.String userLanguage, EnrollingServiceListener listener)
Resumes an enrollment procedure that was not completed on a previous attempt.void
continueEnrollment(java.lang.String userLanguage, EnrollingServiceListener listener, ProvisioningServicePinType pinType)
void
enroll(java.lang.String userID, java.lang.String gcmToken, java.lang.String userLanguage, EnrollingServiceListener listener)
Performs the enrollment process with the ASM and CPS server.void
enroll(java.lang.String userID, java.lang.String gcmToken, java.lang.String userLanguage, EnrollingServiceListener listener, ProvisioningServicePinType pinType)
If this is invoked, then the end user will be required to enter the following in order: Activation code PIN - the type of PIN will be dictated by the pinType Both user inputs will be invoked through theEnrollingServiceListener.onCodeRequired(com.gemalto.mfs.mwsdk.utils.chcodeverifier.CHCodeVerifier)
.ProvisioningServiceCodeType
getCodeType()
During the enrollment phase, the end user may be required to enter the mobile PIN.EnrollmentStatus
isEnrolled()
Returns the status of the enrollment.-
Methods inherited from interface com.gemalto.mfs.mwsdk.sdkconfig.BusinessService
initialize, reset
-
-
-
-
Method Detail
-
isEnrolled
EnrollmentStatus isEnrolled()
Returns the status of the enrollment. The end-user either needs to enroll, is currently in enrolling, or has already been enrolled. The different statuses are enumerated inEnrollmentStatus
- Returns:
- EnrollmentStatus
-
getCodeType
ProvisioningServiceCodeType getCodeType()
During the enrollment phase, the end user may be required to enter the mobile PIN. In such a use case, the user will be asked to enter an activation code, followed by the mobile pin.
Once the listenerEnrollingServiceListener.onCodeRequired(com.gemalto.mfs.mwsdk.utils.chcodeverifier.CHCodeVerifier)
has been invoked, the MPA may use this method to understand which input is expected from the end user.- Returns:
ProvisioningServiceCodeType
-
enroll
void enroll(java.lang.String userID, java.lang.String gcmToken, java.lang.String userLanguage, EnrollingServiceListener listener)
Performs the enrollment process with the ASM and CPS server.- Parameters:
userID
- - Alphanumeric user id that uniquely identifies the end-user. It will be received from issuing bank.gcmToken
- - GCM registration id. This id will be received from Google server.userLanguage
- - The ISO 639 language code chosen by the user when the mobile wallet is installed.listener
- - enrolling service listenerEnrollingServiceListener
-
enroll
void enroll(java.lang.String userID, java.lang.String gcmToken, java.lang.String userLanguage, EnrollingServiceListener listener, ProvisioningServicePinType pinType)
If this is invoked, then the end user will be required to enter the following in order:- Activation code
- PIN - the type of PIN will be dictated by the pinType
EnrollingServiceListener.onCodeRequired(com.gemalto.mfs.mwsdk.utils.chcodeverifier.CHCodeVerifier)
. Once inside the callback function, the MPA developer will be able to distinguish which input is required by callinggetCodeType()
. IMPORTANT: If pinType isProvisioningServicePinType.NONE
is entered, then the enrollment will proceed, and will require the user to enter the activation code ONLY. No other user input will follow.- Parameters:
pinType
- - indicates which pin type the end-user is expected to enter @seeProvisioningServicePinType
- See Also:
enroll(String, String, String, EnrollingServiceListener)
-
continueEnrollment
void continueEnrollment(java.lang.String userLanguage, EnrollingServiceListener listener)
Resumes an enrollment procedure that was not completed on a previous attempt.- Parameters:
userLanguage
- - The ISO 639 language code chosen by the user when the mobile wallet is installed.listener
- - enrolling service listenerEnrollingServiceListener
-
continueEnrollment
void continueEnrollment(java.lang.String userLanguage, EnrollingServiceListener listener, ProvisioningServicePinType pinType)
- Parameters:
userLanguage
-listener
-pinType
- - indicates which pin type the end-user is expected to enter @seeProvisioningServicePinType
- See Also:
continueEnrollment(String, EnrollingServiceListener)
-
-