.class final Lcom/google/common/collect/MapMaker$ComputingMapAdapter; .super Lcom/google/common/collect/ComputingConcurrentHashMap; .source "MapMaker.java" # interfaces .implements Ljava/io/Serializable; # annotations .annotation system Ldalvik/annotation/EnclosingClass; value = Lcom/google/common/collect/MapMaker; .end annotation .annotation system Ldalvik/annotation/InnerClass; accessFlags = 0x18 name = "ComputingMapAdapter" .end annotation .annotation system Ldalvik/annotation/Signature; value = { "", "Lcom/google/common/collect/ComputingConcurrentHashMap", ";", "Ljava/io/Serializable;" } .end annotation # static fields .field private static final serialVersionUID:J # direct methods .method constructor (Lcom/google/common/collect/MapMaker;Lcom/google/common/base/Function;)V .locals 0 .annotation system Ldalvik/annotation/Signature; value = { "(", "Lcom/google/common/collect/MapMaker;", "Lcom/google/common/base/Function", "<-TK;+TV;>;)V" } .end annotation .prologue .line 878 invoke-direct {p0, p1, p2}, Lcom/google/common/collect/ComputingConcurrentHashMap;->(Lcom/google/common/collect/MapMaker;Lcom/google/common/base/Function;)V .line 879 return-void .end method # virtual methods .method public get(Ljava/lang/Object;)Ljava/lang/Object; .locals 3 .annotation system Ldalvik/annotation/Signature; value = { "(", "Ljava/lang/Object;", ")TV;" } .end annotation .prologue .line 886 :try_start_0 invoke-virtual {p0, p1}, Lcom/google/common/collect/MapMaker$ComputingMapAdapter;->getOrCompute(Ljava/lang/Object;)Ljava/lang/Object; :try_end_0 .catch Ljava/util/concurrent/ExecutionException; {:try_start_0 .. :try_end_0} :catch_0 move-result-object v0 .line 893 if-nez v0, :cond_0 .line 894 new-instance v0, Ljava/lang/NullPointerException; new-instance v1, Ljava/lang/StringBuilder; invoke-direct {v1}, Ljava/lang/StringBuilder;->()V iget-object v2, p0, Lcom/google/common/collect/MapMaker$ComputingMapAdapter;->computingFunction:Lcom/google/common/base/Function; invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; move-result-object v1 const-string v2, " returned null for key " 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/Object;)Ljava/lang/StringBuilder; move-result-object v1 const-string v2, "." invoke-virtual {v1, v2}, 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/NullPointerException;->(Ljava/lang/String;)V throw v0 .line 887 :catch_0 move-exception v0 .line 888 invoke-virtual {v0}, Ljava/util/concurrent/ExecutionException;->getCause()Ljava/lang/Throwable; move-result-object v0 .line 889 const-class v1, Lcom/google/common/collect/ComputationException; invoke-static {v0, v1}, Lcom/google/common/base/Throwables;->propagateIfInstanceOf(Ljava/lang/Throwable;Ljava/lang/Class;)V .line 890 new-instance v1, Lcom/google/common/collect/ComputationException; invoke-direct {v1, v0}, Lcom/google/common/collect/ComputationException;->(Ljava/lang/Throwable;)V throw v1 .line 896 :cond_0 return-object v0 .end method