.class Lcom/bumptech/glide/load/engine/ResourceRecycler; .super Ljava/lang/Object; .source "ResourceRecycler.java" # annotations .annotation system Ldalvik/annotation/MemberClasses; value = { Lcom/bumptech/glide/load/engine/ResourceRecycler$ResourceRecyclerCallback; } .end annotation # instance fields .field private final handler:Landroid/os/Handler; .field private isRecycling:Z # direct methods .method constructor ()V .registers 4 .line 11 invoke-direct {p0}, Ljava/lang/Object;->()V .line 13 new-instance v0, Landroid/os/Handler; .line 14 invoke-static {}, Landroid/os/Looper;->getMainLooper()Landroid/os/Looper; move-result-object v1 new-instance v2, Lcom/bumptech/glide/load/engine/ResourceRecycler$ResourceRecyclerCallback; invoke-direct {v2}, Lcom/bumptech/glide/load/engine/ResourceRecycler$ResourceRecyclerCallback;->()V invoke-direct {v0, v1, v2}, Landroid/os/Handler;->(Landroid/os/Looper;Landroid/os/Handler$Callback;)V iput-object v0, p0, Lcom/bumptech/glide/load/engine/ResourceRecycler;->handler:Landroid/os/Handler; return-void .end method # virtual methods .method declared-synchronized recycle(Lcom/bumptech/glide/load/engine/Resource;)V .registers 4 .annotation system Ldalvik/annotation/Signature; value = { "(", "Lcom/bumptech/glide/load/engine/Resource<", "*>;)V" } .end annotation monitor-enter p0 .line 17 :try_start_1 iget-boolean v0, p0, Lcom/bumptech/glide/load/engine/ResourceRecycler;->isRecycling:Z const/4 v1, 0x1 if-eqz v0, :cond_10 .line 21 iget-object v0, p0, Lcom/bumptech/glide/load/engine/ResourceRecycler;->handler:Landroid/os/Handler; invoke-virtual {v0, v1, p1}, Landroid/os/Handler;->obtainMessage(ILjava/lang/Object;)Landroid/os/Message; move-result-object p1 invoke-virtual {p1}, Landroid/os/Message;->sendToTarget()V goto :goto_18 .line 23 :cond_10 iput-boolean v1, p0, Lcom/bumptech/glide/load/engine/ResourceRecycler;->isRecycling:Z .line 24 invoke-interface {p1}, Lcom/bumptech/glide/load/engine/Resource;->recycle()V const/4 p1, 0x0 .line 25 iput-boolean p1, p0, Lcom/bumptech/glide/load/engine/ResourceRecycler;->isRecycling:Z :try_end_18 .catchall {:try_start_1 .. :try_end_18} :catchall_1a .line 27 :goto_18 monitor-exit p0 return-void :catchall_1a move-exception p1 :try_start_1b monitor-exit p0 :try_end_1c .catchall {:try_start_1b .. :try_end_1c} :catchall_1a throw p1 .end method