Sha256: 58e98b55d4ea2f51bdb75728488b4aded7677cfaefa72ca4599ca3cf861c05aa
Contents?: true
Size: 629 Bytes
Versions: 1
Compression:
Stored size: 629 Bytes
Contents
module BigMachine module Lock extend ActiveSupport::Concern included do end module ClassMethods def transition_methods public_instance_methods - State.public_instance_methods - [:unlock, :locked?] end def available_methods public_instance_methods - State.public_instance_methods end end def locked? @locked end def enter(*args) @locked = true end def unlock(*args) @locked = false end def transition_to(state_class, *args, &block) return if @locked super(state_class, *args, &block) end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
big_machine-1.2.0 | lib/big_machine/lock.rb |