Files
Daniel Elliott c080f0d97f Add Discord community version (64-bit only)
- Added realracing3-community.apk (71.57 MB)
- Removed 32-bit support (armeabi-v7a)
- Only includes arm64-v8a libraries
- Decompiled source code included
- Added README-community.md with analysis
2026-02-18 15:48:36 -08:00

130 lines
4.4 KiB
Java

package com.amazonaws.util;
import androidx.webkit.ProxyConfig;
import com.amazonaws.Request;
import com.amazonaws.http.HttpMethodName;
import com.ironsource.v8;
import java.io.UnsupportedEncodingException;
import java.net.URI;
import java.net.URLEncoder;
import java.util.Map;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
/* loaded from: classes.dex */
public abstract class HttpUtils {
public static final Pattern DECODED_CHARACTERS_PATTERN;
public static final Pattern ENCODED_CHARACTERS_PATTERN = Pattern.compile(Pattern.quote("+") + "|" + Pattern.quote(ProxyConfig.MATCH_ALL_SCHEMES) + "|" + Pattern.quote("%7E") + "|" + Pattern.quote("%2F"));
static {
StringBuilder sb = new StringBuilder();
sb.append(Pattern.quote("%2A"));
sb.append("|");
sb.append(Pattern.quote("%2B"));
sb.append("|");
DECODED_CHARACTERS_PATTERN = Pattern.compile(sb.toString());
}
public static String urlEncode(String str, boolean z) {
if (str == null) {
return "";
}
try {
String encode = URLEncoder.encode(str, "UTF-8");
Matcher matcher = ENCODED_CHARACTERS_PATTERN.matcher(encode);
StringBuffer stringBuffer = new StringBuffer(encode.length());
while (matcher.find()) {
String group = matcher.group(0);
if ("+".equals(group)) {
group = "%20";
} else if (ProxyConfig.MATCH_ALL_SCHEMES.equals(group)) {
group = "%2A";
} else if ("%7E".equals(group)) {
group = "~";
} else if (z && "%2F".equals(group)) {
group = "/";
}
matcher.appendReplacement(stringBuffer, group);
}
matcher.appendTail(stringBuffer);
return stringBuffer.toString();
} catch (UnsupportedEncodingException e) {
throw new RuntimeException(e);
}
}
public static boolean isUsingNonDefaultPort(URI uri) {
String lowerCase = StringUtils.lowerCase(uri.getScheme());
int port = uri.getPort();
if (port <= 0) {
return false;
}
if ("http".equals(lowerCase) && port == 80) {
return false;
}
return ("https".equals(lowerCase) && port == 443) ? false : true;
}
public static boolean usePayloadForQueryParameters(Request request) {
return HttpMethodName.POST.equals(request.getHttpMethod()) && (request.getContent() == null);
}
public static String encodeParameters(Request request) {
if (request.getParameters().isEmpty()) {
return null;
}
StringBuilder sb = new StringBuilder();
try {
boolean z = true;
for (Map.Entry entry : request.getParameters().entrySet()) {
String encode = URLEncoder.encode((String) entry.getKey(), "UTF-8");
String str = (String) entry.getValue();
String encode2 = str == null ? "" : URLEncoder.encode(str, "UTF-8");
if (z) {
z = false;
} else {
sb.append(v8.i.c);
}
sb.append(encode);
sb.append(v8.i.b);
sb.append(encode2);
}
return sb.toString();
} catch (UnsupportedEncodingException e) {
throw new IllegalArgumentException(e);
}
}
public static String appendUri(String str, String str2) {
return appendUri(str, str2, false);
}
public static String appendUri(String str, String str2, boolean z) {
if (str2 != null && str2.length() > 0) {
if (str2.startsWith("/")) {
if (str.endsWith("/")) {
str = str.substring(0, str.length() - 1);
}
} else if (!str.endsWith("/")) {
str = str + "/";
}
String urlEncode = urlEncode(str2, true);
if (z) {
urlEncode = urlEncode.replace("//", "/%2F");
}
return str + urlEncode;
}
if (str.endsWith("/")) {
return str;
}
return str + "/";
}
public static String appendUriEncoded(String str, String str2) {
if (str2 == null) {
return str;
}
return str + str2;
}
}