ConcatenatedDataBuffer.smali
.class public final Lcom/google/android/gms/common/data/ConcatenatedDataBuffer;
.super Ljava/lang/Object;
# interfaces
.implements Lcom/google/android/gms/common/data/DataBuffer;
.implements Lcom/google/android/gms/common/data/ExclusionFilterable;
.implements Lcom/google/android/gms/common/data/TextFilterable;
# annotations
.annotation build Lcom/google/android/gms/common/util/VisibleForTesting;
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"<T:",
"Ljava/lang/Object;",
">",
"Ljava/lang/Object;",
"Lcom/google/android/gms/common/data/DataBuffer",
"<TT;>;",
"Lcom/google/android/gms/common/data/ExclusionFilterable;",
"Lcom/google/android/gms/common/data/TextFilterable;"
}
.end annotation
# instance fields
.field private mBundle:Landroid/os/Bundle;
.field private final zznf:Ljava/util/ArrayList;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/ArrayList",
"<",
"Lcom/google/android/gms/common/data/DataBuffer",
"<TT;>;>;"
}
.end annotation
.end field
.field private final zzng:Ljava/util/ArrayList;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/ArrayList",
"<",
"Ljava/lang/Integer;",
">;"
}
.end annotation
.end field
.field private zznh:I
# direct methods
.method public constructor <init>()V
.registers 2
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
new-instance v0, Ljava/util/ArrayList;
invoke-direct {v0}, Ljava/util/ArrayList;-><init>()V
iput-object v0, p0, Lcom/google/android/gms/common/data/ConcatenatedDataBuffer;->zznf:Ljava/util/ArrayList;
new-instance v0, Ljava/util/ArrayList;
invoke-direct {v0}, Ljava/util/ArrayList;-><init>()V
iput-object v0, p0, Lcom/google/android/gms/common/data/ConcatenatedDataBuffer;->zzng:Ljava/util/ArrayList;
return-void
.end method
.method public constructor <init>(Lcom/google/android/gms/common/data/DataBuffer;)V
.registers 3
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Lcom/google/android/gms/common/data/DataBuffer",
"<TT;>;)V"
}
.end annotation
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
new-instance v0, Ljava/util/ArrayList;
invoke-direct {v0}, Ljava/util/ArrayList;-><init>()V
iput-object v0, p0, Lcom/google/android/gms/common/data/ConcatenatedDataBuffer;->zznf:Ljava/util/ArrayList;
new-instance v0, Ljava/util/ArrayList;
invoke-direct {v0}, Ljava/util/ArrayList;-><init>()V
iput-object v0, p0, Lcom/google/android/gms/common/data/ConcatenatedDataBuffer;->zzng:Ljava/util/ArrayList;
invoke-virtual {p0, p1}, Lcom/google/android/gms/common/data/ConcatenatedDataBuffer;->append(Lcom/google/android/gms/common/data/DataBuffer;)V
return-void
.end method
.method public static extend(Lcom/google/android/gms/common/data/ConcatenatedDataBuffer;Lcom/google/android/gms/common/data/DataBuffer;)Lcom/google/android/gms/common/data/ConcatenatedDataBuffer;
.registers 7
.annotation system Ldalvik/annotation/Signature;
value = {
"<T:",
"Ljava/lang/Object;",
">(",
"Lcom/google/android/gms/common/data/ConcatenatedDataBuffer",
"<TT;>;",
"Lcom/google/android/gms/common/data/DataBuffer",
"<TT;>;)",
"Lcom/google/android/gms/common/data/ConcatenatedDataBuffer",
"<TT;>;"
}
.end annotation
new-instance v3, Lcom/google/android/gms/common/data/ConcatenatedDataBuffer;
invoke-direct {v3}, Lcom/google/android/gms/common/data/ConcatenatedDataBuffer;-><init>()V
iget-object v0, p0, Lcom/google/android/gms/common/data/ConcatenatedDataBuffer;->zznf:Ljava/util/ArrayList;
check-cast v0, Ljava/util/ArrayList;
invoke-virtual {v0}, Ljava/util/ArrayList;->size()I
move-result v4
const/4 v1, 0x0
move v2, v1
:goto_f
if-ge v2, v4, :cond_1d
invoke-virtual {v0, v2}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;
move-result-object v1
add-int/lit8 v2, v2, 0x1
check-cast v1, Lcom/google/android/gms/common/data/DataBuffer;
invoke-virtual {v3, v1}, Lcom/google/android/gms/common/data/ConcatenatedDataBuffer;->append(Lcom/google/android/gms/common/data/DataBuffer;)V
goto :goto_f
:cond_1d
invoke-virtual {v3, p1}, Lcom/google/android/gms/common/data/ConcatenatedDataBuffer;->append(Lcom/google/android/gms/common/data/DataBuffer;)V
return-object v3
.end method
# virtual methods
.method public final append(Lcom/google/android/gms/common/data/DataBuffer;)V
.registers 6
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Lcom/google/android/gms/common/data/DataBuffer",
"<TT;>;)V"
}
.end annotation
if-nez p1, :cond_3
:goto_2
return-void
:cond_3
monitor-enter p0
:try_start_4
iget-object v0, p0, Lcom/google/android/gms/common/data/ConcatenatedDataBuffer;->zznf:Ljava/util/ArrayList;
invoke-virtual {v0}, Ljava/util/ArrayList;->isEmpty()Z
move-result v0
if-eqz v0, :cond_26
new-instance v0, Landroid/os/Bundle;
invoke-direct {v0}, Landroid/os/Bundle;-><init>()V
iput-object v0, p0, Lcom/google/android/gms/common/data/ConcatenatedDataBuffer;->mBundle:Landroid/os/Bundle;
invoke-interface {p1}, Lcom/google/android/gms/common/data/DataBuffer;->getMetadata()Landroid/os/Bundle;
move-result-object v0
if-eqz v0, :cond_26
iget-object v1, p0, Lcom/google/android/gms/common/data/ConcatenatedDataBuffer;->mBundle:Landroid/os/Bundle;
const-string v2, "prev_page_token"
const-string v3, "prev_page_token"
invoke-virtual {v0, v3}, Landroid/os/Bundle;->getString(Ljava/lang/String;)Ljava/lang/String;
move-result-object v0
invoke-virtual {v1, v2, v0}, Landroid/os/Bundle;->putString(Ljava/lang/String;Ljava/lang/String;)V
:cond_26
iget-object v0, p0, Lcom/google/android/gms/common/data/ConcatenatedDataBuffer;->zznf:Ljava/util/ArrayList;
invoke-virtual {v0, p1}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
invoke-virtual {p0}, Lcom/google/android/gms/common/data/ConcatenatedDataBuffer;->computeCounts()V
invoke-interface {p1}, Lcom/google/android/gms/common/data/DataBuffer;->getMetadata()Landroid/os/Bundle;
move-result-object v0
if-eqz v0, :cond_46
iget-object v1, p0, Lcom/google/android/gms/common/data/ConcatenatedDataBuffer;->mBundle:Landroid/os/Bundle;
const-string v2, "next_page_token"
const-string v3, "next_page_token"
invoke-virtual {v0, v3}, Landroid/os/Bundle;->getString(Ljava/lang/String;)Ljava/lang/String;
move-result-object v0
invoke-virtual {v1, v2, v0}, Landroid/os/Bundle;->putString(Ljava/lang/String;Ljava/lang/String;)V
:goto_41
monitor-exit p0
goto :goto_2
:catchall_43
move-exception v0
monitor-exit p0
:try_end_45
.catchall {:try_start_4 .. :try_end_45} :catchall_43
throw v0
:cond_46
:try_start_46
iget-object v0, p0, Lcom/google/android/gms/common/data/ConcatenatedDataBuffer;->mBundle:Landroid/os/Bundle;
const-string v1, "next_page_token"
invoke-virtual {v0, v1}, Landroid/os/Bundle;->remove(Ljava/lang/String;)V
:try_end_4d
.catchall {:try_start_46 .. :try_end_4d} :catchall_43
goto :goto_41
.end method
.method public final clearFilters()V
.registers 5
const/4 v0, 0x0
iget-object v1, p0, Lcom/google/android/gms/common/data/ConcatenatedDataBuffer;->zznf:Ljava/util/ArrayList;
invoke-virtual {v1}, Ljava/util/ArrayList;->size()I
move-result v2
move v1, v0
:goto_8
if-ge v1, v2, :cond_1f
iget-object v0, p0, Lcom/google/android/gms/common/data/ConcatenatedDataBuffer;->zznf:Ljava/util/ArrayList;
invoke-virtual {v0, v1}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;
move-result-object v0
check-cast v0, Lcom/google/android/gms/common/data/DataBuffer;
instance-of v3, v0, Lcom/google/android/gms/common/data/ExclusionFilterable;
if-eqz v3, :cond_1b
check-cast v0, Lcom/google/android/gms/common/data/ExclusionFilterable;
invoke-interface {v0}, Lcom/google/android/gms/common/data/ExclusionFilterable;->clearFilters()V
:cond_1b
add-int/lit8 v0, v1, 0x1
move v1, v0
goto :goto_8
:cond_1f
invoke-virtual {p0}, Lcom/google/android/gms/common/data/ConcatenatedDataBuffer;->computeCounts()V
return-void
.end method
.method public final close()V
.registers 1
.annotation runtime Ljava/lang/Deprecated;
.end annotation
invoke-virtual {p0}, Lcom/google/android/gms/common/data/ConcatenatedDataBuffer;->release()V
return-void
.end method
.method public final computeCounts()V
.registers 6
const/4 v0, 0x0
iget-object v1, p0, Lcom/google/android/gms/common/data/ConcatenatedDataBuffer;->zzng:Ljava/util/ArrayList;
invoke-virtual {v1}, Ljava/util/ArrayList;->clear()V
iget-object v1, p0, Lcom/google/android/gms/common/data/ConcatenatedDataBuffer;->zznf:Ljava/util/ArrayList;
invoke-virtual {v1}, Ljava/util/ArrayList;->size()I
move-result v3
move v2, v0
move v1, v0
:goto_e
if-ge v2, v3, :cond_2d
iget-object v0, p0, Lcom/google/android/gms/common/data/ConcatenatedDataBuffer;->zznf:Ljava/util/ArrayList;
invoke-virtual {v0, v2}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;
move-result-object v0
check-cast v0, Lcom/google/android/gms/common/data/DataBuffer;
if-eqz v0, :cond_30
invoke-interface {v0}, Lcom/google/android/gms/common/data/DataBuffer;->getCount()I
move-result v0
add-int/2addr v0, v1
:goto_1f
iget-object v1, p0, Lcom/google/android/gms/common/data/ConcatenatedDataBuffer;->zzng:Ljava/util/ArrayList;
invoke-static {v0}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v4
invoke-virtual {v1, v4}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
add-int/lit8 v1, v2, 0x1
move v2, v1
move v1, v0
goto :goto_e
:cond_2d
iput v1, p0, Lcom/google/android/gms/common/data/ConcatenatedDataBuffer;->zznh:I
return-void
:cond_30
move v0, v1
goto :goto_1f
.end method
.method public final filterOut(Ljava/lang/String;)V
.registers 6
const/4 v0, 0x0
iget-object v1, p0, Lcom/google/android/gms/common/data/ConcatenatedDataBuffer;->zznf:Ljava/util/ArrayList;
invoke-virtual {v1}, Ljava/util/ArrayList;->size()I
move-result v2
move v1, v0
:goto_8
if-ge v1, v2, :cond_1f
iget-object v0, p0, Lcom/google/android/gms/common/data/ConcatenatedDataBuffer;->zznf:Ljava/util/ArrayList;
invoke-virtual {v0, v1}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;
move-result-object v0
check-cast v0, Lcom/google/android/gms/common/data/DataBuffer;
instance-of v3, v0, Lcom/google/android/gms/common/data/ExclusionFilterable;
if-eqz v3, :cond_1b
check-cast v0, Lcom/google/android/gms/common/data/ExclusionFilterable;
invoke-interface {v0, p1}, Lcom/google/android/gms/common/data/ExclusionFilterable;->filterOut(Ljava/lang/String;)V
:cond_1b
add-int/lit8 v0, v1, 0x1
move v1, v0
goto :goto_8
:cond_1f
invoke-virtual {p0}, Lcom/google/android/gms/common/data/ConcatenatedDataBuffer;->computeCounts()V
return-void
.end method
.method public final get(I)Ljava/lang/Object;
.registers 6
.annotation system Ldalvik/annotation/Signature;
value = {
"(I)TT;"
}
.end annotation
monitor-enter p0
const/4 v0, 0x0
:try_start_2
iget-object v1, p0, Lcom/google/android/gms/common/data/ConcatenatedDataBuffer;->zznf:Ljava/util/ArrayList;
invoke-virtual {v1}, Ljava/util/ArrayList;->size()I
move-result v2
move v1, v0
:goto_9
if-ge v1, v2, :cond_34
iget-object v0, p0, Lcom/google/android/gms/common/data/ConcatenatedDataBuffer;->zzng:Ljava/util/ArrayList;
invoke-virtual {v0, v1}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;
move-result-object v0
check-cast v0, Ljava/lang/Integer;
invoke-virtual {v0}, Ljava/lang/Integer;->intValue()I
move-result v3
if-ge p1, v3, :cond_30
iget-object v0, p0, Lcom/google/android/gms/common/data/ConcatenatedDataBuffer;->zznf:Ljava/util/ArrayList;
invoke-virtual {v0, v1}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;
move-result-object v0
check-cast v0, Lcom/google/android/gms/common/data/DataBuffer;
if-eqz v0, :cond_30
sub-int v1, p1, v3
invoke-interface {v0}, Lcom/google/android/gms/common/data/DataBuffer;->getCount()I
move-result v2
add-int/2addr v1, v2
invoke-interface {v0, v1}, Lcom/google/android/gms/common/data/DataBuffer;->get(I)Ljava/lang/Object;
move-result-object v0
monitor-exit p0
:goto_2f
return-object v0
:cond_30
add-int/lit8 v0, v1, 0x1
move v1, v0
goto :goto_9
:cond_34
const/4 v0, 0x0
monitor-exit p0
goto :goto_2f
:catchall_37
move-exception v0
monitor-exit p0
:try_end_39
.catchall {:try_start_2 .. :try_end_39} :catchall_37
throw v0
.end method
.method public final getCount()I
.registers 2
monitor-enter p0
:try_start_1
iget v0, p0, Lcom/google/android/gms/common/data/ConcatenatedDataBuffer;->zznh:I
monitor-exit p0
return v0
:catchall_5
move-exception v0
monitor-exit p0
:try_end_7
.catchall {:try_start_1 .. :try_end_7} :catchall_5
throw v0
.end method
.method public final getMetadata()Landroid/os/Bundle;
.registers 2
monitor-enter p0
:try_start_1
iget-object v0, p0, Lcom/google/android/gms/common/data/ConcatenatedDataBuffer;->mBundle:Landroid/os/Bundle;
monitor-exit p0
return-object v0
:catchall_5
move-exception v0
monitor-exit p0
:try_end_7
.catchall {:try_start_1 .. :try_end_7} :catchall_5
throw v0
.end method
.method public final isClosed()Z
.registers 2
.annotation runtime Ljava/lang/Deprecated;
.end annotation
const/4 v0, 0x0
return v0
.end method
.method public final iterator()Ljava/util/Iterator;
.registers 2
.annotation system Ldalvik/annotation/Signature;
value = {
"()",
"Ljava/util/Iterator",
"<TT;>;"
}
.end annotation
new-instance v0, Lcom/google/android/gms/common/data/DataBufferIterator;
invoke-direct {v0, p0}, Lcom/google/android/gms/common/data/DataBufferIterator;-><init>(Lcom/google/android/gms/common/data/DataBuffer;)V
return-object v0
.end method
.method public final release()V
.registers 4
monitor-enter p0
const/4 v0, 0x0
:try_start_2
iget-object v1, p0, Lcom/google/android/gms/common/data/ConcatenatedDataBuffer;->zznf:Ljava/util/ArrayList;
invoke-virtual {v1}, Ljava/util/ArrayList;->size()I
move-result v2
move v1, v0
:goto_9
if-ge v1, v2, :cond_1c
iget-object v0, p0, Lcom/google/android/gms/common/data/ConcatenatedDataBuffer;->zznf:Ljava/util/ArrayList;
invoke-virtual {v0, v1}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;
move-result-object v0
check-cast v0, Lcom/google/android/gms/common/data/DataBuffer;
if-eqz v0, :cond_18
invoke-interface {v0}, Lcom/google/android/gms/common/data/DataBuffer;->release()V
:cond_18
add-int/lit8 v0, v1, 0x1
move v1, v0
goto :goto_9
:cond_1c
iget-object v0, p0, Lcom/google/android/gms/common/data/ConcatenatedDataBuffer;->zznf:Ljava/util/ArrayList;
invoke-virtual {v0}, Ljava/util/ArrayList;->clear()V
iget-object v0, p0, Lcom/google/android/gms/common/data/ConcatenatedDataBuffer;->zzng:Ljava/util/ArrayList;
invoke-virtual {v0}, Ljava/util/ArrayList;->clear()V
const/4 v0, 0x0
iput-object v0, p0, Lcom/google/android/gms/common/data/ConcatenatedDataBuffer;->mBundle:Landroid/os/Bundle;
monitor-exit p0
return-void
:catchall_2b
move-exception v0
monitor-exit p0
:try_end_2d
.catchall {:try_start_2 .. :try_end_2d} :catchall_2b
throw v0
.end method
.method public final setFilterTerm(Landroid/content/Context;Lcom/google/android/gms/common/data/TextFilterable$StringFilter;Ljava/lang/String;)V
.registers 8
const/4 v0, 0x0
iget-object v1, p0, Lcom/google/android/gms/common/data/ConcatenatedDataBuffer;->zznf:Ljava/util/ArrayList;
invoke-virtual {v1}, Ljava/util/ArrayList;->size()I
move-result v2
move v1, v0
:goto_8
if-ge v1, v2, :cond_1f
iget-object v0, p0, Lcom/google/android/gms/common/data/ConcatenatedDataBuffer;->zznf:Ljava/util/ArrayList;
invoke-virtual {v0, v1}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;
move-result-object v0
check-cast v0, Lcom/google/android/gms/common/data/DataBuffer;
instance-of v3, v0, Lcom/google/android/gms/common/data/TextFilterable;
if-eqz v3, :cond_1b
check-cast v0, Lcom/google/android/gms/common/data/TextFilterable;
invoke-interface {v0, p1, p2, p3}, Lcom/google/android/gms/common/data/TextFilterable;->setFilterTerm(Landroid/content/Context;Lcom/google/android/gms/common/data/TextFilterable$StringFilter;Ljava/lang/String;)V
:cond_1b
add-int/lit8 v0, v1, 0x1
move v1, v0
goto :goto_8
:cond_1f
invoke-virtual {p0}, Lcom/google/android/gms/common/data/ConcatenatedDataBuffer;->computeCounts()V
return-void
.end method
.method public final setFilterTerm(Landroid/content/Context;Ljava/lang/String;)V
.registers 7
const/4 v0, 0x0
iget-object v1, p0, Lcom/google/android/gms/common/data/ConcatenatedDataBuffer;->zznf:Ljava/util/ArrayList;
invoke-virtual {v1}, Ljava/util/ArrayList;->size()I
move-result v2
move v1, v0
:goto_8
if-ge v1, v2, :cond_1f
iget-object v0, p0, Lcom/google/android/gms/common/data/ConcatenatedDataBuffer;->zznf:Ljava/util/ArrayList;
invoke-virtual {v0, v1}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;
move-result-object v0
check-cast v0, Lcom/google/android/gms/common/data/DataBuffer;
instance-of v3, v0, Lcom/google/android/gms/common/data/TextFilterable;
if-eqz v3, :cond_1b
check-cast v0, Lcom/google/android/gms/common/data/TextFilterable;
invoke-interface {v0, p1, p2}, Lcom/google/android/gms/common/data/TextFilterable;->setFilterTerm(Landroid/content/Context;Ljava/lang/String;)V
:cond_1b
add-int/lit8 v0, v1, 0x1
move v1, v0
goto :goto_8
:cond_1f
invoke-virtual {p0}, Lcom/google/android/gms/common/data/ConcatenatedDataBuffer;->computeCounts()V
return-void
.end method
.method public final singleRefIterator()Ljava/util/Iterator;
.registers 2
.annotation system Ldalvik/annotation/Signature;
value = {
"()",
"Ljava/util/Iterator",
"<TT;>;"
}
.end annotation
invoke-virtual {p0}, Lcom/google/android/gms/common/data/ConcatenatedDataBuffer;->iterator()Ljava/util/Iterator;
move-result-object v0
return-object v0
.end method
.method public final unfilter(Ljava/lang/String;)V
.registers 6
const/4 v0, 0x0
iget-object v1, p0, Lcom/google/android/gms/common/data/ConcatenatedDataBuffer;->zznf:Ljava/util/ArrayList;
invoke-virtual {v1}, Ljava/util/ArrayList;->size()I
move-result v2
move v1, v0
:goto_8
if-ge v1, v2, :cond_1f
iget-object v0, p0, Lcom/google/android/gms/common/data/ConcatenatedDataBuffer;->zznf:Ljava/util/ArrayList;
invoke-virtual {v0, v1}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;
move-result-object v0
check-cast v0, Lcom/google/android/gms/common/data/DataBuffer;
instance-of v3, v0, Lcom/google/android/gms/common/data/ExclusionFilterable;
if-eqz v3, :cond_1b
check-cast v0, Lcom/google/android/gms/common/data/ExclusionFilterable;
invoke-interface {v0, p1}, Lcom/google/android/gms/common/data/ExclusionFilterable;->unfilter(Ljava/lang/String;)V
:cond_1b
add-int/lit8 v0, v1, 0x1
move v1, v0
goto :goto_8
:cond_1f
invoke-virtual {p0}, Lcom/google/android/gms/common/data/ConcatenatedDataBuffer;->computeCounts()V
return-void
.end method