mirror of
				https://github.com/KevinMidboe/linguist.git
				synced 2025-10-29 17:50:22 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			1864 lines
		
	
	
		
			42 KiB
		
	
	
	
		
			Smali
		
	
	
	
	
	
			
		
		
	
	
			1864 lines
		
	
	
		
			42 KiB
		
	
	
	
		
			Smali
		
	
	
	
	
	
| .class public Lorg/kxml2/wap/WbxmlSerializer;
 | |
| .super Ljava/lang/Object;
 | |
| .source "WbxmlSerializer.java"
 | |
| 
 | |
| # interfaces
 | |
| .implements Lorg/xmlpull/v1/XmlSerializer;
 | |
| 
 | |
| 
 | |
| # instance fields
 | |
| .field private attrPage:I
 | |
| 
 | |
| .field attrStartTable:Ljava/util/Hashtable;
 | |
| 
 | |
| .field attrValueTable:Ljava/util/Hashtable;
 | |
| 
 | |
| .field attributes:Ljava/util/Vector;
 | |
| 
 | |
| .field buf:Ljava/io/ByteArrayOutputStream;
 | |
| 
 | |
| .field depth:I
 | |
| 
 | |
| .field private encoding:Ljava/lang/String;
 | |
| 
 | |
| .field private headerSent:Z
 | |
| 
 | |
| .field name:Ljava/lang/String;
 | |
| 
 | |
| .field namespace:Ljava/lang/String;
 | |
| 
 | |
| .field out:Ljava/io/OutputStream;
 | |
| 
 | |
| .field pending:Ljava/lang/String;
 | |
| 
 | |
| .field stringTable:Ljava/util/Hashtable;
 | |
| 
 | |
| .field stringTableBuf:Ljava/io/ByteArrayOutputStream;
 | |
| 
 | |
| .field private tagPage:I
 | |
| 
 | |
| .field tagTable:Ljava/util/Hashtable;
 | |
| 
 | |
| 
 | |
| # direct methods
 | |
| .method public constructor <init>()V
 | |
|     .locals 1
 | |
| 
 | |
|     .prologue
 | |
|     .line 35
 | |
|     invoke-direct {p0}, Ljava/lang/Object;-><init>()V
 | |
| 
 | |
|     .line 38
 | |
|     new-instance v0, Ljava/util/Hashtable;
 | |
| 
 | |
|     invoke-direct {v0}, Ljava/util/Hashtable;-><init>()V
 | |
| 
 | |
|     iput-object v0, p0, Lorg/kxml2/wap/WbxmlSerializer;->stringTable:Ljava/util/Hashtable;
 | |
| 
 | |
|     .line 42
 | |
|     new-instance v0, Ljava/io/ByteArrayOutputStream;
 | |
| 
 | |
|     invoke-direct {v0}, Ljava/io/ByteArrayOutputStream;-><init>()V
 | |
| 
 | |
|     iput-object v0, p0, Lorg/kxml2/wap/WbxmlSerializer;->buf:Ljava/io/ByteArrayOutputStream;
 | |
| 
 | |
|     .line 43
 | |
|     new-instance v0, Ljava/io/ByteArrayOutputStream;
 | |
| 
 | |
|     invoke-direct {v0}, Ljava/io/ByteArrayOutputStream;-><init>()V
 | |
| 
 | |
|     iput-object v0, p0, Lorg/kxml2/wap/WbxmlSerializer;->stringTableBuf:Ljava/io/ByteArrayOutputStream;
 | |
| 
 | |
|     .line 49
 | |
|     new-instance v0, Ljava/util/Vector;
 | |
| 
 | |
|     invoke-direct {v0}, Ljava/util/Vector;-><init>()V
 | |
| 
 | |
|     iput-object v0, p0, Lorg/kxml2/wap/WbxmlSerializer;->attributes:Ljava/util/Vector;
 | |
| 
 | |
|     .line 51
 | |
|     new-instance v0, Ljava/util/Hashtable;
 | |
| 
 | |
|     invoke-direct {v0}, Ljava/util/Hashtable;-><init>()V
 | |
| 
 | |
|     iput-object v0, p0, Lorg/kxml2/wap/WbxmlSerializer;->attrStartTable:Ljava/util/Hashtable;
 | |
| 
 | |
|     .line 52
 | |
|     new-instance v0, Ljava/util/Hashtable;
 | |
| 
 | |
|     invoke-direct {v0}, Ljava/util/Hashtable;-><init>()V
 | |
| 
 | |
|     iput-object v0, p0, Lorg/kxml2/wap/WbxmlSerializer;->attrValueTable:Ljava/util/Hashtable;
 | |
| 
 | |
|     .line 53
 | |
|     new-instance v0, Ljava/util/Hashtable;
 | |
| 
 | |
|     invoke-direct {v0}, Ljava/util/Hashtable;-><init>()V
 | |
| 
 | |
|     iput-object v0, p0, Lorg/kxml2/wap/WbxmlSerializer;->tagTable:Ljava/util/Hashtable;
 | |
| 
 | |
|     .line 60
 | |
|     const/4 v0, 0x0
 | |
| 
 | |
|     iput-boolean v0, p0, Lorg/kxml2/wap/WbxmlSerializer;->headerSent:Z
 | |
| 
 | |
|     return-void
 | |
| .end method
 | |
| 
 | |
| .method static writeInt(Ljava/io/OutputStream;I)V
 | |
|     .locals 4
 | |
|     .param p0, "out"    # Ljava/io/OutputStream;
 | |
|     .param p1, "i"    # I
 | |
|     .annotation system Ldalvik/annotation/Throws;
 | |
|         value = {
 | |
|             Ljava/io/IOException;
 | |
|         }
 | |
|     .end annotation
 | |
| 
 | |
|     .prologue
 | |
|     .line 447
 | |
|     const/4 v3, 0x5
 | |
| 
 | |
