Browse Source

Use constant for ".lock"

(cherry picked from commit 5f27032fb8)

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

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

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

2
org.eclipse.jgit/.settings/.api_filters

@ -3,7 +3,7 @@
<resource path="META-INF/MANIFEST.MF"> <resource path="META-INF/MANIFEST.MF">
<filter id="924844039"> <filter id="924844039">
<message_arguments> <message_arguments>
<message_argument value="4.7.2"/> <message_argument value="4.7.3"/>
<message_argument value="4.7.0"/> <message_argument value="4.7.0"/>
</message_arguments> </message_arguments>
</filter> </filter>

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

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

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

@ -47,6 +47,7 @@ package org.eclipse.jgit.internal.storage.file;
import static org.eclipse.jgit.lib.Constants.HEAD; import static org.eclipse.jgit.lib.Constants.HEAD;
import static org.eclipse.jgit.lib.Constants.LOGS; import static org.eclipse.jgit.lib.Constants.LOGS;
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_HEADS;
import static org.eclipse.jgit.lib.Constants.R_REFS; import static org.eclipse.jgit.lib.Constants.R_REFS;
import static org.eclipse.jgit.lib.Constants.R_REMOTES; import static org.eclipse.jgit.lib.Constants.R_REMOTES;
@ -86,7 +87,7 @@ public class ReflogWriter {
* @return the name of the ref's lock ref * @return the name of the ref's lock ref
*/ */
public static String refLockFor(final String name) { public static String refLockFor(final String name) {
return name + LockFile.SUFFIX; return name + LOCK_SUFFIX;
} }
private final Repository parent; private final Repository parent;
@ -287,4 +288,4 @@ public class ReflogWriter {
|| refName.startsWith(R_REMOTES) // || refName.startsWith(R_REMOTES) //
|| refName.equals(R_STASH); || refName.equals(R_STASH);
} }
} }

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

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

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

@ -48,6 +48,8 @@
package org.eclipse.jgit.lib; package org.eclipse.jgit.lib;
import static org.eclipse.jgit.lib.Constants.LOCK_SUFFIX;
import java.io.BufferedOutputStream; import java.io.BufferedOutputStream;
import java.io.File; import java.io.File;
import java.io.FileNotFoundException; import java.io.FileNotFoundException;
@ -1293,10 +1295,12 @@ public abstract class Repository implements AutoCloseable {
*/ */
public static boolean isValidRefName(final String refName) { public static boolean isValidRefName(final String refName) {
final int len = refName.length(); final int len = refName.length();
if (len == 0) if (len == 0) {
return false; return false;
if (refName.endsWith(".lock")) //$NON-NLS-1$ }
if (refName.endsWith(LOCK_SUFFIX)) {
return false; return false;
}
// Refs may be stored as loose files so invalid paths // Refs may be stored as loose files so invalid paths
// on the local system must also be invalid refs. // 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; package org.eclipse.jgit.transport;
import static org.eclipse.jgit.lib.Constants.LOCK_SUFFIX;
import java.io.BufferedReader; import java.io.BufferedReader;
import java.io.FileNotFoundException; import java.io.FileNotFoundException;
import java.io.IOException; import java.io.IOException;
@ -341,7 +343,7 @@ public class TransportSftp extends SshTransport implements WalkTransport {
@Override @Override
void writeFile(final String path, final byte[] data) throws IOException { void writeFile(final String path, final byte[] data) throws IOException {
final String lock = path + ".lock"; //$NON-NLS-1$ final String lock = path + LOCK_SUFFIX;
try { try {
super.writeFile(lock, data); super.writeFile(lock, data);
try { try {

Loading…
Cancel
Save