Bug 150347 Support binary stream as preview image.
See 144843. We need model to save binary strame as report preview image. Currently, preview image is an external image. Maybe need a type to distinguish preview image type.
model/org.eclipse.birt.report.model/src/org/eclipse/birt/report/model/api/activity/NotificationEvent.java
import org.eclipse.birt.report.model.core.DesignElement;
/**
 * The base class of the notification hierarchy. Every notification describes
 * one change to one element called the <em>target element</em>.
 * <p>
 * A notification specifies the kind of change by its class. Subclasses provide
 * additional context information appropriate for that specific event.
 * <p>
 * Notifications are routed to listeners though a number of
 * <em>delivery paths</em>. For example, a listener may hear about changes to
 * an element itself, to an ancestor element, to an associated style, and so on.
 * Some listeners may want to react differently depending on the element that
 * actually changed. The {@link #getDeliveryPath getDeliveryPath( )}method lets
 * the listener determine which path this event has taken.
 * <p>
 * Notifications are created in response to a model change. The UI that triggers
 * the change can identify itself as the <em>sender</em> of the event. This
 * allows the UI to ignore events that represent changes that it, itself, made.
 * Using the sender attribute is purely optional, and is for the convenience of
 * each particular bit of UI.
 * <p>
 * There are several constants defined in this class. Each of them is
 * corresponding to a kind of Event. When doing some operations, specified
 * command and record are invoked and the record will eventually send out a kind
 * of NotificationEvent, when calling the {@link #getEventType()}of the event,
 * the return value will be one of the constants defined here.
 *  
 */
public abstract class NotificationEvent
{