正在查看: Clash Legends v0.0.1 应用的 ValueAddedServiceTask.java JAVA 源代码文件
本页面展示 JAVA 反编译生成的源代码文件,支持语法高亮显示。 仅供安全研究与技术分析使用,严禁用于任何非法用途。请遵守相关法律法规。
正在查看: Clash Legends v0.0.1 应用的 ValueAddedServiceTask.java JAVA 源代码文件
本页面展示 JAVA 反编译生成的源代码文件,支持语法高亮显示。 仅供安全研究与技术分析使用,严禁用于任何非法用途。请遵守相关法律法规。
package com.payu.india.Tasks;
import android.os.AsyncTask;
import com.payu.india.Interfaces.ValueAddedServiceApiListener;
import com.payu.india.Model.CardStatus;
import com.payu.india.Model.PayuConfig;
import com.payu.india.Model.PayuResponse;
import com.payu.india.Model.PostData;
import com.payu.india.Payu.PayuConstants;
import com.payu.india.Payu.PayuErrors;
import com.payu.india.Payu.PayuUtils;
import java.io.IOException;
import java.io.InputStream;
import java.net.MalformedURLException;
import java.net.ProtocolException;
import java.net.URL;
import java.util.HashMap;
import java.util.Iterator;
import javax.net.ssl.HttpsURLConnection;
import kotlinx.coroutines.internal.LockFreeTaskQueueCore;
import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;
public class ValueAddedServiceTask extends AsyncTask<PayuConfig, String, PayuResponse> {
private ValueAddedServiceApiListener mValueAddedServiceApiListener;
public ValueAddedServiceTask(ValueAddedServiceApiListener valueAddedServiceApiListener) {
this.mValueAddedServiceApiListener = valueAddedServiceApiListener;
}
@Override
public PayuResponse doInBackground(PayuConfig... params) {
URL url;
PayuResponse payuResponse = new PayuResponse();
PostData postData = new PostData();
try {
PayuConfig payuConfig = params[0];
switch (payuConfig.getEnvironment()) {
case 0:
url = new URL("https://info.payu.in/merchant/postservice.php?form=2");
break;
case 1:
url = new URL("https://mobiletest.payu.in/merchant/postservice?form=2");
break;
case 2:
url = new URL(PayuConstants.TEST_FETCH_DATA_URL);
break;
case 3:
url = new URL(PayuConstants.MOBILE_DEV_FETCH_DATA_URL);
break;
case 4:
url = new URL(PayuConstants.BIZ_CHECKOUT_TEST_FETCH_DATA_URL);
break;
default:
url = new URL("https://info.payu.in/merchant/postservice.php?form=2");
break;
}
byte[] postParamsByte = payuConfig.getData().getBytes("UTF-8");
HttpsURLConnection conn = PayuUtils.getHttpsConn(url.toString(), payuConfig.getData());
if (conn != null) {
InputStream responseInputStream = conn.getInputStream();
StringBuffer responseStringBuffer = new StringBuffer();
byte[] byteContainer = new byte[LockFreeTaskQueueCore.MIN_ADD_SPIN_CAPACITY];
while (true) {
int i = responseInputStream.read(byteContainer);
if (i != -1) {
responseStringBuffer.append(new String(byteContainer, 0, i));
} else {
JSONObject response = new JSONObject(responseStringBuffer.toString());
postData.setResult("ERROR");
postData.setCode(PayuErrors.INVALID_HASH);
if (response.has(PayuConstants.MSG)) {
postData.setResult(response.getString(PayuConstants.MSG));
}
if (response.has("netBankingStatus")) {
HashMap<String, Integer> netBankingStatus = new HashMap<>();
JSONObject netBanking = response.getJSONObject("netBankingStatus");
Iterator<String> keysIterator = netBanking.keys();
while (keysIterator.hasNext()) {
String bankCode = keysIterator.next();
netBankingStatus.put(bankCode, Integer.valueOf(netBanking.getJSONObject(bankCode).getInt("up_status")));
url = url;
payuConfig = payuConfig;
netBanking = netBanking;
}
payuResponse.setNetBankingDownStatus(netBankingStatus);
postData.setResult("SUCCESS");
postData.setCode(0);
postData.setStatus("SUCCESS");
}
if (response.has("issuingBankDownBins")) {
HashMap<String, CardStatus> issuingBankStatus = new HashMap<>();
JSONArray issuingBank = response.getJSONArray("issuingBankDownBins");
int length = issuingBank.length();
for (int i2 = 0; i2 < length; i2++) {
int j = 0;
int binArrayLength = issuingBank.getJSONObject(i2).getJSONArray("bins_arr").length();
while (j < binArrayLength) {
CardStatus cardStatus = new CardStatus();
cardStatus.setBankName(issuingBank.getJSONObject(i2).getString("title"));
cardStatus.setStatusCode(issuingBank.getJSONObject(i2).getInt("status"));
issuingBankStatus.put(issuingBank.getJSONObject(i2).getJSONArray("bins_arr").getString(j), cardStatus);
j++;
length = length;
postParamsByte = postParamsByte;
response = response;
}
}
payuResponse.setIssuingBankStatus(issuingBankStatus);
postData.setResult("SUCCESS");
postData.setCode(0);
postData.setStatus("SUCCESS");
}
}
}
}
} catch (MalformedURLException e) {
e = e;
e.printStackTrace();
payuResponse.setResponseStatus(postData);
return payuResponse;
} catch (ProtocolException e2) {
e = e2;
e.printStackTrace();
payuResponse.setResponseStatus(postData);
return payuResponse;
} catch (IOException e3) {
e = e3;
e.printStackTrace();
payuResponse.setResponseStatus(postData);
return payuResponse;
} catch (JSONException e4) {
e = e4;
e.printStackTrace();
payuResponse.setResponseStatus(postData);
return payuResponse;
}
payuResponse.setResponseStatus(postData);
return payuResponse;
}
@Override
public void onPostExecute(PayuResponse payuResponse) {
super.onPostExecute((ValueAddedServiceTask) payuResponse);
this.mValueAddedServiceApiListener.onValueAddedServiceApiResponse(payuResponse);
}
}