public class ChangeRebuilderImpl extends ChangeRebuilder
ChangeRebuilder.NoPatchSetsException
Modifier and Type | Field and Description |
---|---|
static long |
MAX_WINDOW_MS
The maximum amount of time between the ReviewDb timestamp of the first and last events batched
together into a single NoteDb update.
|
Modifier and Type | Method and Description |
---|---|
void |
buildUpdates(NoteDbUpdateManager manager,
ChangeBundle bundle) |
NoteDbUpdateManager.Result |
execute(ReviewDb db,
Change.Id changeId,
NoteDbUpdateManager manager) |
NoteDbUpdateManager.Result |
execute(ReviewDb db,
Change.Id changeId,
NoteDbUpdateManager manager,
boolean checkReadOnly) |
NoteDbUpdateManager.Result |
rebuild(NoteDbUpdateManager manager,
ChangeBundle bundle) |
NoteDbUpdateManager.Result |
rebuild(ReviewDb db,
Change.Id changeId) |
NoteDbUpdateManager.Result |
rebuildEvenIfReadOnly(ReviewDb db,
Change.Id changeId) |
void |
rebuildReviewDb(ReviewDb db,
Project.NameKey project,
Change.Id changeId)
Rebuild ReviewDb contents by copying from NoteDb.
|
NoteDbUpdateManager |
stage(ReviewDb db,
Change.Id changeId) |
rebuildAsync
public static final long MAX_WINDOW_MS
Used to account for the fact that different records with their own timestamps (e.g. PatchSetApproval
and ChangeMessage
) historically didn't necessarily use the same
timestamp, and tended to call System.currentTimeMillis()
independently.
public NoteDbUpdateManager.Result rebuild(ReviewDb db, Change.Id changeId) throws java.io.IOException, com.google.gwtorm.server.OrmException
rebuild
in class ChangeRebuilder
java.io.IOException
com.google.gwtorm.server.OrmException
public NoteDbUpdateManager.Result rebuildEvenIfReadOnly(ReviewDb db, Change.Id changeId) throws java.io.IOException, com.google.gwtorm.server.OrmException
rebuildEvenIfReadOnly
in class ChangeRebuilder
java.io.IOException
com.google.gwtorm.server.OrmException
public NoteDbUpdateManager.Result rebuild(NoteDbUpdateManager manager, ChangeBundle bundle) throws NoSuchChangeException, java.io.IOException, com.google.gwtorm.server.OrmException
rebuild
in class ChangeRebuilder
NoSuchChangeException
java.io.IOException
com.google.gwtorm.server.OrmException
public NoteDbUpdateManager stage(ReviewDb db, Change.Id changeId) throws java.io.IOException, com.google.gwtorm.server.OrmException
stage
in class ChangeRebuilder
java.io.IOException
com.google.gwtorm.server.OrmException
public NoteDbUpdateManager.Result execute(ReviewDb db, Change.Id changeId, NoteDbUpdateManager manager) throws com.google.gwtorm.server.OrmException, java.io.IOException
execute
in class ChangeRebuilder
com.google.gwtorm.server.OrmException
java.io.IOException
public NoteDbUpdateManager.Result execute(ReviewDb db, Change.Id changeId, NoteDbUpdateManager manager, boolean checkReadOnly) throws com.google.gwtorm.server.OrmException, java.io.IOException
com.google.gwtorm.server.OrmException
java.io.IOException
public void buildUpdates(NoteDbUpdateManager manager, ChangeBundle bundle) throws java.io.IOException, com.google.gwtorm.server.OrmException
buildUpdates
in class ChangeRebuilder
java.io.IOException
com.google.gwtorm.server.OrmException
public void rebuildReviewDb(ReviewDb db, Project.NameKey project, Change.Id changeId) throws com.google.gwtorm.server.OrmException
ChangeRebuilder
Requires NoteDb to be the primary storage for the change.
rebuildReviewDb
in class ChangeRebuilder
com.google.gwtorm.server.OrmException