class Rx::ReplaySubject

Represents an object that is both an observable sequence as well as an observer. Each notification is broadcasted to all subscribed and future observers, subject to buffer trimming policies.

Constants

INFINITE_BUFFER_SIZE

Public Class Methods

new(buffer_size = INFINITE_BUFFER_SIZE, window_size = INFINITE_BUFFER_SIZE, scheduler = CurrentThreadScheduler.instance) click to toggle source
# File lib/rx/subjects/replay_subject.rb, line 20
def initialize(buffer_size = INFINITE_BUFFER_SIZE, window_size = INFINITE_BUFFER_SIZE, scheduler = CurrentThreadScheduler.instance)
  @buffer_size = buffer_size
  @window_size = window_size
  @scheduler = scheduler
  @queue = []
  @observers = []
  @stopped = false
  @error = nil
end

Public Instance Methods

has_observers?() click to toggle source

Indicates whether the subject has observers subscribed to it. @return [B]

# File lib/rx/subjects/replay_subject.rb, line 32
def has_observers?
  observers = @observers
  observers && observers.length > 0
end