public class XmlAssistModeFragment extends android.support.v4.app.Fragment implements XmlEventListener, ApiResultContainer
Fragment
subclass.
Activities that contain this fragment must implement the
XmlAssistModeFragment.DownloadXmlListener
interface
to communicate event to activity and
XmlEventListener
interface
to handle uidaiWebView
interaction events within fragment.
Use the newInstance(java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String)
factory method to
create an instance of this fragment.Modifier and Type | Class and Description |
---|---|
static interface |
XmlAssistModeFragment.DownloadXmlListener
This interface must be implemented by activities that contain this
fragment to allow an interaction and handle xml download failure events
and open facematch fragment in case of successful download and parsing
in this fragment to be communicated
to the activity and potentially other fragments contained in that
activity.
|
class |
XmlAssistModeFragment.WebAppInterface |
Modifier and Type | Field and Description |
---|---|
private android.support.v7.widget.CardView |
cvAssitiveModeView |
(package private) XmlAssistModeFragment.DownloadXmlListener |
downloadXmlListener |
private android.widget.EditText |
etInputText |
(package private) java.lang.String |
fileName |
static java.lang.String |
gotp |
static java.lang.String |
gUid |
static java.lang.String |
gzipcode |
boolean |
isXmlFileDownloaded |
private android.widget.ImageView |
ivSubmitText |
private android.widget.LinearLayout |
llInputView |
private android.widget.LinearLayout |
llOnTimerFinish |
private android.widget.LinearLayout |
lltimerOverLay |
private android.widget.LinearLayout |
llWebViewLoader |
(package private) java.lang.String |
mimeType1 |
private android.widget.ProgressBar |
overlayProgressBar |
static int |
post_counter |
(package private) android.widget.ProgressBar |
progressBar |
private java.lang.String |
qtEnvironment |
private java.lang.String |
qtRegisteredEmail |
private java.lang.String |
qtRegisteredMobile |
private java.lang.String |
qtTransactionId |
private java.lang.String |
qtUid |
(package private) android.support.v4.widget.SwipeRefreshLayout |
swipe |
private android.widget.TextView |
tvCancel |
private android.widget.TextView |
tvLoadingMsg |
private android.widget.TextView |
tvRetry |
private android.widget.TextView |
tvTimer |
private android.widget.TextView |
tvTimerInstr |
private android.webkit.WebView |
uidaiWebView |
(package private) XmlEventListener |
xmlEventListener |
private java.lang.String |
zoopAssistiveModeState |
Constructor and Description |
---|
XmlAssistModeFragment() |
Modifier and Type | Method and Description |
---|---|
java.lang.String |
checkDigit(int number)
this method check digit in timer and set 0 infront if less number is less than 9
|
static void |
clearCookies(android.content.Context context) |
void |
downloadZip(java.lang.String url_str,
java.lang.String userAgent,
java.lang.String contentDisposition,
java.lang.String mimeType,
java.lang.String otp,
java.lang.String zipcode)
This methods download zip file on post request
|
private void |
editTextMaxLength(int maxLength) |
private java.lang.String |
getQuery(java.util.List<java.util.AbstractMap.SimpleEntry> params) |
private void |
getToast(java.lang.String errorMessage) |
void |
hideKeyboard()
This method hides keyboard
|
void |
initialiseUidaiView(android.view.View uidaiView)
intialise view and handles onclick and textchange events
|
static XmlAssistModeFragment |
newInstance(java.lang.String qtTransactionId,
java.lang.String qtEnvironment,
java.lang.String qtRegisteredEmail,
java.lang.String qtRegisteredMobile,
java.lang.String qtUid)
Use this factory method to create a new instance of
this fragment using the provided parameters.
|
void |
onApiErrorResult(org.json.JSONObject error)
This method used to communicate and handle error response
|
void |
onApiSuccessResult(org.json.JSONObject parsedXmlJson)
This method used to communicate and handle success response
|
void |
onApiSuccessResult(org.json.JSONObject success,
java.lang.String UID)
This method used to communicate and handle success response
|
void |
onAttach(android.content.Context context) |
void |
onCreate(android.os.Bundle savedInstanceState) |
android.view.View |
onCreateView(android.view.LayoutInflater inflater,
android.view.ViewGroup container,
android.os.Bundle savedInstanceState) |
void |
onDestroy() |
void |
onDetach() |
void |
onEditTextChangeEvent(java.lang.CharSequence charSequence)
handles and validates input text event using onTextChangeListener in different assist view state
assist view state: AadhaarNo.
|
void |
onOTPTimesUp(java.lang.String timesupEvent)
This method used to handle event after submitOTP times up
|
void |
onRequestOTP(java.lang.String uid,
int postCounter)
This method handles event after OTP is requested successfully through uidai webview
|
private void |
onShareCodeView()
handles event when changed from captcha view to share code view
|
void |
onXmlDownloadFinished(java.lang.String shareCode,
java.lang.String qtEnv)
This method handles event after xml file is download successfully
|
void |
qtSendResponseToUser(java.lang.String response,
int resultType) |
private void |
redirectToUidai()
loads uidai portal and handles webview event and intercept request
|
void |
showKeyboard()
This method displays keyboard
|
private void |
submitData()
submit Data from input text,
updates assist mode
and handles input event as per the assist mode
|
static boolean |
validateAadhaarAndVid(java.lang.String aadharNumber)
this method validates if aadhaarnumber or vid is correct
|
dump, equals, getActivity, getAllowEnterTransitionOverlap, getAllowReturnTransitionOverlap, getArguments, getChildFragmentManager, getContext, getEnterTransition, getExitTransition, getFragmentManager, getHost, getId, getLayoutInflater, getLayoutInflater, getLifecycle, getLoaderManager, getParentFragment, getReenterTransition, getResources, getRetainInstance, getReturnTransition, getSharedElementEnterTransition, getSharedElementReturnTransition, getString, getString, getTag, getTargetFragment, getTargetRequestCode, getText, getUserVisibleHint, getView, getViewLifecycleOwner, getViewLifecycleOwnerLiveData, getViewModelStore, hashCode, hasOptionsMenu, instantiate, instantiate, isAdded, isDetached, isHidden, isInLayout, isMenuVisible, isRemoving, isResumed, isStateSaved, isVisible, onActivityCreated, onActivityResult, onAttach, onAttachFragment, onConfigurationChanged, onContextItemSelected, onCreateAnimation, onCreateAnimator, onCreateContextMenu, onCreateOptionsMenu, onDestroyOptionsMenu, onDestroyView, onGetLayoutInflater, onHiddenChanged, onInflate, onInflate, onLowMemory, onMultiWindowModeChanged, onOptionsItemSelected, onOptionsMenuClosed, onPause, onPictureInPictureModeChanged, onPrepareOptionsMenu, onRequestPermissionsResult, onResume, onSaveInstanceState, onStart, onStop, onViewCreated, onViewStateRestored, postponeEnterTransition, registerForContextMenu, requestPermissions, requireActivity, requireContext, requireFragmentManager, requireHost, setAllowEnterTransitionOverlap, setAllowReturnTransitionOverlap, setArguments, setEnterSharedElementCallback, setEnterTransition, setExitSharedElementCallback, setExitTransition, setHasOptionsMenu, setInitialSavedState, setMenuVisibility, setReenterTransition, setRetainInstance, setReturnTransition, setSharedElementEnterTransition, setSharedElementReturnTransition, setTargetFragment, setUserVisibleHint, shouldShowRequestPermissionRationale, startActivity, startActivity, startActivityForResult, startActivityForResult, startIntentSenderForResult, startPostponedEnterTransition, toString, unregisterForContextMenu
public static java.lang.String gotp
public static java.lang.String gzipcode
public static int post_counter
public static java.lang.String gUid
public boolean isXmlFileDownloaded
XmlAssistModeFragment.DownloadXmlListener downloadXmlListener
XmlEventListener xmlEventListener
android.support.v4.widget.SwipeRefreshLayout swipe
android.widget.ProgressBar progressBar
java.lang.String mimeType1
java.lang.String fileName
private java.lang.String qtTransactionId
private java.lang.String qtEnvironment
private java.lang.String qtRegisteredEmail
private java.lang.String qtRegisteredMobile
private java.lang.String qtUid
private android.webkit.WebView uidaiWebView
private android.widget.LinearLayout llWebViewLoader
private android.widget.LinearLayout lltimerOverLay
private android.widget.TextView tvLoadingMsg
private android.widget.ProgressBar overlayProgressBar
private android.widget.LinearLayout llInputView
private android.widget.LinearLayout llOnTimerFinish
private android.widget.EditText etInputText
private android.widget.ImageView ivSubmitText
private android.widget.TextView tvTimer
private android.widget.TextView tvTimerInstr
private android.widget.TextView tvRetry
private android.widget.TextView tvCancel
private java.lang.String zoopAssistiveModeState
private android.support.v7.widget.CardView cvAssitiveModeView
public static XmlAssistModeFragment newInstance(java.lang.String qtTransactionId, java.lang.String qtEnvironment, java.lang.String qtRegisteredEmail, java.lang.String qtRegisteredMobile, java.lang.String qtUid)
qtEnvironment
- environment type: preprod or prod.qtRegisteredEmail
- registered email to be verifiedqtRegisteredMobile
- registered phone to be verifiedqtUid
- aadhaar number/vidpublic static void clearCookies(android.content.Context context)
public static boolean validateAadhaarAndVid(java.lang.String aadharNumber)
aadharNumber
- aadhaarnumber or vidpublic android.view.View onCreateView(@NonNull android.view.LayoutInflater inflater, android.view.ViewGroup container, android.os.Bundle savedInstanceState)
onCreateView
in class android.support.v4.app.Fragment
public void onCreate(android.os.Bundle savedInstanceState)
onCreate
in class android.support.v4.app.Fragment
public void initialiseUidaiView(android.view.View uidaiView)
uidaiView
- fragment_zoop_webview_v2 layoutpublic void onOTPTimesUp(java.lang.String timesupEvent)
timesupEvent
- to retry(OTP_RETRY) or cancel(OTP_CANCEL)public void onEditTextChangeEvent(java.lang.CharSequence charSequence)
charSequence
- charsequence entered in EditText etInputTextprivate void submitData()
private void redirectToUidai()
public void onApiErrorResult(org.json.JSONObject error)
ApiResultContainer
onApiErrorResult
in interface ApiResultContainer
error
- json error responsepublic void onApiSuccessResult(org.json.JSONObject parsedXmlJson)
ApiResultContainer
onApiSuccessResult
in interface ApiResultContainer
parsedXmlJson
- json success responsepublic void onApiSuccessResult(org.json.JSONObject success, java.lang.String UID)
ApiResultContainer
onApiSuccessResult
in interface ApiResultContainer
success
- json success responseUID
- aadhaar number/VIDpublic void onDestroy()
onDestroy
in class android.support.v4.app.Fragment
public void onAttach(android.content.Context context)
onAttach
in class android.support.v4.app.Fragment
public void onDetach()
onDetach
in class android.support.v4.app.Fragment
public void onXmlDownloadFinished(java.lang.String shareCode, java.lang.String qtEnv)
XmlEventListener
onXmlDownloadFinished
in interface XmlEventListener
shareCode
- password to unlock the xml fileqtEnv
- environment: preprod or prodprivate void onShareCodeView()
public void onRequestOTP(java.lang.String uid, int postCounter)
XmlEventListener
onRequestOTP
in interface XmlEventListener
uid
- aadhaar number/vid entered on uidai portalpostCounter
- post request counter updated from webview intercept request methodpublic void hideKeyboard()
public void showKeyboard()
public java.lang.String checkDigit(int number)
number
- current number in timerpublic void downloadZip(java.lang.String url_str, java.lang.String userAgent, java.lang.String contentDisposition, java.lang.String mimeType, java.lang.String otp, java.lang.String zipcode)
url_str
- "https://resident.uidai.gov.in/offline-kyc";contentDisposition
- "application/x-www-form-urlencoded"mimeType
- application/zipotp
- otp entered on webpagezipcode
- sharecode entered on webpageprivate void editTextMaxLength(int maxLength)
public void qtSendResponseToUser(java.lang.String response, int resultType)
private java.lang.String getQuery(java.util.List<java.util.AbstractMap.SimpleEntry> params) throws java.io.UnsupportedEncodingException
java.io.UnsupportedEncodingException
private void getToast(java.lang.String errorMessage)