Object/Class

zio

Schedule

Related Docs: class Schedule | package zio

Permalink

object Schedule extends Serializable

Linear Supertypes
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. Schedule
  2. Serializable
  3. Serializable
  4. AnyRef
  5. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Type Members

  1. sealed trait Decision[-Env, -In, +Out] extends AnyRef

    Permalink
  2. final case class Driver[-Env, -In, +Out](next: (In) ⇒ ZIO[Env, None.type, Out], last: IO[NoSuchElementException, Out], reset: UIO[Unit]) extends Product with Serializable

    Permalink
  3. type Interval = OffsetDateTime

    Permalink
  4. final class ProvideSomeLayer[Env0 <: Has[_], -Env, -In, +Out] extends AnyVal

    Permalink
  5. type StepFunction[-Env, -In, +Out] = (OffsetDateTime, In) ⇒ ZIO[Env, Nothing, Decision[Env, In, Out]]

    Permalink

Value Members

  1. final def !=(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  4. object Decision

    Permalink
  5. object StepFunction

    Permalink
  6. def apply[Env, In, Out](step: StepFunction[Env, In, Out]): Schedule[Env, In, Out]

    Permalink

    Constructs a new schedule from the specified step function.

  7. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  8. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  9. def collectAll[A]: Schedule[Any, A, Chunk[A]]

    Permalink

    A schedule that recurs anywhere, collecting all inputs into a list.

  10. def collectUntil[A](f: (A) ⇒ Boolean): Schedule[Any, A, Chunk[A]]

    Permalink

    A schedule that recurs until the condition f fails, collecting all inputs into a list.

  11. def collectUntilM[Env, A](f: (A) ⇒ URIO[Env, Boolean]): Schedule[Env, A, Chunk[A]]

    Permalink

    A schedule that recurs until the effectful condition f fails, collecting all inputs into a list.

  12. def collectWhile[A](f: (A) ⇒ Boolean): Schedule[Any, A, Chunk[A]]

    Permalink

    A schedule that recurs as long as the condition f holds, collecting all inputs into a list.

  13. def collectWhileM[Env, A](f: (A) ⇒ URIO[Env, Boolean]): Schedule[Env, A, Chunk[A]]

    Permalink

    A schedule that recurs as long as the effectful condition holds, collecting all inputs into a list.

  14. val count: Schedule[Any, Any, Long]

    Permalink

    A schedule that always recurs, which counts the number of recurrances.

  15. def dayOfMonth(day: Int): Schedule[Any, Any, Long]

    Permalink

    Cron-like schedule that recurs every specified day of month.

    Cron-like schedule that recurs every specified day of month. Won't recur on months containing less days than specified in day param.

    It triggers at zero hour of the day. Producing a count of repeats: 0, 1, 2.

    NOTE: day parameter is validated lazily. Must be in range 1...31.

  16. def dayOfWeek(day: Int): Schedule[Any, Any, Long]

    Permalink

    Cron-like schedule that recurs every specified day of each week.

    Cron-like schedule that recurs every specified day of each week. It triggers at zero hour of the week. Producing a count of repeats: 0, 1, 2.

    NOTE: day parameter is validated lazily. Must be in range 1 (Monday)...7 (Sunday).

  17. def delayed[Env, In, Out](schedule: Schedule[Env, In, Duration]): Schedule[Env, In, Duration]

    Permalink

    Takes a schedule that produces a delay, and returns a new schedule that uses this delay to further delay intervals in the resulting schedule.

  18. def duration(duration: Duration): Schedule[Any, Any, Duration]

    Permalink

    A schedule that can recur one time, the specified amount of time into the future.

  19. val elapsed: Schedule[Any, Any, Duration]

    Permalink

    A schedule that occurs everywhere, which returns the total elapsed duration since the first step.

  20. final def eq(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  21. def equals(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  22. def exponential(base: Duration, factor: Double = 2.0): Schedule[Any, Any, Duration]

    Permalink

    A schedule that always recurs, but will wait a certain amount between repetitions, given by base * factor.pow(n), where n is the number of repetitions so far.

    A schedule that always recurs, but will wait a certain amount between repetitions, given by base * factor.pow(n), where n is the number of repetitions so far. Returns the current duration between recurrences.

  23. def fibonacci(one: Duration): Schedule[Any, Any, Duration]

    Permalink

    A schedule that always recurs, increasing delays by summing the preceding two delays (similar to the fibonacci sequence).

    A schedule that always recurs, increasing delays by summing the preceding two delays (similar to the fibonacci sequence). Returns the current duration between recurrences.

  24. def finalize(): Unit

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  25. def fixed(interval: Duration): Schedule[Any, Any, Long]

    Permalink

    A schedule that recurs on a fixed interval.

    A schedule that recurs on a fixed interval. Returns the number of repetitions of the schedule so far.

    If the action run between updates takes longer than the interval, then the action will be run immediately, but re-runs will not "pile up".

    |-----interval-----|-----interval-----|-----interval-----|
    |---------action--------||action|-----|action|-----------|
    

  26. val forever: Schedule[Any, Any, Long]

    Permalink

    A schedule that always recurs, producing a count of repeats: 0, 1, 2.

  27. def fromDuration(duration: Duration): Schedule[Any, Any, Duration]

    Permalink

    A schedule that recurs once with the specified delay.

  28. def fromDurations(duration: Duration, durations: Duration*): Schedule[Any, Any, Duration]

    Permalink

    A schedule that recurs once for each of the specified durations, delaying each time for the length of the specified duration.

    A schedule that recurs once for each of the specified durations, delaying each time for the length of the specified duration. Returns the length of the current duration between recurrences.

  29. def fromFunction[A, B](f: (A) ⇒ B): Schedule[Any, A, B]

    Permalink

    A schedule that always recurs, mapping input values through the specified function.

  30. final def getClass(): Class[_]

    Permalink
    Definition Classes
    AnyRef → Any
  31. def hashCode(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  32. def hourOfDay(hour: Int): Schedule[Any, Any, Long]

    Permalink

    Cron-like schedule that recurs every specified hour of each day.

    Cron-like schedule that recurs every specified hour of each day. It triggers at zero minute of the hour. Producing a count of repeats: 0, 1, 2.

    NOTE: hour parameter is validated lazily. Must be in range 0...23.

  33. def identity[A]: Schedule[Any, A, A]

    Permalink

    A schedule that always recurs, which returns inputs as outputs.

  34. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  35. def linear(base: Duration): Schedule[Any, Any, Duration]

    Permalink

    A schedule that always recurs, but will repeat on a linear time interval, given by base * n where n is the number of repetitions so far.

    A schedule that always recurs, but will repeat on a linear time interval, given by base * n where n is the number of repetitions so far. Returns the current duration between recurrences.

  36. def maxOffsetDateTime(l: OffsetDateTime, r: OffsetDateTime): OffsetDateTime

    Permalink
  37. def minOffsetDateTime(l: OffsetDateTime, r: OffsetDateTime): OffsetDateTime

    Permalink
  38. def minuteOfHour(minute: Int): Schedule[Any, Any, Long]

    Permalink

    Cron-like schedule that recurs every specified minute of each hour.

    Cron-like schedule that recurs every specified minute of each hour. It triggers at zero second of the minute. Producing a count of repeats: 0, 1, 2.

    NOTE: minute parameter is validated lazily. Must be in range 0...59.

  39. final def ne(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  40. final def notify(): Unit

    Permalink
    Definition Classes
    AnyRef
  41. final def notifyAll(): Unit

    Permalink
    Definition Classes
    AnyRef
  42. val once: Schedule[Any, Any, Unit]

    Permalink

    A schedule that recurs one time.

  43. def recurUntil[A, B](pf: PartialFunction[A, B]): Schedule[Any, A, Option[B]]

    Permalink

    A schedule that recurs for until the input value becomes applicable to partial function and then map that value with given function.

  44. def recurUntil[A](f: (A) ⇒ Boolean): Schedule[Any, A, A]

    Permalink

    A schedule that recurs for until the predicate evaluates to true.

  45. def recurUntilEquals[A](a: ⇒ A): Schedule[Any, A, A]

    Permalink

    A schedule that recurs for until the predicate is equal.

  46. def recurUntilM[Env, A](f: (A) ⇒ URIO[Env, Boolean]): Schedule[Env, A, A]

    Permalink

    A schedule that recurs for until the predicate evaluates to true.

  47. def recurWhile[A](f: (A) ⇒ Boolean): Schedule[Any, A, A]

    Permalink

    A schedule that recurs for as long as the predicate evaluates to true.

  48. def recurWhileEquals[A](a: ⇒ A): Schedule[Any, A, A]

    Permalink

    A schedule that recurs for as long as the predicate is equal.

  49. def recurWhileM[Env, A](f: (A) ⇒ URIO[Env, Boolean]): Schedule[Env, A, A]

    Permalink

    A schedule that recurs for as long as the effectful predicate evaluates to true.

  50. def recurs(n: Int): Schedule[Any, Any, Long]

    Permalink

    A schedule spanning all time, which can be stepped only the specified number of times before it terminates.

  51. def recurs(n: Long): Schedule[Any, Any, Long]

    Permalink

    A schedule spanning all time, which can be stepped only the specified number of times before it terminates.

  52. def secondOfMinute(second: Int): Schedule[Any, Any, Long]

    Permalink

    Cron-like schedule that recurs every specified second of each minute.

    Cron-like schedule that recurs every specified second of each minute. It triggers at zero nanosecond of the second. Producing a count of repeats: 0, 1, 2.

    NOTE: second parameter is validated lazily. Must be in range 0...59.

  53. def spaced(duration: Duration): Schedule[Any, Any, Long]

    Permalink

    Returns a schedule that recurs continuously, each repetition spaced the specified duration from the last run.

  54. val stop: Schedule[Any, Any, Unit]

    Permalink

    A schedule that does not recur, it just stops.

  55. def succeed[A](a: ⇒ A): Schedule[Any, Any, A]

    Permalink

    Returns a schedule that repeats one time, producing the specified constant value.

  56. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  57. def toString(): String

    Permalink
    Definition Classes
    AnyRef → Any
  58. def unfold[A](a: ⇒ A)(f: (A) ⇒ A): Schedule[Any, Any, A]

    Permalink

    Unfolds a schedule that repeats one time from the specified state and iterator.

  59. def unwrap[R, A, B](zio: ZIO[R, Nothing, Schedule[R, A, B]]): Schedule[R, A, B]

    Permalink

    Extracts a Schedule out of an effect.

  60. final def wait(): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  61. final def wait(arg0: Long, arg1: Int): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  62. final def wait(arg0: Long): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  63. def windowed(interval: Duration): Schedule[Any, Any, Long]

    Permalink

    A schedule that divides the timeline to interval-long windows, and sleeps until the nearest window boundary every time it recurs.

    A schedule that divides the timeline to interval-long windows, and sleeps until the nearest window boundary every time it recurs.

    For example, windowed(10.seconds) would produce a schedule as follows:

         10s        10s        10s       10s
    |----------|----------|----------|----------|
    |action------|sleep---|act|-sleep|action----|
    

Inherited from Serializable

Inherited from Serializable

Inherited from AnyRef

Inherited from Any

Ungrouped