Browse Source

Merge branch 'master' into stable-5.7

* master:
  Update Orbit to S20200219023850 for 2012-03 M3
  Revert "Prepend hostname to subsection used to store file timestamp resolution"
  Remove use of org.bouncycastle.util.encoders.Hex
  Remove use of org.bouncycastle.util.io.TeeOutputStream
  Make the IMatcher public API
  SimilarityRenameDetector: Fix inconsistent indentation
  Use indexOf(char) and lastIndexOf(char) rather than String versions
  Reorder modifiers to follow Java Language Specification
  GitmoduleEntry: Remove redundant import of class from same package
  Remove redundant "static" qualifier from enum declarations
  RevWalk: stop mixing lines of history in topo sort
  Upgrade plexus-compiler-{eclipse|javac|javac-errorprone} to 2.8.6
  Upgrade maven-shade-plugin to 3.2.2
  Removed unused imports
  Documentation/technical/reftable: improve repo layout

Change-Id: I558eff2abda44342fbaf1662fda07e2bcc6d4ee3
Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
stable-5.7
Matthias Sohn 5 years ago
parent
commit
b9a7722e39
  1. 53
      Documentation/technical/reftable.md
  2. 2
      org.eclipse.jgit.http.server/src/org/eclipse/jgit/http/server/ObjectFileServlet.java
  3. 2
      org.eclipse.jgit.lfs/src/org/eclipse/jgit/lfs/CleanFilter.java
  4. 2
      org.eclipse.jgit.lfs/src/org/eclipse/jgit/lfs/SmudgeFilter.java
  5. 8
      org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.10.target
  6. 8
      org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.11.target
  7. 8
      org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.12.target
  8. 8
      org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.13.target
  9. 8
      org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.14-staging.target
  10. 8
      org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.6.target
  11. 8
      org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.7.target
  12. 8
      org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.8.target
  13. 8
      org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.9.target
  14. 7
      org.eclipse.jgit.packaging/org.eclipse.jgit.target/orbit/staging-2020-03.tpd
  15. 2
      org.eclipse.jgit.pgm/src/org/eclipse/jgit/pgm/debug/DiffAlgorithms.java
  16. 4
      org.eclipse.jgit.pgm/src/org/eclipse/jgit/pgm/debug/LfsStore.java
  17. 2
      org.eclipse.jgit.pgm/src/org/eclipse/jgit/pgm/debug/ShowCommands.java
  18. 4
      org.eclipse.jgit.pgm/src/org/eclipse/jgit/pgm/debug/TextHashFunctions.java
  19. 1
      org.eclipse.jgit.test/META-INF/MANIFEST.MF
  20. 2
      org.eclipse.jgit.test/exttst/org/eclipse/jgit/patch/EGitPatchHistoryTest.java
  21. 4
      org.eclipse.jgit.test/tst/org/eclipse/jgit/api/RebaseCommandTest.java
  22. 1
      org.eclipse.jgit.test/tst/org/eclipse/jgit/internal/storage/dfs/DfsGarbageCollectorTest.java
  23. 12
      org.eclipse.jgit.test/tst/org/eclipse/jgit/internal/storage/file/GcOrphanFilesTest.java
  24. 2
      org.eclipse.jgit.test/tst/org/eclipse/jgit/lib/ConfigTest.java
  25. 88
      org.eclipse.jgit.test/tst/org/eclipse/jgit/revplot/PlotCommitListTest.java
  26. 106
      org.eclipse.jgit.test/tst/org/eclipse/jgit/revwalk/RevWalkSortTest.java
  27. 2
      org.eclipse.jgit.test/tst/org/eclipse/jgit/util/GitDateParserBadlyFormattedTest.java
  28. 49
      org.eclipse.jgit.test/tst/org/eclipse/jgit/util/HexTest.java
  29. 1
      org.eclipse.jgit.test/tst/org/eclipse/jgit/util/StatsTest.java
  30. 81
      org.eclipse.jgit.test/tst/org/eclipse/jgit/util/io/TeeOutputStreamTest.java
  31. 1
      org.eclipse.jgit/META-INF/MANIFEST.MF
  32. 2
      org.eclipse.jgit/src/org/eclipse/jgit/api/CheckoutCommand.java
  33. 2
      org.eclipse.jgit/src/org/eclipse/jgit/api/CommitCommand.java
  34. 2
      org.eclipse.jgit/src/org/eclipse/jgit/api/PullCommand.java
  35. 5
      org.eclipse.jgit/src/org/eclipse/jgit/api/RebaseCommand.java
  36. 2
      org.eclipse.jgit/src/org/eclipse/jgit/attributes/Attribute.java
  37. 6
      org.eclipse.jgit/src/org/eclipse/jgit/attributes/AttributesRule.java
  38. 2
      org.eclipse.jgit/src/org/eclipse/jgit/diff/DiffConfig.java
  39. 4
      org.eclipse.jgit/src/org/eclipse/jgit/diff/DiffEntry.java
  40. 2
      org.eclipse.jgit/src/org/eclipse/jgit/diff/Edit.java
  41. 4
      org.eclipse.jgit/src/org/eclipse/jgit/diff/SimilarityRenameDetector.java
  42. 2
      org.eclipse.jgit/src/org/eclipse/jgit/errors/NoMergeBaseException.java
  43. 4
      org.eclipse.jgit/src/org/eclipse/jgit/errors/TranslationBundleException.java
  44. 2
      org.eclipse.jgit/src/org/eclipse/jgit/hooks/GitHook.java
  45. 5
      org.eclipse.jgit/src/org/eclipse/jgit/ignore/FastIgnoreRule.java
  46. 37
      org.eclipse.jgit/src/org/eclipse/jgit/ignore/IMatcher.java
  47. 2
      org.eclipse.jgit/src/org/eclipse/jgit/ignore/IgnoreNode.java
  48. 2
      org.eclipse.jgit/src/org/eclipse/jgit/ignore/internal/AbstractMatcher.java
  49. 1
      org.eclipse.jgit/src/org/eclipse/jgit/ignore/internal/PathMatcher.java
  50. 8
      org.eclipse.jgit/src/org/eclipse/jgit/ignore/internal/Strings.java
  51. 2
      org.eclipse.jgit/src/org/eclipse/jgit/internal/ketch/KetchLeader.java
  52. 4
      org.eclipse.jgit/src/org/eclipse/jgit/internal/storage/dfs/DfsObjDatabase.java
  53. 2
      org.eclipse.jgit/src/org/eclipse/jgit/internal/storage/file/FileObjectDatabase.java
  54. 2
      org.eclipse.jgit/src/org/eclipse/jgit/internal/storage/file/GC.java
  55. 2
      org.eclipse.jgit/src/org/eclipse/jgit/internal/storage/file/LockFile.java
  56. 2
      org.eclipse.jgit/src/org/eclipse/jgit/internal/storage/file/ObjectDirectory.java
  57. 2
      org.eclipse.jgit/src/org/eclipse/jgit/internal/storage/file/PackFile.java
  58. 10
      org.eclipse.jgit/src/org/eclipse/jgit/internal/storage/file/RefDirectory.java
  59. 2
      org.eclipse.jgit/src/org/eclipse/jgit/internal/storage/pack/PackExt.java
  60. 2
      org.eclipse.jgit/src/org/eclipse/jgit/internal/storage/pack/PackWriter.java
  61. 2
      org.eclipse.jgit/src/org/eclipse/jgit/internal/storage/reftable/BlockWriter.java
  62. 2
      org.eclipse.jgit/src/org/eclipse/jgit/internal/storage/reftable/ReftableDatabase.java
  63. 14
      org.eclipse.jgit/src/org/eclipse/jgit/lib/CoreConfig.java
  64. 2
      org.eclipse.jgit/src/org/eclipse/jgit/lib/GitmoduleEntry.java
  65. 8
      org.eclipse.jgit/src/org/eclipse/jgit/lib/IndexDiff.java
  66. 2
      org.eclipse.jgit/src/org/eclipse/jgit/lib/InflaterCache.java
  67. 2
      org.eclipse.jgit/src/org/eclipse/jgit/lib/ObjectIdOwnerMap.java
  68. 2
      org.eclipse.jgit/src/org/eclipse/jgit/lib/ObjectInserter.java
  69. 2
      org.eclipse.jgit/src/org/eclipse/jgit/lib/ObjectLoader.java
  70. 2
      org.eclipse.jgit/src/org/eclipse/jgit/lib/ObjectReader.java
  71. 4
      org.eclipse.jgit/src/org/eclipse/jgit/lib/RebaseTodoLine.java
  72. 4
      org.eclipse.jgit/src/org/eclipse/jgit/lib/RefUpdate.java
  73. 2
      org.eclipse.jgit/src/org/eclipse/jgit/lib/RepositoryCache.java
  74. 2
      org.eclipse.jgit/src/org/eclipse/jgit/merge/MergeAlgorithm.java
  75. 4
      org.eclipse.jgit/src/org/eclipse/jgit/nls/NLS.java
  76. 2
      org.eclipse.jgit/src/org/eclipse/jgit/patch/BinaryHunk.java
  77. 2
      org.eclipse.jgit/src/org/eclipse/jgit/patch/CombinedHunkHeader.java
  78. 2
      org.eclipse.jgit/src/org/eclipse/jgit/patch/FileHeader.java
  79. 2
      org.eclipse.jgit/src/org/eclipse/jgit/patch/FormatError.java
  80. 2
      org.eclipse.jgit/src/org/eclipse/jgit/revwalk/RevObject.java
  81. 8
      org.eclipse.jgit/src/org/eclipse/jgit/revwalk/RevWalk.java
  82. 34
      org.eclipse.jgit/src/org/eclipse/jgit/revwalk/TopoSortGenerator.java
  83. 2
      org.eclipse.jgit/src/org/eclipse/jgit/storage/file/FileBasedConfig.java
  84. 2
      org.eclipse.jgit/src/org/eclipse/jgit/transport/BasePackPushConnection.java
  85. 2
      org.eclipse.jgit/src/org/eclipse/jgit/transport/GitProtocolConstants.java
  86. 2
      org.eclipse.jgit/src/org/eclipse/jgit/transport/PackParser.java
  87. 2
      org.eclipse.jgit/src/org/eclipse/jgit/transport/PacketLineIn.java
  88. 4
      org.eclipse.jgit/src/org/eclipse/jgit/transport/ReceiveCommand.java
  89. 2
      org.eclipse.jgit/src/org/eclipse/jgit/transport/ReceivePack.java
  90. 2
      org.eclipse.jgit/src/org/eclipse/jgit/transport/RemoteRefUpdate.java
  91. 2
      org.eclipse.jgit/src/org/eclipse/jgit/transport/TransportProtocol.java
  92. 2
      org.eclipse.jgit/src/org/eclipse/jgit/transport/UploadPack.java
  93. 4
      org.eclipse.jgit/src/org/eclipse/jgit/transport/WalkEncryption.java
  94. 4
      org.eclipse.jgit/src/org/eclipse/jgit/treewalk/FileTreeIterator.java
  95. 2
      org.eclipse.jgit/src/org/eclipse/jgit/treewalk/TreeWalk.java
  96. 2
      org.eclipse.jgit/src/org/eclipse/jgit/treewalk/WorkingTreeIterator.java
  97. 12
      org.eclipse.jgit/src/org/eclipse/jgit/util/Base64.java
  98. 2
      org.eclipse.jgit/src/org/eclipse/jgit/util/ChangeIdUtil.java
  99. 9
      org.eclipse.jgit/src/org/eclipse/jgit/util/FS.java
  100. 2
      org.eclipse.jgit/src/org/eclipse/jgit/util/FS_POSIX.java
  101. Some files were not shown because too many files have changed in this diff Show More

53
Documentation/technical/reftable.md

