Author | SHA1 | Message | Date |
---|---|---|---|
David Pursehouse | 064834d350 |
Reorder modifiers to follow Java Language Specification
The Java Language Specification recommends listing modifiers in the following order: 1. Annotations 2. public 3. protected 4. private 5. abstract 6. static 7. final 8. transient 9. volatile 10. synchronized 11. native 12. strictfp Not following this convention has no technical impact, but will reduce the code's readability because most developers are used to the standard order. This was detected using SonarLint. Change-Id: I9cddecb4f4234dae1021b677e915be23d349a380 Signed-off-by: David Pursehouse <david.pursehouse@gmail.com> |
4 years ago |
Matthias Sohn | 5c5f7c6b14 |
Update EDL 1.0 license headers to new short SPDX compliant format
This is the format given by the Eclipse legal doc generator [1]. [1] https://www.eclipse.org/projects/tools/documentation.php?id=technology.jgit Bug: 548298 Change-Id: I8d8cabc998ba1b083e3f0906a8d558d391ffb6c4 Signed-off-by: Matthias Sohn <matthias.sohn@sap.com> |
4 years ago |
Matthias Sohn | a4216e5382 |
Fix NPE in ObjectIdOwnerMap#get
Change-Id: I3812961a27ac410d610ef50c73a28f21bb05ae79 Signed-off-by: Matthias Sohn <matthias.sohn@sap.com> |
4 years ago |
Han-Wen Nienhuys | 6d370d837c |
Remove 'final' in parameter lists
Change-Id: Id924f79c8b2c720297ebc49bf9c5d4ddd6d52547 Signed-off-by: Han-Wen Nienhuys <hanwen@google.com> |
6 years ago |
Matthias Sohn | 8a6af368c4 |
Fix javadoc in org.eclipse.jgit lib package
Change-Id: I1e85a951488177993521ce177fdea212615e6164 Signed-off-by: Matthias Sohn <matthias.sohn@sap.com> |
6 years ago |
Shawn Pearce | ca4ef2d24b |
Add missing @Override found by ErrorProne
Change-Id: I585242507815aad4aa0103fd55a6c369e342ab33 |
7 years ago |
Thomas Wolf | d0023c3c8f |
Don't serialize internal hash collision chain link
ObjectId is serializable, and so are its subtypes. Ensure that serialization does not follow the hash collision chain internal to the ObjectIdOwnerMap, otherwise completely unrelated objects may get serialized when a RevObject is serialized. Note that serializing a RevCommit or RevTag may serialize quite a few objects due to the parent/object links they contain. A user has no real control over how many objects will be written when a RevCommit is serialized. C.f [1]. This change does not resolve that, but in any case this internal hash collision chain link should not participate in serialization. [1] https://github.com/gitblit/gitblit/pull/1141 Change-Id: Ice331a9dc80a59ca360fcc04adaff8b5e750d847 Signed-off-by: Thomas Wolf <thomas.wolf@paranor.ch> |
7 years ago |
Shawn Pearce | 29aa444760 |
PackWriter: use lib.ObjectIdSet to avoid wrapper
Hoist ObjectIdSet up to lib as part of the public API and add the interface to some common types like PackIndex and JGit custom ObjectId map types. This cleans up wrapper code in a number of places by allowing direct use of the types as an ObjectIdSet. Future commits can now rely on ObjectIdSet as a simple read-only type to check a set of objects from a number of storage options. Change-Id: Ib62b062421d475bd52abd6c84a73916ef36e084b |
8 years ago |
Andrey Loskutov | 260e092e79 |
[performance] Remove synthetic access$ methods in lib, util and dircache
Java compiler must generate synthetic access methods for private methods and fields of the enclosing class if they are accessed from inner classes and vice versa. While invisible in the code, those synthetic access methods exist in the bytecode and seem to produce some extra execution overhead at runtime (compared with the direct access to this fields or methods), see https://git.eclipse.org/r/58948/. By removing the "private" access modifier from affected methods and fields we help compiler to avoid generation of synthetic access methods and hope to improve execution performance. To validate changes, one can either use javap or use Bytecode Outline plugin in Eclipse. In both cases one should look for "synthetic access$<number>" methods at the end of the class and inner class files in question - there should be none. NB: don't mix this "synthetic access$" methods up with "public synthetic bridge" methods generated to allow generic method override return types. Change-Id: Ie7b65f251ec4452d5a5ed48aa0f272cf49a9aecd Signed-off-by: Andrey Loskutov <loskutov@gmx.de> |
8 years ago |
Shawn O. Pearce | bd970007be |
ObjectIdOwnerMap: More lightweight map for ObjectIds
OwnerMap is about 200 ms faster than SubclassMap, more friendly to the GC, and uses less storage: testing the "Counting objects" part of PackWriter on |
13 years ago |