Browse Source

Use constant for ".lock"

Change-Id: Id65dc94c970ffd3ca3d3d4a5d57123c95d29e8af
Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
stable-5.0
Matthias Sohn 6 years ago
parent
commit
5f27032fb8
  1. 11
      org.eclipse.jgit.test/tst/org/eclipse/jgit/internal/storage/file/RefUpdateTest.java
  2. 8
      org.eclipse.jgit/src/org/eclipse/jgit/internal/storage/file/LockFile.java
  3. 3
      org.eclipse.jgit/src/org/eclipse/jgit/internal/storage/file/ReflogWriter.java
  4. 7
      org.eclipse.jgit/src/org/eclipse/jgit/lib/Constants.java
  5. 8
      org.eclipse.jgit/src/org/eclipse/jgit/lib/Repository.java
  6. 4
      org.eclipse.jgit/src/org/eclipse/jgit/transport/TransportSftp.java

11
org.eclipse.jgit.test/tst/org/eclipse/jgit/internal/storage/file/RefUpdateTest.java

@ -45,8 +45,9 @@
package org.eclipse.jgit.internal.storage.file;
import static org.eclipse.jgit.lib.Constants.CHARSET;
import static org.eclipse.jgit.junit.Assert.assertEquals;
import static org.eclipse.jgit.lib.Constants.CHARSET;
import static org.eclipse.jgit.lib.Constants.LOCK_SUFFIX;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertFalse;
import static org.junit.Assert.assertNotNull;
@ -819,11 +820,11 @@ public class RefUpdateTest extends SampleDataRepositoryTestCase {
// Check that the involved refs are the same despite the failure
assertExists(false, toName);
if (!toLock.equals(toName))
assertExists(false, toName + ".lock");
assertExists(true, toLock + ".lock");
assertExists(false, toName + LOCK_SUFFIX);
assertExists(true, toLock + LOCK_SUFFIX);
if (!toLock.equals(fromName))
assertExists(false, "logs/" + fromName + ".lock");
assertExists(false, "logs/" + toName + ".lock");
assertExists(false, "logs/" + fromName + LOCK_SUFFIX);
assertExists(false, "logs/" + toName + LOCK_SUFFIX);
assertEquals(oldHeadId, db.resolve(Constants.HEAD));
assertEquals(oldfromId, db.resolve(fromName));
assertNull(db.resolve(toName));

8
org.eclipse.jgit/src/org/eclipse/jgit/internal/storage/file/LockFile.java

@ -44,6 +44,8 @@
package org.eclipse.jgit.internal.storage.file;
import static org.eclipse.jgit.lib.Constants.LOCK_SUFFIX;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
@ -74,7 +76,6 @@ import org.eclipse.jgit.util.FileUtils;
* name.
*/
public class LockFile {
static final String SUFFIX = ".lock"; //$NON-NLS-1$
/**
* Unlock the given file.
@ -106,14 +107,15 @@ public class LockFile {
* @return lock file
*/
static File getLockFile(File file) {
return new File(file.getParentFile(), file.getName() + SUFFIX);
return new File(file.getParentFile(),
file.getName() + LOCK_SUFFIX);
}
/** Filter to skip over active lock files when listing a directory. */
static final FilenameFilter FILTER = new FilenameFilter() {
@Override
public boolean accept(File dir, String name) {
return !name.endsWith(SUFFIX);
return !name.endsWith(LOCK_SUFFIX);
}
};

3
org.eclipse.jgit/src/org/eclipse/jgit/internal/storage/file/ReflogWriter.java

@ -46,6 +46,7 @@
package org.eclipse.jgit.internal.storage.file;
import static org.eclipse.jgit.lib.Constants.HEAD;
import static org.eclipse.jgit.lib.Constants.LOCK_SUFFIX;
import static org.eclipse.jgit.lib.Constants.R_HEADS;
import static org.eclipse.jgit.lib.Constants.R_NOTES;
import static org.eclipse.jgit.lib.Constants.R_REFS;
@ -84,7 +85,7 @@ public class ReflogWriter {
* @return the name of the ref's lock ref.
*/
public static String refLockFor(String name) {
return name + LockFile.SUFFIX;
return name + LOCK_SUFFIX;
}
private final RefDirectory refdb;

7
org.eclipse.jgit/src/org/eclipse/jgit/lib/Constants.java

@ -691,6 +691,13 @@ public final class Constants {
public static final ObjectId EMPTY_BLOB_ID = ObjectId
.fromString("e69de29bb2d1d6434b8b29ae775ad8c2e48c5391");
/**
* Suffix of lock file name
*
* @since 5.0
*/
public static final String LOCK_SUFFIX = ".lock"; //$NON-NLS-1$
private Constants() {
// Hide the default constructor
}

8
org.eclipse.jgit/src/org/eclipse/jgit/lib/Repository.java

@ -48,6 +48,8 @@
package org.eclipse.jgit.lib;
import static org.eclipse.jgit.lib.Constants.LOCK_SUFFIX;
import java.io.BufferedOutputStream;
import java.io.File;
import java.io.FileNotFoundException;
@ -1366,10 +1368,12 @@ public abstract class Repository implements AutoCloseable {
*/
public static boolean isValidRefName(String refName) {
final int len = refName.length();
if (len == 0)
if (len == 0) {
return false;
if (refName.endsWith(".lock")) //$NON-NLS-1$
}
if (refName.endsWith(LOCK_SUFFIX)) {
return false;
}
// Refs may be stored as loose files so invalid paths
// on the local system must also be invalid refs.

4
org.eclipse.jgit/src/org/eclipse/jgit/transport/TransportSftp.java

@ -43,6 +43,8 @@
package org.eclipse.jgit.transport;
import static org.eclipse.jgit.lib.Constants.LOCK_SUFFIX;
import java.io.BufferedReader;
import java.io.FileNotFoundException;
import java.io.IOException;
@ -344,7 +346,7 @@ public class TransportSftp extends SshTransport implements WalkTransport {
@Override
void writeFile(String path, byte[] data) throws IOException {
final String lock = path + ".lock"; //$NON-NLS-1$
final String lock = path + LOCK_SUFFIX;
try {
super.writeFile(lock, data);
try {

Loading…
Cancel
Save