.class public abstract Lio/reactivex/Scheduler$Worker; .super Ljava/lang/Object; .source "Scheduler.java" # interfaces .implements Lio/reactivex/disposables/Disposable; # annotations .annotation system Ldalvik/annotation/EnclosingClass; value = Lio/reactivex/Scheduler; .end annotation .annotation system Ldalvik/annotation/InnerClass; accessFlags = 0x409 name = "Worker" .end annotation .annotation system Ldalvik/annotation/MemberClasses; value = { Lio/reactivex/Scheduler$Worker$PeriodicTask; } .end annotation # direct methods .method public constructor ()V .locals 0 .line 261 invoke-direct {p0}, Ljava/lang/Object;->()V return-void .end method # virtual methods .method public now(Ljava/util/concurrent/TimeUnit;)J .locals 3 .line 341 invoke-static {}, Ljava/lang/System;->currentTimeMillis()J move-result-wide v0 sget-object v2, Ljava/util/concurrent/TimeUnit;->MILLISECONDS:Ljava/util/concurrent/TimeUnit; invoke-virtual {p1, v0, v1, v2}, Ljava/util/concurrent/TimeUnit;->convert(JLjava/util/concurrent/TimeUnit;)J move-result-wide v0 return-wide v0 .end method .method public schedule(Ljava/lang/Runnable;)Lio/reactivex/disposables/Disposable; .locals 3 .line 272 sget-object v0, Ljava/util/concurrent/TimeUnit;->NANOSECONDS:Ljava/util/concurrent/TimeUnit; const-wide/16 v1, 0x0 invoke-virtual {p0, p1, v1, v2, v0}, Lio/reactivex/Scheduler$Worker;->schedule(Ljava/lang/Runnable;JLjava/util/concurrent/TimeUnit;)Lio/reactivex/disposables/Disposable; move-result-object p1 return-object p1 .end method .method public abstract schedule(Ljava/lang/Runnable;JLjava/util/concurrent/TimeUnit;)Lio/reactivex/disposables/Disposable; .end method .method public schedulePeriodically(Ljava/lang/Runnable;JJLjava/util/concurrent/TimeUnit;)Lio/reactivex/disposables/Disposable; .locals 17 move-object/from16 v10, p0 move-wide/from16 v11, p2 move-object/from16 v13, p6 .line 313 new-instance v14, Lio/reactivex/internal/disposables/SequentialDisposable; invoke-direct {v14}, Lio/reactivex/internal/disposables/SequentialDisposable;->()V .line 315 new-instance v15, Lio/reactivex/internal/disposables/SequentialDisposable; invoke-direct {v15, v14}, Lio/reactivex/internal/disposables/SequentialDisposable;->(Lio/reactivex/disposables/Disposable;)V .line 317 invoke-static/range {p1 .. p1}, Lio/reactivex/plugins/RxJavaPlugins;->onSchedule(Ljava/lang/Runnable;)Ljava/lang/Runnable; move-result-object v4 move-wide/from16 v0, p4 .line 319 invoke-virtual {v13, v0, v1}, Ljava/util/concurrent/TimeUnit;->toNanos(J)J move-result-wide v8 .line 320 sget-object v0, Ljava/util/concurrent/TimeUnit;->NANOSECONDS:Ljava/util/concurrent/TimeUnit; invoke-virtual {v10, v0}, Lio/reactivex/Scheduler$Worker;->now(Ljava/util/concurrent/TimeUnit;)J move-result-wide v5 .line 321 invoke-virtual {v13, v11, v12}, Ljava/util/concurrent/TimeUnit;->toNanos(J)J move-result-wide v0 add-long v2, v5, v0 .line 323 new-instance v7, Lio/reactivex/Scheduler$Worker$PeriodicTask; move-object v0, v7 move-object/from16 v1, p0 move-object/from16 v16, v14 move-object v14, v7 move-object v7, v15 invoke-direct/range {v0 .. v9}, Lio/reactivex/Scheduler$Worker$PeriodicTask;->(Lio/reactivex/Scheduler$Worker;JLjava/lang/Runnable;JLio/reactivex/internal/disposables/SequentialDisposable;J)V invoke-virtual {v10, v14, v11, v12, v13}, Lio/reactivex/Scheduler$Worker;->schedule(Ljava/lang/Runnable;JLjava/util/concurrent/TimeUnit;)Lio/reactivex/disposables/Disposable; move-result-object v0 .line 326 sget-object v1, Lio/reactivex/internal/disposables/EmptyDisposable;->INSTANCE:Lio/reactivex/internal/disposables/EmptyDisposable; if-ne v0, v1, :cond_0 return-object v0 :cond_0 move-object/from16 v1, v16 .line 329 invoke-virtual {v1, v0}, Lio/reactivex/internal/disposables/SequentialDisposable;->replace(Lio/reactivex/disposables/Disposable;)Z return-object v15 .end method