Skip to content

Commit f7c7e0f

Browse files
committed
resolved conflict
2 parents ad54983 + f8944eb commit f7c7e0f

File tree

9 files changed

+560
-14
lines changed

9 files changed

+560
-14
lines changed

raveandroid/build.gradle

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -51,6 +51,7 @@ dependencies {
5151
testImplementation 'com.google.dagger:dagger:2.17'
5252
testAnnotationProcessor 'com.google.dagger:dagger-compiler:2.17'
5353
testImplementation 'org.mockito:mockito-core:2.25.0'
54+
testImplementation 'org.mockito:mockito-inline:2.13.0'
5455

5556

5657
}
Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
package com.flutterwave.raveandroid;
2+
3+
import javax.inject.Inject;
4+
import javax.inject.Singleton;
5+
6+
import static com.scottyab.aescrypt.AESCrypt.encrypt;
7+
8+
@Singleton
9+
public class GetEncryptedData {
10+
11+
@Inject
12+
public GetEncryptedData() {
13+
}
14+
15+
public String getEncryptedData(String unEncryptedString, String encryptionKey) {
16+
17+
if (unEncryptedString != null && encryptionKey != null) {
18+
try {
19+
return encrypt(unEncryptedString, encryptionKey);
20+
} catch (Exception e) {
21+
e.printStackTrace();
22+
}
23+
}
24+
return "";
25+
}
26+
27+
}
Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
package com.flutterwave.raveandroid;
2+
3+
import com.google.gson.Gson;
4+
import com.google.gson.reflect.TypeToken;
5+
6+
import java.lang.reflect.Type;
7+
8+
import javax.inject.Inject;
9+
import javax.inject.Singleton;
10+
11+
@Singleton
12+
public class PayloadToJson {
13+
14+
public Gson gson;
15+
16+
@Inject
17+
public PayloadToJson(Gson gson) {
18+
this.gson = gson;
19+
}
20+
21+
public String convertChargeRequestPayloadToJson(Payload body) {
22+
23+
Type type = new TypeToken<Payload>() {
24+
}.getType();
25+
return gson.toJson(body, type);
26+
}
27+
28+
}

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

Lines changed: 16 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -2,13 +2,14 @@
22

33
import android.content.Context;
44

5+
import com.flutterwave.raveandroid.DeviceIdGetter;
6+
import com.flutterwave.raveandroid.GetEncryptedData;
57
import com.flutterwave.raveandroid.Payload;
68
import com.flutterwave.raveandroid.PayloadBuilder;
7-
import com.flutterwave.raveandroid.R;
9+
import com.flutterwave.raveandroid.PayloadToJson;
810
import com.flutterwave.raveandroid.RaveConstants;
911
import com.flutterwave.raveandroid.RavePayInitializer;
1012
import com.flutterwave.raveandroid.TransactionStatusChecker;
11-
import com.flutterwave.raveandroid.Utils;
1213
import com.flutterwave.raveandroid.card.ChargeRequestBody;
1314
import com.flutterwave.raveandroid.data.Callbacks;
1415
import com.flutterwave.raveandroid.data.NetworkRequestImpl;
@@ -23,7 +24,7 @@
2324

2425
public class AchPresenter implements AchContract.UserActionsListener {
2526

26-
private Context context;
27+
Context context;
2728
private AchContract.View mView;
2829

2930
@Inject
@@ -35,6 +36,12 @@ public class AchPresenter implements AchContract.UserActionsListener {
3536
NetworkRequestImpl networkRequest;
3637
@Inject
3738
TransactionStatusChecker transactionStatusChecker;
39+
@Inject
40+
DeviceIdGetter deviceIdGetter;
41+
@Inject
42+
PayloadToJson payloadToJson;
43+
@Inject
44+
GetEncryptedData getEncryptedData;
3845

3946
@Inject
4047
public AchPresenter(Context context, AchContract.View mView) {
@@ -69,7 +76,7 @@ public void onPayButtonClicked(RavePayInitializer ravePayInitializer, String amo
6976
if (isAmountValid) {
7077
mView.onValidationSuccessful(amount);
7178
} else {
72-
mView.showAmountError(context.getResources().getString(R.string.validAmountPrompt));
79+
mView.showAmountError(RaveConstants.validAmountPrompt);
7380
}
7481

7582
}
@@ -85,12 +92,12 @@ public void processTransaction(String amount, RavePayInitializer ravePayInitiali
8592
.setEmail(ravePayInitializer.getEmail())
8693
.setFirstname(ravePayInitializer.getfName())
8794
.setLastname(ravePayInitializer.getlName())
88-
.setIP(Utils.getDeviceImei(context))
95+
.setIP(deviceIdGetter.getDeviceId())
8996
.setTxRef(ravePayInitializer.getTxRef())
9097
.setMeta(ravePayInitializer.getMeta())
9198
.setPBFPubKey(ravePayInitializer.getPublicKey())
9299
.setIsUsBankCharge(ravePayInitializer.isWithAch())
93-
.setDevice_fingerprint(Utils.getDeviceImei(context));
100+
.setDevice_fingerprint(deviceIdGetter.getDeviceId());
94101

95102
if (ravePayInitializer.getPayment_plan() != null) {
96103
builder.setPaymentPlan(ravePayInitializer.getPayment_plan());
@@ -105,8 +112,8 @@ public void processTransaction(String amount, RavePayInitializer ravePayInitiali
105112
@Override
106113
public void chargeAccount(Payload payload, String encryptionKey, final boolean isDisplayFee) {
107114

108-
String requestBodyAsString = Utils.convertChargeRequestPayloadToJson(payload);
109-
String accountRequestBody = Utils.getEncryptedData(requestBodyAsString, encryptionKey);
115+
String requestBodyAsString = payloadToJson.convertChargeRequestPayloadToJson(payload);
116+
String accountRequestBody = getEncryptedData.getEncryptedData(requestBodyAsString, encryptionKey);
110117

111118
final ChargeRequestBody body = new ChargeRequestBody();
112119
body.setAlg("3DES-24");
@@ -139,7 +146,7 @@ public void onSuccess(ChargeResponse response, String responseAsJSONString) {
139146
}
140147
}
141148
else {
142-
mView.onPaymentError(context.getResources().getString(R.string.no_authurl_was_returnedmsg));
149+
mView.onPaymentError(RaveConstants.no_authurl_was_returnedmsg);
143150
}
144151

145152
}

raveandroid/src/main/java/com/flutterwave/raveandroid/data/SharedPrefsRequestImpl.java

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -13,18 +13,16 @@
1313
import java.util.List;
1414

1515
import javax.inject.Inject;
16-
import javax.inject.Singleton;
1716

1817
import static com.flutterwave.raveandroid.RaveConstants.RAVEPAY;
1918

2019
/**
2120
* Created by hamzafetuga on 25/07/2017.
2221
*/
2322

24-
@Singleton
2523
public class SharedPrefsRequestImpl implements DataRequest.SharedPrefsRequest {
2624

27-
Context context;
25+
public Context context;
2826
SharedPreferences sharedPreferences;
2927
SharedPreferences.Editor editor;
3028
String FLW_REF_KEY = "flw_ref_key";
@@ -81,7 +79,6 @@ public List<SavedCard> getSavedCards(String email) {
8179
String json = sharedPreferences.getString("SAVED_CARDS" + email, "[]");
8280

8381
try {
84-
Gson gson = new Gson();
8582
Type type = new TypeToken<List<SavedCard>>() {
8683
}.getType();
8784
return gson.fromJson(json, type);

0 commit comments

Comments
 (0)