正在查看: CallApp v2.226 应用的 UrlProvider.java JAVA 源代码文件
本页面展示 JAVA 反编译生成的源代码文件,支持语法高亮显示。 仅供安全研究与技术分析使用,严禁用于任何非法用途。请遵守相关法律法规。
正在查看: CallApp v2.226 应用的 UrlProvider.java JAVA 源代码文件
本页面展示 JAVA 反编译生成的源代码文件,支持语法高亮显示。 仅供安全研究与技术分析使用,严禁用于任何非法用途。请遵守相关法律法规。
package io.bidmachine;
import android.net.Uri;
import android.text.TextUtils;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import io.bidmachine.core.Logger;
import io.bidmachine.core.Utils;
import io.bidmachine.utils.lazy.LazyValue;
import java.util.Collection;
import java.util.Queue;
import java.util.concurrent.ConcurrentLinkedQueue;
public class UrlProvider {
@NonNull
private static final String PATH_AUCTION = "auction";
@NonNull
private static final String PATH_INIT = "init";
@NonNull
private static final String PATH_RTB = "rtb";
@NonNull
private static final String PATH_V3 = "v3";
@Nullable
private static String auctionUrlFromInit;
@Nullable
private static String auctionUrlFromSuccessRequest;
@NonNull
private static final String DEF_BASE_URL = "https://api.bidmachine.io";
@NonNull
private static final String[] DEF_BASE_URLS = {DEF_BASE_URL, "https://x.everestop.io", "https://x.blueduckredapple.com", "https://x.thecatmachine.com"};
@NonNull
private static final Queue<String> INIT_URL_QUEUE = new ConcurrentLinkedQueue();
@NonNull
private static final Queue<String> AUCTION_URL_QUEUE = new ConcurrentLinkedQueue();
public class a extends ConcurrentLinkedQueue {
public a() {
add(UrlProvider.auctionUrlFromInit);
}
}
public class b extends ConcurrentLinkedQueue {
public b() {
add(UrlProvider.auctionUrlFromSuccessRequest);
}
}
static {
setupUrls();
}
@NonNull
private static String createAuctionUrl(@NonNull Uri uri) {
return uri.buildUpon().appendPath(PATH_AUCTION).appendPath(PATH_RTB).appendPath(PATH_V3).toString();
}
@NonNull
private static String createInitUrl(@NonNull Uri uri) {
return uri.buildUpon().appendPath(PATH_AUCTION).appendPath(PATH_INIT).toString();
}
@NonNull
public static Queue<String> getAuctionUrlQueue() {
return !TextUtils.isEmpty(auctionUrlFromInit) ? new a() : !TextUtils.isEmpty(auctionUrlFromSuccessRequest) ? new b() : new ConcurrentLinkedQueue(AUCTION_URL_QUEUE);
}
@NonNull
public static Queue<String> getInitUrlQueue() {
return new ConcurrentLinkedQueue(INIT_URL_QUEUE);
}
public static String lambda$setEndpoint$0(String str) {
return a1.d0.C("Endpoint has an invalid format - ", str);
}
public static void reset() {
setupUrls();
auctionUrlFromInit = null;
auctionUrlFromSuccessRequest = null;
}
public static void setAuctionUrl(@NonNull String str) {
if (TextUtils.isEmpty(str)) {
return;
}
Queue<String> queue = AUCTION_URL_QUEUE;
queue.clear();
queue.add(str);
}
public static synchronized void setAuctionUrlFromInit(@NonNull String str) {
synchronized (UrlProvider.class) {
if (TextUtils.isEmpty(str)) {
return;
}
auctionUrlFromInit = str;
}
}
public static void setAuctionUrlFromSuccessRequest(@NonNull String str) {
if (auctionUrlFromSuccessRequest != null || TextUtils.isEmpty(str)) {
return;
}
auctionUrlFromSuccessRequest = str;
}
public static void setEndpoint(@NonNull String str) {
if (!Utils.isUrlValid(str)) {
Logger.e((LazyValue<String>) new com.facebook.p(str, 20));
} else {
if (d0.get().isInitializationStarted()) {
Logger.e("Can't change endpoint url after initialization");
return;
}
Uri parse = Uri.parse(str);
setInitUrl(createInitUrl(parse));
setAuctionUrl(createAuctionUrl(parse));
}
}
public static void setInitUrl(@NonNull String str) {
if (TextUtils.isEmpty(str)) {
return;
}
Queue<String> queue = INIT_URL_QUEUE;
queue.clear();
queue.add(str);
}
private static void setupAuctionUrls(@NonNull Collection<String> collection, @NonNull String[] strArr) {
collection.clear();
for (String str : strArr) {
collection.add(createAuctionUrl(Uri.parse(str)));
}
}
private static void setupInitUrls(@NonNull Collection<String> collection, @NonNull String[] strArr) {
collection.clear();
for (String str : strArr) {
collection.add(createInitUrl(Uri.parse(str)));
}
}
public static void setupUrls() {
Queue<String> queue = INIT_URL_QUEUE;
String[] strArr = DEF_BASE_URLS;
setupInitUrls(queue, strArr);
setupAuctionUrls(AUCTION_URL_QUEUE, strArr);
}
}