Sha256: d8c2aab38cfb5b997b4233486a2209b42b041015edf2e1cafa2c63359d35a5e4
Contents?: true
Size: 622 Bytes
Versions: 4
Compression:
Stored size: 622 Bytes
Contents
class MessageStateMachine include Statesman::Machine state :pending, initial: true state :unread state :read transition from: :pending, to: :unread transition from: :pending, to: :read transition from: :unread, to: :read transition from: :read, to: :unread before_transition(from: :pending, to: :read) do |message| message.read_at = Time.zone.now unless message.read_at end before_transition(from: :unread, to: :read) do |message| message.read_at = Time.zone.now unless message.read_at end before_transition(from: :read, to: :unread) do |message| message.read_at = nil end end
Version data entries
4 entries across 4 versions & 1 rubygems