## Uses of Class
org.apache.cayenne.event.EventSubject

- Packages that use EventSubject
  Package | Description
  --- | ---
  org.apache.cayenne | Contains persistence APIs directly accessible by users.
  org.apache.cayenne.access | Contains classes that make up Cayenne ORM stack.
  org.apache.cayenne.event | Contains classes that make up Cayenne generic event dispatch mechanism.

- - ### Uses of EventSubject in org.apache.cayenne

    Fields in org.apache.cayenne declared as EventSubject
    Modifier and Type | Field | Description
    --- | --- | ---
    `static EventSubject` | DataChannel.`GRAPH_CHANGED_SUBJECT` |
    `static EventSubject` | DataChannel.`GRAPH_FLUSHED_SUBJECT` |
    `static EventSubject` | DataChannel.`GRAPH_ROLLEDBACK_SUBJECT` |

  - ### Uses of EventSubject in org.apache.cayenne.access

    Fields in org.apache.cayenne.access declared as EventSubject
    Modifier and Type | Field | Description
    --- | --- | ---
    `protected EventSubject` | DataRowStore.`eventSubject` |

    Methods in org.apache.cayenne.access that return EventSubject
    Modifier and Type | Method | Description
    --- | --- | ---
    `EventSubject` | DataRowStore.`getSnapshotEventSubject()` | Returns EventSubject used by this SnapshotCache to notify of snapshot changes.

  - ### Uses of EventSubject in org.apache.cayenne.event

    Fields in org.apache.cayenne.event declared as EventSubject
    Modifier and Type | Field | Description
    --- | --- | ---
    `protected EventSubject` | CayenneEvent.`subject` |

    Fields in org.apache.cayenne.event with type parameters of type EventSubject
    Modifier and Type | Field | Description
    --- | --- | ---
    `protected Collection<EventSubject>` | EventBridge.`localSubjects` |
    `protected Map<EventSubject,​org.apache.cayenne.event.DispatchQueue>` | DefaultEventManager.`subjects` |

    Methods in org.apache.cayenne.event that return EventSubject
    Modifier and Type | Method | Description
    --- | --- | ---
    `EventSubject` | CayenneEvent.`getSubject()` |
    `static EventSubject` | EventSubject.`getSubject​(Class<?> subjectOwner, String subjectName)` | Returns an event subject identified by the given owner and subject name.

    Methods in org.apache.cayenne.event that return types with arguments of type EventSubject
    Modifier and Type | Method | Description
    --- | --- | ---
    `Collection<EventSubject>` | EventBridge.`getLocalSubjects()` | Returns a Collection of local EventSubjects.

    Methods in org.apache.cayenne.event with parameters of type EventSubject
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | DefaultEventManager.`addListener​(Object listener, String methodName, Class<?> eventParameterClass, EventSubject subject)` | Register an `EventListener` for events sent by any sender.
    `void` | DefaultEventManager.`addListener​(Object listener, String methodName, Class<?> eventParameterClass, EventSubject subject, Object sender)` | Register an `EventListener` for events sent by a specific sender.
    `protected void` | DefaultEventManager.`addListener​(Object listener, String methodName, Class<?> eventParameterClass, EventSubject subject, Object sender, boolean blocking)` |
    `void` | EventManager.`addListener​(Object listener, String methodName, Class<?> eventParameterClass, EventSubject subject)` | Register an `EventListener` for events sent by any sender.
    `void` | EventManager.`addListener​(Object listener, String methodName, Class<?> eventParameterClass, EventSubject subject, Object sender)` | Register an `EventListener` for events sent by a specific sender.
    `void` | NoopEventManager.`addListener​(Object listener, String methodName, Class<?> eventParameterClass, EventSubject subject)` |
    `void` | NoopEventManager.`addListener​(Object listener, String methodName, Class<?> eventParameterClass, EventSubject subject, Object sender)` |
    `void` | DefaultEventManager.`addNonBlockingListener​(Object listener, String methodName, Class<?> eventParameterClass, EventSubject subject)` |
    `void` | DefaultEventManager.`addNonBlockingListener​(Object listener, String methodName, Class<?> eventParameterClass, EventSubject subject, Object sender)` |
    `void` | EventManager.`addNonBlockingListener​(Object listener, String methodName, Class<?> eventParameterClass, EventSubject subject)` |
    `void` | EventManager.`addNonBlockingListener​(Object listener, String methodName, Class<?> eventParameterClass, EventSubject subject, Object sender)` |
    `void` | NoopEventManager.`addNonBlockingListener​(Object listener, String methodName, Class<?> eventParameterClass, EventSubject subject)` |
    `void` | NoopEventManager.`addNonBlockingListener​(Object listener, String methodName, Class<?> eventParameterClass, EventSubject subject, Object sender)` |
    `static String` | EventBridge.`convertToExternalSubject​(EventSubject localSubject)` | A utility method that performs consistent translation from an EventSubject to a String that can be used by external transport as subject for distributed communications.
    `void` | DefaultEventManager.`postEvent​(EventObject event, EventSubject subject)` | Sends an event to all registered objects about a particular subject.
    `void` | EventManager.`postEvent​(EventObject event, EventSubject subject)` | Sends an event to all registered objects about a particular subject.
    `void` | NoopEventManager.`postEvent​(EventObject event, EventSubject subject)` |
    `void` | DefaultEventManager.`postNonBlockingEvent​(EventObject event, EventSubject subject)` | Sends an event to all registered objects about a particular subject.
    `void` | EventManager.`postNonBlockingEvent​(EventObject event, EventSubject subject)` | Sends an event to all registered objects about a particular subject.
    `void` | NoopEventManager.`postNonBlockingEvent​(EventObject event, EventSubject subject)` |
    `boolean` | DefaultEventManager.`removeAllListeners​(EventSubject subject)` | Removes all listeners for a given subject.
    `boolean` | EventManager.`removeAllListeners​(EventSubject subject)` | Removes all listeners for a given subject.
    `boolean` | NoopEventManager.`removeAllListeners​(EventSubject subject)` |
    `boolean` | DefaultEventManager.`removeListener​(Object listener, EventSubject subject)` | Unregister the specified listener for the events about the given subject.
    `boolean` | DefaultEventManager.`removeListener​(Object listener, EventSubject subject, Object sender)` | Unregister the specified listener for the events about the given subject and the given sender.
    `boolean` | EventManager.`removeListener​(Object listener, EventSubject subject)` | Unregister the specified listener for the events about the given subject.
    `boolean` | EventManager.`removeListener​(Object listener, EventSubject subject, Object sender)` | Unregister the specified listener for the events about the given subject and the given sender.
    `boolean` | NoopEventManager.`removeListener​(Object listener, EventSubject subject)` |
    `boolean` | NoopEventManager.`removeListener​(Object listener, EventSubject subject, Object sender)` |
    `void` | CayenneEvent.`setSubject​(EventSubject subject)` |

    Method parameters in org.apache.cayenne.event with type arguments of type EventSubject
    Modifier and Type | Method | Description
    --- | --- | ---
    `EventBridge` | EventBridgeFactory.`createEventBridge​(Collection<EventSubject> localSubjects, String externalSubject, Map<String,​String> properties)` | Creates an `EventBridge` with the specified parameters.

    Constructors in org.apache.cayenne.event with parameters of type EventSubject
    Constructor | Description
    --- | ---
    `EventBridge​(EventSubject localSubject, String externalSubject)` | Creates an EventBridge with a single local subject.

    Constructor parameters in org.apache.cayenne.event with type arguments of type EventSubject
    Constructor | Description
    --- | ---
    `EventBridge​(Collection<EventSubject> localSubjects, String externalSubject)` | Creates an EventBridge with multiple local subjects and a single external subject.