123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227 |
- .class Landroid/support/v7/util/MessageThreadUtil$2;
- .super Ljava/lang/Object;
- .source ""
- # interfaces
- .implements Landroid/support/v7/util/ThreadUtil$BackgroundCallback;
- # annotations
- .annotation system Ldalvik/annotation/EnclosingMethod;
- value = Landroid/support/v7/util/MessageThreadUtil;->getBackgroundProxy(Landroid/support/v7/util/ThreadUtil$BackgroundCallback;)Landroid/support/v7/util/ThreadUtil$BackgroundCallback;
- .end annotation
- .annotation system Ldalvik/annotation/InnerClass;
- accessFlags = 0x0
- name = null
- .end annotation
- .annotation system Ldalvik/annotation/Signature;
- value = {
- "Ljava/lang/Object;",
- "Landroid/support/v7/util/ThreadUtil$BackgroundCallback<",
- "TT;>;"
- }
- .end annotation
- # static fields
- .field private static final LOAD_TILE:I = 0x3
- .field private static final RECYCLE_TILE:I = 0x4
- .field private static final REFRESH:I = 0x1
- .field private static final UPDATE_RANGE:I = 0x2
- # instance fields
- .field private mBackgroundRunnable:Ljava/lang/Runnable;
- .field mBackgroundRunning:Ljava/util/concurrent/atomic/AtomicBoolean;
- .field private final mExecutor:Ljava/util/concurrent/Executor;
- .field private final mQueue:Landroid/support/v7/util/MessageThreadUtil$MessageQueue;
- .field final synthetic this$0:Landroid/support/v7/util/MessageThreadUtil;
- .field final synthetic val$callback:Landroid/support/v7/util/ThreadUtil$BackgroundCallback;
- # direct methods
- .method constructor <init>(Landroid/support/v7/util/MessageThreadUtil;Landroid/support/v7/util/ThreadUtil$BackgroundCallback;)V
- .locals 0
- iput-object p1, p0, Landroid/support/v7/util/MessageThreadUtil$2;->this$0:Landroid/support/v7/util/MessageThreadUtil;
- iput-object p2, p0, Landroid/support/v7/util/MessageThreadUtil$2;->val$callback:Landroid/support/v7/util/ThreadUtil$BackgroundCallback;
- invoke-direct {p0}, Ljava/lang/Object;-><init>()V
- new-instance p1, Landroid/support/v7/util/MessageThreadUtil$MessageQueue;
- invoke-direct {p1}, Landroid/support/v7/util/MessageThreadUtil$MessageQueue;-><init>()V
- iput-object p1, p0, Landroid/support/v7/util/MessageThreadUtil$2;->mQueue:Landroid/support/v7/util/MessageThreadUtil$MessageQueue;
- invoke-static {}, Landroid/support/v4/content/ParallelExecutorCompat;->getParallelExecutor()Ljava/util/concurrent/Executor;
- move-result-object p1
- iput-object p1, p0, Landroid/support/v7/util/MessageThreadUtil$2;->mExecutor:Ljava/util/concurrent/Executor;
- new-instance p1, Ljava/util/concurrent/atomic/AtomicBoolean;
- const/4 p2, 0x0
- invoke-direct {p1, p2}, Ljava/util/concurrent/atomic/AtomicBoolean;-><init>(Z)V
- iput-object p1, p0, Landroid/support/v7/util/MessageThreadUtil$2;->mBackgroundRunning:Ljava/util/concurrent/atomic/AtomicBoolean;
- new-instance p1, Landroid/support/v7/util/MessageThreadUtil$2$1;
- invoke-direct {p1, p0}, Landroid/support/v7/util/MessageThreadUtil$2$1;-><init>(Landroid/support/v7/util/MessageThreadUtil$2;)V
- iput-object p1, p0, Landroid/support/v7/util/MessageThreadUtil$2;->mBackgroundRunnable:Ljava/lang/Runnable;
- return-void
- .end method
- .method static synthetic access$100(Landroid/support/v7/util/MessageThreadUtil$2;)Landroid/support/v7/util/MessageThreadUtil$MessageQueue;
- .locals 0
- iget-object p0, p0, Landroid/support/v7/util/MessageThreadUtil$2;->mQueue:Landroid/support/v7/util/MessageThreadUtil$MessageQueue;
- return-object p0
- .end method
- .method private maybeExecuteBackgroundRunnable()V
- .locals 3
- iget-object v0, p0, Landroid/support/v7/util/MessageThreadUtil$2;->mBackgroundRunning:Ljava/util/concurrent/atomic/AtomicBoolean;
- const/4 v1, 0x0
- const/4 v2, 0x1
- invoke-virtual {v0, v1, v2}, Ljava/util/concurrent/atomic/AtomicBoolean;->compareAndSet(ZZ)Z
- move-result v0
- if-eqz v0, :cond_0
- iget-object v0, p0, Landroid/support/v7/util/MessageThreadUtil$2;->mExecutor:Ljava/util/concurrent/Executor;
- iget-object v1, p0, Landroid/support/v7/util/MessageThreadUtil$2;->mBackgroundRunnable:Ljava/lang/Runnable;
- invoke-interface {v0, v1}, Ljava/util/concurrent/Executor;->execute(Ljava/lang/Runnable;)V
- :cond_0
- return-void
- .end method
- .method private sendMessage(Landroid/support/v7/util/MessageThreadUtil$SyncQueueItem;)V
- .locals 1
- iget-object v0, p0, Landroid/support/v7/util/MessageThreadUtil$2;->mQueue:Landroid/support/v7/util/MessageThreadUtil$MessageQueue;
- invoke-virtual {v0, p1}, Landroid/support/v7/util/MessageThreadUtil$MessageQueue;->sendMessage(Landroid/support/v7/util/MessageThreadUtil$SyncQueueItem;)V
- invoke-direct {p0}, Landroid/support/v7/util/MessageThreadUtil$2;->maybeExecuteBackgroundRunnable()V
- return-void
- .end method
- .method private sendMessageAtFrontOfQueue(Landroid/support/v7/util/MessageThreadUtil$SyncQueueItem;)V
- .locals 1
- iget-object v0, p0, Landroid/support/v7/util/MessageThreadUtil$2;->mQueue:Landroid/support/v7/util/MessageThreadUtil$MessageQueue;
- invoke-virtual {v0, p1}, Landroid/support/v7/util/MessageThreadUtil$MessageQueue;->sendMessageAtFrontOfQueue(Landroid/support/v7/util/MessageThreadUtil$SyncQueueItem;)V
- invoke-direct {p0}, Landroid/support/v7/util/MessageThreadUtil$2;->maybeExecuteBackgroundRunnable()V
- return-void
- .end method
- # virtual methods
- .method public loadTile(II)V
- .locals 1
- const/4 v0, 0x3
- invoke-static {v0, p1, p2}, Landroid/support/v7/util/MessageThreadUtil$SyncQueueItem;->obtainMessage(III)Landroid/support/v7/util/MessageThreadUtil$SyncQueueItem;
- move-result-object p1
- invoke-direct {p0, p1}, Landroid/support/v7/util/MessageThreadUtil$2;->sendMessage(Landroid/support/v7/util/MessageThreadUtil$SyncQueueItem;)V
- return-void
- .end method
- .method public recycleTile(Landroid/support/v7/util/TileList$Tile;)V
- .locals 2
- .annotation system Ldalvik/annotation/Signature;
- value = {
- "(",
- "Landroid/support/v7/util/TileList$Tile<",
- "TT;>;)V"
- }
- .end annotation
- const/4 v0, 0x4
- const/4 v1, 0x0
- invoke-static {v0, v1, p1}, Landroid/support/v7/util/MessageThreadUtil$SyncQueueItem;->obtainMessage(IILjava/lang/Object;)Landroid/support/v7/util/MessageThreadUtil$SyncQueueItem;
- move-result-object p1
- invoke-direct {p0, p1}, Landroid/support/v7/util/MessageThreadUtil$2;->sendMessage(Landroid/support/v7/util/MessageThreadUtil$SyncQueueItem;)V
- return-void
- .end method
- .method public refresh(I)V
- .locals 2
- const/4 v0, 0x1
- const/4 v1, 0x0
- invoke-static {v0, p1, v1}, Landroid/support/v7/util/MessageThreadUtil$SyncQueueItem;->obtainMessage(IILjava/lang/Object;)Landroid/support/v7/util/MessageThreadUtil$SyncQueueItem;
- move-result-object p1
- invoke-direct {p0, p1}, Landroid/support/v7/util/MessageThreadUtil$2;->sendMessageAtFrontOfQueue(Landroid/support/v7/util/MessageThreadUtil$SyncQueueItem;)V
- return-void
- .end method
- .method public updateRange(IIIII)V
- .locals 7
- const/4 v0, 0x2
- const/4 v6, 0x0
- move v1, p1
- move v2, p2
- move v3, p3
- move v4, p4
- move v5, p5
- invoke-static/range {v0 .. v6}, Landroid/support/v7/util/MessageThreadUtil$SyncQueueItem;->obtainMessage(IIIIIILjava/lang/Object;)Landroid/support/v7/util/MessageThreadUtil$SyncQueueItem;
- move-result-object p1
- invoke-direct {p0, p1}, Landroid/support/v7/util/MessageThreadUtil$2;->sendMessageAtFrontOfQueue(Landroid/support/v7/util/MessageThreadUtil$SyncQueueItem;)V
- return-void
- .end method
|