Package org.eclipse.emf.cdo.view

## Class CDOViewEventProducer

- java.lang.Object
- - org.eclipse.net4j.util.container.SelfAttachingContainerListener
  - - org.eclipse.net4j.util.container.SelfAttachingContainerListener.Delegating
    - - org.eclipse.emf.cdo.view.CDOViewEventProducer

- All Implemented Interfaces:
    `java.util.EventListener`, `org.eclipse.net4j.util.event.IListener`, `org.eclipse.net4j.util.event.IListener.NotifierAware`

      public class CDOViewEventProducer
      extends org.eclipse.net4j.util.container.SelfAttachingContainerListener.Delegating

  Produces `events` for calls to various `view object handler` and `transaction handler` methods and delivers these events to a `delegate` `listener`.
  Since:
    4.5
  Author:
    Eike Stepper

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Class | Description
    --- | --- | ---
    `static class` | `CDOViewEventProducer.CDOAttachingObjectEvent` | An `event` fired from a `view event producer` when `CDOTransactionHandler1.attachingObject()` was called.
    `static class` | `CDOViewEventProducer.CDOCommittedTransactionEvent` | An `event` fired from a `view event producer` when `CDOTransactionHandler2.committedTransaction()` was called.
    `static class` | `CDOViewEventProducer.CDOCommittingTransactionEvent` | An `event` fired from a `view event producer` when `CDOTransactionHandler2.committingTransaction()` was called.
    `static class` | `CDOViewEventProducer.CDODetachingObjectEvent` | An `event` fired from a `view event producer` when `CDOTransactionHandler1.detachingObject()` was called.
    `static class` | `CDOViewEventProducer.CDOModifyingObjectEvent` | An `event` fired from a `view event producer` when `CDOTransactionHandler1.modifyingObject()` was called.
    `static class` | `CDOViewEventProducer.CDOObjectStateChangedEvent` | An `event` fired from a `view event producer` when `CDOObjectHandler.objectStateChanged()` was called.
    `static class` | `CDOViewEventProducer.CDORolledBackTransactionEvent` | An `event` fired from a `view event producer` when `CDOTransactionHandler2.rolledBackTransaction()` was called.

    - ### Nested classes/interfaces inherited from class org.eclipse.net4j.util.container.SelfAttachingContainerListener

      `org.eclipse.net4j.util.container.SelfAttachingContainerListener.Delegating, org.eclipse.net4j.util.container.SelfAttachingContainerListener.DoNotDescend`

    - ### Nested classes/interfaces inherited from interface org.eclipse.net4j.util.event.IListener

      `org.eclipse.net4j.util.event.IListener.NotifierAware`

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `CDOViewEventProducer​(org.eclipse.net4j.util.event.IListener delegate)` |
    `CDOViewEventProducer​(org.eclipse.net4j.util.event.IListener delegate, boolean delegateContainerEvents)` |

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | `attach​(java.lang.Object element)` |
    `void` | `detach​(java.lang.Object element)` |
    `protected boolean` | `produceObjectModificationEvents()` |
    `protected boolean` | `produceObjectStateChangedEvents()` |
    `protected boolean` | `produceTransactionDemarcationEvents()` |

    - ### Methods inherited from class org.eclipse.net4j.util.container.SelfAttachingContainerListener.Delegating

      `notifyContainerEvent, notifyOtherEvent`

    - ### Methods inherited from class org.eclipse.net4j.util.container.SelfAttachingContainerListener

      `addNotifier, handleException, isActive, isWaitForActive, notifyEvent, removeNotifier, shouldAttach, shouldDescend`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### CDOViewEventProducer

          public CDOViewEventProducer​(org.eclipse.net4j.util.event.IListener delegate,
                                      boolean delegateContainerEvents)

    - #### CDOViewEventProducer

          public CDOViewEventProducer​(org.eclipse.net4j.util.event.IListener delegate)

  - ### Method Detail

    - #### attach

          public void attach​(java.lang.Object element)

      Overrides:
        `attach` in class `org.eclipse.net4j.util.container.SelfAttachingContainerListener`

    - #### detach

          public void detach​(java.lang.Object element)

      Overrides:
        `detach` in class `org.eclipse.net4j.util.container.SelfAttachingContainerListener`

    - #### produceObjectStateChangedEvents

          protected boolean produceObjectStateChangedEvents()

    - #### produceObjectModificationEvents

          protected boolean produceObjectModificationEvents()

    - #### produceTransactionDemarcationEvents

          protected boolean produceTransactionDemarcationEvents()