org.eclipse.eef.core.api

## Interface EditingContextAdapter

    public interface EditingContextAdapter

Connects EEF views with the external context (e.g. an editor) on behalf of which the views display and edit model elements. Clients which use the EEF runtime must supply an implementation of this interface so that the EEF views can be correctly integrated into the source context.

### Method Summary

All Methods Instance Methods Abstract Methods
`org.eclipse.emf.edit.domain.EditingDomain` `getEditingDomain()` Returns the editing domain.
`void` `onModelChange(IConsumer<java.util.List<org.eclipse.emf.common.notify.Notification>> trigger)` Registers a listener to notify when the model is modified.
`org.eclipse.core.runtime.IStatus` `performModelChange(java.lang.Runnable operation)` Executes an operation which which potentially makes changes to the model.
`void` `removeModelChangeConsumer()` Unregisters the currently set listener.

### Method Detail

#### performModelChange

    org.eclipse.core.runtime.IStatus performModelChange(java.lang.Runnable operation)

Executes an operation which which potentially makes changes to the model.

Parameters:
  `operation` - the operation.
Returns:
  the status of the operation execution.

#### onModelChange

    void onModelChange(IConsumer<java.util.List<org.eclipse.emf.common.notify.Notification>> trigger)

Registers a listener to notify when the model is modified. The trigger will be called in a context in which it may not be possible to perform additional changes to the model itself. The list of changes supplied to the listener should be considered only as a hint and may be `null`.

Parameters:
  `trigger` - the trigger to invoke when the model is modified.

#### removeModelChangeConsumer

    void removeModelChangeConsumer()

Unregisters the currently set listener. Does nothing if none is currently registered.

#### getEditingDomain

    org.eclipse.emf.edit.domain.EditingDomain getEditingDomain()

Returns the editing domain.

Returns:
  The editing domain
Since:
  1.7.0