.class public Lg2/b$b; .super Ljava/lang/Object; .source "MetadataListReader.java" # interfaces .implements Lg2/b$d; # annotations .annotation system Ldalvik/annotation/EnclosingClass; value = Lg2/b; .end annotation .annotation system Ldalvik/annotation/InnerClass; accessFlags = 0x9 name = "b" .end annotation # instance fields .field public final c:[B .field public final d:Ljava/nio/ByteBuffer; .field public final e:Ljava/io/InputStream; .field public f:J # direct methods .method public constructor (Ljava/io/InputStream;)V .locals 2 .line 1 invoke-direct {p0}, Ljava/lang/Object;->()V const-wide/16 v0, 0x0 .line 2 iput-wide v0, p0, Lg2/b$b;->f:J .line 3 iput-object p1, p0, Lg2/b$b;->e:Ljava/io/InputStream; const/4 p1, 0x4 new-array p1, p1, [B .line 4 iput-object p1, p0, Lg2/b$b;->c:[B .line 5 invoke-static {p1}, Ljava/nio/ByteBuffer;->wrap([B)Ljava/nio/ByteBuffer; move-result-object p1 iput-object p1, p0, Lg2/b$b;->d:Ljava/nio/ByteBuffer; .line 6 sget-object v0, Ljava/nio/ByteOrder;->BIG_ENDIAN:Ljava/nio/ByteOrder; invoke-virtual {p1, v0}, Ljava/nio/ByteBuffer;->order(Ljava/nio/ByteOrder;)Ljava/nio/ByteBuffer; return-void .end method # virtual methods .method public a()I .locals 2 .annotation system Ldalvik/annotation/Throws; value = { Ljava/io/IOException; } .end annotation .line 1 iget-object v0, p0, Lg2/b$b;->d:Ljava/nio/ByteBuffer; const/4 v1, 0x0 invoke-virtual {v0, v1}, Ljava/nio/ByteBuffer;->position(I)Ljava/nio/Buffer; const/4 v0, 0x4 .line 2 invoke-virtual {p0, v0}, Lg2/b$b;->c(I)V .line 3 iget-object v0, p0, Lg2/b$b;->d:Ljava/nio/ByteBuffer; invoke-virtual {v0}, Ljava/nio/ByteBuffer;->getInt()I move-result v0 return v0 .end method .method public b()J .locals 2 .annotation system Ldalvik/annotation/Throws; value = { Ljava/io/IOException; } .end annotation .line 1 iget-object v0, p0, Lg2/b$b;->d:Ljava/nio/ByteBuffer; const/4 v1, 0x0 invoke-virtual {v0, v1}, Ljava/nio/ByteBuffer;->position(I)Ljava/nio/Buffer; const/4 v0, 0x4 .line 2 invoke-virtual {p0, v0}, Lg2/b$b;->c(I)V .line 3 iget-object v0, p0, Lg2/b$b;->d:Ljava/nio/ByteBuffer; invoke-virtual {v0}, Ljava/nio/ByteBuffer;->getInt()I move-result v0 invoke-static {v0}, Lg2/b;->e(I)J move-result-wide v0 return-wide v0 .end method .method public final c(I)V .locals 4 .param p1 # I .annotation build Landroidx/annotation/IntRange; from = 0x0L to = 0x4L .end annotation .end param .annotation system Ldalvik/annotation/Throws; value = { Ljava/io/IOException; } .end annotation .line 1 iget-object v0, p0, Lg2/b$b;->e:Ljava/io/InputStream; iget-object v1, p0, Lg2/b$b;->c:[B const/4 v2, 0x0 invoke-virtual {v0, v1, v2, p1}, Ljava/io/InputStream;->read([BII)I move-result v0 if-ne v0, p1, :cond_0 .line 2 iget-wide v0, p0, Lg2/b$b;->f:J int-to-long v2, p1 add-long/2addr v0, v2 iput-wide v0, p0, Lg2/b$b;->f:J return-void .line 3 :cond_0 new-instance p1, Ljava/io/IOException; const-string v0, "read failed" invoke-direct {p1, v0}, Ljava/io/IOException;->(Ljava/lang/String;)V throw p1 .end method .method public getPosition()J .locals 2 .line 1 iget-wide v0, p0, Lg2/b$b;->f:J return-wide v0 .end method .method public readUnsignedShort()I .locals 2 .annotation system Ldalvik/annotation/Throws; value = { Ljava/io/IOException; } .end annotation .line 1 iget-object v0, p0, Lg2/b$b;->d:Ljava/nio/ByteBuffer; const/4 v1, 0x0 invoke-virtual {v0, v1}, Ljava/nio/ByteBuffer;->position(I)Ljava/nio/Buffer; const/4 v0, 0x2 .line 2 invoke-virtual {p0, v0}, Lg2/b$b;->c(I)V .line 3 iget-object v0, p0, Lg2/b$b;->d:Ljava/nio/ByteBuffer; invoke-virtual {v0}, Ljava/nio/ByteBuffer;->getShort()S move-result v0 invoke-static {v0}, Lg2/b;->f(S)I move-result v0 return v0 .end method .method public skip(I)V .locals 5 .annotation system Ldalvik/annotation/Throws; value = { Ljava/io/IOException; } .end annotation :goto_0 if-lez p1, :cond_1 .line 1 iget-object v0, p0, Lg2/b$b;->e:Ljava/io/InputStream; int-to-long v1, p1 invoke-virtual {v0, v1, v2}, Ljava/io/InputStream;->skip(J)J move-result-wide v0 long-to-int v0, v0 const/4 v1, 0x1 if-lt v0, v1, :cond_0 sub-int/2addr p1, v0 .line 2 iget-wide v1, p0, Lg2/b$b;->f:J int-to-long v3, v0 add-long/2addr v1, v3 iput-wide v1, p0, Lg2/b$b;->f:J goto :goto_0 .line 3 :cond_0 new-instance p1, Ljava/io/IOException; const-string v0, "Skip didn\'t move at least 1 byte forward" invoke-direct {p1, v0}, Ljava/io/IOException;->(Ljava/lang/String;)V throw p1 :cond_1 return-void .end method