Sha256: 078c17e5fb747b067b2852d1fc3d19def68f23d0c06a5e6993625dad955d6d95

Contents?: true

Size: 1010 Bytes

Versions: 3

Compression:

Stored size: 1010 Bytes

Contents

module Statesman
  autoload :Config,     'statesman/config'
  autoload :Machine,    'statesman/machine'
  autoload :Callback,   'statesman/callback'
  autoload :Guard,      'statesman/guard'
  autoload :Version,    'statesman/version'
  module Adapters
    autoload :Memory,       "statesman/adapters/memory"
    autoload :ActiveRecord, "statesman/adapters/active_record"
    autoload :ActiveRecordTransition,
             "statesman/adapters/active_record_transition"
    autoload :ActiveRecordQueries,
             "statesman/adapters/active_record_queries"
    autoload :Mongoid,      "statesman/adapters/mongoid"
    autoload :MongoidTransition,
             "statesman/adapters/mongoid_transition"
  end

  # Example:
  #   Statesman.configure do
  #     storage_adapter Statesman::ActiveRecordAdapter
  #   end
  #
  def self.configure(&block)
    config = Config.new(block)
    @storage_adapter = config.adapter_class
  end

  def self.storage_adapter
    @storage_adapter || Adapters::Memory
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
statesman-1.1.0 lib/statesman.rb
statesman-1.0.0 lib/statesman.rb
statesman-1.0.0.beta2 lib/statesman.rb