public class NoteDbUpdateManager
extends java.lang.Object
implements java.lang.AutoCloseable
Instances are one-time-use. Handles updating both the change repo and the All-Users repo for any affected changes, with proper ordering.
To see the state that would be applied prior to executing the full sequence
of updates, use stage()
.
Modifier and Type | Class and Description |
---|---|
static interface |
NoteDbUpdateManager.Factory |
static class |
NoteDbUpdateManager.Result |
static class |
NoteDbUpdateManager.StagedResult |
Modifier and Type | Field and Description |
---|---|
static java.lang.String |
CHANGES_READ_ONLY |
Modifier and Type | Method and Description |
---|---|
void |
add(ChangeDraftUpdate draftUpdate) |
void |
add(ChangeUpdate update)
Add an update to the list of updates to execute.
|
void |
close() |
void |
deleteChange(com.google.gerrit.reviewdb.client.Change.Id id) |
void |
execute() |
void |
flush() |
NoteDbUpdateManager |
setAllUsersRepo(org.eclipse.jgit.lib.Repository repo,
org.eclipse.jgit.revwalk.RevWalk rw,
org.eclipse.jgit.lib.ObjectInserter ins,
ChainedReceiveCommands cmds) |
NoteDbUpdateManager |
setChangeRepo(org.eclipse.jgit.lib.Repository repo,
org.eclipse.jgit.revwalk.RevWalk rw,
org.eclipse.jgit.lib.ObjectInserter ins,
ChainedReceiveCommands cmds) |
java.util.Map<com.google.gerrit.reviewdb.client.Change.Id,NoteDbUpdateManager.StagedResult> |
stage()
Stage updates in the manager's internal list of commands.
|
NoteDbUpdateManager.Result |
stageAndApplyDelta(com.google.gerrit.reviewdb.client.Change change) |
public void close()
close
in interface java.lang.AutoCloseable
public NoteDbUpdateManager setChangeRepo(org.eclipse.jgit.lib.Repository repo, org.eclipse.jgit.revwalk.RevWalk rw, org.eclipse.jgit.lib.ObjectInserter ins, ChainedReceiveCommands cmds)
public NoteDbUpdateManager setAllUsersRepo(org.eclipse.jgit.lib.Repository repo, org.eclipse.jgit.revwalk.RevWalk rw, org.eclipse.jgit.lib.ObjectInserter ins, ChainedReceiveCommands cmds)
public void add(ChangeUpdate update)
Updates should only be added to the manager after all mutations have been made, as this method may eagerly access the update.
update
- the update to add.public void add(ChangeDraftUpdate draftUpdate)
public void deleteChange(com.google.gerrit.reviewdb.client.Change.Id id)
public java.util.Map<com.google.gerrit.reviewdb.client.Change.Id,NoteDbUpdateManager.StagedResult> stage() throws com.google.gwtorm.server.OrmException, java.io.IOException
com.google.gwtorm.server.OrmException
- if a database layer error occurs.java.io.IOException
- if a storage layer error occurs.public NoteDbUpdateManager.Result stageAndApplyDelta(com.google.gerrit.reviewdb.client.Change change) throws com.google.gwtorm.server.OrmException, java.io.IOException
com.google.gwtorm.server.OrmException
java.io.IOException
public void flush() throws java.io.IOException
java.io.IOException
public void execute() throws com.google.gwtorm.server.OrmException, java.io.IOException
com.google.gwtorm.server.OrmException
java.io.IOException