RubyGems Navigation menu

transaction-simple 1.4.0.2

Transaction::Simple provides a generic way to add active transaction support to objects. The transaction methods added by this module will work with most objects, excluding those that cannot be Marshal-ed (bindings, procedure objects, IO instances, or singleton objects). The transactions supported by Transaction::Simple are not associated with any sort of data store. They are "live" transactions occurring in memory on the object itself. This is to allow "test" changes to be made to an object before making the changes permanent. Transaction::Simple can handle an "infinite" number of transaction levels (limited only by memory). If I open two transactions, commit the second, but abort the first, the object will revert to the original version. Transaction::Simple supports "named" transactions, so that multiple levels of transactions can be committed, aborted, or rewound by referring to the appropriate name of the transaction. Names may be any object except nil. Transaction groups are also supported. A transaction group is an object wrapper that manages a group of objects as if they were a single object for the purpose of transaction management. All transactions for this group of objects should be performed against the transaction group object, not against individual objects in the group. Version 1.4.0 of Transaction::Simple adds a new post-rewind hook so that complex graph objects of the type in tests/tc_broken_graph.rb can correct themselves. Version 1.4.0.1 just fixes a simple bug with #transaction method handling during the deprecation warning. Version 1.4.0.2 is a small update for people who use Transaction::Simple in bundler (adding lib/transaction-simple.rb) and other scenarios where having Hoe as a runtime dependency (a bug fixed in Hoe several years ago, but not visible in Transaction::Simple because it has not needed a re-release). All of the files internally have also been marked as UTF-8, ensuring full Ruby 1.9 compatibility.

Gemfile:
= Copy to clipboard Copied!

install:
=

Versions:

  1. 1.4.0.2 - June 21, 2012 (17 KB)
  2. 1.4.0 - February 03, 2007* (25 KB)
  3. 1.3.0 - May 05, 2005* (15 KB)
  4. 1.2.0 - November 03, 2004* (13.5 KB)

Development Dependencies (3):

hoe ~> 3.0
rdoc ~> 3.10
rubyforge >= 2.0.4

Owners:

Authors:

  • Austin Ziegler

SHA 256 checksum:

87754b8b4ad9d2b7fe91b599f78e9122dc94837d3abd98e227bb6f82b4a8ad59

Total downloads 1,239,385

For this version 1,030,454

Licenses:

N/A

Required Ruby Version: None

Links: