- Imported from https://github.com/supermegamestre/Project-Real-Resurrection-3 - APKTool decompilation (Smali bytecode) for modding and rebuilding APK - Supports both 32-bit (armeabi-v7a) and 64-bit (arm64-v8a) architectures - Includes full Smali source, resources, and native libraries - Ready to rebuild APK after modifications with apktool b command - Added comprehensive README-apktool.md with modding guide This branch complements the JADX branches: - Use JADX (main/discord-community) to UNDERSTAND code (readable Java) - Use APKTool (this branch) to MODIFY and REBUILD APK (editable Smali) Total: 44,417 files, 538.51 MB Smali source code
681 lines
18 KiB
Smali
681 lines
18 KiB
Smali
.class public abstract Lokhttp3/internal/http2/Hpack;
|
|
.super Ljava/lang/Object;
|
|
.source "SourceFile"
|
|
|
|
|
|
# annotations
|
|
.annotation system Ldalvik/annotation/MemberClasses;
|
|
value = {
|
|
Lokhttp3/internal/http2/Hpack$Writer;,
|
|
Lokhttp3/internal/http2/Hpack$Reader;
|
|
}
|
|
.end annotation
|
|
|
|
|
|
# static fields
|
|
.field public static final NAME_TO_FIRST_INDEX:Ljava/util/Map;
|
|
|
|
.field public static final STATIC_HEADER_TABLE:[Lokhttp3/internal/http2/Header;
|
|
|
|
|
|
# direct methods
|
|
.method static constructor <clinit>()V
|
|
.locals 65
|
|
|
|
.line 47
|
|
new-instance v1, Lokhttp3/internal/http2/Header;
|
|
|
|
move-object v0, v1
|
|
|
|
sget-object v2, Lokhttp3/internal/http2/Header;->TARGET_AUTHORITY:Lokio/ByteString;
|
|
|
|
const-string v15, ""
|
|
|
|
invoke-direct {v1, v2, v15}, Lokhttp3/internal/http2/Header;-><init>(Lokio/ByteString;Ljava/lang/String;)V
|
|
|
|
new-instance v2, Lokhttp3/internal/http2/Header;
|
|
|
|
move-object v1, v2
|
|
|
|
sget-object v3, Lokhttp3/internal/http2/Header;->TARGET_METHOD:Lokio/ByteString;
|
|
|
|
const-string v4, "GET"
|
|
|
|
invoke-direct {v2, v3, v4}, Lokhttp3/internal/http2/Header;-><init>(Lokio/ByteString;Ljava/lang/String;)V
|
|
|
|
new-instance v4, Lokhttp3/internal/http2/Header;
|
|
|
|
move-object v2, v4
|
|
|
|
const-string v5, "POST"
|
|
|
|
invoke-direct {v4, v3, v5}, Lokhttp3/internal/http2/Header;-><init>(Lokio/ByteString;Ljava/lang/String;)V
|
|
|
|
new-instance v4, Lokhttp3/internal/http2/Header;
|
|
|
|
move-object v3, v4
|
|
|
|
sget-object v5, Lokhttp3/internal/http2/Header;->TARGET_PATH:Lokio/ByteString;
|
|
|
|
const-string v6, "/"
|
|
|
|
invoke-direct {v4, v5, v6}, Lokhttp3/internal/http2/Header;-><init>(Lokio/ByteString;Ljava/lang/String;)V
|
|
|
|
new-instance v6, Lokhttp3/internal/http2/Header;
|
|
|
|
move-object v4, v6
|
|
|
|
const-string v7, "/index.html"
|
|
|
|
invoke-direct {v6, v5, v7}, Lokhttp3/internal/http2/Header;-><init>(Lokio/ByteString;Ljava/lang/String;)V
|
|
|
|
new-instance v6, Lokhttp3/internal/http2/Header;
|
|
|
|
move-object v5, v6
|
|
|
|
sget-object v7, Lokhttp3/internal/http2/Header;->TARGET_SCHEME:Lokio/ByteString;
|
|
|
|
const-string v8, "http"
|
|
|
|
invoke-direct {v6, v7, v8}, Lokhttp3/internal/http2/Header;-><init>(Lokio/ByteString;Ljava/lang/String;)V
|
|
|
|
new-instance v8, Lokhttp3/internal/http2/Header;
|
|
|
|
move-object v6, v8
|
|
|
|
const-string v9, "https"
|
|
|
|
invoke-direct {v8, v7, v9}, Lokhttp3/internal/http2/Header;-><init>(Lokio/ByteString;Ljava/lang/String;)V
|
|
|
|
new-instance v8, Lokhttp3/internal/http2/Header;
|
|
|
|
move-object v7, v8
|
|
|
|
sget-object v14, Lokhttp3/internal/http2/Header;->RESPONSE_STATUS:Lokio/ByteString;
|
|
|
|
const-string v9, "200"
|
|
|
|
invoke-direct {v8, v14, v9}, Lokhttp3/internal/http2/Header;-><init>(Lokio/ByteString;Ljava/lang/String;)V
|
|
|
|
new-instance v9, Lokhttp3/internal/http2/Header;
|
|
|
|
move-object v8, v9
|
|
|
|
const-string v10, "204"
|
|
|
|
invoke-direct {v9, v14, v10}, Lokhttp3/internal/http2/Header;-><init>(Lokio/ByteString;Ljava/lang/String;)V
|
|
|
|
new-instance v10, Lokhttp3/internal/http2/Header;
|
|
|
|
move-object v9, v10
|
|
|
|
const-string v11, "206"
|
|
|
|
invoke-direct {v10, v14, v11}, Lokhttp3/internal/http2/Header;-><init>(Lokio/ByteString;Ljava/lang/String;)V
|
|
|
|
new-instance v11, Lokhttp3/internal/http2/Header;
|
|
|
|
move-object v10, v11
|
|
|
|
const-string v12, "304"
|
|
|
|
invoke-direct {v11, v14, v12}, Lokhttp3/internal/http2/Header;-><init>(Lokio/ByteString;Ljava/lang/String;)V
|
|
|
|
new-instance v12, Lokhttp3/internal/http2/Header;
|
|
|
|
move-object v11, v12
|
|
|
|
const-string v13, "400"
|
|
|
|
invoke-direct {v12, v14, v13}, Lokhttp3/internal/http2/Header;-><init>(Lokio/ByteString;Ljava/lang/String;)V
|
|
|
|
new-instance v13, Lokhttp3/internal/http2/Header;
|
|
|
|
move-object v12, v13
|
|
|
|
move-object/from16 v61, v0
|
|
|
|
const-string v0, "404"
|
|
|
|
invoke-direct {v13, v14, v0}, Lokhttp3/internal/http2/Header;-><init>(Lokio/ByteString;Ljava/lang/String;)V
|
|
|
|
new-instance v0, Lokhttp3/internal/http2/Header;
|
|
|
|
move-object v13, v0
|
|
|
|
move-object/from16 v62, v1
|
|
|
|
const-string v1, "500"
|
|
|
|
invoke-direct {v0, v14, v1}, Lokhttp3/internal/http2/Header;-><init>(Lokio/ByteString;Ljava/lang/String;)V
|
|
|
|
new-instance v0, Lokhttp3/internal/http2/Header;
|
|
|
|
move-object v14, v0
|
|
|
|
const-string v1, "accept-charset"
|
|
|
|
invoke-direct {v0, v1, v15}, Lokhttp3/internal/http2/Header;-><init>(Ljava/lang/String;Ljava/lang/String;)V
|
|
|
|
new-instance v0, Lokhttp3/internal/http2/Header;
|
|
|
|
move-object v1, v15
|
|
|
|
move-object v15, v0
|
|
|
|
move-object/from16 v63, v2
|
|
|
|
const-string v2, "accept-encoding"
|
|
|
|
move-object/from16 v64, v3
|
|
|
|
const-string v3, "gzip, deflate"
|
|
|
|
invoke-direct {v0, v2, v3}, Lokhttp3/internal/http2/Header;-><init>(Ljava/lang/String;Ljava/lang/String;)V
|
|
|
|
new-instance v0, Lokhttp3/internal/http2/Header;
|
|
|
|
move-object/from16 v16, v0
|
|
|
|
const-string v2, "accept-language"
|
|
|
|
invoke-direct {v0, v2, v1}, Lokhttp3/internal/http2/Header;-><init>(Ljava/lang/String;Ljava/lang/String;)V
|
|
|
|
new-instance v0, Lokhttp3/internal/http2/Header;
|
|
|
|
move-object/from16 v17, v0
|
|
|
|
const-string v2, "accept-ranges"
|
|
|
|
invoke-direct {v0, v2, v1}, Lokhttp3/internal/http2/Header;-><init>(Ljava/lang/String;Ljava/lang/String;)V
|
|
|
|
new-instance v0, Lokhttp3/internal/http2/Header;
|
|
|
|
move-object/from16 v18, v0
|
|
|
|
const-string v2, "accept"
|
|
|
|
invoke-direct {v0, v2, v1}, Lokhttp3/internal/http2/Header;-><init>(Ljava/lang/String;Ljava/lang/String;)V
|
|
|
|
new-instance v0, Lokhttp3/internal/http2/Header;
|
|
|
|
move-object/from16 v19, v0
|
|
|
|
const-string v2, "access-control-allow-origin"
|
|
|
|
invoke-direct {v0, v2, v1}, Lokhttp3/internal/http2/Header;-><init>(Ljava/lang/String;Ljava/lang/String;)V
|
|
|
|
new-instance v0, Lokhttp3/internal/http2/Header;
|
|
|
|
move-object/from16 v20, v0
|
|
|
|
const-string v2, "age"
|
|
|
|
invoke-direct {v0, v2, v1}, Lokhttp3/internal/http2/Header;-><init>(Ljava/lang/String;Ljava/lang/String;)V
|
|
|
|
new-instance v0, Lokhttp3/internal/http2/Header;
|
|
|
|
move-object/from16 v21, v0
|
|
|
|
const-string v2, "allow"
|
|
|
|
invoke-direct {v0, v2, v1}, Lokhttp3/internal/http2/Header;-><init>(Ljava/lang/String;Ljava/lang/String;)V
|
|
|
|
new-instance v0, Lokhttp3/internal/http2/Header;
|
|
|
|
move-object/from16 v22, v0
|
|
|
|
const-string v2, "authorization"
|
|
|
|
invoke-direct {v0, v2, v1}, Lokhttp3/internal/http2/Header;-><init>(Ljava/lang/String;Ljava/lang/String;)V
|
|
|
|
new-instance v0, Lokhttp3/internal/http2/Header;
|
|
|
|
move-object/from16 v23, v0
|
|
|
|
const-string v2, "cache-control"
|
|
|
|
invoke-direct {v0, v2, v1}, Lokhttp3/internal/http2/Header;-><init>(Ljava/lang/String;Ljava/lang/String;)V
|
|
|
|
new-instance v0, Lokhttp3/internal/http2/Header;
|
|
|
|
move-object/from16 v24, v0
|
|
|
|
const-string v2, "content-disposition"
|
|
|
|
invoke-direct {v0, v2, v1}, Lokhttp3/internal/http2/Header;-><init>(Ljava/lang/String;Ljava/lang/String;)V
|
|
|
|
new-instance v0, Lokhttp3/internal/http2/Header;
|
|
|
|
move-object/from16 v25, v0
|
|
|
|
const-string v2, "content-encoding"
|
|
|
|
invoke-direct {v0, v2, v1}, Lokhttp3/internal/http2/Header;-><init>(Ljava/lang/String;Ljava/lang/String;)V
|
|
|
|
new-instance v0, Lokhttp3/internal/http2/Header;
|
|
|
|
move-object/from16 v26, v0
|
|
|
|
const-string v2, "content-language"
|
|
|
|
invoke-direct {v0, v2, v1}, Lokhttp3/internal/http2/Header;-><init>(Ljava/lang/String;Ljava/lang/String;)V
|
|
|
|
new-instance v0, Lokhttp3/internal/http2/Header;
|
|
|
|
move-object/from16 v27, v0
|
|
|
|
const-string v2, "content-length"
|
|
|
|
invoke-direct {v0, v2, v1}, Lokhttp3/internal/http2/Header;-><init>(Ljava/lang/String;Ljava/lang/String;)V
|
|
|
|
new-instance v0, Lokhttp3/internal/http2/Header;
|
|
|
|
move-object/from16 v28, v0
|
|
|
|
const-string v2, "content-location"
|
|
|
|
invoke-direct {v0, v2, v1}, Lokhttp3/internal/http2/Header;-><init>(Ljava/lang/String;Ljava/lang/String;)V
|
|
|
|
new-instance v0, Lokhttp3/internal/http2/Header;
|
|
|
|
move-object/from16 v29, v0
|
|
|
|
const-string v2, "content-range"
|
|
|
|
invoke-direct {v0, v2, v1}, Lokhttp3/internal/http2/Header;-><init>(Ljava/lang/String;Ljava/lang/String;)V
|
|
|
|
new-instance v0, Lokhttp3/internal/http2/Header;
|
|
|
|
move-object/from16 v30, v0
|
|
|
|
const-string v2, "content-type"
|
|
|
|
invoke-direct {v0, v2, v1}, Lokhttp3/internal/http2/Header;-><init>(Ljava/lang/String;Ljava/lang/String;)V
|
|
|
|
new-instance v0, Lokhttp3/internal/http2/Header;
|
|
|
|
move-object/from16 v31, v0
|
|
|
|
const-string v2, "cookie"
|
|
|
|
invoke-direct {v0, v2, v1}, Lokhttp3/internal/http2/Header;-><init>(Ljava/lang/String;Ljava/lang/String;)V
|
|
|
|
new-instance v0, Lokhttp3/internal/http2/Header;
|
|
|
|
move-object/from16 v32, v0
|
|
|
|
const-string v2, "date"
|
|
|
|
invoke-direct {v0, v2, v1}, Lokhttp3/internal/http2/Header;-><init>(Ljava/lang/String;Ljava/lang/String;)V
|
|
|
|
new-instance v0, Lokhttp3/internal/http2/Header;
|
|
|
|
move-object/from16 v33, v0
|
|
|
|
const-string v2, "etag"
|
|
|
|
invoke-direct {v0, v2, v1}, Lokhttp3/internal/http2/Header;-><init>(Ljava/lang/String;Ljava/lang/String;)V
|
|
|
|
new-instance v0, Lokhttp3/internal/http2/Header;
|
|
|
|
move-object/from16 v34, v0
|
|
|
|
const-string v2, "expect"
|
|
|
|
invoke-direct {v0, v2, v1}, Lokhttp3/internal/http2/Header;-><init>(Ljava/lang/String;Ljava/lang/String;)V
|
|
|
|
new-instance v0, Lokhttp3/internal/http2/Header;
|
|
|
|
move-object/from16 v35, v0
|
|
|
|
const-string v2, "expires"
|
|
|
|
invoke-direct {v0, v2, v1}, Lokhttp3/internal/http2/Header;-><init>(Ljava/lang/String;Ljava/lang/String;)V
|
|
|
|
new-instance v0, Lokhttp3/internal/http2/Header;
|
|
|
|
move-object/from16 v36, v0
|
|
|
|
const-string v2, "from"
|
|
|
|
invoke-direct {v0, v2, v1}, Lokhttp3/internal/http2/Header;-><init>(Ljava/lang/String;Ljava/lang/String;)V
|
|
|
|
new-instance v0, Lokhttp3/internal/http2/Header;
|
|
|
|
move-object/from16 v37, v0
|
|
|
|
const-string v2, "host"
|
|
|
|
invoke-direct {v0, v2, v1}, Lokhttp3/internal/http2/Header;-><init>(Ljava/lang/String;Ljava/lang/String;)V
|
|
|
|
new-instance v0, Lokhttp3/internal/http2/Header;
|
|
|
|
move-object/from16 v38, v0
|
|
|
|
const-string v2, "if-match"
|
|
|
|
invoke-direct {v0, v2, v1}, Lokhttp3/internal/http2/Header;-><init>(Ljava/lang/String;Ljava/lang/String;)V
|
|
|
|
new-instance v0, Lokhttp3/internal/http2/Header;
|
|
|
|
move-object/from16 v39, v0
|
|
|
|
const-string v2, "if-modified-since"
|
|
|
|
invoke-direct {v0, v2, v1}, Lokhttp3/internal/http2/Header;-><init>(Ljava/lang/String;Ljava/lang/String;)V
|
|
|
|
new-instance v0, Lokhttp3/internal/http2/Header;
|
|
|
|
move-object/from16 v40, v0
|
|
|
|
const-string v2, "if-none-match"
|
|
|
|
invoke-direct {v0, v2, v1}, Lokhttp3/internal/http2/Header;-><init>(Ljava/lang/String;Ljava/lang/String;)V
|
|
|
|
new-instance v0, Lokhttp3/internal/http2/Header;
|
|
|
|
move-object/from16 v41, v0
|
|
|
|
const-string v2, "if-range"
|
|
|
|
invoke-direct {v0, v2, v1}, Lokhttp3/internal/http2/Header;-><init>(Ljava/lang/String;Ljava/lang/String;)V
|
|
|
|
new-instance v0, Lokhttp3/internal/http2/Header;
|
|
|
|
move-object/from16 v42, v0
|
|
|
|
const-string v2, "if-unmodified-since"
|
|
|
|
invoke-direct {v0, v2, v1}, Lokhttp3/internal/http2/Header;-><init>(Ljava/lang/String;Ljava/lang/String;)V
|
|
|
|
new-instance v0, Lokhttp3/internal/http2/Header;
|
|
|
|
move-object/from16 v43, v0
|
|
|
|
const-string v2, "last-modified"
|
|
|
|
invoke-direct {v0, v2, v1}, Lokhttp3/internal/http2/Header;-><init>(Ljava/lang/String;Ljava/lang/String;)V
|
|
|
|
new-instance v0, Lokhttp3/internal/http2/Header;
|
|
|
|
move-object/from16 v44, v0
|
|
|
|
const-string v2, "link"
|
|
|
|
invoke-direct {v0, v2, v1}, Lokhttp3/internal/http2/Header;-><init>(Ljava/lang/String;Ljava/lang/String;)V
|
|
|
|
new-instance v0, Lokhttp3/internal/http2/Header;
|
|
|
|
move-object/from16 v45, v0
|
|
|
|
const-string v2, "location"
|
|
|
|
invoke-direct {v0, v2, v1}, Lokhttp3/internal/http2/Header;-><init>(Ljava/lang/String;Ljava/lang/String;)V
|
|
|
|
new-instance v0, Lokhttp3/internal/http2/Header;
|
|
|
|
move-object/from16 v46, v0
|
|
|
|
const-string v2, "max-forwards"
|
|
|
|
invoke-direct {v0, v2, v1}, Lokhttp3/internal/http2/Header;-><init>(Ljava/lang/String;Ljava/lang/String;)V
|
|
|
|
new-instance v0, Lokhttp3/internal/http2/Header;
|
|
|
|
move-object/from16 v47, v0
|
|
|
|
const-string v2, "proxy-authenticate"
|
|
|
|
invoke-direct {v0, v2, v1}, Lokhttp3/internal/http2/Header;-><init>(Ljava/lang/String;Ljava/lang/String;)V
|
|
|
|
new-instance v0, Lokhttp3/internal/http2/Header;
|
|
|
|
move-object/from16 v48, v0
|
|
|
|
const-string v2, "proxy-authorization"
|
|
|
|
invoke-direct {v0, v2, v1}, Lokhttp3/internal/http2/Header;-><init>(Ljava/lang/String;Ljava/lang/String;)V
|
|
|
|
new-instance v0, Lokhttp3/internal/http2/Header;
|
|
|
|
move-object/from16 v49, v0
|
|
|
|
const-string v2, "range"
|
|
|
|
invoke-direct {v0, v2, v1}, Lokhttp3/internal/http2/Header;-><init>(Ljava/lang/String;Ljava/lang/String;)V
|
|
|
|
new-instance v0, Lokhttp3/internal/http2/Header;
|
|
|
|
move-object/from16 v50, v0
|
|
|
|
const-string v2, "referer"
|
|
|
|
invoke-direct {v0, v2, v1}, Lokhttp3/internal/http2/Header;-><init>(Ljava/lang/String;Ljava/lang/String;)V
|
|
|
|
new-instance v0, Lokhttp3/internal/http2/Header;
|
|
|
|
move-object/from16 v51, v0
|
|
|
|
const-string v2, "refresh"
|
|
|
|
invoke-direct {v0, v2, v1}, Lokhttp3/internal/http2/Header;-><init>(Ljava/lang/String;Ljava/lang/String;)V
|
|
|
|
new-instance v0, Lokhttp3/internal/http2/Header;
|
|
|
|
move-object/from16 v52, v0
|
|
|
|
const-string v2, "retry-after"
|
|
|
|
invoke-direct {v0, v2, v1}, Lokhttp3/internal/http2/Header;-><init>(Ljava/lang/String;Ljava/lang/String;)V
|
|
|
|
new-instance v0, Lokhttp3/internal/http2/Header;
|
|
|
|
move-object/from16 v53, v0
|
|
|
|
const-string v2, "server"
|
|
|
|
invoke-direct {v0, v2, v1}, Lokhttp3/internal/http2/Header;-><init>(Ljava/lang/String;Ljava/lang/String;)V
|
|
|
|
new-instance v0, Lokhttp3/internal/http2/Header;
|
|
|
|
move-object/from16 v54, v0
|
|
|
|
const-string v2, "set-cookie"
|
|
|
|
invoke-direct {v0, v2, v1}, Lokhttp3/internal/http2/Header;-><init>(Ljava/lang/String;Ljava/lang/String;)V
|
|
|
|
new-instance v0, Lokhttp3/internal/http2/Header;
|
|
|
|
move-object/from16 v55, v0
|
|
|
|
const-string v2, "strict-transport-security"
|
|
|
|
invoke-direct {v0, v2, v1}, Lokhttp3/internal/http2/Header;-><init>(Ljava/lang/String;Ljava/lang/String;)V
|
|
|
|
new-instance v0, Lokhttp3/internal/http2/Header;
|
|
|
|
move-object/from16 v56, v0
|
|
|
|
const-string v2, "transfer-encoding"
|
|
|
|
invoke-direct {v0, v2, v1}, Lokhttp3/internal/http2/Header;-><init>(Ljava/lang/String;Ljava/lang/String;)V
|
|
|
|
new-instance v0, Lokhttp3/internal/http2/Header;
|
|
|
|
move-object/from16 v57, v0
|
|
|
|
const-string v2, "user-agent"
|
|
|
|
invoke-direct {v0, v2, v1}, Lokhttp3/internal/http2/Header;-><init>(Ljava/lang/String;Ljava/lang/String;)V
|
|
|
|
new-instance v0, Lokhttp3/internal/http2/Header;
|
|
|
|
move-object/from16 v58, v0
|
|
|
|
const-string v2, "vary"
|
|
|
|
invoke-direct {v0, v2, v1}, Lokhttp3/internal/http2/Header;-><init>(Ljava/lang/String;Ljava/lang/String;)V
|
|
|
|
new-instance v0, Lokhttp3/internal/http2/Header;
|
|
|
|
move-object/from16 v59, v0
|
|
|
|
const-string v2, "via"
|
|
|
|
invoke-direct {v0, v2, v1}, Lokhttp3/internal/http2/Header;-><init>(Ljava/lang/String;Ljava/lang/String;)V
|
|
|
|
new-instance v0, Lokhttp3/internal/http2/Header;
|
|
|
|
move-object/from16 v60, v0
|
|
|
|
const-string v2, "www-authenticate"
|
|
|
|
invoke-direct {v0, v2, v1}, Lokhttp3/internal/http2/Header;-><init>(Ljava/lang/String;Ljava/lang/String;)V
|
|
|
|
move-object/from16 v0, v61
|
|
|
|
move-object/from16 v1, v62
|
|
|
|
move-object/from16 v2, v63
|
|
|
|
move-object/from16 v3, v64
|
|
|
|
filled-new-array/range {v0 .. v60}, [Lokhttp3/internal/http2/Header;
|
|
|
|
move-result-object v0
|
|
|
|
sput-object v0, Lokhttp3/internal/http2/Hpack;->STATIC_HEADER_TABLE:[Lokhttp3/internal/http2/Header;
|
|
|
|
.line 354
|
|
invoke-static {}, Lokhttp3/internal/http2/Hpack;->nameToFirstIndex()Ljava/util/Map;
|
|
|
|
move-result-object v0
|
|
|
|
sput-object v0, Lokhttp3/internal/http2/Hpack;->NAME_TO_FIRST_INDEX:Ljava/util/Map;
|
|
|
|
return-void
|
|
.end method
|
|
|
|
.method public static checkLowercase(Lokio/ByteString;)Lokio/ByteString;
|
|
.locals 4
|
|
|
|
.line 596
|
|
invoke-virtual {p0}, Lokio/ByteString;->size()I
|
|
|
|
move-result v0
|
|
|
|
const/4 v1, 0x0
|
|
|
|
:goto_0
|
|
if-ge v1, v0, :cond_2
|
|
|
|
.line 597
|
|
invoke-virtual {p0, v1}, Lokio/ByteString;->getByte(I)B
|
|
|
|
move-result v2
|
|
|
|
const/16 v3, 0x41
|
|
|
|
if-lt v2, v3, :cond_1
|
|
|
|
const/16 v3, 0x5a
|
|
|
|
if-le v2, v3, :cond_0
|
|
|
|
goto :goto_1
|
|
|
|
.line 599
|
|
:cond_0
|
|
new-instance v0, Ljava/io/IOException;
|
|
|
|
new-instance v1, Ljava/lang/StringBuilder;
|
|
|
|
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
|
|
|
|
const-string v2, "PROTOCOL_ERROR response malformed: mixed case name: "
|
|
|
|
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
|
|
|
|
invoke-virtual {p0}, Lokio/ByteString;->utf8()Ljava/lang/String;
|
|
|
|
move-result-object p0
|
|
|
|
invoke-virtual {v1, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
|
|
|
|
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
|
|
|
|
move-result-object p0
|
|
|
|
invoke-direct {v0, p0}, Ljava/io/IOException;-><init>(Ljava/lang/String;)V
|
|
|
|
throw v0
|
|
|
|
:cond_1
|
|
:goto_1
|
|
add-int/lit8 v1, v1, 0x1
|
|
|
|
goto :goto_0
|
|
|
|
:cond_2
|
|
return-object p0
|
|
.end method
|
|
|
|
.method public static nameToFirstIndex()Ljava/util/Map;
|
|
.locals 4
|
|
|
|
.line 357
|
|
new-instance v0, Ljava/util/LinkedHashMap;
|
|
|
|
sget-object v1, Lokhttp3/internal/http2/Hpack;->STATIC_HEADER_TABLE:[Lokhttp3/internal/http2/Header;
|
|
|
|
array-length v1, v1
|
|
|
|
invoke-direct {v0, v1}, Ljava/util/LinkedHashMap;-><init>(I)V
|
|
|
|
const/4 v1, 0x0
|
|
|
|
:goto_0
|
|
sget-object v2, Lokhttp3/internal/http2/Hpack;->STATIC_HEADER_TABLE:[Lokhttp3/internal/http2/Header;
|
|
|
|
.line 358
|
|
array-length v3, v2
|
|
|
|
if-ge v1, v3, :cond_1
|
|
|
|
.line 359
|
|
aget-object v3, v2, v1
|
|
|
|
iget-object v3, v3, Lokhttp3/internal/http2/Header;->name:Lokio/ByteString;
|
|
|
|
invoke-interface {v0, v3}, Ljava/util/Map;->containsKey(Ljava/lang/Object;)Z
|
|
|
|
move-result v3
|
|
|
|
if-nez v3, :cond_0
|
|
|
|
.line 360
|
|
aget-object v2, v2, v1
|
|
|
|
iget-object v2, v2, Lokhttp3/internal/http2/Header;->name:Lokio/ByteString;
|
|
|
|
invoke-static {v1}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
|
|
|
|
move-result-object v3
|
|
|
|
invoke-interface {v0, v2, v3}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
|
|
|
|
:cond_0
|
|
add-int/lit8 v1, v1, 0x1
|
|
|
|
goto :goto_0
|
|
|
|
.line 363
|
|
:cond_1
|
|
invoke-static {v0}, Ljava/util/Collections;->unmodifiableMap(Ljava/util/Map;)Ljava/util/Map;
|
|
|
|
move-result-object v0
|
|
|
|
return-object v0
|
|
.end method
|