Skip to content

Commit 61010f1

Browse files
committed
refactor of codes and validation updates
1 parent f58615d commit 61010f1

File tree

15 files changed

+124
-86
lines changed

15 files changed

+124
-86
lines changed

raveandroid/src/main/java/com/flutterwave/raveandroid/account/AccountContract.java

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,6 @@
11
package com.flutterwave.raveandroid.account;
22

33

4-
import android.app.Activity;
5-
64
import com.flutterwave.raveandroid.Payload;
75
import com.flutterwave.raveandroid.RavePayInitializer;
86
import com.flutterwave.raveandroid.ViewObject;
@@ -57,11 +55,11 @@ interface View {
5755

5856
void onAmountValidated(String amountToSet, int visibility);
5957

60-
void showDateOfBirth(int whatToShow);
58+
void showDateOfBirth(int isVisible);
6159

62-
void showBVN(int whatToShow);
60+
void showBVN(int isVisible);
6361

64-
void showInternetBankingSelected(int whatToShow);
62+
void showInternetBankingSelected(int isVisible);
6563
}
6664

6765
interface UserActionsListener {

raveandroid/src/main/java/com/flutterwave/raveandroid/account/AccountFragment.java

Lines changed: 16 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,6 @@
3030
import com.flutterwave.raveandroid.R;
3131
import com.flutterwave.raveandroid.RavePayActivity;
3232
import com.flutterwave.raveandroid.RavePayInitializer;
33-
import com.flutterwave.raveandroid.Utils;
3433
import com.flutterwave.raveandroid.VerificationActivity;
3534
import com.flutterwave.raveandroid.ViewObject;
3635
import com.flutterwave.raveandroid.WebFragment;
@@ -42,8 +41,14 @@
4241
import java.util.HashMap;
4342
import java.util.List;
4443

45-
import static android.view.View.GONE;
46-
import static com.flutterwave.raveandroid.RaveConstants.*;
44+
import static com.flutterwave.raveandroid.RaveConstants.fieldAccount;
45+
import static com.flutterwave.raveandroid.RaveConstants.fieldAmount;
46+
import static com.flutterwave.raveandroid.RaveConstants.fieldBVN;
47+
import static com.flutterwave.raveandroid.RaveConstants.fieldBankCode;
48+
import static com.flutterwave.raveandroid.RaveConstants.fieldDOB;
49+
import static com.flutterwave.raveandroid.RaveConstants.fieldEmail;
50+
import static com.flutterwave.raveandroid.RaveConstants.fieldPhone;
51+
import static com.flutterwave.raveandroid.RaveConstants.isInternetBanking;
4752

4853

4954
/**
@@ -95,12 +100,12 @@ public View onCreateView(LayoutInflater inflater, ViewGroup container,
95100

96101
initializeViews();
97102

103+
pcidss_tv.setMovementMethod(LinkMovementMethod.getInstance());
104+
98105
setListeners();
99106

100107
initializePresenter();
101108

102-
pcidss_tv.setMovementMethod(LinkMovementMethod.getInstance());
103-
104109
return v;
105110
}
106111

@@ -205,12 +210,7 @@ private void collectData() {
205210
dataHashMap.put(fieldAmount, new ViewObject(amountTil.getId(), amountEt.getText().toString(), TextInputLayout.class));
206211

207212
if (accountNumberTil.getVisibility() == View.VISIBLE) {
208-
if (accountNumberEt.getText().toString().length() != 10) {
209-
dataHashMap.put(fieldAccount, new ViewObject(accountNumberTil.getId(), "", TextInputLayout.class));
210-
}
211-
else{
212213
dataHashMap.put(fieldAccount, new ViewObject(accountNumberTil.getId(), accountNumberEt.getText().toString(), TextInputLayout.class));
213-
}
214214
}
215215

216216
presenter.onDataCollected(dataHashMap);
@@ -223,18 +223,18 @@ public void showToast(String message) {
223223
}
224224

225225
@Override
226-
public void showInternetBankingSelected(int whatToShow) {
227-
accountNumberTil.setVisibility(whatToShow);
226+
public void showInternetBankingSelected(int isVisible) {
227+
accountNumberTil.setVisibility(isVisible);
228228
}
229229

230230
@Override
231-
public void showDateOfBirth(int whatToShow) {
232-
dateOfBirthEt.setVisibility(whatToShow);
231+
public void showDateOfBirth(int isVisible) {
232+
dateOfBirthEt.setVisibility(isVisible);
233233
}
234234

235235
@Override
236-
public void showBVN(int whatToShow) {
237-
rave_bvnTil.setVisibility(whatToShow);
236+
public void showBVN(int isVisible) {
237+
rave_bvnTil.setVisibility(isVisible);
238238
}
239239

240240
@Override

raveandroid/src/main/java/com/flutterwave/raveandroid/account/AccountPresenter.java

Lines changed: 0 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -294,19 +294,6 @@ public void onDataCollected(HashMap<String, ViewObject> dataHashMap) {
294294
account = defaultAccounNumber;
295295
}
296296

297-
try {
298-
double amnt = Double.parseDouble(amount);
299-
300-
if (amnt <= 0) {
301-
valid = false;
302-
mView.showToast(validAmountPrompt);
303-
}
304-
} catch (Exception e) {
305-
e.printStackTrace();
306-
valid = false;
307-
mView.showToast(validAmountPrompt);
308-
}
309-
310297
if (valid){
311298
mView.onValidationSuccessful(dataHashMap);
312299
}

raveandroid/src/main/java/com/flutterwave/raveandroid/account/NullAccountView.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -117,17 +117,17 @@ public void onAmountValidated(String amountToSet, int visibility) {
117117
}
118118

119119
@Override
120-
public void showDateOfBirth(int whatToShow) {
120+
public void showDateOfBirth(int isVisible) {
121121

122122
}
123123

124124
@Override
125-
public void showBVN(int whatToShow) {
125+
public void showBVN(int isVisible) {
126126

127127
}
128128

129129
@Override
130-
public void showInternetBankingSelected(int whatToShow) {
130+
public void showInternetBankingSelected(int isVisible) {
131131

132132
}
133133
}

raveandroid/src/main/java/com/flutterwave/raveandroid/ach/AchContract.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ interface View {
2929
}
3030

3131
interface UserActionsListener {
32-
void onStartAchPayment(RavePayInitializer ravePayInitializer);
32+
void init(RavePayInitializer ravePayInitializer);
3333

3434
void onPayButtonClicked(RavePayInitializer ravePayInitializer, String amount);
3535

raveandroid/src/main/java/com/flutterwave/raveandroid/ach/AchFragment.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,7 @@ public View onCreateView(LayoutInflater inflater, ViewGroup container,
5252

5353
initializeRavePay();
5454

55-
presenter.onStartAchPayment(ravePayInitializer);
55+
presenter.init(ravePayInitializer);
5656

5757
setListeners();
5858

raveandroid/src/main/java/com/flutterwave/raveandroid/ach/AchPresenter.java

Lines changed: 11 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -33,16 +33,18 @@ public AchPresenter(Context context, AchContract.View mView) {
3333
}
3434

3535
@Override
36-
public void onStartAchPayment(RavePayInitializer ravePayInitializer) {
36+
public void init(RavePayInitializer ravePayInitializer) {
3737

38-
boolean isAmountValid = amountValidator.isAmountValid(ravePayInitializer.getAmount());
39-
if (isAmountValid){
40-
mView.showAmountField(false);
41-
mView.showRedirectMessage(true);
42-
}
43-
else {
44-
mView.showAmountField(true);
45-
mView.showRedirectMessage(false);
38+
if (ravePayInitializer != null) {
39+
40+
boolean isAmountValid = amountValidator.isAmountValid(ravePayInitializer.getAmount());
41+
if (isAmountValid) {
42+
mView.showAmountField(false);
43+
mView.showRedirectMessage(true);
44+
} else {
45+
mView.showAmountField(true);
46+
mView.showRedirectMessage(false);
47+
}
4648
}
4749

4850
}

raveandroid/src/main/java/com/flutterwave/raveandroid/card/CardFragment.java

Lines changed: 18 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,6 @@
2929
import com.flutterwave.raveandroid.PayloadBuilder;
3030
import com.flutterwave.raveandroid.PinFragment;
3131
import com.flutterwave.raveandroid.R;
32-
import com.flutterwave.raveandroid.RaveConstants;
3332
import com.flutterwave.raveandroid.RavePayActivity;
3433
import com.flutterwave.raveandroid.RavePayInitializer;
3534
import com.flutterwave.raveandroid.Utils;
@@ -46,7 +45,15 @@
4645
import java.util.HashMap;
4746
import java.util.List;
4847

49-
import static com.flutterwave.raveandroid.RaveConstants.*;
48+
import static com.flutterwave.raveandroid.RaveConstants.MANUAL_CARD_CHARGE;
49+
import static com.flutterwave.raveandroid.RaveConstants.NOAUTH_INTERNATIONAL;
50+
import static com.flutterwave.raveandroid.RaveConstants.PIN;
51+
import static com.flutterwave.raveandroid.RaveConstants.TOKEN_CHARGE;
52+
import static com.flutterwave.raveandroid.RaveConstants.fieldAmount;
53+
import static com.flutterwave.raveandroid.RaveConstants.fieldCardExpiry;
54+
import static com.flutterwave.raveandroid.RaveConstants.fieldCvv;
55+
import static com.flutterwave.raveandroid.RaveConstants.fieldEmail;
56+
import static com.flutterwave.raveandroid.RaveConstants.fieldcardNoStripped;
5057

5158

5259
/**
@@ -88,16 +95,12 @@ public class CardFragment extends Fragment implements View.OnClickListener, Card
8895
public static final String INTENT_SENDER = "cardFrag";
8996

9097

91-
public CardFragment() {
92-
// Required empty public constructor
93-
}
94-
9598
@Override
9699
public View onCreateView(LayoutInflater inflater, ViewGroup container,
97100
Bundle savedInstanceState) {
101+
98102
presenter = new CardPresenter(getActivity(), this);
99103

100-
// Inflate the layout for this v
101104
v = inflater.inflate(R.layout.fragment_card, container, false);
102105

103106
initializeViews();
@@ -106,13 +109,18 @@ public View onCreateView(LayoutInflater inflater, ViewGroup container,
106109

107110
setListeners();
108111

109-
ravePayInitializer = ((RavePayActivity) getActivity()).getRavePayInitializer();
110-
111-
presenter.init(ravePayInitializer);
112+
initializePresenter();
112113

113114
return v;
114115
}
115116

117+
private void initializePresenter() {
118+
if (getActivity() != null) {
119+
ravePayInitializer = ((RavePayActivity) getActivity()).getRavePayInitializer();
120+
presenter.init(ravePayInitializer);
121+
}
122+
}
123+
116124
private void setListeners() {
117125
cardExpiryTv.addTextChangedListener(new ExpiryWatcher());
118126
savedCardBtn.setOnClickListener(this);

raveandroid/src/main/java/com/flutterwave/raveandroid/ghmobilemoney/GhMobileMoneyFragment.java

Lines changed: 13 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -59,19 +59,28 @@ public class GhMobileMoneyFragment extends Fragment implements GhMobileMoneyCont
5959
public View onCreateView(LayoutInflater inflater, ViewGroup container,
6060
Bundle savedInstanceState) {
6161

62-
v = inflater.inflate(R.layout.fragment_gh_mobile_money, container, false);
62+
presenter = new GhMobileMoneyPresenter(getActivity(), this);
6363

64-
initilaizeViews();
64+
v = inflater.inflate(R.layout.fragment_gh_mobile_money, container, false);
6565

66-
presenter.init(ravePayInitializer);
66+
initializeViews();
6767

6868
setUpNetworks();
6969

7070
setListeners();
7171

72+
initializePresenter();
73+
7274
return v;
7375
}
7476

77+
private void initializePresenter() {
78+
if (getActivity() != null) {
79+
ravePayInitializer = ((RavePayActivity) getActivity()).getRavePayInitializer();
80+
presenter.init(ravePayInitializer);
81+
}
82+
}
83+
7584
private void setListeners() {
7685
payButton.setOnClickListener(this);
7786
}
@@ -131,9 +140,7 @@ public void onNothingSelected(AdapterView<?> parent) {
131140
});
132141
}
133142

134-
private void initilaizeViews() {
135-
ravePayInitializer = ((RavePayActivity) getActivity()).getRavePayInitializer();
136-
presenter = new GhMobileMoneyPresenter(getActivity(), this);
143+
private void initializeViews() {
137144
networkSpinner = v.findViewById(R.id.rave_networkSpinner);
138145
instructionsTv = v.findViewById(R.id.instructionsTv);
139146
voucherTil = v.findViewById(R.id.rave_voucherTil);

raveandroid/src/main/java/com/flutterwave/raveandroid/mpesa/MpesaFragment.java

Lines changed: 5 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,9 @@
2626
import java.util.HashMap;
2727

2828
import static android.view.View.GONE;
29-
import static com.flutterwave.raveandroid.RaveConstants.*;
29+
import static com.flutterwave.raveandroid.RaveConstants.fieldAmount;
30+
import static com.flutterwave.raveandroid.RaveConstants.fieldPhone;
31+
import static com.flutterwave.raveandroid.RaveConstants.response;
3032

3133
/**
3234
* A simple {@link Fragment} subclass.
@@ -46,16 +48,13 @@ public class MpesaFragment extends Fragment implements MpesaContract.View, View.
4648
private int rave_phoneEtInt;
4749
private RavePayInitializer ravePayInitializer;
4850

49-
public MpesaFragment() {
50-
// Required empty public constructor
51-
}
52-
5351

5452
@Override
5553
public View onCreateView(LayoutInflater inflater, ViewGroup container,
5654
Bundle savedInstanceState) {
5755

58-
// Inflate the layout for this v
56+
presenter = new MpesaPresenter(getActivity(), this);
57+
5958
v = inflater.inflate(R.layout.fragment_mpesa, container, false);
6059

6160
initializeViews();
@@ -108,7 +107,6 @@ private void collectData() {
108107
private void initializeViews() {
109108
amountEt = v.findViewById(R.id.rave_amountTV);
110109
rave_phoneEtInt = amountEt.getId();
111-
presenter = new MpesaPresenter(getActivity(), this);
112110
payButton = v.findViewById(R.id.rave_payButton);
113111
amountTil = v.findViewById(R.id.rave_amountTil);
114112
phoneTil = v.findViewById(R.id.rave_phoneTil);

0 commit comments

Comments
 (0)