--- !ruby/object:RI::ClassDescription 
attributes: 
- !ruby/object:RI::Attribute 
  comment: 
  - !ruby/struct:SM::Flow::P 
    body: Returns the objects that are covered by this transaction group.
  name: objects
  rw: R
class_methods: 
- !ruby/object:RI::MethodSummary 
  name: new
comment: 
- !ruby/struct:SM::Flow::P 
  body: 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.
- !ruby/struct:SM::Flow::H 
  level: 2
  text: Transaction Group Usage
- !ruby/struct:SM::Flow::VERB 
  body: "  require 'transaction/simple/group'\n\n  x = &quot;Hello, you.&quot;\n  y = &quot;And you, too.&quot;\n\n  g = Transaction::Simple::Group.new(x, y)\n  g.start_transaction(:first)     # -&gt; [ x, y ]\n  g.transaction_open?(:first)     # -&gt; true\n  x.transaction_open?(:first)     # -&gt; true\n  y.transaction_open?(:first)     # -&gt; true\n\n  x.gsub!(/you/, &quot;world&quot;)         # -&gt; &quot;Hello, world.&quot;\n  y.gsub!(/you/, &quot;me&quot;)            # -&gt; &quot;And me, too.&quot;\n\n  g.start_transaction(:second)    # -&gt; [ x, y ]\n  x.gsub!(/world/, &quot;HAL&quot;)         # -&gt; &quot;Hello, HAL.&quot;\n  y.gsub!(/me/, &quot;Dave&quot;)           # -&gt; &quot;And Dave, too.&quot;\n  g.rewind_transaction(:second)   # -&gt; [ x, y ]\n  x                               # -&gt; &quot;Hello, world.&quot;\n  y                               # -&gt; &quot;And me, too.&quot;\n\n  x.gsub!(/world/, &quot;HAL&quot;)         # -&gt; &quot;Hello, HAL.&quot;\n  y.gsub!(/me/, &quot;Dave&quot;)           # -&gt; &quot;And Dave, too.&quot;\n\n  g.commit_transaction(:second)   # -&gt; [ x, y ]\n  x                               # -&gt; &quot;Hello, HAL.&quot;\n  y                               # -&gt; &quot;And Dave, too.&quot;\n\n  g.abort_transaction(:first)     # -&gt; [ x, y ]\n  x                               = -&gt; &quot;Hello, you.&quot;\n  y                               = -&gt; &quot;And you, too.&quot;\n"
constants: []

full_name: Transaction::Simple::Group
includes: []

instance_methods: 
- !ruby/object:RI::MethodSummary 
  name: abort_transaction
- !ruby/object:RI::MethodSummary 
  name: clear
- !ruby/object:RI::MethodSummary 
  name: commit_transaction
- !ruby/object:RI::MethodSummary 
  name: rewind_transaction
- !ruby/object:RI::MethodSummary 
  name: start_transaction
- !ruby/object:RI::MethodSummary 
  name: transaction
- !ruby/object:RI::MethodSummary 
  name: transaction_name
- !ruby/object:RI::MethodSummary 
  name: transaction_open?
name: Group
superclass: Object
