public class EventBroker extends Object implements EventDispatcher
Modifier and Type | Class and Description |
---|---|
static class |
EventBroker.Module |
Modifier and Type | Field and Description |
---|---|
protected com.google.inject.Provider<com.google.gerrit.reviewdb.server.ReviewDb> |
dbProvider |
protected com.google.gerrit.extensions.registration.DynamicSet<UserScopedEventListener> |
listeners
Listeners to receive changes as they happen (limited by visibility of
user).
|
protected ChangeNotes.Factory |
notesFactory |
protected ProjectCache |
projectCache |
protected com.google.gerrit.extensions.registration.DynamicSet<EventListener> |
unrestrictedListeners
Listeners to receive all changes as they happen.
|
Constructor and Description |
---|
EventBroker(com.google.gerrit.extensions.registration.DynamicSet<UserScopedEventListener> listeners,
com.google.gerrit.extensions.registration.DynamicSet<EventListener> unrestrictedListeners,
ProjectCache projectCache,
ChangeNotes.Factory notesFactory,
com.google.inject.Provider<com.google.gerrit.reviewdb.server.ReviewDb> dbProvider) |
Modifier and Type | Method and Description |
---|---|
protected void |
fireEvent(com.google.gerrit.reviewdb.client.Branch.NameKey branchName,
RefEvent event) |
protected void |
fireEvent(com.google.gerrit.reviewdb.client.Change change,
ChangeEvent event) |
protected void |
fireEvent(Event event) |
protected void |
fireEvent(com.google.gerrit.reviewdb.client.Project.NameKey project,
ProjectEvent event) |
protected void |
fireEventForUnrestrictedListeners(Event event) |
protected boolean |
isVisibleTo(com.google.gerrit.reviewdb.client.Branch.NameKey branchName,
CurrentUser user) |
protected boolean |
isVisibleTo(com.google.gerrit.reviewdb.client.Change change,
CurrentUser user) |
protected boolean |
isVisibleTo(Event event,
CurrentUser user) |
protected boolean |
isVisibleTo(com.google.gerrit.reviewdb.client.Project.NameKey project,
CurrentUser user) |
void |
postEvent(com.google.gerrit.reviewdb.client.Branch.NameKey branchName,
RefEvent event)
Post a stream event that is related to a branch
|
void |
postEvent(com.google.gerrit.reviewdb.client.Change change,
ChangeEvent event)
Post a stream event that is related to a change
|
void |
postEvent(Event event)
Post a stream event generically.
|
void |
postEvent(com.google.gerrit.reviewdb.client.Project.NameKey projectName,
ProjectEvent event)
Post a stream event that is related to a project.
|
protected final com.google.gerrit.extensions.registration.DynamicSet<UserScopedEventListener> listeners
protected final com.google.gerrit.extensions.registration.DynamicSet<EventListener> unrestrictedListeners
protected final ProjectCache projectCache
protected final ChangeNotes.Factory notesFactory
protected final com.google.inject.Provider<com.google.gerrit.reviewdb.server.ReviewDb> dbProvider
@Inject public EventBroker(com.google.gerrit.extensions.registration.DynamicSet<UserScopedEventListener> listeners, com.google.gerrit.extensions.registration.DynamicSet<EventListener> unrestrictedListeners, ProjectCache projectCache, ChangeNotes.Factory notesFactory, com.google.inject.Provider<com.google.gerrit.reviewdb.server.ReviewDb> dbProvider)
public void postEvent(com.google.gerrit.reviewdb.client.Change change, ChangeEvent event) throws com.google.gwtorm.server.OrmException
EventDispatcher
postEvent
in interface EventDispatcher
change
- The change that the event is related toevent
- The event to postcom.google.gwtorm.server.OrmException
- on failure to post the event due to DB errorpublic void postEvent(com.google.gerrit.reviewdb.client.Branch.NameKey branchName, RefEvent event)
EventDispatcher
postEvent
in interface EventDispatcher
branchName
- The branch that the event is related toevent
- The event to postpublic void postEvent(com.google.gerrit.reviewdb.client.Project.NameKey projectName, ProjectEvent event)
EventDispatcher
postEvent
in interface EventDispatcher
projectName
- The project that the event is related to.event
- The event to post.public void postEvent(Event event) throws com.google.gwtorm.server.OrmException
EventDispatcher
If you are creating a RefEvent or ChangeEvent from scratch, it is more efficient to use the specific postEvent methods for those use cases.
postEvent
in interface EventDispatcher
event
- The event to post.com.google.gwtorm.server.OrmException
- on failure to post the event due to DB errorprotected void fireEventForUnrestrictedListeners(Event event)
protected void fireEvent(com.google.gerrit.reviewdb.client.Change change, ChangeEvent event) throws com.google.gwtorm.server.OrmException
com.google.gwtorm.server.OrmException
protected void fireEvent(com.google.gerrit.reviewdb.client.Project.NameKey project, ProjectEvent event)
protected void fireEvent(com.google.gerrit.reviewdb.client.Branch.NameKey branchName, RefEvent event)
protected void fireEvent(Event event) throws com.google.gwtorm.server.OrmException
com.google.gwtorm.server.OrmException
protected boolean isVisibleTo(com.google.gerrit.reviewdb.client.Project.NameKey project, CurrentUser user)
protected boolean isVisibleTo(com.google.gerrit.reviewdb.client.Change change, CurrentUser user) throws com.google.gwtorm.server.OrmException
com.google.gwtorm.server.OrmException
protected boolean isVisibleTo(com.google.gerrit.reviewdb.client.Branch.NameKey branchName, CurrentUser user)
protected boolean isVisibleTo(Event event, CurrentUser user) throws com.google.gwtorm.server.OrmException
com.google.gwtorm.server.OrmException