@ -773,9 +773,6 @@ A repository must set its `$GIT_DIR/config` to configure reftable:
### Layout
The `$GIT_DIR/refs` path is a file when reftable is configured, not a
directory. This prevents loose references from being stored.
A collection of reftable files are stored in the `$GIT_DIR/reftable/`
directory:
@ -789,28 +786,38 @@ the function `${min_update_index}-${max_update_index}.ref`.
Log-only files use the `.log` extension, while ref-only and mixed ref
and log files use `.ref`. extension.
The stack ordering file is `$GIT_DIR/refs` and lists the current
files, one per line, in order, from oldest (base) to newest (most
recent):
$ cat .git/refs
The stack ordering file is `$GIT_DIR/reftable/tables.list` and lists the current
files, one per line, in order, from oldest (base) to newest (most recent):
$ cat .git/reftable/tables.list
00000001-00000001.log
00000002-00000002.ref
00000003-00000003.ref
Readers must read `$GIT_DIR/refs` to determine which files are
relevant right now, and search through the stack in reverse order
(last reftable is examined first).
Readers must read `$GIT_DIR/reftable/tables.list` to determine which files are
relevant right now, and search through the stack in reverse order (last reftable
is examined first).
Reftable files not listed in `refs` may be new (and about to be added
Reftable files not listed in `tables.list` may be new (and about to be added
to the stack by the active writer), or ancient and ready to be pruned.
### Backward compatibility
Older clients should continue to recognize the directory as a git repository so
they don't look for an enclosing repository in parent directories. To this end,
a reftable-enabled repository must contain the following dummy files
* `.git/HEAD`, a regular file containing `ref: refs/heads/.invalid`.
* `.git/refs/`, a directory
* `.git/refs/heads`, a regular file
### Readers
Readers can obtain a consistent snapshot of the reference space by
following:
1. Open and read the `refs` file.
1. Open and read the `tables.list` file.
2. Open each of the reftable files that it mentions.
3. If any of the files is missing, goto 1.
4. Read from the now-open files as long as necessary.
@ -820,13 +827,13 @@ following:
Although reftables are immutable, mutations are supported by writing a
new reftable and atomically appending it to the stack:
1. Acquire `refs.lock`.
2. Read `refs` to determine current reftables.
1. Acquire `tables.list.lock`.
2. Read `tables.list` to determine current reftables.
3. Select `update_index` to be most recent file's `max_update_index + 1`.
4. Prepare temp reftable `tmp_XXXXXX`, including log entries.
5. Rename `tmp_XXXXXX` to `${update_index}-${update_index}.ref`.
6. Copy `refs` to `refs.lock`, appending file from (5).
7. Rename `refs.lock` to `refs`.
6. Copy `tables.list` to `tables.list.lock`, appending file from (5).
7. Rename `tables.list.lock` to `tables.list`.
During step 4 the new file's `min_update_index` and `max_update_index`
are both set to the `update_index` selected by step 3. All log
@ -834,9 +841,9 @@ records for the transaction use the same `update_index` in their keys.
This enables later correlation of which references were updated by the
same transaction.
Because a single `refs.lock` file is used to manage locking, the
Because a single `tables.list.lock` file is used to manage locking, the
repository is single-threaded for writers. Writers may have to
busy-spin (with backoff) around creating `refs.lock`, for up to an
busy-spin (with backoff) around creating `tables.list.lock`, for up to an
acceptable wait period, aborting if the repository is too busy to
mutate. Application servers wrapped around repositories (e.g. Gerrit
Code Review) can layer their own lock/wait queue to improve fairness
@ -864,21 +871,21 @@ For sake of illustration, assume the stack currently consists of
reftable files (from oldest to newest): A, B, C, and D. The compactor
is going to compact B and C, leaving A and D alone.
1. Obtain lock `refs.lock` and read the `refs` file.
1. Obtain lock `tables.list.lock` and read the `tables.list` file.
2. Obtain locks `B.lock` and `C.lock`.
Ownership of these locks prevents other processes from trying
to compact these files.
3. Release `refs.lock`.
3. Release `tables.list.lock`.
4. Compact `B` and `C` into a temp file `${min_update_index}-${max_update_index}_XXXXXX`.
5. Reacquire lock `refs.lock`.
5. Reacquire lock `tables.list.lock`.
6. Verify that `B` and `C` are still in the stack, in that order. This
should always be the case, assuming that other processes are adhering
to the locking protocol.
7. Rename `${min_update_index}-${max_update_index}_XXXXXX` to
`${min_update_index}-${max_update_index}.ref`.
8. Write the new stack to `refs.lock`, replacing `B` and `C` with the
8. Write the new stack to `tables.list.lock`, replacing `B` and `C` with the
file from (4).
9. Rename `refs.lock` to `refs`.
9. Rename `tables.list.lock` to `tables.list`.
10. Delete `B` and `C`, perhaps after a short sleep to avoid forcing
readers to backtrack.

2
org.eclipse.jgit.http.server/src/org/eclipse/jgit/http/server/ObjectFileServlet.java

@ -50,7 +50,7 @@ abstract class ObjectFileServlet extends HttpServlet {
}
}
private static abstract class PackData extends ObjectFileServlet {
private abstract static class PackData extends ObjectFileServlet {
private static final long serialVersionUID = 1L;
PackData(String contentType) {

2
org.eclipse.jgit.lfs/src/org/eclipse/jgit/lfs/CleanFilter.java

@ -45,7 +45,7 @@ public class CleanFilter extends FilterCommand {
* The factory is responsible for creating instances of
* {@link org.eclipse.jgit.lfs.CleanFilter}
*/
public final static FilterCommandFactory FACTORY = CleanFilter::new;
public static final FilterCommandFactory FACTORY = CleanFilter::new;
/**
* Registers this filter by calling

2
org.eclipse.jgit.lfs/src/org/eclipse/jgit/lfs/SmudgeFilter.java

@ -59,7 +59,7 @@ public class SmudgeFilter extends FilterCommand {
* The factory is responsible for creating instances of
* {@link org.eclipse.jgit.lfs.SmudgeFilter}
*/
public final static FilterCommandFactory FACTORY = SmudgeFilter::new;
public static final FilterCommandFactory FACTORY = SmudgeFilter::new;
/**
* Register this filter in JGit

8
org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.10.target

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<?pde?>
<!-- generated with https://github.com/eclipse-cbi/targetplatform-dsl -->
<target name="jgit-4.10" sequenceNumber="1580289401">
<target name="jgit-4.10" sequenceNumber="1582498070">
<locations>
<location includeMode="slicer" includeAllPlatforms="false" includeSource="true" includeConfigurePhase="true" type="InstallableUnit">
<unit id="org.eclipse.jetty.client" version="9.4.25.v20191220"/>
@ -70,8 +70,8 @@
<unit id="org.hamcrest.core.source" version="1.3.0.v20180420-1519"/>
<unit id="org.hamcrest.library" version="1.3.0.v20180524-2246"/>
<unit id="org.hamcrest.library.source" version="1.3.0.v20180524-2246"/>
<unit id="org.junit" version="4.13.0.v20200128-1312"/>
<unit id="org.junit.source" version="4.13.0.v20200128-1312"/>
<unit id="org.junit" version="4.13.0.v20200204-1500"/>
<unit id="org.junit.source" version="4.13.0.v20200204-1500"/>
<unit id="org.kohsuke.args4j" version="2.33.0.v20160323-2218"/>
<unit id="org.kohsuke.args4j.source" version="2.33.0.v20160323-2218"/>
<unit id="org.mockito" version="2.23.0.v20190527-1420"/>
@ -84,7 +84,7 @@
<unit id="org.slf4j.impl.log4j12.source" version="1.7.2.v20131105-2200"/>
<unit id="org.tukaani.xz" version="1.8.0.v20180207-1613"/>
<unit id="org.tukaani.xz.source" version="1.8.0.v20180207-1613"/>
<repository location="https://download.eclipse.org/tools/orbit/downloads/drops/S20200128200239/repository"/>
<repository location="https://download.eclipse.org/tools/orbit/downloads/drops/S20200219023850/repository"/>
</location>
<location includeMode="slicer" includeAllPlatforms="false" includeSource="true" includeConfigurePhase="true" type="InstallableUnit">
<unit id="org.eclipse.osgi" version="0.0.0"/>

8
org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.11.target

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<?pde?>
<!-- generated with https://github.com/eclipse-cbi/targetplatform-dsl -->
<target name="jgit-4.11" sequenceNumber="1580289407">
<target name="jgit-4.11" sequenceNumber="1582498158">
<locations>
<location includeMode="slicer" includeAllPlatforms="false" includeSource="true" includeConfigurePhase="true" type="InstallableUnit">
<unit id="org.eclipse.jetty.client" version="9.4.25.v20191220"/>
@ -70,8 +70,8 @@
<unit id="org.hamcrest.core.source" version="1.3.0.v20180420-1519"/>
<unit id="org.hamcrest.library" version="1.3.0.v20180524-2246"/>
<unit id="org.hamcrest.library.source" version="1.3.0.v20180524-2246"/>
<unit id="org.junit" version="4.13.0.v20200128-1312"/>
<unit id="org.junit.source" version="4.13.0.v20200128-1312"/>
<unit id="org.junit" version="4.13.0.v20200204-1500"/>
<unit id="org.junit.source" version="4.13.0.v20200204-1500"/>
<unit id="org.kohsuke.args4j" version="2.33.0.v20160323-2218"/>
<unit id="org.kohsuke.args4j.source" version="2.33.0.v20160323-2218"/>
<unit id="org.mockito" version="2.23.0.v20190527-1420"/>
@ -84,7 +84,7 @@
<unit id="org.slf4j.impl.log4j12.source" version="1.7.2.v20131105-2200"/>
<unit id="org.tukaani.xz" version="1.8.0.v20180207-1613"/>
<unit id="org.tukaani.xz.source" version="1.8.0.v20180207-1613"/>
<repository location="https://download.eclipse.org/tools/orbit/downloads/drops/S20200128200239/repository"/>
<repository location="https://download.eclipse.org/tools/orbit/downloads/drops/S20200219023850/repository"/>
</location>
<location includeMode="slicer" includeAllPlatforms="false" includeSource="true" includeConfigurePhase="true" type="InstallableUnit">
<unit id="org.eclipse.osgi" version="0.0.0"/>

8
org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.12.target

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<?pde?>
<!-- generated with https://github.com/eclipse-cbi/targetplatform-dsl -->
<target name="jgit-4.12" sequenceNumber="1580289407">
<target name="jgit-4.12" sequenceNumber="1582498158">
<locations>
<location includeMode="slicer" includeAllPlatforms="false" includeSource="true" includeConfigurePhase="true" type="InstallableUnit">
<unit id="org.eclipse.jetty.client" version="9.4.25.v20191220"/>
@ -70,8 +70,8 @@
<unit id="org.hamcrest.core.source" version="1.3.0.v20180420-1519"/>
<unit id="org.hamcrest.library" version="1.3.0.v20180524-2246"/>
<unit id="org.hamcrest.library.source" version="1.3.0.v20180524-2246"/>
<unit id="org.junit" version="4.13.0.v20200128-1312"/>
<unit id="org.junit.source" version="4.13.0.v20200128-1312"/>
<unit id="org.junit" version="4.13.0.v20200204-1500"/>
<unit id="org.junit.source" version="4.13.0.v20200204-1500"/>
<unit id="org.kohsuke.args4j" version="2.33.0.v20160323-2218"/>
<unit id="org.kohsuke.args4j.source" version="2.33.0.v20160323-2218"/>
<unit id="org.mockito" version="2.23.0.v20190527-1420"/>
@ -84,7 +84,7 @@
<unit id="org.slf4j.impl.log4j12.source" version="1.7.2.v20131105-2200"/>
<unit id="org.tukaani.xz" version="1.8.0.v20180207-1613"/>
<unit id="org.tukaani.xz.source" version="1.8.0.v20180207-1613"/>
<repository location="https://download.eclipse.org/tools/orbit/downloads/drops/S20200128200239/repository"/>
<repository location="https://download.eclipse.org/tools/orbit/downloads/drops/S20200219023850/repository"/>
</location>
<location includeMode="slicer" includeAllPlatforms="false" includeSource="true" includeConfigurePhase="true" type="InstallableUnit">
<unit id="org.eclipse.osgi" version="0.0.0"/>

8
org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.13.target

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<?pde?>
<!-- generated with https://github.com/eclipse-cbi/targetplatform-dsl -->
<target name="jgit-4.13" sequenceNumber="1580289407">
<target name="jgit-4.13" sequenceNumber="1582498157">
<locations>
<location includeMode="slicer" includeAllPlatforms="false" includeSource="true" includeConfigurePhase="true" type="InstallableUnit">
<unit id="org.eclipse.jetty.client" version="9.4.25.v20191220"/>
@ -70,8 +70,8 @@
<unit id="org.hamcrest.core.source" version="1.3.0.v20180420-1519"/>
<unit id="org.hamcrest.library" version="1.3.0.v20180524-2246"/>
<unit id="org.hamcrest.library.source" version="1.3.0.v20180524-2246"/>
<unit id="org.junit" version="4.13.0.v20200128-1312"/>
<unit id="org.junit.source" version="4.13.0.v20200128-1312"/>
<unit id="org.junit" version="4.13.0.v20200204-1500"/>
<unit id="org.junit.source" version="4.13.0.v20200204-1500"/>
<unit id="org.kohsuke.args4j" version="2.33.0.v20160323-2218"/>
<unit id="org.kohsuke.args4j.source" version="2.33.0.v20160323-2218"/>
<unit id="org.mockito" version="2.23.0.v20190527-1420"/>
@ -84,7 +84,7 @@
<unit id="org.slf4j.impl.log4j12.source" version="1.7.2.v20131105-2200"/>
<unit id="org.tukaani.xz" version="1.8.0.v20180207-1613"/>
<unit id="org.tukaani.xz.source" version="1.8.0.v20180207-1613"/>
<repository location="https://download.eclipse.org/tools/orbit/downloads/drops/S20200128200239/repository"/>
<repository location="https://download.eclipse.org/tools/orbit/downloads/drops/S20200219023850/repository"/>
</location>
<location includeMode="slicer" includeAllPlatforms="false" includeSource="true" includeConfigurePhase="true" type="InstallableUnit">
<unit id="org.eclipse.osgi" version="0.0.0"/>

8
org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.14-staging.target

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<?pde?>
<!-- generated with https://github.com/eclipse-cbi/targetplatform-dsl -->
<target name="jgit-4.14-staging" sequenceNumber="1580289404">
<target name="jgit-4.14-staging" sequenceNumber="1582498156">
<locations>
<location includeMode="slicer" includeAllPlatforms="false" includeSource="true" includeConfigurePhase="true" type="InstallableUnit">
<unit id="org.eclipse.jetty.client" version="9.4.25.v20191220"/>
@ -70,8 +70,8 @@
<unit id="org.hamcrest.core.source" version="1.3.0.v20180420-1519"/>
<unit id="org.hamcrest.library" version="1.3.0.v20180524-2246"/>
<unit id="org.hamcrest.library.source" version="1.3.0.v20180524-2246"/>
<unit id="org.junit" version="4.13.0.v20200128-1312"/>
<unit id="org.junit.source" version="4.13.0.v20200128-1312"/>
<unit id="org.junit" version="4.13.0.v20200204-1500"/>
<unit id="org.junit.source" version="4.13.0.v20200204-1500"/>
<unit id="org.kohsuke.args4j" version="2.33.0.v20160323-2218"/>
<unit id="org.kohsuke.args4j.source" version="2.33.0.v20160323-2218"/>
<unit id="org.mockito" version="2.23.0.v20190527-1420"/>
@ -84,7 +84,7 @@
<unit id="org.slf4j.impl.log4j12.source" version="1.7.2.v20131105-2200"/>
<unit id="org.tukaani.xz" version="1.8.0.v20180207-1613"/>
<unit id="org.tukaani.xz.source" version="1.8.0.v20180207-1613"/>
<repository location="https://download.eclipse.org/tools/orbit/downloads/drops/S20200128200239/repository"/>
<repository location="https://download.eclipse.org/tools/orbit/downloads/drops/S20200219023850/repository"/>
</location>
<location includeMode="slicer" includeAllPlatforms="false" includeSource="true" includeConfigurePhase="true" type="InstallableUnit">
<unit id="org.eclipse.osgi" version="0.0.0"/>

8
org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.6.target

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<?pde?>
<!-- generated with https://github.com/eclipse-cbi/targetplatform-dsl -->
<target name="jgit-4.6" sequenceNumber="1580289424">
<target name="jgit-4.6" sequenceNumber="1582498170">
<locations>
<location includeMode="slicer" includeAllPlatforms="false" includeSource="true" includeConfigurePhase="true" type="InstallableUnit">
<unit id="org.eclipse.jetty.client" version="9.4.25.v20191220"/>
@ -70,8 +70,8 @@
<unit id="org.hamcrest.core.source" version="1.3.0.v20180420-1519"/>
<unit id="org.hamcrest.library" version="1.3.0.v20180524-2246"/>
<unit id="org.hamcrest.library.source" version="1.3.0.v20180524-2246"/>
<unit id="org.junit" version="4.13.0.v20200128-1312"/>
<unit id="org.junit.source" version="4.13.0.v20200128-1312"/>
<unit id="org.junit" version="4.13.0.v20200204-1500"/>
<unit id="org.junit.source" version="4.13.0.v20200204-1500"/>
<unit id="org.kohsuke.args4j" version="2.33.0.v20160323-2218"/>
<unit id="org.kohsuke.args4j.source" version="2.33.0.v20160323-2218"/>
<unit id="org.mockito" version="2.23.0.v20190527-1420"/>
@ -84,7 +84,7 @@
<unit id="org.slf4j.impl.log4j12.source" version="1.7.2.v20131105-2200"/>
<unit id="org.tukaani.xz" version="1.8.0.v20180207-1613"/>
<unit id="org.tukaani.xz.source" version="1.8.0.v20180207-1613"/>
<repository location="https://download.eclipse.org/tools/orbit/downloads/drops/S20200128200239/repository"/>
<repository location="https://download.eclipse.org/tools/orbit/downloads/drops/S20200219023850/repository"/>
</location>
<location includeMode="slicer" includeAllPlatforms="false" includeSource="true" includeConfigurePhase="true" type="InstallableUnit">
<unit id="org.eclipse.osgi" version="0.0.0"/>

8
org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.7.target

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<?pde?>
<!-- generated with https://github.com/eclipse-cbi/targetplatform-dsl -->
<target name="jgit-4.7" sequenceNumber="1580289413">
<target name="jgit-4.7" sequenceNumber="1582498162">
<locations>
<location includeMode="slicer" includeAllPlatforms="false" includeSource="true" includeConfigurePhase="true" type="InstallableUnit">
<unit id="org.eclipse.jetty.client" version="9.4.25.v20191220"/>
@ -70,8 +70,8 @@
<unit id="org.hamcrest.core.source" version="1.3.0.v20180420-1519"/>
<unit id="org.hamcrest.library" version="1.3.0.v20180524-2246"/>
<unit id="org.hamcrest.library.source" version="1.3.0.v20180524-2246"/>
<unit id="org.junit" version="4.13.0.v20200128-1312"/>
<unit id="org.junit.source" version="4.13.0.v20200128-1312"/>
<unit id="org.junit" version="4.13.0.v20200204-1500"/>
<unit id="org.junit.source" version="4.13.0.v20200204-1500"/>
<unit id="org.kohsuke.args4j" version="2.33.0.v20160323-2218"/>
<unit id="org.kohsuke.args4j.source" version="2.33.0.v20160323-2218"/>
<unit id="org.mockito" version="2.23.0.v20190527-1420"/>
@ -84,7 +84,7 @@
<unit id="org.slf4j.impl.log4j12.source" version="1.7.2.v20131105-2200"/>
<unit id="org.tukaani.xz" version="1.8.0.v20180207-1613"/>
<unit id="org.tukaani.xz.source" version="1.8.0.v20180207-1613"/>
<repository location="https://download.eclipse.org/tools/orbit/downloads/drops/S20200128200239/repository"/>
<repository location="https://download.eclipse.org/tools/orbit/downloads/drops/S20200219023850/repository"/>
</location>
<location includeMode="slicer" includeAllPlatforms="false" includeSource="true" includeConfigurePhase="true" type="InstallableUnit">
<unit id="org.eclipse.osgi" version="0.0.0"/>

8
org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.8.target

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<?pde?>
<!-- generated with https://github.com/eclipse-cbi/targetplatform-dsl -->
<target name="jgit-4.8" sequenceNumber="1580289407">
<target name="jgit-4.8" sequenceNumber="1582498158">
<locations>
<location includeMode="slicer" includeAllPlatforms="false" includeSource="true" includeConfigurePhase="true" type="InstallableUnit">
<unit id="org.eclipse.jetty.client" version="9.4.25.v20191220"/>
@ -70,8 +70,8 @@
<unit id="org.hamcrest.core.source" version="1.3.0.v20180420-1519"/>
<unit id="org.hamcrest.library" version="1.3.0.v20180524-2246"/>
<unit id="org.hamcrest.library.source" version="1.3.0.v20180524-2246"/>
<unit id="org.junit" version="4.13.0.v20200128-1312"/>
<unit id="org.junit.source" version="4.13.0.v20200128-1312"/>
<unit id="org.junit" version="4.13.0.v20200204-1500"/>
<unit id="org.junit.source" version="4.13.0.v20200204-1500"/>
<unit id="org.kohsuke.args4j" version="2.33.0.v20160323-2218"/>
<unit id="org.kohsuke.args4j.source" version="2.33.0.v20160323-2218"/>
<unit id="org.mockito" version="2.23.0.v20190527-1420"/>
@ -84,7 +84,7 @@
<unit id="org.slf4j.impl.log4j12.source" version="1.7.2.v20131105-2200"/>
<unit id="org.tukaani.xz" version="1.8.0.v20180207-1613"/>
<unit id="org.tukaani.xz.source" version="1.8.0.v20180207-1613"/>
<repository location="https://download.eclipse.org/tools/orbit/downloads/drops/S20200128200239/repository"/>
<repository location="https://download.eclipse.org/tools/orbit/downloads/drops/S20200219023850/repository"/>
</location>
<location includeMode="slicer" includeAllPlatforms="false" includeSource="true" includeConfigurePhase="true" type="InstallableUnit">
<unit id="org.eclipse.osgi" version="0.0.0"/>

8
org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.9.target

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<?pde?>
<!-- generated with https://github.com/eclipse-cbi/targetplatform-dsl -->
<target name="jgit-4.9" sequenceNumber="1580289407">
<target name="jgit-4.9" sequenceNumber="1582498159">
<locations>
<location includeMode="slicer" includeAllPlatforms="false" includeSource="true" includeConfigurePhase="true" type="InstallableUnit">
<unit id="org.eclipse.jetty.client" version="9.4.25.v20191220"/>
@ -70,8 +70,8 @@
<unit id="org.hamcrest.core.source" version="1.3.0.v20180420-1519"/>
<unit id="org.hamcrest.library" version="1.3.0.v20180524-2246"/>
<unit id="org.hamcrest.library.source" version="1.3.0.v20180524-2246"/>
<unit id="org.junit" version="4.13.0.v20200128-1312"/>
<unit id="org.junit.source" version="4.13.0.v20200128-1312"/>
<unit id="org.junit" version="4.13.0.v20200204-1500"/>
<unit id="org.junit.source" version="4.13.0.v20200204-1500"/>
<unit id="org.kohsuke.args4j" version="2.33.0.v20160323-2218"/>
<unit id="org.kohsuke.args4j.source" version="2.33.0.v20160323-2218"/>
<unit id="org.mockito" version="2.23.0.v20190527-1420"/>
@ -84,7 +84,7 @@
<unit id="org.slf4j.impl.log4j12.source" version="1.7.2.v20131105-2200"/>
<unit id="org.tukaani.xz" version="1.8.0.v20180207-1613"/>
<unit id="org.tukaani.xz.source" version="1.8.0.v20180207-1613"/>
<repository location="https://download.eclipse.org/tools/orbit/downloads/drops/S20200128200239/repository"/>
<repository location="https://download.eclipse.org/tools/orbit/downloads/drops/S20200219023850/repository"/>
</location>
<location includeMode="slicer" includeAllPlatforms="false" includeSource="true" includeConfigurePhase="true" type="InstallableUnit">
<unit id="org.eclipse.osgi" version="0.0.0"/>

7
org.eclipse.jgit.packaging/org.eclipse.jgit.target/orbit/staging-2020-03.tpd

@ -1,7 +1,7 @@
target "staging-2020-03" with source configurePhase
// see http://download.eclipse.org/tools/orbit/downloads/
location "https://download.eclipse.org/tools/orbit/downloads/drops/S20200128200239/repository" {
location "https://download.eclipse.org/tools/orbit/downloads/drops/S20200219023850/repository" {
com.google.gson [2.8.2.v20180104-1110,2.8.2.v20180104-1110]
com.google.gson.source [2.8.2.v20180104-1110,2.8.2.v20180104-1110]
com.jcraft.jsch [0.1.55.v20190404-1902,0.1.55.v20190404-1902]
@ -49,8 +49,8 @@ location "https://download.eclipse.org/tools/orbit/downloads/drops/S202001282002
org.hamcrest.core.source [1.3.0.v20180420-1519,1.3.0.v20180420-1519]
org.hamcrest.library [1.3.0.v20180524-2246,1.3.0.v20180524-2246]
org.hamcrest.library.source [1.3.0.v20180524-2246,1.3.0.v20180524-2246]
org.junit [4.13.0.v20200128-1312,4.13.0.v20200128-1312]
org.junit.source [4.13.0.v20200128-1312,4.13.0.v20200128-1312]
org.junit [4.13.0.v20200204-1500,4.13.0.v20200204-1500]
org.junit.source [4.13.0.v20200204-1500,4.13.0.v20200204-1500]
org.kohsuke.args4j [2.33.0.v20160323-2218,2.33.0.v20160323-2218]
org.kohsuke.args4j.source [2.33.0.v20160323-2218,2.33.0.v20160323-2218]
org.mockito [2.23.0.v20190527-1420,2.23.0.v20190527-1420]
@ -64,4 +64,3 @@ location "https://download.eclipse.org/tools/orbit/downloads/drops/S202001282002
org.tukaani.xz [1.8.0.v20180207-1613,1.8.0.v20180207-1613]
org.tukaani.xz.source [1.8.0.v20180207-1613,1.8.0.v20180207-1613]
}

2
org.eclipse.jgit.pgm/src/org/eclipse/jgit/pgm/debug/DiffAlgorithms.java

@ -317,7 +317,7 @@ class DiffAlgorithms extends TextBuiltin {
return false;
}
private static abstract class Algorithm {
private abstract static class Algorithm {
String name;
abstract DiffAlgorithm create();

4
org.eclipse.jgit.pgm/src/org/eclipse/jgit/pgm/debug/LfsStore.java

@ -128,11 +128,11 @@ class LfsStore extends TextBuiltin {
}
}
private static enum StoreType {
private enum StoreType {
FS, S3;
}
private static enum StorageClass {
private enum StorageClass {
REDUCED_REDUNDANCY, STANDARD
}

2
org.eclipse.jgit.pgm/src/org/eclipse/jgit/pgm/debug/ShowCommands.java

@ -50,7 +50,7 @@ class ShowCommands extends TextBuiltin {
errw.println();
}
static enum Format {
enum Format {
/** */
USAGE {
@Override

4
org.eclipse.jgit.pgm/src/org/eclipse/jgit/pgm/debug/TextHashFunctions.java

@ -410,7 +410,7 @@ class TextHashFunctions extends TextBuiltin {
}
/** Base class for any hashCode function to be tested. */
private static abstract class Hash extends RawTextComparator {
private abstract static class Hash extends RawTextComparator {
String name;
@Override
@ -420,7 +420,7 @@ class TextHashFunctions extends TextBuiltin {
}
/** Base class for any hashCode folding function to be tested. */
private static abstract class Fold {
private abstract static class Fold {
String name;
/**

1
org.eclipse.jgit.test/META-INF/MANIFEST.MF

@ -18,7 +18,6 @@ Import-Package: com.googlecode.javaewah;version="[1.1.6,2.0.0)",
org.apache.commons.compress.compressors.gzip;version="[1.15.0,2.0)",
org.apache.commons.compress.compressors.xz;version="[1.15.0,2.0)",
org.assertj.core.api;version="[3.14.0,4.0.0)",
org.bouncycastle.util.encoders;version="[1.61.0,2.0.0)",
org.eclipse.jgit.annotations;version="[5.7.0,5.8.0)",
org.eclipse.jgit.api;version="[5.7.0,5.8.0)",
org.eclipse.jgit.api.errors;version="[5.7.0,5.8.0)",

2
org.eclipse.jgit.test/exttst/org/eclipse/jgit/patch/EGitPatchHistoryTest.java

@ -152,7 +152,7 @@ public class EGitPatchHistoryTest {
}
}
static abstract class CommitReader {
abstract static class CommitReader {
private Process proc;
CommitReader(String[] args) throws IOException {

4
org.eclipse.jgit.test/tst/org/eclipse/jgit/api/RebaseCommandTest.java

@ -563,10 +563,10 @@ public class RebaseCommandTest extends RepositoryTestCase {
RevCommit newD = rw.next();
assertDerivedFrom(newD, d);
assertEquals(2, newD.getParentCount());
RevCommit newC = rw.next();
assertDerivedFrom(newC, c);
RevCommit newE = rw.next();
assertEquals(e, newE);
RevCommit newC = rw.next();
assertDerivedFrom(newC, c);
assertEquals(newC, newD.getParent(0));
assertEquals(e, newD.getParent(1));
assertEquals(g, rw.next());

1
org.eclipse.jgit.test/tst/org/eclipse/jgit/internal/storage/dfs/DfsGarbageCollectorTest.java

@ -19,7 +19,6 @@ import java.util.Collections;
import java.util.concurrent.TimeUnit;
import org.eclipse.jgit.internal.storage.dfs.DfsObjDatabase.PackSource;
import org.eclipse.jgit.internal.storage.dfs.DfsRefDatabase;
import org.eclipse.jgit.internal.storage.reftable.RefCursor;
import org.eclipse.jgit.internal.storage.reftable.ReftableConfig;
import org.eclipse.jgit.internal.storage.reftable.ReftableReader;

12
org.eclipse.jgit.test/tst/org/eclipse/jgit/internal/storage/file/GcOrphanFilesTest.java

@ -20,17 +20,17 @@ import org.junit.Before;
import org.junit.Test;
public class GcOrphanFilesTest extends GcTestCase {
private final static String PACK = "pack";
private static final String PACK = "pack";
private final static String BITMAP_File_1 = PACK + "-1.bitmap";
private static final String BITMAP_File_1 = PACK + "-1.bitmap";
private final static String IDX_File_2 = PACK + "-2.idx";
private static final String IDX_File_2 = PACK + "-2.idx";
private final static String IDX_File_malformed = PACK + "-1234idx";
private static final String IDX_File_malformed = PACK + "-1234idx";
private final static String PACK_File_2 = PACK + "-2.pack";
private static final String PACK_File_2 = PACK + "-2.pack";
private final static String PACK_File_3 = PACK + "-3.pack";
private static final String PACK_File_3 = PACK + "-3.pack";
private File packDir;

2
org.eclipse.jgit.test/tst/org/eclipse/jgit/lib/ConfigTest.java

@ -305,7 +305,7 @@ public class ConfigTest {
assertFalse(c.getBoolean("s", "b", true));
}
static enum TestEnum {
enum TestEnum {
ONE_TWO;
}

88
org.eclipse.jgit.test/tst/org/eclipse/jgit/revplot/PlotCommitListTest.java

@ -254,12 +254,12 @@ public class PlotCommitListTest extends RevWalkTestCase {
int posI = test.commit(i).lanePos(childPositions).parents(h)
.getLanePos();
test.commit(h).lanePos(posI).parents(f);
test.commit(g).lanePos(childPositions).parents(a);
test.commit(f).lanePos(posI).parents(e, d);
test.commit(d).lanePos(1).parents(b);
test.commit(e).lanePos(posI).parents(c);
test.commit(d).lanePos(2).parents(b);
test.commit(c).lanePos(posI).parents(b);
test.commit(b).lanePos(posI).parents(a);
test.commit(g).lanePos(childPositions).parents(a);
test.commit(a).lanePos(0).parents();
}
}
@ -325,42 +325,42 @@ public class PlotCommitListTest extends RevWalkTestCase {
.lanePos(mainPos);
test.commit(merge_update_eclipse)
.parents(add_a_clear, update_eclipse).lanePos(mainPos);
test.commit(update_eclipse).parents(add_Maven).lanePos(2);
test.commit(add_a_clear).parents(fix_broken).lanePos(mainPos);
test.commit(fix_broken).parents(merge_disable_comment)
.lanePos(mainPos);
test.commit(merge_disable_comment)
.parents(merge_resolve_handler, disable_comment)
.lanePos(mainPos);
test.commit(disable_comment).parents(clone_operation).lanePos(2);
test.commit(disable_comment).parents(clone_operation).lanePos(3);
test.commit(merge_resolve_handler)
.parents(clone_operation, resolve_handler).lanePos(mainPos);
test.commit(update_eclipse).parents(add_Maven).lanePos(3);
test.commit(resolve_handler).parents(merge_fix).lanePos(4);
test.commit(clone_operation).parents(merge_changeset_implementation)
.lanePos(mainPos);
test.commit(merge_changeset_implementation)
.parents(merge_disable_source, changeset_implementation)
.lanePos(mainPos);
test.commit(changeset_implementation).parents(clear_repositorycache)
.lanePos(1);
test.commit(merge_disable_source)
.parents(update_eclipse_iplog2, disable_source)
.lanePos(mainPos);
test.commit(disable_source).parents(merge_use_remote).lanePos(3);
test.commit(update_eclipse_iplog2).parents(merge_use_remote)
.lanePos(mainPos);
test.commit(disable_source).parents(merge_use_remote).lanePos(1);
test.commit(merge_use_remote)
.parents(update_eclipse_iplog, use_remote).lanePos(mainPos);
test.commit(changeset_implementation).parents(clear_repositorycache)
.lanePos(2);
test.commit(use_remote).parents(clear_repositorycache).lanePos(3);
test.commit(update_eclipse_iplog).parents(merge_add_Maven)
.lanePos(mainPos);
test.commit(merge_add_Maven).parents(findToolBar_layout, add_Maven)
.lanePos(mainPos);
test.commit(add_Maven).parents(clear_repositorycache).lanePos(2);
test.commit(findToolBar_layout).parents(clear_repositorycache)
.lanePos(mainPos);
test.commit(use_remote).parents(clear_repositorycache).lanePos(1);
test.commit(add_Maven).parents(clear_repositorycache).lanePos(3);
test.commit(clear_repositorycache).parents(merge_remove)
.lanePos(mainPos);
test.commit(resolve_handler).parents(merge_fix).lanePos(4);
test.commit(merge_remove).parents(add_simple, remove_unused)
.lanePos(mainPos);
test.commit(remove_unused).parents(merge_fix).lanePos(1);
@ -453,33 +453,36 @@ public class PlotCommitListTest extends RevWalkTestCase {
pcl.source(pw);
pcl.fillTo(Integer.MAX_VALUE);
// test that the commits b1, b2 and b3 are on the same position
int bPos = pcl.get(9).lane.position; // b1
assertEquals("b2 is an a different position", bPos,
pcl.get(7).lane.position);
assertEquals("b3 is on a different position", bPos,
pcl.get(4).lane.position);
// test that nothing blocks the connections between b1, b2 and b3
assertNotEquals("b lane is blocked by c", bPos,
pcl.get(8).lane.position);
assertNotEquals("b lane is blocked by a2", bPos,
pcl.get(6).lane.position);
assertNotEquals("b lane is blocked by d", bPos,
pcl.get(5).lane.position);
Set<Integer> positions = asSet(0, 1);
CommitListAssert test = new CommitListAssert(pcl);
int posA = test.commit(a5).lanePos(positions).getLanePos();
test.commit(a4);
test.commit(a3).lanePos(posA);
test.commit(e);
test.commit(d);
test.commit(a2).lanePos(posA);
int posB = test.commit(b3).lanePos(positions).getLanePos();
test.commit(b2).lanePos(posB);
test.commit(b1).lanePos(posB);
test.commit(c);
test.commit(a1).lanePos(posA);
test.noMoreCommits();
assertNotEquals("a lane is the same as b lane", posA, posB);
}
}
/**
* <pre>
* b3
* a5 |
* | |
* a4 |
* | \|
* | b2
* a3 |
* | \|
* a2 |
* | b1
* a2 |
* | /
* a1
* </pre>
@ -494,10 +497,11 @@ public class PlotCommitListTest extends RevWalkTestCase {
final RevCommit a3 = commit(a2, b1);
final RevCommit b2 = commit(b1);
final RevCommit a4 = commit(a3, b2);
final RevCommit a5 = commit(a4);
final RevCommit b3 = commit(b2);
try (PlotWalk pw = new PlotWalk(db)) {
pw.markStart(pw.lookupCommit(a4));
pw.markStart(pw.lookupCommit(a5));
pw.markStart(pw.lookupCommit(b3));
PlotCommitList<PlotLane> pcl = new PlotCommitList<>();
pcl.source(pw);
@ -506,11 +510,12 @@ public class PlotCommitListTest extends RevWalkTestCase {
Set<Integer> positions = asSet(0, 1);
CommitListAssert test = new CommitListAssert(pcl);
int posB = test.commit(b3).lanePos(positions).getLanePos();
int posA = test.commit(a4).lanePos(positions).getLanePos();
int posA = test.commit(a5).lanePos(positions).getLanePos();
test.commit(a4).lanePos(posA);
test.commit(b2).lanePos(posB);
test.commit(a3).lanePos(posA);
test.commit(a2).lanePos(posA);
test.commit(b1).lanePos(posB);
test.commit(a2).lanePos(posA);
test.commit(a1).lanePos(posA);
test.noMoreCommits();
}
@ -519,13 +524,17 @@ public class PlotCommitListTest extends RevWalkTestCase {
/**
* <pre>
* a4
* | b3
* a3 |
* | \\|
* | |\\
* |
* a3
* | \\
* a2 \\
* | \\
* | b3 ||
* | | ||
* | b2 ||
* a2 | //
* | | //
* | b1
* | |
* | /
* a1
* </pre>
@ -552,10 +561,10 @@ public class PlotCommitListTest extends RevWalkTestCase {
Set<Integer> positions = asSet(0, 1);
CommitListAssert test = new CommitListAssert(pcl);
int posA = test.commit(a4).lanePos(positions).getLanePos();
int posB = test.commit(b3).lanePos(positions).getLanePos();
test.commit(a3).lanePos(posA);
test.commit(b2).lanePos(posB);
test.commit(a2).lanePos(posA);
int posB = test.commit(b3).lanePos(positions).getLanePos();
test.commit(b2).lanePos(posB);
// b1 is not repositioned, uses "detour lane"
// (drawn as a double arc in the ascii graph above)
test.commit(b1).lanePos(posB);
@ -569,13 +578,14 @@ public class PlotCommitListTest extends RevWalkTestCase {
* b2
* a4 |
* | \ |
* a3 \|
* | b1
* a3 |
* | \ |
* | c |
* | / |
* a2 |
* | b1
* /
* | |
* | /
* | /
* a1
* </pre>
@ -604,10 +614,10 @@ public class PlotCommitListTest extends RevWalkTestCase {
CommitListAssert test = new CommitListAssert(pcl);
int posB = test.commit(b2).lanePos(positions).getLanePos();
int posA = test.commit(a4).lanePos(positions).getLanePos();
test.commit(b1).lanePos(posB); // repositioned to go around c
test.commit(a3).lanePos(posA);
test.commit(c).lanePos(positions);
test.commit(a2).lanePos(posA);
test.commit(b1).lanePos(posB); // repositioned to go around c
test.commit(a1).lanePos(posA);
test.noMoreCommits();
}

106
org.eclipse.jgit.test/tst/org/eclipse/jgit/revwalk/RevWalkSortTest.java

@ -144,4 +144,110 @@ public class RevWalkSortTest extends RevWalkTestCase {
assertCommit(d, rw.next());
assertNull(rw.next());
}
@Test
public void testSort_TOPO_OutOfOrderCommitTimes() throws Exception {
// b is committed before c2 in a different line of history.
//
final RevCommit a = commit();
final RevCommit c1 = commit(a);
final RevCommit b = commit(a);
final RevCommit c2 = commit(c1);
final RevCommit d = commit(b, c2);
rw.sort(RevSort.TOPO);
markStart(d);
assertCommit(d, rw.next());
assertCommit(c2, rw.next());
assertCommit(c1, rw.next());
assertCommit(b, rw.next());
assertCommit(a, rw.next());
assertNull(rw.next());
}
@Test
public void testSort_TOPO_MultipleLinesOfHistory() throws Exception {
final RevCommit a1 = commit();
final RevCommit b1 = commit(a1);
final RevCommit a2 = commit(a1, b1);
final RevCommit b2 = commit(b1);
final RevCommit b3 = commit(b1);
final RevCommit a3 = commit(a2, b2);
final RevCommit a4 = commit(a3, b3);
rw.sort(RevSort.TOPO);
markStart(a4);
assertCommit(a4, rw.next());
assertCommit(b3, rw.next());
assertCommit(a3, rw.next());
assertCommit(b2, rw.next());
assertCommit(a2, rw.next());
assertCommit(b1, rw.next());
assertCommit(a1, rw.next());
assertNull(rw.next());
}
@Test
public void testSort_TOPO_REVERSE_MultipleLinesOfHistory()
throws Exception {
final RevCommit a1 = commit();
final RevCommit b1 = commit(a1);
final RevCommit a2 = commit(a1, b1);
final RevCommit b2 = commit(b1);
final RevCommit b3 = commit(b1);
final RevCommit a3 = commit(a2, b2);
final RevCommit a4 = commit(a3, b3);
rw.sort(RevSort.TOPO);
rw.sort(RevSort.REVERSE, true);
markStart(a4);
assertCommit(a1, rw.next());
assertCommit(b1, rw.next());
assertCommit(a2, rw.next());
assertCommit(b2, rw.next());
assertCommit(a3, rw.next());
assertCommit(b3, rw.next());
assertCommit(a4, rw.next());
assertNull(rw.next());
}
@Test
public void testSort_TOPO_ParentOfMultipleStartChildren() throws Exception {
final RevCommit a = commit();
final RevCommit b = commit(a);
final RevCommit c = commit(a);
final RevCommit d1 = commit(a);
final RevCommit d2 = commit(d1);
final RevCommit e = commit(a);
rw.sort(RevSort.TOPO);
markStart(b);
markStart(c);
markStart(d2);
markStart(e);
assertCommit(e, rw.next());
assertCommit(d2, rw.next());
assertCommit(d1, rw.next());
assertCommit(c, rw.next());
assertCommit(b, rw.next());
assertCommit(a, rw.next());
assertNull(rw.next());
}
@Test
public void testSort_TOPO_Uninteresting() throws Exception {
final RevCommit a1 = commit();
final RevCommit a2 = commit(a1);
final RevCommit a3 = commit(a2);
final RevCommit b = commit(a1);
final RevCommit a4 = commit(a3, b);
rw.sort(RevSort.TOPO);
markStart(a4);
markUninteresting(a2);
assertCommit(a4, rw.next());
assertCommit(b, rw.next());
assertCommit(a3, rw.next());
assertNull(rw.next());
}
}

2
org.eclipse.jgit.test/tst/org/eclipse/jgit/util/GitDateParserBadlyFormattedTest.java

@ -46,7 +46,7 @@ public class GitDateParserBadlyFormattedTest {
}
@DataPoints
static public String[] getDataPoints() {
public static String[] getDataPoints() {
return new String[] { "", "1970", "3000.3000.3000", "3 yesterday ago",
"now yesterday ago", "yesterdays", "3.day. 2.week.ago",
"day ago", "Gra Feb 21 15:35:00 2007 +0100",

49
org.eclipse.jgit.test/tst/org/eclipse/jgit/util/HexTest.java

@ -0,0 +1,49 @@
/*
* Copyright (C) 2010, Google Inc.
* Copyright (C) 2020 Michael Dardis and others
*
* This program and the accompanying materials are made available under the
* terms of the Eclipse Distribution License v. 1.0 which is available at
* https://www.eclipse.org/org/documents/edl-v10.php.
*
* SPDX-License-Identifier: BSD-3-Clause
*/
package org.eclipse.jgit.util;
import static org.eclipse.jgit.util.Hex.decode;
import static org.eclipse.jgit.util.Hex.toHexString;
import static org.junit.Assert.assertEquals;
import org.eclipse.jgit.junit.JGitTestUtil;
import org.eclipse.jgit.lib.Constants;
import org.junit.Test;
public class HexTest {
@Test
public void testEncode() {
assertEquals("68690a", toHexString(b("hi\n")));
assertEquals("0001020d0a0971", toHexString(b("\0\1\2\r\n\tq")));
}
@Test
public void testDecode() {
JGitTestUtil.assertEquals(b("hi\n"), decode("68690a"));
JGitTestUtil.assertEquals(b("\0\1\2\r\n\tq"), decode("0001020d0a0971"));
JGitTestUtil.assertEquals(b("\u000EB"), decode("0E42"));
}
@Test
public void testEncodeMatchesDecode() {
String[] testStrings = { "", "cow", "a", "a secret string",
"\0\1\2\r\n\t" };
for (String e : testStrings) {
JGitTestUtil.assertEquals(b(e), decode(toHexString(b(e))));
}
}
private static byte[] b(String str) {
return Constants.encode(str);
}
}

1
org.eclipse.jgit.test/tst/org/eclipse/jgit/util/StatsTest.java

@ -12,7 +12,6 @@ package org.eclipse.jgit.util;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertTrue;
import org.eclipse.jgit.util.Stats;
import org.junit.Test;
public class StatsTest {

81
org.eclipse.jgit.test/tst/org/eclipse/jgit/util/io/TeeOutputStreamTest.java

@ -0,0 +1,81 @@
/*
* Copyright (C) 2020, Michael Dardis. and others
*
* This program and the accompanying materials are made available under the
* terms of the Eclipse Distribution License v. 1.0 which is available at
* https://www.eclipse.org/org/documents/edl-v10.php.
*
* SPDX-License-Identifier: BSD-3-Clause
*/
package org.eclipse.jgit.util.io;
import static org.junit.Assert.assertArrayEquals;
import static org.junit.Assert.assertFalse;
import static org.junit.Assert.assertTrue;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
import org.eclipse.jgit.lib.Constants;
import org.junit.Test;
public class TeeOutputStreamTest {
@Test
public void test() throws IOException {
byte[] data = Constants.encode("Hello World");
TestOutput first = new TestOutput();
TestOutput second = new TestOutput();
try (TeeOutputStream tee = new TeeOutputStream(first, second)) {
tee.write(data);
assertArrayEquals("Stream output must match", first.toByteArray(),
second.toByteArray());
tee.write(1);
assertArrayEquals("Stream output must match", first.toByteArray(),
second.toByteArray());
tee.write(data, 1, 4); // Test partial write methods
assertArrayEquals("Stream output must match", first.toByteArray(),
second.toByteArray());
}
assertTrue("First stream should be closed", first.closed);
assertTrue("Second stream should be closed", second.closed);
}
@Test
public void testCloseException() {
TestOutput first = new TestOutput() {
@Override
public void close() throws IOException {
throw new IOException();
}
};
TestOutput second = new TestOutput();
@SuppressWarnings("resource")
TeeOutputStream tee = new TeeOutputStream(first, second);
try {
tee.close();
} catch (IOException ex) {
// Expected from first closed
}
assertFalse("First stream should not be closed", first.closed);
assertTrue("Second stream should still be closed if first close failed",
second.closed);
}
private static class TestOutput extends ByteArrayOutputStream {
private boolean closed;
@Override
public void close() throws IOException {
closed = true;
super.close();
}
}
}

1
org.eclipse.jgit/META-INF/MANIFEST.MF

@ -172,7 +172,6 @@ Import-Package: com.googlecode.javaewah;version="[1.1.6,2.0.0)",
org.bouncycastle.openpgp.operator;version="[1.61.0,2.0.0)",
org.bouncycastle.openpgp.operator.jcajce;version="[1.61.0,2.0.0)",
org.bouncycastle.util.encoders;version="[1.61.0,2.0.0)",
org.bouncycastle.util.io;version="[1.61.0,2.0.0)",
org.slf4j;version="[1.7.0,2.0.0)",
org.xml.sax,
org.xml.sax.helpers

2
org.eclipse.jgit/src/org/eclipse/jgit/api/CheckoutCommand.java

@ -104,7 +104,7 @@ public class CheckoutCommand extends GitCommand<Ref> {
/**
* Stage to check out, see {@link CheckoutCommand#setStage(Stage)}.
*/
public static enum Stage {
public enum Stage {
/**
* Base stage (#1)
*/

2
org.eclipse.jgit/src/org/eclipse/jgit/api/CommitCommand.java

@ -491,7 +491,7 @@ public class CommitCommand extends GitCommand<RevCommit> {
int position = Collections.binarySearch(only, p);
if (position >= 0)
return position;
int l = p.lastIndexOf("/"); //$NON-NLS-1$
int l = p.lastIndexOf('/');
if (l < 1)
break;
p = p.substring(0, l);

2
org.eclipse.jgit/src/org/eclipse/jgit/api/PullCommand.java

@ -57,7 +57,7 @@ import org.eclipse.jgit.transport.TagOpt;
*/
public class PullCommand extends TransportCommand<PullCommand, PullResult> {
private final static String DOT = "."; //$NON-NLS-1$
private static final String DOT = "."; //$NON-NLS-1$
private ProgressMonitor monitor = NullProgressMonitor.INSTANCE;

5
org.eclipse.jgit/src/org/eclipse/jgit/api/RebaseCommand.java

@ -800,7 +800,8 @@ public class RebaseCommand extends GitCommand<RebaseResult> {
sb.append("# This is a combination of ").append(count)
.append(" commits.\n");
// Add the previous message without header (i.e first line)
sb.append(currSquashMessage.substring(currSquashMessage.indexOf("\n") + 1));
sb.append(currSquashMessage
.substring(currSquashMessage.indexOf('\n') + 1));
sb.append("\n");
if (isSquash) {
sb.append("# This is the ").append(count).append(ordinal)
@ -838,7 +839,7 @@ public class RebaseCommand extends GitCommand<RebaseResult> {
static int parseSquashFixupSequenceCount(String currSquashMessage) {
String regex = "This is a combination of (.*) commits"; //$NON-NLS-1$
String firstLine = currSquashMessage.substring(0,
currSquashMessage.indexOf("\n")); //$NON-NLS-1$
currSquashMessage.indexOf('\n'));
Pattern pattern = Pattern.compile(regex);
Matcher matcher = pattern.matcher(firstLine);
if (!matcher.find())

2
org.eclipse.jgit/src/org/eclipse/jgit/attributes/Attribute.java

@ -34,7 +34,7 @@ public final class Attribute {
* The attribute value state
* see also https://www.kernel.org/pub/software/scm/git/docs/gitattributes.html
*/
public static enum State {
public enum State {
/** the attribute is set */
SET,

6
org.eclipse.jgit/src/org/eclipse/jgit/attributes/AttributesRule.java

@ -9,7 +9,7 @@
*/
package org.eclipse.jgit.attributes;
import static org.eclipse.jgit.ignore.internal.IMatcher.NO_MATCH;
import static org.eclipse.jgit.ignore.IMatcher.NO_MATCH;
import java.util.ArrayList;
import java.util.Collections;
@ -18,7 +18,7 @@ import java.util.List;
import org.eclipse.jgit.attributes.Attribute.State;
import org.eclipse.jgit.errors.InvalidPatternException;
import org.eclipse.jgit.ignore.FastIgnoreRule;
import org.eclipse.jgit.ignore.internal.IMatcher;
import org.eclipse.jgit.ignore.IMatcher;
import org.eclipse.jgit.ignore.internal.PathMatcher;
/**
@ -58,7 +58,7 @@ public class AttributesRule {
continue;
}
final int equalsIndex = attribute.indexOf("="); //$NON-NLS-1$
final int equalsIndex = attribute.indexOf('=');
if (equalsIndex == -1)
result.add(new Attribute(attribute, State.SET));
else {

2
org.eclipse.jgit/src/org/eclipse/jgit/diff/DiffConfig.java

@ -26,7 +26,7 @@ public class DiffConfig {
public static final Config.SectionParser<DiffConfig> KEY = DiffConfig::new;
/** Permissible values for {@code diff.renames}. */
public static enum RenameDetectionType {
public enum RenameDetectionType {
/** Rename detection is disabled. */
FALSE,

4
org.eclipse.jgit/src/org/eclipse/jgit/diff/DiffEntry.java

@ -39,7 +39,7 @@ public class DiffEntry {
public static final String DEV_NULL = "/dev/null"; //$NON-NLS-1$
/** General type of change a single file-level patch describes. */
public static enum ChangeType {
public enum ChangeType {
/** Add a new file to the project */
ADD,
@ -57,7 +57,7 @@ public class DiffEntry {
}
/** Specify the old or new side for more generalized access. */
public static enum Side {
public enum Side {
/** The old side of a DiffEntry. */
OLD,

2
org.eclipse.jgit/src/org/eclipse/jgit/diff/Edit.java

@ -31,7 +31,7 @@ package org.eclipse.jgit.diff;
*/
public class Edit {
/** Type of edit */
public static enum Type {
public enum Type {
/** Sequence B has inserted the region. */
INSERT,

4
org.eclipse.jgit/src/org/eclipse/jgit/diff/SimilarityRenameDetector.java

@ -302,8 +302,8 @@ class SimilarityRenameDetector {
}
static int nameScore(String a, String b) {
int aDirLen = a.lastIndexOf("/") + 1; //$NON-NLS-1$
int bDirLen = b.lastIndexOf("/") + 1; //$NON-NLS-1$
int aDirLen = a.lastIndexOf('/') + 1;
int bDirLen = b.lastIndexOf('/') + 1;
int dirMin = Math.min(aDirLen, bDirLen);
int dirMax = Math.max(aDirLen, bDirLen);

2
org.eclipse.jgit/src/org/eclipse/jgit/errors/NoMergeBaseException.java

@ -30,7 +30,7 @@ public class NoMergeBaseException extends IOException {
* An enum listing the different reason why no merge base could be
* determined.
*/
public static enum MergeBaseFailureReason {
public enum MergeBaseFailureReason {
/**
* Multiple merge bases have been found (e.g. the commits to be merged
* have multiple common predecessors) but the merge strategy doesn't

4
org.eclipse.jgit/src/org/eclipse/jgit/errors/TranslationBundleException.java

@ -45,7 +45,7 @@ public abstract class TranslationBundleException extends RuntimeException {
*
* @return bundle class for which the exception occurred
*/
final public Class getBundleClass() {
public final Class getBundleClass() {
return bundleClass;
}
@ -54,7 +54,7 @@ public abstract class TranslationBundleException extends RuntimeException {
*
* @return locale for which the exception occurred
*/
final public Locale getLocale() {
public final Locale getLocale() {
return locale;
}
}

2
org.eclipse.jgit/src/org/eclipse/jgit/hooks/GitHook.java

@ -17,11 +17,11 @@ import java.io.PrintStream;
import java.io.UnsupportedEncodingException;
import java.util.concurrent.Callable;
import org.bouncycastle.util.io.TeeOutputStream;
import org.eclipse.jgit.api.errors.AbortedByHookException;
import org.eclipse.jgit.lib.Repository;
import org.eclipse.jgit.util.FS;
import org.eclipse.jgit.util.ProcessResult;
import org.eclipse.jgit.util.io.TeeOutputStream;
/**
* Git can fire off custom scripts when certain important actions occur. These

5
org.eclipse.jgit/src/org/eclipse/jgit/ignore/FastIgnoreRule.java

@ -9,13 +9,12 @@
*/
package org.eclipse.jgit.ignore;
import static org.eclipse.jgit.ignore.internal.IMatcher.NO_MATCH;
import static org.eclipse.jgit.ignore.IMatcher.NO_MATCH;
import static org.eclipse.jgit.ignore.internal.Strings.isDirectoryPattern;
import static org.eclipse.jgit.ignore.internal.Strings.stripTrailing;
import static org.eclipse.jgit.ignore.internal.Strings.stripTrailingWhitespace;
import org.eclipse.jgit.errors.InvalidPatternException;
import org.eclipse.jgit.ignore.internal.IMatcher;
import org.eclipse.jgit.ignore.internal.PathMatcher;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@ -29,7 +28,7 @@ import org.slf4j.LoggerFactory;
* @since 3.6
*/
public class FastIgnoreRule {
private final static Logger LOG = LoggerFactory
private static final Logger LOG = LoggerFactory
.getLogger(FastIgnoreRule.class);
/**

37
org.eclipse.jgit/src/org/eclipse/jgit/ignore/internal/IMatcher.java → org.eclipse.jgit/src/org/eclipse/jgit/ignore/IMatcher.java

@ -1,5 +1,5 @@
/*
* Copyright (C) 2014, 2017 Andrey Loskutov <loskutov@gmx.de> and others
* Copyright (C) 2014, 2020 Andrey Loskutov <loskutov@gmx.de> and others
*
* This program and the accompanying materials are made available under the
* terms of the Eclipse Distribution License v. 1.0 which is available at
@ -7,10 +7,16 @@
*
* SPDX-License-Identifier: BSD-3-Clause
*/
package org.eclipse.jgit.ignore.internal;
package org.eclipse.jgit.ignore;
import org.eclipse.jgit.annotations.NonNull;
import org.eclipse.jgit.errors.InvalidPatternException;
import org.eclipse.jgit.ignore.internal.PathMatcher;
/**
* Generic string matcher
* Generic path matcher.
*
* @since 5.7
*/
public interface IMatcher {
@ -18,6 +24,7 @@ public interface IMatcher {
* Matcher that does not match any pattern.
*/
public static final IMatcher NO_MATCH = new IMatcher() {
@Override
public boolean matches(String path, boolean assumeDirectory,
boolean pathMatch) {
@ -30,6 +37,25 @@ public interface IMatcher {
}
};
/**
* Creates a path matcher for the given pattern. A pattern may contain the
* wildcards "?", "*", and "**". The directory separator is '/'.
*
* @param pattern
* to match
* @param dirOnly
* whether to match only directories
* @return a matcher for the given pattern
* @throws InvalidPatternException
* if the pattern is invalid
*/
@NonNull
public static IMatcher createPathMatcher(@NonNull String pattern,
boolean dirOnly) throws InvalidPatternException {
return PathMatcher.createPathMatcher(pattern,
Character.valueOf(FastIgnoreRule.PATH_SEPARATOR), dirOnly);
}
/**
* Matches entire given string
*
@ -40,10 +66,7 @@ public interface IMatcher {
* with a slash)
* @param pathMatch
* {@code true} if the match is for the full path: prefix-only
* matches are not allowed, and
* {@link org.eclipse.jgit.ignore.internal.NameMatcher}s must
* match only the last component (if they can -- they may not, if
* they are anchored at the beginning)
* matches are not allowed
* @return true if this matcher pattern matches given string
*/
boolean matches(String path, boolean assumeDirectory, boolean pathMatch);

2
org.eclipse.jgit/src/org/eclipse/jgit/ignore/IgnoreNode.java

@ -26,7 +26,7 @@ import java.util.List;
*/
public class IgnoreNode {
/** Result from {@link IgnoreNode#isIgnored(String, boolean)}. */
public static enum MatchResult {
public enum MatchResult {
/** The file is not ignored, due to a rule saying its not ignored. */
NOT_IGNORED,

2
org.eclipse.jgit/src/org/eclipse/jgit/ignore/internal/AbstractMatcher.java

@ -9,6 +9,8 @@
*/
package org.eclipse.jgit.ignore.internal;
import org.eclipse.jgit.ignore.IMatcher;
/**
* Base class for default methods as {@link #toString()} and such.
* <p>

1
org.eclipse.jgit/src/org/eclipse/jgit/ignore/internal/PathMatcher.java

@ -19,6 +19,7 @@ import java.util.ArrayList;
import java.util.List;
import org.eclipse.jgit.errors.InvalidPatternException;
import org.eclipse.jgit.ignore.IMatcher;
import org.eclipse.jgit.ignore.internal.Strings.PatternState;
/**

8
org.eclipse.jgit/src/org/eclipse/jgit/ignore/internal/Strings.java

@ -196,11 +196,11 @@ public class Strings {
return PatternState.COMPLEX;
}
static enum PatternState {
enum PatternState {
LEADING_ASTERISK_ONLY, TRAILING_ASTERISK_ONLY, COMPLEX, NONE
}
final static List<String> POSIX_CHAR_CLASSES = Arrays.asList(
static final List<String> POSIX_CHAR_CLASSES = Arrays.asList(
"alnum", "alpha", "blank", "cntrl", //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$
// [:alnum:] [:alpha:] [:blank:] [:cntrl:]
"digit", "graph", "lower", "print", //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$
@ -215,7 +215,7 @@ public class Strings {
private static final String DL = "\\p{javaDigit}\\p{javaLetter}"; //$NON-NLS-1$
final static List<String> JAVA_CHAR_CLASSES = Arrays
static final List<String> JAVA_CHAR_CLASSES = Arrays
.asList("\\p{Alnum}", "\\p{javaLetter}", "\\p{Blank}", "\\p{Cntrl}", //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$
// [:alnum:] [:alpha:] [:blank:] [:cntrl:]
"\\p{javaDigit}", "[\\p{Graph}" + DL + "]", "\\p{Ll}", "[\\p{Print}" + DL + "]", //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$ //$NON-NLS-5$ //$NON-NLS-6$
@ -228,7 +228,7 @@ public class Strings {
// Collating symbols [[.a.]] or equivalence class expressions [[=a=]] are
// not supported by CLI git (at least not by 1.9.1)
final static Pattern UNSUPPORTED = Pattern
static final Pattern UNSUPPORTED = Pattern
.compile("\\[\\[[.=]\\w+[.=]\\]\\]"); //$NON-NLS-1$
/**

2
org.eclipse.jgit/src/org/eclipse/jgit/internal/ketch/KetchLeader.java

@ -93,7 +93,7 @@ public abstract class KetchLeader {
private static final Logger log = LoggerFactory.getLogger(KetchLeader.class);
/** Current state of the leader instance. */
public static enum State {
public enum State {
/** Newly created instance trying to elect itself leader. */
CANDIDATE,

4
org.eclipse.jgit/src/org/eclipse/jgit/internal/storage/dfs/DfsObjDatabase.java

@ -64,7 +64,7 @@ public abstract class DfsObjDatabase extends ObjectDatabase {
* comparator based on {@link Enum#compareTo}. Prefer {@link
* #DEFAULT_COMPARATOR} or your own {@link ComparatorBuilder}.
*/
public static enum PackSource {
public enum PackSource {
/** The pack is created by ObjectInserter due to local activity. */
INSERT,
@ -672,7 +672,7 @@ public abstract class DfsObjDatabase extends ObjectDatabase {
}
/** Snapshot of packs scanned in a single pass. */
public static abstract class PackList {
public abstract static class PackList {
/** All known packs, sorted. */
public final DfsPackFile[] packs;

2
org.eclipse.jgit/src/org/eclipse/jgit/internal/storage/file/FileObjectDatabase.java

@ -27,7 +27,7 @@ import org.eclipse.jgit.lib.ObjectReader;
import org.eclipse.jgit.util.FS;
abstract class FileObjectDatabase extends ObjectDatabase {
static enum InsertLooseObjectResult {
enum InsertLooseObjectResult {
INSERTED, EXISTS_PACKED, EXISTS_LOOSE, FAILURE;
}

2
org.eclipse.jgit/src/org/eclipse/jgit/internal/storage/file/GC.java

@ -98,7 +98,7 @@ import org.slf4j.LoggerFactory;
* adapted to FileRepositories.
*/
public class GC {
private final static Logger LOG = LoggerFactory
private static final Logger LOG = LoggerFactory
.getLogger(GC.class);
private static final String PRUNE_EXPIRE_DEFAULT = "2.weeks.ago"; //$NON-NLS-1$

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

@ -50,7 +50,7 @@ import org.slf4j.LoggerFactory;
* name.
*/
public class LockFile {
private final static Logger LOG = LoggerFactory.getLogger(LockFile.class);
private static final Logger LOG = LoggerFactory.getLogger(LockFile.class);
/**
* Unlock the given file.

2
org.eclipse.jgit/src/org/eclipse/jgit/internal/storage/file/ObjectDirectory.java

@ -76,7 +76,7 @@ import org.slf4j.LoggerFactory;
* considered.
*/
public class ObjectDirectory extends FileObjectDatabase {
private final static Logger LOG = LoggerFactory
private static final Logger LOG = LoggerFactory
.getLogger(ObjectDirectory.class);
private static final PackList NO_PACKS = new PackList(

2
org.eclipse.jgit/src/org/eclipse/jgit/internal/storage/file/PackFile.java

@ -70,7 +70,7 @@ import org.slf4j.LoggerFactory;
* objects are similar.
*/
public class PackFile implements Iterable<PackIndex.MutableEntry> {
private final static Logger LOG = LoggerFactory.getLogger(PackFile.class);
private static final Logger LOG = LoggerFactory.getLogger(PackFile.class);
/**
* Sorts PackFiles to be most recently created to least recently created.

10
org.eclipse.jgit/src/org/eclipse/jgit/internal/storage/file/RefDirectory.java

@ -97,7 +97,7 @@ import org.slf4j.LoggerFactory;
* overall size of a Git repository on disk.
*/
public class RefDirectory extends RefDatabase {
private final static Logger LOG = LoggerFactory
private static final Logger LOG = LoggerFactory
.getLogger(RefDirectory.class);
/** Magic string denoting the start of a symbolic reference file. */
@ -1376,7 +1376,7 @@ public class RefDirectory extends RefDatabase {
LooseRef peel(ObjectIdRef newLeaf);
}
private final static class LoosePeeledTag extends ObjectIdRef.PeeledTag
private static final class LoosePeeledTag extends ObjectIdRef.PeeledTag
implements LooseRef {
private final FileSnapshot snapShot;
@ -1397,7 +1397,7 @@ public class RefDirectory extends RefDatabase {
}
}
private final static class LooseNonTag extends ObjectIdRef.PeeledNonTag
private static final class LooseNonTag extends ObjectIdRef.PeeledNonTag
implements LooseRef {
private final FileSnapshot snapShot;
@ -1418,7 +1418,7 @@ public class RefDirectory extends RefDatabase {
}
}
private final static class LooseUnpeeled extends ObjectIdRef.Unpeeled
private static final class LooseUnpeeled extends ObjectIdRef.Unpeeled
implements LooseRef {
private FileSnapshot snapShot;
@ -1453,7 +1453,7 @@ public class RefDirectory extends RefDatabase {
}
}
private final static class LooseSymbolicRef extends SymbolicRef implements
private static final class LooseSymbolicRef extends SymbolicRef implements
LooseRef {
private final FileSnapshot snapShot;

2
org.eclipse.jgit/src/org/eclipse/jgit/internal/storage/pack/PackExt.java

@ -48,7 +48,7 @@ public class PackExt {
* the file extension.
* @return the PackExt for the ext
*/
public synchronized static PackExt newPackExt(String ext) {
public static synchronized PackExt newPackExt(String ext) {
PackExt[] dst = new PackExt[VALUES.length + 1];
for (int i = 0; i < VALUES.length; i++) {
PackExt packExt = VALUES[i];

2
org.eclipse.jgit/src/org/eclipse/jgit/internal/storage/pack/PackWriter.java

@ -2399,7 +2399,7 @@ public class PackWriter implements AutoCloseable {
}
/** Possible states that a PackWriter can be in. */
public static enum PackingPhase {
public enum PackingPhase {
/** Counting objects phase. */
COUNTING,

2
org.eclipse.jgit/src/org/eclipse/jgit/internal/storage/reftable/BlockWriter.java

@ -253,7 +253,7 @@ class BlockWriter {
return aLen - bLen;
}
static abstract class Entry {
abstract static class Entry {
static int compare(Entry ea, Entry eb) {
byte[] a = ea.key;
byte[] b = eb.key;

2
org.eclipse.jgit/src/org/eclipse/jgit/internal/storage/reftable/ReftableDatabase.java

@ -47,7 +47,7 @@ public abstract class ReftableDatabase {
* @throws IOException
* on I/O problems.
*/
abstract protected MergedReftable openMergedReftable() throws IOException;
protected abstract MergedReftable openMergedReftable() throws IOException;
/**
* @return the next available logical timestamp for an additional reftable

14
org.eclipse.jgit/src/org/eclipse/jgit/lib/CoreConfig.java

@ -27,7 +27,7 @@ public class CoreConfig {
public static final Config.SectionParser<CoreConfig> KEY = CoreConfig::new;
/** Permissible values for {@code core.autocrlf}. */
public static enum AutoCRLF {
public enum AutoCRLF {
/** Automatic CRLF-&gt;LF conversion is disabled. */
FALSE,
@ -45,7 +45,7 @@ public class CoreConfig {
*
* @since 4.3
*/
public static enum EOL {
public enum EOL {
/** Check in with LF, check out with CRLF. */
CRLF,
@ -61,7 +61,7 @@ public class CoreConfig {
*
* @since 4.3
*/
public static enum EolStreamType {
public enum EolStreamType {
/** Convert to CRLF without binary detection. */
TEXT_CRLF,
@ -83,7 +83,7 @@ public class CoreConfig {
*
* @since 3.0
*/
public static enum CheckStat {
public enum CheckStat {
/**
* Only check the size and whole second part of time stamp when
* comparing the stat info in the dircache with actual file stat info.
@ -102,7 +102,7 @@ public class CoreConfig {
*
* @since 5.6
*/
public static enum LogRefUpdates {
public enum LogRefUpdates {
/** Don't create ref logs; default for bare repositories. */
FALSE,
@ -131,7 +131,7 @@ public class CoreConfig {
*
* @since 3.3
*/
public static enum SymLinks {
public enum SymLinks {
/** Check out symbolic links as plain files . */
FALSE,
@ -144,7 +144,7 @@ public class CoreConfig {
*
* @since 3.5
*/
public static enum HideDotFiles {
public enum HideDotFiles {
/** Do not hide .files. */
FALSE,

2
org.eclipse.jgit/src/org/eclipse/jgit/lib/GitmoduleEntry.java

@ -9,8 +9,6 @@
*/
package org.eclipse.jgit.lib;
import org.eclipse.jgit.lib.AnyObjectId;
/**
* A .gitmodules file found in the pack. Store the blob of the file itself (e.g.
* to access its contents) and the tree where it was found (e.g. to check if it

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

@ -75,7 +75,7 @@ public class IndexDiff {
* @see IndexDiff#getConflictingStageStates()
* @since 3.0
*/
public static enum StageState {
public enum StageState {
/**
* Exists in base, but neither in ours nor in theirs.
*/
@ -210,11 +210,11 @@ public class IndexDiff {
}
}
private final static int TREE = 0;
private static final int TREE = 0;
private final static int INDEX = 1;
private static final int INDEX = 1;
private final static int WORKDIR = 2;
private static final int WORKDIR = 2;
private final Repository repository;

2
org.eclipse.jgit/src/org/eclipse/jgit/lib/InflaterCache.java

@ -40,7 +40,7 @@ public class InflaterCache {
return r != null ? r : new Inflater(false);
}
private synchronized static Inflater getImpl() {
private static synchronized Inflater getImpl() {
if (openInflaterCount > 0) {
final Inflater r = inflaterCache[--openInflaterCount];
inflaterCache[openInflaterCount] = null;

2
org.eclipse.jgit/src/org/eclipse/jgit/lib/ObjectIdOwnerMap.java

@ -322,7 +322,7 @@ public class ObjectIdOwnerMap<V extends ObjectIdOwnerMap.Entry>
}
/** Type of entry stored in the {@link ObjectIdOwnerMap}. */
public static abstract class Entry extends ObjectId {
public abstract static class Entry extends ObjectId {
transient Entry next;
/**

2
org.eclipse.jgit/src/org/eclipse/jgit/lib/ObjectInserter.java

@ -65,7 +65,7 @@ public abstract class ObjectInserter implements AutoCloseable {
}
/** Wraps a delegate ObjectInserter. */
public static abstract class Filter extends ObjectInserter {
public abstract static class Filter extends ObjectInserter {
/** @return delegate ObjectInserter to handle all processing. */
protected abstract ObjectInserter delegate();

2
org.eclipse.jgit/src/org/eclipse/jgit/lib/ObjectLoader.java

@ -300,7 +300,7 @@ public abstract class ObjectLoader {
*
* @since 4.10
*/
public static abstract class Filter extends ObjectLoader {
public abstract static class Filter extends ObjectLoader {
/**
* @return delegate ObjectLoader to handle all processing.
* @since 4.10

2
org.eclipse.jgit/src/org/eclipse/jgit/lib/ObjectReader.java

@ -462,7 +462,7 @@ public abstract class ObjectReader implements AutoCloseable {
*
* @since 4.4
*/
public static abstract class Filter extends ObjectReader {
public abstract static class Filter extends ObjectReader {
/**
* @return delegate ObjectReader to handle all processing.
* @since 4.4

4
org.eclipse.jgit/src/org/eclipse/jgit/lib/RebaseTodoLine.java

@ -25,7 +25,7 @@ public class RebaseTodoLine {
* Describes rebase actions
*/
@SuppressWarnings("nls")
public static enum Action {
public enum Action {
/** Use commit */
PICK("pick", "p"),
@ -72,7 +72,7 @@ public class RebaseTodoLine {
* @param token
* @return the Action
*/
static public Action parse(String token) {
public static Action parse(String token) {
for (Action action : Action.values()) {
if (action.token.equals(token)
|| action.shortToken.equals(token))

4
org.eclipse.jgit/src/org/eclipse/jgit/lib/RefUpdate.java

@ -33,7 +33,7 @@ public abstract class RefUpdate {
* unknown values are failures, and may generally treat them the same as
* {@link #REJECTED_OTHER_REASON}.
*/
public static enum Result {
public enum Result {
/** The ref update/delete has not been attempted by the caller. */
NOT_ATTEMPTED,
@ -794,7 +794,7 @@ public abstract class RefUpdate {
* Handle the abstraction of storing a ref update. This is because both
* updating and deleting of a ref have merge testing in common.
*/
private static abstract class Store {
private abstract static class Store {
abstract Result execute(Result status) throws IOException;
}
}

2
org.eclipse.jgit/src/org/eclipse/jgit/lib/RepositoryCache.java

@ -33,7 +33,7 @@ import org.slf4j.LoggerFactory;
* Cache of active {@link org.eclipse.jgit.lib.Repository} instances.
*/
public class RepositoryCache {
private final static Logger LOG = LoggerFactory
private static final Logger LOG = LoggerFactory
.getLogger(RepositoryCache.class);
private static final RepositoryCache cache = new RepositoryCache();

2
org.eclipse.jgit/src/org/eclipse/jgit/merge/MergeAlgorithm.java

@ -50,7 +50,7 @@ public final class MergeAlgorithm {
// An special edit which acts as a sentinel value by marking the end the
// list of edits
private final static Edit END_EDIT = new Edit(Integer.MAX_VALUE,
private static final Edit END_EDIT = new Edit(Integer.MAX_VALUE,
Integer.MAX_VALUE);
@SuppressWarnings("ReferenceEquality")

4
org.eclipse.jgit/src/org/eclipse/jgit/nls/NLS.java

@ -100,8 +100,8 @@ public class NLS {
return b.get(type);
}
final private Locale locale;
final private ConcurrentHashMap<Class, TranslationBundle> map = new ConcurrentHashMap<>();
private final Locale locale;
private final ConcurrentHashMap<Class, TranslationBundle> map = new ConcurrentHashMap<>();
private NLS(Locale locale) {
this.locale = locale;

2
org.eclipse.jgit/src/org/eclipse/jgit/patch/BinaryHunk.java

@ -25,7 +25,7 @@ public class BinaryHunk {
private static final byte[] DELTA = encodeASCII("delta "); //$NON-NLS-1$
/** Type of information stored in a binary hunk. */
public static enum Type {
public enum Type {
/** The full content is stored, deflated. */
LITERAL_DEFLATED,

2
org.eclipse.jgit/src/org/eclipse/jgit/patch/CombinedHunkHeader.java

@ -25,7 +25,7 @@ import org.eclipse.jgit.util.MutableInteger;
* Hunk header for a hunk appearing in a "diff --cc" style patch.
*/
public class CombinedHunkHeader extends HunkHeader {
private static abstract class CombinedOldImage extends OldImage {
private abstract static class CombinedOldImage extends OldImage {
int nContext;
}

2
org.eclipse.jgit/src/org/eclipse/jgit/patch/FileHeader.java

@ -71,7 +71,7 @@ public class FileHeader extends DiffEntry {
static final byte[] NEW_NAME = encodeASCII("+++ "); //$NON-NLS-1$
/** Type of patch used by this file. */
public static enum PatchType {
public enum PatchType {
/** A traditional unified diff style patch of a text file. */
UNIFIED,

2
org.eclipse.jgit/src/org/eclipse/jgit/patch/FormatError.java

@ -21,7 +21,7 @@ import org.eclipse.jgit.util.RawParseUtils;
*/
public class FormatError {
/** Classification of an error. */
public static enum Severity {
public enum Severity {
/** The error is unexpected, but can be worked around. */
WARNING,

2
org.eclipse.jgit/src/org/eclipse/jgit/revwalk/RevObject.java

@ -151,7 +151,7 @@ public abstract class RevObject extends ObjectIdOwnerMap.Entry {
* buffer to append a debug description of core RevFlags onto.
*/
protected void appendCoreFlags(StringBuilder s) {
s.append((flags & RevWalk.TOPO_DELAY) != 0 ? 'o' : '-');
s.append((flags & RevWalk.TOPO_QUEUED) != 0 ? 'o' : '-');
s.append((flags & RevWalk.TEMP_MARK) != 0 ? 't' : '-');
s.append((flags & RevWalk.REWRITE) != 0 ? 'r' : '-');
s.append((flags & RevWalk.UNINTERESTING) != 0 ? 'u' : '-');

8
org.eclipse.jgit/src/org/eclipse/jgit/revwalk/RevWalk.java

@ -125,11 +125,11 @@ public class RevWalk implements Iterable<RevCommit>, AutoCloseable {
/**
* Temporary mark for use within {@link TopoSortGenerator}.
* <p>
* This mark indicates the commit could not produce when it wanted to, as at
* least one child was behind it. Commits with this flag are delayed until
* all children have been output first.
* This mark indicates the commit has been queued for emission in
* {@link TopoSortGenerator} and can be produced. This mark is removed when
* the commit has been produced.
*/
static final int TOPO_DELAY = 1 << 5;
static final int TOPO_QUEUED = 1 << 5;
/** Number of flag bits we keep internal for our own use. See above flags. */
static final int RESERVED_FLAGS = 6;

34
org.eclipse.jgit/src/org/eclipse/jgit/revwalk/TopoSortGenerator.java

@ -17,7 +17,7 @@ import org.eclipse.jgit.errors.MissingObjectException;
/** Sorts commits in topological order. */
class TopoSortGenerator extends Generator {
private static final int TOPO_DELAY = RevWalk.TOPO_DELAY;
private static final int TOPO_QUEUED = RevWalk.TOPO_QUEUED;
private final FIFORevQueue pending;
@ -47,12 +47,16 @@ class TopoSortGenerator extends Generator {
if (c == null) {
break;
}
if ((c.flags & TOPO_QUEUED) == 0) {
for (RevCommit p : c.parents) {
p.inDegree++;
if (firstParent) {
break;
}
}
}
c.flags |= TOPO_QUEUED;
pending.add(c);
}
}
@ -71,34 +75,42 @@ class TopoSortGenerator extends Generator {
RevCommit next() throws MissingObjectException,
IncorrectObjectTypeException, IOException {
for (;;) {
final RevCommit c = pending.next();
if (c == null)
RevCommit c = pending.next();
if (c == null) {
return null;
}
if (c.inDegree > 0) {
// At least one of our children is missing. We delay
// production until all of our children are output.
//
c.flags |= TOPO_DELAY;
continue;
}
// All of our children have already produced,
// so it is OK for us to produce now as well.
if ((c.flags & TOPO_QUEUED) == 0) {
// c is a parent that already produced or a parent that
// was never in the priority queue and should never produce.
//
continue;
}
for (RevCommit p : c.parents) {
if (--p.inDegree == 0 && (p.flags & TOPO_DELAY) != 0) {
// This parent tried to come before us, but we are
// his last child. unpop the parent so it goes right
// behind this child.
if (--p.inDegree == 0 && (p.flags & TOPO_QUEUED) != 0) {
// The parent has no unproduced interesting children. unpop
// the parent so it goes right behind this child. This means
// that this parent commit may appear in "pending" more than
// once, but this is safe since upon the second and
// subsequent iterations with this commit, it will no longer
// have TOPO_QUEUED set, and thus will be skipped.
//
p.flags &= ~TOPO_DELAY;
pending.unpop(p);
}
if (firstParent) {
break;
}
}
c.flags &= ~TOPO_QUEUED;
return c;
}
}

2
org.eclipse.jgit/src/org/eclipse/jgit/storage/file/FileBasedConfig.java

@ -44,7 +44,7 @@ import org.slf4j.LoggerFactory;
* The configuration file that is stored in the file of the file system.
*/
public class FileBasedConfig extends StoredConfig {
private final static Logger LOG = LoggerFactory
private static final Logger LOG = LoggerFactory
.getLogger(FileBasedConfig.class);
private final File configFile;

2
org.eclipse.jgit/src/org/eclipse/jgit/transport/BasePackPushConnection.java

@ -358,7 +358,7 @@ public abstract class BasePackPushConnection extends BasePackConnection implemen
refNameEnd = refLine.length();
} else if (refLine.startsWith("ng ")) { //$NON-NLS-1$
ok = false;
refNameEnd = refLine.indexOf(" ", 3); //$NON-NLS-1$
refNameEnd = refLine.indexOf(' ', 3);
}
if (refNameEnd == -1)
throw new PackProtocolException(MessageFormat.format(JGitText.get().unexpectedReportLine2

2
org.eclipse.jgit/src/org/eclipse/jgit/transport/GitProtocolConstants.java

@ -247,7 +247,7 @@ public final class GitProtocolConstants {
*/
public static final String COMMAND_FETCH = "fetch"; //$NON-NLS-1$
static enum MultiAck {
enum MultiAck {
OFF, CONTINUE, DETAILED;
}

2
org.eclipse.jgit/src/org/eclipse/jgit/transport/PackParser.java

@ -70,7 +70,7 @@ public abstract class PackParser {
private static final int BUFFER_SIZE = 8192;
/** Location data is being obtained from. */
public static enum Source {
public enum Source {
/** Data is read from the incoming stream. */
INPUT,

2
org.eclipse.jgit/src/org/eclipse/jgit/transport/PacketLineIn.java

@ -62,7 +62,7 @@ public class PacketLineIn {
@Deprecated
public static final String DELIM = new StringBuilder(0).toString(); /* must not string pool */
static enum AckNackResult {
enum AckNackResult {
/** NAK */
NAK,
/** ACK */

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

@ -39,7 +39,7 @@ import org.eclipse.jgit.revwalk.RevWalk;
*/
public class ReceiveCommand {
/** Type of operation requested. */
public static enum Type {
public enum Type {
/** Create a new ref; the ref must not already exist. */
CREATE,
@ -65,7 +65,7 @@ public class ReceiveCommand {
}
/** Result of the update command. */
public static enum Result {
public enum Result {
/** The command has not yet been attempted by the server. */
NOT_ATTEMPTED,

2
org.eclipse.jgit/src/org/eclipse/jgit/transport/ReceivePack.java

@ -1937,7 +1937,7 @@ public class ReceivePack {
}
/** Interface for reporting status messages. */
static abstract class Reporter {
abstract static class Reporter {
abstract void sendString(String s) throws IOException;
}

2
org.eclipse.jgit/src/org/eclipse/jgit/transport/RemoteRefUpdate.java

@ -39,7 +39,7 @@ public class RemoteRefUpdate {
/**
* Represent current status of a remote ref update.
*/
public static enum Status {
public enum Status {
/**
* Push process hasn't yet attempted to update this ref. This is the
* default status, prior to push process execution.

2
org.eclipse.jgit/src/org/eclipse/jgit/transport/TransportProtocol.java

@ -57,7 +57,7 @@ import org.eclipse.jgit.lib.Repository;
*/
public abstract class TransportProtocol {
/** Fields within a {@link URIish} that a transport uses. */
public static enum URIishField {
public enum URIishField {
/** the user field */
USER,
/** the pass (aka password) field */

2
org.eclipse.jgit/src/org/eclipse/jgit/transport/UploadPack.java

@ -104,7 +104,7 @@ import org.eclipse.jgit.util.io.TimeoutOutputStream;
*/
public class UploadPack {
/** Policy the server uses to validate client requests */
public static enum RequestPolicy {
public enum RequestPolicy {
/** Client may only ask for objects the server advertised a reference for. */
ADVERTISED,

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

@ -34,9 +34,9 @@ import javax.crypto.spec.PBEKeySpec;
import javax.crypto.spec.PBEParameterSpec;
import javax.crypto.spec.SecretKeySpec;
import org.bouncycastle.util.encoders.Hex;
import org.eclipse.jgit.internal.JGitText;
import org.eclipse.jgit.util.Base64;
import org.eclipse.jgit.util.Hex;
abstract class WalkEncryption {
static final WalkEncryption NONE = new NoEncryption();
@ -294,7 +294,7 @@ abstract class WalkEncryption {
* Base implementation of JGit symmetric encryption. Supports V2 properties
* format.
*/
static abstract class SymmetricEncryption extends WalkEncryption
abstract static class SymmetricEncryption extends WalkEncryption
implements Keys, Vals {
/** Encryption profile, root name of group of related properties. */

4
org.eclipse.jgit/src/org/eclipse/jgit/treewalk/FileTreeIterator.java

@ -242,7 +242,7 @@ public class FileTreeIterator extends WorkingTreeIterator {
/**
* a singleton instance of the default FileModeStrategy
*/
public final static DefaultFileModeStrategy INSTANCE =
public static final DefaultFileModeStrategy INSTANCE =
new DefaultFileModeStrategy();
@Override
@ -275,7 +275,7 @@ public class FileTreeIterator extends WorkingTreeIterator {
/**
* a singleton instance of the default FileModeStrategy
*/
public final static NoGitlinksStrategy INSTANCE = new NoGitlinksStrategy();
public static final NoGitlinksStrategy INSTANCE = new NoGitlinksStrategy();
@Override
public FileMode getMode(File f, FS.Attributes attributes) {

2
org.eclipse.jgit/src/org/eclipse/jgit/treewalk/TreeWalk.java

@ -78,7 +78,7 @@ public class TreeWalk implements AutoCloseable, AttributesProvider {
/**
* @since 4.2
*/
public static enum OperationType {
public enum OperationType {
/**
* Represents a checkout operation (for example a checkout or reset
* operation).

2
org.eclipse.jgit/src/org/eclipse/jgit/treewalk/WorkingTreeIterator.java

@ -1147,7 +1147,7 @@ public abstract class WorkingTreeIterator extends AbstractTreeIterator {
*
* @since 5.0
*/
public static abstract class Entry {
public abstract static class Entry {
byte[] encodedName;
int encodedNameLen;

12
org.eclipse.jgit/src/org/eclipse/jgit/util/Base64.java

@ -28,26 +28,26 @@ import org.eclipse.jgit.internal.JGitText;
*/
public class Base64 {
/** The equals sign (=) as a byte. */
private final static byte EQUALS_SIGN = (byte) '=';
private static final byte EQUALS_SIGN = (byte) '=';
/** Indicates equals sign in encoding. */
private final static byte EQUALS_SIGN_DEC = -1;
private static final byte EQUALS_SIGN_DEC = -1;
/** Indicates white space in encoding. */
private final static byte WHITE_SPACE_DEC = -2;
private static final byte WHITE_SPACE_DEC = -2;
/** Indicates an invalid byte during decoding. */
private final static byte INVALID_DEC = -3;
private static final byte INVALID_DEC = -3;
/** The 64 valid Base64 values. */
private final static byte[] ENC;
private static final byte[] ENC;
/**
* Translates a Base64 value to either its 6-bit reconstruction value or a
* negative number indicating some other meaning. The table is only 7 bits
* wide, as the 8th bit is discarded during decoding.
*/
private final static byte[] DEC;
private static final byte[] DEC;
static {
ENC = ("ABCDEFGHIJKLMNOPQRSTUVWXYZ" // //$NON-NLS-1$

2
org.eclipse.jgit/src/org/eclipse/jgit/util/ChangeIdUtil.java

@ -148,7 +148,7 @@ public class ChangeIdUtil {
ret.append(CHANGE_ID);
ret.append(" I"); //$NON-NLS-1$
ret.append(ObjectId.toString(changeId));
int indexOfNextLineBreak = message.indexOf("\n", //$NON-NLS-1$
int indexOfNextLineBreak = message.indexOf('\n',
indexOfChangeId);
if (indexOfNextLineBreak > 0)
ret.append(message.substring(indexOfNextLineBreak));

9
org.eclipse.jgit/src/org/eclipse/jgit/util/FS.java

@ -184,7 +184,7 @@ public abstract class FS {
*
* @since 5.1.9
*/
public final static class FileStoreAttributes {
public static final class FileStoreAttributes {
private static final Duration UNDEFINED_DURATION = Duration
.ofNanos(Long.MAX_VALUE);
@ -204,9 +204,8 @@ public abstract class FS {
public static final FileStoreAttributes FALLBACK_FILESTORE_ATTRIBUTES = new FileStoreAttributes(
FALLBACK_TIMESTAMP_RESOLUTION);
private static final String JAVA_VERSION_PREFIX = SystemReader
.getInstance().getHostname() + '|'
+ System.getProperty("java.vendor") + '|' //$NON-NLS-1$
private static final String JAVA_VERSION_PREFIX = System
.getProperty("java.vendor") + '|' //$NON-NLS-1$
+ System.getProperty("java.version") + '|'; //$NON-NLS-1$
private static final Duration FALLBACK_MIN_RACY_INTERVAL = Duration
@ -691,7 +690,7 @@ public abstract class FS {
/** The auto-detected implementation selected for this operating system and JRE. */
public static final FS DETECTED = detect();
private volatile static FSFactory factory;
private static volatile FSFactory factory;
/**
* Auto-detect the appropriate file system abstraction.

2
org.eclipse.jgit/src/org/eclipse/jgit/util/FS_POSIX.java

@ -52,7 +52,7 @@ import org.slf4j.LoggerFactory;
* @since 3.0
*/
public class FS_POSIX extends FS {
private final static Logger LOG = LoggerFactory.getLogger(FS_POSIX.class);
private static final Logger LOG = LoggerFactory.getLogger(FS_POSIX.class);
private static final int DEFAULT_UMASK = 0022;
private volatile int umask = -1;

Some files were not shown because too many files have changed in this diff Show More

Loading…
Cancel
Save