今奥全景相机
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

214 lines
4.8 KiB

.class final Lcom/google/common/io/ByteSource$ConcatenatedByteSource;
.super Lcom/google/common/io/ByteSource;
.source "ByteSource.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/google/common/io/ByteSource;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x1a
name = "ConcatenatedByteSource"
.end annotation
# instance fields
.field private final sources:Ljava/lang/Iterable;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/lang/Iterable",
"<+",
"Lcom/google/common/io/ByteSource;",
">;"
}
.end annotation
.end field
# direct methods
.method constructor <init>(Ljava/lang/Iterable;)V
.locals 1
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Ljava/lang/Iterable",
"<+",
"Lcom/google/common/io/ByteSource;",
">;)V"
}
.end annotation
.prologue
.line 593
invoke-direct {p0}, Lcom/google/common/io/ByteSource;-><init>()V
.line 594
invoke-static {p1}, Lcom/google/common/base/Preconditions;->checkNotNull(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v0
check-cast v0, Ljava/lang/Iterable;
iput-object v0, p0, Lcom/google/common/io/ByteSource$ConcatenatedByteSource;->sources:Ljava/lang/Iterable;
.line 595
return-void
.end method
# virtual methods
.method public bridge synthetic getInput()Ljava/lang/Object;
.locals 1
.prologue
.line 589
invoke-super {p0}, Lcom/google/common/io/ByteSource;->getInput()Ljava/io/InputStream;
move-result-object v0
return-object v0
.end method
.method public isEmpty()Z
.locals 2
.prologue
.line 604
iget-object v0, p0, Lcom/google/common/io/ByteSource$ConcatenatedByteSource;->sources:Ljava/lang/Iterable;
invoke-interface {v0}, Ljava/lang/Iterable;->iterator()Ljava/util/Iterator;
move-result-object v1
:cond_0
invoke-interface {v1}, Ljava/util/Iterator;->hasNext()Z
move-result v0
if-eqz v0, :cond_1
invoke-interface {v1}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v0
check-cast v0, Lcom/google/common/io/ByteSource;
.line 605
invoke-virtual {v0}, Lcom/google/common/io/ByteSource;->isEmpty()Z
move-result v0
if-nez v0, :cond_0
.line 606
const/4 v0, 0x0
.line 609
:goto_0
return v0
:cond_1
const/4 v0, 0x1
goto :goto_0
.end method
.method public openStream()Ljava/io/InputStream;
.locals 2
.prologue
.line 599
new-instance v0, Lcom/google/common/io/MultiInputStream;
iget-object v1, p0, Lcom/google/common/io/ByteSource$ConcatenatedByteSource;->sources:Ljava/lang/Iterable;
invoke-interface {v1}, Ljava/lang/Iterable;->iterator()Ljava/util/Iterator;
move-result-object v1
invoke-direct {v0, v1}, Lcom/google/common/io/MultiInputStream;-><init>(Ljava/util/Iterator;)V
return-object v0
.end method
.method public size()J
.locals 5
.prologue
.line 614
const-wide/16 v0, 0x0
.line 615
iget-object v2, p0, Lcom/google/common/io/ByteSource$ConcatenatedByteSource;->sources:Ljava/lang/Iterable;
invoke-interface {v2}, Ljava/lang/Iterable;->iterator()Ljava/util/Iterator;
move-result-object v4
move-wide v2, v0
:goto_0
invoke-interface {v4}, Ljava/util/Iterator;->hasNext()Z
move-result v0
if-eqz v0, :cond_0
invoke-interface {v4}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v0
check-cast v0, Lcom/google/common/io/ByteSource;
.line 616
invoke-virtual {v0}, Lcom/google/common/io/ByteSource;->size()J
move-result-wide v0
add-long/2addr v0, v2
move-wide v2, v0
.line 617
goto :goto_0
.line 618
:cond_0
return-wide v2
.end method
.method public toString()Ljava/lang/String;
.locals 2
.prologue
.line 623
new-instance v0, Ljava/lang/StringBuilder;
invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
const-string v1, "ByteSource.concat("
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v0
iget-object v1, p0, Lcom/google/common/io/ByteSource$ConcatenatedByteSource;->sources:Ljava/lang/Iterable;
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
move-result-object v0
const-string v1, ")"
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v0
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
return-object v0
.end method