Browse Source

PushCertificateStore: Return boolean from batch save methods

Change-Id: I9730cb4f60c60ee6d5a7a156a0b6a53f79309ec3
stable-4.1
Dave Borowitz 9 years ago
parent
commit
d7377877e0
  1. 6
      org.eclipse.jgit.test/tst/org/eclipse/jgit/transport/PushCertificateStoreTest.java
  2. 6
      org.eclipse.jgit/src/org/eclipse/jgit/transport/PushCertificateStore.java

6
org.eclipse.jgit.test/tst/org/eclipse/jgit/transport/PushCertificateStoreTest.java

@ -49,6 +49,8 @@ import static org.eclipse.jgit.lib.RefUpdate.Result.LOCK_FAILURE;
import static org.eclipse.jgit.lib.RefUpdate.Result.NEW;
import static org.eclipse.jgit.lib.RefUpdate.Result.NO_CHANGE;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertFalse;
import static org.junit.Assert.assertTrue;
import java.io.ByteArrayInputStream;
import java.io.IOException;
@ -277,10 +279,12 @@ public class PushCertificateStoreTest {
@Test
public void saveInBatch() throws Exception {
BatchRefUpdate batch = repo.getRefDatabase().newBatchUpdate();
assertFalse(store.save(batch));
assertEquals(0, batch.getCommands().size());
PushCertificate addMaster = newCert(
command(zeroId(), ID1, "refs/heads/master"));
store.put(addMaster, newIdent());
store.save(batch);
assertTrue(store.save(batch));
List<ReceiveCommand> commands = batch.getCommands();
assertEquals(1, commands.size());

6
org.eclipse.jgit/src/org/eclipse/jgit/transport/PushCertificateStore.java

@ -394,17 +394,19 @@ public class PushCertificateStore implements AutoCloseable {
*
* @param batch
* update to save to.
* @return whether a command was added to the batch.
* @throws IOException
* if there was an error reading from or writing to the
* repository.
*/
public void save(BatchRefUpdate batch) throws IOException {
public boolean save(BatchRefUpdate batch) throws IOException {
ObjectId newId = write();
if (newId == null) {
return;
return false;
}
batch.addCommand(new ReceiveCommand(
commit != null ? commit : ObjectId.zeroId(), newId, REF_NAME));
return true;
}
/**

Loading…
Cancel
Save