DataLogger.smali
.class public Lcom/iflytek/cloud/msc/util/DataLogger;
.super Ljava/lang/Object;
.source "SourceFile"
# instance fields
.field private bufferMap:Ljava/util/HashMap;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/HashMap",
"<",
"Ljava/lang/String;",
"Ljava/util/concurrent/ConcurrentLinkedQueue",
"<[B>;>;"
}
.end annotation
.end field
# direct methods
.method public constructor <init>()V
.registers 2
.prologue
.line 11
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
.line 12
new-instance v0, Ljava/util/HashMap;
invoke-direct {v0}, Ljava/util/HashMap;-><init>()V
iput-object v0, p0, Lcom/iflytek/cloud/msc/util/DataLogger;->bufferMap:Ljava/util/HashMap;
.line 13
return-void
.end method
# virtual methods
.method public addData(Ljava/lang/String;[B)V
.registers 5
.prologue
.line 22
iget-object v0, p0, Lcom/iflytek/cloud/msc/util/DataLogger;->bufferMap:Ljava/util/HashMap;
invoke-virtual {v0, p1}, Ljava/util/HashMap;->containsKey(Ljava/lang/Object;)Z
move-result v0
if-eqz v0, :cond_14
.line 23
iget-object v0, p0, Lcom/iflytek/cloud/msc/util/DataLogger;->bufferMap:Ljava/util/HashMap;
invoke-virtual {v0, p1}, Ljava/util/HashMap;->get(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v0
check-cast v0, Ljava/util/concurrent/ConcurrentLinkedQueue;
.line 24
invoke-virtual {v0, p2}, Ljava/util/concurrent/ConcurrentLinkedQueue;->add(Ljava/lang/Object;)Z
.line 30
:goto_13
return-void
.line 26
:cond_14
new-instance v0, Ljava/util/concurrent/ConcurrentLinkedQueue;
invoke-direct {v0}, Ljava/util/concurrent/ConcurrentLinkedQueue;-><init>()V
.line 27
invoke-virtual {v0, p2}, Ljava/util/concurrent/ConcurrentLinkedQueue;->add(Ljava/lang/Object;)Z
.line 28
iget-object v1, p0, Lcom/iflytek/cloud/msc/util/DataLogger;->bufferMap:Ljava/util/HashMap;
invoke-virtual {v1, p1, v0}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
goto :goto_13
.end method
.method public saveToFile()V
.registers 4
.prologue
.line 37
iget-object v0, p0, Lcom/iflytek/cloud/msc/util/DataLogger;->bufferMap:Ljava/util/HashMap;
invoke-virtual {v0}, Ljava/util/HashMap;->keySet()Ljava/util/Set;
move-result-object v0
invoke-interface {v0}, Ljava/util/Set;->iterator()Ljava/util/Iterator;
move-result-object v2
:goto_a
invoke-interface {v2}, Ljava/util/Iterator;->hasNext()Z
move-result v0
if-eqz v0, :cond_22
invoke-interface {v2}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v0
check-cast v0, Ljava/lang/String;
.line 38
iget-object v1, p0, Lcom/iflytek/cloud/msc/util/DataLogger;->bufferMap:Ljava/util/HashMap;
invoke-virtual {v1, v0}, Ljava/util/HashMap;->get(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v1
check-cast v1, Ljava/util/concurrent/ConcurrentLinkedQueue;
.line 39
invoke-static {v1, v0}, Lcom/iflytek/cloud/msc/util/FileUtil;->saveFile(Ljava/util/concurrent/ConcurrentLinkedQueue;Ljava/lang/String;)Z
goto :goto_a
.line 41
:cond_22
return-void
.end method