Switch branches/tags
Find file
Fetching contributors…
Cannot retrieve contributors at this time
55 lines (33 sloc) 1.74 KB

Ixtlan Optimistic

  • Build Status
  • Dependency Status
  • Code Climate

it adds optimistic persistence support to DataMapper and ActveRecord using the updated_at property/attribute which is automatically updated on any change of the model (for datamapper you need dm-timestamps for that). to load a model use optimistic_get/optimistic_get!/optimistic_find respectively where the first argument is the last updated_at value which the client has. if the client data is uptodate then the optimistic_XYZ method will return the database entity otherwise raise an exception or return nil respectively.

rails setup

automagic via included railtie. just add

`gem 'ixtlan-optimistic'

to your Gemfile.


just include Ixtlan::Optimistic::DataMapper to your model:

class User
  include DataMapper::Resource
  include Ixtlan::Optimistic::DataMapper

  property :id, Serial
  property :name, String

  timestamps :at

you need timestamps to get to work !


just add it with



  1. Fork it
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am 'Added some feature')
  4. Push to the branch (git push origin my-new-feature)
  5. Create new Pull Request


enjoy :)