Skip to content

Commit d2a2a13

Browse files
Pass Device ID to BaseRequestBody via a constructor call.
Signed-off-by: Michael obi <michael@paystack.com>
1 parent 25acb9d commit d2a2a13

4 files changed

Lines changed: 11 additions & 13 deletions

File tree

paystack/src/main/java/co/paystack/android/TransactionManager.java

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44
import android.content.Intent;
55
import android.os.AsyncTask;
66
import android.os.CountDownTimer;
7+
import android.provider.Settings;
78
import android.util.Log;
89

910
import java.security.KeyManagementException;
@@ -83,8 +84,9 @@ private void initiate() throws ProcessingException {
8384
throw new ProcessingException();
8485
}
8586
setProcessingOn();
86-
chargeRequestBody = new ChargeRequestBody(charge);
87-
validateRequestBody = new ValidateRequestBody();
87+
String deviceId = "androidsdk_" + Settings.Secure.getString(activity.getContentResolver(), Settings.Secure.ANDROID_ID);
88+
chargeRequestBody = new ChargeRequestBody(charge, deviceId);
89+
validateRequestBody = new ValidateRequestBody(deviceId);
8890
}
8991

9092
void chargeCard(Activity activity, Charge charge, Paystack.TransactionCallback transactionCallback) {
Lines changed: 3 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,9 @@
11
package co.paystack.android.api.request;
22

3-
import android.provider.Settings;
4-
53
import com.google.gson.annotations.SerializedName;
64

75
import java.util.HashMap;
86

9-
import co.paystack.android.PaystackSdk;
10-
117
/**
128
* A base for all request bodies
139
*/
@@ -18,9 +14,9 @@ abstract class BaseRequestBody {
1814

1915
public abstract HashMap<String, String> getParamsHashMap();
2016

21-
void setDeviceId() {
22-
this.device = "androidsdk_" + Settings.Secure.getString(PaystackSdk.applicationContext.getContentResolver(),
23-
Settings.Secure.ANDROID_ID);
17+
protected BaseRequestBody(String deviceId) {
18+
this.device = deviceId;
2419
}
2520

21+
2622
}

paystack/src/main/java/co/paystack/android/api/request/ChargeRequestBody.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -72,8 +72,8 @@ public class ChargeRequestBody extends BaseRequestBody {
7272
private String plan;
7373
private HashMap<String, String> additionalParameters;
7474

75-
public ChargeRequestBody(Charge charge) {
76-
this.setDeviceId();
75+
public ChargeRequestBody(Charge charge, String deviceId) {
76+
super(deviceId);
7777
this.clientData = Crypto.encrypt(StringUtils.concatenateCardFields(charge.getCard()));
7878
this.last4 = charge.getCard().getLast4digits();
7979
this.public_key = PaystackSdk.getPublicKey();

paystack/src/main/java/co/paystack/android/api/request/ValidateRequestBody.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,8 +16,8 @@ public class ValidateRequestBody extends BaseRequestBody implements Serializable
1616
@SerializedName(FIELD_TOKEN)
1717
private String token;
1818

19-
public ValidateRequestBody() {
20-
this.setDeviceId();
19+
public ValidateRequestBody(String deviceId) {
20+
super(deviceId);
2121
}
2222

2323
private String getTrans() {

0 commit comments

Comments
 (0)