|     new-array v0, v3, [B
 | |
| 
 | |
|     .line 448
 | |
|     .local v0, "buf":[B
 | |
|     const/4 v1, 0x0
 | |
| 
 | |
|     .line 451
 | |
|     .local v1, "idx":I
 | |
|     :goto_0
 | |
|     add-int/lit8 v2, v1, 0x1
 | |
| 
 | |
|     .end local v1    # "idx":I
 | |
|     .local v2, "idx":I
 | |
|     and-int/lit8 v3, p1, 0x7f
 | |
| 
 | |
|     int-to-byte v3, v3
 | |
| 
 | |
|     aput-byte v3, v0, v1
 | |
| 
 | |
|     .line 452
 | |
|     shr-int/lit8 p1, p1, 0x7
 | |
| 
 | |
|     .line 454
 | |
|     if-nez p1, :cond_1
 | |
| 
 | |
|     move v1, v2
 | |
| 
 | |
|     .line 456
 | |
|     .end local v2    # "idx":I
 | |
|     .restart local v1    # "idx":I
 | |
|     :goto_1
 | |
|     const/4 v3, 0x1
 | |
| 
 | |
|     if-le v1, v3, :cond_0
 | |
| 
 | |
|     .line 457
 | |
|     add-int/lit8 v1, v1, -0x1
 | |
| 
 | |
|     aget-byte v3, v0, v1
 | |
| 
 | |
|     or-int/lit16 v3, v3, 0x80
 | |
| 
 | |
|     invoke-virtual {p0, v3}, Ljava/io/OutputStream;->write(I)V
 | |
| 
 | |
|     goto :goto_1
 | |
| 
 | |
|     .line 459
 | |
|     :cond_0
 | |
|     const/4 v3, 0x0
 | |
| 
 | |
|     aget-byte v3, v0, v3
 | |
| 
 | |
|     invoke-virtual {p0, v3}, Ljava/io/OutputStream;->write(I)V
 | |
| 
 | |
|     .line 460
 | |
|     return-void
 | |
| 
 | |
|     .end local v1    # "idx":I
 | |
|     .restart local v2    # "idx":I
 | |
|     :cond_1
 | |
|     move v1, v2
 | |
| 
 | |
|     .end local v2    # "idx":I
 | |
|     .restart local v1    # "idx":I
 | |
|     goto :goto_0
 | |
| .end method
 | |
| 
 | |
| .method private writeStr(Ljava/lang/String;)V
 | |
|     .locals 10
 | |
|     .param p1, "text"    # Ljava/lang/String;
 | |
|     .annotation system Ldalvik/annotation/Throws;
 | |
|         value = {
 | |
|             Ljava/io/IOException;
 | |
|         }
 | |
|     .end annotation
 | |
| 
 | |
|     .prologue
 | |
|     const/16 v9, 0x41
 | |
| 
 | |
|     const/16 v8, 0x20
 | |
| 
 | |
|     const/4 v7, 0x0
 | |
| 
 | |
|     const/16 v6, 0x83
 | |
| 
 | |
|     .line 349
 | |
|     const/4 v2, 0x0
 | |
| 
 | |
|     .line 350
 | |
|     .local v2, "p0":I
 | |
|     const/4 v0, 0x0
 | |
| 
 | |
|     .line 351
 | |
|     .local v0, "lastCut":I
 | |
|     invoke-virtual {p1}, Ljava/lang/String;->length()I
 | |
| 
 | |
|     move-result v1
 | |
| 
 | |
|     .line 353
 | |
|     .local v1, "len":I
 | |
|     iget-boolean v4, p0, Lorg/kxml2/wap/WbxmlSerializer;->headerSent:Z
 | |
| 
 | |
|     if-eqz v4, :cond_3
 | |
| 
 | |
|     .line 354
 | |
|     iget-object v4, p0, Lorg/kxml2/wap/WbxmlSerializer;->buf:Ljava/io/ByteArrayOutputStream;
 | |
| 
 | |
|     invoke-virtual {p0, v4, p1}, Lorg/kxml2/wap/WbxmlSerializer;->writeStrI(Ljava/io/OutputStream;Ljava/lang/String;)V
 | |
| 
 | |
|     .line 394
 | |
|     :cond_0
 | |
|     :goto_0
 | |
|     return-void
 | |
| 
 | |
|     .line 367
 | |
|     .local v3, "p1":I
 | |
|     :cond_1
 | |
|     sub-int v4, v3, v2
 | |
| 
 | |
|     const/16 v5, 0xa
 | |
| 
 | |
|     if-le v4, v5, :cond_2
 | |
| 
 | |
|     .line 368
 | |
|     if-le v2, v0, :cond_5
 | |
| 
 | |
|     add-int/lit8 v4, v2, -0x1
 | |
| 
 | |
|     invoke-virtual {p1, v4}, Ljava/lang/String;->charAt(I)C
 | |
| 
 | |
|     move-result v4
 | |
| 
 | |
|     if-ne v4, v8, :cond_5
 | |
| 
 | |
|     iget-object v4, p0, Lorg/kxml2/wap/WbxmlSerializer;->stringTable:Ljava/util/Hashtable;
 | |
| 
 | |
|     invoke-virtual {p1, v2, v3}, Ljava/lang/String;->substring(II)Ljava/lang/String;
 | |
| 
 | |
|     move-result-object v5
 | |
| 
 | |
|     invoke-virtual {v4, v5}, Ljava/util/Hashtable;->get(Ljava/lang/Object;)Ljava/lang/Object;
 | |
| 
 | |
|     move-result-object v4
 | |
| 
 | |
|     if-nez v4, :cond_5
 | |
| 
 | |
|     .line 370
 | |
|     iget-object v4, p0, Lorg/kxml2/wap/WbxmlSerializer;->buf:Ljava/io/ByteArrayOutputStream;
 | |
| 
 | |
|     invoke-virtual {v4, v6}, Ljava/io/ByteArrayOutputStream;->write(I)V
 | |
| 
 | |
|     .line 371
 | |
|     invoke-virtual {p1, v0, v3}, Ljava/lang/String;->substring(II)Ljava/lang/String;
 | |
| 
 | |
|     move-result-object v4
 | |
| 
 | |
|     invoke-direct {p0, v4, v7}, Lorg/kxml2/wap/WbxmlSerializer;->writeStrT(Ljava/lang/String;Z)V
 | |
| 
 | |
|     .line 385
 | |
|     :goto_1
 | |
|     move v0, v3
 | |
| 
 | |
|     .line 387
 | |
|     :cond_2
 | |
|     move v2, v3
 | |
| 
 | |
|     .line 358
 | |
|     .end local v3    # "p1":I
 | |
|     :cond_3
 | |
|     if-ge v2, v1, :cond_8
 | |
| 
 | |
|     .line 359
 | |
|     :goto_2
 | |
|     if-ge v2, v1, :cond_4
 | |
| 
 | |
|     invoke-virtual {p1, v2}, Ljava/lang/String;->charAt(I)C
 | |
| 
 | |
|     move-result v4
 | |
| 
 | |
|     if-ge v4, v9, :cond_4
 | |
| 
 | |
|     .line 360
 | |
|     add-int/lit8 v2, v2, 0x1
 | |
| 
 | |
|     goto :goto_2
 | |
| 
 | |
|     .line 362
 | |
|     :cond_4
 | |
|     move v3, v2
 | |
| 
 | |
|     .line 363
 | |
|     .restart local v3    # "p1":I
 | |
|     :goto_3
 | |
|     if-ge v3, v1, :cond_1
 | |
| 
 | |
|     invoke-virtual {p1, v3}, Ljava/lang/String;->charAt(I)C
 | |
| 
 | |
|     move-result v4
 | |
| 
 | |
|     if-lt v4, v9, :cond_1
 | |
| 
 | |
|     .line 364
 | |
|     add-int/lit8 v3, v3, 0x1
 | |
| 
 | |
|     goto :goto_3
 | |
| 
 | |
|     .line 374
 | |
|     :cond_5
 | |
|     if-le v2, v0, :cond_6
 | |
| 
 | |
|     add-int/lit8 v4, v2, -0x1
 | |
| 
 | |
|     invoke-virtual {p1, v4}, Ljava/lang/String;->charAt(I)C
 | |
| 
 | |
|     move-result v4
 | |
| 
 | |
|     if-ne v4, v8, :cond_6
 | |
| 
 | |
|     .line 375
 | |
|     add-int/lit8 v2, v2, -0x1
 | |
| 
 | |
|     .line 378
 | |
|     :cond_6
 | |
|     if-le v2, v0, :cond_7
 | |
| 
 | |
|     .line 379
 | |
|     iget-object v4, p0, Lorg/kxml2/wap/WbxmlSerializer;->buf:Ljava/io/ByteArrayOutputStream;
 | |
| 
 | |
|     invoke-virtual {v4, v6}, Ljava/io/ByteArrayOutputStream;->write(I)V
 | |
| 
 | |
|     .line 380
 | |
|     invoke-virtual {p1, v0, v2}, Ljava/lang/String;->substring(II)Ljava/lang/String;
 | |
| 
 | |
|     move-result-object v4
 | |
| 
 | |
|     invoke-direct {p0, v4, v7}, Lorg/kxml2/wap/WbxmlSerializer;->writeStrT(Ljava/lang/String;Z)V
 | |
| 
 | |
|     .line 382
 | |
|     :cond_7
 | |
|     iget-object v4, p0, Lorg/kxml2/wap/WbxmlSerializer;->buf:Ljava/io/ByteArrayOutputStream;
 | |
| 
 | |
|     invoke-virtual {v4, v6}, Ljava/io/ByteArrayOutputStream;->write(I)V
 | |
| 
 | |
|     .line 383
 | |
|     invoke-virtual {p1, v2, v3}, Ljava/lang/String;->substring(II)Ljava/lang/String;
 | |
| 
 | |
|     move-result-object v4
 | |
| 
 | |
|     const/4 v5, 0x1
 | |
| 
 | |
|     invoke-direct {p0, v4, v5}, Lorg/kxml2/wap/WbxmlSerializer;->writeStrT(Ljava/lang/String;Z)V
 | |
| 
 | |
|     goto :goto_1
 | |
| 
 | |
|     .line 390
 | |
|     .end local v3    # "p1":I
 | |
|     :cond_8
 | |
|     if-ge v0, v1, :cond_0
 | |
| 
 | |
|     .line 391
 | |
|     iget-object v4, p0, Lorg/kxml2/wap/WbxmlSerializer;->buf:Ljava/io/ByteArrayOutputStream;
 | |
| 
 | |
|     invoke-virtual {v4, v6}, Ljava/io/ByteArrayOutputStream;->write(I)V
 | |
| 
 | |
|     .line 392
 | |
|     invoke-virtual {p1, v0, v1}, Ljava/lang/String;->substring(II)Ljava/lang/String;
 | |
| 
 | |
|     move-result-object v4
 | |
| 
 | |
|     invoke-direct {p0, v4, v7}, Lorg/kxml2/wap/WbxmlSerializer;->writeStrT(Ljava/lang/String;Z)V
 | |
| 
 | |
|     goto :goto_0
 | |
| .end method
 | |
| 
 | |
| .method private final writeStrT(Ljava/lang/String;Z)V
 | |
|     .locals 3
 | |
|     .param p1, "s"    # Ljava/lang/String;
 | |
|     .param p2, "mayPrependSpace"    # Z
 | |
|     .annotation system Ldalvik/annotation/Throws;
 | |
|         value = {
 | |
|             Ljava/io/IOException;
 | |
|         }
 | |
|     .end annotation
 | |
| 
 | |
|     .prologue
 | |
|     .line 470
 | |
|     iget-object v1, p0, Lorg/kxml2/wap/WbxmlSerializer;->stringTable:Ljava/util/Hashtable;
 | |
| 
 | |
|     invoke-virtual {v1, p1}, Ljava/util/Hashtable;->get(Ljava/lang/Object;)Ljava/lang/Object;
 | |
| 
 | |
|     move-result-object v0
 | |
| 
 | |
|     check-cast v0, Ljava/lang/Integer;
 | |
| 
 | |
|     .line 471
 | |
|     .local v0, "idx":Ljava/lang/Integer;
 | |
|     iget-object v2, p0, Lorg/kxml2/wap/WbxmlSerializer;->buf:Ljava/io/ByteArrayOutputStream;
 | |
| 
 | |
|     if-nez v0, :cond_0
 | |
| 
 | |
|     invoke-virtual {p0, p1, p2}, Lorg/kxml2/wap/WbxmlSerializer;->addToStringTable(Ljava/lang/String;Z)I
 | |
| 
 | |
|     move-result v1
 | |
| 
 | |
|     :goto_0
 | |
|     invoke-static {v2, v1}, Lorg/kxml2/wap/WbxmlSerializer;->writeInt(Ljava/io/OutputStream;I)V
 | |
| 
 | |
|     .line 474
 | |
|     return-void
 | |
| 
 | |
|     .line 471
 | |
|     :cond_0
 | |
|     invoke-virtual {v0}, Ljava/lang/Integer;->intValue()I
 | |
| 
 | |
|     move-result v1
 | |
| 
 | |
|     goto :goto_0
 | |
| .end method
 | |
| 
 | |
| 
 | |
| # virtual methods
 | |
| .method public addToStringTable(Ljava/lang/String;Z)I
 | |
|     .locals 9
 | |
|     .param p1, "s"    # Ljava/lang/String;
 | |
|     .param p2, "mayPrependSpace"    # Z
 | |
|     .annotation system Ldalvik/annotation/Throws;
 | |
|         value = {
 | |
|             Ljava/io/IOException;
 | |
|         }
 | |
|     .end annotation
 | |
| 
 | |
|     .prologue
 | |
|     const/4 v8, 0x1
 | |
| 
 | |
|     const/4 v5, 0x0
 | |
| 
 | |
|     const/16 v7, 0x20
 | |
| 
 | |
|     .line 485
 | |
|     iget-boolean v3, p0, Lorg/kxml2/wap/WbxmlSerializer;->headerSent:Z
 | |
| 
 | |
|     if-eqz v3, :cond_0
 | |
| 
 | |
|     .line 486
 | |
|     new-instance v3, Ljava/io/IOException;
 | |
| 
 | |
|     const-string v4, "stringtable sent"
 | |
| 
 | |
|     invoke-direct {v3, v4}, Ljava/io/IOException;-><init>(Ljava/lang/String;)V
 | |
| 
 | |
|     throw v3
 | |
| 
 | |
|     .line 489
 | |
|     :cond_0
 | |
|     iget-object v3, p0, Lorg/kxml2/wap/WbxmlSerializer;->stringTableBuf:Ljava/io/ByteArrayOutputStream;
 | |
| 
 | |
|     invoke-virtual {v3}, Ljava/io/ByteArrayOutputStream;->size()I
 | |
| 
 | |
|     move-result v0
 | |
| 
 | |
|     .line 490
 | |
|     .local v0, "i":I
 | |
|     move v2, v0
 | |
| 
 | |
|     .line 491
 | |
|     .local v2, "offset":I
 | |
|     invoke-virtual {p1, v5}, Ljava/lang/String;->charAt(I)C
 | |
| 
 | |
|     move-result v3
 | |
| 
 | |
|     const/16 v4, 0x30
 | |
| 
 | |
|     if-lt v3, v4, :cond_1
 | |
| 
 | |
|     if-eqz p2, :cond_1
 | |
| 
 | |
|     .line 492
 | |
|     new-instance v3, Ljava/lang/StringBuilder;
 | |
| 
 | |
|     invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
 | |
| 
 | |
|     invoke-virtual {v3, v7}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
 | |
| 
 | |
|     move-result-object v3
 | |
| 
 | |
|     invoke-virtual {v3, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
 | |
| 
 | |
|     move-result-object v3
 | |
| 
 | |
|     invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
 | |
| 
 | |
|     move-result-object p1
 | |
| 
 | |
|     .line 493
 | |
|     add-int/lit8 v2, v2, 0x1
 | |
| 
 | |
|     .line 496
 | |
|     :cond_1
 | |
|     iget-object v3, p0, Lorg/kxml2/wap/WbxmlSerializer;->stringTable:Ljava/util/Hashtable;
 | |
| 
 | |
|     new-instance v4, Ljava/lang/Integer;
 | |
| 
 | |
|     invoke-direct {v4, v0}, Ljava/lang/Integer;-><init>(I)V
 | |
| 
 | |
|     invoke-virtual {v3, p1, v4}, Ljava/util/Hashtable;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
 | |
| 
 | |
|     .line 497
 | |
|     invoke-virtual {p1, v5}, Ljava/lang/String;->charAt(I)C
 | |
| 
 | |
|     move-result v3
 | |
| 
 | |
|     if-ne v3, v7, :cond_2
 | |
| 
 | |
|     .line 498
 | |
|     iget-object v3, p0, Lorg/kxml2/wap/WbxmlSerializer;->stringTable:Ljava/util/Hashtable;
 | |
| 
 | |
|     invoke-virtual {p1, v8}, Ljava/lang/String;->substring(I)Ljava/lang/String;
 | |
| 
 | |
|     move-result-object v4
 | |
| 
 | |
|     new-instance v5, Ljava/lang/Integer;
 | |
| 
 | |
|     add-int/lit8 v6, v0, 0x1
 | |
| 
 | |
|     invoke-direct {v5, v6}, Ljava/lang/Integer;-><init>(I)V
 | |
| 
 | |
|     invoke-virtual {v3, v4, v5}, Ljava/util/Hashtable;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
 | |
| 
 | |
|     .line 500
 | |
|     :cond_2
 | |
|     invoke-virtual {p1, v7}, Ljava/lang/String;->lastIndexOf(I)I
 | |
| 
 | |
|     move-result v1
 | |
| 
 | |
|     .line 501
 | |
|     .local v1, "j":I
 | |
|     if-le v1, v8, :cond_3
 | |
| 
 | |
|     .line 502
 | |
|     iget-object v3, p0, Lorg/kxml2/wap/WbxmlSerializer;->stringTable:Ljava/util/Hashtable;
 | |
| 
 | |
|     invoke-virtual {p1, v1}, Ljava/lang/String;->substring(I)Ljava/lang/String;
 | |
| 
 | |
|     move-result-object v4
 | |
| 
 | |
|     new-instance v5, Ljava/lang/Integer;
 | |
| 
 | |
|     add-int v6, v0, v1
 | |
| 
 | |
|     invoke-direct {v5, v6}, Ljava/lang/Integer;-><init>(I)V
 | |
| 
 | |
|     invoke-virtual {v3, v4, v5}, Ljava/util/Hashtable;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
 | |
| 
 | |
|     .line 503
 | |
|     iget-object v3, p0, Lorg/kxml2/wap/WbxmlSerializer;->stringTable:Ljava/util/Hashtable;
 | |
| 
 | |
|     add-int/lit8 v4, v1, 0x1
 | |
| 
 | |
|     invoke-virtual {p1, v4}, Ljava/lang/String;->substring(I)Ljava/lang/String;
 | |
| 
 | |
|     move-result-object v4
 | |
| 
 | |
|     new-instance v5, Ljava/lang/Integer;
 | |
| 
 | |
|     add-int v6, v0, v1
 | |
| 
 | |
|     add-int/lit8 v6, v6, 0x1
 | |
| 
 | |
|     invoke-direct {v5, v6}, Ljava/lang/Integer;-><init>(I)V
 | |
| 
 | |
|     invoke-virtual {v3, v4, v5}, Ljava/util/Hashtable;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
 | |
| 
 | |
|     .line 506
 | |
|     :cond_3
 | |
|     iget-object v3, p0, Lorg/kxml2/wap/WbxmlSerializer;->stringTableBuf:Ljava/io/ByteArrayOutputStream;
 | |
| 
 | |
|     invoke-virtual {p0, v3, p1}, Lorg/kxml2/wap/WbxmlSerializer;->writeStrI(Ljava/io/OutputStream;Ljava/lang/String;)V
 | |
| 
 | |
|     .line 507
 | |
|     iget-object v3, p0, Lorg/kxml2/wap/WbxmlSerializer;->stringTableBuf:Ljava/io/ByteArrayOutputStream;
 | |
| 
 | |
|     invoke-virtual {v3}, Ljava/io/ByteArrayOutputStream;->flush()V
 | |
| 
 | |
|     .line 508
 | |
|     return v2
 | |
| .end method
 | |
| 
 | |
| .method public attribute(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Lorg/xmlpull/v1/XmlSerializer;
 | |
|     .locals 1
 | |
|     .param p1, "namespace"    # Ljava/lang/String;
 | |
|     .param p2, "name"    # Ljava/lang/String;
 | |
|     .param p3, "value"    # Ljava/lang/String;
 | |
| 
 | |
|     .prologue
 | |
|     .line 69
 | |
|     iget-object v0, p0, Lorg/kxml2/wap/WbxmlSerializer;->attributes:Ljava/util/Vector;
 | |
| 
 | |
|     invoke-virtual {v0, p2}, Ljava/util/Vector;->addElement(Ljava/lang/Object;)V
 | |
| 
 | |
|     .line 70
 | |
|     iget-object v0, p0, Lorg/kxml2/wap/WbxmlSerializer;->attributes:Ljava/util/Vector;
 | |
| 
 | |
|     invoke-virtual {v0, p3}, Ljava/util/Vector;->addElement(Ljava/lang/Object;)V
 | |
| 
 | |
|     .line 71
 | |
|     return-object p0
 | |
| .end method
 | |
| 
 | |
| .method public cdsect(Ljava/lang/String;)V
 | |
|     .locals 0
 | |
|     .param p1, "cdsect"    # Ljava/lang/String;
 | |
|     .annotation system Ldalvik/annotation/Throws;
 | |
|         value = {
 | |
|             Ljava/io/IOException;
 | |
|         }
 | |
|     .end annotation
 | |
| 
 | |
|     .prologue
 | |
|     .line 76
 | |
|     invoke-virtual {p0, p1}, Lorg/kxml2/wap/WbxmlSerializer;->text(Ljava/lang/String;)Lorg/xmlpull/v1/XmlSerializer;
 | |
| 
 | |
|     .line 77
 | |
|     return-void
 | |
| .end method
 | |
| 
 | |
| .method public checkPending(Z)V
 | |
|     .locals 8
 | |
|     .param p1, "degenerated"    # Z
 | |
|     .annotation system Ldalvik/annotation/Throws;
 | |
|         value = {
 | |
|             Ljava/io/IOException;
 | |
|         }
 | |
|     .end annotation
 | |
| 
 | |
|     .prologue
 | |
|     const/4 v4, 0x4
 | |
| 
 | |
|     const/4 v7, 0x1
 | |
| 
 | |
|     const/4 v6, 0x0
 | |
| 
 | |
|     .line 180
 | |
|     iget-object v3, p0, Lorg/kxml2/wap/WbxmlSerializer;->pending:Ljava/lang/String;
 | |
| 
 | |
|     if-nez v3, :cond_0
 | |
| 
 | |
|     .line 240
 | |
|     :goto_0
 | |
|     return-void
 | |
| 
 | |
|     .line 183
 | |
|     :cond_0
 | |
|     iget-object v3, p0, Lorg/kxml2/wap/WbxmlSerializer;->attributes:Ljava/util/Vector;
 | |
| 
 | |
|     invoke-virtual {v3}, Ljava/util/Vector;->size()I
 | |
| 
 | |
|     move-result v2
 | |
| 
 | |
|     .line 185
 | |
|     .local v2, "len":I
 | |
|     iget-object v3, p0, Lorg/kxml2/wap/WbxmlSerializer;->tagTable:Ljava/util/Hashtable;
 | |
| 
 | |
|     iget-object v5, p0, Lorg/kxml2/wap/WbxmlSerializer;->pending:Ljava/lang/String;
 | |
| 
 | |
|     invoke-virtual {v3, v5}, Ljava/util/Hashtable;->get(Ljava/lang/Object;)Ljava/lang/Object;
 | |
| 
 | |
|     move-result-object v3
 | |
| 
 | |
|     check-cast v3, [I
 | |
| 
 | |
|     move-object v1, v3
 | |
| 
 | |
|     check-cast v1, [I
 | |
| 
 | |
|     .line 188
 | |
|     .local v1, "idx":[I
 | |
|     if-nez v1, :cond_4
 | |
| 
 | |
|     .line 189
 | |
|     iget-object v5, p0, Lorg/kxml2/wap/WbxmlSerializer;->buf:Ljava/io/ByteArrayOutputStream;
 | |
| 
 | |
|     if-nez v2, :cond_2
 | |
| 
 | |
|     if-eqz p1, :cond_1
 | |
| 
 | |
|     move v3, v4
 | |
| 
 | |
|     :goto_1
 | |
|     invoke-virtual {v5, v3}, Ljava/io/ByteArrayOutputStream;->write(I)V
 | |
| 
 | |
|     .line 193
 | |
|     iget-object v3, p0, Lorg/kxml2/wap/WbxmlSerializer;->pending:Ljava/lang/String;
 | |
| 
 | |
|     invoke-direct {p0, v3, v6}, Lorg/kxml2/wap/WbxmlSerializer;->writeStrT(Ljava/lang/String;Z)V
 | |
| 
 | |
|     .line 205
 | |
|     :goto_2
 | |
|     const/4 v0, 0x0
 | |
| 
 | |
|     .local v0, "i":I
 | |
|     :goto_3
 | |
|     if-ge v0, v2, :cond_d
 | |
| 
 | |
|     .line 206
 | |
|     iget-object v3, p0, Lorg/kxml2/wap/WbxmlSerializer;->attrStartTable:Ljava/util/Hashtable;
 | |
| 
 | |
|     iget-object v5, p0, Lorg/kxml2/wap/WbxmlSerializer;->attributes:Ljava/util/Vector;
 | |
| 
 | |
|     invoke-virtual {v5, v0}, Ljava/util/Vector;->elementAt(I)Ljava/lang/Object;
 | |
| 
 | |
|     move-result-object v5
 | |
| 
 | |
|     invoke-virtual {v3, v5}, Ljava/util/Hashtable;->get(Ljava/lang/Object;)Ljava/lang/Object;
 | |
| 
 | |
|     move-result-object v3
 | |
| 
 | |
|     check-cast v3, [I
 | |
| 
 | |
|     move-object v1, v3
 | |
| 
 | |
|     check-cast v1, [I
 | |
| 
 | |
|     .line 208
 | |
|     if-nez v1, :cond_9
 | |
| 
 | |
|     .line 209
 | |
|     iget-object v3, p0, Lorg/kxml2/wap/WbxmlSerializer;->buf:Ljava/io/ByteArrayOutputStream;
 | |
| 
 | |
|     invoke-virtual {v3, v4}, Ljava/io/ByteArrayOutputStream;->write(I)V
 | |
| 
 | |
|     .line 210
 | |
|     iget-object v3, p0, Lorg/kxml2/wap/WbxmlSerializer;->attributes:Ljava/util/Vector;
 | |
| 
 | |
|     invoke-virtual {v3, v0}, Ljava/util/Vector;->elementAt(I)Ljava/lang/Object;
 | |
| 
 | |
|     move-result-object v3
 | |
| 
 | |
|     check-cast v3, Ljava/lang/String;
 | |
| 
 | |
|     invoke-direct {p0, v3, v6}, Lorg/kxml2/wap/WbxmlSerializer;->writeStrT(Ljava/lang/String;Z)V
 | |
| 
 | |
|     .line 220
 | |
|     :goto_4
 | |
|     iget-object v3, p0, Lorg/kxml2/wap/WbxmlSerializer;->attrValueTable:Ljava/util/Hashtable;
 | |
| 
 | |
|     iget-object v5, p0, Lorg/kxml2/wap/WbxmlSerializer;->attributes:Ljava/util/Vector;
 | |
| 
 | |
|     add-int/lit8 v0, v0, 0x1
 | |
| 
 | |
|     invoke-virtual {v5, v0}, Ljava/util/Vector;->elementAt(I)Ljava/lang/Object;
 | |
| 
 | |
|     move-result-object v5
 | |
| 
 | |
|     invoke-virtual {v3, v5}, Ljava/util/Hashtable;->get(Ljava/lang/Object;)Ljava/lang/Object;
 | |
| 
 | |
|     move-result-object v3
 | |
| 
 | |
|     check-cast v3, [I
 | |
| 
 | |
|     move-object v1, v3
 | |
| 
 | |
|     check-cast v1, [I
 | |
| 
 | |
|     .line 221
 | |
|     if-nez v1, :cond_b
 | |
| 
 | |
|     .line 222
 | |
|     iget-object v3, p0, Lorg/kxml2/wap/WbxmlSerializer;->attributes:Ljava/util/Vector;
 | |
| 
 | |
|     invoke-virtual {v3, v0}, Ljava/util/Vector;->elementAt(I)Ljava/lang/Object;
 | |
| 
 | |
|     move-result-object v3
 | |
| 
 | |
|     check-cast v3, Ljava/lang/String;
 | |
| 
 | |
|     invoke-direct {p0, v3}, Lorg/kxml2/wap/WbxmlSerializer;->writeStr(Ljava/lang/String;)V
 | |
| 
 | |
|     .line 232
 | |
|     :goto_5
 | |
|     add-int/lit8 v0, v0, 0x1
 | |
| 
 | |
|     goto :goto_3
 | |
| 
 | |
|     .line 189
 | |
|     .end local v0    # "i":I
 | |
|     :cond_1
 | |
|     const/16 v3, 0x44
 | |
| 
 | |
|     goto :goto_1
 | |
| 
 | |
|     :cond_2
 | |
|     if-eqz p1, :cond_3
 | |
| 
 | |
|     const/16 v3, 0x84
 | |
| 
 | |
|     goto :goto_1
 | |
| 
 | |
|     :cond_3
 | |
|     const/16 v3, 0xc4
 | |
| 
 | |
|     goto :goto_1
 | |
| 
 | |
|     .line 195
 | |
|     :cond_4
 | |
|     aget v3, v1, v6
 | |
| 
 | |
|     iget v5, p0, Lorg/kxml2/wap/WbxmlSerializer;->tagPage:I
 | |
| 
 | |
|     if-eq v3, v5, :cond_5
 | |
| 
 | |
|     .line 196
 | |
|     aget v3, v1, v6
 | |
| 
 | |
|     iput v3, p0, Lorg/kxml2/wap/WbxmlSerializer;->tagPage:I
 | |
| 
 | |
|     .line 197
 | |
|     iget-object v3, p0, Lorg/kxml2/wap/WbxmlSerializer;->buf:Ljava/io/ByteArrayOutputStream;
 | |
| 
 | |
|     invoke-virtual {v3, v6}, Ljava/io/ByteArrayOutputStream;->write(I)V
 | |
| 
 | |
|     .line 198
 | |
|     iget-object v3, p0, Lorg/kxml2/wap/WbxmlSerializer;->buf:Ljava/io/ByteArrayOutputStream;
 | |
| 
 | |
|     iget v5, p0, Lorg/kxml2/wap/WbxmlSerializer;->tagPage:I
 | |
| 
 | |
|     invoke-virtual {v3, v5}, Ljava/io/ByteArrayOutputStream;->write(I)V
 | |
| 
 | |
|     .line 200
 | |
|     :cond_5
 | |
|     iget-object v5, p0, Lorg/kxml2/wap/WbxmlSerializer;->buf:Ljava/io/ByteArrayOutputStream;
 | |
| 
 | |
|     if-nez v2, :cond_7
 | |
| 
 | |
|     if-eqz p1, :cond_6
 | |
| 
 | |
|     aget v3, v1, v7
 | |
| 
 | |
|     :goto_6
 | |
|     invoke-virtual {v5, v3}, Ljava/io/ByteArrayOutputStream;->write(I)V
 | |
| 
 | |
|     goto :goto_2
 | |
| 
 | |
|     :cond_6
 | |
|     aget v3, v1, v7
 | |
| 
 | |
|     or-int/lit8 v3, v3, 0x40
 | |
| 
 | |
|     goto :goto_6
 | |
| 
 | |
|     :cond_7
 | |
|     if-eqz p1, :cond_8
 | |
| 
 | |
|     aget v3, v1, v7
 | |
| 
 | |
|     or-int/lit16 v3, v3, 0x80
 | |
| 
 | |
|     goto :goto_6
 | |
| 
 | |
|     :cond_8
 | |
|     aget v3, v1, v7
 | |
| 
 | |
|     or-int/lit16 v3, v3, 0xc0
 | |
| 
 | |
|     goto :goto_6
 | |
| 
 | |
|     .line 213
 | |
|     .restart local v0    # "i":I
 | |
|     :cond_9
 | |
|     aget v3, v1, v6
 | |
| 
 | |
|     iget v5, p0, Lorg/kxml2/wap/WbxmlSerializer;->attrPage:I
 | |
| 
 | |
|     if-eq v3, v5, :cond_a
 | |
| 
 | |
|     .line 214
 | |
|     aget v3, v1, v6
 | |
| 
 | |
|     iput v3, p0, Lorg/kxml2/wap/WbxmlSerializer;->attrPage:I
 | |
| 
 | |
|     .line 215
 | |
|     iget-object v3, p0, Lorg/kxml2/wap/WbxmlSerializer;->buf:Ljava/io/ByteArrayOutputStream;
 | |
| 
 | |
|     invoke-virtual {v3, v6}, Ljava/io/ByteArrayOutputStream;->write(I)V
 | |
| 
 | |
|     .line 216
 | |
|     iget-object v3, p0, Lorg/kxml2/wap/WbxmlSerializer;->buf:Ljava/io/ByteArrayOutputStream;
 | |
| 
 | |
|     iget v5, p0, Lorg/kxml2/wap/WbxmlSerializer;->attrPage:I
 | |
| 
 | |
|     invoke-virtual {v3, v5}, Ljava/io/ByteArrayOutputStream;->write(I)V
 | |
| 
 | |
|     .line 218
 | |
|     :cond_a
 | |
|     iget-object v3, p0, Lorg/kxml2/wap/WbxmlSerializer;->buf:Ljava/io/ByteArrayOutputStream;
 | |
| 
 | |
|     aget v5, v1, v7
 | |
| 
 | |
|     invoke-virtual {v3, v5}, Ljava/io/ByteArrayOutputStream;->write(I)V
 | |
| 
 | |
|     goto :goto_4
 | |
| 
 | |
|     .line 225
 | |
|     :cond_b
 | |
|     aget v3, v1, v6
 | |
| 
 | |
|     iget v5, p0, Lorg/kxml2/wap/WbxmlSerializer;->attrPage:I
 | |
| 
 | |
|     if-eq v3, v5, :cond_c
 | |
| 
 | |
|     .line 226
 | |
|     aget v3, v1, v6
 | |
| 
 | |
|     iput v3, p0, Lorg/kxml2/wap/WbxmlSerializer;->attrPage:I
 | |
| 
 | |
|     .line 227
 | |
|     iget-object v3, p0, Lorg/kxml2/wap/WbxmlSerializer;->buf:Ljava/io/ByteArrayOutputStream;
 | |
| 
 | |
|     invoke-virtual {v3, v6}, Ljava/io/ByteArrayOutputStream;->write(I)V
 | |
| 
 | |
|     .line 228
 | |
|     iget-object v3, p0, Lorg/kxml2/wap/WbxmlSerializer;->buf:Ljava/io/ByteArrayOutputStream;
 | |
| 
 | |
|     iget v5, p0, Lorg/kxml2/wap/WbxmlSerializer;->attrPage:I
 | |
| 
 | |
|     invoke-virtual {v3, v5}, Ljava/io/ByteArrayOutputStream;->write(I)V
 | |
| 
 | |
|     .line 230
 | |
|     :cond_c
 | |
|     iget-object v3, p0, Lorg/kxml2/wap/WbxmlSerializer;->buf:Ljava/io/ByteArrayOutputStream;
 | |
| 
 | |
|     aget v5, v1, v7
 | |
| 
 | |
|     invoke-virtual {v3, v5}, Ljava/io/ByteArrayOutputStream;->write(I)V
 | |
| 
 | |
|     goto :goto_5
 | |
| 
 | |
|     .line 235
 | |
|     :cond_d
 | |
|     if-lez v2, :cond_e
 | |
| 
 | |
|     .line 236
 | |
|     iget-object v3, p0, Lorg/kxml2/wap/WbxmlSerializer;->buf:Ljava/io/ByteArrayOutputStream;
 | |
| 
 | |
|     invoke-virtual {v3, v7}, Ljava/io/ByteArrayOutputStream;->write(I)V
 | |
| 
 | |
|     .line 238
 | |
|     :cond_e
 | |
|     const/4 v3, 0x0
 | |
| 
 | |
|     iput-object v3, p0, Lorg/kxml2/wap/WbxmlSerializer;->pending:Ljava/lang/String;
 | |
| 
 | |
|     .line 239
 | |
|     iget-object v3, p0, Lorg/kxml2/wap/WbxmlSerializer;->attributes:Ljava/util/Vector;
 | |
| 
 | |
|     invoke-virtual {v3}, Ljava/util/Vector;->removeAllElements()V
 | |
| 
 | |
|     goto/16 :goto_0
 | |
| .end method
 | |
| 
 | |
| .method public comment(Ljava/lang/String;)V
 | |
|     .locals 0
 | |
|     .param p1, "comment"    # Ljava/lang/String;
 | |
| 
 | |
|     .prologue
 | |
|     .line 84
 | |
|     return-void
 | |
| .end method
 | |
| 
 | |
| .method public docdecl(Ljava/lang/String;)V
 | |
|     .locals 2
 | |
|     .param p1, "docdecl"    # Ljava/lang/String;
 | |
| 
 | |
|     .prologue
 | |
|     .line 90
 | |
|     new-instance v0, Ljava/lang/RuntimeException;
 | |
| 
 | |
|     const-string v1, "Cannot write docdecl for WBXML"
 | |
| 
 | |
|     invoke-direct {v0, v1}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V
 | |
| 
 | |
|     throw v0
 | |
| .end method
 | |
| 
 | |
| .method public endDocument()V
 | |
|     .locals 0
 | |
|     .annotation system Ldalvik/annotation/Throws;
 | |
|         value = {
 | |
|             Ljava/io/IOException;
 | |
|         }
 | |
|     .end annotation
 | |
| 
 | |
|     .prologue
 | |
|     .line 158
 | |
|     invoke-virtual {p0}, Lorg/kxml2/wap/WbxmlSerializer;->flush()V
 | |
| 
 | |
|     .line 159
 | |
|     return-void
 | |
| .end method
 | |
| 
 | |
| .method public endTag(Ljava/lang/String;Ljava/lang/String;)Lorg/xmlpull/v1/XmlSerializer;
 | |
|     .locals 2
 | |
|     .param p1, "namespace"    # Ljava/lang/String;
 | |
|     .param p2, "name"    # Ljava/lang/String;
 | |
|     .annotation system Ldalvik/annotation/Throws;
 | |
|         value = {
 | |
|             Ljava/io/IOException;
 | |
|         }
 | |
|     .end annotation
 | |
| 
 | |
|     .prologue
 | |
|     const/4 v1, 0x1
 | |
| 
 | |
|     .line 400
 | |
|     iget-object v0, p0, Lorg/kxml2/wap/WbxmlSerializer;->pending:Ljava/lang/String;
 | |
| 
 | |
|     if-eqz v0, :cond_0
 | |
| 
 | |
|     .line 401
 | |
|     invoke-virtual {p0, v1}, Lorg/kxml2/wap/WbxmlSerializer;->checkPending(Z)V
 | |
| 
 | |
|     .line 405
 | |
|     :goto_0
 | |
|     iget v0, p0, Lorg/kxml2/wap/WbxmlSerializer;->depth:I
 | |
| 
 | |
|     add-int/lit8 v0, v0, -0x1
 | |
| 
 | |
|     iput v0, p0, Lorg/kxml2/wap/WbxmlSerializer;->depth:I
 | |
| 
 | |
|     .line 406
 | |
|     return-object p0
 | |
| 
 | |
|     .line 403
 | |
|     :cond_0
 | |
|     iget-object v0, p0, Lorg/kxml2/wap/WbxmlSerializer;->buf:Ljava/io/ByteArrayOutputStream;
 | |
| 
 | |
|     invoke-virtual {v0, v1}, Ljava/io/ByteArrayOutputStream;->write(I)V
 | |
| 
 | |
|     goto :goto_0
 | |
| .end method
 | |
| 
 | |
| .method public entityRef(Ljava/lang/String;)V
 | |
|     .locals 2
 | |
|     .param p1, "er"    # Ljava/lang/String;
 | |
| 
 | |
|     .prologue
 | |
|     .line 97
 | |
|     new-instance v0, Ljava/lang/RuntimeException;
 | |
| 
 | |
|     const-string v1, "EntityReference not supported for WBXML"
 | |
| 
 | |
|     invoke-direct {v0, v1}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V
 | |
| 
 | |
|     throw v0
 | |
| .end method
 | |
| 
 | |
| .method public flush()V
 | |
|     .locals 2
 | |
|     .annotation system Ldalvik/annotation/Throws;
 | |
|         value = {
 | |
|             Ljava/io/IOException;
 | |
|         }
 | |
|     .end annotation
 | |
| 
 | |
|     .prologue
 | |
|     .line 167
 | |
|     const/4 v0, 0x0
 | |
| 
 | |
|     invoke-virtual {p0, v0}, Lorg/kxml2/wap/WbxmlSerializer;->checkPending(Z)V
 | |
| 
 | |
|     .line 169
 | |
|     iget-boolean v0, p0, Lorg/kxml2/wap/WbxmlSerializer;->headerSent:Z
 | |
| 
 | |
|     if-nez v0, :cond_0
 | |
| 
 | |
|     .line 170
 | |
|     iget-object v0, p0, Lorg/kxml2/wap/WbxmlSerializer;->out:Ljava/io/OutputStream;
 | |
| 
 | |
|     iget-object v1, p0, Lorg/kxml2/wap/WbxmlSerializer;->stringTableBuf:Ljava/io/ByteArrayOutputStream;
 | |
| 
 | |
|     invoke-virtual {v1}, Ljava/io/ByteArrayOutputStream;->size()I
 | |
| 
 | |
|     move-result v1
 | |
| 
 | |
|     invoke-static {v0, v1}, Lorg/kxml2/wap/WbxmlSerializer;->writeInt(Ljava/io/OutputStream;I)V
 | |
| 
 | |
|     .line 171
 | |
|     iget-object v0, p0, Lorg/kxml2/wap/WbxmlSerializer;->out:Ljava/io/OutputStream;
 | |
| 
 | |
|     iget-object v1, p0, Lorg/kxml2/wap/WbxmlSerializer;->stringTableBuf:Ljava/io/ByteArrayOutputStream;
 | |
| 
 | |
|     invoke-virtual {v1}, Ljava/io/ByteArrayOutputStream;->toByteArray()[B
 | |
| 
 | |
|     move-result-object v1
 | |
| 
 | |
|     invoke-virtual {v0, v1}, Ljava/io/OutputStream;->write([B)V
 | |
| 
 | |
|     .line 172
 | |
|     const/4 v0, 0x1
 | |
| 
 | |
|     iput-boolean v0, p0, Lorg/kxml2/wap/WbxmlSerializer;->headerSent:Z
 | |
| 
 | |
|     .line 175
 | |
|     :cond_0
 | |
|     iget-object v0, p0, Lorg/kxml2/wap/WbxmlSerializer;->out:Ljava/io/OutputStream;
 | |
| 
 | |
|     iget-object v1, p0, Lorg/kxml2/wap/WbxmlSerializer;->buf:Ljava/io/ByteArrayOutputStream;
 | |
| 
 | |
|     invoke-virtual {v1}, Ljava/io/ByteArrayOutputStream;->toByteArray()[B
 | |
| 
 | |
|     move-result-object v1
 | |
| 
 | |
|     invoke-virtual {v0, v1}, Ljava/io/OutputStream;->write([B)V
 | |
| 
 | |
|     .line 176
 | |
|     iget-object v0, p0, Lorg/kxml2/wap/WbxmlSerializer;->buf:Ljava/io/ByteArrayOutputStream;
 | |
| 
 | |
|     invoke-virtual {v0}, Ljava/io/ByteArrayOutputStream;->reset()V
 | |
| 
 | |
|     .line 177
 | |
|     return-void
 | |
| .end method
 | |
| 
 | |
| .method public getDepth()I
 | |
|     .locals 1
 | |
| 
 | |
|     .prologue
 | |
|     .line 104
 | |
|     iget v0, p0, Lorg/kxml2/wap/WbxmlSerializer;->depth:I
 | |
| 
 | |
|     return v0
 | |
| .end method
 | |
| 
 | |
| .method public getFeature(Ljava/lang/String;)Z
 | |
|     .locals 1
 | |
|     .param p1, "name"    # Ljava/lang/String;
 | |
| 
 | |
|     .prologue
 | |
|     .line 111
 | |
|     const/4 v0, 0x0
 | |
| 
 | |
|     return v0
 | |
| .end method
 | |
| 
 | |
| .method public getName()Ljava/lang/String;
 | |
|     .locals 1
 | |
| 
 | |
|     .prologue
 | |
|     .line 129
 | |
|     iget-object v0, p0, Lorg/kxml2/wap/WbxmlSerializer;->pending:Ljava/lang/String;
 | |
| 
 | |
|     return-object v0
 | |
| .end method
 | |
| 
 | |
| .method public getNamespace()Ljava/lang/String;
 | |
|     .locals 1
 | |
| 
 | |
|     .prologue
 | |
|     .line 120
 | |
|     const/4 v0, 0x0
 | |
| 
 | |
|     return-object v0
 | |
| .end method
 | |
| 
 | |
| .method public getPrefix(Ljava/lang/String;Z)Ljava/lang/String;
 | |
|     .locals 2
 | |
|     .param p1, "nsp"    # Ljava/lang/String;
 | |
|     .param p2, "create"    # Z
 | |
| 
 | |
|     .prologue
 | |
|     .line 136
 | |
|     new-instance v0, Ljava/lang/RuntimeException;
 | |
| 
 | |
|     const-string v1, "NYI"
 | |
| 
 | |
|     invoke-direct {v0, v1}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V
 | |
| 
 | |
|     throw v0
 | |
| .end method
 | |
| 
 | |
| .method public getProperty(Ljava/lang/String;)Ljava/lang/Object;
 | |
|     .locals 1
 | |
|     .param p1, "name"    # Ljava/lang/String;
 | |
| 
 | |
|     .prologue
 | |
|     .line 145
 | |
|     const/4 v0, 0x0
 | |
| 
 | |
|     return-object v0
 | |
| .end method
 | |
| 
 | |
| .method public ignorableWhitespace(Ljava/lang/String;)V
 | |
|     .locals 0
 | |
|     .param p1, "sp"    # Ljava/lang/String;
 | |
| 
 | |
|     .prologue
 | |
|     .line 149
 | |
|     return-void
 | |
| .end method
 | |
| 
 | |
| .method public processingInstruction(Ljava/lang/String;)V
 | |
|     .locals 2
 | |
|     .param p1, "pi"    # Ljava/lang/String;
 | |
| 
 | |
|     .prologue
 | |
|     .line 246
 | |
|     new-instance v0, Ljava/lang/RuntimeException;
 | |
| 
 | |
|     const-string v1, "PI NYI"
 | |
| 
 | |
|     invoke-direct {v0, v1}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V
 | |
| 
 | |
|     throw v0
 | |
| .end method
 | |
| 
 | |
| .method public setAttrStartTable(I[Ljava/lang/String;)V
 | |
|     .locals 4
 | |
|     .param p1, "page"    # I
 | |
|     .param p2, "attrStartTable"    # [Ljava/lang/String;
 | |
| 
 | |
|     .prologue
 | |
|     .line 536
 | |
|     const/4 v0, 0x0
 | |
| 
 | |
|     .local v0, "i":I
 | |
|     :goto_0
 | |
|     array-length v2, p2
 | |
| 
 | |
|     if-ge v0, v2, :cond_1
 | |
| 
 | |
|     .line 537
 | |
|     aget-object v2, p2, v0
 | |
| 
 | |
|     if-eqz v2, :cond_0
 | |
| 
 | |
|     .line 538
 | |
|     const/4 v2, 0x2
 | |
| 
 | |
|     new-array v1, v2, [I
 | |
| 
 | |
|     const/4 v2, 0x0
 | |
| 
 | |
|     aput p1, v1, v2
 | |
| 
 | |
|     const/4 v2, 0x1
 | |
| 
 | |
|     add-int/lit8 v3, v0, 0x5
 | |
| 
 | |
|     aput v3, v1, v2
 | |
| 
 | |
|     .line 539
 | |
|     .local v1, "idx":[I
 | |
|     iget-object v2, p0, Lorg/kxml2/wap/WbxmlSerializer;->attrStartTable:Ljava/util/Hashtable;
 | |
| 
 | |
|     aget-object v3, p2, v0
 | |
| 
 | |
|     invoke-virtual {v2, v3, v1}, Ljava/util/Hashtable;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
 | |
| 
 | |
|     .line 536
 | |
|     .end local v1    # "idx":[I
 | |
|     :cond_0
 | |
|     add-int/lit8 v0, v0, 0x1
 | |
| 
 | |
|     goto :goto_0
 | |
| 
 | |
|     .line 542
 | |
|     :cond_1
 | |
|     return-void
 | |
| .end method
 | |
| 
 | |
| .method public setAttrValueTable(I[Ljava/lang/String;)V
 | |
|     .locals 4
 | |
|     .param p1, "page"    # I
 | |
|     .param p2, "attrValueTable"    # [Ljava/lang/String;
 | |
| 
 | |
|     .prologue
 | |
|     .line 552
 | |
|     const/4 v0, 0x0
 | |
| 
 | |
|     .local v0, "i":I
 | |
|     :goto_0
 | |
|     array-length v2, p2
 | |
| 
 | |
|     if-ge v0, v2, :cond_1
 | |
| 
 | |
|     .line 553
 | |
|     aget-object v2, p2, v0
 | |
| 
 | |
|     if-eqz v2, :cond_0
 | |
| 
 | |
|     .line 554
 | |
|     const/4 v2, 0x2
 | |
| 
 | |
|     new-array v1, v2, [I
 | |
| 
 | |
|     const/4 v2, 0x0
 | |
| 
 | |
|     aput p1, v1, v2
 | |
| 
 | |
|     const/4 v2, 0x1
 | |
| 
 | |
|     add-int/lit16 v3, v0, 0x85
 | |
| 
 | |
|     aput v3, v1, v2
 | |
| 
 | |
|     .line 555
 | |
|     .local v1, "idx":[I
 | |
|     iget-object v2, p0, Lorg/kxml2/wap/WbxmlSerializer;->attrValueTable:Ljava/util/Hashtable;
 | |
| 
 | |
|     aget-object v3, p2, v0
 | |
| 
 | |
|     invoke-virtual {v2, v3, v1}, Ljava/util/Hashtable;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
 | |
| 
 | |
|     .line 552
 | |
|     .end local v1    # "idx":[I
 | |
|     :cond_0
 | |
|     add-int/lit8 v0, v0, 0x1
 | |
| 
 | |
|     goto :goto_0
 | |
| 
 | |
|     .line 558
 | |
|     :cond_1
 | |
|     return-void
 | |
| .end method
 | |
| 
 | |
| .method public setFeature(Ljava/lang/String;Z)V
 | |
|     .locals 3
 | |
|     .param p1, "name"    # Ljava/lang/String;
 | |
|     .param p2, "value"    # Z
 | |
| 
 | |
|     .prologue
 | |
|     .line 253
 | |
|     new-instance v0, Ljava/lang/IllegalArgumentException;
 | |
| 
 | |
|     new-instance v1, Ljava/lang/StringBuilder;
 | |
| 
 | |
|     invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
 | |
| 
 | |
|     const-string v2, "unknown feature "
 | |
| 
 | |
|     invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
 | |
| 
 | |
|     move-result-object v1
 | |
| 
 | |
|     invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
 | |
| 
 | |
|     move-result-object v1
 | |
| 
 | |
|     invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
 | |
| 
 | |
|     move-result-object v1
 | |
| 
 | |
|     invoke-direct {v0, v1}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
 | |
| 
 | |
|     throw v0
 | |
| .end method
 | |
| 
 | |
| .method public setOutput(Ljava/io/OutputStream;Ljava/lang/String;)V
 | |
|     .locals 1
 | |
|     .param p1, "out"    # Ljava/io/OutputStream;
 | |
|     .param p2, "encoding"    # Ljava/lang/String;
 | |
|     .annotation system Ldalvik/annotation/Throws;
 | |
|         value = {
 | |
|             Ljava/io/IOException;
 | |
|         }
 | |
|     .end annotation
 | |
| 
 | |
|     .prologue
 | |
|     .line 268
 | |
|     if-nez p2, :cond_0
 | |
| 
 | |
|     const-string p2, "UTF-8"
 | |
| 
 | |
|     .end local p2    # "encoding":Ljava/lang/String;
 | |
|     :cond_0
 | |
|     iput-object p2, p0, Lorg/kxml2/wap/WbxmlSerializer;->encoding:Ljava/lang/String;
 | |
| 
 | |
|     .line 269
 | |
|     iput-object p1, p0, Lorg/kxml2/wap/WbxmlSerializer;->out:Ljava/io/OutputStream;
 | |
| 
 | |
|     .line 271
 | |
|     new-instance v0, Ljava/io/ByteArrayOutputStream;
 | |
| 
 | |
|     invoke-direct {v0}, Ljava/io/ByteArrayOutputStream;-><init>()V
 | |
| 
 | |
|     iput-object v0, p0, Lorg/kxml2/wap/WbxmlSerializer;->buf:Ljava/io/ByteArrayOutputStream;
 | |
| 
 | |
|     .line 272
 | |
|     new-instance v0, Ljava/io/ByteArrayOutputStream;
 | |
| 
 | |
|     invoke-direct {v0}, Ljava/io/ByteArrayOutputStream;-><init>()V
 | |
| 
 | |
|     iput-object v0, p0, Lorg/kxml2/wap/WbxmlSerializer;->stringTableBuf:Ljava/io/ByteArrayOutputStream;
 | |
| 
 | |
|     .line 273
 | |
|     const/4 v0, 0x0
 | |
| 
 | |
|     iput-boolean v0, p0, Lorg/kxml2/wap/WbxmlSerializer;->headerSent:Z
 | |
| 
 | |
|     .line 276
 | |
|     return-void
 | |
| .end method
 | |
| 
 | |
| .method public setOutput(Ljava/io/Writer;)V
 | |
|     .locals 2
 | |
|     .param p1, "writer"    # Ljava/io/Writer;
 | |
| 
 | |
|     .prologue
 | |
|     .line 260
 | |
|     new-instance v0, Ljava/lang/RuntimeException;
 | |
| 
 | |
|     const-string v1, "Wbxml requires an OutputStream!"
 | |
| 
 | |
|     invoke-direct {v0, v1}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V
 | |
| 
 | |
|     throw v0
 | |
| .end method
 | |
| 
 | |
| .method public setPrefix(Ljava/lang/String;Ljava/lang/String;)V
 | |
|     .locals 2
 | |
|     .param p1, "prefix"    # Ljava/lang/String;
 | |
|     .param p2, "nsp"    # Ljava/lang/String;
 | |
| 
 | |
|     .prologue
 | |
|     .line 282
 | |
|     new-instance v0, Ljava/lang/RuntimeException;
 | |
| 
 | |
|     const-string v1, "NYI"
 | |
| 
 | |
|     invoke-direct {v0, v1}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V
 | |
| 
 | |
|     throw v0
 | |
| .end method
 | |
| 
 | |
| .method public setProperty(Ljava/lang/String;Ljava/lang/Object;)V
 | |
|     .locals 3
 | |
|     .param p1, "property"    # Ljava/lang/String;
 | |
|     .param p2, "value"    # Ljava/lang/Object;
 | |
| 
 | |
|     .prologue
 | |
|     .line 289
 | |
|     new-instance v0, Ljava/lang/IllegalArgumentException;
 | |
| 
 | |
|     new-instance v1, Ljava/lang/StringBuilder;
 | |
| 
 | |
|     invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
 | |
| 
 | |
|     const-string v2, "unknown property "
 | |
| 
 | |
|     invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
 | |
| 
 | |
|     move-result-object v1
 | |
| 
 | |
|     invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
 | |
| 
 | |
|     move-result-object v1
 | |
| 
 | |
|     invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
 | |
| 
 | |
|     move-result-object v1
 | |
| 
 | |
|     invoke-direct {v0, v1}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
 | |
| 
 | |
|     throw v0
 | |
| .end method
 | |
| 
 | |
| .method public setTagTable(I[Ljava/lang/String;)V
 | |
|     .locals 4
 | |
|     .param p1, "page"    # I
 | |
|     .param p2, "tagTable"    # [Ljava/lang/String;
 | |
| 
 | |
|     .prologue
 | |
|     .line 518
 | |
|     const/4 v0, 0x0
 | |
| 
 | |
|     .local v0, "i":I
 | |
|     :goto_0
 | |
|     array-length v2, p2
 | |
| 
 | |
|     if-ge v0, v2, :cond_1
 | |
| 
 | |
|     .line 519
 | |
|     aget-object v2, p2, v0
 | |
| 
 | |
|     if-eqz v2, :cond_0
 | |
| 
 | |
|     .line 520
 | |
|     const/4 v2, 0x2
 | |
| 
 | |
|     new-array v1, v2, [I
 | |
| 
 | |
|     const/4 v2, 0x0
 | |
| 
 | |
|     aput p1, v1, v2
 | |
| 
 | |
|     const/4 v2, 0x1
 | |
| 
 | |
|     add-int/lit8 v3, v0, 0x5
 | |
| 
 | |
|     aput v3, v1, v2
 | |
| 
 | |
|     .line 521
 | |
|     .local v1, "idx":[I
 | |
|     iget-object v2, p0, Lorg/kxml2/wap/WbxmlSerializer;->tagTable:Ljava/util/Hashtable;
 | |
| 
 | |
|     aget-object v3, p2, v0
 | |
| 
 | |
|     invoke-virtual {v2, v3, v1}, Ljava/util/Hashtable;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
 | |
| 
 | |
|     .line 518
 | |
|     .end local v1    # "idx":[I
 | |
|     :cond_0
 | |
|     add-int/lit8 v0, v0, 0x1
 | |
| 
 | |
|     goto :goto_0
 | |
| 
 | |
|     .line 524
 | |
|     :cond_1
 | |
|     return-void
 | |
| .end method
 | |
| 
 | |
| .method public startDocument(Ljava/lang/String;Ljava/lang/Boolean;)V
 | |
|     .locals 2
 | |
|     .param p1, "encoding"    # Ljava/lang/String;
 | |
|     .param p2, "standalone"    # Ljava/lang/Boolean;
 | |
|     .annotation system Ldalvik/annotation/Throws;
 | |
|         value = {
 | |
|             Ljava/io/IOException;
 | |
|         }
 | |
|     .end annotation
 | |
| 
 | |
|     .prologue
 | |
|     .line 299
 | |
|     iget-object v0, p0, Lorg/kxml2/wap/WbxmlSerializer;->out:Ljava/io/OutputStream;
 | |
| 
 | |
|     const/4 v1, 0x3
 | |
| 
 | |
|     invoke-virtual {v0, v1}, Ljava/io/OutputStream;->write(I)V
 | |
| 
 | |
|     .line 301
 | |
|     iget-object v0, p0, Lorg/kxml2/wap/WbxmlSerializer;->out:Ljava/io/OutputStream;
 | |
| 
 | |
|     const/4 v1, 0x1
 | |
| 
 | |
|     invoke-virtual {v0, v1}, Ljava/io/OutputStream;->write(I)V
 | |
| 
 | |
|     .line 305
 | |
|     if-eqz p1, :cond_0
 | |
| 
 | |
|     .line 306
 | |
|     iput-object p1, p0, Lorg/kxml2/wap/WbxmlSerializer;->encoding:Ljava/lang/String;
 | |
| 
 | |
|     .line 309
 | |
|     :cond_0
 | |
|     iget-object v0, p0, Lorg/kxml2/wap/WbxmlSerializer;->encoding:Ljava/lang/String;
 | |
| 
 | |
|     invoke-virtual {v0}, Ljava/lang/String;->toUpperCase()Ljava/lang/String;
 | |
| 
 | |
|     move-result-object v0
 | |
| 
 | |
|     const-string v1, "UTF-8"
 | |
| 
 | |
|     invoke-virtual {v0, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
 | |
| 
 | |
|     move-result v0
 | |
| 
 | |
|     if-eqz v0, :cond_1
 | |
| 
 | |
|     .line 310
 | |
|     iget-object v0, p0, Lorg/kxml2/wap/WbxmlSerializer;->out:Ljava/io/OutputStream;
 | |
| 
 | |
|     const/16 v1, 0x6a
 | |
| 
 | |
|     invoke-virtual {v0, v1}, Ljava/io/OutputStream;->write(I)V
 | |
| 
 | |
|     .line 316
 | |
|     :goto_0
 | |
|     return-void
 | |
| 
 | |
|     .line 311
 | |
|     :cond_1
 | |
|     iget-object v0, p0, Lorg/kxml2/wap/WbxmlSerializer;->encoding:Ljava/lang/String;
 | |
| 
 | |
|     invoke-virtual {v0}, Ljava/lang/String;->toUpperCase()Ljava/lang/String;
 | |
| 
 | |
|     move-result-object v0
 | |
| 
 | |
|     const-string v1, "ISO-8859-1"
 | |
| 
 | |
|     invoke-virtual {v0, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
 | |
| 
 | |
|     move-result v0
 | |
| 
 | |
|     if-eqz v0, :cond_2
 | |
| 
 | |
|     .line 312
 | |
|     iget-object v0, p0, Lorg/kxml2/wap/WbxmlSerializer;->out:Ljava/io/OutputStream;
 | |
| 
 | |
|     const/4 v1, 0x4
 | |
| 
 | |
|     invoke-virtual {v0, v1}, Ljava/io/OutputStream;->write(I)V
 | |
| 
 | |
|     goto :goto_0
 | |
| 
 | |
|     .line 314
 | |
|     :cond_2
 | |
|     new-instance v0, Ljava/io/UnsupportedEncodingException;
 | |
| 
 | |
|     invoke-direct {v0, p1}, Ljava/io/UnsupportedEncodingException;-><init>(Ljava/lang/String;)V
 | |
| 
 | |
|     throw v0
 | |
| .end method
 | |
| 
 | |
| .method public startTag(Ljava/lang/String;Ljava/lang/String;)Lorg/xmlpull/v1/XmlSerializer;
 | |
|     .locals 2
 | |
|     .param p1, "namespace"    # Ljava/lang/String;
 | |
|     .param p2, "name"    # Ljava/lang/String;
 | |
|     .annotation system Ldalvik/annotation/Throws;
 | |
|         value = {
 | |
|             Ljava/io/IOException;
 | |
|         }
 | |
|     .end annotation
 | |
| 
 | |
|     .prologue
 | |
|     .line 321
 | |
|     if-eqz p1, :cond_0
 | |
| 
 | |
|     const-string v0, ""
 | |
| 
 | |
|     invoke-virtual {v0, p1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
 | |
| 
 | |
|     move-result v0
 | |
| 
 | |
|     if-nez v0, :cond_0
 | |
| 
 | |
|     .line 322
 | |
|     new-instance v0, Ljava/lang/RuntimeException;
 | |
| 
 | |
|     const-string v1, "NSP NYI"
 | |
| 
 | |
|     invoke-direct {v0, v1}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V
 | |
| 
 | |
|     throw v0
 | |
| 
 | |
|     .line 326
 | |
|     :cond_0
 | |
|     const/4 v0, 0x0
 | |
| 
 | |
|     invoke-virtual {p0, v0}, Lorg/kxml2/wap/WbxmlSerializer;->checkPending(Z)V
 | |
| 
 | |
|     .line 327
 | |
|     iput-object p2, p0, Lorg/kxml2/wap/WbxmlSerializer;->pending:Ljava/lang/String;
 | |
| 
 | |
|     .line 328
 | |
|     iget v0, p0, Lorg/kxml2/wap/WbxmlSerializer;->depth:I
 | |
| 
 | |
|     add-int/lit8 v0, v0, 0x1
 | |
| 
 | |
|     iput v0, p0, Lorg/kxml2/wap/WbxmlSerializer;->depth:I
 | |
| 
 | |
|     .line 330
 | |
|     return-object p0
 | |
| .end method
 | |
| 
 | |
| .method public text(Ljava/lang/String;)Lorg/xmlpull/v1/XmlSerializer;
 | |
|     .locals 1
 | |
|     .param p1, "text"    # Ljava/lang/String;
 | |
|     .annotation system Ldalvik/annotation/Throws;
 | |
|         value = {
 | |
|             Ljava/io/IOException;
 | |
|         }
 | |
|     .end annotation
 | |
| 
 | |
|     .prologue
 | |
|     .line 340
 | |
|     const/4 v0, 0x0
 | |
| 
 | |
|     invoke-virtual {p0, v0}, Lorg/kxml2/wap/WbxmlSerializer;->checkPending(Z)V
 | |
| 
 | |
|     .line 341
 | |
|     invoke-direct {p0, p1}, Lorg/kxml2/wap/WbxmlSerializer;->writeStr(Ljava/lang/String;)V
 | |
| 
 | |
|     .line 342
 | |
|     return-object p0
 | |
| .end method
 | |
| 
 | |
| .method public text([CII)Lorg/xmlpull/v1/XmlSerializer;
 | |
|     .locals 1
 | |
|     .param p1, "chars"    # [C
 | |
|     .param p2, "start"    # I
 | |
|     .param p3, "len"    # I
 | |
|     .annotation system Ldalvik/annotation/Throws;
 | |
|         value = {
 | |
|             Ljava/io/IOException;
 | |
|         }
 | |
|     .end annotation
 | |
| 
 | |
|     .prologue
 | |
|     .line 334
 | |
|     const/4 v0, 0x0
 | |
| 
 | |
|     invoke-virtual {p0, v0}, Lorg/kxml2/wap/WbxmlSerializer;->checkPending(Z)V
 | |
| 
 | |
|     .line 335
 | |
|     new-instance v0, Ljava/lang/String;
 | |
| 
 | |
|     invoke-direct {v0, p1, p2, p3}, Ljava/lang/String;-><init>([CII)V
 | |
| 
 | |
|     invoke-direct {p0, v0}, Lorg/kxml2/wap/WbxmlSerializer;->writeStr(Ljava/lang/String;)V
 | |
| 
 | |
|     .line 336
 | |
|     return-object p0
 | |
| .end method
 | |
| 
 | |
| .method writeStrI(Ljava/io/OutputStream;Ljava/lang/String;)V
 | |
|     .locals 2
 | |
|     .param p1, "out"    # Ljava/io/OutputStream;
 | |
|     .param p2, "s"    # Ljava/lang/String;
 | |
|     .annotation system Ldalvik/annotation/Throws;
 | |
|         value = {
 | |
|             Ljava/io/IOException;
 | |
|         }
 | |
|     .end annotation
 | |
| 
 | |
|     .prologue
 | |
|     .line 463
 | |
|     iget-object v1, p0, Lorg/kxml2/wap/WbxmlSerializer;->encoding:Ljava/lang/String;
 | |
| 
 | |
|     invoke-virtual {p2, v1}, Ljava/lang/String;->getBytes(Ljava/lang/String;)[B
 | |
| 
 | |
|     move-result-object v0
 | |
| 
 | |
|     .line 464
 | |
|     .local v0, "data":[B
 | |
|     invoke-virtual {p1, v0}, Ljava/io/OutputStream;->write([B)V
 | |
| 
 | |
|     .line 465
 | |
|     const/4 v1, 0x0
 | |
| 
 | |
|     invoke-virtual {p1, v1}, Ljava/io/OutputStream;->write(I)V
 | |
| 
 | |
|     .line 466
 | |
|     return-void
 | |
| .end method
 | |
| 
 | |
| .method public writeWapExtension(ILjava/lang/Object;)V
 | |
|     .locals 3
 | |
|     .param p1, "type"    # I
 | |
|     .param p2, "data"    # Ljava/lang/Object;
 | |
|     .annotation system Ldalvik/annotation/Throws;
 | |
|         value = {
 | |
|             Ljava/io/IOException;
 | |
|         }
 | |
|     .end annotation
 | |
| 
 | |
|     .prologue
 | |
|     const/4 v2, 0x0
 | |
| 
 | |
|     .line 413
 | |
|     invoke-virtual {p0, v2}, Lorg/kxml2/wap/WbxmlSerializer;->checkPending(Z)V
 | |
| 
 | |
|     .line 414
 | |
|     iget-object v1, p0, Lorg/kxml2/wap/WbxmlSerializer;->buf:Ljava/io/ByteArrayOutputStream;
 | |
| 
 | |
|     invoke-virtual {v1, p1}, Ljava/io/ByteArrayOutputStream;->write(I)V
 | |
| 
 | |
|     .line 415
 | |
|     sparse-switch p1, :sswitch_data_0
 | |
| 
 | |
|     .line 440
 | |
|     new-instance v1, Ljava/lang/IllegalArgumentException;
 | |
| 
 | |
|     invoke-direct {v1}, Ljava/lang/IllegalArgumentException;-><init>()V
 | |
| 
 | |
|     throw v1
 | |
| 
 | |
|     .line 422
 | |
|     :sswitch_0
 | |
|     check-cast p2, [B
 | |
| 
 | |
|     .end local p2    # "data":Ljava/lang/Object;
 | |
|     move-object v0, p2
 | |
| 
 | |
|     check-cast v0, [B
 | |
| 
 | |
|     .line 423
 | |
|     .local v0, "bytes":[B
 | |
|     iget-object v1, p0, Lorg/kxml2/wap/WbxmlSerializer;->buf:Ljava/io/ByteArrayOutputStream;
 | |
| 
 | |
|     array-length v2, v0
 | |
| 
 | |
|     invoke-static {v1, v2}, Lorg/kxml2/wap/WbxmlSerializer;->writeInt(Ljava/io/OutputStream;I)V
 | |
| 
 | |
|     .line 424
 | |
|     iget-object v1, p0, Lorg/kxml2/wap/WbxmlSerializer;->buf:Ljava/io/ByteArrayOutputStream;
 | |
| 
 | |
|     invoke-virtual {v1, v0}, Ljava/io/ByteArrayOutputStream;->write([B)V
 | |
| 
 | |
|     .line 442
 | |
|     .end local v0    # "bytes":[B
 | |
|     :goto_0
 | |
|     :sswitch_1
 | |
|     return-void
 | |
| 
 | |
|     .line 430
 | |
|     .restart local p2    # "data":Ljava/lang/Object;
 | |
|     :sswitch_2
 | |
|     iget-object v1, p0, Lorg/kxml2/wap/WbxmlSerializer;->buf:Ljava/io/ByteArrayOutputStream;
 | |
| 
 | |
|     check-cast p2, Ljava/lang/String;
 | |
| 
 | |
|     .end local p2    # "data":Ljava/lang/Object;
 | |
|     invoke-virtual {p0, v1, p2}, Lorg/kxml2/wap/WbxmlSerializer;->writeStrI(Ljava/io/OutputStream;Ljava/lang/String;)V
 | |
| 
 | |
|     goto :goto_0
 | |
| 
 | |
|     .line 436
 | |
|     .restart local p2    # "data":Ljava/lang/Object;
 | |
|     :sswitch_3
 | |
|     check-cast p2, Ljava/lang/String;
 | |
| 
 | |
|     .end local p2    # "data":Ljava/lang/Object;
 | |
|     invoke-direct {p0, p2, v2}, Lorg/kxml2/wap/WbxmlSerializer;->writeStrT(Ljava/lang/String;Z)V
 | |
| 
 | |
|     goto :goto_0
 | |
| 
 | |
|     .line 415
 | |
|     nop
 | |
| 
 | |
|     :sswitch_data_0
 | |
|     .sparse-switch
 | |
|         0x40 -> :sswitch_2
 | |
|         0x41 -> :sswitch_2
 | |
|         0x42 -> :sswitch_2
 | |
|         0x80 -> :sswitch_3
 | |
|         0x81 -> :sswitch_3
 | |
|         0x82 -> :sswitch_3
 | |
|         0xc0 -> :sswitch_1
 | |
|         0xc1 -> :sswitch_1
 | |
|         0xc2 -> :sswitch_1
 | |
|         0xc3 -> :sswitch_0
 | |
|     .end sparse-switch
 | |
| .end method
 |