## org.eclipse.emf.transaction.impl
Class TriggerCommandTransaction

    java.lang.Object
      org.eclipse.emf.transaction.impl.TransactionImpl
          org.eclipse.emf.transaction.impl.EMFCommandTransaction
              org.eclipse.emf.transaction.impl.TriggerCommandTransaction

All Implemented Interfaces:
  InternalTransaction, Transaction

    public class TriggerCommandTransaction

extends EMFCommandTransaction

A transaction implementation used by the command stack to wrap the execution of `TriggerCommand`s, to provide them the write access that they need. This transaction does not propagate its change description to the parent, because that is handled separately via `CommandChangeDescription`s.

Nested Class Summary

Nested classes/interfaces inherited from interface org.eclipse.emf.transaction.Transaction
`Transaction.OptionMetadata`

Field Summary

Fields inherited from class org.eclipse.emf.transaction.impl.TransactionImpl
`ALLOW_CHANGE_PROPAGATION_BLOCKING, BLOCK_CHANGE_PROPAGATION, change, DEFAULT_UNDO_REDO_OPTIONS, notifications, OPTION_EXECUTING_COMMAND, OPTION_IS_TRIGGER_TRANSACTION`

Fields inherited from interface org.eclipse.emf.transaction.Transaction
`OPTION_IS_UNDO_REDO_TRANSACTION, OPTION_NO_NOTIFICATIONS, OPTION_NO_TRIGGERS, OPTION_NO_UNDO, OPTION_NO_VALIDATION, OPTION_UNPROTECTED, OPTION_VALIDATE_EDIT, OPTION_VALIDATE_EDIT_CONTEXT`

Constructor Summary
`TriggerCommandTransaction(TriggerCommand command, InternalTransactionalEditingDomain domain, Map<?,?> options)` Initializes me with my command, editing domain, and options.

Method Summary
`void` `addTriggers(TriggerCommand triggers)` Overrides the inherited implementation to simply propagate triggers to my parent, because it's the transaction that the outside world can see.
`protected void` `close()` Extends the inherited implementation by first clearing my change description, so that I will not propagate these changes upwards.

Methods inherited from class org.eclipse.emf.transaction.impl.EMFCommandTransaction
`getCommand`

Methods inherited from class org.eclipse.emf.transaction.impl.TransactionImpl

`abort, add, collectsNotifications, commit, endPrivileged, getChangeDescription, getDefaultOptions, getEditingDomain, getInternalDomain, getLifecycle, getNotifications, getOptions, getOwner, getParent, getRoot, getStatus, getTriggers, hasOption, isAborted, isActive, isNotificationEnabled, isReadOnly, isRollingBack, isTriggerEnabled, isUndoEnabled, isUnprotected, isValidationEnabled, pause, resume, rollback, setParent, setStatus, start, startPrivileged, toString, validate, yield`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

Constructor Detail

### TriggerCommandTransaction

    public TriggerCommandTransaction(TriggerCommand command,
                                     InternalTransactionalEditingDomain domain,
                                     Map<?,?> options)

  Initializes me with my command, editing domain, and options.

  Parameters:
    `command` - the trigger command that I am servicing
    `domain` - the editing domain in which I am active
    `options` - my options

Method Detail

### close

    protected void close()

  Extends the inherited implementation by first clearing my change description, so that I will not propagate these changes upwards.

  Overrides:
    `close` in class `TransactionImpl`

### addTriggers

    public void addTriggers(TriggerCommand triggers)

  Overrides the inherited implementation to simply propagate triggers to my parent, because it's the transaction that the outside world can see.

  Specified by:
    `addTriggers` in interface `InternalTransaction`
  Overrides:
    `addTriggers` in class `TransactionImpl`
  Parameters:
    `triggers` - the triggers to add

Copyright 2002, 2007 IBM Corporation and others. All Rights Reserved.