## org.eclipse.emf.transaction.impl
Class TransactionalEditingDomainImpl.LifecycleImpl

    java.lang.Object
      org.eclipse.emf.transaction.impl.TransactionalEditingDomainImpl.LifecycleImpl

All Implemented Interfaces:
  InternalLifecycle, TransactionalEditingDomain.Lifecycle

Enclosing class:
  TransactionalEditingDomainImpl

    protected final class TransactionalEditingDomainImpl.LifecycleImpl

extends Object
implements InternalLifecycle

Default implementation of the `InternalLifecycle` protocol. May be subclassed by custom editing domain implementations.

Since:
  1.3

Constructor Summary
`TransactionalEditingDomainImpl.LifecycleImpl()` Initializes me.

Method Summary
`void` `addTransactionalEditingDomainListener(TransactionalEditingDomainListener l)` Adds a listener to be notified of editing domain and transaction life-cycle events.
`void` `dispose()`
`protected void` `fireLifecycleEvent(int type, Transaction transaction)` Fires the specified life-cycle event to my listeners, if any.
`protected TransactionalEditingDomainListener[]` `getLifecycleListeners()` Obtains a copy of my life-cycle listener list as an array, for safe iteration that allows concurrent updates to the original list.
`void` `removeTransactionalEditingDomainListener(TransactionalEditingDomainListener l)` Removes a lif-cycle event listener from the editing domain.
`void` `transactionClosed(InternalTransaction transaction)` Notifies me that a transaction has completed its commit or rollback sequence.
`void` `transactionClosing(InternalTransaction transaction)` Notifies me that a transaction has commenced its commit or rollback sequence.
`void` `transactionInterrupted(InternalTransaction transaction)` Notifies me that a transaction has been interrupted in its start sequence.
`void` `transactionStarted(InternalTransaction transaction)` Notifies me that a transaction has completed its start sequence.
`void` `transactionStarting(InternalTransaction transaction)` Notifies me that a transaction has commenced its start sequence.

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

Constructor Detail

### TransactionalEditingDomainImpl.LifecycleImpl

    public TransactionalEditingDomainImpl.LifecycleImpl()

  Initializes me.

Method Detail

### addTransactionalEditingDomainListener

    public void addTransactionalEditingDomainListener(TransactionalEditingDomainListener l)

  Description copied from interface: `TransactionalEditingDomain.Lifecycle`
  Adds a listener to be notified of editing domain and transaction life-cycle events.

  Specified by:
    `addTransactionalEditingDomainListener` in interface `TransactionalEditingDomain.Lifecycle`
  Parameters:
    `l` - a listener to add

### removeTransactionalEditingDomainListener

    public void removeTransactionalEditingDomainListener(TransactionalEditingDomainListener l)

  Description copied from interface: `TransactionalEditingDomain.Lifecycle`
  Removes a lif-cycle event listener from the editing domain.

  Specified by:
    `removeTransactionalEditingDomainListener` in interface `TransactionalEditingDomain.Lifecycle`
  Parameters:
    `l` - a listener to remove

### dispose

    public void dispose()

### getLifecycleListeners

    protected final TransactionalEditingDomainListener[] getLifecycleListeners()

  Obtains a copy of my life-cycle listener list as an array, for safe iteration that allows concurrent updates to the original list.

  Returns:
    my life-cycle listeners (as of the time of calling this method)

### fireLifecycleEvent

    protected void fireLifecycleEvent(int type,
                                      Transaction transaction)

  Fires the specified life-cycle event to my listeners, if any.

  Parameters:
    `type` - one of the life-cycle event types
    `transaction` - the transaction that is the subject of the event, or `null` if the event pertains to the editing domain, itself

### transactionClosed

    public void transactionClosed(InternalTransaction transaction)

  Description copied from interface: `InternalLifecycle`
  Notifies me that a transaction has completed its commit or rollback sequence. There may be any number of steps implemented after requesting the editing domain to deactivate it.

  Specified by:
    `transactionClosed` in interface `InternalLifecycle`
  Parameters:
    `transaction` - a transaction that has closed

### transactionClosing

    public void transactionClosing(InternalTransaction transaction)

  Description copied from interface: `InternalLifecycle`
  Notifies me that a transaction has commenced its commit or rollback sequence. There may be any number of steps implemented before requesting the editing domain to deactivate it.

  Specified by:
    `transactionClosing` in interface `InternalLifecycle`
  Parameters:
    `transaction` - a transaction that is closing

### transactionInterrupted

    public void transactionInterrupted(InternalTransaction transaction)

  Description copied from interface: `InternalLifecycle`
  Notifies me that a transaction has been interrupted in its start sequence. There may be any number of steps implemented by the transaction that can be interrupted.

  Specified by:
    `transactionInterrupted` in interface `InternalLifecycle`
  Parameters:
    `transaction` - a transaction thatwas interrupted while starting

### transactionStarted

    public void transactionStarted(InternalTransaction transaction)

  Description copied from interface: `InternalLifecycle`
  Notifies me that a transaction has completed its start sequence. There may be any number of steps implemented after requesting the editing domain to activate it.

  Specified by:
    `transactionStarted` in interface `InternalLifecycle`
  Parameters:
    `transaction` - a transaction that has started

### transactionStarting

    public void transactionStarting(InternalTransaction transaction)

  Description copied from interface: `InternalLifecycle`
  Notifies me that a transaction has commenced its start sequence. There may be any number of steps implemented before requesting the editing domain to activate it.

  Specified by:
    `transactionStarting` in interface `InternalLifecycle`
  Parameters:
    `transaction` - a transaction that is starting

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